40000
585009899 405174263 138501627 599749205 543949434 134615113 916416775 834806900 201035599 611635402 596145325 716534696 933225484 738517642 357707167 208227081 318935247 278838039 731394902 748814666 162847393 17032958 78355996 294803698 119743320 70755016 840118364 670128216 263517047 168449503 613312618 933325579 61350138 740485515 608718106 21267539 432080321 504111994 853242752 787900355 646603278 843771163 119581137 35529732 705101243 376120986 180067893 618843020 431464519 424377975 919591302 198966580 127534227 264821781 413664798 715150739 444116724 31194522 332702265 247036245 855076029 950679811 632687771 789281369 257503020 381810531 14352044 367668818 193122257 841732748 414835649 160595199 146021103 323217505 227424631 488058801 561811042 344288425 191154331 281708125 502076746 202430514 44855171 763825035 659680721 954225735 195944827 746363555 862161285 164111805 811477315 712956333 173072772 642117713 115745721 472778132 375875085 123254040 361537847 645978887 218668389 557706966 529880563 110495748 683647554 256143675 635958146 563460677 43608903 165156395 69687576 219427336 918578606 193841714 851676095 864673770 992619688 965275203 61066329 64881616 642650454 980326009 133110356 182402411 244709006 987740783 496908942 690040612 790716509 718600012 237297629 716983053 475544607 369667782 943520888 299862588 971999568 287213023 7089397 419350315 661681748 554512975 523820237 769334616 59199097 695880669 917288276 978607200 34987389 117204328 339991057 95018611 579501620 750454664 54407254 920606231 286208675 216654616 313043849 180325063 936973290 745354730 139218255 182399897 249923550 273602053 241364290 129974858 349809285 500746557 885723071 406619995 902282614 652039181 912411288 703581525 158064901 726325977 458427076 424158514 142702929 282330034 559237431 434833704 877666051 208971460 865395898 587886570 246105551 971020170 564767596 172796125 417790401 669220942 883475594 641556081 49472533 23465688 953689971 159861927 484619563 341957021 102503864 474103850 851919408 110492721 180942052 421445043 934514104 15217131 698196989 680496565 659972461 187182720 393142366 928202265 910962333 901446652 268816266 10606794 700975609 864508615 870565393 582566186 9175507 256097238 217650367 266637256 825114342 689494470 79623558 243339021 613865804 517909324 210625820 96153827 295170142 920931478 622477829 967867179 457119820 915296733 234887420 93639239 965303141 855240312 363115207 556837921 932746433 855729369 625839015 304069485 785097755 885944691 903245628 604129483 105046927 394057448 81010395 310773996 147161021 150983221 354787051 986164393 560902462 158169580 326441640 972393262 813351748 741146308 85047910 305862565 783787502 563015459 532376113 334939950 838999938 11886114 281443149 516634769 955145875 373981954 733833744 844002169 942456334 994685580 28326800 332195990 844495670 460315177 630645359 957690522 767029679 357658710 373082034 913697199 442362591 640157456 597495317 838721006 286105152 403254540 13542097 1864734 980090299 872694213 372498480 668921023 507390690 143339855 46617026 532116270 298845984 461807271 548358046 140793507 438617859 387384908 659318385 362392206 421740319 338830582 684038126 954211680 664945581 540554837 345285976 298270381 543878077 378156342 943814244 282330034 814337186 237847498 160001995 288769550 138131448 957082482 602847949 9123109 584345398 776138822 459834563 664898778 193013064 804238378 312267976 406283083 388398556 266742158 817496728 133793960 83272655 116390062 538714495 576596321 21734779 980451180 375857975 98450116 784066768 473574625 959635642 273555488 262158910 576343178 766151001 182359032 10311975 325520037 599936841 58186475 922914521 802480220 847489553 445726920 637318101 969299128 45617969 274702252 453558707 669974465 978793698 547842806 949718918 755553814 778616468 599759333 869709122 459318220 958180212 701473760 555738603 386564467 211716087 141080770 240755306 880307222 729487208 40974278 617267873 850115200 277430073 417980312 476529307 346769067 38719115 4043272 901949163 235090882 316202913 445299316 396266325 42398931 309712683 302689095 168561980 797264863 907113376 675852763 935990271 344849615 551783729 259561731 799375450 80577913 893892315 170309371 916693109 218513927 532142299 560336856 837209560 588881375 930610895 773494714 799917953 526156233 335938686 399615033 129674512 114323823 523292908 41881412 813178413 20029758 502738147 207733071 152701993 722476327 915294492 23271317 230696597 663690794 29251959 435938645 841051943 144873218 242575150 326073502 444697343 942219167 66228519 797579459 190266903 606878486 947433227 873510627 751208826 756215961 450391903 2549546 220675005 139503006 294487832 984528763 189888346 949431045 471244073 851251858 588754306 686972163 354639310 631619711 150205606 181280616 118652074 352982490 546062229 321139385 538824792 394776654 804760420 106538669 233921313 180898636 365135603 737207401 120137098 860216076 9767096 172318158 822141879 363623480 810954911 608534511 167415782 143339855 768321760 311028196 234787856 307648020 281951217 915296733 455980166 229496309 571482380 485627598 171394267 198622979 461484705 875262982 437390819 742761441 825623849 231172378 496706840 948050231 153035905 13387215 349820232 883317967 926483619 190917853 312506442 773690713 782319815 586648260 748206583 191730161 374029612 736432037 911439782 704101491 734170302 414499794 683997487 288470356 822741394 650561975 27410157 5832123 240282544 526789461 99319578 247520276 863989280 790196342 708790935 738613961 355953577 794044779 939954635 329349518 987447083 542878922 843168213 340551864 172292734 331518597 572269934 413719436 582019623 477686272 933968841 287516396 38580536 729580356 743585993 557585169 805516284 448115950 672884846 877952881 935443125 68497958 855559028 618478719 908317482 427856904 254308250 988141297 286248552 91486181 453009370 374705227 721273799 904761368 284273820 109396142 783988102 477496386 588616140 401952104 316068567 178412373 105129292 289242809 630540862 618220508 285114289 257456314 275257905 948544806 792560107 930914169 818972645 425562460 791383129 696753902 656457019 667000728 205036321 908324791 409996597 264951429 304534930 632806202 846601075 273529831 940010791 778293990 1558272 360816102 447761769 363315107 110037865 494433389 274340122 519249435 573253121 143629116 372493520 971126339 581948310 148193566 354282768 729814355 277486119 750210488 678351116 712347542 442748530 669537292 611405249 907181788 331540721 808496745 407811294 721879729 696712001 438204543 970151628 943075861 379412933 970706604 156697680 609585074 656276873 11867197 21060828 51706500 236364524 43384186 883046087 884880753 21083130 312164053 61600729 343274715 919625319 636354752 171924095 134887967 900580492 250849335 487907613 183843905 302796870 617538339 82145808 185209702 835543421 130859660 407281074 438342649 287786637 259656978 846852602 28221725 314005507 700148480 459630177 243517566 408066789 624367696 314721987 526547482 153117844 959558821 284858344 451439442 368991616 143222491 495193136 21396274 453558707 788390711 530230759 743597326 873298960 574947074 523469361 754171839 954699790 871658400 232465673 202327657 989535085 964460431 401952104 974677022 321070309 553040689 223840172 113006477 475733171 896610543 957213761 434932693 717326559 274897758 750329060 303559708 294582595 884551928 229767477 205616776 388165048 288418480 665009919 205519355 770235875 91758714 128921933 615857704 168556405 857728520 468169711 246476968 552066174 879536648 941030743 928292387 661904410 71116307 36996023 456195119 339562242 382362369 622952443 101656830 272148594 152840538 174009172 358194305 275628875 612588516 749303689 589178258 841782572 392548565 625587422 292061418 272278950 337626366 586147984 730491614 288124635 717543173 165490438 662207117 172017000 78339135 734823703 600641555 560720866 216195842 202547149 564550520 142989765 39072396 554516466 42890675 334017255 412440319 617318969 726191209 800959675 272651352 489951339 87955134 779912378 57394345 620890984 971943093 516791225 947702017 454445605 623652091 537383993 416367930 103939600 264085127 482710488 193577329 902460192 280751382 259562012 662712416 273288323 469953748 441170933 75290685 760953776 654975727 639766065 66806804 66220931 438268196 388005509 773311809 556798966 267888906 709520324 221439402 769310429 470652217 589169516 9072990 253725330 349846040 452209636 966911568 767913172 767452174 592645810 454010454 535232232 584255157 69323295 642533998 780920903 472932328 300311874 128824844 565562314 943556656 983616493 615039434 997972209 474690902 237487704 890945261 735334940 687567259 911480246 914107080 291868942 157608712 451157069 340680314 911658209 220569186 49640088 598830976 48274035 886766537 187013052 521749741 684807884 145359871 623344714 232367468 530200681 662373313 64926071 935990271 960137741 402288191 510273616 672022052 775358882 210882484 801615284 731992675 374995634 668522484 517605183 641767805 815939814 503324632 567711457 581776241 960748472 625117797 611505834 639666633 912373420 590485544 725078169 854030099 163144434 234026828 619661352 874747498 953060635 841418845 174150274 741939499 286385970 524290695 18168467 534520540 976624529 333668455 159479154 165163797 144254102 599959443 341607011 729353494 962290736 840460831 775752455 593445814 181060216 416942317 487721363 311597571 691414618 847184751 196686420 89124664 636170931 41591608 422642559 734911612 562722760 480957326 180151437 643325975 397912418 730117443 849062139 699071046 827633172 861854024 842587075 592155804 758041144 935319110 434075768 582778190 772331214 591138991 376248628 116326192 516473486 899478246 34836372 943963972 770636153 315214136 6985366 880386731 95012628 369751505 195444378 214698929 484152338 322061164 287769126 836889314 884308031 829005745 614315565 743654406 912899606 864735190 468340463 474834060 600841466 278591179 786049387 767523359 961314491 357231065 900231905 502659352 615308393 877853993 35986373 856172496 951655964 104705344 938777905 930655719 829021456 686870782 791549788 556473259 706253615 816281411 654390474 344641806 288608254 235576597 752738125 644428413 732289520 640651315 524200730 794681986 474051094 782170050 356346402 82040076 759282721 762023876 144893043 491873687 67636715 759179251 489600871 501024960 865067183 462805549 119519531 923057759 328206442 56465444 843489068 680258406 837064383 65757086 860216076 121801911 335765028 877910173 69574724 443518604 91720940 188596751 489893234 292146855 185791120 514371499 107965910 512805061 910757814 296992562 113597914 572129891 716275458 83272397 224273027 497359246 390099324 807029982 361391847 227099672 937870352 47920284 643258091 568786282 85863450 212648023 533326811 41261328 512061932 28032307 222293920 425749787 630795960 911867558 307231015 430932622 327485646 222066107 658630639 902406649 48134666 795517599 718513009 648096466 98595565 267347813 995336332 383123904 266782755 942248814 297659119 663229806 447362947 37031799 136450713 145730878 506637517 79031660 683829173 827982008 274078903 324228308 274679250 981841313 429790912 571800722 800959675 255742892 390988358 486444105 961382165 823177136 867776739 772432140 757181207 6624843 428411063 932463334 702734250 5832123 952094826 994914405 724914187 222391073 328297521 496004901 335959627 577779564 332688450 19605131 111945158 842194146 239792594 271250880 334536105 327011927 15552961 341206749 133285371 401952682 403294551 19091119 299508460 363052969 931346025 64458783 553100308 794512726 416294191 385203436 358937016 964841172 836456469 613732092 107472433 855621170 711209332 351424170 90302180 303106046 750298921 340237396 760778880 484179169 572146171 402567067 295485436 372810479 34734688 412657563 455497026 462301187 2744220 519797627 17187 726001082 497087609 178398376 860059507 101370427 709730432 288412513 247810718 67151039 979283052 162111448 687153391 876590230 417261916 934186160 532376113 884806596 927755775 460472134 904629315 290078527 332585662 627708210 399945366 740183847 772134321 781334138 538804771 524509604 530864499 712240341 530741660 88384008 444963492 724144852 515202164 476141676 760759457 514621417 520300198 105506087 837769061 833768024 185964932 93078366 788452723 563086953 812656609 472690277 984858352 18851581 858749166 323139251 768046818 794916511 702694626 967589147 312722476 38788995 968292533 539458706 695557082 363660355 229837966 754486525 883019847 257055281 647884416 30744577 189283507 727066915 523559567 811639536 64338302 605139933 128204546 809184483 283955770 874826227 435893627 66217324 359486363 51491131 712989196 794487458 750074221 824597922 561370602 952366622 709934263 57441216 466036037 55460443 943040184 11861990 656739567 599578322 621279133 159246699 261494570 630875813 679283541 417153529 216742251 537070402 156768583 114304766 67513802 483191015 992195884 614039638 73233550 581324729 938953358 145295764 692236674 649639596 331757850 767449506 144827624 628387278 529503140 750400101 846968963 558972137 57473784 312949941 142379586 722151614 408170445 605817120 175518566 395343594 585476517 322220500 47739789 50162216 235870811 396969016 592132805 355430923 821257098 695612651 120482378 998333462 192752945 589777405 103812480 833108909 739487317 657186386 51493780 9455367 395815020 724015655 186082213 798941482 763536855 967752859 568362860 19804786 901279371 791485980 881948571 196841916 781522089 507760863 806483932 185710833 722600204 347097403 398180607 427882477 255085893 771986895 230528312 906286653 652834107 407925763 761955912 881105410 833705977 877908668 976333352 435022875 15990447 890172333 427662130 13926332 307307100 432346674 416418210 703118354 567371302 9501520 536655987 714879838 602055876 878813860 967629848 525854693 20787270 450758455 489533244 315299298 551924592 44974168 291052578 738192276 967595591 566173447 575249279 690446170 382089765 356890540 527585511 902801724 366648874 526125688 968222112 679062508 356138483 182700838 732640484 210807799 148885859 725762634 925490230 95686837 598121808 152821254 960554299 804885931 629357985 736019929 648560888 262343982 23202562 814298626 272279190 695112450 204418683 26897842 350780952 738294339 289033455 215524467 165513147 764878785 696171902 472940767 948638856 641024611 341206749 426795285 841080056 771074882 753940444 229807876 374082097 935611658 116429796 135796749 547228351 605883280 823969146 611515629 390671348 255338482 729580356 273718394 789281369 892530005 432265305 341772163 168351962 760451449 710994406 184362092 8199992 274525206 112352630 449268212 504479261 923072961 9763072 559582565 773300273 573897814 922279473 581937778 579394999 364766119 310916732 53920053 101033908 824590722 59680054 12317332 421226823 988075585 126816757 810624258 143157443 929781701 113275999 445144442 84722641 608708778 51646477 710157534 480505964 203813483 419131209 276590209 521638884 173782763 373773897 670127524 489962907 74962330 291221432 204871912 849037455 565212757 809991750 828979623 254056489 166192429 535305795 699019285 347581729 602408330 445117246 558137974 403918309 989443801 694188295 875082415 596855801 971496753 378145538 720936531 241134023 821823254 521570401 210622973 926603085 68871530 198398264 635716180 906108013 250814277 547627867 274798942 302026781 764141635 771923558 235004957 340054947 761415710 620071500 70000583 443835724 538386440 559683161 141917735 9270592 849709685 227249913 688847623 318389258 950102482 940801319 568029336 323249048 104172430 878038988 580724885 765017407 953330099 601903216 729551398 709927093 191284802 124593258 37422287 55594935 516295829 64879547 508777297 520314216 538761379 521309336 957309205 810539720 876572658 488905251 182065188 397317820 792503798 7457956 554464984 751208826 154944062 615104297 123957842 65869781 516187284 228996562 455984306 690137132 160042755 986210992 72394680 970361060 47088794 148603717 943493123 510329521 141771332 104498619 275896984 637576738 803213916 626822698 546027579 511163820 595514253 503149312 595043298 620522413 602477343 572928367 702987461 307026778 469394382 357112678 351623440 790673442 148922290 110724717 685746244 862216447 129674512 860203801 386445300 196254683 790999441 823952146 888147035 367341806 111794117 679104608 551198211 468158466 73482047 683200965 624084581 36279830 803985274 823356391 906007679 663622612 554634805 203279849 833380751 426242317 834790857 733435334 779948941 7740574 19864565 573205320 899154631 946912094 252262294 658287190 595879931 51967251 107745876 45843573 207185948 130414937 278229027 809498628 591579076 364465628 699946574 225334596 601282164 17939947 180220719 106771202 949928045 756613699 699736852 93743196 665025403 820118754 577222929 299328468 589503513 222586734 447551844 319569366 332563827 607161688 908426220 395908923 731354190 804685095 342417363 391706524 680074362 520909619 393834922 918997467 10317011 150657340 113220264 802799351 747388605 385215624 95970891 767463121 604908975 775158737 978075500 176958108 675584981 392463653 195944827 156768583 638596311 434070946 738296578 792841747 748197399 440413386 299095530 388649477 296081600 234270975 952020337 215470420 476438591 297504969 859555318 499865883 86548783 910362924 866834153 693695683 330462530 242764204 534328530 377737479 438580563 57022159 712530525 775534252 263613893 296272814 334413862 909986072 949926291 912276587 895045101 55377006 963915822 575602264 260434438 531851129 899756742 866206389 939925051 276293274 271226481 870732394 487199056 262828447 866641896 182461130 859667892 632898236 44681268 12285850 34344384 600671288 191088484 884198972 531858905 287652855 498181763 573251035 314986391 915288369 556715850 352894713 81760098 538838828 767386881 509112866 903226995 224902806 702604545 826218922 175614574 257690012 397448873 413539124 978385206 190249603 353017194 705583754 142532344 467678370 121727892 393786728 113899672 586846926 807256075 205485081 39239888 305410404 267140160 252271017 390988358 277392696 960735497 564520190 984466987 22139938 378249346 382881288 405360121 313797414 267741935 960641232 92881564 275638571 577779564 818117321 90706309 415722007 772804462 520160196 970776494 902646941 497042327 305310256 439260340 252153278 280165522 794634455 642928165 564005973 347447572 364552787 738160680 365851031 343698769 965179516 506776400 376765092 696612729 835981601 195605306 576722809 955495877 962810868 981127532 275636987 369944494 305394834 264521121 204168271 494906786 64932018 349461845 903630752 326515847 579355934 598975759 850166467 370407754 559162262 77822976 318713184 333692617 103979756 444400782 755537204 562722760 960397825 215470420 989053418 200830106 905414520 369148597 556904057 83908796 38513999 788792012 124731932 408581051 188758815 104709793 735111390 184429348 269635942 957468970 281419813 469010959 108378855 753014825 337966730 485207936 845590653 711037536 641029395 108835803 878150126 191024030 551345554 49179867 775593706 621233668 969094014 918118251 526656624 490428299 689593087 983616263 868079531 992648620 139554044 229086220 243846319 328869305 826341207 636344843 783663229 999372299 439591693 856904274 777395588 470692027 412143758 102001284 360863110 349324638 621472700 424152315 266991961 859588079 679703640 479732452 934738780 738219200 991202065 682344200 461359239 879523858 939151896 959163100 273515282 446992878 228996562 682872807 313072968 91667337 284583360 650240421 261308203 14265042 323141439 236374500 504074261 575858606 684460302 591991767 429231656 969094014 610072820 379657411 878130227 761605476 431699995 149121713 554626101 925409385 501013922 863989280 214636316 649790306 276062493 121342578 72951675 237793921 879642999 544366124 88860598 81249648 199942649 724778790 181104522 707330782 468364903 747002114 715813359 952213802 660745843 138739236 869840240 227506028 844708300 240686583 845927596 790509146 359327356 727122934 991300284 853902589 803149140 857833429 446042714 276898072 406513468 254357239 3272093 452698564 626783983 123862763 213077555 260982408 400870466 475689279 803702953 921696211 749499324 821040140 589328660 465680616 966387299 859555318 364611656 84228205 751493186 501395551 741615054 670439803 482656044 853980968 420589750 183220792 254271393 926179261 903388842 190936595 686741964 252243660 96511304 2623218 851733268 654964251 151951372 373072372 447569834 691573227 333500031 83497569 162062726 339838550 296005728 786944 387089518 752479903 24419403 897508766 142184098 93717543 792786341 70217357 275766439 951730780 387109666 173158376 349304251 47482638 347563845 151292972 240946396 359360807 332524552 622529866 943266181 572802800 336173768 766468705 148814544 680685520 753680043 418425552 649192565 654182510 461521003 402567067 267832560 860248064 181862240 718472860 458016086 105731991 246889436 580880905 684816745 599038439 386061928 102609813 126434686 148287110 116091082 702564042 454739483 954603553 901023203 206052762 947558637 89539499 471687987 595884111 642574812 747515281 346523663 266210991 963104511 702386631 535580128 702535674 885305093 43592636 459415463 390224318 725435587 143481892 843108227 823167828 627337223 721022839 230081685 695999724 495259006 327564207 99409568 455857975 997895078 155928637 530240453 651053421 529449471 164600051 802756948 588824978 850716405 147786442 836367695 50416399 603304056 549485128 403594491 913424680 58030870 905594971 153517035 844742414 93112500 240317715 556742693 289251690 950882778 788462565 376559664 92766231 662302803 778529097 892956103 271223314 594140813 736028109 484318723 913619793 585823182 974643218 748867383 712572971 708336400 465496908 702865280 105174351 745980993 40060741 226452803 897644411 204487906 252153278 243978513 887493766 323315818 29373443 666896670 747779522 283863070 244372680 219124671 665512430 37237342 814425870 229330288 368426356 864981549 532718407 730859100 850166467 318401247 32166608 652008674 993619855 882660108 447528804 561853415 681289558 50448965 308497957 461166535 734596720 426083249 28425272 913953713 69903842 29775983 761622290 951641336 727989241 284426044 828779775 611792713 175562868 680629000 825668780 350877123 339898927 703666786 779703675 867484185 728551886 911280293 36474251 82621142 153908521 604129483 957697593 228120829 626822698 609617141 804907189 562774403 606281310 786787047 141081935 782886364 393305633 333280795 410026920 26829629 925382688 211786298 464052136 288015239 252593804 859421728 42205722 986188933 456348698 646220905 179570437 894739457 833800176 357123999 759894562 407241539 77758044 162521259 993422708 180609222 262281814 819109642 7718172 916781830 467535349 723752051 35520230 544220206 292732616 393905825 329563314 344843235 581234174 809907369 888609100 610517731 497610627 449497514 637326629 616080480 890137676 961703735 543384664 772457313 9318780 353200022 246249527 146461005 193547562 531922744 742608959 887841260 473068257 665074832 978834329 724394058 144325123 258211207 885831600 498495511 565871478 967408948 483302301 354061537 461667116 724614193 329097764 532030484 569397803 400837858 875765440 505372267 229238983 649799144 361830316 930802479 352139970 671239128 801605697 147875020 498975758 163986016 616342734 62826284 935879146 900539215 735026193 189268956 784084309 482479856 837579322 442521951 455737838 857181368 638820791 700649251 92889184 581721829 133680438 188882398 958815193 313006829 913094374 218611930 95048504 449890380 138766202 161636496 482010790 840520484 311889366 357015688 740294111 999024098 302768337 516518568 576677636 99796422 172796125 391368274 734245760 159044264 592507233 84720368 342545490 935619022 178254102 458462600 939948842 225637299 738823304 535056126 605395090 202327657 178978156 225567606 291554241 957917724 251267095 197222095 576966420 952347919 526714938 855240312 982825625 786327238 494712800 15530467 753866972 191275159 908037734 549709514 203592851 710616124 200703304 289682256 27636376 575808487 671649898 816107839 275237464 240240911 748552443 640450705 718245171 5823699 704688811 133617338 570035681 549326012 831906175 402545890 474573620 350456789 907568012 728685013 870875201 300085454 905242922 333589684 826976981 360887628 756535436 533547680 986354932 407403391 228783140 292195731 638150626 990532000 187531407 994207908 986719077 304867804 936136894 918892219 989045293 145855439 453497290 527273533 440389047 492653638 816218575 231655457 844243536 598524845 45793433 730364280 320995056 494962421 257073496 779606009 687870881 34213701 636686457 138131448 497557856 350257601 199457878 261175728 93361249 416492708 885901385 107516090 648378118 458462600 408170445 540620596 184055677 203768021 680026524 15389205 581718692 731973376 129959600 466010437 620598653 5191830 123105135 549708058 157522100 512913677 859990750 758235827 278418373 684523361 165128482 915995579 792025346 727092941 634613492 269965031 948069399 991728757 602303727 840684030 879304257 211500639 209665426 57765721 717518147 883760179 69977776 149156677 363288733 578884993 36912817 483275882 784279339 924281602 933613890 896834351 282577211 111555821 969081039 184159502 528633247 765612184 779967886 336576157 973542743 707368702 987000357 757983964 623766501 141234382 86312919 216595466 234597684 973316689 552844136 935568334 176144564 595381259 515158558 801438367 860072434 880943717 264347914 331933700 475273408 285941407 565840393 549256292 485207936 214955929 478048582 726788545 494901511 552064223 541274800 820691023 10394747 153987437 814207621 824521936 154229666 217915004 705564948 247480240 875153125 196863338 47090227 356873506 851675781 236368453 796211349 68135044 271016597 530546135 167967139 714697557 898518709 263422561 308361570 876611794 870814763 803679435 490604825 84213670 122897849 185721683 553044132 413379914 873944770 662644087 829658315 366501457 156729499 485816934 977614306 409321904 524238972 641309700 447719552 562017913 12406460 326811918 800674653 741112063 469624974 151802739 613933660 424861026 587420748 525783178 444710198 405473578 103579087 449251238 296535211 546220378 930276019 430049222 629787852 657470790 105454397 709209099 351486886 668640357 234820768 971441672 289690753 937689655 846285493 520197728 326598612 210954152 980740495 227261659 552125858 38281360 376817271 270146761 578234884 767483342 663246770 768939365 697970014 972259038 350141726 304534930 341026238 667150451 416903157 784595451 323609538 996336452 796412595 323823974 932746433 630936725 371764748 983510263 234552574 834978897 570947648 294342463 851678830 320194633 877619615 146927451 167751598 854997377 589162913 247533430 813216696 304719259 434659970 286157273 209550010 714888140 699631488 135599639 968649667 469093599 230878811 960458017 941229913 220575591 351062429 648567143 254952133 861435252 421465624 842733376 962222243 252324724 544729225 532264436 623542034 361701858 565922182 368591192 991011327 379429783 337286190 849757028 461931252 334752594 654702197 173257057 793479986 356041779 909989027 214184577 982365412 68647402 456931589 605728147 684670667 721492475 461618404 811375857 911005495 465520565 668834945 652365259 526457435 933325579 57172264 666550246 303040738 673972357 371409257 814758904 723411802 290491040 81557467 105909055 122729878 255781728 292297568 101345892 414018867 387654742 911656230 682443483 877605526 247991560 471957014 668921023 540923995 554673854 350591933 886177663 170389744 519967646 215909063 351000964 836106556 106009966 492000415 219710926 645938174 245569154 332366548 517934400 114961277 387858612 359016724 351810893 323034805 507562004 215761822 684595503 465713369 97692965 872669103 143397193 926680637 148836651 488448300 19440684 632520820 102153182 676721871 835110937 370432957 931432563 789149744 178412347 549241730 402887290 967532644 681603904 940906294 256890952 564109705 62745989 636223255 798082049 893623436 991453546 100698686 74048528 756535436 959627793 906286653 1867788 901311397 293462251 110144198 273386321 550185335 666940417 747691233 866609338 71595555 967374209 621613443 998236834 293623323 344060178 565886466 112213151 641408884 495751552 722469203 524019212 985473363 201087842 851401536 970361060 595367057 836636254 86730909 187418507 504665041 561396058 568638097 470502637 453374459 251879257 202432510 876682410 462197810 829945417 734170302 763684008 590840841 277612270 503411342 59144042 546993861 388319503 515981162 537418917 96709450 357407977 241526605 602373408 289342782 937259556 75113907 776974324 282704292 820686905 169714390 66626689 521895284 447297530 883572006 352283895 408115151 50356408 650716172 282481581 793725505 229545106 549357254 332837844 298975964 535340907 865459783 147569735 249225684 15067228 182331004 780505258 716896252 431438459 123951878 113392168 317809770 32284681 779814253 876191577 268507758 933550129 867225026 244254149 774865090 888809403 546965706 451581068 980787958 394510117 899526985 445039048 569368106 428446590 668834945 508110584 480111192 303057232 346806889 814325895 564014263 308216528 846525137 327774083 602199528 78857152 726258319 236696287 513071613 109692974 794491075 282290730 90191677 262972315 157987807 23194870 781835409 133688863 383265656 743963974 982972055 196722450 207840030 222119043 309699022 62496867 608701276 772602049 905414520 897339639 301113493 193940474 610451864 667254690 154652195 103081010 782912830 49817038 330545106 573450390 31460915 144772036 560624127 80301602 496651065 372555108 632414365 741744053 365701275 741411236 873135461 615168616 744565311 93941660 602705448 100937520 161482282 510616427 148803833 981061931 687869310 964103437 275273253 576677636 199857391 205430750 479810629 765433835 5873943 286792584 195749741 756540939 24718091 732252604 414329757 379089583 543859969 274034085 158229380 491471766 299928309 494418661 316068126 528967578 162419196 508134320 68303963 3909217 958742067 72578873 651337420 93125783 11350989 360915924 143705151 351360292 840689093 405325124 932318121 654964251 417896466 772988300 390896256 351650114 792461184 836243365 313685500 918497206 346917260 174651223 951364319 30238600 511383643 698820162 96991972 368646682 697836161 98991227 449346316 578213504 127953293 865188460 532474114 218380889 359568674 10506242 215333307 437018700 774710395 732694538 615832675 87610409 344144003 344233424 237669407 140740062 282750917 728850318 469011555 147698121 149236447 638150626 671239128 464288523 646460803 399438513 424531783 39837376 37509005 917895294 930742440 729863367 472906671 143597779 539081225 986729062 907506664 915066730 353927243 975685667 387741748 482472124 846871715 298105359 281907856 298029279 401721856 537418917 198315005 927291130 803903715 953073496 945530719 327869692 516560247 678889863 252897005 111685658 740262586 116025663 521440370 764061309 7314148 521141060 992318670 346738136 289502545 43323050 513550568 203167092 989289272 856221232 897423446 261818429 895060559 580149776 22399979 95448272 91542368 970338035 266456313 768779754 351662106 836213893 10403048 879994135 255619039 12385613 873321017 544641671 796374626 942607640 42816552 483905369 595536635 506545231 782128921 947857846 85837133 820326540 944391899 445777900 477920572 612967818 229782547 345147283 75567762 702233841 835902078 506245908 857885687 429345273 652604990 375175933 557366771 777902923 819791999 718021647 255371271 617312629 633079407 220507450 722772767 467327985 750082765 65669152 586651729 592358928 403020723 770729348 817864519 495510556 237347324 22917860 624092026 271582622 129807758 149940155 757217143 112222040 826672253 615616223 112252636 257931429 451581068 782995066 421871475 734228722 115692889 860441205 559094912 670460988 326091703 831137596 344594555 379833987 113469847 342166079 119913101 724320287 935977920 467747254 130210109 355273022 374782825 589162913 986729062 672065722 673763487 208690746 152136430 280843790 510045011 162763794 583991708 686181262 547162867 401494146 864804135 687687549 905454573 343534402 355430923 294110248 155244610 363569786 747991314 429274796 338151433 948087067 872440803 588866199 890977503 19444380 707162549 614514945 775635858 405751809 175823933 768876118 892577049 680613987 923112603 455480276 609268105 115515330 86280304 425720373 760086356 994817670 37549255 357824214 146898782 798904959 170962332 287151414 907159757 959761622 420288113 794895604 948963357 955753700 389134804 634008989 280075583 53854023 339005577 463680019 615832675 969624494 844640052 699804140 568452967 186876080 183478683 667292753 625545148 123665940 940353069 191643911 397542069 717950782 229547405 202432510 288809953 723688676 885338303 94658714 61274465 771239049 267347813 890236315 406123833 840140648 610260189 860511790 855617336 876481527 225867471 245601813 582716702 51343720 642336201 831278896 187204265 144873218 967016952 765655740 59144042 718734097 365771583 279279122 698059557 486701016 112790207 294380452 841492888 216036243 741787258 233692585 187950177 229372781 892796641 313672500 219632302 304902188 106591530 559010365 215788734 952097334 247880212 161208176 231574937 220948669 991846826 471355366 847947693 496040234 927949519 553058163 444749072 923458510 11827696 872743510 379491080 525533883 87132212 731143837 555984974 170643764 250815650 119750436 542034153 513100460 598679395 722222328 312311915 850004388 256858397 452777514 16553442 434893286 326834922 15987352 502401722 127898279 675740638 499660152 389421356 345940051 9903044 875236860 428991965 879304257 321314002 10269582 663546598 618314783 82961586 13200623 386844793 783681959 138992270 19440684 157236146 490343057 297455349 882074894 972314470 893890320 219122374 522440445 116025663 321012428 155780154 4342622 929788566 885163136 514628547 757869538 86009718 721999595 443891570 370966318 627498331 972431481 84807176 103855184 537542241 663146503 899032434 221767515 498361770 10593451 17665318 937260267 767206664 563125124 900072339 818500405 776923890 640665015 968346190 559587169 564434873 527872680 601278583 65529248 92260668 630509054 421531643 148732666 51726428 262963590 207391898 775097293 798977323 698575401 379544376 151431636 448838107 756608048 707490412 166644923 861718112 255514134 756331542 69361334 464237331 891390237 987352841 980430853 267391592 289404851 727732374 952743427 936269260 396760451 421268764 596147917 971690755 526862497 835098741 696563684 978425414 446882429 818614438 648238162 192895958 554721514 346433476 232793091 534943690 194442442 78944229 136561159 262352071 849325576 296738626 767913172 614213570 711480823 850439660 305789765 873753730 365379984 756159953 751962220 349409829 246336942 351294480 589911937 443518604 498975758 683177753 716628986 574443069 232032536 511861365 700550921 163567757 109626745 130387764 376369871 732358756 939781568 278375164 125264134 777070542 549880494 773555857 706584321 124766130 953440780 706584321 445554096 2886024 95275932 226297244 667778355 184363148 220722182 738382832 878800826 901050398 602408330 189336170 695156985 788137543 485589455 353574932 670009865 958972940 863044203 226364622 160706563 271926039 118539444 636730764 712834171 265378086 153611340 471906035 951206203 96123194 327465688 701837102 442028695 436874103 987954520 135906005 517609961 900665808 776214890 747961801 332864582 457530606 233839078 235350360 108096774 121198268 857480758 486301200 724394058 794487458 987891924 114119118 744466581 546165944 830865979 289576310 182179407 761297554 595086234 24205356 718287753 194957007 313003681 901006427 472672681 757032897 370457613 223001425 409169109 175860508 446092419 445554096 473253485 287558858 239900035 523394164 231080897 919956527 627612385 429020289 227878674 210985255 140734949 813074986 939964346 338492640 958398975 647124453 35065079 602055876 425867455 400420033 946532891 993357329 856360482 74116072 192233229 503538883 560389025 941669403 920553764 134743831 236829801 592310680 75119969 389182532 138973177 826618265 457479034 995859710 688641228 531281880 949348171 446042714 957984091 31449813 690760836 151448571 101656830 823736333 134491764 149936404 457077860 887463100 698218593 786628140 33205191 599528994 240842994 152625943 469094499 53699844 172658313 6679472 390528834 862918015 153968291 482561121 853236756 696808727 16256345 785490848 732234628 901517472 131340012 60585400 813159781 378200200 343032153 312025413 403434181 614315565 333826443 365129970 399819639 609254125 797970735 511531891 726258319 661799185 827663340 425331307 415624145 238473938 594672204 974530367 610891202 776148629 586080965 787357017 506056621 8311640 835902078 595165032 935492791 667284822 59181718 268016137 191964334 10721993 268278222 414234384 427464149 88677862 462301187 219155203 216752657 834994359 394583323 304300083 403294551 958546046 409283331 109578657 316068567 992189770 128773813 360757122 317682414 738577039 981440340 13833660 543869465 269448766 414873894 315659596 817219393 240788779 64576026 462384770 33189026 183695090 927275355 754965469 521540182 239305389 904391853 484067634 518782598 651957159 951730780 355795015 674856453 332374360 452754304 9539863 747832228 382480201 21150372 363623480 442563650 194073218 6070892 592726318 219805629 660612748 50942313 578430200 733078182 113220264 7566803 749908278 777477279 412495563 29156931 684236866 754026894 138113469 477642687 912322979 925081214 786307302 748271314 881366977 579930355 717999243 140024332 478260442 873502999 932382465 396234317 479732452 484591686 707581184 142349796 542154672 219139369 9959841 339794701 397378798 463530119 446413717 345370054 900177829 273734728 11997145 6848651 968989815 917136226 176822520 921522371 9687986 994550656 264198170 402262093 909507751 876481527 418875707 371162554 55712670 261193057 507186071 748738289 428624279 702712337 94375730 411155014 589107167 569397803 851501403 59657925 671834865 993389284 557397651 899713675 926603085 582801675 286340553 599959443 385826118 797853430 628374365 544299414 290372136 314489832 592595926 924458598 226044479 753794226 182148333 31158972 260564844 918172787 769843642 569712647 434204541 18648805 233191168 522889650 518813532 825472294 195537246 572217308 462162683 850754363 652947249 45864402 54116354 311768622 141673964 814337186 684236866 664550944 598113906 714234086 857458502 207235463 706082556 764036884 431438459 904665704 606902883 295507326 236612286 448887931 806690142 885158053 978398541 27754926 820213541 519469871 221445660 870758119 957984091 362060606 270758571 71084512 688505425 566493169 705566892 405382507 818709252 433545868 422513744 234744009 524835999 909461032 645240884 315715 698025664 969759896 66577087 673878388 681468901 280093809 404672359 187684462 58710578 241757341 947652480 126375295 601842632 518442862 544641671 897442191 350752551 695480239 268056723 516622261 961532306 989746791 538390766 259456965 590923150 576988628 421704956 602183471 722838546 564190003 663654731 620231244 983843261 559475272 628097389 566360396 361391117 760766216 813011259 696277131 625857009 958815193 868777454 912156802 718955157 741694390 916217062 100894459 8313432 975510175 748919279 933550129 668300325 752501706 814019119 380727073 260460394 270850728 42543686 999452926 424693650 891779983 213880265 820012971 846185554 741563360 875165914 628223332 218301767 652895547 621334193 71242725 113393311 517639481 536085114 724288135 300110338 888813211 396169826 923766949 668337394 530455807 903310815 135164743 989830532 832237310 882660108 901439712 865454573 707109949 86548783 313155904 142702929 215667451 299240505 14377651 153837490 672475054 178785022 573205320 257901926 630108486 190200296 315947921 928652548 980746853 614062629 33577604 559335239 254233441 27101473 375676907 446803007 693530804 644975844 938710171 608113937 236080621 158105041 684469085 504584951 694501697 165982475 936270020 164799535 704361489 943814244 780027976 624873053 940891548 714959215 775817503 516568887 848003758 329153809 467256380 338226624 407783450 773599809 736165148 694890080 668251044 335886437 829488163 301967206 149875507 172318158 695557082 233018577 508647913 892416690 47944233 782429998 127859736 477505584 968057419 651420183 986949195 15001279 513447086 811500868 408525573 855733518 762792119 167034720 349324638 15406062 302500653 334636045 560444759 762102930 936490381 598698988 517987103 786087877 985978433 977173189 903630752 919449831 532482064 108963400 801422355 479924549 535498733 236756842 601715455 427251532 374149735 588514014 228404187 622050556 223655199 47988311 635243410 498759434 337688921 630189218 413700763 843667269 763589367 980887938 193973091 484543935 135436649 394303028 886653436 504371897 981615260 973417385 974561319 70080843 10131796 920384539 853100985 729433873 515298037 913051520 272240611 262579545 90377322 448622006 623131823 426132545 177932404 334523675 430881375 602232566 369879220 707775014 102325852 469918124 335216775 997762533 908805311 976942163 227307194 806151914 893724270 991136837 955296365 289122558 453673867 361296223 256673245 293679542 710467738 62904589 519947884 11673854 379075683 262944943 77646430 474576238 877894210 168861792 903561874 396601009 969372206 38881984 339937284 286659974 701738340 550031755 836125308 72463216 775621034 805458633 493579677 966026488 528480159 756388499 787830404 708245936 591553821 177249798 178928749 458973169 998720475 608076008 630189218 977887362 933888271 330018215 329908701 923102513 22283846 582207576 271199624 943982055 64585648 660065512 924393911 438241283 422588990 413700763 876930821 895822393 846601075 980832400 620387440 474536744 631308616 675856310 25773947 524467373 572342079 998894912 582106548 766480273 726960526 356642441 564520190 661799185 454440958 449678194 862610961 795989694 862382331 512993788 235943698 620293461 66682396 362963060 858843222 616342734 772144904 695506536 393786728 520300198 32782632 673898446 178398376 107315209 743981318 986388406 418085973 240946396 971596543 339863205 947744097 22306634 708907657 220428711 328206442 246930359 31915079 429789751 167438243 112892641 121976564 595470392 277712181 895129262 994948032 618636200 288698860 876200497 219318596 855875622 688724850 989746791 636769338 37646831 925534331 137999982 387355084 306783076 943430044 390850094 668118904 159621679 950667897 105029910 488499732 601423742 505703336 228077745 280746766 153466823 986577703 463435241 147113827 121462410 701852087 531252963 513170467 278715546 628259787 409661022 299062014 885351658 267354507 702790443 837712029 850569932 91253094 870284754 160154857 886942652 117589686 586893655 281877892 935200528 820691023 558892140 542846082 243595805 813448050 288564310 991887002 172132311 215015044 737491559 507754246 990419037 729725686 88389010 584867847 409811162 422647169 543917752 278169423 438821936 928837674 514948846 852577067 855453520 787987101 281186566 415306469 734760355 227899834 801389136 661782870 48044027 17134760 987074255 371709539 983510263 948104917 143712763 131548596 414708412 101216485 420921281 227102044 395378553 937311511 363473380 77973614 813694040 274772710 387153803 486924489 653692765 775499917 98864073 77800307 228836234 179243977 840580120 991936070 777467825 648208311 176168437 809433821 494370798 551511012 630114924 679062046 753459007 515151846 387415422 996672911 553635198 979066228 618478719 307660453 242892806 512177703 195745155 346405681 269852801 809844748 883341468 16932168 882355047 859950390 489542443 201222976 531281880 120481032 288613416 761622290 169668831 106787955 934886172 667841932 897346692 607083359 900005099 865474496 216618020 452209636 232454571 715118059 383758390 642198482 445793235 785174373 901955929 419446051 5784019 728047542 472319597 880900818 636157875 751330944 798345832 532142299 986354932 474742665 515950930 279098121 253080473 883506436 674970090 35502840 927223383 603175149 382480201 541676396 193999331 598181386 83795742 417500934 67970352 428868061 82031929 428110108 222362844 117620549 214472294 220989364 774042272 418786432 641700175 993525130 332714637 9025830 905804029 492599649 19095831 852244315 211500639 704981276 682972761 397735770 11393365 655513347 456955754 16317379 622464953 308080571 547544997 325374298 337981398 500153507 44281027 667902458 493646476 828800430 976028740 903795856 974975050 34534380 688296720 558662853 402763459 611942553 205011552 12370618 643059141 305415331 81490898 672659567 88613274 926177900 760861068 383017989 661969228 77176364 495437589 152115138 533270957 274820686 50427291 344881539 273797081 376569963 931178415 594108388 444727968 749969320 756776877 967912881 705492020 314986391 302136389 13832323 3869355 172961875 138286521 702692262 448563138 331257628 464393121 908512676 97876869 768908763 608980985 424360676 35672542 35332559 586596744 210098306 489849547 808721415 726938806 907113376 903060388 395916454 692064244 92261571 176033698 119679148 217215417 338692771 499234277 237986153 557621275 236229941 704298776 503990685 942746326 860529696 994461365 52676510 225386610 264743482 624734098 297652439 138926708 432229698 99778948 847947693 18830157 408592190 356643230 567782817 326349309 782067302 463455354 914331008 669392937 640136150 546412595 511365665 555529648 20561113 800891803 360757122 126120295 286105152 136279445 809095075 217443945 172110052 809803073 80581542 799265753 598348458 620960377 254464853 830923094 673583721 187566821 69013242 328460186 86738477 293091928 559146089 113216892 196793183 980911627 170304611 427301980 827349420 416519167 185634483 940316219 207485146 191412359 527201967 52239902 699266730 366935540 258785982 941229913 934138868 329967834 810983206 227274881 952972060 848730443 455737838 45831473 760925126 779910471 856006126 624734098 643367477 723204960 493315922 513801084 747509607 676145644 260550710 194080820 40892130 213852348 196433598 217070090 214421430 380947249 927610940 677827194 435280843 104993572 103640519 463714196 581545383 492603267 107671707 276133386 859550694 481600209 811137234 38092243 555367919 494301501 201939441 919820169 689678163 607218533 176678116 458628111 636664893 106538818 562392503 389229810 481227366 754581120 479977913 360372924 540707575 804519113 215667451 145388552 66422254 364552787 700269890 733464875 267834965 402667244 902712957 397614793 611826194 207180667 480110731 693555300 218167989 878440686 666384598 933617081 498181763 771098394 618166731 392209621 310856912 56020495 307231015 981956323 162362405 629002611 289254877 507760863 601389239 634952800 97239793 421395581 419599007 848790687 404489164 434348956 687302617 386109119 286160259 718734097 775574918 716142 169380593 232536710 184436032 600286464 588982677 263008500 255829485 73514010 62920164 30475682 576993839 261842205 5155973 197306279 963129410 633907240 30437247 958278677 985569495 852438910 860548666 758747794 982069348 980800213 327047047 848477108 272684149 641256407 680958860 616180819 575325650 131929953 749578759 181177172 807029982 141872274 367158683 300022235 973817862 667406622 532291130 312181855 170357277 350248008 704688811 459781691 920305281 714991885 832977213 295627135 365655582 626678154 934126945 30134387 422457325 596563931 210889399 527254518 894799163 86492109 999230690 434076088 577728681 663462790 736932835 387037207 881351428 851478750 401624635 162612755 443920631 717305618 557640629 414747650 525011539 276655759 451258563 440140026 830311181 637510138 931540331 49869396 316385410 887805730 480558228 783007693 427075790 100545807 66599753 197237728 691463696 40425315 30615553 624454651 332847298 339460408 207033595 80968990 755988164 160154857 331349853 11224670 470326982 48909286 859297665 856677775 841595255 811200140 329924668 77853775 684602195 381211004 347572520 236056806 253187670 22283846 459906549 226815885 294239035 581545383 353962581 197440124 292119276 384120792 263219109 574541964 791549788 826940211 650208486 452280428 42027223 583153665 681205340 268862532 321418270 626143773 56143536 371602258 172714393 452260157 997011741 395916454 530697200 792575987 31474384 663146503 104491760 847975134 942458364 127534227 14029098 587180934 295066237 46152738 804819742 623075328 410750755 211356626 161198666 989186410 791383129 925215961 658869083 647502557 192054523 77593975 234182671 367256426 259529845 894507501 588105377 298317641 3739975 968093781 615756642 425768143 370941111 874312982 349603720 287769126 597527059 256253570 12803709 525125451 709355195 605354913 237490899 456930561 672423664 914823073 714370022 586562530 681376883 398679024 264329290 501916554 938442172 787702509 738051624 884516950 330863704 3739975 253030137 448769838 586158717 759040348 510803002 969498314 232559845 264842707 981677535 257493412 397501575 463831358 804080618 179041303 213379909 73897662 181796203 182693247 671370894 890105656 73831294 441971488 388431335 770816594 223266712 116790763 659184677 903286168 239925507 816791140 446090188 182643830 478999202 280148613 41810222 157236292 215158603 515491680 70369851 661872426 603422463 82125540 455480276 143586584 529743124 582726471 546674987 927607822 460585133 494882768 562017913 607526268 272251046 755513961 527812503 590090178 732022169 391928228 670308963 546400588 46456838 248840361 881591896 370705977 269965031 410954731 237608287 84915015 824414283 670695615 874228539 947217510 400844202 174090428 661712011 289824288 766534754 356802079 660272130 846398722 558113645 679703640 820946457 251606070 74799431 721727036 209415982 840814909 290238821 584119436 658841577 86084425 968779332 581706463 88102038 810797853 299156199 936196039 545449427 155725572 305222795 534328530 857104376 81252044 266835785 873461596 847017509 658545817 828529622 341713519 115368608 768359900 173258692 641323030 306683798 963785753 845902321 564844162 464057652 837021280 812901452 611799220 266540648 33181335 942458364 520900837 858531615 928562864 832078633 724970487 560619721 915391592 474682100 46518125 517590365 550340940 39680725 84509306 999210316 251966245 179100879 254056489 930087049 399499400 456142585 608187067 156688778 690761163 985122105 338601442 989821801 381247824 112052358 669436283 812893935 127036652 265344181 3116746 512310018 261841966 185926338 928346683 536246836 823177136 759737597 904040481 809176993 249486743 538846892 551436549 315546588 447492271 706082556 376720276 735781116 478038440 652365259 846358351 332195990 466032188 16256345 251433896 208362076 751848065 649479969 331356655 265666953 466628714 391121070 937084215 319352618 719354070 933853273 687352686 231318827 260596494 747749774 205547840 574024579 953903604 519126418 880277934 835543421 489962907 391531225 623461875 715365707 278917852 493885750 361669490 127202375 638820791 288972471 465597386 687760118 425705815 538661728 269931798 303021543 746417328 316982692 422922551 299667462 963126555 55289765 161776996 791173097 170349512 29373443 262701768 836914067 605598502 668921144 826279203 778438065 756613699 469416170 92659322 829249990 65907850 423363428 388309592 923205680 272762941 367806737 260596525 992963360 593667940 458427076 991985457 569368106 683288005 836837394 775626974 322183541 492416979 224686044 783069187 736019929 155337036 391907050 142049338 686791182 924549756 478515915 841971131 91792138 435306416 868887040 476122380 766696832 29290725 692695028 496920865 408221890 955609547 425493847 839685680 732777819 833366436 199688773 605240999 808402484 756845007 474592468 674591831 462328900 467698760 275704238 502004008 220566940 298446996 197514883 283797859 802670111 460377565 756978905 553056837 53323147 550693898 718513009 501916554 516844530 674126326 913953713 4161172 416428738 241452918 599280025 829878070 498711990 878828073 855871460 403524383 125224664 315439426 599673102 896796495 688623037 836367695 463680019 812751646 734829895 474708853 150283614 230688507 301765321 432414092 919799808 12916134 537880865 599784869 496483669 775087374 212783064 756682726 572956627 106625826 4478845 422462655 601385069 950595632 546847702 291075483 579985817 461395337 917978871 547354331 604667812 873619306 486108831 744664013 469717913 857365781 684483457 584322193 687492661 914879153 7489407 453665372 405355255 538352450 928169398 499049766 623584344 471272770 623547649 310138691 75606762 986805315 547514456 576510531 548283616 390936516 3614408 228672616 119284451 580149776 9052672 780868947 937504224 325345654 26292481 68497958 819317533 807162666 662555800 590485544 334690739 383667214 827005902 780680105 150134904 787754564 277449080 565195432 561070193 146898782 382940814 267768058 887539539 620427139 93207784 127547940 10606794 250607765 369346472 19677112 627677026 623408243 998131293 16507800 500582365 914449901 928945966 969507730 352329049 657470790 604436522 516125914 145359871 308286944 138537932 561544366 972778077 819649200 479047441 529328758 151108336 480189408 744441930 690027440 916912507 855421411 342720415 402848004 70710833 523062071 696753902 910501754 422209504 704988884 901396467 423586072 375035898 883046087 298090006 720739925 602729904 342338826 809388297 620021550 282196772 683007006 705467087 907056226 607801916 900171794 451033230 436220114 43438603 591133446 874183586 986263656 855154409 977887362 333479246 862161285 606159896 281876733 871829642 493013185 700710863 762316412 237281106 625826398 418474121 395716916 473479269 943015548 92349328 250252513 217743755 364101084 752541756 240192123 603324925 745277510 85643762 487553275 132018535 151569625 36265853 691678172 660147189 688505425 234931530 933888271 102991545 867235591 118801896 191190128 156034169 271433537 386487798 498666459 999302624 827727351 433914360 743552725 900206389 767938909 806441906 785530693 574912239 869742580 906696459 714742194 403906955 550340940 294533474 834456872 393270734 692586076 185550505 400107657 657690440 810381456 594859887 211117636 304521770 88275936 936270020 542746663 153723515 476735807 681894912 291605476 80338036 81168614 742454934 961857639 765426012 154151809 375463439 177328224 241452918 950565919 112233548 610632723 41476294 41326352 165578785 321134213 619515414 230190332 14576391 805929435 395962692 541571582 510189293 33584401 61884904 237067527 64024903 686173095 665804592 252320408 342989643 959558821 871753529 101688379 697522046 268355490 653389970 856784715 288845664 361935037 80946829 126310740 748461569 225654078 691689597 986210992 847018174 660988744 404294366 932082460 585541776 866605796 157901948 155928637 570539328 841112543 356817460 826078563 345875049 855671146 226469675 881532540 630923162 179359074 985393342 940466553 64361743 578731085 74991389 77635750 577033786 509254308 822644527 759894562 732201366 928882367 263715345 134820520 957926611 241292532 616301294 723992484 604019965 852276285 548984695 332960618 910271675 63898286 773311809 21402824 866638288 1006395 213128807 408725039 777391656 86087168 386787486 245975379 81010395 700503501 457360785 483166309 63023042 713860416 45625645 650872824 310201138 955764908 158911719 107671707 194000963 866126584 678371315 310941033 145338287 994672802 71359731 518202590 308359860 785158896 380024672 537915710 534725830 119519531 795979237 43668422 789291595 478999202 749606049 583031587 787773668 534543539 68679000 432368215 557156187 896876 525976162 700550921 893474709 300085454 601282164 492290697 664372022 621923317 261139547 431715600 504157226 332524552 313817917 910356170 303091643 420705974 871789080 221647879 438560329 285432446 365898230 374130156 763657041 492000415 125099377 510023353 586632242 225978960 853874475 213624692 56857513 297211496 779896947 213353504 330796145 709792178 949640039 19619372 541250847 181959446 656348151 197062155 752952562 550515817 902898872 798893290 744247419 84513933 751589959 734345613 378926514 395437067 294487832 330796145 551305118 189409595 961677985 587289535 161198666 389392613 562864381 429020289 756650015 880329998 118945256 122863073 629690435 718632161 257125816 730163713 769353366 516376551 6668106 31238398 428282600 792425256 531102335 321314002 133792996 892187681 376361416 826328971 411535445 882025313 794583662 41239305 335471691 861435252 781619954 666909896 631232032 283785705 302848359 569143234 453708310 71149931 740352701 214824016 529048671 23502021 792784924 263422561 293880162 839465883 287917645 863565483 309674105 748285704 721516537 393648138 71728403 815615835 360095864 307986303 466054380 640277797 232090363 605075848 871218300 998068885 391169545 513289032 738071990 477464371 481621995 984115004 170187040 974904495 357362454 734405851 519526664 840536299 342166079 860508694 590256436 234999758 298714913 628364010 521572926 342179013 601828494 147908271 293486559 533314598 131199287 431393149 40614602 958111192 398635809 338151433 433785342 179964899 218110187 590113590 374398820 516379074 483191015 387430670 736871182 24782761 771643530 740262586 487461869 686387285 83707464 599280025 366650660 659318385 390885570 126487876 132485495 367806737 32620210 288437577 820743505 549263653 452631760 824522045 960643736 321865098 334111742 346749702 404731471 619039899 190379542 726794578 134743831 134192602 877908668 392754028 273734728 265518810 154983792 576106183 814458587 343605306 870620560 136222280 986379257 102478629 598178458 554708974 995583349 503182972 186023416 94813571 188632222 999499262 283472058 143919150 32189748 327225450 443270488 611190936 53794045 929714231 229940466 890401019 287502841 682344200 808145056 833931060 270563023 937504846 840964030 817493201 653740008 186212988 407839634 303421650 456899916 568260969 319715878 948364822 794081555 13262382 827703839 716053899 171978082 202054577 720105959 160120771 567899920 6150584 62925158 579355934 877831621 103075395 158356260 301524176 198940555 474444816 509717143 715745893 154983792 35004456 915600941 137823 708367615 659940582 102869755 641974219 273589777 531951025 583422459 977849815 676276229 625282043 15990447 185723276 625984370 71130256 335694346 859779544 26748795 657382897 25272023 208638831 35660412 937789686 442353330 258919264 666550246 366358712 639781244 443078842 356856731 919591302 276282349 912276587 321275238 434212956 345657037 344025149 282849142 737395591 571008643 89588106 98255190 407757410 619269981 438896719 192588375 796926687 579958827 990569506 452203304 9849333 697343137 244062645 522482168 747809477 805687808 405601976 283413148 388319503 840833799 603592731 944115010 375188105 480748081 516079167 76357462 534973335 822867670 946836036 252472711 60375166 176706650 800092231 2204251 207791583 649757978 683535061 945077059 856231209 275064860 883000215 643223135 552729500 375154938 965754539 43650922 591122807 377433559 617497849 189316180 364008556 689090352 850309523 353147219 850819324 952757137 469308112 591915514 796107195 145413582 290622107 48942774 305512037 619395207 946202822 405977158 560021959 972213129 234820768 123957842 488226614 608561439 590229550 961263314 564775552 23405438 758747794 872291911 213647145 505323654 207791583 343359932 246336942 852510024 569874412 584056410 818384917 239134317 278065952 27255310 976942163 520654835 580301424 122192000 665150327 763370018 200905477 367097542 423852955 905382241 342043963 154612563 179511039 902381844 886053498 538277380 302555331 780901725 209348087 523694202 642193608 790104354 777070542 880403010 769736985 422471158 47074757 286160259 989894902 191791860 203790687 929159822 241881054 566906879 925580335 952972060 7289903 397335026 844506218 219283996 489301767 414963682 807819241 225991375 275275232 972491556 220012864 407459846 413902387 996336452 285814365 55281093 669262402 574817773 889271839 444354394 823636081 257808670 57290132 590294605 691463696 640768062 887749207 873064042 737473960 69407274 384512520 579377790 351494973 8319036 824649286 140844592 529882177 559315910 865259197 898872941 410258398 330612172 855214655 495214231 492131438 898555139 172145308 385543361 248083176 689711514 43608903 279534158 394919883 507111258 289146698 751772501 658750954 158956836 61703296 307047776 534754075 820232884 300563111 486386220 328340459 837805276 398288150 16565315 472932328 262493995 492665017 730706376 408862562 673680903 850486640 41158188 760174592 768755618 62530056 972468219 84167528 801048117 224533589 48129182 959347686 637223873 701171627 284336668 7115578 260948167 161764622 312267976 4109605 392716155 566261252 379544376 726181485 135437695 942561183 73247967 176368373 597476253 125071789 811120633 898032340 536655987 823744094 611501527 427720151 401258551 330673640 925251689 807792720 89733749 378541355 338139963 641820490 28813040 906830674 885579965 109173987 660513588 199005790 969719548 578709110 425336278 143667974 99683332 929938808 760415955 926788507 873228099 559203662 151189447 408452518 329184395 321324302 351816411 312642953 768873521 199795362 435884752 587571620 607112374 197616433 159462152 163092852 848604590 936205771 780368420 699019285 285853856 395931602 416299678 629943178 996437564 261175728 191978369 240212914 481131023 112805186 288674803 540818402 84785164 405852181 565922182 438315572 573258844 851513355 67129663 190239146 118583646 154007423 551511012 665077098 375210372 764201156 979737200 345916135 880386731 321279058 686724115 668021321 275444057 454001605 344144899 989736941 83185487 53091461 858880882 353025311 479451602 834830224 737233870 509053706 566142483 637347647 184833152 530140858 994649164 226486546 206658523 525181305 721954109 891749506 680431607 743761039 987398552 190073216 131981302 138469644 405364767 2159851 335288068 314933298 300299587 430552748 623911327 276663445 12722054 934693777 196467075 786761305 971196596 155626367 235113931 721242988 358377153 235362118 469714245 150134904 236768329 111084285 555190211 719709411 712572971 721145218 947352511 23630187 558272873 348354419 387634649 618345254 776594719 543696846 9539863 60885969 19892470 475689279 250191041 128362060 810573196 450968907 293031475 667778355 972265393 111053737 149429265 690135803 663642470 907386070 242555300 388255716 345639927 356609195 538355224 931265602 554464984 836539235 784304533 943040184 858549401 857207337 704600938 490677500 99186477 217606029 906597767 312093633 195626255 510146262 793222357 724993047 304143720 208997385 271126278 943591558 507886974 871191560 648845325 380782002 779900522 608385665 757444095 980051909 672160871 282037665 410290094 540328271 996727363 945608599 899721333 759426933 868322285 785071454 771519406 239896123 135168011 592275417 687654028 276626091 381527364 257448074 188631170 478690962 754138274 874726777 467189924 246857039 60453077 279563934 65519059 666266630 175518566 900966100 319314757 941699396 5708114 400872657 477642687 894769838 288588993 222165675 538350292 777909755 764953455 15518088 84621828 644162225 692803994 288058355 308725883 39182307 757763675 947224973 349718419 805929435 301102599 306931588 65354394 185721683 3363686 575576059 908420503 351909107 907656184 104023415 140416051 809195659 253217332 340720238 545795108 89766506 970617427 971726196 301803278 511124348 946163930 476529307 840790663 47060245 892684097 408457011 925514990 225959757 988819325 406827748 512241372 357113511 323350049 897069927 752578734 509641 427601873 618695411 393879713 542049529 773234943 73939358 716157915 803092016 261865369 928431160 535266262 285964512 371858870 957088494 465915071 178873137 946074302 70417184 738051532 460338755 220442630 340016320 529193401 128337891 484143944 15355698 86596683 535243854 220652075 641309441 731299141 37461632 781835409 800986243 319406752 575201414 855406157 46575980 538576319 173874927 574239703 483634468 991478246 17579641 890002032 90584139 296296535 481073502 969507415 868079531 379149263 327883210 425844644 235473036 972393262 401636588 643707757 99995110 512319050 328559611 937510460 554065941 613250810 776960955 89675871 335135303 147720031 615049933 629161737 454800731 231080897 269326509 764876549 924204713 968989815 717331158 384222270 860961130 766322936 503156876 272365909 544157294 247528148 601511980 463455354 249559873 793274646 724016162 426344141 392522622 441862474 983033069 482738617 995495696 690794481 54226715 545663192 443008446 399600850 99495510 745596935 673680903 802384018 479972953 735058519 945619423 500901012 56647531 679183329 103650908 65846986 207786996 492625447 568216661 816979066 122425620 522992104 908537415 513888955 915285784 969299128 563323691 519582838 187566821 819572433 457975268 745982238 509387881 279608541 950242396 284566516 456674971 61817162 819732807 834190671 17272849 980591836 692962685 964043579 861528061 836991324 662737254 529652373 321099799 716111468 42971961 558976108 438540227 527872680 490895762 579366066 575531610 652914410 104344590 248093969 110496881 136342439 274772710 931415093 369822183 541826383 543263941 15059879 233479734 298090006 886213501 836194684 388277855 700417305 579056144 727163349 184510859 11600119 227017176 544400569 133047830 684740179 100688072 836120011 408001990 56439163 767032029 15330216 935743153 841020397 310757404 616855909 804118333 105874930 809873720 958991703 510281039 307185129 212264834 766357648 823761175 953899478 677905141 425720373 386231770 400170540 18484724 281708125 46965357 644041115 395261940 333176566 795829813 502280567 407864496 74538339 875531670 847655524 708779759 577166121 211100084 271534874 227848173 50728414 953468946 628596935 74962330 799848040 585577852 209878290 472637962 1185762 305368626 631665563 333274442 301139014 12370618 860169525 859693496 268738968 102153182 945945014 443449471 440244589 623250400 804187240 476561844 723985211 294239035 686193957 512628671 700151790 144794874 384270397 22221058 799588212 810520356 665981189 393597552 679361040 672610581 556311653 152370710 630800117 411334347 715889495 862043183 481600209 865957640 459833496 236900060 17725304 730914530 232026462 359685176 275617307 671150168 216595466 877149172 734200104 921059232 331120445 234552574 492967501 523792956 803457704 694661124 661520443 842240898 659942075 833275452 272021598 768584304 175795135 878419169 878150126 246632208 761386327 906690778 76394252 995322507 677436907 994878696 702881571 697741319 770743791 672367333 741444932 655196333 317535063 139598193 995261906 552875134 52492363 52424591 584454260 383283727 70179578 453505370 456019283 524207106 2033081 603156513 641809782 725013785 931759867 12977894 653850527 565520089 587628666 808328740 654991147 18168467 514948846 916286788 773251257 238986870 374966868 226374142 770913533 99751380 747515281 699688 225672134 931909978 811640864 731143837 972750613 99125435 260269228 948155676 660453031 344130386 286956422 418899991 550423651 566189053 499312393 200412229 405518524 262140113 701892090 15518088 209094445 200557667 641190453 410415947 822605509 526762080 458565040 334636045 140790164 712506720 549966190 513237567 605687243 845645047 912963221 86491648 742583778 546252190 431842072 659593708 742871351 302921265 644652334 28818615 326914613 570909040 28054267 293408971 523559567 679283541 69557310 900905592 102354096 831083309 384731682 551253771 525565194 66998768 660186055 903220844 360122919 930647872 513608770 836399352 924426649 328990384 939152751 283291794 159462152 490896299 886502161 237837945 491488360 312795152 548580717 613945361 732611982 10296803 26730943 851398401 674849829 137677670 836816433 704361489 561295281 959073811 309490039 628821411 695112450 302636196 848119264 80838897 92627268 396798839 726551038 952005583 639155251 377659396 730185088 377623485 909986072 417382487 945296518 380001106 628374365 18435794 331305642 444728381 315934570 310105288 899127439 787061002 741436896 98945383 254890889 986970387 136384312 57077066 812544805 413467700 610388750 123099049 239562054 131164408 755097643 896503220 31406761 220265119 459314167 721562090 238027149 165849849 626180611 802009679 249771618 95341637 955099661 347797646 16101626 37646831 794454167 857259838 333883696 654743499 420882267 214494562 92602863 464058122 895401068 214447445 564764330 429231656 572766 125400067 945572801 750521739 559423953 895862086 931346025 936224469 271716805 918241151 199314205 992162105 960810573 722059234 560435833 977257326 264611548 347367987 86748220 985516045 895699842 110362930 17810026 860248064 260068283 567567971 177482014 127554476 794583662 392080863 33455021 300938564 253495639 808328740 734689059 237639027 346394536 90636182 232886548 932362960 945895583 260190492 540315157 951146763 912753148 148163625 91204331 399945366 148238930 138590358 973546917 293848771 531858905 509238491 261498058 693056468 921684921 671199995 645067227 75673834 612114296 175211036 971353690 971018813 539753904 36735316 588300086 48513970 241641304 218927126 973752108 947003743 670457696 251720128 418380604 58776380 30248269 60533222 794467901 433214115 223286326 663822760 272203066 863963856 335472794 351694370 331093323 454343363 785217636 341880385 575788884 109733906 926230309 798095056 483059484 388832313 17665318 369559972 925615121 957092655 907146072 438268196 194735730 721527153 456274787 618482516 492290697 661958193 952213802 919034982 7976965 654203190 544790452 573251035 411227222 170555913 881674714 944934312 498863980 834999948 168556405 269644356 808788917 17407744 67138679 591707404 27098420 228819549 873546867 548170691 717111948 857599249 46407501 218587772 222163775 166217508 866576854 191154331 882608933 491575071 558360402 931030743 990140251 776002416 660620993 871394726 382770418 391833929 534379012 465478562 200963024 982743826 508034187 216013849 263838495 547627867 632169938 278831128 242989583 473949119 720909725 892738294 791639277 895483920 720646590 335310485 30238600 8815632 959817913 16326760 640232487 903443011 769814676 241024054 28701936 179041303 968616849 571440910 435265182 592404830 598679395 67752053 841250745 490977790 807724453 608255095 872309704 127010608 706517195 852838733 577511291 871753058 348436997 326834922 714501828 158135226 417059736 199466025 716962276 573258844 670114032 18652632 195444659 514951503 142774036 915365346 837290029 751014924 351111990 887937829 499558760 259656978 608958381 85330804 727375072 952191419 16503730 679563175 786307302 498786205 721060038 625262702 241763798 756433961 765397932 20910414 239731348 639563063 714156316 276360496 918639082 962269727 847196089 110600183 406480801 955847207 409439162 442563650 538939472 522539678 734628882 169851706 733703531 352494793 962025006 813343769 226260213 532537748 949590532 270594142 3716617 84667922 384675028 490469452 236608339 1811757 989536604 4109605 360480999 426344141 376463788 696510690 687113985 908554721 806764157 316711488 248073692 373654281 893061877 962302935 484973840 86706605 802752149 540410893 217019126 826957467 176713317 608255095 476874271 969211258 313992979 336181207 570380698 640316039 195313104 170265463 825576072 496606001 943635203 208419900 581499783 258129930 920309549 581660986 349916288 143986978 844018646 485570585 94391892 489903082 698977188 555906049 362413380 931156648 509472558 236756842 437206822 16619721 291650752 900672732 28717633 600281420 574674358 687687549 648294098 563043963 528973014 214476098 556716364 581071146 431045026 377556984 721527153 578664008 832028728 950102482 796135196 130170559 438528166 485803629 822055482 866293845 249650312 338139963 886395827 785304211 178785022 297353094 568119187 849624035 15689954 459237537 697406348 843202191 348840650 776425346 59751587 783223946 539136602 176609537 974349181 684974234 834190671 412636899 659940582 40274970 476721399 358999354 282153831 999002628 781365965 624441577 878147512 525854693 202662679 728722093 954392438 828004827 365817564 667030805 162047036 701061036 786076219 249031528 571151916 984694609 14352044 288540805 421914461 232685782 131672092 714564192 446119014 15217131 818271955 672631072 499558760 776703758 990279763 113221001 979798555 940705285 123235314 698534411 542566552 617758770 721888432 884310510 916210068 678940577 394886318 759569388 728103752 775319620 226668780 701197971 749372783 243105830 231241892 678120324 186286895 260460394 888515284 737493798 504665041 426490859 617681270 137443790 54184208 273270703 308133201 258959845 796785920 802318712 387141221 343685995 252324724 105046927 981969793 921570752 259761230 220513659 943422642 819739099 292060904 898872941 197667870 317124335 955701363 418661682 238650833 558152571 313446095 160201201 956582527 735229706 110486979 402442105 414484124 23646176 207876488 619545251 47390807 401033183 668337394 423125921 813620563 343685995 32252715 9175859 592595926 850101211 130307880 696017714 461716563 909967527 246322090 118181442 800337372 348551477 140314558 829513366 2532302 569677281 337677311 237338674 890167432 219041875 269644356 789291595 767206664 544010789 456667365 382166534 166584356 878130227 74167362 927547218 400332076 23309596 229782547 491471766 667902458 252695788 102984225 220976987 671629609 376425720 427048220 399615033 387316890 530230759 437794800 317911837 915402826 242614494 39455059 271148415 732696267 240923942 643769022 438380495 403524383 837075975 109970866 86224368 56967887 736993354 480408845 814552113 979911006 706020243 868237153 26751351 809206822 10114542 171799564 360916869 401994038 38329060 888664344 346823454 674884694 482580607 461575851 835906839 387314619 122618896 305741210 65979285 177276794 865833002 379803153 603703956 115083666 831925507 236333018 780473268 386392281 509572497 439757649 680013251 98682250 137787552 422780793 250398466 973068608 623098305 511156221 525020910 863748436 767938909 426134346 711168200 136469182 613407900 873974732 595772401 462818723 490654048 590009275 847044057 147440784 189793903 773162717 400870466 572287411 339991057 766096323 291357408 548521118 48044151 709823071 297743905 117589686 576047877 805519243 134983245 388580583 303584517 65056123 947217510 495259006 771384592 471994949 840398340 800195338 332027491 77055719 299410407 981442465 829291409 543514311 961472157 225281104 461363137 811379077 337059564 257522584 260268328 809264744 994724031 634743730 510296861 969971455 170481821 267314451 117441259 580424961 235350212 967015135 339376261 886007923 967949308 210834857 502028981 670538576 321329261 322212200 218818103 65061204 188902159 282613945 325226933 950797618 559093175 634963764 198984996 567497245 172335400 963939083 366754045 59292050 911200068 538124541 439657701 644597257 351011414 851464265 855875315 166192035 678337860 17979709 795602101 940567101 465159080 820675490 884015490 741744907 366935540 227166816 34987389 313510694 497328567 667633039 67494123 902334744 760328126 476578310 656527793 934698771 78601672 928945966 842341531 529683218 855016431 524642640 142566352 641268512 59688447 214636316 444354394 716350125 547932591 476295418 969288386 990547003 65833087 338427143 590178310 686429843 504194621 254215502 521479997 923583498 843633611 744371996 113248736 950127204 282193802 209009273 16378329 573045666 428252494 129205889 811978865 138783224 197769228 524835999 346672084 808457610 318269524 132717918 999285217 727459460 197689364 153378216 939781568 916286788 78233182 770011965 355560075 406894336 284208715 612763309 967532644 388827629 92163170 829172967 706818550 25690763 120629390 146608675 416913587 30377520 613075577 409755481 79733104 771362966 387949776 521479997 67298641 392685687 619395207 764475422 952877664 365701275 9812813 540722163 508566643 716103392 113899672 4419017 808496745 110542730 136116291 963790909 622905701 903528769 552000184 389271215 879470136 765509699 509858336 950821501 73674996 680899556 682815338 296757663 77176364 655759055 569439056 556603431 512095216 228404187 346453079 460488505 948634009 895271480 442362591 856950225 241208789 214955929 204257300 515981162 425214396 690598949 525753958 283291794 742509664 420921281 255085893 230878811 670457696 287378878 382052182 862427688 685486848 708968925 318139346 230362533 333143755 970160301 931424223 362876018 77847537 661157507 920314608 435561305 63968087 727578616 222251555 874415342 78990798 7754608 317170354 164254533 640258983 688552385 304143720 784241791 973531238 382387347 143065392 135278469 630917769 153434192 662613175 549490611 339626622 223841949 360471766 276042511 923530164 936038597 934082641 879374829 444819269 960027712 880169369 391067853 102391288 571539500 13638942 996366519 640085393 859421979 940857903 415872292 342050561 624168385 16192237 51862305 617125320 12672483 511145161 189388531 867773029 73482047 240352597 677322613 215920106 860130935 106651398 280521650 755241612 339192887 935920975 281654782 591450013 590190779 471429362 191359720 373141301 898124482 599635884 902583443 849709685 348040673 707853459 879370295 652938965 572597306 393067443 570603508 271353779 140666871 816375397 727732374 961857639 611515629 115219195 849615235 624049778 332647913 977363168 975286655 923205680 158135226 633271906 344132497 364693101 392542710 465982169 625510103 246564563 854642508 303734152 200986661 170011545 262723339 995161565 517232210 206460949 819758465 376436948 810388128 268862532 118086633 423125921 899417397 538134057 590005511 914526887 153996215 155520589 611155695 617341247 206074047 742947824 786536991 986239870 859714428 35519307 162175186 859589122 963413855 158187697 645102134 880307222 495463533 225980901 30998888 615851316 396257208 737405035 683252347 773406582 454635616 120183327 379063712 27277636 561077399 805330551 191785469 173699688 266549609 282555276 508788275 319505076 676306024 329536033 301727711 661958193 631635221 559768729 697533642 134805112 661520443 21384016 132928058 529959200 240631460 527382954 933418620 198116932 763261340 774978074 905736622 232026462 126826218 818550130 580005003 214294062 473391021 114894597 975447651 815606225 970685422 420705974 655954479 694658777 297652564 328822730 671430566 713857341 374737393 507734571 928602321 196512550 12930916 278971094 999168077 689068989 342226154 698097506 438560329 246896243 76820014 648017360 853446983 698389108 295202235 826341207 536689267 445267679 44141406 878990805 443941033 663193379 939166000 310501357 302532228 826352948 197334398 466069504 105909055 518535477 638443741 245744652 260955197 366135215 24047187 889388601 503514968 968778848 126453886 618233378 809526987 933491278 966356719 882469906 983764931 643961998 932876320 986191366 722344926 923583498 30861305 514996249 155990218 368538055 998131293 873471918 529213108 406579130 781619954 975312301 341054812 800017077 824586305 433040085 2159851 742585609 844914319 295974196 729636542 833242227 590845096 379859039 299836362 128556933 661877241 703764577 238161312 711755171 313789404 85541807 936410881 674109807 358356571 622916575 620464683 453274738 485607407 539985044 141234382 740445324 898132862 694312088 630849847 739384277 738178147 813299937 441910779 607953274 196863338 163165276 865398628 633433689 137113670 567290501 890537899 58492053 768008565 807808648 894642320 988367579 244931543 354639310 420764739 548341456 197433421 597199288 820466775 299041252 789149744 862762230 605395090 503595229 382769008 994785571 550355343 52502598 225109485 390752377 961358267 238202505 766082948 407241404 378483335 933310092 238334141 765577847 691161590 881588094 781970446 48502492 787020479 738341942 42418035 778477275 99074073 61506938 567443519 110782357 73323578 102392074 94480193 979556769 826684426 52648065 337417451 710264441 334523675 378512265 900525980 417436074 623342497 235756178 898063445 686239686 309171438 54373241 99078338 741775317 239093988 363372588 597066462 770643306 431759429 596477239 145338287 212360508 267423105 647194665 545426716 175811333 929223040 18482443 508535694 325425378 74722988 649628678 700131059 98682250 422798316 998068885 811022987 996177046 27304020 760013879 935762601 953203130 310916732 642557639 303409666 531713984 877707894 578511479 202607523 412214935 144170331 139116917 645724935 813557152 353161727 116691834 877204645 101382221 825847394 753367621 200195859 495607007 497728686 779450184 157351974 833167760 205966328 541212149 85685067 199924512 127809339 227341896 705328699 358839697 647424419 971735874 161239273 836041315 481914912 222119043 13001113 206770792 426238311 945810696 370720506 832251613 360705059 458194097 547182821 67217221 822867670 350121563 389744307 409657497 970034818 35136048 394798005 468852142 21800410 830436331 988573488 709823071 389267621 413249648 101115831 71285364 606852299 480418875 814785733 364552715 568400181 907835965 218668389 452856184 279116724 501928750 899028849 939150304 653492654 983776796 829672298 971476441 378671514 921690190 883706683 215587778 997657404 744364833 384234297 526803057 322303645 778529097 379028739 218828683 426061125 860081670 16333731 857478068 695350852 107496839 453417166 504870166 488905251 911656230 248981904 853199355 639370837 252808343 914113461 353467925 837886741 255796985 100776741 718068437 701884074 733298912 566065203 459392495 256162680 792801471 894799163 51073868 18339909 847544160 422672731 23368015 545899831 695259508 562024452 600041901 614269542 660884109 797226761 846904686 79623558 848316445 816240490 386359557 413280089 349557235 557196153 364433193 482445235 361340013 664355142 253294899 287795333 943075861 134634290 139598193 352658789 538026258 428551048 404782176 215349869 125014991 701459122 849551676 202760261 196664284 496106483 470228866 593188338 235088462 373345978 349603720 279693814 577313731 352887855 712219188 507068049 652899941 38861408 191483936 6171443 461359239 541071520 604504169 207378947 208997385 987228955 987398552 90066503 944042575 920931478 450270930 804297664 757032897 517787524 416552148 522771313 661877241 761421065 369412259 742696899 529701371 956397279 220350960 896268864 498673416 871598414 309134438 471957014 796120750 221522247 465159080 76189106 560195402 567032626 201057241 620975845 538220348 916693109 79767864 571482380 245919492 276492696 228901485 437644984 199555167 938128497 929838452 840076989 388978895 45163839 215844023 768920212 994812682 279249825 427496159 338429664 464925569 55882290 817082326 969978626 109210465 918051198 702200380 397017526 855875315 593554321 721516537 713445560 536246836 906733762 851198596 706581367 824751324 305435711 602175581 990299925 883601993 799379627 501068877 806483395 832369955 41603225 288261916 543662956 675545571 215459477 403768037 688847623 123134347 634183805 406781955 156864123 49002326 842059887 344792110 927607822 886000547 336340621 123633463 13918627 916845322 780518815 788179327 686656084 409630429 367056721 291138891 606994948 829530512 9052672 850867256 952008168 686967171 875655401 443478977 854994666 433971801 654193629 658722620 499744184 390666076 908953051 67934934 534776545 34605505 374927940 565874365 110445561 181801939 326147585 832778392 740154361 522164440 903286168 629620548 281298570 475041650 333144862 948943025 448662072 265229747 530462290 188143063 420659251 119672508 242690117 913003103 763795669 913000766 44525042 596468830 333271370 101031092 529163954 771544292 580866869 220702656 658886959 972241041 315534885 364766119 727780661 863607789 30475682 960264490 936389295 466509280 689678163 678204269 260299104 354147235 145252396 976859639 13743040 336810987 719049641 860652998 261431282 161668334 303174112 69574724 64337633 363531166 294533474 700726960 554157742 160094853 650323948 18461677 806903658 404297986 748889470 856674392 18666754 189708618 259604241 599789053 708750323 770786166 48134666 111711771 957917724 911277345 565698959 970394837 851883762 21155149 767722521 28525752 773494714 371658313 815635993 194086377 390855586 967912980 791033517 54968661 576706639 698218008 557397651 737618244 593692471 583875819 219701092 844495670 723152412 166496148 821257098 656739567 825847530 18950873 299357153 316580953 172718302 534588730 544329650 52665014 37490555 64672755 28411842 681792021 601654958 558675350 828066438 695276311 596855801 551428601 374901626 80250543 227787565 641042946 848807794 132385165 242503310 559059774 684409473 405382507 220660974 624475971 476141676 309937195 336923638 811200140 576971686 918878918 232135300 779069181 296047669 349636115 177294615 591311394 734671720 555988475 372474751 529595021 731047039 129941992 749149240 588958886 729260833 404151794 216780261 433919154 459564900 75567762 480648122 834120002 627677026 19267269 674067012 639370340 596157925 2011955 807682894 677229387 177429242 527936942 832477020 143065392 746894218 713725999 807298266 705278847 206056280 389109344 279654576 2675258 414500895 726447100 995000488 95082307 385176216 546993861 397501823 989067076 227622950 778462379 4820266 111988047 350698703 505087889 397228702 975794408 616313857 815212585 915365346 202208291 634927289 299014432 677059320 249575334 563189705 329449006 645799728 511531891 298509160 673763487 339058507 668857170 402675657 240715713 695927579 663473587 290460671 110227161 324068766 144048408 760116474 447103269 703999301 531626308 370730704 281922573 690619699 589225901 122629624 141300119 107461764 464109162 758946206 591638658 677649560 952097334 572740568 55820289 100974869 554708974 957092655 259638062 510803002 876984159 4529226 753942440 720945101 327635689 39032239 741309011 917967736 402763221 878214104 911091138 841264062 214863091 881769301 251149060 164111805 827069744 758129163 630252189 506606616 526786005 433134528 639370837 383232616 542078103 812715384 999029426 198840504 996219756 614865309 455057223 110015857 470352708 992474219 229650155 66619046 604403024 226672371 140209273 111586495 527890229 655337057 14600901 184515691 232889948 914879153 959159208 571571057 173118605 986132755 30794154 239721152 747467079 963126555 639394083 76360251 981893951 716354241 324783678 434256978 15883074 231583665 687421124 118328310 83835742 460585133 183233725 60599702 846293067 432918375 171412660 184422802 691239442 406346675 458025185 297183849 120231510 24768904 382339122 890236829 832626958 599578322 356609195 792099066 451385328 288255957 183109267 596471101 290129325 58228859 824508220 238675279 69977776 624272353 913214735 83488077 911043118 939598157 963967986 481943420 276663445 580088340 639633777 400107657 324172111 214494562 542561410 866818702 573193940 913942064 701356629 915486189 155820786 835876520 751493186 675626005 87539085 136954417 778446756 684482652 107597148 889638809 773427016 333869370 723968105 867001290 722517032 826957467 322315485 996366519 940175503 51418205 381544129 417106174 548650336 348376941 339261367 543321488 193973091 778389432 696171902 530100049 604351285 551783729 169161491 722491232 439591693 693870749 95018611 907305331 918172462 932252554 393348212 944105418 510717632 502859619 715714910 951718486 400040558 756103924 198667219 780307636 358814421 489514687 589533355 33872670 527359122 223390237 990090257 768173682 702734250 578024040 957134675 919652281 623457396 285728641 445065206 325684424 862212496 751275057 605020132 546175866 878102061 509736059 139864983 567405526 274201415 171820797 992902216 183185200 519094823 819017228 349504851 122840596 806842385 202131347 119447391 145393423 853684504 716785419 895958903 29612574 414770431 616618201 507908486 996358791 70441208 339237477 968702365 17752403 889733201 37747789 492925139 687534219 637169668 10051167 516839728 941282033 54557271 500006291 39359023 730526144 69727087 675704224 209563224 658852463 954870907 745974747 789292586 365069822 523558581 259456965 466894956 465312514 489514687 148238930 535237295 703005393 265641244 120373505 528341109 966570309 263825158 703169187 122897849 992095056 699736852 415822865 417065776 216382725 482193579 146695416 378312758 595391650 425076333 220350960 759771220 154925778 661157507 806764157 176186384 200659893 157255278 646928543 889669553 152370831 520501700 186793558 774210119 799621551 948544806 749703742 817887290 287181416 747705887 536700974 676410558 35122314 1622619 400026226 798949042 176865176 158502054 825877115 439980302 212152718 987716334 185926611 517909324 566397084 458056901 279848562 319311632 991361712 329965099 333784207 608738967 178292647 991481005 491125446 487057863 54422977 936878889 469526834 978304744 854856257 3022948 431129441 224952024 631353599 269165262 436392052 393142366 70685677 296018211 706970683 427384998 735568414 518873173 810797853 883618594 971196596 869500303 903672648 634575631 329322 869116225 228204064 32255360 92229595 152857605 209374864 425634539 963164487 228922432 189555870 535572272 791410663 219815764 359657529 128507086 197533741 596477239 774663857 986752033 632019295 52481378 645372093 958652825 435780664 93282354 564445047 852423973 417304717 620108559 990339007 325993576 413930929 782605070 848924238 690830407 782928747 867792008 18653343 886213501 757443864 828509064 56134052 960734278 180657892 72430927 188527731 229264080 502833217 191519572 777156526 188170215 912203623 266991961 869337440 26989611 228765505 305886307 320860938 3022948 639902680 361177625 16109983 255359184 559197942 847002507 299410407 929518896 189109771 256162680 890214293 117004790 24155377 788492690 787558008 907146072 49114010 939948201 241559084 299973385 681024839 712333599 751730522 179686569 865962704 316484628 630795960 750210488 190700089 688641228 698041761 12452987 907629424 565562314 483499602 182330462 144028759 262583957 229971299 690794481 749977641 407904927 58596974 745984566 516982076 804956044 682839121 980847260 697350819 78808539 763432012 340535916 630733405 340424940 860193281 860586674 636236351 295320975 713562318 391550981 659253745 684237525 261288786 332706826 151189447 592553135 391242349 760603743 712774368 32250026 114602634 490516030 336181207 608235941 202500406 431393149 318142560 942677837 488226614 42392127 136954417 466780403 591579076 470167482 925607776 92972859 850556220 889326573 850782404 456538790 963361039 450857246 423829764 435938645 45247142 995553746 649792152 266964344 798569729 988149858 945706980 733776749 270103362 344023376 49730386 59723183 13218410 740810886 47081724 177076197 801226005 286695158 650531406 669624172 185970641 597934226 150069769 501521880 982003868 110378152 857726693 540818402 167071151 160012840 427761618 60142313 587030483 786944 939969098 805210613 22711592 353841864 692886624 502771563 5903848 334314230 798740164 214824016 249690765 497951463 523738481 11392 773999535 837273720 652720174 890486870 795091639 542805732 952704470 238554160 188632222 304741455 121025430 494939394 935004942 355429622 58427823 636730764 143919150 813708641 729482777 305510867 956289074 972445173 432944579 137318483 151006840 20970514 987113175 402739330 712076864 537767014 30017952 87878705 535672722 97056786 809498628 556832785 747126493 376425720 72969801 648289657 12121270 363372588 633337201 637221387 215769668 650188770 497949455 490010093 822040502 407408183 775694038 888626236 626783983 410893056 965598696 410310950 247036245 805330551 85751793 218828683 118518115 690181633 773162717 250223346 662189964 825020769 243807092 458371098 272148594 61066329 56212270 214703068 323624794 894785519 435196219 639573620 865962704 698268685 757435248 825020988 696851012 996395332 772097025 659292 143439578 684336534 415731042 907429321 57174140 60453077 574711186 848744104 10692024 859326919 446651265 895045101 339279980 112307703 487713624 574676750 646077234 183319984 715580740 139116917 118635217 374683827 930315036 869655369 8621479 757735252 117373349 797576861 346188534 510054124 357531067 103909180 616681707 770854324 945545251 919594517 165311719 13535679 317032453 15739211 237283115 125888279 32798322 88186403 832550899 863748436 772097025 61373452 909563769 770109168 175085426 57420505 513202620 482142536 678365176 543513984 608898280 211980526 229372781 468342553 18246632 728003543 481469586 377222987 733349051 927405185 421565177 627294876 544979554 531843650 909520714 853378234 10942017 574343499 113252092 856780740 83921124 11392 251066783 700710863 168882246 441472228 873228099 143397193 332014672 116531800 394571373 985265037 176822520 782319815 881190192 397868357 640185100 725078169 906576610 500606292 679564370 303730767 189591093 36241837 254539793 362221536 602111382 940411728 178462519 339093984 227325820 139326286 674407825 855263395 494816016 936561735 144833651 130960466 602523854 554292087 823551769 261797347 990229377 922551526 658520845 695876459 453180552 138228985 125602986 638859274 482659616 505689512 657453151 501474925 594234722 565358713 819160752 784066768 96168663 595699078 350378046 644707339 164999803 601654958 5626861 251565804 66643676 985939344 360351174 708776787 9493864 161776996 632019295 100188348 458087564 204445335 473616453 833475766 379435233 753516477 888941889 939099390 499587102 461878806 967078000 446979211 363307406 174701707 323426002 620974031 495193136 152409809 473348340 694952796 893572904 671248921 988761023 844187802 416601266 104760959 452405093 972773828 412297276 890121112 617224060 424600147 911805242 890167432 805340497 543002787 445729750 532291130 831356138 259972148 773570320 616485980 81237452 990979687 752952562 516722 980917135 942561183 274011052 804722761 940000681 359573403 688552385 980448272 385203436 357123999 387109773 661235107 315374987 4817697 720502260 137922317 897069927 160414001 745082599 511607078 731672636 364738942 921889591 370936366 100110846 493692504 602174860 844377807 866907189 344409135 986191366 418446527 233274574 419552197 75409649 305368626 3844365 342079515 283178083 748648462 505830396 640979076 239644189 914001959 188375957 587515129 168663126 861525031 840192 175399251 676276229 581090477 896653826 465528529 31260306 939609013 197533741 54495109 552875134 489178228 599755341 189388531 291527379 157982306 428048174 548942242 583633958 860130935 855749870 247342146 140775600 952704470 842028295 133131933 428305409 708507486 876590230 838656755 124601478 779658637 28150659 121420286 37571406 506376215 48912169 985740106 109184952 581718692 28575154 832962813 173710954 46549359 326586187 123627196 193968484 837075975 594471016 438160246 500383538 47795317 795927607 219770157 847061162 538487886 195182595 36220632 540985872 117928171 426826971 500639165 730706376 393157200 817657863 263332755 650208486 566779788 31769520 187101837 741444932 674713387 708291044 978566437 216105451 601811961 686181262 218335334 462375129 541903257 192753510 58097521 373012621 38615336 761274564 854927928 279477903 147424748 814082932 799135796 209168204 401711301 335098292 846442624 754482683 9236676 567646380 436562815 902766944 711157477 227149946 213188524 633318430 58817695 194339497 920840262 5883795 945071172 499234277 286016355 280265261 803490117 664057825 13127627 184775073 176401563 136279445 423954388 292732616 759282721 557513928 454644899 256691857 497604389 745869869 552402447 616313256 246078257 998975527 916069873 647427684 531277308 607378754 461788002 604908914 634694100 825065374 890649782 199688773 689354483 276966618 366240413 281277006 175610045 413886327 375741959 667063420 896145935 963628851 737833027 752834545 847410518 952280853 372146775 868161925 143489920 298484953 843086310 472913984 200124825 409864654 290872432 26810195 696269478 86134147 24901888 493674699 923588422 397614793 55058013 809991750 507258332 594108388 819739099 200942364 358956844 203359683 288527890 882971763 537040294 526125688 699934400 502859619 408221890 115585476 649695482 798199217 313351353 292866701 583416585 916225196 626917550 48931856 988804405 677322613 861468211 742454934 450547878 387532529 937706446 861747148 904340542 969108723 494472901 571937191 78701927 536424041 722906684 472793841 771986895 447310226 383986357 771793304 761371058 70363013 409706415 636592997 443767825 985360449 542846082 176637494 640117008 690612277 174275181 518470343 153853418 790058095 499066453 965040007 48913613 515228185 869216262 56647531 86455247 148646314 995434152 853603718 239076294 170484700 758638842 803679435 161504708 350450104 786860294 799105239 40267326 760013879 416052665 921516008 705701395 853032139 20309391 743887985 957353653 346259452 405596238 406632630 179229797 75409842 291810793 549709514 548281638 907909393 798977323 494805947 136116291 502773379 256673245 316775190 814693277 389823101 507917642 204111137 780777248 985163058 12452987 945922678 222585756 775660455 894653145 969348953 622204732 215976875 812364231 452747389 511658051 737595569 640212101 329234858 788392965 803696489 472988173 354097001 188740264 902786887 427409272 633569613 924137733 506776400 954874926 4464055 273381628 877330532 824820398 942675285 58399333 68892824 706505136 627062397 473546401 317848956 462967700 889721058 517430804 266834760 701529327 885882198 455303702 795849893 82042285 176565576 559427613 537414073 3640153 318020294 159437479 73780535 456274787 151302625 454010454 304204025 540017046 919204087 809612692 847196089 443182925 623099482 730914530 424109607 822026013 432631952 852258259 963069258 520983698 484886371 457355410 624249721 967553506 369898740 444963492 367925411 233191168 52953995 712551358 36793498 441943797 36196173 402390223 789964045 236831753 974152158 756650015 77004545 420858399 639370340 271489117 256698214 619915326 488262543 522894641 245127151 299357153 652214193 225799125 249672167 463711510 801114515 736377303 66998768 24325599 488858487 213880265 165079154 755241612 631353599 986119371 614424311 26974249 462949943 67607649 344294254 82652237 351294480 512882249 429277544 341778502 960226874 443419855 817528044 340054947 831330197 728938161 940774928 967058111 143303631 940176335 258326024 564445047 496405122 184422802 389058868 350792373 473068257 553773728 186213188 12153169 937870352 526985946 785530693 937075108 510273616 33242699 709531265 135278469 627439263 903825815 1240576 460375672 930482189 270679002 246725942 938367610 455175556 714489066 172145308 420917476 540840742 479779991 538294950 193232617 114256968 920305883 370324121 106013654 886561025 191922021 622087499 903095812 888423358 536085114 880970436 504947368 172858566 683213095 513801084 148195039 290081459 490806509 650333685 923916623 458016086 572228084 724118295 739285180 943079036 705813936 271157229 860961130 616965895 9624009 704298776 843064517 961233237 402177888 832768043 505423064 9012325 743377415 880439976 661255322 873191215 288117170 821541541 408464853 981377595 622927473 274250779 419842852 132015191 204879604 403313438 687574781 409558878 627294876 835670755 957622366 670779083 297423358 399448813 747509607 760938291 133096339 865609425 280521650 556372692 688039686 334143840 614973176 56816794 990637895 830254783 674046597 671721383 576575800 938305387 530741660 631136045 784901478 915738333 227102044 791990680 383758390 320213305 635164181 356856731 927405185 718955157 225068491 310201138 355795015 453434921 582623030 483492609 116501048 194029298 20415424 474685074 31491329 987740783 522658372 693775134 980266196 861045904 528631048 205616776 424600147 72607178 11057796 364788896 259031708 409703093 619750282 838009451 486701016 21971883 882345891 30437247 498830182 759149753 240317715 553330744 432415334 127037033 13025313 491777259 268639841 909967527 207485146 53477356 765675598 516524126 653678952 798949042 356199298 146943451 563697902 906857325 625984370 246578950 641309700 559007409 392896456 726691495 119260690 596323774 810033001 23385878 607112374 144776594 34169213 12945851 248303883 55882290 95614479 566772691 454267778 149657219 436091919 569112641 346164856 735761986 133423885 586390355 624873053 92559949 48074375 548195958 214144420 394907700 363470092 881813290 870067725 582047700 85453334 307443453 214903157 801390473 471934026 869650030 549816277 619361199 916365330 427505156 527713015 120886003 990024866 177611334 692482842 758738185 997750166 726299583 423904111 244111645 190091236 865454573 1174098 940112979 114694518 324570968 745354730 456155221 850572080 776317177 77822976 227433924 461302921 80946829 540476647 588338090 793543054 169176090 817178261 483667688 628492689 862807438 457369123 537919664 288726734 933754086 331003735 484612165 774855068 212863908 866429709 580102343 741098178 944779031 816108956 186733810 541944871 706492066 205485081 733310667 847888588 525120749 776030606 751019136 904138410 894164251 425844644 985444122 933218382 525503184 647194665 889493149 944704728 5344730 383987367 31234699 779658637 703206466 861839695 598802039 210074838 394374921 24026851 134432457 280952287 253846959 494114954 32020970 922401629 291221432 800482869 122014222 487490360 967513120 511781215 617197610 785567224 719926625 247435353 609971716 812418267 648238162 663906098 819982723 390740140 149087484 284722456 549717400 839465883 583416585 929098567 309121215 372780675 9184389 325427152 198622979 326407020 33242699 580255210 178703182 426614499 399093722 539722477 776436844 639723504 448662072 477025933 313617525 718059391 579511603 205135271 14248371 764036884 598741463 551798282 265879163 219155203 907562999 887756346 920384539 5802801 871534880 982122995 499803215 34777480 36627234 84187494 978119214 651756269 51116061 25488888 406144565 453417166 930440569 864835857 507951182 612428785 861798816 972267976 420398172 235176172 788956986 871534880 136369338 412926635 511969749 555161464 469814872 654955616 261572818 859776171 961793956 393905825 471507323 727950854 315574923 657063211 859588079 963357085 294899588 932654714 674591831 281399821 400872657 817522189 65902205 838416273 146771574 915131869 4114939 865304134 504878376 255841500 337050587 916634626 548852676 872920015 116996725 314034839 351760047 489806462 705232073 4043272 145310412 229630556 570430846 819507048 553606491 28302727 807652142 186959025 957675806 569180252 798314742 867766999 438540227 26265768 811836214 919039897 337688786 672377087 756322117 129910059 597486558 50074486 585513582 327738178 927097352 282414472 243385291 161809462 604507064 449287999 915738333 120484172 959687256 159621679 213840088 257503020 332200424 581737890 13905732 255909656 118583646 704466226 51055828 194293903 700566400 931729869 285359794 677294296 681704281 557369935 823790976 648796590 35497290 462891404 831230098 398926413 736275656 662737254 89740717 223043375 54449356 868571729 355522770 865621749 536909155 338692771 127079436 471724616 86609484 489510296 825237627 189649649 66181904 690462732 483871730 653679069 929838400 158225049 57762911 987447083 415809821 592831140 817758108 456600978 375061458 870004699 254617479 149758876 146582136 609644147 702233841 994793253 686972163 152924851 134983245 897342420 853928359 771028230 60900736 125452269 454108450 363506441 660049761 212398343 87663664 59751587 660365689 932103161 631999468 766278130 473490149 219200728 727106894 819918735 155840988 234891074 305367443 820434520 302532228 180325063 824483861 287502841 488652018 450142857 936227838 349975229 168032005 766858930 761936031 45572957 287026042 488058691 405582539 513022222 583225959 747431816 791791051 213819732 926112288 652751140 3594817 591184025 554932511 636461746 652119148 26022027 876936896 972322400 388010767 41158188 859071557 85389553 550185335 981782515 41204965 986970387 2448084 511141053 403665306 403953829 317809770 966896264 315817915 679384558 499926520 819428033 102984225 866543048 319588356 31510175 935781411 728001954 899244552 486801413 342359937 453101497 643136335 637833160 60274796 31267691 417759312 500083446 154327129 709995608 490681963 394354625 847363854 569697235 196072108 905531603 68836686 493370109 438368077 205845951 356817460 53699844 337698183 951997632 690935732 436421321 240057295 369195654 311309462 38522 315935847 845556013 227221062 601363919 497105192 954332710 646144905 552458330 452081931 714071806 279017910 944682820 798192526 860206187 466488404 668692699 756817657 149503844 717196373 919603821 865747153 697350819 514371419 145499198 290250308 660967745 983683374 372160479 295170142 413664798 600036448 888678879 643223846 369293025 82007130 972947107 324568793 612792059 772033018 986898485 634952800 917303931 560389025 761983564 616485980 961737857 48075591 974002493 225133297 91578296 10506242 54337589 776317177 747655319 237283123 686397817 778971748 518180513 184833152 832325796 6450627 289665954 692911657 89124664 259920699 959267036 165341381 1655885 305309476 395124216 618822553 507993724 734443502 374364472 816091834 42686713 588867951 300563992 884806596 79725325 741686840 776042826 958389337 511476613 465515499 198862005 33577604 725013785 541142096 897406844 336324820 974534789 333377449 759866527 726830776 774924814 590584615 809942114 177611378 493158466 576047877 196072108 751664668 579149317 303794978 535243854 537070402 655785615 78423355 720646590 186987458 927223383 357113511 45951819 111822964 739950993 392853101 395261940 254086007 690462732 711755540 524949500 197779297 232468400 549357254 854862562 265614954 370087885 348789840 902406649 400138325 429043220 582801675 768354900 526958122 237321869 113397470 730489927 102482361 136731121 964834236 863557273 755786366 16101626 864508615 877475730 920363033 761915695 668027913 925520637 309722299 470752028 831230098 75409649 601903216 856077168 130202120 660147189 28640965 765256626 383253353 973784447 407820655 799352680 212299757 716805417 556372200 655101086 389267621 862427688 378404934 245061181 755464985 51968918 840429815 991625974 161554193 642901634 102192883 598774203 458194097 876498759 568563333 157012410 948175486 43201236 797395966 788030898 184362092 432212863 696933448 941019154 255875861 819153311 459782926 285005668 807781684 627815311 64975344 712530525 88598387 972157488 692223678 957822470 322334196 449531528 518431595 172374205 215694600 151994779 573445788 671882211 686544143 5802801 627273346 203602279 976135245 813620563 820213541 690344954 639285012 974349181 387104676 920920413 172424383 26378138 681336138 935295412 297494030 71294801 385147540 53610462 972525448 473216109 366587571 570701559 905777201 63269004 62190859 199774486 558974202 985067009 950695515 971681296 152834543 80506110 368538055 181280616 270988322 699072028 687381159 534379012 479281896 86181077 288192191 709617649 908565932 135428517 831166299 115800807 505202754 742714772 332680730 498967671 489903082 863947628 858467215 312174764 836935873 595356246 372185684 712268235 561853415 543235617 708790935 780316799 408725039 862476736 185579004 691536941 692692046 223175489 531713984 226260213 104837490 41599400 655411622 708280315 155147941 818972645 667427411 555183156 377657819 503156876 260312503 875589391 870719364 412318031 839457087 399949392 339937284 68637886 288783532 797064188 467675540 678343586 473080557 206420217 16554528 404809884 702188464 221929172 339497816 339885941 918026332 82491383 541018477 615557125 483072989 371515258 475477665 872291911 956767696 957680639 365764499 745011299 934811230 783249384 572970022 951620096 925504200 704587785 216423167 773145774 447327111 574758512 452631760 788460347 469823568 617262922 430865356 881901851 675446221 766630572 824073123 519829070 274011052 451510684 649141027 647381985 342553764 936006907 118936295 123797520 15194525 242614811 742290080 902912548 417924711 865004507 408750239 378382676 329073771 456319836 894642320 503768984 91783963 61643547 698152893 928640375 240533988 121586205 861190623 47137057 737191872 588900789 678627107 608974644 232495048 725957593 599529058 843924354 532415413 210434414 642536765 53343480 395666575 426078620 804022115 90680419 949618057 108844607 698947162 227049998 254778287 198529504 651367948 448308432 706171366 653124089 971475830 131375455 871115931 81669944 752743102 369485920 969758776 365851031 239305389 828550538 622512041 783238226 614292947 831220761 399499400 918052345 874057398 451148989 659589239 337126574 231954802 675852763 840938291 876883538 481737708 76314816 37230811 225092235 319021342 357778666 528912440 878673219 323590576 633650892 906839919 725000863 255443351 738219200 663760230 716111468 72420668 581393791 207182806 909975180 412669520 37474703 698402025 927605816 800749016 819171641 513389563 806049639 352424384 667990516 911906638 766691065 434212956 330022299 871515599 240057295 102946774 191885308 450857246 281821739 583535158 47388952 304741455 582959982 742369800 334633497 592439530 953406448 500328342 533556971 688268265 621852625 896503220 10594355 763825035 516917534 381413836 764742208 959163100 379491080 192220645 82697726 51737793 121573356 762356533 515732002 359041690 917284977 144507610 944795634 530577030 84714848 583770924 325510374 519811792 357561855 778784769 381109070 609662935 63196468 821656343 271121370 501637713 261544188 706140023 627736016 350254104 294095088 525885754 508649964 677438225 803458051 122059367 427979275 878684616 435571283 774440922 989027623 947003184 571891075 60782610 979957425 865782027 992213848 943982055 327894048 292334542 768518484 28349329 655954479 362532311 21594805 40877070 363644973 586963562 533504474 525298713 685499160 574655174 15795803 756331542 23139332 620179028 941404876 566386381 304521770 888310820 737164319 511958008 344701949 70763815 648595325 241793799 603259219 104170160 610107705 658273183 549573545 38213491 219488540 415024726 755981841 441323055 820956210 759818312 790563214 413195847 320465719 897342420 4612274 404297753 533761504 779660501 93828353 616048705 407820655 9452286 588300086 961599182 64519240 908869087 473072422 569271706 846726289 427845072 598387740 869742580 90911083 380977482 970227851 267025278 501329246 855441860 923774377 486461657 279116724 167255917 860763694 444420191 825518507 78355996 746118706 949273279 170296641 13271442 798903212 52697134 358862210 749119214 142820493 584269916 387020334 353025311 779031528 874435168 2991864 260123067 891390237 79279001 297931188 273229538 620594481 760171327 254635292 587928214 2483272 627562240 623303436 999885286 645240884 700882576 808474866 565383522 251671957 775767001 599607759 650924099 424627047 243900794 299690570 834404722 890002032 419572123 462264492 696990863 704877206 285728641 207657960 632706774 186715108 786327238 947053607 942830498 732201366 429653135 801053356 637737073 409439162 776748223 44927970 948190339 316507028 345327646 198446337 635361373 753296790 91508886 366358354 486924489 338931095 581566118 719541136 205857876 576935950 519182109 643343249 770929061 208690746 47088300 669856668 914107080 635655377 72554086 656752093 611792059 17763725 742748771 253518178 981431988 406796930 333291190 101698411 871830352 939329422 293979374 488077782 837513010 599749205 745521963 960097059 363940913 79989606 988638792 301221644 381857148 470132277 844089518 641514524 757983964 210448052 597800291 401355608 992948948 458154657 944946958 165642166 813097383 215828308 824656225 797021586 816260103 277328818 873767148 964592973 117116355 683076349 653021493 247216138 142556602 737981096 432415566 751962220 288214097 583762328 132578636 984836646 537010775 691706179 944293547 831965850 372531621 499391707 311843953 686632791 602003511 110588040 213785828 511616512 176170771 884830921 985028196 577403619 705564948 534543539 613865804 693318142 532890467 277680833 136395951 208218610 323376461 493363639 235021998 831782961 604716283 976694759 661180531 758727679 604409971 345919636 989736941 162111448 69099916 931401979 810624258 275258903 891749506 906350729 337041837 656549876 544895534 753981291 265792820 999372299 26407619 72578873 585774444 704076655 523067250 436525284 125403794 770461954 971056304 469592410 115871936 247940359 884513211 218955174 876940611 979822577 503369365 897116406 707287955 658054629 626925662 105858303 521752417 501203499 618355188 809312355 17032958 954263239 928169398 331685298 914349477 77055719 868887040 829958681 957569869 679023057 754759302 6986247 736716956 577649672 749842227 224686044 94127396 223524864 226556603 543273580 902518654 519664266 705273980 515547198 718786503 113974176 246322090 292712717 558131625 465309602 8998786 958386675 505492995 793919265 391718967 111858194 145752162 43565392 191519572 481556555 674860812 353866685 573934254 213077555 924026123 646416044 904900167 448653596 687144040 86195922 63678218 784091167 691347010 882197581 817743145 571084123 897932714 466069504 667383144 954799042 330414410 467594501 244709006 827349420 248995858 523926 55354572 829404309 295715520 978304744 511407694 436737140 165855899 280291307 280629212 617303927 598783457 318656904 102296062 654467742 718648614 316066758 141300119 429653135 428033368 159553471 798460980 304532018 958203426 605354913 704183614 690330394 934096670 515161080 15240478 413400304 760320395 498575639 973947503 660782143 978851345 761035783 955502338 101822935 528092533 658341637 214720293 86014730 13532455 390162833 765324064 390776865 467656211 642328397 953624448 687760118 984000807 824820398 662293932 986654849 116495330 403897344 659608597 867355615 570627978 27391512 355629198 360230912 33333538 725683452 793885033 443583056 787654662 601951437 893302939 946509135 421471079 609386934 350307042 489188614 765784795 352680183 740020155 67906620 888609100 566831310 37193672 809051042 621076980 440684430 62648956 938814030 224952024 171206066 194317242 849280576 493968774 707792972 58474711 778657361 230081685 824427769 502401722 276071974 80393342 780110968 709792178 979449487 102476479 295351681 664905089 712834171 711209332 396016423 635895177 154075504 842143158 953501819 254675150 6908694 122347916 742337484 778344698 901228289 755706640 938363365 809488375 152701993 306147018 289625216 557920546 434126975 786817845 763023552 305539377 389219681 115454852 977863983 589412260 280906711 891610870 341186153 893070501 499666211 772993926 950786411 371276574 643663876 171518576 667150451 469890467 152255740 773138995 396376841 591991767 300178731 680495009 12403901 839738403 936538030 368923618 126970030 147720031 288134202 584942160 501042458 413144297 234181296 758710870 20276611 430353368 671850182 919654281 67239620 415376018 517306876 476755726 701444545 995322507 524509604 701884074 328149130 440558330 427366245 219117499 780518815 4177509 528344270 325486069 228558120 937559348 239039660 134839348 645240563 609118882 102516302 286825354 917323989 768321760 525478555 739295616 581265086 509190 857439147 261184738 853351712 435813083 441339215 644629354 762234447 200099504 447936740 300693430 375897744 563125124 547471158 898210017 827764901 127202375 286384165 690597622 163468801 863317651 16292452 304404626 351500256 616312735 283362520 547788353 156780146 601293750 747574388 516403989 551191758 5877285 609774692 406193579 677786048 770834370 503689554 411620916 329881608 47648773 280946733 535788403 981377595 958503846 261841966 620527328 253892976 992001752 500083446 711263137 868269185 269663157 483059484 561957717 835481152 957863330 311771396 954886642 181766095 504479261 170420780 553153969 907790986 303778748 62394267 183288181 166132588 40751179 261797347 724334698 569984276 401494146 56425567 893752532 499666211 194113531 735226904 696625280 526352557 519526664 782440097 669600080 754984900 652947249 843719978 447513502 270267685 854903661 157774653 628616889 834405090 266210991 996672911 76896679 469164860 707951947 913470520 824482244 214923355 15425698 160520839 9146656 842889767 768260651 832301393 260359908 15606842 55120559 492901479 388827629 770158630 501458681 273529831 290942868 707772171 643223846 337261799 804843326 933599345 325879597 191599581 121887860 819160752 48204530 63188384 801597029 546219864 38281360 808181830 1835750 472243329 405528759 503317951 753250194 627734285 304532018 79103764 620598653 767368840 459206643 671506437 65980792 861190623 862432238 171383267 498855113 687182902 487991396 770244598 949933687 616965895 795095966 535581009 715533481 11886251 16554528 280075583 477698596 710881178 194559100 357681754 425242488 662956484 228812888 615648307 839329290 379043276 386106084 457796267 468247561 153730202 996177046 943431253 768240796 897845232 192983700 446569082 99163215 757643796 785497847 782493967 725444556 194862201 703976108 311843953 562744743 584255157 780796930 762333575 753904370 591648972 300646100 883396749 698581244 236866208 402405099 779660501 311435339 395449214 850495497 11181949 47588698 608185174 879153996 134455034 336541197 127152462 119489360 318091317 985841055 398165446 807367353 112476439 588277244 139008295 25335855 974573706 160250957 140321573 236831753 876540535 503392938 903806361 207272298 233534144 949590532 172060593 986259049 103835076 430706901 883714484 816375397 565246656 74893823 615497982 845327457 226532408 373103417 669926707 148044796 923567003 530050734 393540898 750454664 812125415 614717393 204794932 323034805 75912833 996110192 428020941 825364882 170310608 84011625 715150739 91644786 273113270 290007869 501256424 381001871 265128892 38034015 437358191 699799367 302564740 15907007 673232546 766521465 761824380 923725685 105731991 96813746 86730909 397735770 876086971 621526148 206721522 726551038 499574284 503331953 258564920 427005548 61982847 867193997 252613664 677976940 79962239 70088690 227771465 915288369 414708412 730206424 782363219 840938291 557306737 193146843 528860760 938627411 897423446 30887279 510232027 662189964 100135085 861217720 448558546 340864904 720628002 685593919 476236966 647078952 903815135 904992886 466571094 822864550 795777394 402848004 255371271 489759067 543349517 122429916 607371841 318512527 284262216 221989794 50448965 589911937 647887649 638529405 592573376 27221339 916752822 972525448 97333401 171690850 876281295 772264605 172017000 929838400 661432199 810254158 211117636 239925507 26015185 741112063 410192407 31753366 484323956 39719873 912891043 996260605 207318784 195228163 266404428 319569366 187653682 570153264 326648535 320853359 282132180 518799935 118281709 380569430 156761198 557513133 754901037 678781923 466905659 584730412 247165077 962799478 610143301 115291292 983883443 521364614 604038326 817637041 792527404 305887662 384708583 293413000 263494668 707899312 318142560 278512223 942190269 361057370 546687537 158562645 594416766 424401189 284041973 98857707 989491772 122455292 894279195 427708060 267640754 676080498 373944120 128384948 644357889 991293550 155204959 8042732 738423541 103743708 802673111 249727680 237953594 358862210 975793297 307902486 95531707 550346709 690556464 137965677 28715443 599935222 565757495 525435674 887254159 836461801 564086464 333234563 331418653 870713915 253187670 616357355 685486848 804839244 283171016 379859039 142871866 969147065 803044720 813066773 937358582 498010773 318020294 245888796 525181305 732612668 234887420 187013052 624481399 614765663 316982692 159745327 952250287 85416836 332688450 219782508 397631536 274827846 593542477 426548879 297867609 844675741 318913761 538437359 515547198 114147659 47783547 973714660 13535679 742615337 989191108 156761198 789975428 579744303 254357239 397544836 945619423 108003155 5784019 661167076 407741320 459099106 515137687 26074276 811477315 494328446 625634797 442420945 476984961 259099809 146618855 546305792 921673554 757989975 974280692 325927900 339215570 192788129 719383067 721125756 947202183 896859539 570253631 454267778 711351364 668393920 620975845 874486343 698470480 776740052 149809719 567790844 209627009 856548579 778929699 511373788 946275138 15319281 600286464 503123108 232495048 270214663 787739340 795624703 877977860 820817100 67499617 759061562 729521691 95719110 736372640 787684704 858246635 652834107 68971223 713842807 252769971 331305642 203995494 633836845 315693001 565037165 381998197 156969082 19540973 359407238 634256667 809051042 723386090 296018211 405332098 309442968 475937871 764098945 345494703 217061895 561233476 53512432 180667848 474592468 982307439 49518651 86316314 331179049 239176611 818284195 700973896 407421715 787813443 697143681 421865050 64805554 627280060 971853328 829620983 43108055 140320451 365599693 168882246 663074906 454352313 623211542 279534158 366641261 835242992 619200087 280508884 241526605 729284959 866907189 267551801 629271462 962025006 271180020 65062530 116672160 57132373 153517035 271290363 369346472 430604094 806326626 870379258 307866948 992189770 339215570 373194206 82327101 372448428 306860443 965188003 5213697 913268815 21787717 993753309 551054220 613312618 957309205 728292905 582995132 214676848 788693915 338542284 322925519 495279473 4632946 287545836 19886712 152270564 979911006 878490479 16256807 283578870 823003308 38646783 297563074 277871191 698910671 773948397 684696909 40531759 122849360 694689914 289612133 315840442 689133456 421704956 572181552 799707521 54526121 914556630 908755866 400103770 974152158 273045395 262445765 435143339 175811333 367751944 66510579 51881711 133886912 324568793 479955353 903806361 716785419 601306676 551078057 640019197 665121109 571439072 613192240 568029336 361932845 34981282 677636195 358434213 633230847 403938792 684596245 889493149 657766291 249912371 745765732 977158631 491130892 124435762 377257164 352569972 559768729 64338302 800859361 494370798 349592689 970652114 152913488 871834731 117128938 620855025 556024248 390571083 527936942 407864496 126345588 930205821 922240526 171301329 63363833 923533037 755445281 834555555 767463121 569978432 623678787 434003176 31262737 973752814 850521180 305959409 526958122 310734309 602859906 277318 235127459 904983729 987352841 530546135 514774380 959208245 455494086 372454499 118086633 765371403 135623510 540653433 338830582 699688 598758166 736799987 351728910 950072227 967942914 113659216 960082883 990115162 375398992 80577913 354566009 628377476 742563772 222863257 470430562 206115745 989227796 309558803 214513882 738304127 876552061 821217853 866609338 571003275 495654810 149208522 147954964 684599750 994729377 358356571 625781176 971944683 44319222 528868347 563074327 315179064 336231122 938743664 456571844 513562011 122344762 427999236 404294366 410954731 175823933 761061569 440403286 59723183 967188236 928073558 557366771 425970959 234836352 926802285 362258422 968985925 124842804 107502212 623401029 631114896 357508618 890200840 998745315 905027611 530989181 939152751 523168587 925797103 412943732 259673446 122627212 752283820 661317755 547932591 908922210 776246565 815302867 968548415 672002725 289157211 777165175 695982577 75683123 321324302 826990668 424217044 285859207 572107747 932562226 151235303 939834134 425076333 905454573 171559294 32100166 717129985 269532591 393059119 148148749 869876217 576669313 571585567 67153394 983876908 167751062 220551660 250223346 547497830 944471662 900077739 711168200 391081116 508921140 10137202 974617468 762258640 838909645 972489868 824855049 106519378 675455402 791484080 270538746 173962899 229511829 940887731 908497275 777841565 613978671 560317340 427006670 785377996 166539980 818019018 746363555 700417305 964548037 543917752 833401245 329659300 352433026 432838030 861171250 790870751 377559640 695830496 118454929 735002437 319572477 769042870 965340002 309366920 298105359 890690066 706985261 654775775 438204543 174149213 867310342 872269097 291357408 264186701 257493412 190857706 667415025 885579965 944224730 691400031 105029910 401396769 97220960 280249504 646642576 35062031 574542926 238298659 175399251 583410318 630600046 421304751 536456323 718147288 434277517 559049822 318656904 686088695 361971885 124577494 386564467 150854494 75190736 154899289 74664475 932876320 700382960 692223678 616701769 844432655 444553048 60757730 98293073 547267984 658638365 344409135 708314416 866038580 957792532 235158674 541178289 867674833 389716138 112743415 496762644 671916582 265631614 888972299 742558508 188328123 948963357 219640386 688296720 953110959 23263315 191668788 457915538 639049773 753367621 443220023 675608028 714877356 406174822 971046172 162406864 472399140 421602283 523465830 531312567 25523421 845304912 156910557 519914395 213099261 541334796 202499618 488399229 518443670 100581923 580847085 751491882 128938172 785567224 582084019 665087365 258266975 716259541 363307406 185246332 452777514 688847403 889275464 868097315 781529061 296883483 762200817 588277244 226956808 892915065 521366072 194547229 335959627 760066865 152270564 313910639 744441930 879944555 392463653 432414092 598548622 47313703 49585008 575958192 688784260 884744332 782185211 228345987 164445326 581544818 963785753 540847960 322971536 72374656 751278489 683829173 782976016 127314229 668004423 92230457 432135902 890695376 733206637 540126857 166270558 988860396 200515964 294110248 164955972 363780835 406588378 514371499 23549193 391591252 421531643 177340024 51969978 854303237 612783060 186048892 203866567 82636928 808275512 945274788 780729217 71518512 924426649 569458414 156528009 136323870 141339907 279110243 626214760 896145935 131329993 170175270 141793893 983120301 101579014 109179530 682360207 640983163 475599062 413282713 259785841 84031902 294342463 775040496 73485056 931166114 103456609 17307235 695353804 566329890 581118415 111559404 262579545 978399944 230511784 587355739 879118220 724217184 752281282 99955036 134487583 260963408 249905700 343872072 24419403 864624936 344262817 369340503 439674513 666403978 919979441 422209504 723700960 555311988 500582365 802884180 160820772 788645388 460402905 105757711 73354636 948676373 311935334 862086078 960796169 604961452 87065256 580991674 61632665 639788926 806768050 174231962 285859207 8953558 714169758 294775199 605230184 174150274 578623143 668430046 381511948 320848358 153341755 508170233 51957125 777297008 797390029 448747237 222221797 800810620 593202860 811597423 571766708 716212265 853022444 642507033 675807210 530673537 525759299 995198800 806210115 448016517 557087827 520069882 285247306 731679339 421740319 778875734 417957724 832240275 474737201 687357814 365932448 137823 917096296 359765968 40974278 681598126 350288319 478267758 472313744 118731780 668422953 919315543 67607649 419131209 492593273 259368897 328531635 296382394 28546242 340205480 664511012 853747548 20787270 322180091 961883559 751019136 144507610 192043498 910356170 408862562 318713184 247528148 113749795 83131423 854312436 836049084 433588493 12865036 673333418 316252968 310186649 344218736 213487294 499391707 407853168 479565026 242597214 219427336 214332695 163428338 717848046 388150123 553056740 438803790 339007442 240619369 586072190 59421514 645723435 219473277 977710997 469452271 789279551 64375148 775696483 337688786 400635327 111481825 918118251 746157472 843446739 555190211 370550145 6917610 718707619 510189293 248136171 89949120 857874861 211898414 887952902 138537932 703645386 659952624 939011528 673172317 661294821 238033080 149151228 140499502 169864659 470117351 348468689 358577646 377506207 181843682 846847962 365351988 290460671 922551526 916244983 454748479 696280791 185052241 6826178 632362300 390359210 226317540 351846668 480558228 203538184 320556000 124412643 78423355 828568384 280093809 476925379 969898386 16333731 845627666 214437005 752851957 342029818 197939687 909595525 851675781 534785526 904626296 976750924 511269101 640051619 66638569 212413528 410318299 547813009 533938099 805538659 575216101 200520059 211595333 839413265 576152482 520446590 681217268 858188499 462709422 769909776 812126565 317729963 419436507 827748988 282120563 453864595 494775094 433558838 309171438 926851553 668857170 22131303 716004279 616986206 751278489 295266480 769736985 929560324 102853268 362010796 658372001 761233966 764268687 626503330 531740555 477025933 927859298 571852718 220265119 425001982 127060476 384309143 524796860 716805018 99357460 777060467 992304406 345467288 409946061 904853756 407487432 290694139 760025536 950667897 231206616 633357934 607880618 149435488 605308072 652921078 573804889 126453886 724367551 326586187 686677305 242255812 9652276 401006894 151620420 845980197 888342737 632688305 821790821 161358073 142288187 441957467 244399573 231474068 579505324 53986578 609697571 744371996 650203436 249135343 250862425 369579511 892915065 245590751 599789053 474632811 452697561 80247901 921951612 768552613 412898749 15584984 289292033 16503730 115759222 590256436 923057759 852061437 671916594 17424244 519339267 27852664 821448727 771388643 737491559 711684099 250657046 258305854 776974324 546778223 253706837 851621859 292487110 854236954 588571213 392713740 351062429 282312893 580136344 858588108 894471534 317660272 980291111 281399821 685282790 995907954 462035507 330344575 400650284 722229213 964591445 26536342 245793757 78922937 775319568 906075778 101628281 803216384 350698703 93282354 112986704 421384072 64986826 935753816 857448173 446569719 568957368 443311883 328566484 671780658 337883382 216195842 122595473 442748530 677814200 733518689 1908242 396903560 569363638 246296061 99506622 788411088 474726236 494969983 758306636 696686071 204879604 15440831 63083916 442459093 305394834 843085727 430204180 33584401 368634183 400635327 857833429 554783835 152242800 378104478 872283825 300395770 759194067 663160255 369936084 983557084 491496617 977156006 657454781 820526354 483212374 233788659 52481378 186759694 398165446 979420658 730916736 997417588 824272189 722243071 841971085 561983235 227564146 451683814 559533617 69717073 574431765 91508886 335853805 157987807 904853920 665891023 275903331 925028907 252872320 444553048 539116104 350724097 426160608 910385574 970111380 832270043 257734993 184512461 422456233 602003511 602327600 135506860 622806059 61665623 845744654 928920506 120612650 742602369 836564805 245377186 121568744 471242427 645645446 971178560 645397488 976967596 90796375 586632242 930417505 174792557 41578341 338209048 851867517 722229213 680704956 558142199 36533938 2617967 243707376 23944013 504271815 562345723 37364181 582826623 552134849 509127270 416572111 13743040 405528759 976135245 825985665 839489895 689079906 862025234 539800663 353017194 551632938 754759302 478325769 394724785 637504207 442805223 2996489 454767047 674512776 112310529 741840519 727681931 399676456 777156526 184358950 792025346 56593545 534082867 743717477 893135272 138532389 47680596 802893689 318406135 608534511 528912440 89270693 767132398 580513217 86595527 113595572 384528321 831883938 7880556 477024050 924393911 225334596 107991118 845077779 535537194 368851470 476957186 434869751 906240174 818071551 513538987 858163539 934124478 803995148 132018535 275570703 461324481 775786762 449503578 130257881 935896130 476315805 107757785 427409272 352894713 632279323 364426079 424945421 601657338 881986788 913893121 804907189 580760771 447551844 400787816 678030927 751645581 28430103 726809693 154327129 939346342 759612572 84573804 67414675 24736191 75834168 356843657 454748479 533326811 359587124 200066831 275646806 140416051 388832313 93826889 540293303 569008596 402671073 383813855 298317641 50261826 432265305 328096794 50162216 562353511 147107714 602862914 371000680 135467754 77002573 356967343 898016966 887640582 424627047 859056790 881209058 848372539 23452578 285247306 211689210 758421746 657454781 742668441 493803703 916219699 659734565 249688770 969750804 218348210 427117985 98225792 624130933 363955605 511150554 38033733 558189194 516403989 7312878 736003541 738361348 133171190 277432541 298259932 870206052 996833512 17126828 572982165 73050486 356100567 294569608 203299762 181915386 619008614 623840541 296738626 831166299 913565399 235893206 776748999 135393858 409369379 34103633 931520967 35734220 318512527 751885199 70213496 79725325 322717858 974749946 743702084 236668930 115788909 31522246 26525334 384567736 663924333 107895768 98867910 631928829 888626654 296446786 607696132 909107697 563988261 585661290 502114229 126826218 468452108 412131890 999920088 561156417 794467901 445484864 178848352 475761609 381732000 702433760 513336280 329691392 997368739 788518697 69094783 981913475 1515080 467000311 224265363 437400228 568947655 605331443 731004263 761993464 830698398 452403195 13821082 450650682 323824327 192449678 706195021 607374104 419842852 60757730 30727884 590178310 541818998 435938782 1199924 134971717 128739086 783663229 247894055 220989364 226626420 311292310 572677057 846427165 191445005 963062883 466628714 278095279 655584168 966625663 332216173 902319708 92587352 755650098 544073687 611654150 741155510 579814920 326495849 340344208 760458020 733889145 933690797 535788403 570657860 165977517 280946733 98881987 816203782 501182523 792659812 456997406 452975247 199455131 602729904 245793757 552844136 784026666 198644261 388822826 318680856 306420848 871908071 902603111 364101084 290198494 637314879 736298513 350038041 70369851 554368391 60585400 703068382 574520612 587270297 773964274 247351708 538220348 638050069 117740509 524581591 840251163 61105151 714697557 143222491 208054323 363919781 292964361 767874584 346913129 109910728 235708929 614717393 512913677 957798419 920955473 585641124 588538120 766362507 280427608 955031449 518146751 5042297 869277047 18435794 402432757 149487715 548026401 686542703 98728216 124842289 546801426 968548415 19248492 463738000 876209278 230440094 732752977 469566002 512509705 616995426 173257057 127990535 69725849 252932063 630083949 834978897 192083387 101202182 367997234 710848216 430396897 532257445 209509399 544493197 650493807 419509327 373704966 673987275 253754112 915995579 586472134 279189911 329649615 829622028 67449354 657594870 880962477 110006914 18824339 499328564 452309174 38696415 810880644 538689974 288852379 139554044 205871639 945810696 263252188 27751005 462716543 890105656 579683347 867907762 443756569 283875820 472059330 597495317 773602303 199073628 931258201 264909995 908546493 148428020 204178008 841418845 755764328 166990388 293278607 948226317 801354960 994601928 643804013 87840221 883797361 542000055 899646209 856021407 849646693 323384297 190927438 30378862 512455093 365817564 869692147 297335844 123309389 281443149 972241041 169714390 7664280 961800873 999617282 844683461 592978706 236829801 822371295 66422254 664330097 633109639 171978082 714564192 870522680 646676117 289283609 127704644 73553965 567460705 665009919 878025554 59624639 332233035 10738865 283384846 214923355 267760962 650002923 780570248 229986028 45864402 216579120 541941713 736610199 38080629 176168437 40511229 306483704 490389301 467893645 484699528 712894271 645978446 275185969 41227359 396498817 819751546 822741394 827328999 426188765 3116746 850739942 240978350 420273588 843013003 811022987 263720499 551642438 545975398 100585130 395110461 410750165 356614146 730216910 207935671 450931251 965673836 978117124 512829448 95943302 909065206 855212677 670433360 82931327 636852189 769843642 17920679 672337588 876339334 336360380 705701160 967957775 796374626 695539270 901543119 429061521 638084207 314400370 364113377 373926768 789557031 285368145 448828371 267760962 980430853 365832486 563059400 718021647 908317482 280291307 922541412 197697494 475928092 637038921 398837965 923774377 745787985 968606850 624468605 903878136 682351481 638762826 837273720 924416172 591790903 599784869 686542703 957865136 811639536 669220942 158568082 69853746 902616793 348890972 245569154 241602006 214632083 51821959 731770873 362112200 93717543 518423165 852286533 890331994 661681748 400347361 420589750 445758980 958278677 339059112 843085727 63112777 571958138 415226882 118934317 658402878 893644352 845201920 441247495 164331000 172571242 120291641 554721514 569861586 87065256 689877512 619152015 185926338 416708586 281419813 240128438 404921193 354097001 97342261 447249400 965252768 892934631 861468211 926111236 502699981 980079834 606159896 161668334 323437772 754984900 364525331 453291159 874828780 857332398 79113351 692519160 440429679 617153899 795495189 153875973 302520238 881079446 693351412 320647041 823698772 724452659 154898557 120102995 826094478 232052164 812643861 355172771 622615781 157589193 280362197 635958146 679204298 999467983 787973761 375298313 919787282 450658793 217068891 327833469 352731724 933878302 898202265 314286953 826936897 579366066 905080899 65295088 519833845 231334488 823314643 550266397 693076085 324199664 791661677 540830926 599936841 328990384 787357017 518410476 237815970 820291904 57230495 669898007 553495354 896245253 546128998 439979012 997500317 117206768 692859853 475478216 982798297 980540610 288915931 88089432 987213735 292622305 712014228 7204733 657866226 867437555 34441826 297659119 951293569 858865676 91200796 17764020 377466844 664624447 15356422 769249776 2032352 89254877 14910385 738587233 497989858 758117594 167641684 336624728 296490331 713957242 779676711 413930929 464231915 954251171 743747107 271350944 445539881 453008319 432415566 832157128 697355293 739069299 336260035 240889190 696197114 937559348 219028427 666462793 191270983 361669490 943413520 242662380 26955752 630971837 220428711 297566446 678499384 485364599 292373519 676537582 913851858 361382738 860039519 305306232 7487924 18851581 624746682 495329463 587627545 316507028 31466462 620594481 765344844 682945047 466086716 162268292 630444531 973777197 483991147 302023752 370351757 820406812 637023947 871660396 518423165 897343962 814444187 616915443 383152018 533274862 920430789 272506098 476126358 534339215 721375929 770648868 42506260 726359109 49351463 645025573 679089328 361173080 499809588 503947684 447688349 763798734 680999297 14038820 583770924 542632758 815360171 330257235 996107935 171688689 903827435 596308791 546165944 582364364 603225081 266456313 960748472 354252079 390405342 862831848 346885160 153611340 532884690 23152254 808701942 376463788 480408845 241292532 138783224 390896256 125743359 956834270 826629991 641355327 31310998 381666514 513447086 423317373 486096282 675768745 24856135 554827289 694890080 240425847 155529430 855263395 50199105 630023676 715958881 607038466 225384671 516214141 38997954 723249630 857438890 684496880 484507931 887838504 712030706 288638341 786854212 489951339 388853572 974153845 785497847 263503175 271790610 780998334 721562090 82725312 32028784 83928317 616795200 328960012 359016436 161173945 307307100 377499939 109036719 546046925 337750106 790754605 470146172 290446264 602175581 123827973 671411046 900890587 596835518 605976732 783850195 73176500 831815422 372602297 749791832 674735063 452842377 950066185 210558282 322932658 900525980 633842151 679361040 481077671 674175178 364123901 345916135 998665354 28349329 350230305 694761691 701164032 780378251 152047477 568314379 523082937 476132280 711268545 347110434 791333877 893975679 323292175 74114546 197964218 306860504 760711783 448437672 238449578 16378329 306959704 36309 506171600 55697205 835098741 827343419 729353494 866947939 327873080 579098703 411184795 345696434 766615265 793966002 772352490 724860392 469282426 573947845 807652142 793717877 226844351 537880232 54526121 996358791 608609515 923346722 753728793 382971900 835272129 862043183 228345083 214174469 76825046 50919291 964103437 546132155 833617713 549017980 499590230 385365733 104517866 70588333 479007552 365366989 618504791 559146089 159307631 338729615 94109361 975794408 52239902 851702182 877572572 111558678 461268323 399460835 747991314 596178899 6867199 29173697 774663857 138292839 178118996 558458489 569826954 959636127 355337553 879604234 999972943 26810765 775635858 435307694 847925869 568345614 865441523 184526965 753850351 246084301 209168204 171023974 462969428 617619320 867638829 829206345 807426989 853689712 576722935 387318492 905087762 445504962 478275349 89472047 982860933 31267691 832301983 48075591 524785653 822013519 684964719 780262926 875016166 487074615 922058789 468694341 704988884 39239888 927192605 180447677 376390714 379835797 642328397 935832735 984198721 236918821 691782752 525302802 206980779 295351681 181376032 803560544 658630639 636581638 521703703 485802631 272021598 345317027 544301939 439210837 862768869 966847794 543002787 540961866 733557479 644166160 461854576 174801050 996703004 543717256 890121112 705521996 354297829 771857799 102523662 875069649 620612990 460338755 466010437 409250789 60123196 974617468 320020598 657777829 197121295 267528670 247944849 941574383 353020828 15653264 451804147 977533450 506829129 944955732 499905935 268589214 467516566 58296012 808327386 254334868 72058988 377657819 29087161 553557068 202662679 947666513 380836595 181537274 398309401 487614222 918534428 768143707 713314766 271803364 827140200 712554908 532060379 32922479 890561304 496242583 484422609 977498862 201923874 5450777 452533417 871278354 176033698 906931914 372031349 407284491 35274462 828097523 867771068 864795391 502773379 54598613 38641021 935203566 471259937 806039210 635361373 567218081 722557343 499347801 63559274 3824208 960587893 488759620 662717589 126081809 288192191 306147018 255766681 808701942 152047477 895307497 350038041 205207110 564289337 291151592 357641557 603533853 386377861 822549007 449145877 674377120 519582838 811500868 48074375 328166744 443519747 919787282 48274035 635068842 762593456 457321404 573876821 253074509 274074732 484872152 793779334 646331808 251722281 829514146 945885216 245016327 625632078 322322952 722501371 969830686 650565435 51621790 333364715 556631049 649486713 226310891 667766934 452787012 110356353 517146737 208611375 457384537 7224242 882364168 956287431 626133374 194502330 607137343 809388297 293732418 584265607 764540947 320647041 38423603 754210135 996924885 191014961 758242224 334537991 947006414 264803659 824069472 436780671 829021456 166680508 669025094 295645549 610671307 417760871 279001588 415842111 393062409 909032491 761670441 540235806 261826594 264459729 742957241 840827585 125094485 770011965 662373313 46191995 350257601 415037762 73985076 114820575 675462375 706281035 169778604 394708420 916873374 846455384 458255231 13019246 713562318 724094230 647180626 488373360 229382931 342651436 177328224 581353120 482010790 414979086 365764499 724818338 72460828 201035599 298917773 559397555 826283503 286064108 794237392 749348726 655859476 711527877 843169266 640185100 831433518 726754531 671882211 16717408 699755578 530372689 691725261 28516492 390162833 66102935 911934467 739197408 950361696 206415391 699814197 790049025 715749950 987687810 727678917 769409899 551443595 556115423 812418267 217116549 617867074 867199088 197769173 983876908 736110572 620510712 83109563 446448050 455435232 265718453 146693642 458056901 908714871 544198145 148544727 221774348 496004901 844488545 856021407 595169685 376436948 580088340 328145920 413008186 301269206 208346343 26775747 691881241 886970172 865830253 66465500 565322383 811247572 973720742 601715455 864076449 547228351 767035154 336340621 385501794 933271848 142132597 839381787 605630328 802884180 365129970 867291532 195016358 24261434 714635200 25042475 478773716 279791701 186712215 54184208 38901822 903050151 128671122 497398964 44888120 528261296 11101274 876484946 725369175 590229550 19877913 56210452 596881903 12061875 867771068 644196219 795294624 655113261 296462178 103075395 678851239 48513970 855348529 801053356 291052578 68127321 224616254 920840262 605812413 326286007 167675513 71064492 892090407 923725685 271668754 480728465 762177488 369708321 45163839 601722071 702880206 440088834 405347417 442061527 763706001 365140115 461913744 991259996 601951437 909460448 100019046 857774254 174821366 902446088 890477519 190200296 487582466 573937404 402766274 26672158 17546497 83047641 547162867 718632161 761365107 997986668 769567872 75912833 510217962 545771188 544979554 485534600 173745262 321791611 984089016 875751463 380569430 239268491 656448081 551070209 860730021 204911369 532440875 818709252 391908045 484146141 662506165 712005099 894667051 157862331 329908701 793431280 918517517 935660388 449709049 62861840 16891374 332805550 613191834 29646658 670500108 586024811 797120447 537744674 669252312 42827734 314609352 698024042 538719122 749502477 552326210 381645923 16647762 25911676 210622690 284836168 71346047 276626091 124842804 140661958 174580327 651920481 558133638 906857325 272873862 716275458 233733799 851481506 114381365 654767444 406715414 364988819 907426598 852281710 40365394 867930560 860975947 848576968 213184090 807692145 155706740 177706604 327772328 738908452 773211226 65368184 726357714 229680218 447757235 849243803 224533589 805654640 287960852 222067154 826649333 946836036 159964809 380793861 71027456 36086517 944433987 355636186 229784365 737188357 356616092 989370294 448382316 358577646 758235827 344594555 750573419 362010796 920934805 690457167 974034924 321861553 13476232 617512323 757624342 873979679 937824157 871259531 234744009 756776877 254249799 216800086 712893266 188412847 708658204 10371974 277789775 37798574 842034123 67906620 212360508 721384561 26925534 511407694 256162590 743294770 983500966 303040917 731261983 909772893 916912507 199281024 273221429 629923663 380662659 545390369 736876218 103028797 126081809 582364364 209574297 948667288 728850318 157901948 320859129 905018388 86258423 124521222 923177278 832644997 898387530 161057074 151763567 954876106 268589214 129285134 442730521 794634455 485607407 357346333 819666371 727839440 919114049 989064214 792784924 279027337 15330216 77733493 587355739 620402403 458565040 271552510 134126178 151482915 939841740 104343334 966356719 78233182 511719042 406277887 934669668 928094580 845790772 692859853 795393717 120529724 745883253 654769991 614114838 672367333 714826396 308481337 448080498 494730627 874580319 471061212 741473527 744315930 695276311 262352071 746135136 525467228 868460861 559683161 367444855 671370894 652527130 434310678 656389837 749303689 424636451 797247100 389338955 575007153 359867589 548489672 173745262 775621034 524414934 79291129 182672202 666559852 677827194 916694227 398052804 390450363 176368373 476729626 608125408 670631921 506674034 690271108 511997162 935295412 469717913 435195744 279476275 802779506 466851667 238027149 887081595 66576383 320275786 468817299 215722609 547131402 709391436 642369286 312662013 121388330 496424341 251189561 127079917 788491793 983474645 604891880 579790636 134606821 219118638 610699668 508767008 31194522 220840254 38324452 980761670 150836025 846945397 891641043 980787958 811810334 547667737 209715338 706764910 404984433 363531440 605529534 510773213 921797107 832356603 8666281 893942792 504534339 369822183 807316670 397454751 424934313 810236713 513062711 795685175 454829880 769003654 720036345 229330288 778973034 774761625 739751457 958168960 350225811 531750849 978937561 135699865 483979407 755786366 917303931 954151791 800593827 921676766 380746651 242909322 327947087 949161673 832203513 168395604 953395783 921907298 497500172 322053802 375388027 232032536 331629513 451826684 780041430 844588025 752664487 664254269 850185777 394439178 18601670 768939375 728958247 632997109 858646575 586500575 424636451 523656577 799707521 804760420 607576876 481965931 857116180 873401461 896145999 557156187 591707404 765256626 921689799 80012334 474834060 671827729 825846528 397630724 279792070 323841974 977002204 9991475 853059724 219699494 114410730 369579511 690906004 788697439 596246031 182566553 263534128 2856311 754186494 222066107 533504474 795091639 30378862 815302867 733959449 959332261 14662812 808143741 320416107 480941691 622196175 480657098 227276691 924607497 436125731 156347673 908279290 261726800 536583742 984313164 100748180 886007923 613725383 624481399 447671970 299862588 563066050 652214193 707630684 532415413 992064097 749030996 787754564 253411878 865441523 676133029 355629198 738183657 509600994 326648535 26280518 121420286 176422189 36011996 531277308 205044946 905751204 894419244 781018661 471934026 168561980 760150783 51356329 381109070 231241892 479822098 700648542 664819951 249355378 868146410 529652373 925081214 700141431 497105192 237349796 218552104 464604510 23681292 512220952 683641027 738074720 981581851 419986517 597015941 247143693 235849445 208184788 560983835 452558021 713901397 630083949 952682101 396021160 853310308 185230830 959491910 664330097 5553770 602862914 768662752 707845650 820590894 402818081 441176325 955324853 980939420 399208084 764102001 753100677 400389725 585041715 140314558 970160301 819380844 43483082 823264347 113596690 848935039 508319429 873716602 585524703 651239422 389828357 644182804 509085636 587404969 582853909 484926329 555529648 826502790 541188571 392228893 944263788 238298659 233733799 300458091 748206583 561881399 976759028 828178368 973775751 223788379 155181590 946202822 715577458 336311501 765357480 379182198 499315515 283217937 917891540 766691065 991348278 351539678 249460211 662717589 192240835 762768008 10311975 345657037 948401910 566591584 191301604 720581291 659253745 57381173 412594984 166800794 377774829 387037207 266742158 264419501 825065374 234747531 390330004 178347387 261544188 336446003 848300292 83921124 445991234 960327200 973844884 245903003 130981656 493803703 908565932 227878674 489988618 219118638 884135772 851398401 355305166 19283711 767449506 208487542 202882569 130675457 298845984 26016045 234642455 186759694 76766586 54861230 161554193 947162183 128362060 745981564 686371198 871701986 86479383 519215193 770700668 648208311 832366439 760738487 689494470 664908036 263715345 16806493 41227359 34592026 389849335 791173097 122595473 582963409 402281472 917098104 854726786 584146707 675796954 291678095 233290757 409283331 468264783 817852204 264735059 603190123 217091450 699973169 49904048 287457374 633907240 220652075 857321616 198839588 296488763 963399579 862130057 421820967 222165675 451616070 579744303 953271990 832203513 99522723 331424451 218955174 183537041 505525907 283458115 571102602 764012044 619683347 821040140 14298022 706007185 814019119 697118948 951073594 155088902 219163607 380556365 458286722 406514204 672809655 832251613 443320012 805070817 429803228 216752657 767523359 848388906 986358912 209688608 475186951 277865371 878216278 579153318 353070571 768297229 781033406 451679586 529967596 954077957 810758867 686239686 215325400 698389108 211450229 656712692 879379846 379089583 923383940 183049936 944894393 882025313 484534102 54247240 963281889 349878188 265110068 755694642 284818624 676292323 734290091 297926526 359563967 152686668 602113247 231021345 571494310 334690739 639348055 698910671 432247880 555183156 116429796 851501403 890428652 608701276 635574942 455906516 95998941 367734907 78990798 144028759 251671957 156422438 145850307 343646578 748654341 852912649 322717858 295227604 84854444 285739178 875428262 531881019 140198079 15987352 396016423 868964672 705701160 215976875 412141107 981923730 963075820 543037438 368977388 581257645 413062199 958118162 117861027 906700604 558504609 517953066 825121523 557254761 960207362 836714406 925512958 619746181 149151228 28378225 9447121 40614602 405944346 96231433 593445814 741277117 351494973 129860918 60784045 811006875 809938805 564775552 543273009 743606222 174580327 866780328 661116488 101933198 675218246 906229480 960483325 802752149 403159155 326469968 548519415 367271394 590092588 348832496 288134202 447985239 143481892 383794434 72058988 322582516 136509069 620798196 961314491 570617749 991962385 779213066 783761542 273166594 778446756 170131068 655374486 652604990 352484320 412429129 33892879 84551611 261865369 471592293 549157510 501151605 982874847 499626190 62034070 64438214 648796590 684974234 25487301 330890116 645559725 415822865 923530164 970464700 826290840 967988193 454780475 324796421 978931542 41858882 677294296 774219079 883303758 503143907 194070612 117004790 722306591 216914715 867677269 737903490 420949977 13832323 752278060 476295418 711887594 28490437 576520770 492013559 829672298 253300010 389421356 66917572 479047441 83380103 99912414 671294911 929159766 905042833 172133854 497778507 372579773 350851736 84649346 956689258 333308353 127878937 783282710 363094432 308702464 341753073 493002897 90747137 910723846 340836506 452193059 698097506 472319597 223317802 123164016 638582628 199659704 424076304 194224267 542561410 584518213 13046427 863925271 233479734 283960448 147935885 603046200 185819559 292373519 716987164 959208245 298176178 774619684 340815735 38193462 514433609 328340459 749606049 688370129 488548679 717519217 271582622 770254691 776287520 36627234 156864123 501837504 784467330 891428971 766818243 673898968 552821248 972403003 757314735 316506160 170974383 276414833 904087762 781857820 889691066 937277894 967225898 865255460 940733914 520069882 50649066 556430099 3424454 118207592 493661875 548014015 150938074 444284227 668698099 121203839 543023694 719471169 23452578 284843401 403637512 514891406 47692214 769658528 972335494 140422350 364661716 424442141 551210918 38423603 65888873 715028530 801141180 901543119 681160067 885509515 166213252 451002065 46912250 252584352 252496027 149467548 70122095 435938782 867674833 190508781 137773333 194912833 614269542 952743427 260564844 783238226 334017255 219782508 381544129 750454551 411025398 898515629 760645713 598815359 117373349 38633569 345370054 311378236 305143752 103511071 522844878 585525169 524096599 463012890 351513965 141633425 966449658 309769750 769341918 159869640 568873113 268674964 295147872 166652663 219661184 953225157 333128717 288574570 993643729 83073931 317497628 704902885 287299608 901654426 127826002 667290936 470923318 136316336 582933256 881264760 291898378 37295765 768662752 354936775 253017601 174840110 35112069 737048158 901664072 580279805 610111326 5560182 981668832 282281192 458836015 887188735 126099228 557196153 775959017 848372539 707425926 846981558 224206547 83654521 824799919 405050648 343046686 671183208 341026238 895066423 6207497 110523968 511996116 732777819 264525872 810573196 645591690 424616541 459362295 765675598 972003455 640002196 226937839 630905154 618748365 311469286 55691539 152906924 179100879 304718611 4687436 707290569 148384619 359222898 717151735 157366150 855119197 776213725 626706213 180379371 829995887 892943282 471030975 465515499 916217062 304755906 439312270 298599039 890592544 41990454 539136602 807889786 970647082 884893118 758553769 887164824 900524 312722476 261372090 625117797 96640362 964591723 36196173 323841974 906091553 547820754 438337517 769428236 493216187 621797618 753898977 383987367 389269582 295934717 256890952 823061553 220189070 513762650 24969803 804120096 357139250 616588647 840398340 177710367 887756346 666907760 957818882 870894947 858952370 578467408 952927497 868781448 464231915 998985290 266078851 732220786 719709411 562319852 867235591 407457303 349820232 841323326 921730758 995515278 613302028 546928136 641323030 754504020 814290504 547832222 475038327 709598768 444819269 245345282 736794628 583764868 316703284 19879353 583330203 29543759 161636496 839644634 544729225 416321233 274028036 909403797 671986507 547445134 637466785 389333865 24489454 669859514 889085276 755537204 72969801 119475491 5344730 165421785 984484017 531881019 977901482 912295579 15194525 822434253 703999301 551443595 233067591 722557343 444901156 697658342 329842601 406993344 835272129 490872303 57251105 474770858 355298263 509053706 231546351 944433987 739496248 749538016 674970090 479424034 284051798 648093472 180898636 149722756 231560997 346211318 583779105 584265607 492038745 790196342 784304533 743981318 177710367 507082219 439509764 420966683 546483333 158064901 953649730 188072095 680013136 440812475 833652947 259736323 688913422 734249411 817755949 574331224 703587055 126821158 759408432 820147077 874358460 434082243 596955590 99519994 500082196 383386620 39725236 351868796 127565519 908166044 158254964 858413952 271353779 74690491 464525866 43470831 971614271 730364280 899608872 545789841 642749593 463122733 81237452 219044355 337541706 583957287 837872331 740242353 735061499 708193756 246522243 296867912 642625662 187770251 965248930 399908276 674847900 932622419 532689731 308535404 851946478 972932941 664090293 49364204 502417907 738091039 622848868 313878119 215457782 775455346 943269500 276516086 481737708 634000770 449497514 166680222 248530560 365801813 576609913 909889895 395376462 893483310 268205467 129663509 122491354 632865536 882814122 351759273 905407089 843436780 353070571 985959315 988553939 29646658 236745184 205270818 305144134 415526637 563323691 587946720 381310308 768674724 290701010 480701065 578903327 338311716 741030604 987789479 372507003 175794408 767407695 649523168 57633090 441072042 216257477 324205443 338301034 237060406 929977663 137443790 445846718 419204173 893787369 111682412 870900358 791404808 586390355 970776494 968997563 229193030 244575813 924412524 23015777 470909610 354921565 447671970 391167775 361767048 276289530 277224827 734911612 896371665 709089289 624969668 128848039 137268785 503123108 322405277 808402382 178361470 182787138 719926625 806665772 989053418 249233284 783896113 964785220 356154629 738823304 280764059 763079506 597412568 9036399 64018166 545395004 376962303 440747083 387393861 136489630 414509174 245656704 923682146 16209552 573897814 820147077 235831238 527094334 233631346 833011486 145931453 61650544 600337092 807262694 449927231 708245710 808653657 580079021 83226927 457910335 897038068 953380158 22088699 981365477 784043439 682551889 193891057 914105238 267943895 2350990 776960955 59688915 643038084 996213252 785031215 231698095 282555276 562864381 828797450 405596238 671599169 491785628 474595755 610232667 900737132 404865109 40425315 42928521 498071294 58492053 373826813 959267036 401338992 778037170 875133102 689047902 577328104 756359106 531166845 947127170 610072820 364481852 138468319 439674513 699653825 569112641 538355224 92898621 999469301 127202560 983036805 412344583 510776790 897346692 695724410 917140580 120213968 856837185 766630572 404245321 419099022 247894055 592704108 386452577 668348736 429803228 981637642 662694641 962928895 480124833 227424825 731168064 212415872 872203603 931128076 501395551 540862364 286465371 110542920 861081663 695291647 94375730 796310409 758224803 481143659 675796954 752278060 453778671 152087939 390626073 597015941 286520596 796769119 520447256 581227270 755330726 60924222 665648871 668581071 13464982 35004456 890607555 29776008 286699486 880169369 563796370 611405249 938343618 205967905 735354763 398418347 776331268 466577005 397339243 634011918 403632715 553232683 619008614 645911657 12317332 67239620 150475892 835356499 218358372 405601976 282472443 333888484 558137974 494433389 337286190 998975527 718241508 664227024 981589233 224616254 400286701 879561644 527996804 56082182 130470573 518695660 361537847 358377744 418928845 565205443 179682367 268498825 49233452 218715819 594618510 995989685 143588500 372690864 578227830 922724023 101556494 190857706 925596645 756224255 89360018 556603431 347858862 413008186 280906711 778082905 198953704 330679146 502028981 854862562 656752093 194912833 770366575 501543103 534060207 866206389 549880494 270406529 620773688 917638421 7053161 459332629 603583268 14308104 840409744 566906879 313058443 555161464 972238481 329967834 313947509 642529921 909165603 981124523 423649644 837438162 176711811 567697663 274250779 294739896 838999938 486755668 179016390 698559650 439710013 236918821 886821773 676395928 327297257 899428473 488970046 74501453 744719502 263966219 428988902 111007973 906576610 518180513 446881680 985539423 455568324 169257256 476156723 153466823 528088554 738843836 264239139 937130242 220702656 818071551 513062711 28221725 564361059 623439637 377218750 773989397 617159992 688644181 737840305 176275100 287960852 993906598 686927435 986164393 700173051 671764080 670285999 39994845 56760190 680026524 407746658 344294254 975783753 292754778 770235875 574070370 51555217 660528251 298905313 543273580 620768421 428070183 752267488 282704292 380782002 452763844 495463533 543123735 438426619 943032548 284388525 56898067 428660220 265993977 328813412 123953923 656939950 772171574 809907369 685160710 930657306 55460443 720336994 546847702 512980342 851401536 244723652 294621961 294095088 624249721 927352508 861967398 893485496 467943353 775358882 656655626 662437500 118556872 953240018 767819526 502186475 115172512 589450806 57766823 776164139 930205821 990115162 886206389 919855862 121983399 664905089 3924662 604419118 428157620 163593565 593332265 732289520 430865356 202607523 139536425 274078903 560363448 102482361 632408171 237328952 502980990 789751804 478419718 709805150 779912378 43681200 328486836 942249957 339970541 852250033 147658758 472008623 331339406 564160582 670862774 70156205 898555139 855214655 958553011 169639648 907562999 694308758 357139250 237856768 280746766 128391847 806188071 752479903 540729206 994976656 75606762 499744184 986111460 712743771 856953857 797380934 421142882 878025554 831751761 747733934 586423144 970572929 921673554 117603156 958972940 372185684 537231500 266905947 551716805 678275698 788741429 874606337 271290363 787020479 377929205 848679143 313428994 237795586 962038802 719276306 386241798 919039897 377634773 363531166 391751107 782964642 280774570 64517960 685520131 49233452 279349715 55029039 613443546 471882403 706835847 169692945 867565325 333310872 978085324 446741402 774822669 511967147 514621417 334143840 85169174 849256819 828558357 647202707 611033199 928292387 392732047 220772074 777672553 928515633 134320405 276643026 40350007 168358029 923267883 113824177 421017447 237462078 839581217 692879780 129236035 402742476 112745961 958434638 28326800 889348343 604870850 282120563 617927443 325865797 152757649 691376544 970706604 564764330 287641643 362729882 344027920 922501045 759175060 513244219 848683011 808627830 55739616 500746557 705583754 404310960 635039672 284385352 495917816 505341252 697043412 186213188 364552715 301305656 708167075 546132155 611776560 484444381 249231457 105216175 437671811 552134849 277224004 365932448 539839000 47923253 347797646 304521225 809176993 354606454 38434978 414077824 294992293 950809280 392272931 434332961 297652564 432368215 863587294 590144758 691235252 965738626 667807901 834787721 408551899 546046925 814695864 512881680 692925996 115558915 978249155 466012772 640566123 960137741 731574800 935505118 619069281 708668455 471805911 386391555 480503654 653701110 248424526 325372421 600843485 626404777 346506829 484990981 178389285 725698907 812034282 899555137 525973328 273154696 734791103 217091836 629590116 142989765 903746239 525680592 399502641 339237477 225464518 550562618 732119158 613443546 266484984 679346591 999207204 733300984 390987798 582644972 904084752 555009689 897853100 470724942 9959841 641820490 881079446 213050809 883009408 192756477 779762975 789618919 655786104 299838935 883518355 940394737 978970664 398106549 899212681 267668865 402768533 25311689 701494993 778477275 94478511 991962385 298509160 888203384 581998301 504731250 305932416 437600190 328020983 890977503 280434654 468364903 678703158 969146389 43108055 989809959 696712001 798084107 475601768 778414960 104085948 738740574 753973124 713047491 884551928 945922678 36689314 139106529 679504839 636439366 906447676 335787779 38738913 937811535 943046901 525388235 203539923 931412309 927095844 421139014 247716155 504111994 308025846 909807263 948808296 847026541 403594491 888754427 744894779 394123116 387634649 563153442 314040459 137684242 752469708 387858612 895052224 473391021 879693828 826072329 891610870 553635198 912295579 171559294 722101892 907487318 733178502 860979836 461075539 708779759 987264164 687080200 47052992 840830386 70364395 923176714 780268304 778999939 881942206 624071836 654092263 424814538 672783989 143439578 120011449 75409842 1302209 924412524 880982290 112903727 293874436 268498825 389271215 467623230 269663287 195745155 198382946 977399328 486754069 171550188 228364352 11867197 419813416 155439863 304521225 236745184 635427463 348500500 695663613 674020804 464288523 163963822 939149086 510588947 908831051 934124478 262226191 859950390 910636933 135035896 401886483 179173915 966489788 151808539 739392047 123232061 54965248 850876567 635068842 986111460 777884015 922937241 919560739 657027850 375630778 81490898 993643729 634963764 415770458 19644520 453736225 555759076 160349177 621058320 139645129 513628151 447281092 103451167 19879353 806768050 408565835 668926540 668545333 88224058 207657960 691891685 17349038 622209129 318198370 520297847 857599249 267204410 427122429 150283614 840964030 973775751 309006380 836812079 474789959 283260166 386438456 672125569 259892954 765784795 995718024 528972221 114304766 392011782 600257013 405977158 364489055 666152405 995082357 868269185 279178876 91369963 34026797 478175556 406588378 440900349 959718658 793980230 806441906 2483272 122627212 759874694 632997109 694658777 300299881 806779803 780029334 537771240 151818248 250698320 905736622 500256329 947972945 347709210 579149317 314073382 457796267 65295088 936983161 819781934 588958886 652420131 81168614 642283368 796430102 105389889 943782687 950323059 137582627 779967886 890277752 25302377 730947528 94047394 643427895 139145691 918561841 859151681 169538506 885427342 851069187 518443670 12285850 139607498 990419037 208604955 482900963 550266397 698575401 938887982 734228722 576510098 891703023 411923941 875689461 482489868 44319288 571772395 146412190 329536033 967059437 979298066 935203566 44725966 105497560 433628532 715769988 419014991 883577246 137892086 102878892 947293533 795811141 858784780 136489630 361830316 103464499 359705093 928073558 287688002 261485115 899764391 544640238 119447391 860348030 374122586 271299948 369412259 965745765 394028297 959428160 919381510 314237330 798095056 776260843 122729878 321523903 682264442 96762339 864852625 657486034 862825235 982578511 292334542 837839258 537880232 646642576 121299888 636923646 979334951 440593364 846293067 940705285 74250922 294021355 101790138 460581980 674023228 31508957 243881770 252215082 431577962 400924325 58855512 348943973 721835784 130520286 368172439 670374085 987323728 350599905 81597341 986188933 404550256 179252799 712701557 157380566 152048915 323776730 746298293 244906559 414158663 340367622 566640392 10086179 434704409 785125092 417878718 180721601 454806248 723640406 760565868 631839887 697043412 628675049 875953211 893889473 55631802 669956354 868237153 76175267 17701083 738614611 971107235 356138483 511861365 295663556 770828409 699973169 185130288 844735661 866894904 584936589 512916783 891817623 259918941 90540383 691885544 536622414 290929857 481041195 884433246 500585147 530467476 208638831 205064503 395324056 490872303 526862497 450279468 706818550 934026373 228212876 702254180 595000385 90262955 189810024 630477253 727777714 260853611 341772163 99824777 61574906 788726138 533035484 453715631 860420416 971476441 748829424 684799256 360262054 916926804 204911369 387773254 468999334 760778880 269098146 366512881 735757258 355018371 594929746 524290695 878072324 39028444 726584347 199054745 302485439 993004593 357707167 726290070 874658337 860455801 282238161 926179261 795624703 179229797 540729206 700484476 209648193 986085828 402592714 730433908 821825235 987376881 391157213 978075269 679935215 610953676 560533627 408750239 562431958 921135788 608122633 826518682 968561110 145111489 326598612 782363219 851276730 634700925 290491040 25070521 335356044 13244024 271525476 490364698 148051592 582003791 590650254 692271855 920727460 911367284 920305883 65518759 827280952 112213589 40267326 63426559 662355595 49351463 298662263 687867549 724162028 580532673 213624692 137344446 193547562 428254202 880418670 465309602 254775758 539990104 608394505 144325123 147935795 108692298 429806041 964437787 900643235 780473268 169269217 225495157 414873894 358959612 730261937 88006573 855016431 83488077 685829735 400347361 744363832 374995634 374750154 400607786 252035664 178221715 400607786 879854603 118934317 929714231 424244463 708658204 900338074 934156094 386207852 319615504 665804592 368802495 788525586 705521996 493885949 662077640 493556453 209715338 391751107 62745989 720835203 181021530 50616908 935781411 229496309 645851569 51493780 109094206 852272479 909570349 461037171 253294899 227394057 798238544 204063501 620108559 229390535 759384732 691652988 681494710 533380352 677306974 21510487 896739525 757873874 154844733 831672288 819994969 21774101 948276541 350096957 665804696 536044452 264844331 935779992 688847403 531687845 518530057 894582184 602636088 639454795 779510469 849685723 636322488 962095871 645868195 591648972 363625018 754998677 155311678 142822417 840429815 324017991 79111962 61100349 991766506 500571515 699977559 569644314 4497065 239522076 260596494 135966166 632678439 268359827 477290269 727287869 260189720 148246011 833272952 256030462 933218382 640665015 315607929 815583911 732137745 142528602 697522046 954077957 191745723 736432037 235049133 747485538 973248775 476310410 884198972 319698360 169965929 558371021 153084224 679204298 72379136 659332005 156796467 932808931 609058800 190530457 89052309 455417418 439710013 531640368 644629354 906746267 304086183 385378540 428161058 443756569 647735708 451026147 51974489 966543675 919381510 424080157 673972357 155602006 338729615 954707773 455568324 829194693 136848398 227521943 533053317 682882589 632806202 864579136 852258259 689934371 685128297 854536570 71725580 128588508 863856809 203699740 779905523 818885865 484926329 440541477 359109330 509848036 679935151 189759569 208467102 393270734 102270271 950260917 360095864 58708853 411613815 438405625 908171329 742947824 128308112 903827435 312918832 814578512 634876883 650940695 337765280 991230395 19804786 390336601 285964512 539381548 490469452 865879573 680723844 474798703 805873089 884006151 182620039 343340313 585541776 507068049 495476487 830254783 245143032 743420856 883854934 559086849 935031379 501740595 144107580 378209786 979274485 729343408 59185596 16192237 959693980 832028728 828523706 112574827 895354470 625161627 584881221 849752270 252243660 852577067 306365560 710286711 415526637 372482254 559237431 464052136 687736900 580356647 811321736 375824552 737572286 44525042 254765207 621854661 298121233 984672088 881816885 275681184 835156331 606852299 919305021 671506437 566142483 893205699 770799584 227325715 601948932 139622190 390049978 856118619 903465139 706492852 546095029 992441400 143127564 295320975 333271370 419815270 654665800 572064622 519540322 779355242 557585169 428991965 521439741 421046168 779058624 427122429 59778360 900737132 726611978 419902829 462166217 495027575 819274565 445787172 137467583 202470591 137443031 532508782 705530037 321231436 878813860 616077949 475953297 640506256 948612067 272581443 539267153 705303666 5309188 93104659 874134746 108124067 827372302 342030123 947194811 530178441 94011798 412365791 24205356 114016006 195160871 784709600 837872331 227627111 446029410 400837322 700975609 442022547 402763221 543855684 811990972 541511432 109036719 118450002 529067129 971553297 174651223 617435006 268109820 847015812 821190530 366434966 834923524 425242488 156628804 253068016 479925706 622769554 496246644 958800426 244041631 669842795 378209786 877599446 481227366 692271855 142828401 100726826 525478555 466780403 951793709 334213287 526208186 119897161 985854129 369559972 496990765 953704034 608055806 699807934 744247419 727287869 179265817 355237999 431036103 990024866 974787805 795963749 238056184 121117836 340246536 796785920 112647943 537610979 890156202 913094374 824348808 38916348 731203970 187684462 772033018 904246079 520541218 38881984 81482833 129893793 965557853 554534428 78143124 628379381 182655594 634646108 291516697 139062021 539577929 30426635 365453031 968222112 599914643 408067359 900474927 796615212 811503729 701696452 162920564 533653099 373815889 60754284 349485232 673242240 267899029 403460890 73479346 661235107 130307880 817496728 931658140 481193095 180245988 887218787 242661319 418465719 397358115 550227644 464393121 159273740 356926286 435022875 541071520 246208658 21949108 306483704 587197475 79305100 946027617 780109512 388662448 469256826 312883370 628971412 585875985 195919098 352059234 421142882 941357322 253821550 322969645 695012609 824237927 966523868 851676095 384828751 676222872 204352332 221517423 901137636 693695683 788112942 120864492 232685782 283578870 207786996 916219699 420979670 283775480 530998630 811627489 254675150 474271008 580721253 676039191 281250236 103835076 192855337 490025276 703301440 883993911 429608701 493062393 198667219 382884962 844092619 261526157 587234377 405769282 61624379 151837471 899172503 154654040 79297072 230503639 740480056 673208191 112647943 273386321 898297620 520441157 502933498 123671496 705961068 908798475 420453578 85685067 75834168 104705344 594653046 728722093 728090418 603816614 99319578 733044207 294157138 60885969 180815315 497151928 782749948 896892978 811246788 589389018 100193271 273818671 837129551 883022267 544258450 707436286 542439424 208370923 961443464 76596989 858081042 946699396 60386937 926708300 685917509 762792119 428694094 160595199 445029700 742921110 532500938 789680762 808861091 119128511 727244000 139106529 89387933 534005571 227882239 877888584 96935400 463050864 137731579 788697439 648220650 472399140 308669477 694266118 594903023 726833095 608015537 866086121 453878425 708025284 1400016 319748576 143986978 123105135 451258563 853185149 869449901 484507931 740916131 835765521 836468696 865016462 13806110 903390000 375061458 184211691 900474927 649968765 754204569 154360098 963521364 692249966 670433360 960721779 708245936 641527106 547230716 448663163 647286029 34334578 2060789 24551425 962332358 273497713 11600119 217504141 90680419 278065952 186995826 737188357 537036664 880698761 752978344 28930 47519472 855733518 3143488 781334138 481193095 214496707 788736672 194488026 734404931 4316256 198172206 847410518 114715194 781241974 472794263 52046013 342651488 185897908 249912371 873471918 213840088 925952215 179467670 992948948 474261549 449503578 290935037 723118626 860173987 161881059 257493633 212626511 910032362 116136954 708651417 544363227 626509866 152685404 485078619 717305618 595470392 69851796 653521579 374473532 623099482 880195635 368523532 819616711 356041779 126246987 71943187 139613041 813074986 513155929 109179530 467893645 64879547 880305779 445338715 756547488 488858487 710286711 339261367 572570767 3363686 116915584 510038729 500606292 712774368 271126947 26955752 667781738 435269345 914331008 615177933 289619091 802008673 747764239 780099285 386448688 476286680 607038466 173491348 72000782 7115578 716396188 145594314 419856119 443220023 596308791 405332098 479933668 251720128 966417540 929493555 788349047 45164804 938838719 253761553 907966505 131375455 587128968 691520908 433514475 78857152 262583957 566386381 318255749 643375019 362221536 557184306 246282501 507090815 733934640 693899723 36513395 246748835 19327173 249464200 760730313 850101211 220646866 637759900 911885762 27104701 774817252 134075833 426242317 98052331 98864073 160172520 46899360 888861218 852254065 109267835 636124096 102464805 397630724 562409921 389464653 224343186 71358740 176706650 638626271 475275338 521439741 649420466 603175149 932355631 674446639 383934666 199557019 586263721 782429998 281432897 452842377 632616989 896861367 217915004 844565290 363377198 662717819 143329155 54329911 952352511 488277956 33756717 793997709 653768770 910834513 929560324 241023655 127809339 447761769 428456922 581784610 616544375 242029871 464925569 984003529 200657068 842943789 185141951 959783251 466054380 975156870 755464985 776870848 127162375 361074528 91542368 528810712 623936454 302023752 744129100 837940347 425749787 779167792 351760047 970191406 728001954 165062137 676306024 222293541 413536952 789138377 15552961 143892769 219044355 532500699 450021111 102386177 313510694 656856426 140024332 339920193 439264856 581746826 806910466 774924814 179718097 986073526 282153831 633733615 195781982 613475572 834335765 441766826 333061769 899032434 769909776 90540383 665697189 208100594 730171344 662221968 259087131 375057400 169793726 511269101 522501176 495497035 434070946 713528058 430558822 325944206 632706774 664945280 498666459 848381302 929843773 502236558 680304780 474568923 758945917 114672380 895555061 448100483 114927997 404524548 612876818 809719044 223266712 124842289 410318299 201657631 545736861 868325704 389259655 455868771 973050315 912559211 805749974 198953704 907970669 108844607 618748365 337233602 600216219 546452030 180873958 31495049 964987542 458507988 314411439 941357682 643090500 478988163 564719019 727913162 283915123 179483536 982781888 992355584 421126545 246413975 57112411 430202856 196759226 760603743 287805123 236017513 115006651 869692147 903140152 42572451 973050315 599464890 132308944 426949087 125278908 530697200 857726693 625720055 774676479 550198036 869650030 562175311 987338962 394374921 414970657 624252651 5846552 485802631 345590994 917142381 67201264 585153459 743277501 362085782 708961293 996110368 873501550 113180285 954332710 300986573 725466375 662598963 779694308 494712800 771659024 291204164 337417451 727945475 399819639 985028196 120119791 405258651 238898162 921192569 394107167 681245307 986979354 277510412 680461614 312295194 293163703 200978367 432574758 372737237 559721144 762962345 508071357 323813552 354984220 244941364 762895499 189316180 944913762 789687366 494730627 766322936 949523279 735878990 709927093 200310706 987774633 923425933 498244797 979692609 76596989 439844957 772988300 376522496 104109503 137226756 587758769 851596911 106821953 113974176 111270542 142887951 373895807 608064430 539145297 819330161 888318196 525680592 89867400 728606265 445592033 982694348 200571382 313967376 857365781 688913422 688918374 866245872 738282317 826037466 369550735 19469245 845019831 42883595 21774101 603271778 974068701 383498195 37308201 654726771 363531440 808457610 701696452 552309645 686145182 633806403 175386085 424109607 974479256 187674314 995490304 711729722 68721544 137447959 668917433 542174118 807323389 577685865 203278667 466192929 487553994 582326116 313118337 753197185 160011999 771850699 573484778 481470328 649639596 367663030 909849712 920240768 861718112 964728979 788669917 955309322 971700002 596504739 68950141 701257600 658729065 493286587 456188841 785561690 972268299 24268593 789343694 89448509 371412321 269931798 506071910 270329499 709719999 685255804 571199089 526198196 373427775 631258035 749328448 434124977 408917440 152572142 702200380 680466368 83047641 654328522 783091671 405360121 231136738 621362799 558782520 31359733 856504738 472487054 116092425 455247279 959497276 736998850 273381628 24452357 75783329 618827768 791485980 653835451 290249733 690137132 537070717 28339641 619361199 942226755 99955036 323790408 359575688 173301604 240953071 762895499 34219315 265641244 757375895 180927277 171543240 322911588 733833744 824219764 932803155 270329499 777884562 868884481 496532815 489818399 778293990 315848437 123704720 938097603 658500662 989636378 382971900 231581819 664375709 570617749 724317971 876863199 223736917 369898740 495027575 362849230 243783942 527254518 758257047 89502181 245007234 49231025 600876983 429586192 498486392 305820169 975290444 472690277 473639693 780378251 912244643 575099464 712116854 51829990 631051198 788349047 763355899 55030284 90057413 815212585 842219218 140740062 816833019 561721319 778462379 812124230 211378106 171505544 871830352 424377975 989491772 942822309 754171839 836103741 384797100 431270376 977257326 763236458 968752784 834503268 216703212 291706625 209987068 799310516 316252968 285364343 510171234 990520150 500747668 641107000 539576259 171563799 653363326 905240622 116211288 848300292 366127018 57801863 170951793 93404167 446117260 66777680 494240704 537927888 235943698 616368678 437594793 757498587 722381468 962290736 194339497 215531009 444749072 748222525 422571310 819879242 296769911 384642170 889009111 526294958 274092315 893518398 419015016 461557403 29154919 728090418 679992606 458553954 7412466 755191575 483677292 241206903 730214420 323430161 17725304 332539426 893349466 785377996 361326622 71294801 220785328 786927529 113337747 142133383 814207621 569401552 313839200 355257347 941267697 13751349 946668247 452405093 779375355 53980070 747300381 388662448 219584601 274432329 831206189 415624145 261236200 333771517 16064073 948069399 855324323 319502414 391368274 631687691 148646314 571628940 309769750 623375282 204487906 138432838 16553442 569697235 986716160 172132311 698218593 886000547 340125821 264598196 454117729 362423950 820907314 108075975 905021297 222477784 663528640 702715979 853217975 860703987 197769228 242255812 885338303 214998640 21515159 784964428 177380884 261454690 398910514 393775636 711480823 457910335 557110500 942246855 257823395 849862254 495744497 43384186 227234087 21232042 440908264 849931142 172296105 204480024 339634076 814566651 270702118 502365551 917192541 227474274 998894912 104491760 292119276 535878750 502417907 51491131 627124883 454533989 835227668 285049472 895179098 557144118 757645232 826117490 829404309 113301937 612516110 310230816 29251959 647202707 101052875 35177054 574425928 467943353 854070488 410185421 91243134 476884554 945005211 177076197 63265982 150287421 455913643 383066710 518026488 447634486 696277131 134725540 736799987 53946815 76951877 399867166 298368512 277520265 229453768 110920486 302253853 242326994 413952797 41635387 995030739 245733495 664056576 53457681 613191834 793436809 837129551 238858353 413886327 663473587 551145376 821766619 899164490 761297554 701017080 118549310 963413681 401952682 183859955 57766823 457369123 592916676 659025848 514371419 693944970 501814258 296992562 239176611 229134597 726440045 337533930 888785177 575858606 468498027 162656621 680461614 580568273 743082974 348298209 271559419 140775600 169402740 630001780 497627011 941986435 762910555 209688608 216618020 331518597 415872292 434845330 209889268 498366311 761274564 13271442 789557031 479953188 934186160 244232682 223502769 221410444 958436882 263583235 981211030 421971453 315768029 125640208 927857506 582248487 755474190 895745910 298628361 526256849 156899628 379089195 643833205 624367696 6052074 41361109 937630159 384731682 951842886 166901825 68153430 846185554 991264292 696973130 181862240 286668310 97010065 308790696 648943375 120898530 467623230 77166204 542098025 339715604 450931251 944853021 729317168 446882429 86185665 79347638 529283123 6372611 109151931 459781691 218651181 619014348 844473855 244931543 506416817 30888942 197222095 384017183 261726800 55011258 896124015 440383248 277503818 292650901 321274729 683221586 448986203 504074261 69855308 699961882 852322707 318343955 966014114 508777297 820946457 502602061 104570969 434332961 770612376 116277093 367271394 391349024 467929729 677245824 515123493 875153125 274820686 792841747 302612725 214847790 128671122 328099679 665275777 620612990 546095029 867458596 918189844 872322850 177874865 913001465 913836764 277381683 378423693 255683668 380481855 792060700 858999575 774577790 519689732 69853746 161377866 205867647 538259723 648168162 889026765 888587414 386231770 968554803 56778723 370730704 333853367 364769255 24274634 838326292 91253094 145850307 72097893 398345282 539180191 240247410 336478389 938510367 400732791 162952094 725067979 713722283 555984974 911480364 642636057 804665585 538426219 9386333 249809649 878078751 589457897 321691139 3909217 979007005 370612206 527815119 325559351 262626062 926708300 773549498 41881998 366791673 630108486 563697902 340002154 235990018 81426203 513180653 783146627 615068085 772815435 620667266 831879701 383934666 856306007 473250761 761535556 674849829 445631127 156468317 704667535 188968510 548313166 334537991 526985946 427875682 267447735 519339267 34064593 462358760 859693496 840885822 384708583 812901374 428868061 136420662 528099334 612367979 715139444 174066182 5713363 159255130 930105421 301365421 699804961 420365236 710122403 823734079 55594935 600216219 141237654 998782404 223878895 28825945 996727363 60739225 466158999 976060902 303725667 508319429 677230207 777297008 777492584 81183387 765186489 168395604 169322900 797410092 93630739 914402751 834648721 189702811 453438146 860416189 922724023 135542086 53551606 2448084 861174659 695291647 773481158 172292734 191301017 92079653 126821158 609746404 59228326 523694202 676384484 112089252 724610735 57253889 371074564 957353653 656671289 697055375 129105154 279094063 908554721 249925454 639723504 267134058 119708110 449793449 249644811 78163593 783444534 173561175 514927874 743174281 770517642 990899040 377623485 989542020 174763697 713047491 416778843 951829903 690894557 212511253 742714772 89472047 132428613 340207980 167727258 35177054 32028784 80227730 582137191 874780276 921963803 636170931 344017475 80441357 498022229 69324355 940466553 190992588 616350166 214319742 571617742 981696437 650194612 764102001 400619639 981785735 799239853 692009826 169161491 912392179 486026498 303038976 301734148 43120639 772397325 300289151 24901888 707338774 545236052 706750894 714145823 501013922 740367236 847523214 230057584 433967921 359723604 437549237 313767464 787739340 307698446 201311345 716312697 464058122 605561089 572020742 449642003 114089961 166132588 175860508 538179449 200993361 941910996 505347743 876926396 687005729 852436303 364738942 87557206 102758724 429711646 337234142 610269407 604331581 309592763 425717869 960855887 384572392 731992675 350505074 883618594 505724151 916541834 854344569 261095246 126170227 119932404 16365389 98411022 24759846 198116932 563755732 863557273 966296780 715356899 879522743 484572307 846948697 760169871 714729373 903794410 792916996 65432197 133540398 892906306 782257499 813967221 625868353 759308867 704365649 132634299 779745996 182461130 358654678 391121486 305425384 271559419 638804176 537919664 170035385 213093264 271044382 673151405 849259911 630001780 343277554 475406405 495980131 314563598 354787051 502697152 805377744 21924981 863607789 703587055 205587162 474789959 914142078 926885328 964933467 581393791 393982818 334536105 988090789 586500575 383152018 991734442 527333403 290497459 192220645 922412293 212473215 865474496 238237861 190073216 631634185 458520036 197016629 639807270 34740222 189894221 973786086 514594961 148482823 157236292 879379846 811247572 104993572 524896104 200424369 852423973 94391892 690446170 829222586 15255004 19644520 588574467 995434152 407457303 302500653 734386445 37371053 554368391 484676019 763077259 111558678 565456054 201086478 969830686 898090698 372796065 253520791 445011062 895856681 674113882 331178671 150890721 536874518 116505722 747486603 71064492 135088166 760645713 620232335 272240611 877081093 743142523 755167251 611654150 457355410 687365033 134998759 657327030 153799423 776002416 715267454 124896868 428863804 973714660 163834512 165849849 752213326 845902321 965572475 836636254 661738994 694139612 802957225 345057190 28277316 821040072 711933296 317619419 397501575 182620039 860819847 184414047 597182357 960103653 377737479 106474446 681201907 504800088 563135488 321280081 285739178 287416740 381695947 855154409 544363227 538364238 125384555 157910753 85434180 907984256 928531872 444420191 311597571 111822964 598048800 735104334 723392465 130071009 744363832 455857975 847520396 745595635 542376314 723985211 405852181 450980802 409679135 441912032 148470397 294221923 14160314 492519999 546027579 815652389 887854703 905027611 727670142 170791359 531127763 831403150 413639361 355214881 790999441 599194532 390224318 561741012 430866099 506706996 582197758 752113060 943033914 534161393 526201166 626890834 472774763 135247313 314044060 515217109 551121740 91000255 762502682 391456874 322303645 682467555 213926528 239440073 815958565 734347340 751255287 93047728 390334054 252759946 997186942 983474645 201986500 53512432 57256642 224275444 334046773 981698037 52439937 12403901 530720655 93361249 475176013 232480863 689589118 680028741 594605519 963004759 808181830 786787047 479735944 80319271 277016037 429404462 123348053 290310690 553041068 235859952 291866553 176782695 82978558 787538261 500585240 697162132 891198657 748796239 140728238 328632040 634235608 211591604 117128938 220785328 270825084 557992828 796701543 388711214 179943206 70714667 319406752 969700409 845327457 421268764 794769027 278209878 498486392 557221311 373704966 421871475 117837946 618801879 786410248 185911427 135184793 196503449 785722983 473822402 11421450 316547429 46912250 45843573 363020376 35986373 221057542 601076029 513921754 662582661 541188571 101925373 544818517 602104960 102323900 464695528 358942771 241622347 328869305 933968841 264589533 643793865 838462999 109857003 285605967 939480816 859993896 301021560 165157101 368917588 199370261 251257478 702004233 637782282 867526135 964841172 102391288 901140130 983540626 295564329 339871433 372054752 143329121 177276794 115150623 745371602 287835616 877666051 427521811 815276236 17957264 162062726 759915475 945505556 489596405 457103969 354914255 861203064 590634857 560817819 599991100 801572309 823551769 111864684 724855824 721419401 330249815 405349360 214546798 955129355 172877260 438665279 870067725 450702928 572181552 286340553 445191368 974867188 519355459 931678404 521638884 757994956 491247960 480908146 871218300 776077009 996316562 576297244 182330462 266647244 414499794 746118706 65241735 828178368 123593164 148931232 282106058 756539763 329795955 959118883 543166456 58579297 60167109 211356626 835204667 853351712 517749359 871191560 931338375 391400507 498765404 45540037 100547462 770211559 682197450 480179579 454273088 842041120 609299368 408154023 915681908 830958881 912788674 642898680 512851329 583500802 70363013 882355047 784973487 634703223 337750106 249285543 542535978 837886741 593994658 488520000 498244797 694312088 297685945 492027046 23222391 949236902 111710024 645249429 856445767 549526578 980847260 152724265 120318861 854515155 113734457 812752989 200285072 291516697 510194310 908049911 340864904 712139868 204166104 739726054 735471007 302735980 713638537 797395966 956003788 849569554 269836744 473558581 429789751 351703376 625445083 450751559 870757766 587979382 249923550 893623436 850298779 84509306 722523156 908953051 55212079 144489336 845360534 895804328 539113537 630248219 145629983 966157891 787672395 650753165 948261225 523082937 775601305 325102171 240755306 207435735 120940527 400844202 101793145 11474947 791251537 954132665 794895604 425922184 943742474 90747137 857321616 959073811 342537385 382884962 786096296 108626310 235938735 952547119 871655092 895052224 913883036 428411063 482233376 421304751 687998440 437759809 627612385 805162134 184957557 637466785 788042302 497029032 107643354 617569219 623401029 446665125 650644570 645102134 24155377 157862331 559387905 461716563 65988984 448308432 261288786 524152273 470226991 41849647 968272975 442836870 91161971 82672242 52548489 913448972 15255004 617927443 395838881 703155024 144293040 458836015 598975116 386438456 570572056 747486603 778389432 885305093 588195935 739384277 3093510 19319081 913621116 498275232 831847422 528088554 955910287 362041962 881351428 792353451 602477343 745247975 514399820 770393624 861747148 725858545 912384113 214129638 177605669 470178865 132276367 142725384 304718347 732137806 275310606 831356138 678856601 196780216 699444126 407279813 876611794 98371426 873944770 585210386 837764619 915179302 606175261 621044632 903776681 116381457 377529486 501740595 311180464 951358318 911362312 707234849 667468639 566710036 71239125 974009258 155204959 18197620 449353740 453239388 501311179 193067322 359360807 56386860 245715603 773780375 218107310 408851066 365183237 148943886 177098127 517306876 748046420 424442141 404866686 75273316 953704034 409100313 739002968 874580319 530892197 608402030 716751396 710700432 942164286 634623946 89296836 935492791 120481032 419192792 728606265 361033663 213920347 119264397 876181470 837036827 908652979 549375509 392483009 587197475 70297747 626073020 782431055 536909155 353954485 727355650 803985274 418425552 869500212 125452269 42572451 944182845 403637512 910879498 734241552 793497408 421998827 469777793 464604510 145727666 474632811 179595084 946373447 578566123 851647149 603304056 459227551 963399579 323139251 920997474 665881967 233139294 249907152 270758571 502719164 121625631 761087383 470169465 608355992 994817670 13213241 594054923 575485587 150890721 20141643 170826027 318559377 333061769 913836764 684908491 39725236 464862146 555558219 940691806 273793530 452747389 641309441 886760598 552259711 819715527 674759055 927605816 253074509 275975735 42831524 276557500 203096056 681894912 824894213 584867847 11842691 880305779 928016685 158518041 273548822 542648578 678683965 922279473 978596246 302136389 571001516 380827147 878895089 525011539 104539130 158668680 5497188 874473047 289617168 642621166 829995887 251968926 246413975 864962428 361907654 481550178 331639688 771498184 462785279 219836740 120467052 576274138 422659876 900729761 141440340 518848117 334325597 499565332 52665014 9184389 382827917 225799125 654901103 514774380 627454405 531740555 97692965 851513121 219577602 344721779 244880488 63291731 6689400 202572555 502563295 579394999 664372022 116390062 401721856 570385114 892212189 972953164 973325618 415878448 656627909 519914395 872283825 873892931 530136849 542607344 871378815 861828102 368094732 94480193 552890862 473759643 848388906 754197011 466605616 412595408 5846552 346913129 556649490 990835629 226932618 38411953 233624516 966134856 449222955 595086234 899835533 803702953 342971345 194957007 260503495 427704690 599867782 530220302 334956293 993165391 581499783 809025459 911716435 987175792 385907885 187204265 710411024 666937566 94891735 218927126 537250318 839530970 540585496 294944263 464105520 45794757 363086703 829658315 122196310 608598416 388914539 545616551 311437720 150394346 738704100 453837382 561925519 400258164 154467691 284336668 621573996 592358928 106278197 27536694 779450184 258858677 227394057 714997353 211932071 377103735 209973085 629530643 609386934 753008925 325409376 360977818 203305840 776349379 339794701 966003527 619141048 827065010 318710704 981440340 900327962 613467544 549102514 863565483 638121606 180067893 115924414 77935239 929598933 224660522 387415422 949933687 254929387 100748180 526957637 149236447 607898307 855621170 181402457 700673900 479598560 842010264 823161362 382770418 761087383 445926815 268331580 645138505 383498195 505329965 925490230 949315319 936962186 149272224 51706500 957818882 858733917 766942152 899533366 194070612 137582627 442541833 90497997 569918095 213749377 916674972 267761405 649857558 694767755 939804680 735505146 942289092 154229666 686632791 996184183 497062587 280332405 232468400 685160710 340113381 943937590 410076631 777583624 104085948 890244811 7522119 304212988 2700768 403820072 377839842 849325576 84634225 762473802 89232722 678825977 221522247 498954880 370541275 57861183 12204782 550243809 460486200 915066730 53803186 643123640 145252396 836382127 27014708 210580666 653679069 783246215 717599209 390650081 273994286 219770157 590251860 783980760 144563387 412529111 695860674 137828914 939480816 671764080 221946849 266675184 953635559 792353451 959510376 747017030 630959359 386620908 376195448 967397402 469592410 98255190 815583911 639670495 897512994 332647913 473126921 941403911 893245848 359016724 794366392 547626220 629553637 346193205 811923249 213845729 302796870 913173671 815374055 823708807 697741319 246199633 789025828 101447114 834754260 329881608 314980500 448603774 958534478 306759818 490954041 19817206 247394708 511967147 106200608 714144328 9616397 312295194 248750009 295751667 406191150 859027099 154075075 538083342 74501453 279279122 309922807 384309143 243832740 262723339 858776372 634723148 385252057 181553422 951423771 960716205 153035905 101451781 458830591 381276344 892439237 731467084 262343982 348832496 692030139 82640638 36533938 353568887 130461133 658279250 917136226 229333407 375120583 677547599 482738617 420878675 180667848 884732156 447362947 585760565 523356625 612719738 548134493 827644400 55574210 628492689 17307235 308722140 263524363 453967300 161443715 556901790 206405465 474793854 673668635 31666534 685254773 759384732 335135303 314237330 269447868 688724850 794178538 955860566 645025573 39210954 535319861 360915924 820921584 791469036 774750502 253327637 562239091 754753144 222191022 458716560 730058585 846945397 340514266 600843485 333034066 234597617 292964361 536401211 737233870 529683218 461121826 221766885 773602303 790221617 26422466 713397253 447094939 375732965 256306053 373609054 714729312 650891183 118518115 893591187 749488806 169933217 325226933 131548596 932226843 37308201 876423375 992963360 23667822 626890834 194593968 648476485 406732906 203539923 894858057 521309336 981698037 776076449 188590520 387535947 948104917 200953220 789826231 232068021 85416836 619053364 21800933 61556704 78701927 788693915 465891924 452697561 427761618 602220739 34734688 381413836 470611263 551070209 696990863 380746651 491488237 61506938 454808916 380836595 239303309 26758893 865579381 902518654 3645337 279178876 724614193 354813070 906521396 989370294 244914094 714194951 575490717 530054084 343815187 324550354 33963043 315934570 711888209 410415947 196311366 337821949 651800856 188758815 408936293 320194633 761108606 271335362 605093977 885438436 839123847 906912610 880017099 925512958 185253775 952123770 187598338 999396304 697162132 807162666 684817296 68303963 69859085 738051624 701459122 417464348 8219155 556862746 256698214 919560739 7549212 119582032 60533222 381247824 140869246 265975323 962498289 692425236 516622261 407390550 380496897 290258916 929804803 428820555 62778905 950538395 362372216 663904185 117530852 676086953 747414939 184429348 950388925 616656572 918337740 59790047 66887902 479810629 407704642 985592857 599673102 171690850 411404162 656389837 539660720 549485128 996376503 816319397 986585586 551805994 134037152 287398348 845556013 875986024 165147234 481923639 92523942 189984471 70815212 637868040 398999899 938943632 209158106 18669683 945608599 470257842 274679642 692803994 263252188 280205266 290497459 819167814 924024761 310934448 27661669 38827830 560069366 162445675 369153071 488588137 376817271 660365689 385144314 319588356 834994359 705638957 95735763 749908278 640451473 314489832 560902462 659025724 871278354 684737111 926788507 103883587 297504969 186048892 667624445 480033553 982316193 340989314 57022159 96257668 626280509 453715631 50919291 238444187 84130800 2996489 883658397 833617713 78163593 324020789 425587773 48630570 161366427 51696329 796425311 195919098 765171561 650337273 671115731 405005493 812643861 620469246 743585993 578623143 159989214 519579724 735240066 263503175 806743479 286201662 261095246 82338184 687717369 970957834 648294098 487060171 744664013 479501793 479955353 789735417 682360207 146943147 34201449 993619855 943241550 756322117 17753623 290179524 552418138 50170675 320995056 586596744 208611375 77263211 466851667 546554057 303725667 505329965 696612729 236972905 130071009 142570291 670439803 357407977 703581525 313323619 655128873 268285267 71285364 417013366 972267976 275912984 74412515 606895200 622280483 488821222 246930359 838229352 41058196 762200817 245131524 126069453 749119214 52529084 325021520 487731092 534828694 703010476 663148199 40045734 237485273 456536815 870379258 971589683 32922813 824812523 849956795 523792024 392179220 113967869 904320882 288124635 43653802 374428310 532562541 603947097 42553919 664898778 107305071 573427710 855825398 368095525 239411913 701808326 714156316 381683009 835962065 803209786 721177433 671626132 330420141 181177172 63569797 32814944 6586035 882096621 980991623 690325725 552266582 14906216 361057370 345057190 876043877 123082114 480941691 463541240 889438077 401563019 333776347 360795572 419509327 615011574 266372697 898973235 848924238 442683466 309313423 430521163 342553764 613804617 159376683 773293251 10321502 70297747 564282240 426749328 289254877 403020723 907487318 238473938 961780414 412318031 10051167 696219040 161397649 330257235 412459778 549717400 25068691 398180607 759207765 40269073 213647145 741316690 820397617 488618440 993948924 850429963 408495702 427448222 32834918 109032805 15825546 867437555 53685464 621225189 56069139 986457076 772955957 745082599 316119334 289619091 925035275 488224943 665101748 176488805 468111810 95933383 484973840 723411802 352777566 913173671 925589626 463343580 656094479 840536299 855084157 353779146 707620455 314604846 927248022 502976207 816823812 379089195 202288294 187537926 274784777 922585774 729607841 382993765 800737672 205766826 516734637 445011062 8506228 212580640 580288296 492503359 857161893 214359025 641700100 932864402 99121778 950888960 95800444 376789615 599938754 284500887 857541861 575691833 254527147 498606073 971441672 434126975 816575626 415819608 790104354 864569720 636321784 383857353 333939261 268867479 743996409 933031042 349909418 861095054 493736167 933787177 162093550 453550902 456865360 130050273 301727711 242065855 932305520 761983564 609511977 805381242 790598535 320081207 26127331 24521081 49214521 860724254 834388082 644006859 728007127 531168239 417106174 517004634 459834563 477920572 543786998 966908136 670127524 893752532 371640196 146013940 896310691 653838381 176709748 164167723 866728731 3114660 987222686 582776154 941647788 996151103 871041192 575899201 821527025 292607501 198397743 417304717 395449214 984711236 258783405 615563490 389549287 774038614 598181386 31139084 886159598 952549203 826518682 443423022 472906671 467189924 615794017 110600183 549670634 460176202 144666299 343877841 747091563 321296796 988660762 239985469 324029774 473045646 444412087 492047421 387020334 915681908 962928895 388640651 728933673 312174764 819218475 558386621 437557014 917810160 86084425 811676913 781619483 219886904 196121680 524134295 606947259 978119214 950072227 798675536 596021128 561571730 640651315 412254760 875645134 271180020 363053866 230362533 444265510 143558551 418500526 865713521 896892978 489849547 740145607 203776850 971396577 432618396 481140321 484493736 21271839 999511333 249688770 403229903 786628140 582716702 50609291 540293303 280265348 686970927 11094656 181734677 871708112 761386327 226684661 487605626 103034892 215880983 519242374 771850699 53629847 207208737 388277855 99304833 132855043 514413977 565456054 28949754 128666480 962559245 865708269 944666904 495304328 728409926 509127270 182353362 248384141 34395313 74386387 68134405 148502352 199128274 401779583 401157163 133941331 802983876 269098146 841144939 537630214 112252636 117419103 816240490 2823875 709372501 37094688 273898698 401518967 331765606 722658478 342545490 17491309 445727047 852254065 44457196 228440453 968866131 868319970 577500468 261155904 805851080 66314080 770648868 69727087 782680220 402682157 318498447 658545603 31508957 656701159 147334470 780529939 267175512 183337072 507558901 625977058 373826813 160062573 991617684 647508684 486717734 969920160 147507532 680495009 834569774 175576533 808124180 674232998 38615336 611792059 697492278 963093195 415803229 480111192 749328448 970338035 70815212 838965960 128824844 213188942 284750671 353403188 434427973 125602986 935534893 904778829 200830106 378382676 834999948 644101353 68567525 38641021 584881221 841464842 893135272 514686484 395238408 686514208 63650108 492665017 309592763 869332059 971135636 678683965 999139973 35800670 442459093 104146622 235668083 237595736 502563295 129042467 606882241 268713097 104566516 341399771 702406586 473326945 231926684 643616678 857458502 16109983 271460617 876552061 134365280 322808263 307698446 630534529 16246703 417808418 363940913 68892824 531741232 530864499 244064091 191096897 444913637 752080268 523022586 276591554 366975432 885673263 434348956 57394345 613192240 769825396 545634105 175156283 766469471 250380455 667051081 648846042 372006376 395908923 588876088 585811149 7053161 815652389 266511936 942248997 57935565 794460817 196618988 487966413 52035225 852993820 634623946 47137057 82652237 422325885 730395044 326857126 797080476 69725849 782383100 507652256 802214905 964568646 262051402 753858092 158240961 999002628 986087068 449171816 72097893 246204249 984758040 372201659 868505500 305934011 112052358 516989986 64188576 2309251 214748523 502523791 718747095 40175305 595965190 714380264 917810160 322630599 201508623 964548037 565874365 616588647 858749166 530344390 986465526 973864785 36258480 988090789 616152661 355626528 552989064 113221001 339898927 782162301 191024030 6980679 911362312 586648260 627498331 369023753 390304154 72463216 149013406 4687436 186212988 82783329 341054812 867846598 362835066 967046650 159278764 60750510 21335203 701892090 939834134 17814500 758774702 38213491 688222989 572069625 80163971 994982990 257983759 549526179 546968693 20325094 655356219 680613987 345459259 483440525 141175169 197246125 394557919 374927940 830528269 173962899 530718781 971045883 998239278 838761284 497519507 851969671 390837444 815996620 515920276 742957241 875695410 992441400 913257104 490712263 747779522 6070892 372324395 397020079 585281678 241450252 312795152 48556398 317157477 476053214 486149272 447336119 316703284 267225216 53419266 608992270 911798660 62534723 29667013 269624746 262090315 427366245 367734907 30998888 869724992 48913613 194113531 348890972 550923325 711242697 579058402 51855929 28015623 315179064 189396394 630370409 533916964 389109344 475628297 499582497 430353368 548489672 585210386 853303108 645076547 764090886 615280363 880187381 237830018 643486623 809145361 657787314 976168246 289342782 903038257 542032792 718059391 505484641 308959703 363769465 984758040 176028503 363660355 548363179 337611069 813182207 274801970 463624899 671780036 443941033 449287999 376823903 18701719 143629116 713901397 575325650 449145877 908271712 462375129 467033575 551150539 671331638 105911303 731917652 440876492 74664475 717929845 723298152 784621118 659691027 896614195 444072976 545631553 131994655 468694341 752883843 938812971 635094539 2179884 347268334 499861769 665770513 393114210 626050570 713262225 560731470 506294985 639606740 689972685 406939167 900761183 80474748 383405849 919217432 52035225 503604193 927065725 942357660 627034165 795212933 102569629 485778853 958553011 952936866 330673640 447249400 488336146 308811147 918052345 135291319 226122205 362808707 780027364 557350398 33481810 581118415 780945199 13871782 894593060 997758901 336406201 281574366 595356246 424168411 713889777 417468912 291179964 512881680 320661989 649506134 462904462 495960341 167180914 27503631 580292966 84815512 704362537 316518042 547044861 325792468 190700089 135439214 566720836 501660164 930927189 497604389 19412160 658287190 714312479 872632152 499827126 829168908 689068989 259475320 233067591 571617742 398205910 725429636 800125412 628826193 823248168 47596814 412141107 868518970 899835533 738341942 247799416 321070309 291381911 84596412 203602279 620359820 741493916 337918195 170754877 557511127 193469560 901311397 211285496 686137715 509288738 397407865 512310018 836644635 523005884 10541693 111682412 497268510 235687129 37461632 482754997 667063420 962534692 412885240 547709278 547498618 663450224 357681754 977123062 626739022 629869806 426147007 274546553 605139933 167939116 458476965 943431253 702071854 734404931 43120639 588538120 192756477 796701543 960136227 975703385 502557668 48359336 220582169 519242374 186286895 586374436 374625511 91197156 177380884 953648499 844137521 882227691 276643026 9920224 967955405 922414522 759101002 347367987 634000770 794013046 186616145 976834440 574956684 996548925 885509515 946065475 877078575 782332203 476540541 615712004 368931147 812880799 797853430 535203566 783761542 967997867 480371492 876103211 249031528 395752064 318493074 234365568 41609447 249486743 308669477 29232239 24037124 744083833 567078366 195670135 483105191 727111227 998290939 960097059 629400328 380193329 993202030 62006395 661307109 960407354 411406539 192083387 226411134 613381077 559532633 241793799 371130205 329637203 900418232 329158271 640309908 564996909 135168011 572544595 526660360 706896223 279110243 547942642 717172298 237669407 605331443 803458051 376569963 440812475 502365551 630622421 913207720 362758380 570130122 629576256 997011741 300135538 140047859 28743692 723118626 762023876 245233887 548228428 953771616 301502849 645566078 773141002 716927504 477242633 567866258 996842544 730651347 257757366 336870747 432346674 401624635 135775843 979482919 94750695 664254001 263776639 321274729 772813547 257839498 321520339 30849997 79269521 743819737 51163037 57944596 728937313 913466487 413249648 513668894 663152481 653021493 125768698 596642327 570130122 160091818 283791418 951449840 78775106 972404566 466679357 403546403 569211849 675520657 903810794 395437067 803475577 625664216 839390753 676801134 98991227 841387880 160311981 977053290 364160121 662582661 962121143 482399012 326952641 803935110 400732791 989015286 471208553 738177603 96618126 550786068 941791248 242805873 185915246 179500461 777293856 881256678 390945551 200099504 999972943 432918375 75856142 178292647 608342633 459655976 657683484 582407026 242421438 585300351 466032188 27754926 648422494 266583068 227529905 514098909 562990789 696876975 939109819 344557061 697591237 755469923 394407110 383813855 259305356 316967291 803485454 943278203 668368592 644932353 747691233 13189349 167751062 829514146 404987669 183759991 811278851 51862305 590845096 74538339 546412595 755988164 456857385 901739163 467431697 312661364 281877892 747390795 543349517 33409914 312164053 814296960 699737250 781467814 501660164 194080820 850140199 654193629 224985292 588174781 818769724 283955770 599200949 916248220 960089105 746298293 809169349 996842204 344661344 296219140 52012588 418411141 64485213 969288386 503402846 89524456 193891057 695275299 141339907 27280816 523437331 540106285 338931095 827005902 451683814 713722283 813863654 350837755 771435420 229837966 516365274 134969377 145671696 600036448 472972500 277449080 113610089 168663126 331933700 323694980 231016126 793997406 850004388 476303785 506639815 491248374 991985457 863315316 523584177 305622515 639961711 368136562 647027592 293654631 864554302 437403295 52255811 372840742 409836151 434849190 179151145 320213827 328454332 662693136 468720448 659521611 464739937 270850728 572928367 377660153 315991541 131863681 236368453 388215767 838649789 427496159 929460903 712743771 781675736 278835937 314400370 421673793 550458756 299413618 107894938 23667822 120213968 644041115 948249180 453537269 570620160 364525331 580451606 831641387 532060379 878560872 229282989 874057398 89296836 970111380 973012064 369671941 371407611 553998541 379502606 623375282 914402512 82626270 549670634 967015135 615464467 583868668 375417904 168324849 538824792 230824087 198984996 660967745 567290501 409946061 283060110 456413088 352555342 275079742 778350459 552380855 612182058 165148800 548091426 399946682 826176619 468340463 266511936 216252339 957389711 915349230 841829625 488734690 224062358 962907560 47048610 811039013 531041254 857480758 582248487 682665731 696400166 764295550 542490028 943789083 805545648 430734808 165578785 492562594 753973124 484886371 697386577 153530374 132075642 741777804 11161770 65211885 24977742 631236625 218167989 175211036 247880212 671773799 183450604 60730604 586490622 575788884 775767001 324744732 373926768 973720742 496651065 693435798 645242396 708795636 252930492 867025049 101220925 808721415 196121680 329445812 117116355 972273822 775112592 90757160 704464355 732885005 676995801 934413819 954168062 906597767 522066007 983990798 215844023 356802079 760116474 966438035 801123935 6950239 632594685 590923150 225792835 135558390 725429636 771517459 611516410 124694975 796430102 843202191 59014246 963939083 61884904 784223967 585661290 694975946 343617319 305631113 288470904 757375895 895862086 197072530 169851706 178534479 944115010 459110071 68886340 882076485 397903393 692102490 757573332 716581287 422100414 445811960 465982169 234011703 503526708 766979009 188740264 477610873 637156754 748462985 303170154 161512869 526313055 467447136 501605187 681796504 980873117 217019126 43166159 588051955 149824438 126593176 379928618 285430618 310138691 525783178 373012621 434427973 966730917 580434264 525298713 492758768 60730604 28644081 383791787 189250503 162952094 374505376 289911797 281249480 437269348 700774032 909107697 84130800 461521003 580005003 416778843 668363329 121838947 539459247 861866653 711709849 418700383 607026364 423841982 480505964 110652901 386637627 931970027 395815020 214409445 683535061 999467983 65289971 733683109 616077949 596099375 533547680 364433193 196283987 581049242 42202413 782703388 740726976 453793745 388661980 761756508 931277823 486945436 852398108 993883059 974009258 500585240 904800757 171560113 432631952 57592650 480466068 290249733 286227388 219122374 540309207 705910850 795685175 833929654 38975398 927097352 149275696 529628908 754468568 360434415 695671056 580724885 655234572 64752325 610568243 450156206 52521174 924024761 544198145 362622670 501637713 233622165 322256704 444620324 408406226 8367206 930560423 235815573 337627639 327678430 176958108 191885308 737491354 892789297 209258890 405022481 906777499 715271806 112350901 407126684 18950873 5857976 619001782 961263314 8102464 980853401 589103055 425106012 312545741 751729673 206387327 63569797 65110803 585804509 362696510 443008446 951387967 925503834 409616442 608639413 552125858 696798302 907568012 598187725 505186126 696690474 259226805 310161138 897406844 620883217 560699782 848807794 178412373 947563614 500331187 312346973 249571845 260596525 979298066 796128765 852395116 539495065 738587233 332837844 881594083 328822730 162434892 974270779 783787502 267768058 40365394 753775257 148169240 231591240 548337413 791051525 427733 979420658 765343363 238635092 32020970 384120792 90014457 603632157 36288775 982602593 815522493 261006743 646536207 601363919 350121563 426980784 28525752 858837891 517969245 40818819 464525866 404221186 463527456 791251537 416601266 197762929 668021321 597585689 507467152 857979946 586158717 287152147 788696013 963595632 102925001 241341736 148163625 384478296 256650314 920363033 792139546 130150701 150905824 642507033 743925722 899989818 422617604 764173035 446297491 500772670 661624176 56592426 653885870 391081116 815481266 844080953 415456732 894082163 545968804 481975709 893750442 774126003 388179093 981660537 616043604 554508905 580513217 963352757 283783995 206054582 628626114 508921140 667186187 433588493 647884416 149916206 729067160 131794192 668966523 62864541 856353921 867817125 952264019 593588278 253706837 583312779 475028079 657221073 511035730 347858862 857774254 601631432 216423167 288385412 352253635 509238491 678707017 922920711 144132730 918948217 591144733 996407684 772980729 136939475 355636186 915364033 50930961 621345105 675506168 31466462 623840541 38522 675455402 386377861 272873862 506621635 842635613 648422494 75245464 954211680 575234189 533652459 159278764 448807145 31139084 545426716 433545868 956230266 986153943 511362976 61274465 112856352 288011131 464469670 104109503 618822553 638148627 607371019 67092672 660046731 509645079 811627489 605899580 631517133 808776798 518442357 301833191 825472294 571720535 559650917 504483710 379409900 867193997 635347912 313789404 389171381 54682865 951387967 429790912 410165442 556430099 275537268 121299888 193232617 598178458 508711865 618853931 986649907 584640639 604879080 357824214 128029871 299238461 898008952 722483689 981615260 411273559 796416330 787315786 908512676 9455367 524581711 407783450 692009826 611347137 971908881 642990317 28225664 501928750 103324163 721145218 766521465 762394940 56513999 149121713 173947816 670676559 54316047 559650917 936275268 701443344 627981083 453220601 888147035 659545924 874640547 9652276 876028531 28884082 343066387 209706288 127754658 790476160 262196608 199966378 146461005 187516853 217509254 726840785 487553994 823988080 8953558 87955134 84829525 77380549 459006635 895252253 655598175 251864927 28757903 840713459 688054972 7781384 829355142 599914643 367508556 512262090 411731962 792575987 237007409 754468568 801048117 471429362 886968873 826250821 415911611 398837965 61703296 313967376 55029039 210967611 682565808 739449595 420908532 446588693 9039671 356822441 788628830 427592043 322582516 20457588 195942003 77328594 764868815 3352131 388427914 851283263 471259937 271761386 547425010 620071500 1792671 993630269 818185239 642706478 904006288 900211040 812335544 727339911 283058612 731349401 414360992 107834581 843108227 500430629 892762922 768539753 506545231 746601663 708750323 23015777 314860560 442322083 435276765 430061756 260029949 359715268 460748945 807351269 603324925 796546398 252187353 872278707 339640092 940112979 734188201 973417385 150655539 203759555 832094829 868319970 275131034 874827591 683717026 228566784 717129985 396243146 10786974 662953925 14298022 382985693 341957021 787386058 432734339 817174501 583803946 596611259 69975937 42708981 626239688 639394083 356004779 686715765 794514770 393520735 919481799 277824991 28086902 180432014 164076724 140133965 836474170 209865804 562916989 20446313 150205606 493216187 73245658 343382073 205207110 502705250 149494956 596398193 587286820 908228329 633230847 749030996 856306007 903094417 330996738 5592036 735757258 573937404 736789354 247691132 816218575 589600647 655128873 681503023 602111382 98132730 225560906 984466987 168364915 283322651 514093540 798199217 206074047 667407624 275141469 696625772 323181192 770193310 73710997 324520960 960977048 296219140 291750729 202430514 152197098 514927874 367626151 842587930 989641172 127104294 368143111 958534478 601864925 176741736 278835937 99984332 26829629 270387902 56066412 857874088 862352514 836892773 726809693 810986042 956287431 110587185 860039511 105406170 949066044 975529414 72328789 261526157 948161294 494939394 861095054 817119192 791469036 249925454 946203609 935966323 209153665 197048948 998590628 894463556 491663315 956562187 145413694 272727662 83272397 308503264 781456080 410063690 40526573 537781660 492054971 303559708 588881375 460357950 966449658 630268679 20457588 604117993 383681639 851849864 265344181 212869085 504940548 773251257 343851448 587815292 470212504 953983428 797064188 207676189 580568273 314034839 695313966 300722821 754919234 292146855 333916645 680828533 2636528 964591723 72394680 820306307 440703453 281452852 957704555 513608770 370326730 304365714 883572006 416935820 272783565 162521259 454815313 534128677 394739801 17279536 134120004 648812004 580272662 527815119 908171329 744399151 457595275 106320754 688745272 856645125 988761023 665946440 623213962 295968213 167896720 105858303 70685677 9903044 764201156 246896243 504645669 965737421 316506160 484676019 101740695 334413862 235990018 893890320 303482135 56566061 848949110 788315884 562761710 914432730 631522955 731299141 918287450 847523214 808984955 411147500 115558915 455973051 124521396 134264136 555227957 443400729 855729369 58044580 577853050 132485495 958118162 985184738 598548622 175817178 428820555 69481982 339838550 850298779 172240118 618161536 475503351 828657996 577070277 491886468 733085646 722690827 199880486 425740219 450661082 3254028 33494301 281192513 830429979 72421698 898973235 601157207 858236713 405893564 510237603 298457175 342679272 727589770 275798479 176401563 359990337 27014708 248371578 516060632 241651836 385119670 445494518 75245464 41872135 672081641 689235953 172072069 708367615 561033385 574974448 589441946 885901385 125864786 72374656 967225898 266004727 742474060 150514759 74447677 868031029 677636195 112949173 774243998 294020847 675987399 730566619 860203801 926703063 453284348 584322193 767452174 313836900 601854888 978554973 574571848 222632194 406736028 812908878 709531265 283932983 988149858 348169104 106709570 882096621 725224514 365971908 551132547 927317678 70840144 459906549 65729689 523912456 136709254 50498312 669319661 74821262 988182898 754275675 680958860 296535211 656183375 5873943 744693550 64986826 156556795 980432042 282106081 146811629 524121798 699631488 92756446 870895223 741319961 462328900 904474279 640566123 489988618 16995757 892530005 160405693 829548860 614756808 657777829 823006349 493757842 982411270 75119969 797810224 989082954 483507614 742871351 124412643 904900167 400818349 298053456 894463556 163383055 888098781 683026819 512011091 343698769 803006982 451679586 353650777 503182972 450290743 775043229 227531693 218348210 41618146 778910159 41609447 65795088 323434436 165341381 211034335 781638240 624049778 671183208 252437542 861826061 853417410 695353238 334226158 585300351 518364248 437178406 674745964 412395349 33313838 773293251 245135297 649576187 437004488 305209435 166500619 798865123 449968545 613479086 546060084 860035765 709841276 939804680 324017991 955753700 458025185 767507770 790439366 319572477 890309261 799481215 333826443 687003908 773570320 92897608 380026064 955324853 434524855 367239247 466763991 682722202 662675463 68998034 666916705 835065515 919468059 247004382 865713521 331643979 523247563 391528034 907159757 942263518 682218922 500091674 399220211 784087236 808851108 248384141 497832935 860369530 74529885 960188626 37759362 451410908 761915695 773427016 474314615 834754260 460765646 443767825 64458783 851849864 596684538 750760376 331872617 721013507 471228891 578599489 480212678 32066524 869218510 657700264 350724097 825209121 630697640 265718453 495510556 220250907 635243410 948952683 265631614 955632807 680704956 767306082 815655766 554913930 960855887 768984591 133256696 500747668 920626590 32327386 557221311 158568082 274548341 282849142 204366684 2204251 714742105 202392458 281684990 413573972 756419626 917284977 721492475 741563360 283797859 598975116 847476192 585875985 365801813 253089452 76314816 56842228 540081957 501903176 263877287 66682396 145855439 866572794 973752108 222293920 824095408 866998495 335334837 424413070 374737393 340207980 939149086 2615696 171727196 394203695 536196773 506495325 803004695 604569733 245851100 208956135 305759890 20846838 438596613 683792548 403060719 233720886 652938965 209140356 623360855 641042946 268537277 931055989 64066172 617197610 630959359 310941033 323274859 230465269 563077808 352245751 622189630 877012850 917314470 462859047 20764614 173691772 620387440 898659983 286699032 584345398 8879624 972971056 744151269 236794664 441805870 961703735 314871064 605073159 952822185 630905154 893584222 65035188 801114515 383869818 985023688 393048530 701808326 68349414 41950782 951915243 750902736 817052871 963099943 326551640 67852669 747318779 92349328 199054745 163805103 967968482 721883172 194170458 362086003 653677604 132458987 168500637 763657041 600041901 153909141 346884385 495654810 544786856 181818071 763964778 299113841 978085324 920982133 716837037 654614013 333904383 414979086 23723203 644620304 453474084 333904383 378541355 372474751 990044487 856677775 317213466 426054171 621671786 655057168 558669478 418126263 192855337 56778723 724015655 352139970 864428366 193487030 160979496 130625586 307893459 291204164 601385069 169692945 518350190 588964090 115139409 300111057 369635060 823753867 54682865 342104942 531086418 415456732 954528850 225263136 938318879 904040481 785304866 768492535 672420358 425106012 264274415 505256334 909461032 85018195 663654731 54422977 230601139 865569976 966431765 70278333 121639780 333668455 456085281 846527044 108653261 283413148 11499357 17677089 212413528 234022505 186808054 342140794 401218193 480657098 34523605 657595658 691954587 611088048 156550486 64169606 182977468 718179844 811347266 35233857 478866717 326440565 173491348 901854769 574936051 316547429 51838407 556473259 800745859 552128016 117170424 199781529 253506445 360372924 345589749 479598560 249861751 210740728 318787249 343809065 316146889 150368216 78077995 50507057 872146572 488880047 282030543 215591623 763608703 723431590 642059210 413482881 207840030 242241378 321391102 882587655 751014924 291866553 691996208 847740578 626169212 852754648 294436833 151951372 885944691 37295765 330628911 532431349 918290700 362322750 965377803 316643802 597943613 427662130 22989546 916976972 727670142 706817248 691101682 552011070 120291641 722222328 202611317 981807389 940784571 562572392 984239990 230741870 451483186 336127854 730784434 619126079 759288720 464408081 853631 232048970 624080194 821825235 488693948 555459438 173612081 891781731 686137715 592174811 476236966 288588993 637991947 680673240 778350459 595652549 835157605 540965538 413879748 368077147 164331000 29255262 852214566 163602858 804121645 470089106 497853731 513827029 341753073 740619064 23368015 440408530 973236522 867742733 615587228 853230204 653315054 870323411 880900818 886180457 19412160 81054744 646576457 935397215 995718024 559303957 360863110 739049755 368314205 133131933 203940087 303678657 847026541 943654446 350102276 604330648 718616837 427720151 115989691 763261340 961304813 133905721 47210128 244462460 662555800 520447256 221600134 183185200 271163342 753850351 70029235 490130410 508285672 731349401 705275789 509973691 22984052 10328989 530370 638220139 875531670 655642943 361907654 779135456 866546580 126527432 713713535 14594866 149849866 835733171 376579479 116381221 147811620 645096328 172133854 427109873 908271712 259604241 23396491 90133552 119298376 5752422 601829991 172060593 958336957 109697700 498381870 297566446 222381874 289421818 926585704 882537104 150514759 77076114 704170718 480020713 872900680 515311673 236150083 222838897 690181633 309442968 329425114 664962504 542584409 420384658 476055108 795926776 311292310 540229834 51699516 213808277 752541756 559093175 364611656 893612654 421893160 300390308 811120034 486456670 321099799 122792149 937436793 186616145 518475620 792071569 199408556 461302921 628637778 314839769 810273544 770748204 745153850 790096266 752727048 713857341 250398466 265323961 440792711 202572555 592385107 982491636 689354483 35316775 509431720 923040142 469282426 69900692 406876212 554975612 12090694 268608470 693362988 39719873 255610402 690135803 856231536 853747548 111184639 847044057 702265685 946699396 794013046 824095408 321388471 830717267 263992313 307816088 26775747 461041652 933613890 731739797 866890643 977394024 529570522 358194305 118947923 885524602 226589290 662077640 78077995 437867004 99984332 457444217 208184788 869709548 795430579 917388226 189109771 460104720 478547889 664025196 696280791 865403274 381562804 758945705 674740577 574072746 510199370 156192005 738856453 549604659 762667874 780408725 324502656 775566740 621476206 519926666 172424383 488499732 57443670 348705339 126793494 726260206 123633463 447985239 675740045 343340313 157513716 709520356 123983123 437600494 567721434 991361712 793705164 259307786 31150138 572389985 770461954 758978143 862434743 888496249 248633244 424767459 599812854 930473208 808627830 284041973 356703653 527585511 100193271 173676605 61283207 701189471 407357245 759428188 869622210 363792280 261155904 266004727 820526354 193479933 427184652 309259835 380427833 330462530 924635764 194192879 457595275 334358656 414048003 221129443 737191872 466843520 908652979 123165955 300824157 254183733 992222321 385177393 366580074 419750441 891667689 700055970 252496027 464800207 244292698 286956422 137243860 225869577 856626776 716962276 350875542 750630523 965726587 712609290 121462410 12393787 859022804 936538030 356100567 699804140 217223029 608525937 27549310 21924981 952264019 113035768 683353401 729793360 723032089 327076291 84910682 913893121 399438513 790784755 472438628 252593804 317848956 348671597 200539062 503097725 380981848 417468592 595514253 48931856 438821936 988544950 988258509 257793906 328072296 879770014 233552807 139333907 548091426 166269989 682396052 776840702 667989519 845581689 905610519 973817862 943146167 371351398 412655115 508711865 708117402 613706331 51768556 783666186 170280220 722741584 240391558 989809959 30101754 172034624 901056708 856410697 999121875 16489249 211699881 318866975 662576427 23599157 428829391 937311511 499803215 443601072 42066593 365347725 717059322 181273541 848507490 529351939 810381456 42831524 856749432 111817710 858588108 138401767 143932196 156766601 665814782 419239727 191978369 280876361 823599052 192577696 898680569 690491025 548131392 852723043 532431349 531446009 906365763 227228851 696952899 431771092 68655383 823406813 662682243 586529905 627562240 333075211 149002053 277239884 956333985 748308803 800078903 917638421 557506463 400686673 625617570 351398319 107516090 786817845 712708756 549241730 535326012 285542035 755350420 991162427 922070476 864131465 598742240 53723928 732368884 572530863 922773041 275863540 642159610 29687987 336670445 424734833 790944358 553305192 564933896 929873677 505300926 667179929 56143536 559645444 764268687 72328789 607866838 675846093 607374104 170801541 431373480 763370018 95082307 808409551 875165914 491278951 394371003 155439863 240757855 425735728 609356116 89539499 99519994 546797183 134772 772678096 978172116 749458284 143179987 456452807 529444776 606773508 811596694 219815764 796425311 630468627 455146060 54007660 643367477 304645104 873501550 442524509 510054124 158187697 917688654 103470022 144563387 420440022 511208922 706601343 35363640 265113422 501515844 999452926 703680796 151538176 510951097 38580536 826629991 808097889 541818998 44702843 644597257 20030545 4223642 684535216 113369419 49206135 733643753 449927231 31495049 937750352 50266139 654777433 721013507 682815338 448261636 425259653 704877206 691135139 420143306 942822309 65718846 324040368 355214881 122491354 900178730 881300588 843560205 826980404 750822677 839953672 21332321 118299746 494121156 169266792 644611625 829111010 309284336 488698244 233884354 864753384 613204581 997464904 370608050 194502330 299041252 118952436 733934640 805567854 534192545 294003897 432944579 85514280 111121452 43001687 893108010 99495510 642862646 941359365 3983067 378857356 815183844 976669435 438342649 607636886 606565036 302925995 264743482 434889000 836041315 116747893 86966750 145036703 613075577 594068170 373234553 699749395 354502985 874183586 183220792 503628939 495607007 391531225 803992166 581012467 43462139 170254439 33332022 713314766 559086849 459531146 947119539 816789087 550144261 331083665 802308354 113659216 407913320 191342927 628166977 36275333 239844125 743819737 832526451 16627285 174042025 727739744 578389277 326460918 607392486 802365523 231969178 832890146 873706366 614514945 937676623 338159576 30071105 317560576 749499324 279760269 347113383 854489802 788876369 955149946 834648721 808419507 887838504 597976831 474444816 480289784 99936782 615300227 68865130 674156574 963984463 109012465 402627964 895976665 210918150 916244983 546515289 802519587 459190503 932463334 217796134 599803836 409729255 882878861 476165663 701984908 613275799 112310529 174066182 276581415 936163065 365382271 753680043 613391756 901598062 614131783 915937887 413719436 182339404 294574803 157844411 918517517 549363579 302689095 808401105 260538613 211524034 190914890 374782825 892341521 189042928 284962707 825567175 689589118 528973731 2780630 71170713 446448050 243978513 182238177 182915973 796310409 917342914 957869431 195693626 819423867 117204328 621023629 119720239 114487154 935200528 570792381 272953811 104134482 559731563 441514006 121997722 978566301 122792149 89979131 246572852 859946067 269326509 604786511 120766288 548240750 6466615 487758395 936614593 433020365 63771188 224271824 17526011 873631239 736204706 186146733 641966376 599677484 444974064 892738294 551809757 234251560 275442194 297762321 815236787 238680884 620126897 267175512 968561110 909889895 566053919 989484828 414983807 980237136 239644189 121051869 667292753 980124384 932672169 379835797 589498967 9270592 996440722 229076056 85439716 810234460 412164732 725089379 191070559 634486092 869494466 640049861 177889472 35938307 844623609 23249446 45588548 710997784 432980054 480553062 806065897 762502682 700939227 580255210 887212644 18585011 98514817 321865098 572064622 217796134 111710024 787061002 900452047 679384558 575553714 540554837 546928136 860482488 568452640 680304780 360230912 707297015 952323016 543321488 592589303 915585972 591553334 795156768 592978171 980432042 130160460 221354183 767659973 412123492 169830252 761510262 835202069 784621118 805784117 731770873 493309830 16680365 982069348 471677946 143303631 154545858 61373452 377126399 724650677 437549237 106382662 81611292 301803278 475451754 323590576 582952058 589404934 195653183 444116724 233132380 993649433 577870620 178543104 135846116 503947684 937354177 368991403 179467670 98172193 710885859 790131043 968573457 663160255 421046168 202189259 896182095 474979857 232874377 282560801 479640026 303899964 17764020 864880907 844022452 399514067 398926413 151736479 652767226 941797668 46340355 366680559 653324411 982694348 734443502 232367468 311148127 940000681 409110396 22491666 839112187 795233622 361095786 227771465 174495712 241208789 594118724 563183701 783974838 347447572 794366392 612768346 589988948 821185538 194247953 30099335 594054923 760174592 195221944 250591566 945909564 723337502 362281605 114482845 693181722 903697452 607898307 93125251 904464952 943266181 707234849 557847827 614272391 293135873 167319484 17675177 518933761 846702199 94380369 830157567 146542373 515058560 35332559 854604076 206285807 227149946 797120447 642454156 325143920 436063377 152113705 221064387 282030543 627812474 634967200 276163742 508474153 909467770 1864734 453284348 968616849 498027222 407168849 9406050 952008168 579511603 934831614 390350809 740916131 917096296 174593119 654328522 389716138 799105831 737352265 176085551 940774928 151763567 165482824 103456609 979274485 748248376 433020365 874898730 565057499 960342965 725892478 717658330 724581071 801580638 148129582 307874792 399001186 596684538 431185578 536491204 506215392 207949179 583153665 605684858 645606537 661624176 441412113 808859892 900592731 305306232 624750342 50499453 992265965 155200270 390557435 887841260 843564510 708504497 200346280 665271983 473245728 616242322 567554983 455175556 64354010 38329060 22615167 260118420 676731735 307994435 681557915 367282750 30347707 556115423 583437077 466709199 297442805 557378681 483860750 904761368 96211934 774043299 291160241 695057500 477930361 546514441 295789462 751730522 806690142 813713168 876085978 832568017 854856257 506526360 378156342 867846598 777761100 77853775 123704720 669480986 429139350 278512223 751589959 361018447 299413618 621526148 167159821 286878390 904117973 551253771 35926997 76170909 518530057 445372445 681603904 990796225 848052347 264951429 420049931 183271392 238473745 718412283 378675820 893857166 955110304 499655241 601805731 402675657 714380264 617138380 344319386 936205771 266494892 540903746 163066250 196467075 672171357 898901792 155508613 660379084 682665731 797182022 789910161 524949500 922605428 627736016 472506666 804163047 625875468 186092706 779088015 50170675 496494604 322170930 104517876 452543724 448219204 177874865 845953348 3143488 834474562 70814830 568314379 559994169 48748453 926851553 120281021 790373608 880841688 56071669 766972302 249286949 935966323 395493073 355102722 152087939 479756801 594919462 86940111 498088561 770158630 168364915 679036837 712268235 734671720 717164065 987551852 346056532 104172430 641946692 169989771 380493535 714742105 18648805 950860660 550198036 664128132 889902589 811524181 699946574 558767582 464025516 261776414 39511472 556901790 445494518 620527328 590449641 100170700 967264037 485286083 241023655 832356603 115219195 737572286 721836068 978033898 512885064 958779935 944346465 925847356 597342370 949362479 448986203 780529939 365060672 512455093 803509130 614472312 103431433 11979868 296572749 811978865 505573821 860592158 524270328 610907 983157592 272381794 751022540 914882289 547374182 293732418 92260021 518016935 246431001 525629920 193071810 35316775 363780835 68478777 554514797 123164210 642850741 558261607 788086457 668839101 597182357 716983053 249414063 140751542 783565008 288453481 678627107 59948438 886835906 315976125 759569388 825668780 118450625 749703742 643370675 279120627 980124384 326469968 909403797 307255318 652119148 271803364 872632152 127162375 303074793 500608290 650435966 911003613 942058637 233624516 532418844 751337219 884862346 759364723 453415841 78331427 426636111 89360018 323212173 560273785 489451540 172119469 447014392 456640303 127465266 664113787 549329571 432776152 820885101 409556607 18899678 379020086 569978432 197563071 555364956 556631049 283875820 270053060 244447689 595811649 41148716 23161632 103743708 118299746 847631224 968778848 871378815 44827805 496799452 702018035 58474218 522333572 663246770 609575107 160258892 696625772 846282895 477153610 647125730 927741927 928651020 833934640 467656211 741316690 132385165 905590414 858005834 431229997 853100985 900905592 454806248 244094683 750098834 739978074 372451407 830347083 628289086 203120942 286382510 612420369 873513812 141673964 123420691 991617684 925323502 826085263 688370129 28220940 219468630 186092706 64990447 317481488 2935547 913808643 211216721 937419276 743142523 164392622 626201816 573800107 719730183 529661752 434076088 656939950 965578475 629576256 863336419 862212496 8484070 986148203 869794553 666397475 482449428 165110008 48935414 197661506 847631224 7804459 299014432 974321215 180657892 759891990 790870340 967988193 966625663 402579487 365898230 353073304 578028194 753837864 443075759 791404808 420365236 254921388 199687852 473949119 760738487 189569090 136056560 68640422 115150120 882919475 899244552 658390552 845590653 873420208 971624049 482260448 686768480 596491453 956562187 87878705 188412990 275257905 957832044 145927397 401856612 217006484 241338123 243957249 78128429 749935993 850482772 854610451 937824157 880468230 954124868 337018712 889957627 395376462 917035461 70278478 617267873 961532306 287729178 568004557 457049554 543395755 787830404 778037170 3114660 930039465 790732276 353875107 568460439 875466025 319956933 58804449 274028036 201560861 94053300 632865536 570067795 840140648 697785992 462162683 219661184 328436738 983164993 879960399 34523605 217091450 420885119 278768242 112457775 334848923 424526503 978563733 237847498 904992252 627789962 510513521 883022267 609334731 712865047 769171285 396459316 740911801 91578296 368410491 782185211 333176566 216437103 794177713 254061908 21937816 144351044 144322118 986008549 99935170 980740495 111794117 342043963 923177278 601364830 690304462 420955528 188713181 597636317 215158603 380532322 600455611 283430836 341607011 934896665 208522248 270779247 38092243 240658784 965395837 700690712 568260969 380430753 552000184 313910639 406912004 564283944 694435950 383342063 16627285 133704514 950209605 573934254 458507988 62699749 414407515 155244610 597976831 717928265 493579677 15577403 72655897 607018884 191403498 750835638 226626420 563202800 350374491 396910703 342801628 646900871 12157633 728131034 925596645 770064810 518180116 376006980 868091638 275188482 667417735 294021355 856221232 883392520 664839844 174021681 703249681 466843520 164600051 352520607 419191019 911480364 245745168 406529356 28378225 660186055 123235733 292875742 365746076 791033517 419308063 250862425 725683452 396283701 407876064 662302803 369671941 11861990 129090280 372160479 570919976 491575071 654404061 767298904 947184312 432247880 447688349 530892197 448807145 325733546 624850830 763820280 734760355 572315505 116069043 322598103 993357329 554516466 763360243 612448245 444109355 209385008 277432541 108517721 942048889 524961779 483440525 492077955 498606073 747431816 276839870 911904058 548787778 935962074 342342576 236525862 799985960 617285362 938367610 33461922 20480429 280284930 785144465 614596378 457530606 787335687 664735965 183769753 782680220 528463501 446920523 541611869 173171395 429187369 447855375 328999736 886653436 79422388 438316177 227506028 31910667 436057195 695632292 714879838 230621650 154075075 75949901 203813483 511492189 608738967 291727542 888310820 789978527 837363977 408592190 580288296 783146627 65110803 525125451 65869781 188719168 875867719 948303713 30631660 903911441 853799145 579852777 326677583 901664072 123063193 200895976 569984276 189591093 75407375 942564429 278827898 489451540 471658585 798238544 94750695 238480243 827644348 969693886 115767642 328436738 704365649 738728826 48846087 132831691 304327963 413444865 486040453 609306822 990537450 309656453 299523807 251705962 573444800 834804800 401258551 387654742 244570324 965572475 757483121 420074260 760134517 945274788 623408243 632666376 914886606 809686535 149187982 332864582 832289339 380981848 171301329 739721625 958588759 734452274 497158749 817835045 704794360 676879871 364652753 154073696 212334264 259006296 232401956 193577329 750325181 624015913 998927579 587687176 341737455 17096452 791697636 468428670 664057825 621515021 508164232 107315209 494413325 624577161 203678106 951223456 631635221 442683466 963988791 653315054 629192486 718179844 537927888 332563827 562184104 867766999 636839832 922605428 560194432 364769255 468720448 25734334 544141385 445623858 966268127 790439366 52521174 940411728 852327301 652995729 73628280 872129748 769139287 648063700 79103764 51985417 365827022 652720174 562030900 27690932 105369973 804187240 361483162 768188090 513389563 161889417 26536342 173684614 654879268 979903294 954584858 295485436 475890174 203905893 102515473 211006747 708193756 429621559 141175169 16209552 945545251 946195709 106013654 907961562 173046988 438426619 749488806 597325094 370039652 505186126 718502178 545395004 790716509 86609484 123951878 942832078 673311069 913214735 780682245 460077711 456899916 709730432 699636027 207578894 479372609 21402824 957022807 99235040 967469813 606818799 138739236 580480301 964411796 596881903 750294550 159553471 910277568 642901634 983378371 246621050 857874088 320995516 412495563 97961274 964460431 400650284 544432435 58841422 904585981 214437005 644428413 173883262 453876534 219420887 992280486 944437522 29203285 276197934 196351071 81907103 849054272 833558253 368317372 249644811 267943895 444949603 698400425 974265197 186994451 71285853 393879713 321134213 565059418 771804221 701856340 624979960 855932344 444490968 806049639 290488050 620231720 790607922 781522089 364100021 736462669 821823254 150208916 514807331 222028812 421472249 342111625 996151103 721479049 571439072 881715008 688918374 797579459 312245390 927985169 783299876 955611259 263976750 112534286 804121645 989641172 783560034 687574781 774011855 187456031 950361696 615934346 340781123 843633611 621926744 119420924 86491648 514863617 749317225 672624484 111078591 391166989 632021469 418380604 446743808 290641800 230142978 217285956 865398628 275275232 28717633 112246561 353812854 928447363 293193504 623457396 852780059 957569869 821448727 54817001 120119791 324095256 277712181 82963547 497236965 853510808 323882903 894584627 192526732 857456067 700148480 328166744 460609053 408884261 499322389 776282570 151736479 417468592 838658309 243456453 310480652 110486979 166504664 692936816 201604729 914113461 479257128 652127038 255922322 515741152 84167528 666266630 538540082 428847947 79422388 118801202 693755573 312346973 80115855 102478629 30646796 313027911 704067237 947652480 62745691 162559145 850739942 770786166 789618919 979451686 967264037 727419967 955254932 227643233 936033556 501022772 45625645 936415699 906311900 149156677 558020093 404489164 415995965 492593273 415305123 462818723 464440799 590665437 226956808 258644783 720462394 311833587 391334684 649593004 726001082 825039514 712554908 396322451 337234142 928652548 503450670 154639215 54898908 6335273 578940914 24026851 905628334 495544130 269772124 652899941 217243670 977767914 844132761 222028812 971690755 856780740 152625943 503093070 214168721 194488026 293403315 414689395 164445326 256833268 581090477 593228358 374428310 792819188 600617249 753296790 411195697 394798005 437557786 20500533 536491204 349975229 575917807 401006894 210111906 944224730 871262015 187546222 592372304 863193306 133188722 921071350 647495169 511492189 702448253 178275603 22437269 672337588 672423664 851813968 912674029 346749702 651606499 229767477 123032330 988730862 753821074 765442268 350573544 63543170 219032462 203652234 376583145 113688648 787538261 584861921 309863915 25335855 378145538 501958004 876103211 799239744 267551801 455955056 822433653 549352350 503925245 831022823 149000436 952092792 968779332 637098618 66152072 458362574 943218822 462967700 858188499 462163458 814325895 951362176 303101923 553044132 753828236 159998587 443724835 85121365 505605651 935779992 861085899 135623510 793980230 364583346 353056234 615648307 21797374 785649210 302390804 920805293 801738532 905239693 806715702 420965464 72235876 696269478 21203043 18653343 971851345 128773813 959379985 685129016 454397916 375770066 998332291 853032139 214421430 520833251 262972315 507467152 266201922 979960931 364638897 703761984 170175270 729564317 390763570 367249928 466955988 887109450 109669314 651907222 820524634 259551552 823753867 631634185 392366869 60398398 289906073 796603405 194170458 868895845 389785723 131390900 992064097 235664623 386179981 412341146 282872263 233287269 823380849 844802987 567646380 800323896 116379113 507808736 271491019 845237328 294561751 751995240 480285261 918916166 951878140 328314648 397912418 482001628 343605306 105735422 623742035 601068884 895632663 296375697 448834949 165490438 420207763 684566390 233018577 270343426 778784769 849617192 797021586 241303972 682503008 207279853 165913991 15414788 565757495 240957899 671556075 212386242 775431056 518618793 815939814 953983428 847099650 67636839 772215381 306740502 202540177 220948669 198833710 802337284 862372614 850341041 427592043 550773884 185791120 977710997 716053899 160311981 297685945 958498447 450758455 260948167 666587923 573450390 245744652 774207992 73475904 829923978 855075422 682207003 62006395 134971717 843028145 429871829 920934805 538593411 890640898 973093720 244941364 239153888 371707518 521008225 745160708 139036846 909496568 225978960 629863583 406939167 148750002 405203596 372507003 892433287 399600850 872396278 971511752 768882616 132069015 909496568 412648730 567567971 25553594 417785741 953144698 446569719 596642327 626382015 782257499 462035507 914017692 220905681 442557433 972489868 123035497 889707538 744360841 571008643 69788173 977554796 172581051 888480953 515803150 73485056 402493051 571211586 863700986 36275333 16212103 352667548 892911247 904371371 166539980 310151737 820005760 57445032 640989299 832301393 104774012 484922692 641556081 811580665 857438890 700649251 991509921 30861305 295971046 643102954 266316462 955309322 64370285 627971449 114573652 432433294 147161082 26229386 407421715 420995609 986851437 65264365 620180117 468501853 957626764 402405099 729863367 126852343 205044946 388581309 417924711 491663315 664025196 347649069 774619684 570087412 376447494 463343580 863587294 577625225 411187936 903276105 506082743 711682729 791583650 481965931 302088085 54879686 465951026 602091635 609299368 497268510 427601873 235668083 660323530 375398992 376205729 636130432 420885119 132834378 291943541 431929216 482441515 40569267 322269339 609918550 32782632 60336333 986275575 765433835 631528847 729793360 26386750 148169240 212476239 390275200 625764904 682275742 976096420 768161928 261909028 697658342 660431391 785705486 334111742 516539757 46886374 363647566 384697531 980683611 123827973 478426549 783850195 220841959 690304462 189708618 447569834 540570331 625926938 519303171 871866740 76394252 690330394 936224469 681637724 99513479 242662380 558173444 899767281 526968135 205534866 328821658 109184952 854642508 569834296 717756978 585957199 156300217 981956323 494775094 944199327 289346885 613949869 958397263 176834998 237597128 556637566 602199528 514595982 687365033 542342149 462358760 92623586 536077594 441200206 272365909 178683203 829581177 966463503 664945280 871753529 496352058 886177663 144772036 277251203 753775257 689656599 111569538 343815187 30257147 933956522 638175534 742097878 714171726 908049911 653758422 66141874 147161021 567522579 781970446 740183847 76357462 391121070 237625025 171700818 768970010 304570844 325022603 646331808 191941249 588943622 501538699 737354007 652423265 289732160 230953923 98418017 299555864 104759075 692936816 500107488 856006126 974068701 854515155 781663825 880731270 997985355 182179407 834905474 385108397 497853731 416185947 65673612 139415726 612203431 509338617 360448018 662389421 683630928 676506008 609846385 11076063 937811535 93016809 417790401 654920926 886651550 116379113 141525759 148723615 922643464 308249377 577076624 547815808 9830381 522058711 268261076 707243098 301499236 818279497 313006829 992764891 134070023 666139138 38193462 983776796 673165811 176494514 429253056 633547370 789687366 369550735 443841538 982390307 919175849 9175859 415836120 192765169 761824380 269649420 772397325 652417489 77861913 504863412 640117008 814074794 272652593 119484909 177159798 160551467 179964899 191070559 980800213 704798862 860803303 902912548 740514754 299048325 39243598 297802512 971624049 936962186 79260026 745819712 163178804 533370463 536456323 551305118 510662581 188460430 317481488 730693935 216146217 683641027 330705811 788876369 454273088 585641124 970253516 115767642 295260989 935916462 531401955 693762249 816609479 24532127 266689404 141131354 855075422 628259787 10296381 567796749 838228620 11175830 30860955 887468153 663631073 985536289 703340186 48416212 679516191 53368556 808861091 827913582 724272062 753794169 123820513 738591460 221082006 483979407 209503170 369256517 850302616 29348955 912477916 277191907 488759620 125883365 447900222 326811918 770573002 535366239 999285217 576609913 202867128 948553391 903944518 846938185 739002968 534600882 347825177 92500267 557232269 339024399 394716816 332676203 834738340 51269483 947194811 633859694 616301294 915897249 795447565 632520820 434659970 513180653 489394864 829172967 42507223 668308080 97165211 547782825 882878861 20353491 789845699 42027223 471355366 986649907 961118654 9036399 84640847 591086426 528806160 469814872 395741257 101089393 115390115 862432238 82746904 730668797 208487542 647202172 633842151 806918808 694134049 794617508 933299701 979165720 660988744 996372775 873615512 286312572 17907178 546060084 100937520 973786086 778973034 129302720 378512265 196722450 436606333 585774444 541289133 16882544 767005648 924615674 456664309 238794239 180289330 485803629 661757977 908755866 665206360 894163810 649564256 12336000 408500717 829323865 547815808 206056280 170937735 918566617 782859978 681376883 294944263 860035765 695012609 448769838 515056712 791487655 824414283 238851234 24782761 125099377 524134295 432094901 132280175 136886292 310718812 113824177 400818349 106324270 22442804 641500254 309588308 201311345 375484994 648289657 661432199 364500865 809526987 544319640 821993717 511346291 96245657 875581488 783223946 536583742 584398231 372678250 362169759 196618988 471507323 33257082 798037537 501125796 868135761 870577906 849821877 36379449 837968743 730237982 91486181 51492153 640179459 829031185 114147659 319691392 955460099 21937816 209153665 556492072 150854502 539914694 539173989 560069646 147412159 104539130 333460366 686715765 636581638 384567736 536795534 393773366 846874459 315913552 286382510 550144527 364583346 737048158 752713888 371658313 358722737 617318969 36016223 821094447 804118333 253411878 887727105 394716816 85539298 39966464 992870704 123082114 22666193 250432563 712802752 367912068 304069485 235350360 609974811 799297296 781467814 912244643 205249382 438830194 66495673 189439689 288851122 285114289 997186942 897701498 322212200 743788544 471906035 308834747 344288425 595828691 135328108 795447565 725833957 925111606 747388605 839642122 15061001 228566784 446273596 445866381 998733416 735240066 272251046 60186006 402483895 225791346 618093895 152168409 62893884 607422375 743887985 815843114 68560523 380385754 743406290 899623006 815481266 434738321 280396256 485401618 207297391 541865558 222191022 315848437 860754181 676763916 380430753 847925869 752213326 354192975 627437963 611257726 504157226 791003518 914886606 667715310 4556406 496389713 747972686 422462655 912583367 773854816 723385134 557862080 535823875 987222686 984358036 785613058 487991396 31314158 511163820 210951920 135602446 626566734 835430678 802480220 535672722 19073264 932579806 623742035 519446622 363926629 488618440 705157488 922204768 607695933 682551889 307660453 351559614 900124814 597574108 370073897 360044688 659025848 789775175 133792996 967322353 957995503 133047830 136395951 859610367 613209034 457033413 933847007 513202620 396703161 260719034 27104701 467605193 764252008 765944176 868233208 489598732 429806041 231392232 58994523 781680602 319763939 471703322 969817270 657881750 361340013 381878568 751020547 229062710 683979881 68195186 439261407 911716435 346885160 152724265 843086310 204637075 979651985 939524054 900072339 706260816 300823074 427845072 939883877 486548364 604950790 766595499 59691541 300788050 826228148 671411046 564201744 918561841 590301275 477873053 15990760 560748831 432020920 630338315 936136894 628439054 972273822 963004759 38961540 913418807 326428268 635898877 509936313 830052987 201391127 462279034 318113143 121905778 563755732 414158663 628596935 557343615 951992145 946509135 262090315 417070895 725698907 881809468 421648932 642338370 275903331 906571134 234617115 954707773 832237310 166504664 181553422 373908672 43000557 575379476 804406830 603334239 596364289 861442770 462977620 763261019 431229997 53343480 172109980 510669202 162656621 805774496 609265598 772813547 239584767 206174144 866761939 211100084 959558902 841055311 215587778 145730878 246687640 798852564 482659616 541034293 702312158 77030859 65304391 819666371 332200424 388326596 600153202 544864029 301110478 36265853 151235303 156670013 294698924 345750489 509225704 658841577 467009816 608185174 678275698 197315171 357778666 994785571 311220536 105701683 892296327 511616512 249103821 847564246 911005495 308183244 995733464 191489744 548381272 27109902 246278029 20561113 349191873 516747574 295266480 283915123 41810222 549352350 481041195 326407020 223736917 169693353 25303163 712225644 330494150 255457173 82056003 873502999 990330390 844802987 460478672 766468705 136641932 366877263 523373114 901627535 549017980 17939947 370941111 605066711 917269996 579109869 926850585 906290383 531252963 287097470 534221760 529928421 406350468 943498931 351982331 811120034 852325281 332974895 350170530 507728781 674847900 665255483 419759796 603592731 848690619 177889472 784529796 519827169 684499332 624445175 490500126 425543970 869021696 958498447 293330335 570755390 757573332 981755638 174042025 831278896 283345795 633150533 34344384 204648159 688098067 110351923 86232170 526198196 455514649 219478294 491100201 425116429 588479870 6138175 319417194 216780261 449171816 63618354 292179138 467062713 927931305 929159766 784292468 483634468 844089518 438368077 762473802 896124015 895849008 716896252 800682646 94127396 840830386 671995202 731672636 460572842 168201253 62034070 590411037 902729594 191587798 992861147 146927451 734963374 304015923 818812098 549573545 729343408 565412490 236540966 931089670 31422116 644807156 621980938 420990742 552309645 581189570 926534883 892717817 809720682 719235969 69513524 204139913 499861769 159100618 888709331 369153071 594245257 5191792 440489318 663657534 348606593 667807901 65361164 634467614 485627598 564751416 334283048 964903751 245715603 75949901 19571987 486439896 515710428 614572546 280020833 330181798 569200841 640511626 381508205 209707987 553041068 28149263 879944689 911046734 969081039 151593982 414108305 664128164 916455505 128371215 249056955 631053287 794454167 150710443 880845558 912639936 354566009 114323823 461694553 901023203 153537575 130960466 540984998 602091635 608525937 271917309 252413236 494328446 62685909 814693277 730743097 510713854 373076061 505423064 298484953 337966730 301185544 589441946 185052241 770567448 922643464 128663311 235611084 919935523 51163037 128848039 291943541 219971550 367150335 73674996 304626182 262177022 112767187 103746817 311138275 514092674 175626233 21150372 78922937 598228441 656448081 506606616 361056791 525735798 58812081 62870770 680828533 413673768 505402605 576993839 808719369 776759662 869655369 905337308 401230458 798740164 655448837 569888903 664304182 866890643 7451325 200942364 137828914 519094823 232067696 918137835 144937890 544278663 284051798 49876779 77166204 921943562 230057584 104134482 240923942 835114945 791299787 813512188 431689047 388991565 523465830 231875108 406129909 606190013 148375633 294552739 380632366 219836740 864866234 950356369 446979211 496765063 254334868 155780154 381547950 62864541 421908006 712708756 334815263 286660550 940733914 591086426 136711845 771276599 174763697 750400101 201547669 177611334 419702246 918534428 968412578 37759362 159604120 836873566 323376461 229437768 183875642 56593242 410632198 216675363 710247960 295507326 751664668 860901286 23630187 273757218 195396169 25944022 816708230 642233387 458298245 579256841 684731723 24913727 479307286 258583735 722496493 989855022 996405869 698756529 712989196 281249480 939256754 144170331 781365965 313301111 929598933 773807658 483529720 966438035 302280326 427382340 815635993 509645079 553330744 196322321 675740045 697487788 526060623 997334990 700072172 960349912 965361202 441455523 666520266 182616239 908237167 973844884 812671728 260190492 47052992 957690614 70597930 996650686 427995506 78339135 777478436 677786048 287299608 315536830 73655382 150916946 27539092 462264492 508638473 186179203 665965963 319752391 147491677 706260816 635895177 274432329 818768070 348888567 494457734 824142235 802667604 731359622 140790164 404151794 146943147 437756038 755425719 847888588 187950177 952263904 186261808 939641531 911438633 424616541 759977968 282414472 264235713 106292480 925217578 935381372 870323411 181223293 299690570 659675478 422346108 407069014 48359336 845551138 263624235 55107804 181231457 523168587 458271003 934863363 722042691 790276218 796193616 979251851 703666786 12504183 287622818 894082163 113397470 942564429 163986016 426016897 103590540 619001150 645207263 937690070 464503000 405005493 628097389 876984159 728006731 857979946 32323563 290081459 378687720 152803403 433036621 606456341 326740701 515102394 603625752 466608728 903060388 546926292 956672649 958336957 192658834 421017447 551345554 531523480 163383055 221278242 659591023 395102080 88996287 811503729 711527877 195444378 85541807 675250018 285941407 958347968 420882267 815993896 377481745 623075328 578587086 925382688 498673396 246249527 278478040 35101279 197769173 260268328 18601670 499322389 886341065 474670027 541446009 280469807 352765518 713445560 614528267 226815885 824597922 573804889 701706725 591515887 889317175 80665965 773599809 974585784 900540802 705694842 328960012 274827846 63737491 188719168 349485232 696406732 380575424 908530683 3614782 168614442 812803852 216253909 964815767 452754304 607335284 192144102 790009767 537921711 592368016 660934818 594857046 616080480 393995204 128652794 543696846 415016302 848475251 132071387 797909097 326460918 916555728 20029758 669471167 973951936 479199091 218818103 702831669 106321767 107656398 145816519 23263315 311744844 284540066 239076294 660764507 895770649 33433518 489188614 209563224 842122032 587565993 589426168 712930518 209258890 882341386 396502967 696265743 33111482 404865109 211742524 770828409 163013281 513170467 611690558 180815315 156694972 772444069 881594083 477141995 736968197 123542624 525735798 911280293 520315854 682565808 996524920 435366630 248438331 298714913 460244579 397610033 373908672 7289903 845627666 791051525 336705193 124780349 234779465 477698596 723637346 332394982 42398931 780777248 290238821 849919157 625906021 194562154 568216661 542588742 785613058 59199097 133686156 430793248 406500034 70982848 895435843 428020941 577583362 484264019 47088794 155626378 767318540 656376589 904519479 461618404 974643218 546349377 391121486 76356849 27014020 837109369 232052164 95549966 455435232 121391872 353574932 766469471 825056882 129798736 420265868 936793276 387486002 860455801 75386473 575392944 378842987 267406739 812325948 277967464 434064935 869574938 123505893 169269217 915402826 412777888 888754427 393464115 822549007 816582486 107035838 490389301 333692617 122730733 284741257 973584626 225954158 789278426 522227610 658341637 23461244 148519320 689053361 239097666 123483319 324570968 375741959 158254964 295464566 741694390 352283895 505488556 938218163 214720293 101729800 393088393 322334196 965752682 767507770 142128585 289896513 304687054 859880238 324037347 328998896 871708112 956289074 892187681 641911066 173843046 358876066 258583735 539500481 715580740 110289254 717748551 185244883 443607992 957674719 609850403 359715268 328903535 551673618 632666376 601828494 944894393 19055150 465127660 198517559 349918083 187598338 777902923 726316395 141021027 678163298 265696700 77604032 600575043 749405294 774352851 736129899 402101864 192047910 992357388 891779983 318498844 204093804 793429076 883323380 534119198 921974430 811006875 152757649 768613430 681205340 454586710 162519623 650531406 563189705 654777433 515058560 157891966 724754509 587758769 937130242 577870620 428863804 209814189 118531035 315025632 800737672 782242422 773971537 487582466 138521809 856094384 887030727 630200900 504788327 473490149 332120961 643486623 993753309 833975962 881669472 997939188 324796421 67048285 846228941 466127200 376530169 298985049 859022804 647907412 745628253 484444381 540579915 271376826 217035271 401033183 198833710 507731386 767157214 213572338 267874375 535199930 632986144 126430067 101025386 279895976 470494547 125955260 174719304 709406140 446117260 721125756 127867116 368307596 413841982 74554038 732611982 916487188 832398891 299007299 385826118 981091614 457415657 714637259 114044335 339007442 22469123 173812050 238033080 7549212 173171395 655096537 8051267 484591686 409295322 811289197 938697595 774343343 645308650 650323948 394889782 812124230 400675787 83707464 558983502 697725192 754134684 795430579 464975218 661294821 395378553 902948755 997872977 854163572 212044595 123254040 49114010 972750613 983729357 929942061 576259326 670500108 237328952 832301983 755350420 889480852 332706826 485082489 168246636 990637895 75673834 870895223 242555300 121692787 598387740 980090299 462459310 572970022 375298313 66057952 192353159 888098781 890200840 21071589 348671597 262701768 858803926 816323753 903407500 132644643 459531146 659356607 982348190 743920077 787386058 812335544 214570325 440947510 913317941 275704238 921516008 219028427 642400262 205189754 6985366 695224851 810068416 749550730 943937590 116181053 386133665 557369935 775158737 373898827 130099330 893181346 83797940 305789765 887768484 293264865 94215024 536216739 530146635 900524 217977167 448566422 234151562 320380273 795843238 733673058 232743430 154086168 214448633 255841500 291310750 309414693 446665125 82961586 280284930 684566390 75737373 155725572 336077001 190091236 495971954 308825344 160535166 374841705 603704309 428492450 306139104 996903908 843944405 132075642 605768196 456585443 713954662 212850274 192588375 151404656 431816920 380481855 742841733 620898058 227403847 665329910 930561135 720109987 6429665 899478246 79111962 372448428 909772893 621076980 437629753 26074276 234651021 606621987 482311282 342775751 9089014 504731250 574937907 432094901 142835200 126730891 17494305 44669692 835114945 127202560 499670138 889071943 746182951 397903393 343806736 217443945 13712201 607026364 988538553 220128257 4704911 126816757 830537856 323212173 698534411 366358712 623652091 973575293 542034153 192047910 210915718 426356563 446868496 165035012 246781279 575249279 641218457 658372001 253783517 271335362 861786 535232232 330117038 491393583 65432197 96805535 619794816 583716467 988367579 427995506 220840254 221752858 569826797 870291071 191359720 95748566 150854494 740514754 316950540 336576157 529640530 523437601 863268542 677311261 494669970 790580557 419188589 173292337 197830555 710157534 932540690 739049755 930270564 849507379 141477175 518273422 150445963 831519279 819879242 439652349 899235279 376390714 580286398 497077493 86872918 791484080 288604643 126642330 771478637 525376372 451157069 303435350 498360865 288540805 64867360 857560850 864648585 838058849 617538339 548650336 103812480 200830691 414879402 831654574 301021560 69349601 596504739 699578168 782579493 53645208 332027491 190799801 383172005 876833878 563665551 470308617 70151968 553909431 851481506 518431595 295278920 275798479 582772058 681361365 277381683 648486513 277871191 120407274 523820237 35209963 362714577 764504265 360941153 244094683 20500533 583348849 387535947 409049542 399271727 870501218 458830591 687825666 943727258 230142978 231887272 224062358 363073536 859298774 65833087 173782763 320368965 172180994 422922551 238590961 921416900 485667699 561755901 497087609 28884082 141917735 168614442 681468901 387352001 72502561 832475902 540903746 234776586 495031779 715271806 282108041 304701623 799656643 632687771 654549217 308080571 163507422 820885101 503415417 73568703 380550406 567796588 500093860 126430067 456000494 921980133 219124671 725257984 144173078 770393624 16619721 102723700 187418507 4599347 92137663 630146944 153463302 799762911 279618764 665660355 770196954 272527983 239597127 433332266 536044452 489474242 994173141 328153718 922034240 743596152 301734148 996260605 65035188 763004267 817804927 250298040 264995038 371919694 802693422 173814679 829548860 583330203 630302483 207109960 327011927 906839919 16932168 941357322 253952623 996859608 687164268 722738060 202691822 428239457 585760565 508474153 611800738 946912094 438965152 420966683 750998674 801586021 107965910 488970046 426382637 706749648 552965547 293462251 367158683 798314742 691857215 91829204 222115444 602373408 69625484 83868922 775700750 948190339 688609707 69802573 963075820 376606278 807993493 370952923 212648023 910277568 758135063 48000463 190876878 282059947 535575864 694134049 860144150 749578759 984272993 50356408 40475562 609242241 787702509 954350768 941355556 584072197 834833841 843436780 535746176 273552236 608912469 468020636 753039960 571238110 531687845 623213962 692692046 649486713 11181949 902457865 204131065 970202522 519773499 538593411 849535206 268425468 794297637 726971808 829080715 602380790 472962898 115635434 515710428 272652694 568746934 173072772 121002344 806210115 976278083 137467583 977221893 950538395 721883172 360503852 230451118 596398193 252923017 979737200 292061418 191967687 536583891 429670422 483762318 179505117 341713519 786339206 166736341 719049641 312537512 71518512 276292005 222585756 675932039 894378930 583312779 269230555 427521811 992246774 721428394 786483672 121449555 313072968 469324363 890214293 518471460 746409986 295934717 667468639 933517304 252596501 935916462 846073065 43001687 37458310 431011474 384434325 502602061 621472700 957318780 659937571 216635118 858136919 722467069 521031536 102655682 677227729 155706740 353298979 523405217 149208251 756845007 948492301 650004750 903469813 815424047 457291514 807457434 409445895 179539083 759175060 672574614 383788496 33716074 125640208 49533532 247955169 55377006 528007166 749736724 319143097 510513521 823969146 983164993 998590628 1667013 837712804 800337372 572315505 404866686 104709793 854811042 41016469 407381680 523635348 316142287 373269414 904743995 457915538 981349688 491886468 495544130 442408841 727111454 641715659 44513169 467964524 314773435 933133895 372001866 585604424 55873909 890085119 285982447 608402030 12061898 269391286 511748778 645353276 9015839 924962688 77935239 124820852 461166535 210580666 637589771 776213725 604436522 873546867 431934927 674041685 701197971 737939025 912372205 80322105 21335203 809450327 111836687 804022115 335400238 450279468 461807271 848206399 422491876 614277739 953791180 477810258 437325564 526984920 65979285 414263365 624071836 784292468 110124839 307275282 699580993 147935885 543949434 289798685 479199091 804120096 360568456 542648578 360471766 272684149 97770349 126235834 257808670 996494328 337288233 600327388 548521118 161443715 288769550 195491471 956371770 53419266 185500248 968606850 397868357 818126487 298744574 567060742 989535085 977013310 188021458 641133074 966351350 964963724 604507064 499521040 593614553 443416424 895632663 431844771 911934467 195653183 168251280 104328842 984383158 681244590 759959058 480669933 776214890 838295268 510737869 158068460 358872471 450824059 850439660 793263571 537610979 388005509 558650268 576935950 826933303 617501062 56521991 980568564 145310412 242858244 151802739 617337184 943478918 473250761 6604026 345460117 749410621 469416170 680849278 887752885 225109485 768947533 664024588 841276634 700495673 402850637 862247122 799231093 473479269 693362988 61213935 986279275 232504017 221517423 25940623 522562400 457272922 251431929 9344172 617060740 850500162 128268039 149294454 765011200 474255615 951926979 683155592 763480906 698947162 395102080 47999756 690325725 436252473 573593735 581260907 731467084 547397461 357441623 470169465 773874083 473571651 423625670 654748062 773854816 523437601 69407274 245233887 522894641 790049025 413920114 305959409 878419169 293082006 194293903 383386620 402276349 354159816 241641304 503878020 496321535 873393948 172858566 191869232 890486870 402171113 524785653 278971094 902460192 191643911 663096337 258144702 34133383 794292863 631232032 16326760 190849094 8148345 142701608 681796504 266661837 219584601 164581014 53645208 194136192 699578168 615376659 413574368 372567936 204648159 398145508 665206360 705206143 844126989 580380204 281236694 461075539 351713864 438337517 435067915 103471212 464503000 746135136 127975348 764758052 640264213 831220761 559237370 148450814 20855860 346259452 589069425 154149352 281647182 884197910 233982327 138045844 472299526 126235834 633852124 462759446 179592471 419702246 10738865 522849874 392596384 842889767 410717207 168173869 742419540 47377678 507995729 556953609 580451606 678728421 106320165 326754307 863760132 101688379 153723515 903469813 351650114 75730376 195016358 892858979 215920106 257734993 32035800 457234249 158668680 215349869 444672400 825567175 436117759 610904510 260731681 804971792 159947363 607224036 298442243 367249928 684088268 74862746 688623037 360251717 864735190 602897038 850572080 411111721 229494627 340720238 744726094 770913533 371589991 125403794 108362826 268846994 841482024 745984566 922640679 608667478 340212048 222136759 577047439 865255460 243807092 397407865 2993183 885082011 142828401 227008690 493736167 233331079 998745315 671331638 276384162 756539763 47052964 16647762 21396274 245648128 425922184 681184635 259761230 763184130 934001047 74911316 112307703 139575360 59624639 881901851 132061377 881948571 219625782 135296587 874898730 770193310 216651887 656788443 842133629 225144548 365971908 170951793 529701371 827962795 756575635 440026482 272174634 817528044 219468630 362224232 111836687 996470204 198215940 458286722 65304391 822997148 587571620 173504983 811524181 734118233 11350989 403995074 12579380 928122103 138228985 787070997 209707987 301198535 76356849 714221895 947428775 785722983 504483710 132276367 800206910 486538852 155157220 470760682 691669698 29473041 851351551 807993493 778327566 669827557 684397442 716628986 805749974 779014619 912583367 726359109 104033208 803162397 817024729 960777746 563988261 892468950 767493022 579256841 219283996 434795741 131863681 299172529 74068720 664746748 205593809 643769022 840902133 883245553 639887311 496588704 506366963 216579120 760258767 477258328 142117217 438231501 67153394 323261005 953620048 372451407 773796221 595000385 575012192 972259038 280332405 70080843 76082295 822236067 86332677 888932089 17450910 962789547 493661875 965027521 16212103 203156656 297743905 908426220 672160871 577047439 970647082 165066094 484902948 25042475 2636528 984300487 399271727 824568902 428484170 489598732 81584394 921218989 591450013 717278717 975376858 298905313 849280576 807808648 843284613 664833457 611937795 833757369 346405681 309121215 490010093 690946557 981785735 341256791 676763916 986407779 71289113 106281680 930657306 223448419 521895284 927555015 817266378 451408426 360448018 399338589 746821390 17907178 494428241 593228358 996130465 115097945 366262700 718060493 211699881 254484657 467929729 348892098 497728158 152305352 586389476 925028907 823003308 237490899 397219472 815589513 90796375 981365477 612864863 288360750 462628531 336821870 234011703 503325436 144741922 168861792 402159607 339640092 507226304 179505117 457691978 948825211 781754415 954883648 889733201 841020397 716004279 660537734 282940578 254251953 486639472 83764841 102577355 379242656 255766681 58710578 429186338 13487268 278917852 834844652 500446510 288412513 281338872 735002437 177863638 953635559 794909053 920430789 500095201 988730862 893855559 315374987 954367526 695960040 312642953 897532479 483630737 840235868 681905877 537377948 303435350 848679143 729001257 116531671 5213697 207695068 868680705 632712063 324059497 701061036 262188375 12959815 169628238 756215961 786605985 413825450 230863469 790665414 903672648 735568414 854303237 763396942 665554032 309362130 138877025 308255024 16522039 614943215 495663427 773449284 580485855 676805022 194317242 715391760 218651181 104144326 509288738 349878188 964120530 450968907 576871752 826328971 646191862 772749347 239615082 174340777 971589683 867621071 823016813 236229941 174585513 569863246 579377790 500192246 889493546 661664411 615049933 251086766 665072720 550933915 674127569 239388620 410258398 702982090 704082800 170357277 574974448 5159999 906479327 19072262 716581287 688864657 91161971 58560982 30646796 673779234 59691541 464105520 297013261 938097603 435966947 35660412 732677917 797231400 964354646 978778017 397733684 227698093 545789841 344581346 904340542 851413573 419108538 135917426 741513001 239440073 917098104 511077068 463122733 66917572 692648511 659025724 620602012 804990194 37560485 167939116 406357677 992071920 470358604 713889777 597915089 894785519 442618263 947702017 672689512 518442862 120482378 538714495 961873651 972335494 769301394 619752283 899164490 743717477 785125092 880970436 348238935 564751416 127547940 17875620 520260544 492691572 829005745 203437895 510616427 658279250 478325769 637103021 231017559 806096616 984283528 668156353 731140575 234617115 60855804 864610571 503153736 737405035 641213956 261941256 711933296 32108978 762411452 435884752 966026488 696400166 760025536 274234895 747300381 909604416 618687263 261569571 679326389 878541471 670188854 123555487 217391633 615300227 3544669 554559169 28220940 259638062 467285642 868143439 880242029 149196524 809873720 478655728 102723700 800898864 362413380 595831709 346082857 4316256 228211983 263219109 428049321 365382271 900982109 615039434 122376147 797558168 823198402 942248814 349903709 830209380 73774734 349138755 230057483 145036703 925898244 658037282 35336754 309259789 759367111 145629710 98857707 389987109 881515844 152818138 14462707 423085576 366652108 840024896 598348458 421798794 400908708 312506442 177590593 987284645 668994165 22088699 103984132 508480273 693555300 11175830 386294770 674856646 37808541 691358535 799888637 428799414 559080231 309797620 601842632 444727968 9386333 279507930 196182196 883518355 145577104 43534160 861386171 973106457 742397234 54470722 687333221 738525282 186628601 56252313 153642457 299667462 977453075 660723885 634753660 828865216 5548249 109578657 301972622 746246359 904585981 809206822 414239644 954819870 234597684 84657679 722243071 494816016 258959845 905042833 357357036 284001367 313990365 718648614 837968743 542820378 851966724 37376230 252144451 749039671 708291044 195439230 342911646 686707300 915389312 486202692 96660479 389115115 785910925 812533491 334702233 288564310 335822478 518026488 798382432 675932039 507860135 541722617 844914319 979334951 840885822 576669313 659485651 251438018 434167682 437194283 215591623 363525879 814500787 269357492 224577722 878576960 24114288 394510117 470752028 322020727 411715599 556271219 565433567 84954532 415375727 547000889 34103633 357561855 903815135 112980748 874519548 603409883 697971781 557701886 469373809 558113645 106538669 770613008 536787296 704668720 148114222 720848003 684978858 719143982 501458681 675740638 5534246 684816745 618371929 631360546 462977620 300297906 898680569 683353401 260312503 245600631 159745327 364215211 390390062 920264709 647208870 387949776 722560877 146917148 4820266 363644973 680849278 897924382 332190635 808574311 67138679 48904953 958859084 621412933 314069563 836939853 25911676 436049111 351394460 275154899 334325597 171727196 305131086 913883036 250429695 811993396 24163302 754723691 390740140 279654576 956245619 30101754 750752520 277906907 960207362 28835800 589503513 332014718 771923558 561233476 781109215 115914568 67922733 290007869 799501575 403114301 572002505 2477352 945427572 211724669 388329447 989186410 477336626 178708130 909619271 144681551 703890033 778935668 196743909 239541007 709601414 36509143 74553490 834123330 849551676 715368076 783537146 154369266 74191101 976892266 540579915 64672755 552088439 294077473 494969983 990520150 48364291 168357117 128419818 653363326 874625443 66675609 698559650 144048408 384208646 328921712 178739645 228364352 695353238 810009181 674078771 380968208 999220580 353568887 833763984 318091317 583335515 799297296 51787728 445878014 280826009 714501828 557344083 730743097 585525169 613804617 330115438 671114046 356822441 687740434 376308362 984232765 610472639 571886003 858163539 658768112 500585147 474682100 77152106 317682414 597743480 656421675 174840110 611125733 356346402 93159498 636102196 505535669 981127532 637576738 129605173 445158044 665981189 765733470 800543140 303131952 28149263 674023228 663797043 318255749 535537194 906786090 63884183 544319640 91687699 566276729 407080096 595536635 137268785 308574819 561070193 892855485 39210954 839237408 273166594 872335395 35233857 447029942 409679135 487971687 857780561 858892150 104010067 713103737 928346683 981476047 460187560 213751064 627426543 211786298 905500631 920001846 761035783 726974257 881660311 795547158 641715659 668222961 481131023 586234120 271525476 222569210 396885311 411404162 438832410 385176216 207818575 745628253 823794070 913466487 167972850 499312393 647180626 971565084 373103417 35919756 254759814 610264352 184750645 895514974 344037807 133338028 984711236 775043229 352115822 893942792 443519747 263877287 773713252 592520170 521314740 232743430 65061204 373561961 430102074 647817242 457384537 428986351 937730237 694826322 499626190 37781807 357015688 19417352 322733563 744467608 921416900 674745964 361971885 386224970 706764910 345886022 330340395 400026226 92894050 571891075 429848930 702004233 503675445 538008247 766040848 458502881 500328342 289578371 337920026 176678459 172501736 477790183 802171216 892779546 684815463 855413464 116381457 15832446 323292175 846282895 820547786 868781448 138532389 325650791 626759131 809264744 928991221 979321667 673580756 790949230 391076752 53778810 443842525 975510175 3614782 740010247 42258524 801438367 689079906 642281979 702576708 764723617 131949779 954367526 881013748 70278478 120165678 346143600 184278643 778277586 132371173 68179373 31297969 83624312 169492358 266583068 297207931 854064405 802564604 414241717 203428176 554292087 953271990 873738504 151295787 670494010 493646476 843169266 198803798 950755024 500152642 497258505 354238870 250657046 644620304 666937566 150836025 282312893 790243057 83734513 539924011 633859694 315515163 531640368 934693777 558689778 284105417 46012349 991747403 619131266 816146099 132557523 626773631 732526396 107643354 339625810 544194263 166183 640309908 954886642 860039511 524867834 238732372 895659735 535746176 560738539 504062072 290446264 802249313 18776376 623208551 950679811 61275576 985291868 178543104 969513516 495836788 183949022 660445985 51829990 630917769 181270176 610471936 851867517 603404594 101500076 109370792 337627639 692744068 1245065 447920431 764742208 977158631 221236929 595306368 359574922 553932785 314839769 248025798 118071075 169380593 495017818 950655788 583588779 728801734 55820289 445065206 565220266 816217961 823698772 80971525 669842795 98438045 150365000 726603526 667990516 679707825 783249384 61433406 871907797 461153451 547544997 291151592 11882594 149875507 891882929 76226210 637868040 40679447 790684364 484165443 8987304 339021680 571538042 339692445 125392231 249231457 568201309 871041192 500607303 759710646 185230830 84596412 431938349 807578964 392613995 300395770 308834747 829182104 748550408 275399909 616684414 644497777 176588118 804152913 729212621 406500034 989289272 673997983 968114566 445094348 549577988 224449253 838416273 605598502 382166534 263316004 637589771 638050069 434524855 513336280 328145920 43201236 945982373 921980133 182398698 783780843 237830018 462664996 438665279 379828409 535572272 594118724 141343376 304863604 48724585 809894784 620436445 24644503 651239802 419048301 149694275 613880050 865657768 631879792 988860396 537765942 8219155 928801946 200021275 251567964 767905657 746601663 638759096 221194648 57832182 537414073 952024874 236228707 777212800 82336005 796714538 632654885 814298453 984504764 359327356 516923172 285359794 587281200 818554131 446731138 692064244 661003238 246199633 639747103 703271226 361095786 430413334 983774587 570879590 879732622 625664216 67657881 437644984 725224514 665660355 831137596 616656572 705961068 505763420 252260944 342342576 273497713 288698860 8764230 881300588 483562284 654549217 929781701 206545941 643081624 599624440 171437331 77999778 450281715 934026373 66218619 912810542 314993257 588708772 103909180 495359343 883261783 696377227 871610661 400103770 591553821 542590908 658886959 895339893 520572709 768161928 103979756 115871936 663797696 447862948 696625280 653278266 448115950 428091781 604504169 65669152 396387924 144107580 352096759 347824188 361379188 602563852 291600274 263202522 855348529 590190779 620730476 141758159 421565177 460488505 752438209 333401479 410986706 379949749 932252554 186082213 824850138 551121740 941615022 5191792 182339404 610945001 580356647 940354537 931432563 445740874 459655976 445718719 296477085 353238983 320705299 927867989 409657497 345806005 682945047 89515723 953158909 498115992 849995818 198825995 74386387 345806005 962253309 901033306 181979144 817743145 566665656 519215193 250979660 151182363 630479299 467244736 873974732 27112132 104887765 187101837 141788956 658225911 725030214 256534853 783282710 85539298 491864159 298600473 499521040 183717309 986716160 460372725 30738634 200659893 518535477 81611292 471709850 279141114 53396667 168085474 864648585 345317027 360434415 564844162 633565876 872994611 502523791 407904927 528030325 519947884 727375072 608260201 209009273 260550710 736716956 871139692 331292134 108600402 824568902 626217512 729681532 454108450 352594585 764238355 368788814 307020314 130653745 293320580 347012785 174004844 829718988 919855862 435442689 752351726 48275516 646900871 144801519 180432014 902646941 495578910 643767457 282202012 646576457 405522356 87557206 31623013 213585431 868166669 271229114 567060742 130762419 389178481 861442770 721836068 638072267 698743088 279337873 839514653 889071943 899700520 677230207 740302946 54349057 306669754 245656704 446588589 288055952 410278916 769066578 625632078 349565046 438566352 486625711 782696976 627337223 806126147 211410815 184757945 975712967 795837852 454445605 685701107 762010489 713239723 60375166 948161294 732252604 288230939 484219178 648560859 276966618 745298989 849897218 277229872 929493555 302797042 773805387 165855899 245600631 601838459 963893007 515027310 908483731 912810542 546653151 852780059 202722038 292935792 193520071 898956755 626404777 640886215 445783518 235831238 509336891 917993846 988660762 580847085 202408376 478847153 514595982 134993677 24244761 356264896 318699685 741030604 117887610 775087374 149429265 750521739 801688894 878359131 209476761 601657338 510281039 762119852 529449471 803162397 667168001 274546553 8805493 837842082 42591210 770613008 713262225 423937772 107597148 417240606 369058407 768080382 316739505 346700091 320148 986087068 171551687 744200955 373194206 900539762 405347417 477854023 950786411 58804449 243221539 685519953 273960713 446992878 516295829 18764117 673874625 748814666 964963724 986239870 581401372 21288655 858864359 54247240 319851068 177906470 797863465 59948438 221929172 768876118 297497665 713132195 650556375 114602634 976832678 280354429 445866381 599233509 23139332 192904350 771519406 125138150 24359385 371756169 816396363 46507299 686514208 697421745 523926 82056003 26620003 495535975 346193590 236768329 519579517 165918928 837981877 853689712 281484363 242909322 104344590 901439712 597743480 667699175 315907387 654769991 921001118 464862146 809274273 611185886 850573545 185836913 255958219 878459014 166658779 718478020 894419244 458701564 152558665 294552739 922378546 700503501 719636773 313058443 953816694 959718658 752382421 620328785 933847007 557862080 331821238 532366030 793479986 371298002 624428181 289597304 311514486 384392632 414533231 842751903 197563071 319851068 585643954 633612796 173046988 33426015 227529905 119720239 830012386 381310308 363799947 115712676 990978389 320275786 408457441 49764523 920464019 830060608 934811230 112350901 314044060 636130432 717738157 148743674 3198967 490567893 486100325 21330851 766393253 962045166 900327962 300823074 523008918 406044955 844623609 629869806 509950883 899158740 977625555 744316376 308959703 963413855 875437381 565276324 905021297 640009615 4161172 22963848 224886145 611208516 193422878 233139294 299007299 127554476 380477475 845755485 590673181 726682024 567371302 4666078 221410444 567697571 686088695 737903490 248685160 289510775 524667011 631080110 304558161 565347270 875986024 413588012 634967200 83562402 500192246 484560546 315684947 121717157 66141874 525690387 474220067 409755481 188065419 587234377 58890088 556373027 222654789 347113383 22010144 980873117 353147219 274039339 111984467 290192276 508110584 124435762 680326723 210985255 492264608 322005681 442098095 148212632 998523029 152818138 52676510 148875769 245345282 170858103 339863205 255745565 487976546 354159816 479924549 171437331 157096541 818223058 413379914 769334616 316758920 829718988 599726108 383769506 486473442 99472000 115914568 453291159 529743124 323225639 889618247 652638465 133886912 225623436 101698411 316447852 678923578 631472006 207208737 765653165 141774993 556373027 325943601 625839015 8853329 455955056 179151145 655651188 957893069 819616711 827410568 954799042 52548489 317236936 365214007 557898350 68560498 783737512 77758044 878727096 651779972 911367284 34201449 294431927 958397263 580349882 933972273 55666725 120886003 323846452 280036694 288845664 53685464 640989299 313617525 914600140 620773688 628881462 263734530 59186851 235715942 403820072 297847187 513428369 100170700 361007371 557232269 170754877 189165096 789008103 123235733 198215940 69374559 493512128 542465287 429781378 888832555 861217720 384862537 891012694 940353069 899646209 160943719 213656716 213050134 948397810 917753919 567672307 653150374 737840305 237283115 552821248 572287411 284962707 590144758 627131846 202392458 46080444 354593370 433914360 805445299 434075768 549975507 546674987 692527441 92526015 534837946 618171464 482449428 752646760 513363709 761962001 263905790 668614702 462647113 527273533 324579573 475281311 49730386 180961756 452787012 825056882 824918675 353048626 531951025 650004750 945407388 492473117 479410532 899861550 191284802 122412988 386637627 183268884 117669898 145271387 849054272 10296803 903696910 839294102 559856393 903388842 208132327 945676786 176630675 642625662 280772910 109900347 727355650 640311605 940857903 337713772 209648193 858302766 847415489 672377087 441607877 111690929 23284481 541585546 474487061 225031784 164786942 336870747 64915030 647524221 598085436 562387585 322405277 973183880 900090411 5269269 625977058 748317723 504686175 406514204 151448571 794178538 109669314 182050655 919935523 320661989 349907281 471714270 46617026 663193379 486660739 264844331 600455611 376758414 414425979 447588910 977554796 660884109 314446496 391312464 170962332 358872471 140584109 944853021 281780375 295164774 816200540 147961370 55911071 223390237 939174172 589548324 548134343 934896665 584640639 151808539 231685709 747809477 806972050 970685422 377839842 231591240 806919491 663540028 213379909 204581910 991766506 948326331 895339893 653678952 916478487 912130146 742841733 473621121 974573706 510122409 849941959 655786104 686026164 722568684 299062014 300605345 168424223 69798739 362532311 742563772 639887311 283018784 268355490 145063675 865830253 96379943 72951675 670562473 518946288 939948201 860416189 418330842 840141840 671142466 88041455 883993911 245061181 865657768 542535978 197616433 328099679 100486389 73939358 224985292 490271962 618161536 888972299 672081641 991616641 331120445 830436331 696551844 551224431 777477279 580508081 251254172 253518178 595551833 784223967 294987064 185595522 169666820 61030323 792065050 102943335 449706061 529628908 720226936 758554989 306884495 981229408 293932756 121424867 443075759 51055828 679143321 958561687 82259555 244906559 667000728 6156236 932222481 768294285 26974249 157802465 994716896 920905776 619200087 391591252 451385328 982602593 99824777 901033306 982411270 844528699 480012874 26565915 577259903 117173192 844438107 173843046 333351162 23200562 370505261 61733589 478311545 903443011 974787805 72460828 251254172 342679272 959405130 608639413 540117752 540476647 136484374 903798948 75983577 955896834 489082948 383214573 989908396 6531823 861065377 38794235 739596906 944308703 255683668 189426568 494418661 276289530 649792152 398972072 63112777 67730492 682207003 950731886 901281610 815553675 909570556 427005548 472426893 501552633 160574220 114044335 945407388 67351285 874889703 930655719 323106961 449968769 392668920 889026765 373731243 807842948 362647242 81423095 216846868 605580252 274034085 40015431 64366342 911046734 549157510 117528272 652751140 186053841 198127576 365648424 660067411 716290360 416302859 696555558 949771581 583225959 505347743 176693805 165230480 386218673 707671778 667274240 751055288 647208870 926775073 156043332 896653826 758406766 426949087 457077860 705273980 225476809 359325993 678834692 154898557 919724603 731525975 73915682 839775066 214447445 448603774 992304406 668073736 483223461 241364290 376445719 67058979 724207035 741493916 135796749 766515751 932892042 492425395 477242633 111184639 661895097 79160607 15389205 238264269 61008671 273113270 534588730 920189384 237592117 378022197 110837277 831091613 509431720 674096448 930434059 289252179 467719534 290539859 516565266 411564209 611223725 698747660 467032134 433319466 542692527 919204087 325733546 908922210 741055269 625677277 615795854 833156848 67121033 579930355 858081042 256738147 916238469 51621790 969124659 104343334 312405656 135393858 664056576 449088099 700660991 922561161 317248890 938363365 840580120 730491614 356926286 659507979 588210013 943591558 69324355 100255923 780857668 798354863 305631113 21384016 670369849 931551959 215635499 436340063 972187250 601491586 642338370 80902709 913489273 933031042 156293743 153646548 552084093 888423358 791072920 107687451 886110094 203638159 929809467 135435689 201070404 988804405 414067812 563460677 377551247 820717741 524932783 182739672 565400214 649355079 903794410 119581137 701044377 882493171 189995786 383507099 159964809 185591591 865879573 694360325 853236756 76662408 813228174 772110397 703757347 258372683 452763844 334463069 697160719 628675049 100016954 882368343 88436000 447719552 948645689 273959424 899869384 796062167 350307042 32824448 721879729 645609079 862352514 599835546 655196333 165951372 809022063 65367470 940510237 571482310 612867576 284316098 821712404 481832302 342111625 407932007 697801531 859342294 773432232 456142585 558858142 310151737 349461845 380970152 867355615 579790636 798211557 565599969 544790452 910601752 439556855 912913457 922748336 658054629 447103269 947986120 237397444 824521936 814613018 341656709 797970735 703261450 783836568 240361975 82697726 738519775 911438633 843462061 998126253 503024574 265967506 10993501 9620385 640709479 761675247 765449059 375403422 115291292 153802549 673242240 207378456 43671197 191795001 456926220 160979496 286114416 561380785 271790610 869067211 897785614 123583781 914397920 304219181 311390909 563954818 471348522 767713415 124252487 976941240 691375794 188339062 612974205 267741935 155477296 431699995 660612748 481582553 880593316 833966375 927320188 224660522 959687256 793679935 543855684 871598414 286825354 684551406 667005745 870793580 568761625 127104294 371622958 584640518 363144149 918051198 947950796 956689258 209385008 599755341 486185480 245601813 38184464 282278416 181537274 457691978 541304146 121850712 238858353 255117323 754465957 549180476 788741429 272684755 581771268 332598093 924458598 213196794 275814352 253033942 974479256 550069874 149294454 522179102 865609425 638072267 819890314 308790696 363629656 149521330 236834568 904391853 656024516 101579014 477464371 404297753 495359343 1576987 680899556 452355875 670369849 801390473 347153956 836243365 957660606 892933734 279792070 65835923 269188871 741098178 630290011 17753623 904055763 380947249 407241404 674157598 389155860 759094105 742608959 149503844 97703021 711259845 491780832 480444673 225779676 651265070 567475228 332190635 485679371 691983874 311097420 410623027 235154074 496058079 258677173 552259711 325379231 729074466 794425970 329668277 602703742 63003350 486473442 626773631 874519548 892006610 618513212 615735463 878440686 608881964 825694667 288604643 502186475 94456591 760495857 989267925 102356896 456324427 583230018 905590204 73421146 68720432 51821959 139673276 721841198 866417247 921192569 12393787 307605060 345152587 971656172 242805873 249225684 45607667 270255441 3594817 330006256 216495757 880982290 567659168 557350254 29658088 844621999 493409280 812325948 202408376 478807803 681201907 146928483 575838132 585075792 934631558 163092852 120501330 319433357 427956799 520441157 983706746 988241884 49473144 120644199 594618510 529917314 507659491 649824183 230686376 649757978 960953533 280772910 190878240 994044799 248070358 89371392 853702085 906453576 108666345 19453519 870929123 92079653 716396188 279094063 945916592 321275238 10771382 286050631 674776552 812769375 641705484 878969250 262622472 814242989 631879792 436949514 717613701 875466025 200285072 346626117 671294911 554673854 347630628 153895166 80495005 202131347 990979687 527347289 656376589 909614384 919758500 891617025 405364767 976757253 209361493 484493736 321638913 245747443 281726114 831083309 329349518 664345064 803044720 994601928 560239986 181060216 67264046 164147863 910921942 964696025 373815889 293337432 768576534 580558038 620179028 641408884 164254533 186876080 248633244 450114610 474124666 343812846 676222872 445237725 935715737 468169711 687080200 321888460 927610940 996107935 624445175 84070042 975055796 292439300 787998294 892027393 723032089 303584517 845967527 869876217 421859740 418114617 538731784 401856612 78362074 588037804 929223040 151515038 52492363 252460927 917895294 720623027 521314740 82636928 497158749 806385412 492507865 917460870 686927435 350102276 850407504 969758776 56231595 677905141 744858460 578932751 931077914 569271706 203784826 742748771 511310379 481975709 731237546 251841666 513503134 406801422 943079036 611872085 794721782 419051764 237988928 202741092 664735965 489394864 342775751 259099809 258646168 323887104 130756006 655585678 899989818 436073316 898985702 631518882 77577081 602206022 77152142 685877319 127465266 72939136 152676439 551771829 898943533 263966219 126348993 56521991 983096998 964354646 696418208 335310041 632964449 434950780 927946377 145063675 210048214 685297119 526411784 247537717 933195382 729086054 188527731 420824952 92972859 805445299 600492841 267917755 399235988 516220725 749977641 741846519 516634769 260853611 412885240 898082384 328297521 668393920 440377824 137892086 181758619 762379044 876774101 805450606 54774473 824090732 759601569 158382466 47048610 301648831 318293388 121905778 435174736 494457734 687182902 910680902 836539235 883475594 736998155 690491025 355389206 559117374 939467994 946163930 696017714 360813385 794035897 794938873 690271108 674635974 890420369 512494135 324257560 432160797 874826227 110373499 798664343 710247960 920070801 85191345 990792736 670869754 732384161 812302869 169579457 522496684 876844135 146071692 68914031 220997904 367150335 179892761 676721871 18661306 611800738 991162427 574587693 409448066 461382708 506416817 92408613 798675536 927755775 129860918 64625559 65846986 487461869 377966843 315886248 386452577 412123492 39155062 540492010 116495330 618209899 552402447 181824688 659952624 618171464 610632723 701721594 780316799 753059445 369482187 976541527 189904122 148673977 210786902 449968545 614277424 501552633 167675513 437026813 886533316 439230456 247014653 551728960 332341621 854099195 489014961 667912785 600641555 888999508 90201401 956575254 298348639 994327041 606948497 776947136 967752859 830540544 657382897 694689914 538386440 302390804 896691447 487478951 644390779 840405730 432527240 211460853 514337666 19072262 153932959 853495206 215457782 230741870 612787701 237338674 636101762 361482650 909298347 993671038 343908749 110378152 187653682 515197837 867596193 962967284 791487655 557704565 759364723 184122010 720484957 351495240 640589581 595322612 553109185 718758463 754210135 732563510 105911303 162115823 535056126 491031926 703761984 178630895 471687987 551668275 471348522 369293025 592136964 257029154 715028530 88275936 423660355 788751134 618853931 82746904 433111496 763795669 923216239 368664201 894164251 295733967 520697098 427559131 506977337 791299787 970974461 38827830 976853237 927857506 941851032 168699186 471709850 267016829 743377415 153463302 164395307 735104334 655975055 975293652 492131438 836622677 305769994 241651836 685752954 710997784 327191184 41854656 309558803 226672371 56383527 599677484 356264896 951446367 872621425 331826891 128591343 305166273 762629986 615587228 615586669 493726184 935387171 406346675 544786856 753447772 258144702 272934848 783783736 963220160 681735992 597762184 210622690 593332265 325976156 891641043 351399345 899721333 915930851 656632058 840827585 33455021 970216047 614777162 732570260 319722084 680466595 531026372 309003598 864371443 841515678 660933943 913687400 649244197 340016320 275081354 944788333 249056955 901160592 10204040 663070690 431757040 583807846 941939921 54542980 475778432 469093599 407160045 743764848 960029546 617782104 447026694 417500934 995490304 476850699 695040326 929199730 96609405 796065032 40475562 75783329 334971928 131600313 268765931 460730143 376060662 703612143 425136872 210740382 981194102 778880904 393580019 740302412 693577249 13460668 77445459 586072190 278414795 959002030 484699528 808198023 663636449 638004083 154360098 26422466 599097265 865819364 965340002 97332030 255138956 768539753 393669090 752281282 968573457 658520845 693755573 2179884 143091225 367644441 413534630 872278707 957809272 581051055 432160797 840260401 113749795 129090280 5720341 726937541 573306635 681244590 961051317 678940577 671195693 526411784 961472157 151139141 901006427 343468797 891703023 72672216 677438225 983245157 902197969 575828409 448057368 88186403 584874948 240715713 729204136 154643481 289276396 915116528 423560872 733020467 886180457 808574311 845188625 757806559 113035768 693435798 270387902 366650660 822428289 507899013 363180052 387815632 969503492 66092151 430778642 768908763 745811423 363052969 733774654 878684616 307264012 811676913 656766231 502236558 626917550 722154376 517188833 333479246 173947816 210339469 254775758 261372090 644905573 3844365 167071151 340113381 40340213 391469728 75273316 164799535 858784780 950927673 323462346 358839697 450075102 828865216 387089518 320275511 119555354 511930942 794035897 84634225 230897434 734347340 517269567 69077368 242283460 904006288 44855171 814851868 254929387 933247408 946807261 791801879 575159480 60386937 160535166 619282110 519664266 581341407 516187284 237353879 947202183 5877285 419467172 948364822 212971099 651606499 163165731 26810765 302522782 80806960 926502631 352167621 648680042 27295572 729317168 578047295 114016006 581189570 563894255 977351825 245758116 711463643 347555863 138045844 456926220 786860294 139260204 391908045 72430927 518695660 125955260 715693604 531875888 923042221 499548067 820756679 574912239 942806274 202611317 125224664 712802752 642898680 674776552 558689778 712544007 538687445 662770412 538689974 858733917 526779246 981301816 325976156 544624560 877827855 327465688 741450415 359527666 862643877 757373559 483275882 355902633 699709933 665338182 949431045 286248552 817637041 483223461 921841492 302330288 100175210 967595591 711809870 604891880 488269553 41725718 665097708 32388712 475406405 982410388 522635100 876498759 101296410 204093804 319080275 500256329 379186854 504359774 760953776 407616403 500152642 970184695 6604026 963595632 723478670 942244874 137366431 951362176 555459438 838721006 806034484 457233216 875018779 70088690 989082954 647603140 95748566 650068304 686656084 502088255 737207401 284722456 474124666 189813104 998039450 392542710 189810024 193968484 80589691 929299831 156192005 87766087 350100531 131716711 712281981 125257627 829859134 706333285 633650035 931089670 329795955 366268372 451286652 559431489 592905486 546252190 717591337 579582555 869979551 441883796 37509005 233622165 632861330 931431204 672689512 56212270 409729255 232214895 428036118 362911894 850140199 55019050 820168026 954745500 215190124 139143032 165248667 41881998 767592004 931077914 196912969 872309704 87004726 740619064 92573319 568271577 741686840 267087970 184515691 481963736 504584951 525900238 703251015 706020706 935871682 540861292 366849462 716312697 716534762 57024565 641436387 353048626 47313703 365648424 172928741 476264191 516018840 101202182 868460861 176534501 275442194 550825367 157522100 386873012 144322118 833348063 762234447 748552443 348091709 184016166 390650081 24547570 277122703 475242014 711882259 673544474 927066412 819751546 803273076 351128264 617262922 962966569 123983123 526656624 936334146 674446639 873206057 137999982 369106853 988638792 354914255 969984538 529452965 909140775 400908708 177639490 589178258 833348063 792623757 2477352 210918150 189888346 416367930 124318347 907426598 155949240 846316622 736971141 808731987 869691838 198644261 735783355 137563650 677771377 298926259 873240946 992195884 483562284 967718021 369148597 630114924 293163703 645323452 427856904 876375929 320213827 452358866 309937195 319781934 979620824 102270271 880403010 146811629 97496996 163217635 332759773 796680422 767874584 215828308 40511229 443002956 677254257 674767780 90405011 896846126 524959868 588514014 762684106 284273820 125585953 838362892 161482282 843064517 363962992 315991541 385108397 445539881 29667013 547788353 226937839 190486304 600219288 178534479 61943352 630477253 350752551 775211503 417760871 720296406 152525069 51134880 994467816 349086147 172718302 797747760 607250325 668222497 688662020 166576632 844515008 907138479 555905191 531659389 93016809 238794239 518398944 357062838 473113919 350176474 650088578 976968279 117837946 531917608 602137128 693762249 789422501 266266484 245575361 636923646 660783140 805666000 835906839 590646679 795329837 547568453 497778507 182051610 749883256 923850111 394600307 967021296 664962504 948397810 631928829 157903167 319698360 529213108 921696211 18253136 211216721 221989794 325943601 842341531 287667131 335186503 275064860 480763808 259867472 415817716 449678194 369489746 458706943 614835068 453274738 898518709 64926071 545634105 84668281 128839755 287335195 861065377 235785196 423981912 907709191 841732748 872203603 426363181 755676571 636102196 252354692 35680138 16207825 871660396 788411088 353342099 153313676 205272144 639141179 657132881 53396667 140209273 586562530 188081201 974847198 495329463 265085152 287457374 332374360 155157220 544468248 119212724 9012325 856027275 878717347 31262737 223908058 9414705 110800159 297528249 644643359 690761163 402113119 114715194 411958003 116759076 203133498 298966459 235176172 41591648 658465889 709792293 2483702 243773211 177932404 646220905 894432600 204794932 927352508 221082006 775537490 762379044 509254308 429558627 969315167 415005408 161034699 862653771 347750128 496024193 336323066 964722962 169129960 908495052 601180007 915464593 919481701 605020132 946658252 860381756 78116540 116672160 914424038 768359900 700269890 886760598 343995335 310591648 185427657 742290080 759874694 571156563 623705472 823585522 279777281 870757766 991481005 806239687 674156574 812368466 816396363 681298789 705411029 562808718 646603278 652678756 367751944 233720886 842982474 292935792 831878467 562353511 941797668 134736444 175562868 381857148 789322487 375473817 163559127 279916671 882829384 237462078 330117038 288638341 477018536 433536983 625151850 491780832 224756714 726845280 377171368 368250509 998665354 209361493 96548527 354192975 73985076 144079694 4169289 249727680 496588704 205249015 234776586 540948676 116296404 614424311 62534723 376765092 949574546 695081249 237997731 999617282 904398153 214108309 522889650 797263138 208724915 715533481 480846318 598543348 785910933 608881331 940175503 21754036 907539638 429020788 519427100 653007756 518910561 467535349 57270882 69687576 173196971 966497061 217740455 330376099 543662956 893302939 353812854 202500406 114913440 175346244 397045253 800004454 475296997 965745765 791731092 960775936 367893421 150208916 379137068 275603116 783299876 243222773 594145910 4167644 761265995 735487538 831654574 167430590 530718781 639866316 269313273 800015741 152310287 531750849 526316181 788204947 823867270 123904526 780179589 391452323 839644634 939995195 649479969 451907416 475928092 284298023 87386848 868518970 15051043 139536425 780625815 500072876 52424591 980591836 423660355 581353120 352115822 760190487 809025459 668300325 638336748 439264856 107534565 308497957 542188160 94680981 970202522 812849460 80820245 907045193 428239457 209890977 615380113 967944044 500446510 985569495 86687451 218865142 983616493 610907 347824188 22862066 877204645 764178435 437559170 263287205 569008596 901399183 35174490 663842929 504878376 811509065 835706702 182854541 762838839 89537719 915936361 625311260 485968629 888834971 674127569 455569806 768927553 833720280 332154625 649467429 675250932 642742010 678923578 21083130 122347654 977053290 675051965 883234447 108512913 54586435 434164509 288360750 937285778 958742067 460563935 645978446 728768689 753008925 248732599 726960526 417261916 547731252 641002152 603340857 419191019 662619534 169962775 394649001 55739616 303170154 49929106 209658098 927961533 18362491 38788995 536795534 912515649 775112592 957318780 560297762 823555271 338176490 407932007 871655092 183530064 51372071 691023661 278777404 305310256 815065040 461037171 506706996 196472 43619006 991664188 301110478 301269206 755754015 418085973 408043608 315214136 702921397 548278237 837940347 506215392 621362799 925383853 364489055 832768186 880130113 449173788 897347825 455913643 432892629 731093481 56231595 894681674 796700839 418786432 2823875 759905613 310490492 540653433 65218245 853733264 816921655 332120961 649244197 231981275 822141879 697055375 469803716 739295616 915684600 152140333 657757262 479221176 356643230 464786562 972891132 379149065 447894237 623466220 633806403 956333985 777599844 999050865 114170420 954874926 391528034 838775595 795156768 906318976 596816392 336203721 657866226 319311632 77445459 691881241 152558665 186388386 841040747 830528269 387393861 235473036 943629727 195693626 903361579 276931844 991796077 365140115 121925331 110119563 11499357 865931690 879934509 253415317 167751598 530155264 785092727 21681659 473045646 123820513 682839121 923908915 359109330 286201662 53873051 609471397 492519999 208527830 686508407 607049335 829945417 938912177 894607280 384382840 373345978 767430667 831672288 249414063 430204180 983061228 426080904 184800559 544654268 285832941 615177933 980278764 425234634 583466623 139742594 715714910 110352061 880698011 688779002 152512811 275628875 115924414 810500243 303899964 893732006 195113601 681926663 465433128 855559028 722772767 60045346 710033955 770834370 790684364 521141060 187770251 619014348 476055108 391868223 155617443 309007149 437220323 684539451 385175458 121067909 89650091 439744240 986465526 271861705 730988124 460646692 969765388 541873505 108304575 715321835 358675249 708280315 903906876 846302915 271354388 293593950 397756443 152857605 775431056 561236400 870501218 813687893 279563934 84573804 881207340 166853988 400924325 153339958 815213954 570552979 922753286 420659251 431757388 84061421 376583145 463153616 562977853 608113937 657045469 204396468 162406864 932186681 752282069 706936785 668692699 970652114 389171381 349340169 740485515 185506280 170395983 809961371 120394812 885812674 809046545 92340190 63494740 950809280 301260918 158126453 87297333 416108858 77973614 693881152 571156563 807870088 94074112 331766056 810558303 474271008 621745653 521366072 550366063 312549645 790607922 666714660 389744307 147569735 709196216 63753373 159479154 484264019 250522321 900729761 38625419 695938592 207912187 627966173 541289133 469925490 972420058 892579138 397726694 17349599 510690192 973559686 822860658 10394747 60288486 578573834 586202091 400675787 675617165 37367171 908280273 328821658 447920431 380668566 728956844 419014991 685292313 205189754 331908381 219079043 182915973 508480273 393407702 225375899 707772171 261755897 115989691 692230615 758228429 478311545 346523663 792599063 313461562 409616010 603334239 969189150 980461302 779948941 662780550 563894255 145477087 568601579 822605509 356614146 406935553 442154257 979897492 750206737 867551345 106709570 672783989 226154315 703340186 329849428 317581191 178242045 192788129 405722196 31265163 689593087 979283052 323360348 854340230 604163704 688387090 980470540 257133941 276292005 909507751 725821967 811721365 530054084 972531871 160898959 578573834 359224662 785846200 720043916 334131790 305862565 379028739 968253542 717205707 467594501 636885165 300563992 176588118 701837102 383342063 746268925 117441259 32255360 642706478 37783707 777522870 100135085 738737561 194394365 50566949 121584537 997870254 37673139 935262535 144476763 888626654 627896599 863269214 545454459 405355255 641256407 169599061 718078371 612309662 850082695 122884359 63083916 863644482 727934517 637914986 7794209 125138150 898008952 290192276 320485366 810236713 249905700 887768484 350970124 303257267 291898378 999396304 725821967 819495280 416099465 33313838 378104478 197007972 302735980 72715413 477772307 86093624 825020988 138605415 472384245 504534339 730651347 728003543 502076746 805195844 362041962 351360292 866462864 624475971 978620030 178663272 165138540 313839200 969737335 331406556 331424451 912322979 81391736 762768008 672809655 361935037 212390686 537985641 532508782 35590016 111555821 458595996 708501743 750894943 128308112 194316306 974946218 605852115 603867048 723386090 992402260 427006670 547290971 359682293 760495857 87688029 38861408 286520596 894739457 148730580 476132280 323887104 512164429 216330176 261431282 875751463 742314656 379879200 260614924 498163137 350970124 887749207 488833677 283573164 847102523 163531269 642117713 269188871 282202012 742381807 418928845 960874928 727780661 282250593 897818267 628097960 496058079 119855608 995107796 899391651 439979012 587392866 664280398 811509065 301972622 161351337 99610859 29778056 741944919 300938564 197156905 269838533 432080321 147961370 898316846 798325795 902282614 318021492 950755024 944437522 551355866 337162668 152165138 932669352 622825947 899278077 347501549 872475878 526313330 926850585 505361149 733617926 454739483 816319397 407210129 317056733 462640215 583146946 694058037 163165276 841495268 544467321 534136733 229287403 197894325 999050865 100790955 782850272 408480255 920779205 378355302 446731138 320282595 29476928 151264264 813476741 239578032 912862543 512494135 576988628 661087298 670938758 659680721 388329447 806039210 216329877 791026117 626998515 721954109 745530463 124657259 452834713 118474464 835789177 894932022 139613041 650349911 180040728 332258170 318473721 551198211 351513965 743082974 899697112 337488254 185462221 494610477 65557236 7064684 177241605 314159344 581737890 716534696 4994706 930788871 429616183 642022255 547731252 242068801 149494956 35864521 410623027 686621376 366434966 454418142 670185882 594091266 806423648 853596835 470376541 951206203 340125821 314259455 608834499 191096897 595138520 289682256 543063660 927894030 403546403 616544375 497274483 958386675 495017818 979830232 819758465 449419626 820168026 777196964 407809860 828733792 913621116 184403596 474827596 429666584 340335751 516568887 437850325 712141866 852176008 206184876 226983026 844674284 217285956 125475399 702987461 687477631 199005790 525541244 941357682 57253889 794826778 207739798 73809341 675221461 436091092 742709824 937833904 381901783 8482629 206426758 701121446 936334146 707630684 343958018 396048893 916019234 103939600 873716602 400085829 838649789 283538243 854655426 349304251 796538692 464109162 764141635 425942537 973061345 479977913 289962613 776748999 282898224 568460439 493690269 194247953 384393412 608545212 696418208 68721544 128938172 34836372 7696362 263910446 545240689 432734339 4704911 501042458 668126430 23928313 295278920 865067793 210416505 305844890 980832400 686371198 697243707 471626542 124697361 642362487 457103969 141421933 192738562 178683203 943782687 917192541 678719560 991136837 456620920 879118220 304902188 212264834 22319693 624964394 981913475 567478260 782539829 513981965 620663327 441325343 794489830 76156332 981807389 496574512 185901068 490434869 648595325 978234685 982946619 299156199 212488282 655564335 360396613 604569733 50490066 925589626 713954662 177507546 2822189 27221339 30371696 995989685 936380498 206052762 421673793 694987800 463755517 126512331 228765505 54598613 7704234 824248578 835065515 100776741 822719887 287181416 318559377 333308353 109008262 932928571 160062573 815522840 663622612 160267069 552379585 785910925 798382432 513503134 493096424 506674034 566261252 985508270 506329949 938128497 310161138 244232682 607487614 274453096 857866809 330207681 342527140 875830483 882449679 417070895 957468970 227787565 18404901 256022311 709598768 266404428 583634656 78884550 158126453 420377907 677840345 973752814 905451922 586202091 456085281 924877261 428847947 458048146 645124068 392574387 656261396 395324056 397335026 418352459 303131952 420995609 86820408 576736716 705834130 519182109 359685176 201986500 647305530 980948112 535242214 12736416 74196764 603804282 343646578 222008155 4994706 668966523 562175311 423560872 487453904 69609078 31026986 881816885 363766945 339005577 621009749 937075108 447953515 709684109 556978422 180565336 16742439 509643228 262345191 311901975 785092727 152411714 648729298 196912969 701473760 484323956 764762493 277396511 343995335 696672743 952757137 609268105 233317734 919518518 867509782 595879931 429404462 16132617 120231510 64366342 296883483 953144783 234787856 100302296 933690797 861021870 506384415 809720682 356569004 844182802 781033406 918302903 894378930 639666633 27410157 733178502 706219221 709113003 574298789 929125227 906700604 40094288 939408339 853417410 512759193 317619419 146327897 451704252 840496131 394600307 773508756 128745470 263479484 663300289 898776212 884745352 598543348 234365568 84551611 693577249 326740701 898656310 302142432 274784777 947162183 256650314 832778392 425231733 518364248 434277517 189439689 259529845 131164408 426016897 618166731 830052987 978506378 267423105 178361470 513071613 809409572 977767914 780335315 8441162 781040075 749175532 177335007 483843802 165248667 620495379 922541412 844331373 906108145 98996342 317177835 421234060 971447013 616515715 54798156 158617297 42883595 7421538 128839755 621413439 74238023 703590921 946793159 503024574 619746293 774092453 376445719 128619866 925383853 197823919 49103484 749149240 519579517 901517472 338019688 432308595 61683899 921689799 342359937 745595635 985543721 201554281 216272529 362611866 317915088 872781452 895780349 207279853 207965980 193487030 893181346 147230182 472320778 320370503 952086007 957134675 132073990 655022859 298744574 129605173 287667131 570386082 359575688 753505905 416108858 640009615 732689820 537985641 747972686 660417693 270392792 274353342 509338617 491488360 543104636 460984626 407694954 769249776 615778508 452427431 586423144 456597938 584115352 15689954 756414900 360177711 385265086 32245644 264553445 273199365 435932692 570011682 696551844 449642003 852436303 294517864 251294323 614293937 635618363 158186860 513245990 608634775 337230873 654020998 450013468 648388773 403615559 283430836 748197399 943647134 794737990 325206931 919494645 632408171 590294605 888095172 918175166 383739045 77696688 113070692 459087059 907181788 490171161 660056831 583779105 736463397 713416616 921218989 56172061 219941873 151345580 907984256 863044203 630936725 588754306 244254149 960321540 679593582 422671714 188961053 441910779 755998236 981969793 57251105 639155251 24937505 545736861 957507901 658173106 147786442 6500638 601883434 48314170 544308951 144504086 893245848 592704067 762038384 644932353 568092268 35122314 903028383 489493962 830603850 300311874 305530517 660175383 849260615 975558941 423434184 331765606 531692633 973559686 644216690 41881412 848548419 932305520 626451235 759964935 892977997 706022929 228077745 826940211 547181536 101720630 673238526 758808883 114376320 436340063 901992536 294917445 588946662 692879780 954392438 898343976 758689592 704902885 616350166 265967506 549845794 183284001 222350629 517749359 407757410 51024265 206807004 557511127 642405542 5507057 853565646 834243541 60987824 896741211 38975398 231583286 280823357 695437892 232269154 211724669 661180531 200800735 482137728 899154631 283683211 378008440 860039519 278768242 187674314 781680602 523373114 332578682 559964134 775628974 671814461 287090976 765792261 697446213 181734677 139607498 475478216 487713624 471626542 860441205 504264468 226154315 407853168 444509724 445144442 198376235 121112903 191745723 984358036 440198078 403387170 274092315 830132074 867817125 829691179 994743841 495651520 273903447 936605702 652638465 487914185 686956988 963628851 586320608 327356320 484995169 615557125 237060406 718009734 603156513 414490106 869904304 528806160 891601091 281270184 399946682 287151414 955099661 105534171 629825176 546128998 427602035 781638240 398660180 15133697 289701003 329153809 346984722 249784224 11079613 2771739 130948055 507090815 739849539 434704409 48787091 736576842 919519783 34740222 551045351 809838216 221278242 893892315 247351708 426795285 890420369 597907470 69526266 523904607 346901587 822055482 240978350 269265545 77152106 144254102 725308073 994649164 641436387 902077336 317729963 920070801 794328456 928920506 808854036 292687155 681797852 889571674 324482103 553495354 23676886 201508623 365991941 231021345 52071115 573624349 156544468 185915246 893485496 901303501 193520071 404077303 981102870 375256526 382154326 310480367 266799042 228938747 110588040 269635942 377119508 699720870 80064689 869449901 626731623 905777201 189733464 7489407 422203607 902432577 30426635 34574055 660064376 613372288 333719643 502957282 546412128 904143170 89959202 234769226 969211258 493367725 462949943 384826642 836935873 605250356 184414047 928379666 66905511 424706197 980442525 35529732 376444296 823952146 197131389 417436074 547656695 529351939 912061331 34202352 246476968 952927497 599803836 895435843 77310520 921750126 148696565 813182207 127535416 491936204 823392811 439872941 667608258 445372445 995434356 801354960 858776372 556011413 286157273 706007185 989253403 518202590 786419681 573127116 286488498 756433961 553232683 508201177 273869191 225298905 417153529 697069274 982862428 208423368 735943139 157898844 529248512 931277823 368332368 550825367 27636376 508435600 160943719 346143600 695137784 233989473 17494305 733628029 466853198 591511208 643370675 675373139 242614811 767533531 401690216 308249377 521149462 427882918 281432897 308481337 973546944 807435422 685520131 230696597 634228321 925105581 496688136 938710171 166800794 57857514 26453222 426203260 755998236 324641398 1738006 718287753 638470080 89649136 145757502 191770339 515708776 456271307 115759222 888664344 315337785 461121826 231195659 586719489 684368728 860508694 458255231 363525879 2694110 526863280 951679082 297867609 398131948 458791280 890276665 539113537 928849246 3049437 880845558 639267408 671327929 13926332 714806913 105191664 640490269 222970439 847986398 537921711 454352313 791162714 784385011 52529084 965738626 681790439 493096424 435107968 145543859 650349911 588866199 138610350 680530405 873327332 778781683 730647082 171515727 396417040 456997406 477384648 963599054 331938890 326289387 75946246 375477106 263183331 144504086 297924820 371756169 790004146 70982848 874828780 313765792 728137918 353020828 480908146 243461352 598734298 521856540 740859355 891090190 257764482 26897842 765467096 411051852 953144698 695313966 212152718 617125320 36053588 332174108 620126897 470308075 43502419 790058095 916069873 607267493 295789462 691120598 703612143 692886624 340834657 289122558 694092822 592418762 471572223 275812178 544141385 172296105 389987109 848829555 539315905 827358080 490820084 314563598 264978672 251267095 792139546 203096056 873619306 682941065 784301515 811538232 647735708 983650613 139008295 599613932 561370602 27748545 438693568 255781581 121533226 82125540 427026029 595131827 627539351 826072329 88314088 692744068 553056740 534161393 438896719 566710036 393520735 917891540 303418073 418257745 326406924 414835649 109173987 542032792 780920903 12865036 36053588 578709110 805039993 44588800 269032183 782660609 582427794 676731735 804182470 467522759 2489177 261498058 225654078 403062838 10086179 213991985 963600416 414360992 862831848 703896811 115623895 227848173 469430637 287809916 734755458 28644081 352424384 80216009 636842851 297847187 464786562 833696927 311437720 645138505 488571247 281959534 365884513 261356959 929734643 990157231 407916921 537036664 708504497 305885157 809077527 544891980 274453096 904929212 664355142 436004929 336254020 951582242 521173575 73629277 501203499 397294280 557191802 893415157 524667011 203638159 152572142 405722089 453206210 440792711 472962898 961443464 873906634 959040930 149165578 907539638 273069198 338279421 445074203 976564065 538761379 421893160 515311673 650089838 806407983 264989413 626169212 376202669 64188576 26234978 806423648 256835550 157255278 991787022 532319743 777836817 111984467 733221944 109417910 393164045 271252692 823625986 159286970 943189729 76584750 99549069 62617590 471911149 552951034 613282549 581638640 951911237 286974830 14812767 513754236 443183894 860511790 538674850 135436649 220674854 195228163 599970078 29496664 559304977 919449831 737790474 8313432 159360474 387843529 996143755 953231629 648528196 731554005 791589670 540841838 321969464 800749016 238056184 890542202 639141179 217743755 677229387 322808263 20993282 951310571 795413754 699127903 492026614 671009648 454117729 829969091 508435600 527402884 559010365 641585496 561080028 107214594 906108013 980917135 15355698 893135590 559602007 822304545 340622359 883859189 780951704 945885524 744048530 582623030 52666609 58051563 720492496 505959801 662355595 945257641 779867810 144132730 399514157 417207373 535340907 404507612 866761939 476545422 663538952 290179524 943046901 956230266 189813104 620747965 954124868 765991057 929068492 443449471 475477665 76170909 143213904 599935222 278623327 952094826 786996146 410629140 405518524 445991234 515803150 991728757 22469123 367868111 970752356 437474173 299095530 62018021 263617488 429721343 619306375 721841198 706195021 940293706 345327646 454080013 639310843 315534885 92526015 575067611 614045776 463588423 520879386 676080498 853217975 229062710 332937497 451826684 198382946 380245386 471714270 621725301 121692787 128663689 606192646 680675307 314726750 596154471 25169816 749937392 286878390 496375088 717720741 480055436 799346360 762411452 458755537 967942914 805396654 273571100 139575360 455514649 174684212 880448258 950655788 972963841 580102343 973798629 323694980 727660419 900540802 378998151 802199807 189283507 72420668 24047187 444815107 233580459 227474274 141157956 126527369 61832354 544595334 303257267 305143752 382083687 136709254 765737868 377447452 536475559 729149599 344074209 469727748 663842929 904992252 758945917 127060476 704170718 553861137 513842415 337981398 749844605 164640346 448252204 353935029 605945278 615380113 968067553 965361202 428388284 332960618 926803867 277483843 721536791 706515057 279001588 660478005 638788751 63737491 184404568 272538337 233681373 511077068 126853721 864964228 23152254 42220086 186596985 934503532 115943537 917460870 416530607 508084492 423373324 456556292 309100818 780179589 503898623 330080498 931786143 593060752 511346291 211970204 972213129 738304127 443182925 813687893 583348849 606947259 454193741 103897007 555558219 364652753 730619765 672610581 633547370 88331524 914522122 835777314 474979857 499716647 225830693 361267663 656527793 733237201 273548822 53610462 700547433 823341094 597022130 482219609 726383251 813409812 551145376 618705094 563043963 443920631 278247688 982384345 55432611 591065162 676005625 659591023 815949118 381947720 668839101 777682989 594566573 681336138 25111426 885172840 61433406 180961756 525900238 472774763 770929061 616292488 351398319 613732092 370807745 554514797 862762230 706601343 964835420 325350726 573045528 129393349 466608728 490654048 714695521 906521396 366677321 249167866 999550727 383429452 832477020 84061421 196865428 994378412 726258320 382154326 659723157 597060687 716354241 378289123 339425613 217333244 803006982 62018021 286705357 76325106 20819069 64383339 316202913 780307636 147875020 191288542 848316445 967016952 747006849 312415530 547182821 70998822 741394707 621392335 878727096 978006341 637079438 389785723 312856341 932438874 241853464 69980125 116430610 316132720 408013926 509443006 541944871 692911657 157898844 222351690 256206378 621852625 909473742 249480104 422564263 831306905 343528557 395900439 769301394 543778814 498865985 786605985 124780349 529164153 167624105 867551345 113734457 778605063 986715224 423841982 795095966 645897042 888932089 984672088 463530119 366648438 971851345 545390369 775694038 677562085 382162203 601278583 430240877 705796331 832209262 299689529 855796275 213572338 731679339 345213233 307453232 815308344 66966568 571983012 870000297 534451260 171543240 711755540 41825261 540278908 426990344 354774759 95448272 267834965 595138520 880130113 857780561 418238233 127104858 529069789 211742524 332502958 375885008 945404640 23591727 812377286 151394939 480967856 247004382 687003908 430707668 926775073 245996692 802308354 753064312 813634406 928542674 643767457 983054662 211724199 510875257 716146114 579084043 783762506 316632451 333719643 955832609 148444690 319440510 919411127 180242639 689541272 552246302 971046172 447757235 993370271 707330782 329849428 573297229 562338571 964433571 130202120 961203258 274744798 397317820 70179578 874250036 559094912 156544468 558647319 667319192 337288233 775617590 775380005 481550178 748235396 302421312 843975318 756641620 577766786 591563833 983931295 677771377 703761075 466812269 82690879 91137510 434891949 561957717 263546379 892796641 991105832 24336122 954979813 693602541 263624235 110356353 351703376 319021342 872970330 526786005 894018374 557590635 459190503 558912266 108499350 713299117 59249063 320416107 260614924 59578360 780857668 741846519 279017910 709520324 363633735 767298904 662997804 264198170 136449779 963915822 741840519 169760920 593626462 133857435 113558051 774777932 475296997 9493864 270599830 862948773 864585573 352658789 615180486 168173869 153996215 516060632 822392075 373223725 877095778 906931914 701721594 546175866 349117055 38719115 285853856 851283263 417963980 619676871 611668821 955899694 454994984 603625752 547479384 89740717 423295944 575838132 546801426 379798742 369667782 481135588 563135488 412478008 613921295 999163842 227276691 485364599 495884446 33958388 972238481 438566352 505484641 500597606 366877263 513562011 157960505 513624876 306832605 542154672 560823115 660272130 306028898 631437168 88314088 703389672 405557316 273814463 385750609 949800407 935534893 730214420 616701769 639902680 190379542 344683168 607335974 100929080 143705151 117018767 277419313 452218746 438762567 108512913 187714453 469056723 100811645 697801531 666711439 45794757 584146707 821541541 594733522 518475620 757232765 546797183 152821254 442408841 171550188 751495091 501446185 755301097 654203190 762541755 866834153 90191677 896412209 613506924 328998896 318401247 194790778 631457756 854046514 265696700 434710295 878435941 944308315 502656068 633464967 841971085 281250236 536244259 978701402 260783091 988705380 181273541 375353474 663837381 161889417 43271407 867716601 3681378 329965099 160574220 636561352 759217908 856066436 377173647 974946218 352694423 736165148 306798618 250164483 950194449 695754057 703261450 254890889 185805801 847975134 41903405 232919519 881415067 302501957 201802842 738614611 708336400 334283048 784501945 742810656 797271859 945505556 126000771 551909115 966469270 853874475 969971455 256418075 540908409 67878769 443583056 809942114 11393365 950900973 552380855 357366464 18888989 999792326 216772538 422004880 978707934 111101313 759657836 118071075 468635947 455868771 110362930 531401955 845304912 486749262 875562307 817887290 348876818 968985925 878430148 286114416 744624478 760861068 87297333 207578894 548519415 173258692 247736681 513624876 395357073 25111426 519988844 570909040 426238311 429670422 345391208 995716283 632123681 652620731 310490492 701706725 118725147 944529729 170141671 167385377 460646692 650812142 305530517 280018981 445845960 192133542 861203064 137318483 861525031 487060171 417207373 948227407 339077293 17579641 632297801 875262982 925245918 893666178 58146210 668917433 587736966 3614408 328813412 40350005 591515527 632479868 934754488 316987047 115788909 76584750 741367163 770244598 919524896 87610409 62637139 819890314 596318718 712316328 851478550 611003418 993630269 827913582 890761826 274336120 569200841 309326979 542332415 765655740 885684096 409342253 716146114 963069258 26022027 840235868 440624362 820145730 41603225 932103161 820896508 219318596 513841742 24575647 222566205 231665466 254464853 713397253 39285763 200993361 730947528 683801583 108075975 902432577 544263330 804272843 616986206 534220248 853260708 451614871 98747280 202453965 801613897 44319288 938906179 507395553 667223192 998332291 743523783 880195635 781011424 731140575 376337408 527156187 497500172 702335701 439417895 395701517 19892470 907384613 635070320 667002861 842108595 780666930 723392465 290069524 779143555 532606471 29203285 418875707 770382258 92051816 421139014 656712692 454960150 430102074 774777932 615616223 243578315 836546146 471365801 351825270 602881092 397452019 940887731 84906155 915342134 978971606 266356207 686850864 620730476 512980342 369397218 722906684 363883344 183157511 503369365 987690869 620427139 838008680 536475559 177207114 275636987 289285403 621145865 177507546 462881906 313940491 991846826 219710926 105632368 460743517 123945603 676838790 412943732 677814200 494282252 601992903 587928214 579513229 49808731 248998649 374149735 127388051 6451745 174945507 556405604 25868727 112323372 808694846 487553275 324257560 38860976 534136733 245938693 502194880 658975416 626214760 385343571 956384630 789735417 978970664 854069920 254539793 143260652 468792745 762258640 610137134 867291532 217070090 738192276 47390807 567032626 115702555 89754856 987916797 622512041 709406140 773137606 555367919 942248997 528431104 117786494 945989968 843871161 360294290 882345891 779213066 695202214 903746239 866417247 715392897 888318196 442358574 271655648 668073736 244449055 259892954 669238619 107802339 197986215 572370884 165157101 534128677 7740574 851140271 735780313 61105151 820524634 20446313 997870254 506294985 608718106 552890862 836402208 253093953 804789941 295488012 141090953 522058711 57391186 791583650 814101311 797457411 751157931 63650108 846282558 66218619 408013926 31310998 725168665 108963400 561741243 622419953 839817857 804519113 407430299 282052585 406044955 797001432 282196772 302735470 260142515 740026300 983706746 989947203 672090417 809184483 476908639 857104376 870758119 291857809 962966569 523005884 189999183 134781106 310974445 115432542 683221586 42005619 447998755 418392291 636038695 418348724 471882403 982559673 351691321 820014265 541649808 9161477 315078693 903390000 52741342 14539872 167776269 835071705 613766035 347665151 83642863 699720870 817484442 440624362 213656716 366377956 942331636 526457435 547587585 651534642 906350729 517117086 346461915 897773658 110764853 706454587 533370463 825718588 463997663 375188105 893750442 17526011 522482168 656623861 67151039 350913242 991300284 278307611 772475308 170309371 953144783 779745996 348878781 80074955 678030927 579377884 721419401 705457098 895555061 61943352 255742892 454744076 927502549 276065752 728382051 562955792 596837072 418646374 689962648 45951819 686967171 645292127 631084704 368512711 891007206 331746952 693085614 546291405 860652998 463089233 202208291 979598516 969513516 854848339 348996293 923351838 739235436 510045011 952665743 870265004 300261074 631010947 705796878 225263136 146021103 112899957 483871730 787813443 351759273 716157915 354813070 381554673 279027337 313043849 513981965 910962333 213074500 891946638 382587084 914823073 341415503 61643547 68455960 143667974 839312114 407069014 757288506 395110461 907045193 547374182 330545106 18225150 682443483 642362487 963888204 873055283 70364395 389172473 657345957 452260157 836612585 366710635 129774985 291237611 570785153 338706470 993084097 942331636 167679081 272278950 263183331 499391085 381508205 160414001 830481825 25536426 617000711 641150161 943742474 355635461 792285413 20137897 123588657 715889495 496908942 386224970 714144328 317126013 445631127 964722962 469094499 614062629 301833191 894667051 15059879 737392025 28225664 433803975 77030859 606869900 508603386 255577126 418646374 485267243 513313679 849624035 600100216 844267818 916455505 517861666 998621161 76111831 717359984 225867471 332847298 908880874 770211559 364661716 847351708 995295887 800078903 584140765 305741210 333853367 722351356 734290091 384675028 849569554 614010479 326311470 738875784 693351412 199281024 469324363 778971748 881040560 292867014 152686668 515491680 220575591 166644923 154936902 918137835 903770756 55417553 415949376 210416505 914622128 469714245 247435353 851647149 223625834 655407682 281192513 544373386 136153434 866641896 370124109 730666871 409100313 730395044 952026282 521343232 173573986 600232273 427082616 39182307 109900347 261356959 101822935 810954911 878560872 718412283 884121097 779905523 903517222 686224793 261706508 615308393 792298882 181979144 725419754 843168213 162115839 774631517 596762995 930659574 758381058 252923017 126284045 940513506 15584984 457576056 789741854 684578719 919758500 513950083 298029279 808234624 256691857 399583542 423097843 263517047 854190585 381832806 227261659 361056662 721626369 469566002 767905657 200144712 146678055 290544354 988655153 738523072 244558735 42897233 952005583 663942594 948848205 614472312 608572220 715467084 554783835 212626511 706561196 990725695 572766 698977188 305322898 392080863 66181904 498083285 172335400 961672461 849722194 567401641 928484290 246296061 207433193 842742916 430552748 522270131 162762746 35771266 686224793 673672014 2309251 331292134 975055796 83899719 996372775 59880543 863193306 843931517 681715988 726537452 4358257 539387002 142532344 438405625 290267857 213852285 568955025 966068535 936038597 541571582 900171794 387035859 456709368 79767864 171087477 769186751 266650297 762616344 573321599 171967090 836372511 32976543 951679082 24923123 672420358 357658710 940510237 495751552 7757285 795212933 88242550 214184577 617096820 102759608 855932344 587607850 757995209 605976732 524819854 75787738 356590232 254933902 931917315 761868780 835682289 578621154 337445011 723337502 132428613 44447670 847346028 712956333 507697652 261226465 265476558 691414618 126527369 286711403 346672084 9383151 220652444 186041605 269357492 807647848 744466977 188961053 839294102 618465838 90405011 28302727 288852379 105542288 502280567 362325662 481140321 231926684 517971278 73110033 485968629 717519217 443078842 496080868 169238551 889175078 252613659 529930236 823744094 834833841 918676329 775709029 887218787 160814390 549683066 820956210 749990948 971596543 305512037 222743193 902342830 253725330 920606231 518848117 583437077 781619483 263300079 773672595 101543528 516079167 146380583 586257918 644287784 785910933 826124069 500006291 555988475 644216690 999155230 892977997 904626296 586707689 416848966 151702242 48044027 970015445 140869246 668698099 760938291 492008984 572466864 668484846 413902387 937472605 47210128 602564043 513872889 162129764 930482189 52117360 393348212 148803833 151139141 419591465 768046818 69717073 102357263 27748545 588841298 887038829 513155929 658869083 124487023 713638537 44927970 994433407 159286970 170280220 736412824 807367353 760194136 753379270 340002154 737282766 908602772 243782247 742585609 578990236 756403468 527812503 165148800 809145361 693822076 389810320 656421675 91244401 663577725 699385887 915812872 480748081 202453965 318914905 222632194 157448526 517861666 382886887 318787249 663342684 334848923 491873687 371403810 799656643 380464993 283583476 786761305 467605193 438170654 996524920 149435488 371767848 223475991 230409302 676737805 484607284 353650777 402190396 529856388 811840425 775018186 723781146 126420052 441912032 135294337 145502156 443270488 690628618 569644314 69118965 86479383 218497484 547479341 468461546 854878033 566238822 416155216 950684491 883672479 848935039 146668541 124584388 600575043 587701398 401623313 480212678 166042988 59181718 687381159 861770790 738051532 206113574 654916661 424762927 223524864 182442062 688188889 502700111 463050864 348210945 628626114 370351757 971403600 317497628 973998128 571895655 679550678 956680302 137243860 712030706 377257164 379049455 889916582 694943638 960716205 597342370 48275516 468452108 744078622 928849246 545899831 844640052 472778132 662389421 216036243 631924912 880704854 959497276 297442805 658852463 69118965 74181269 722467069 119932404 361056662 66893597 805851080 288613416 559856393 77553743 531477130 784964428 845963285 386330708 954564680 365466162 422980549 262373101 375404669 737395591 696952899 784186566 504083061 139675469 960389378 504295826 393386789 519249435 947634934 101220925 505256334 194735730 468352097 547740313 904398153 485401618 176565576 327887031 573129850 423586072 488277956 375473817 298721611 603033317 615794017 41903405 185139502 31753366 645715244 266016608 625445083 736773148 468658649 89901761 804392776 587421675 429871829 214476098 26730943 150854502 390244856 573624349 75856142 750957824 634613492 699709933 54993543 82023933 749990948 407488379 869622210 6755348 919426118 763536290 508754789 868027950 142807885 934560012 774577790 465891924 551078057 523738481 44725966 1655885 123006774 821571764 321523903 592310680 50930961 412164732 681329022 186179203 42450255 155529430 114376320 152370710 253080473 714465754 276414833 406277887 872181607 140100946 527959162 238836701 816427346 651181039 733673058 643090500 392926272 897701498 519932433 715368076 210434414 415402164 326294918 393305633 472972500 697582952 883913510 245590751 283367824 728801734 145931453 780868947 735334940 476721399 538285016 862476736 673671943 134177364 209088690 363086224 911003613 979620824 419283884 103693215 832094410 842787859 603151225 282059947 626180611 653701110 592425201 143606540 357189541 557706966 143157443 660106280 753732878 499391085 198529504 745384806 998815885 604870850 576701051 790590848 323776730 907709191 678075391 594672204 432883054 152101041 152429968 867310342 153117844 305900980 531168368 601389239 437600494 284858344 668522067 82410179 929460903 634987529 132855043 340615302 285945721 64867360 342586506 151620420 749204138 802182899 941986435 290082626 93578326 819754264 518273422 630658881 742831937 893461159 867631333 745084410 905297768 794379785 862372614 382427619 595705416 475695834 573800107 338226624 33621000 18389805 320368965 433785342 119750436 836694294 980309784 422004880 268076311 528149914 945354822 808788917 368664201 655057168 318498844 370561285 221767515 544073687 667197582 284388525 575384585 150905824 397795058 546653151 636728345 538846892 422859073 251864927 432010459 437778103 847894847 345742741 523394050 929574132 14662812 848723099 477244050 883982494 158772821 105406170 525374804 347825177 989908396 251307567 984239990 767386881 183231307 964533274 957375492 253675074 634467614 916873374 997909564 581703244 696304726 522562400 204111137 625926938 377046237 930039465 786793007 838778649 836120011 730916736 154925778 901174221 726325977 396689754 277251203 529917314 663652623 531931983 147113827 155359839 926111236 173573986 770688391 915522230 519797627 145927397 569000215 170566296 262944943 739487317 170254439 49231025 306565778 515911030 432135902 994467816 588140202 473571651 846274243 167643746 274353342 861665023 499026411 221694654 912515649 740297371 815513640 401355608 257493633 259200362 307271803 532256430 551863042 831014537 729471846 97329950 409069053 719222649 621410254 625648151 165982475 271121370 452484797 751101349 251726888 800017077 340305031 23591727 268541717 588498520 220845993 410945496 655595205 912674029 60309669 528261296 271339833 866477207 472993361 536214650 421769141 178354308 594663368 870200506 140401460 265911135 780109512 640136150 274445885 45588548 106519378 414414143 549908981 334039015 892354807 142820493 924671516 477686272 239731348 89147907 156766601 244903266 256306053 355257347 270679002 891026805 359574922 415911611 296785480 503725086 756800049 20966197 789859903 240339542 423926083 195537246 801500652 46419389 767722521 289609809 141692841 420291927 135909378 38459199 558625916 952936866 500181471 721060038 452801974 497610627 456955754 318866975 877012850 841046980 790732276 605883280 94047394 397523160 973568690 790075917 934499899 143208017 875428262 297444497 752429123 436125731 635164181 872284218 503990685 216676792 658690584 424413070 555581170 474107165 482399012 838462999 412657563 595106664 799848040 112468219 687007983 900124814 763364994 198839588 839969586 771754622 65592482 472313744 102296062 520016027 146746190 713132195 386352179 179218839 118531035 963062883 901992536 927501507 33647567 982559673 747618132 166192035 686066721 208465646 411398730 647524221 144626598 220197212 206770792 123035497 90924940 334939950 433558838 989686176 229940466 370068617 247926854 90636182 365590988 669847315 139905866 551805994 336824569 275215591 35768334 856231536 592589303 229680218 798192526 985539423 270008736 675987399 248265257 425740382 229134597 185926611 512860197 75113907 2549546 717174760 231778720 589103055 923224187 369357014 584506217 777836817 660106280 874473047 71455021 181959446 719092472 175701391 633033228 943430044 77310520 597171934 633271906 170858103 970139130 933334977 910165926 916896508 277503818 844733265 949236902 717771716 215389033 389680919 449737071 846274243 702071854 642696032 489533244 318680856 645606537 665372997 226322603 627966173 325350726 424093143 268331580 469430637 902989873 149287025 308280991 109970866 153663512 316810133 442865470 669335416 74167362 382083687 735659591 533270957 538766537 864795391 433254468 403621743 356873215 521087829 781754415 155658167 51372071 485835530 349086147 839351072 554086840 185800938 496747762 231306439 183769753 817573775 745726963 141793893 857448173 208239267 33257082 274702252 939524054 110352061 846455384 829852289 11114567 24325599 92889184 683078120 841871449 589457897 285049472 171412660 804399990 35771266 53873051 995792489 8350806 214314497 5191830 72672216 812302869 42205722 314159344 453665372 163342940 460372725 581278223 773713252 540167554 893762228 250432563 683200965 47999756 560384446 128419818 402768533 372903981 548852676 356843657 433040085 647563844 788751134 726845280 667735607 769953145 454397916 923858144 639606740 746307274 583999729 993388389 757873874 747414939 795728911 603259219 247810718 513174447 875830483 327869692 32922813 408860308 913864700 913051520 907961562 618024853 528631048 777909755 979921177 636214843 778073299 843370307 583730731 107214594 567055262 100486389 9344172 229830447 426083249 628304515 149824438 308265471 379670404 139317181 751330944 320213305 488416064 491724000 6621310 728123884 340367622 638231921 268639841 256752024 61030323 903407500 588471262 260299104 283489405 484056994 443426144 503415417 978707934 852483151 878840727 411147500 636038695 145862535 886912973 961727231 909570556 830246069 19055150 740171201 128294873 65389163 759806696 496706840 313947509 907296478 369489746 660493655 496296612 798597808 624556954 101296410 1140627 89448509 734208344 171760691 878078751 959082729 680466368 43202589 265792820 46460133 832771312 863947628 351381604 92230457 392896456 459527433 542809174 237856768 950323059 959115308 543671439 718594332 502700763 833393844 795265537 254765207 443897956 560817819 509643228 567796749 71720355 966003527 298270381 506549683 51963580 577033786 880464110 662207117 144244757 409504799 935871682 753217053 13476232 241347344 169599061 777710577 460709725 62190859 907403178 189555870 97770349 496483669 732022169 100726826 284247777 141084315 384528321 189713334 541722617 458841266 193388576 490237386 914750435 905612283 116144026 873706366 494100633 692249966 261209655 419204173 11224670 13218410 2639642 562387585 742840803 665466023 146412190 686254530 910853141 958873335 75397778 630622421 395033054 686157828 195396169 171515727 281907856 999875736 260118420 296081600 200397802 767035154 51618799 639618189 178663272 755292288 458371098 929723159 587627545 631687691 757004486 239060295 506384415 180873958 920920413 407390550 407028489 2991864 476122380 913127287 735318754 34298983 857332398 823526623 429345273 461609441 248637347 546778223 194593968 878359131 179686569 261909028 416170388 948492301 55120559 784043439 50535091 549107642 746545550 152525069 339847787 659481618 739859887 548020258 777761100 690628618 392439021 28701936 219927297 5752422 257931429 687421124 926489801 579215088 761235691 601854888 96575398 277419313 157448526 143329155 529343502 764463501 186246443 933247408 603568674 842177730 860152187 578990236 810068416 101760356 168229185 795979237 139622190 976586663 731226989 591483471 451200790 159838009 390352051 873055283 924854290 58812081 601364830 661016783 890945261 980579499 417382487 463997663 979556769 836914067 823327405 609334731 175056693 859714428 123161705 966402926 631528847 115528446 871701986 580334299 919617681 456476243 965578475 845790772 339364064 968292533 974153845 809474817 496288534 127164345 2623218 232480863 96231433 622869076 452427431 905337308 748046420 859326919 270538746 195871 305243349 763364994 343218741 877330532 974530367 569143234 372796065 431842072 10403048 782859978 59426018 114573652 481868581 861179236 687491533 47031105 753837864 670185882 930772047 113469847 986090229 655383914 684271251 15907007 236119986 596498152 917051275 152571005 113006477 86940111 772137812 324037347 293413000 898387530 408066789 245310601 136910497 730171539 555252154 859946067 447039856 45831473 72939136 837712029 237815970 222806323 159643945 997368739 474221772 628053285 898661381 900231905 682503008 679935215 86596683 706896223 146204709 444635391 116136954 592704067 262030193 636157875 560400579 128187159 102357263 307259440 313623825 388948381 75818832 242597214 71116307 996842204 256600825 272040335 469452796 684088268 720551129 777583624 174787374 469624974 170937735 773406582 407913320 121839791 217028644 235362118 13542097 101096222 219032462 497848897 932540690 824751324 152140333 280434654 777258876 175022888 496717343 860548666 674046597 702921397 540687881 355896057 768468561 873433336 637782282 949718918 734894009 18652632 179953476 995625475 738296578 360887628 968646222 189508711 419048301 123671496 991747403 644062313 226520451 584506217 413879748 807792720 97481019 627032276 868789346 730022105 350515791 343623135 50507057 517971278 572129891 702990491 150229778 552633317 158105041 360941153 151335254 419566916 675478034 345321842 824206584 712598721 8815632 232110593 91243134 188072095 875161141 289496442 568239048 631084704 993973606 173118605 545454459 361423859 220189070 939915116 902801724 205605135 695984714 172890232 375961791 843489068 899235279 882443976 256260769 754138274 89711711 986152789 358722737 533556971 27560205 599494480 741011898 454477894 724708186 298250252 764190304 603406827 176229336 189336837 388224081 767819526 74088295 391456625 266394520 733628029 50942313 664511012 363467228 924064960 469925490 796412595 204140488 978937561 565212757 825209121 644599183 701879614 988930838 804221748 42128415 264589533 646144905 726043814 400420033 998370334 666559852 241693550 173966972 236579700 852963118 524121798 279337873 360388699 822729168 650240421 613282549 402483895 526156233 939150304 438315572 61074342 566125383 735471007 10042590 669956354 982972055 420212502 645165008 703680796 289166427 597934226 710987711 238154648 680074362 7927594 996896684 334404946 725419754 256116943 815421884 600104517 821993717 917323989 270392792 528810712 795786791 982874847 565878887 846519283 980686242 64438214 206235338 660394152 126236876 771098394 370952923 238781433 638516100 638529405 389849335 421914461 151200856 155857055 442489178 957690614 824483861 819715527 450156206 116218599 111046836 223394228 509936313 768008565 885936529 637314879 306947516 318389258 277161329 71728403 766151001 802357473 826086710 144831500 476036712 817861031 662717819 433514475 971681296 796615212 208281763 393400831 10935302 230953923 834600191 587918841 37398473 568311507 765508471 138637234 834950671 769525101 783264138 423945461 682667462 473749821 122320427 58575441 189995786 934871946 189984471 661782870 362808707 935025381 655719511 456709368 477854023 897339639 67852669 975993059 331093323 57765721 479640026 924880447 806743479 442311472 745277510 91860575 528860760 857578639 391183408 960389378 123067440 405911091 914600140 757920387 125962950 512770204 196894456 995676810 577649672 79768466 695880669 771860467 579922455 113237594 786841695 754134684 240849859 129912296 69754983 27503631 24114288 318498447 681503023 41326352 23646176 434300947 602726583 494846412 682554038 180414345 378249346 778732577 335461672 459314167 230874432 292179138 789154223 652750489 829667153 853525532 117018767 268141634 599726108 924363499 246282501 654087322 174328447 360195327 638598059 589450806 879768455 433332266 164244338 144741922 992265965 614045776 547000889 117528250 704067237 69995766 452445320 262051402 852868472 72081157 782489634 83012352 228679694 210954152 528030325 113237594 221946849 770382258 904219030 536475974 942675285 957995503 574773033 557191802 68971223 316950540 128371215 588943622 241853464 808984955 620798196 624184133 613275799 584815279 539387002 620559971 221342169 186987458 732137745 436130146 304328368 812656609 813713168 784715612 13460668 175334033 623734499 908280273 500107488 653835451 951547002 539839000 917978871 784301515 408464853 195182595 136711845 53723928 150572185 785887506 914556630 717928265 969507023 827512065 68950141 393062409 752660908 824053837 880307952 263470837 87957679 111270542 549326012 634321294 690344954 926680637 66895421 238973763 98928909 281201821 638626271 322377766 275310606 444245694 451357025 303421529 453044257 846938185 779069181 827410568 981668832 881748544 686893676 734103994 327993493 58596974 467969337 975723945 453595562 29271221 788130042 479451602 748285704 202882569 78589802 339279980 49473144 430310212 503416389 68068827 511257357 801461733 996323075 879302024 980326009 492089999 428988902 619577803 785144465 242461135 197514883 899172503 153642457 548020258 887970059 534343682 228402058 175878273 329924668 254557849 85863450 320197642 575561743 645591690 838441781 530221753 900340734 233035237 266661837 914105238 495121042 20293106 240282544 688609707 332328118 158562645 533761504 64391220 908497275 133952858 874355575 749372783 253506445 845551138 630697640 169538506 355787863 223530434 545975398 124992484 996437564 476264191 64024903 922410898 823734079 247657843 888315473 974975050 975670597 190530457 407279813 905628334 87368824 951694546 383214573 149758876 91204331 267961345 643620060 132251498 638649396 970216047 269640774 162763794 780268304 241178284 766050423 488520000 185209702 442635028 264331156 80202487 411670487 536419454 570015153 521343232 135599639 381832806 530462290 477217993 553040689 342911646 810328359 590178419 670285999 975274305 795390923 426173624 637958333 291706625 342655173 453412372 700726960 287013806 275246171 573585363 560720866 99304833 779097274 612755087 472115388 450230275 141788956 381961597 568119187 60686900 839702343 589404934 568271577 687085214 730663398 468461546 710018708 19535158 24227481 753100677 541480368 268365131 372700698 939438014 910222771 888480953 881881683 736490253 98743499 676410558 529570522 892943282 383232616 207256641 761263917 646163635 192576712 496058237 769075231 940675119 289360903 283384846 466847159 342435974 417689595 628377476 763077259 264235713 64576026 816336523 87229028 147138323 123099049 959627793 530783919 657132881 307453232 186261808 648494098 139032078 870355908 579231794 762593456 901535835 870317083 908006722 884561093 860607480 990803660 865975211 343046686 447411257 60417896 900848105 877936782 931856446 135439214 135428517 476299451 534165464 825485954 471228891 662170588 853446983 827401484 334347389 809803073 381216109 973247744 438316177 106474446 139002873 621246665 86706605 472487054 829859134 582207576 36618563 961649627 715147389 256030462 128751822 463781069 516771910 885882198 503153736 537483844 900211040 800933529 395033054 190227403 736198978 682554038 297494030 351399674 454193741 581700203 938484815 963185612 133793960 319733101 632417362 852281710 572530863 571551329 447695197 506829129 142425049 858519591 703961857 643659428 940632149 373668695 340989314 736968197 365343828 626239688 402577056 940781417 691101682 653740008 225144548 848212237 581151292 119040991 37237413 396681930 232401956 485364389 277161329 328950761 508607499 121850066 943343989 54373241 276362142 377096786 118292380 978321486 725957593 168324849 354061537 96618126 71507955 522246564 968649667 961686346 669661385 541525174 468501853 610953676 433254468 725512028 674884694 948226317 774978074 503538883 174084938 521031725 644580452 495651520 186715108 786849070 924061591 404984433 875689461 755868404 733776749 289288158 697355293 972187250 507226304 702855982 562229491 932803155 407126562 29824445 52519950 687654028 155100924 179539083 155477296 660445985 78853927 757645232 732677917 709028310 290170431 809022063 366725023 691235252 649022837 237397444 948126524 496080868 518953984 182051610 345618886 431011474 698218008 220660974 573271485 782437267 414034964 413573972 654387208 531168239 897907613 281726114 551688805 795708933 339364064 996755524 379545132 873892931 784186566 107243387 812769375 188049247 389058868 672002725 146976114 393387481 922561161 51307598 282613945 616795200 654182510 763847693 950695515 821190530 871139692 846398722 217977167 490820084 115503769 420567475 848212237 245575361 607378926 300118496 423269356 154007423 395999173 579863539 674740577 466625056 733766958 29775983 350525975 512906769 331402455 558976108 977903368 393874544 689962648 914449901 638085692 609148690 234602461 380968208 212415872 255164878 190927438 519470928 258646168 618843020 348436997 197779297 824612489 121264631 631138311 713683530 716805417 727268514 370281637 274472221 756103924 187754332 182693247 836644635 964411796 651534642 590792143 22478378 249576949 986457076 303637229 226317540 397454751 784026666 533903374 927547218 174275181 36363736 708314416 953276662 320465719 715159608 912753148 301674023 267804159 531851129 690178688 849457483 895389180 721375929 946837101 611831639 25523421 379435233 556356455 916680848 994481804 561628282 610388750 996948797 212334264 490756467 119484050 786713541 755060415 85337960 138469644 588105377 238178112 925741131 675520657 841243437 396594781 843719978 966463503 480187751 82978558 510043052 483507614 274691412 103324163 868233208 292265818 973546944 507558901 233086494 488373360 507808736 271200292 493690269 499315515 701867738 193776379 736204706 307674239 740773912 717228070 283362520 736301273 937789686 572676394 946054999 665547195 90584139 827313548 594919462 52267464 541903257 552088439 824142235 65529248 678351116 195716354 247964566 686888068 653008466 110445561 145858511 459783204 260719034 713804954 580534145 65729689 916845322 960027712 135328108 145526751 163602858 359556664 905803552 900966100 840475892 813799757 588038588 221427893 372579773 728007127 867467258 71359731 68195186 106787955 74690491 8357637 144666299 457192446 947107174 207182806 706750894 810388128 416519167 505207365 15783814 701876873 111400733 973068608 75957547 51116061 556904057 466486755 553153969 251066783 332539426 440943584 860706337 943218822 802667604 180173057 326707693 870841717 349513058 963936067 27002657 592304402 723249630 13046427 765678604 501605187 87826333 231172378 411645305 362224232 780394872 814578512 734208344 377966843 318825290 166550539 659380254 763360243 989253403 193422878 907656184 560127264 788354688 458149974 918172787 27297628 125356492 47147757 318655290 864579136 444854988 740145607 488448300 540722163 758866254 796220718 127826002 661685897 807336789 741567113 3342619 62603285 882285239 518770729 41725718 588196260 970957834 971056304 403313438 776287520 120529724 445155806 4177509 72081157 900247077 553380693 933853273 928588486 724118295 757691445 668348736 368924421 57832182 628223332 592304402 53466457 636029524 748754952 682451868 929798881 539459247 153204273 432883054 281338872 261320219 414983807 560544930 469890467 38740777 382108146 527624577 415731042 70588333 57609289 146052620 385469812 852327301 142281414 141084315 148248268 189576119 504271815 576757500 472451037 85600174 775018186 399316820 131600313 491268045 720823179 894932022 252437542 356889683 136889498 240533988 709475086 930042085 272174634 664499695 393048530 830209380 839882065 471784027 884366032 966847794 979598516 811131173 225464518 632654885 992930620 298053456 98411022 911118882 32245851 878392045 133420421 871898636 281201821 164665096 214359025 213633326 993111063 528563212 811840425 670884258 465965549 658491550 286488498 236834568 655383914 172109980 606820775 468635947 45571833 912684015 777770425 860708110 38507014 389125379 474322824 238781433 238923503 801181088 340514266 691891685 794081555 368802495 50609291 233681373 675348975 885122251 882197581 305564083 511492233 896637957 971363997 232004362 654545739 481628199 535580128 555378917 231981275 788378730 823341094 34685508 499328564 104231120 625262702 494752235 661895097 943299847 848003758 659380254 468264783 826559710 827078977 456740708 130948055 891624199 408851066 294152528 293593950 96211540 770636153 900398423 989267925 303343599 727739744 693181722 950595632 810273544 411731962 423500239 859776171 854878942 942591903 769318427 543878077 968396537 921457054 488681370 371856152 693939155 352420575 197440124 183421350 110920486 534023208 964835420 579922455 988655153 920464019 804722761 845753798 800847438 27170381 925681757 813554618 735878990 110542730 403938792 538793035 360440023 660513588 953572920 957084988 628783920 352731724 848475251 392302441 697698587 345063333 72554086 619661352 940469808 952870458 329193128 516268140 459224208 381998197 619577803 544952637 268025080 252769971 404297986 531626308 648961645 372903981 968866131 464997284 273117443 913080899 224271824 791791051 643699987 203768021 581418710 774568153 133290877 2825934 834405090 230861426 980853401 816979066 246064040 124163309 469001800 51307598 901654426 487532092 845077307 420279964 178630895 37203564 683630928 631030090 377103735 595811649 134787703 620667266 750835638 484543935 203279849 844243536 127898279 848206399 797226761 809842183 812893935 997423834 785816009 91783963 678220142 998477638 163507422 707620455 255387717 835071705 908166044 333864965 610367177 898656310 508214429 689082436 189426568 311220536 287403919 288943373 897544956 651779972 567536870 170805301 539985044 973443829 743782089 294152528 405647280 854070488 715159608 772823012 554988790 517004634 929846478 607945470 388778437 351539678 469873825 875479758 676241271 818769724 318288858 693318142 196744526 933787177 328903535 802799351 157608873 498381870 932382465 847555604 535319861 494774479 898343976 806765353 211689210 637098618 868884481 111599923 150335776 291898749 972734739 388179093 969563598 820406812 552977218 891026805 776873328 414879402 624084581 900370778 742512238 44389153 851813968 334208493 807692145 108227704 665524410 176384805 695126625 62394267 766393253 53025453 924416172 373234553 74104087 836694294 950296315 738949253 229650155 931567786 337295981 505689512 180942052 985740106 135506050 834120002 81603461 860144150 592404830 715508844 250849335 236575001 817082326 425942537 773481158 826950077 681253427 630290011 961873651 749005181 943932671 562024452 201734537 262090163 67351382 889935119 435366630 885252290 363361364 758722662 348878781 951146763 452309174 685128297 832270043 914668019 980995452 133680438 871972440 908537415 876049590 928230911 451849918 269389245 794292863 266439362 836468696 809148803 659734565 899400558 877853993 741744907 787906443 852912649 69655486 132644643 255642734 688071154 276632994 465716707 812204782 359641937 393088393 896745778 890690066 22319693 437828128 678693152 282281192 590353512 359407238 711268545 589107167 676257996 864756723 97994551 466780910 29796333 348031557 893612654 476154857 56164025 768860208 203652234 329649615 801461733 705578119 295682847 812544805 768518484 752834545 429471989 425234634 401518611 455973051 75389560 424024156 335269883 191964334 321652769 74275107 987774633 414689395 34869368 104893269 502667850 234251560 74181269 729120521 750294550 360388699 546731686 94178501 855406157 834942433 603409883 851413573 196503449 277364479 138610350 833961957 691520908 796546398 103587570 948952683 590012637 295564329 203133850 969323094 211046887 905087762 24148338 445777900 750630523 284191836 402390223 664485112 231965450 518475818 136519023 417730026 405258651 250164483 364215211 809972424 972971056 16665364 781015737 328096794 87797734 103529510 252684900 448272568 476653432 372071804 358814421 100780921 621145865 995809400 538415103 53280180 976541527 668222961 716626940 945676786 12692884 802318712 457317666 167716069 614776728 187531407 581257645 739863396 694761691 941574383 712225644 574676750 798543732 535481073 990803660 783007693 171067492 204168271 807682894 560195402 940293706 57252423 67388454 489553408 77445479 471769748 246572852 517146737 345063333 142566352 158103750 592372304 10879260 709374413 291381911 738282317 46529632 968253542 611207447 779974901 387352001 838001014 929117714 583146946 755495966 250323769 39607601 790243991 831386990 607055139 794379785 191190128 7522119 833652947 947895460 482334139 463519243 780027125 591920586 914273752 152310287 280843790 133723704 34059654 117589674 717658330 318522365 102655682 949362479 163545393 685519953 15739211 451357025 914197528 798543732 619039899 375761930 586119377 75957547 379409900 684368728 134805112 125257627 236080621 749458284 73612399 38901822 684701980 659312336 49614625 985473363 851513355 892433287 424898175 121983399 204166104 717059322 666462793 19417352 531041254 50111326 607695933 956003788 655371974 19729932 929505139 434204541 50127560 393982818 794491075 621982180 104821346 835356499 667274240 826324640 995464856 499875399 9939668 66314080 227424631 559427613 847018174 243222773 497373126 506071910 813863654 720670087 994221928 968071895 621515021 148482823 132308944 117669898 252891210 671629609 771860467 734731565 415878448 882673904 247419202 7999791 332502958 758738185 134432457 501538699 471912209 502973242 909877847 919305493 280265261 581662626 996322907 280508884 458925485 747733934 436784048 286699217 110311909 396423445 133941331 601180007 249098813 983360019 822630763 450923304 537216282 827313548 768985026 415312988 314255606 682396052 139333907 808719369 27149262 343512060 34797603 373980119 396266325 123953923 665841158 196771486 314462450 574956684 595772401 827069744 755292288 717705951 112534286 92163170 17187 430805506 642990317 976759028 876926396 238480243 294992293 796948983 532884690 10288670 781760171 250698320 752056107 687067999 368172439 679036837 751186883 34735429 884745352 124657259 621392335 728958247 714285176 765186489 523394164 92659322 333888484 921407157 435604743 35212844 405557316 884172151 622433426 867801266 943727258 757920387 192738562 864904576 80322105 177483816 972755592 162568321 240128438 411645305 423361782 893975679 850411903 354297829 222258106 548923551 331775955 79297072 955552619 518820810 179563198 144948803 376308362 850782404 459099106 98928909 735485663 597762184 189729651 146589131 361213011 428070831 190914890 61851891 172915048 684409473 414275293 456865360 148698702 406959007 679564370 833763984 1174098 799159732 462163458 551637082 532606471 85305426 433628532 533276309 985812992 751337219 985360449 503303463 909140775 166584356 863317651 533374404 55107804 863173937 671613409 928801946 7634956 417980312 755427054 986119371 234182671 845624535 950501409 469932017 98371426 646655380 437103773 411398730 973181655 334761299 232100960 438803790 163853831 165230480 548148957 435143339 889669553 65963284 668723849 917046623 854003188 536033248 495279473 629824618 894471534 860421632 377575274 764092090 622750138 158356260 853078806 305425384 913942064 162434892 970034818 62904589 31800475 892468950 865016462 12959815 867345758 383017989 492974506 941679615 716417146 717112546 852993820 644182804 374841705 925806522 47329566 558441668 66102935 349621427 464907639 591273146 588337970 769122108 954876106 954306349 213487294 503351243 680723844 917993846 977032581 885122251 241481625 33231452 502629775 886821773 932838394 742781349 738054 110542920 346082857 968298118 411195697 585036762 183231307 811120727 383091660 200529307 962304328 737268388 856427654 630540862 24905124 349083148 590113574 542566552 667957027 564753800 580480301 372454499 536468493 952547119 138926708 709520356 953231629 386866750 273996311 78270888 541377951 889275464 678399315 441238175 244909959 625451440 353333607 293779028 601511980 772895398 563086953 347649493 250376200 230257303 520197728 3424454 599569094 21818461 875727042 742492071 19091119 769814676 66063853 259544265 103761484 603989665 422641067 677157030 925514990 416637455 201910415 275154899 906614063 531908992 175905084 800486804 540492010 484422609 175540523 906746267 57726442 122778721 496762644 489288089 51391779 446289908 319786267 866930939 999998195 740043308 450650682 223317802 803209786 578846585 294710710 519930539 771804221 889780530 189396394 701186472 564014263 534221760 379962112 29467866 143952720 294593580 19619372 390709923 222258106 197697494 205025916 913565399 376202669 805165974 109012465 416302859 307393957 141591441 974089092 908397683 17875620 209828425 447237067 640113680 920415782 988784783 876936896 398999899 83244052 586257918 763536855 146917148 727339911 225055188 752646760 586080965 687799992 236803857 828251558 932258577 615100410 869476474 985536000 321403581 920420941 220912826 220815516 743747107 405252977 862086078 675618779 951646647 629690435 30225882 954584858 831305670 588219539 101746019 344927931 656407428 118207592 783783736 127695496 910222771 278298322 581265086 574749800 886835906 743070043 768188090 18964269 266046628 459475531 664254269 366501457 33872670 410693715 535266262 139414887 362919588 127140624 49103484 607542467 522099455 881105410 720492496 747467079 895735072 26849975 453450184 411670487 444901156 375857975 942021650 391169545 271022703 516095013 795864300 532942953 838775595 761962001 547471158 747174723 345152587 37624858 414370739 98108508 275061392 174345109 780505258 330018215 792953326 319995153 171820797 80625972 955443995 271716805 442684030 211970204 375953467 146534988 212811767 460357950 716010225 471410420 416564798 370327450 320440529 344921286 783817490 366668856 152803403 643427895 27112132 179595084 89309284 363468875 658293800 121838947 260604347 135569217 987939696 292478907 469880601 898032340 808859892 828438180 332725914 761476179 188375957 984759924 143095784 398635809 206906920 128947162 576510531 388624522 135184793 306683798 814290504 993004593 623131823 983192609 62361370 672162258 16307342 185710833 30794154 902077336 370850264 993664815 343528557 837584139 79934510 505605651 409548353 980291111 595306368 426960292 510875257 681298789 114340944 495944667 767222376 411918493 439312270 840475892 753858092 390866701 978554973 999511333 316943040 860421632 226387183 148384619 665946440 194684547 649833346 214928254 185641255 183450604 3640153 340101835 881532540 496494604 238898162 233206805 756869717 965027521 871515599 536519477 125768698 502371363 89302711 847061162 194000963 994527767 857478068 254557849 864474629 705638957 442254311 57252423 947943207 883481459 185102024 364481852 528539750 38519703 354918283 78502919 419239727 150582420 77574753 876255402 573593735 8805493 1245065 437325564 588876088 906690778 967734753 900890587 151874145 154666113 952583995 571800722 90133552 832426659 50427381 931156648 683534529 168960211 987228955 721808123 540309207 923938615 939408339 472993361 612768346 342651488 466847159 233783002 927376391 425331307 316142287 962268985 156628804 471878561 869870129 245888796 580286398 912980631 342104942 317660272 583730731 88389010 425562460 414071943 123797520 678342814 470295094 35182041 484872152 482472124 864569720 119962025 260311891 166269989 255743744 859880238 889317175 824262458 180234730 389392613 541044678 91985621 12153169 352520607 284836168 61008671 630149221 888515284 945530719 170484700 947367981 980911627 278591179 556260002 984272993 138352945 229238983 611003418 267447735 341826259 198172206 743278882 526984920 267874375 441200206 930105421 145577104 400389725 432776152 561799722 552729500 865579381 19952330 680559897 357404250 762551021 952549203 677709797 127970575 431356708 880094668 140345387 393601941 75264338 711703847 833938633 592753627 721691387 321231436 715759045 620898058 510690192 144813870 924436006 620433313 548208225 447040244 567152544 135542086 439540646 851001437 742085553 900569110 941669601 891168521 82410179 611501527 928122103 770827526 557513928 36183710 522658358 552977218 258877694 839390156 823161362 716003132 106591530 285368145 870284754 424531783 250213489 957822470 898647258 313672500 830481825 941821163 702581089 748829424 971944683 673250286 575691833 216382725 89659229 218241045 424814538 970125929 11161770 222970439 668796775 22666193 982622895 96218943 648045704 369750906 511781215 82338184 230824087 432264406 199555167 206113574 681494710 219033076 912366889 715508844 565220266 939424482 657666974 974702930 912203623 188081201 968573345 261236200 30859606 429721343 296880583 248732599 650816866 351623440 822962304 605435040 21594805 154654040 135715504 307443453 507860135 750074221 596056082 16507800 245758116 443136064 78298474 826279203 378200200 699071046 608276516 685640903 290943267 1326101 474576238 4167644 778344698 704362537 30099335 285988165 823080486 215452368 761381005 88779890 33332022 70217357 964987542 403615559 200986661 977324402 139002873 242551556 490421784 346351548 862716454 571211586 576235050 966896264 805531310 418065780 600034417 518770729 152915482 516771910 707700258 392709872 358677332 57679133 807782674 334956293 525050131 764782109 268866149 605308072 977032581 114287294 285233225 756800049 841264062 542332415 153646548 498625420 74241299 984528763 924082415 168632106 604021452 215319737 532482064 642090073 118936295 972907160 966772997 531012159 821656343 776703758 127658092 834278847 667383144 5309188 566942226 370107440 536823762 143757715 187714502 649695482 497946093 794514770 643223135 503228001 734425622 955310048 828509064 329234858 541585546 926530311 487490360 663822760 990759088 411227222 266835785 918315328 385715658 250607765 535324812 837253660 459610121 955478460 849852583 793436809 907953757 779694308 571895655 873014501 216330176 231142546 866543048 692986571 38489515 575216101 339920193 910863340 902004243 777599844 847894847 108600402 546687537 902060194 643663876 63845332 797379941 389115115 182763321 308665008 683373094 48841654 250581894 833242227 273069198 15051043 107654238 290596730 237703953 438617859 348889586 605093977 281647182 812368466 963279623 707162549 251438018 644546764 359576236 494519889 30887279 741309011 650068304 989500295 619141048 783091671 380024672 24021554 148659493 449333778 760258767 101331651 608203807 167308400 657050458 849919157 921981404 648486513 435706403 383506096 800323896 53025453 245196571 540328271 880593316 477683401 94011798 722968835 34059654 971943093 346422786 841907570 271229114 911027945 608218999 208220641 151394929 165138540 90201401 783817490 593007034 190848167 123945603 108417071 551191758 435280843 644643359 669721473 448102283 817284584 427638559 579974084 506549683 849931142 859150055 112027974 572298996 972314470 573492577 760730313 70278333 296302044 385365733 116729122 543782319 968474917 394907700 761061569 302945883 482193579 175215762 698942888 953203130 290356903 450923304 667891343 636946023 13638942 561305899 595837924 124487023 166813152 728965499 5094809 107687451 59426018 247657577 327636082 428070183 490461888 781675736 432308595 331339406 422672731 638711159 439757649 973798629 645240563 833143817 430645063 615896681 134993677 639693261 969978626 767157214 276319288 35062031 470167482 444887973 540380960 770064810 323429128 634987529 256229562 823198402 219694324 858950497 837078038 819423867 731310253 798017623 525011749 75290685 396711801 851198596 198862005 892354807 616229497 735407065 483492609 191910294 897594767 697302835 872781452 380347344 754495367 72446590 360661449 686026164 697791192 906479327 471911149 710922550 685829735 765171561 248468935 950146480 990759088 491100201 423981912 213196794 736256426 73712616 865188460 443419855 388807771 843667269 904879265 644580452 957863330 650616672 646765956 456025265 191324827 483791443 231628698 840684030 502695121 702433760 96211934 809102750 703083542 994433407 978073443 468428670 587961870 575361700 8042732 179252799 180544571 238675279 278847606 301104835 643636697 773898318 620464683 928117383 567261841 147036663 629787852 187714453 540687881 530577030 132324175 498575639 775380005 321242163 760058139 29955695 305564083 983376566 357062838 718005079 616048705 955502338 830208661 342673219 132371173 565125470 98747280 533143531 794044779 924813797 236218385 140255496 13871782 642574812 492758768 51957675 992647715 500672290 969887525 953060635 262226191 648729298 577625225 3570857 115983756 53466457 538437359 456155221 551150069 394708420 344319386 415307325 158229380 102262343 142117217 92894050 627241477 662644087 11010190 350877123 254840766 194581201 323019503 999566133 960735497 954999752 790620254 145143685 71507955 238473745 993111063 362696510 306783076 178117680 406480801 332966116 795811141 485286083 335787779 538415103 663837381 689133456 886051825 340862543 219163607 295488012 837170355 311313527 436525284 92573319 762962561 68871530 494478924 845153084 174851071 216437103 302768337 511969749 436562815 377850544 881881683 209665426 764511978 173814679 383773184 542001064 311768622 277917768 573980960 257038753 620977762 171760691 399645715 653521579 628097960 36379449 405356169 261796392 855825398 69802573 496242583 918639082 401947609 876307334 432877783 397995508 576235050 237548914 69211874 911787691 731241406 896245253 700216116 486819891 164167723 593321638 662929819 547354331 291868942 406273364 390370424 459903194 19653660 848183024 507734571 609774692 184434510 753516477 872307590 132883591 163428338 350691444 601722071 746252415 522179102 421190800 143095185 612309576 984283528 954627132 501122101 353083264 359179714 477760278 690145597 147138323 362049507 265016974 337233602 308574819 870713915 788179327 499484393 2011955 905382241 287405293 433214115 182617650 844399291 429471989 371764748 141081935 653616780 893666178 114290613 743925722 618024853 949348171 332287029 604386539 565009468 800647952 644578709 392853101 844485357 79347638 129941992 820302383 301674023 629825176 813967221 557883657 338040955 650485401 620414907 639747103 792801471 486723354 807162229 499565332 765612184 923965187 118725147 801584059 992648620 268019518 539871267 619656078 596189052 305704199 81161456 934886172 9010788 475890174 672072178 391335703 374634390 854927928 225384671 618153263 488026667 906374565 997227047 629192486 941519798 929039983 72343610 451215937 589267425 634791841 228320224 865685740 72446590 806214402 384627089 246564563 396750051 722154376 72715413 746252415 30845398 828066438 631839887 143586584 517105080 232702696 822013519 190843262 977383074 998937400 820641733 881022941 403793339 249832722 121360023 143091225 798762385 642198482 312850619 320902483 629519655 617011926 157380566 939332620 430778642 544640238 312918832 911043118 116060156 195748797 242892806 88579943 788206056 202602504 666966359 980128494 145769481 691782752 736377303 985265037 39437773 15530467 403365273 805545648 282404840 207435735 108891713 92627268 599038439 924568387 246105551 184775073 69000572 80707886 928738824 840950300 64805554 722695754 39072396 135437695 970015818 25353492 686976647 198255813 347523519 21203043 482001628 169639648 174633889 650048691 990331416 420212502 94209730 399087004 675506168 183478683 584982757 242740587 59600634 906091553 74048528 442281117 307275282 371622958 103582584 697287924 692425236 535914530 667542045 995831831 148246011 892809760 965285595 348238935 728062516 430707668 88089432 351277118 376789615 479371480 680193658 532500699 30292758 326857126 71455021 216263111 363470092 183233725 713333590 150308064 506473808 429794657 358377744 865975211 116211288 335488235 362086003 116181053 688644095 969507415 516591814 853928359 238732372 82120918 801688894 148216071 70628317 894717848 1240576 872964594 393171446 735659591 194087725 150445963 32100166 219478294 605980584 139326286 989897040 818271955 647506258 120320 752727048 89681136 157236640 330111845 813178413 910601752 846874459 266647244 415949376 776475735 667542045 809195659 51957675 132196848 659937571 74060582 843553405 372031349 641966376 788525586 503717468 614835068 63678218 675250018 100175210 318022432 10042590 520576828 294582595 774213889 654092263 614252206 289989618 297453776 454476543 93578326 392495447 725167509 336317238 104887765 871907797 683026819 134037152 753866972 659730665 551355866 64383339 705702779 74275107 20067821 836382127 781040075 409616442 664411633 354502985 245933973 877748096 415819608 180275862 496104598 258073669 885357520 960952211 316446035 116747893 277128713 819732807 891603353 126326715 169965929 396104222 542588742 427125499 390776865 63188384 966464159 405659691 314073382 270542990 470187185 97861123 385690706 349705830 100811645 412143758 394004787 405944346 893644352 660689348 305887662 921635847 320860938 28430103 608655047 926089401 366641261 181703999 429381018 591488809 46229952 24575647 463541240 517442183 194087725 458809028 325044460 596268066 565840393 48748453 545631553 53710773 965598696 866462864 874358460 606759345 377499939 895252253 818585622 515228185 32284681 937096203 784529796 476874271 162268292 971020170 667415025 13766537 246204249 178739645 789859903 943498931 364405736 277865371 980438544 237347324 420143306 366683922 602657018 645868195 745085407 384642170 257690012 583672633 297579484 573876821 733298912 420420634 976750924 757752950 905666594 540862364 977233312 739596906 11164110 302814757 982041991 590846998 105692391 213223586 470187185 128268039 205484734 900452047 366268372 955145875 516791225 301305656 665623915 962789547 590112847 914882289 47783547 746409986 736925795 93651823 364945683 876554323 694666914 167230173 359856603 309656453 707792972 181993549 752760258 430814340 586963562 486149272 613937687 430073669 792416631 456710068 560194432 773141002 616312735 663631073 562955792 252613659 723573988 117171866 145526751 998262545 747208481 686173095 692586076 636592997 763706001 575707903 532257445 88392251 326754307 512829448 9812813 536244259 436215231 184159502 943033914 300289151 316709834 304645104 950331095 240089320 614621416 865782027 919956527 160120771 966469270 309007149 420835300 565626627 284566516 755808336 614564741 572913906 460315177 388224081 727589770 576705476 801499291 890244811 764190304 248840361 941519798 508607499 687233321 725262889 888660868 821068803 760565868 768493680 580196582 704076655 103028797 875451288 892571379 975851627 648825978 132251498 703707266 516539757 467256380 875772152 257983759 909614384 714221895 760190487 30347707 774817252 34986448 448605322 440876492 879153996 604176019 933124333 934738780 282850493 302241302 165035012 683534529 908530683 788452723 775557286 515298037 651305704 862937539 880468230 823157026 526547482 911867558 533276309 656627909 73233550 207235463 612428785 193469560 864113421 430604094 581227270 603605833 552951034 480728465 921071350 78199079 632901201 373424180 664965060 150287421 343330885 251431929 381547950 626599292 777346982 474573620 86232170 585046415 467678370 990330390 596323774 241733836 486439896 188412847 276628411 128204546 323790408 59421514 481726275 418700383 535082364 184122010 779867810 751794803 829488163 32873597 984181670 833966375 884830921 402849184 980448272 368136562 841492888 950523833 467516566 845963285 976542315 18830157 362455320 604330648 124593258 463831358 784844218 266372697 290267857 904519479 208488445 391456625 944492547 769615597 6105162 527930773 5153531 160563236 771854680 444948193 532866690 510043052 516473486 473234485 402194827 252021356 595918153 231771000 640536351 16891374 752727148 600232273 238923503 242984977 811072631 134327780 298972311 201604729 822750925 164786942 599011262 204257300 726938806 617060740 75983577 773927410 174821366 54449356 902829666 161351337 80589691 65718846 697341859 264867735 265659705 946199328 359253554 712865047 811538232 511362976 930537095 250283776 853378234 686406797 216381824 612547414 893461159 833720280 108861718 573930458 680617988 4926512 534774066 816901255 578325524 127449495 57206509 515473518 221435230 463610356 230451118 301113493 315536830 74765831 580596397 601306676 68567525 557343615 305131086 904879265 455069341 534600882 513455797 841118110 179243977 126000771 875161141 327833469 422859073 615672294 535498733 816146099 417878718 140666871 914204364 399349565 385586338 365734098 102503864 591495641 729913463 659691027 955632807 203905893 502334264 544373386 460572842 980451180 323426077 103855184 146582136 670308963 522501176 597758469 972265393 82007130 615795854 685206739 768882616 305886307 542000055 986362453 108066578 88677862 832664601 737568961 664227024 84906155 630825374 861045904 450075102 468289068 505799355 78128429 766350340 157096541 207695068 800543140 737865086 525961251 959002030 939050255 240339542 80607815 669917304 888861218 288809953 192156671 23848207 585476517 884708295 355730691 287303883 438580563 275570703 278847606 198799508 882266996 575602264 479307286 17763725 167159332 810254158 138124148 8199992 398345282 411966540 902197969 774865090 571886003 930734436 603406827 405050648 673208191 839065058 905612283 900630891 937911410 752267488 132071387 655101086 125544345 757910371 591341024 51221313 829222586 897532479 606327354 820743505 214496707 860369530 130418372 10317011 547139238 210503221 796769119 200732332 118801896 600269981 240444133 412340586 310480367 512906769 981286489 802235349 69664204 273898698 877033602 208020868 397733684 630825374 935004942 407301095 476388732 846875607 604199140 968396537 419132081 237384 987939696 697406348 904087762 996833512 183337072 711911862 839312114 656766231 655856360 651339003 12850503 216876744 709028310 887134680 906321487 96575398 788956986 780096896 34986448 722151614 962810868 849827224 950497645 477671740 612125215 323496064 282054292 401994038 47178975 136610438 22437269 323813552 244727452 331757850 871181616 175905084 311578433 24956762 900100354 714203773 890640898 582106548 698152893 739496248 649355079 362918615 301765321 840094284 354459606 219886904 541969527 14594866 776759662 67878769 206093092 499939605 79807475 547044861 158062918 637326629 174084938 69176252 93669046 38065525 344499319 340836506 619961129 91229039 756681298 847476192 57183847 931055989 467969337 636272617 232068021 458385378 92655765 600559725 548190156 834569774 158103750 771311508 685370792 903696910 826584583 23145101 833305560 47139684 130756006 248073692 316943040 232201368 224286868 892581352 445029700 493986485 686850437 878496795 150006356 383854016 221096308 812812411 796690761 586147984 882030195 785266313 457413513 204698896 143081344 784087236 2489177 940891548 372493520 642533998 660435605 778880904 656226861 951878140 43412027 153434192 567522579 958203426 348606593 158426652 454815313 578436703 995154336 761531043 939329422 653087832 252584352 314721987 760966248 852573570 814296960 271239556 126119838 973316689 611349153 478773716 381901783 365902580 889618247 125837906 316066758 522635100 973568690 173576799 804839244 587687176 742492071 338601442 453778671 802670111 911885762 646380576 904839303 592368016 655759055 179939460 741277117 752724875 707338774 582452440 261062922 227283020 195365309 200195859 41849647 67137126 357404250 253415317 97503074 579604819 348888567 575584430 152571005 639705494 317032453 191759007 694573671 852272479 980971910 249949171 929532247 927180257 441855859 803042585 213566193 184363148 967829888 955254932 147747649 730644910 523370815 535024547 992870704 894993960 20347649 365135603 354396251 928484290 766858930 622905701 838238291 840432422 136487768 318655290 408495702 722793587 37808541 314860560 637510138 384234284 681079985 126642330 229807876 533690477 362168855 979822577 939195421 254501122 145295764 408067359 239597127 607880618 277224004 650116710 114820575 228212876 328921712 543972564 112704701 431934927 783079210 853007795 982946619 263284329 839293717 104774012 907315369 959921401 137806157 834503268 109396142 64272509 98140845 253181694 403229903 41148716 174719304 613506924 746339512 601911408 921907298 371524816 899869384 306959704 966431765 662175101 236892339 391833929 773510552 315025632 735783355 21255943 176186384 481621995 709617649 306028898 297335844 520873838 738139744 618314783 567401641 144476763 751177773 949307322 223502769 762684106 230636814 893724270 109267835 841118110 527425086 913773494 97056786 194547229 313428994 527262659 852989428 976347389 876883538 24328695 828574903 700151790 989484828 238635092 971259596 781940361 871181616 776840702 928360046 23723203 784266104 618666866 357357036 702309041 106281680 973181655 378808204 360670140 708117402 80247901 1236970 418725111 66021319 754919234 521031536 611792713 791639277 221330234 301221644 535478624 174633889 854344569 472111227 500153507 503717468 370326730 421320904 734241552 953161628 678889863 27560205 615679453 722903414 951842886 101401419 948389875 63771188 685701107 347084535 47519472 504371897 768468561 318198370 949837294 398972072 744857121 1117757 359420285 366683922 887516585 348474478 254251953 816823812 373082034 912366889 312739853 857578639 504073262 217223029 948157176 733435334 813011259 447139058 792262112 164661959 931881223 366725023 825114342 645005966 915832659 868339361 654743499 219504864 227627111 293848771 590646679 881748544 288529386 986949195 577481782 532264436 578664008 161674928 586811149 869863345 292622305 966402926 334843146 456620920 853022444 881749066 979321667 990218673 782014860 562916989 276975319 199313819 661296976 605071454 173576799 502088255 601253940 287627038 917779555 794020228 237838869 677923310 815615835 440403286 789129448 112222040 817110542 273288323 205593809 340059675 418392014 439417895 412749042 68928984 749646632 730526144 510776790 777179881 789751804 815296268 921570752 725579296 133826925 807298266 597125631 89733749 61613722 557375364 644946700 488571247 707005326 380662659 577511291 57679133 469373809 176782695 107757785 525050131 756869717 7064684 462118356 352167621 144788841 314775188 395541539 17729820 338102565 535239464 88010161 729069272 134820520 172072069 356955040 44702843 923965187 495855056 901747800 629161737 378675820 494846412 868202342 179173915 81907103 274201415 300605345 476545422 245143032 994877141 151593982 838409338 79989606 803197619 426080904 923039781 221124662 303418073 734718525 566836156 639704629 580596397 416064526 972431481 295372153 412837285 677563760 219914738 605980584 732312973 492177639 935920975 235600816 453491137 940862046 23139282 902069618 620925792 50034984 711887594 830540544 805531310 544573726 924106223 179953476 723221527 255756695 96609405 901831952 787900355 955031449 526313330 103818007 567970742 573444800 330966774 950821501 695663613 24452357 421429379 816722297 811137234 15446698 155339545 18522656 916976972 534192545 998977560 760415955 981893951 586374436 328566484 120467052 574431765 153799423 535952209 762332176 848576968 614131783 558504609 946658252 953389866 983376566 89725621 610061853 6216206 43323050 481217484 362322750 841987100 245451212 13956902 155721547 881674714 428204965 127357047 659060968 72332546 614756808 884308031 96660479 249285543 564190003 793658552 245885292 314880136 400831210 475544304 639599671 877903402 727934517 600435789 912096432 856348618 340945209 257963422 479866392 729319203 705810779 278229027 243782247 148044796 203678106 334039015 999885286 141090953 841046980 421908006 215119240 458973169 561799722 675451274 807310991 869337440 452065667 822180958 283058612 923124608 309138781 819355339 168667269 742602369 907645373 420207763 74500131 175526839 498010773 584591034 36114350 333939261 318469077 590178419 820466775 628304515 945812174 182399897 684271251 138729882 692118603 383507099 51359256 864752619 497557856 611349153 133171190 59790047 502004008 407746658 943526204 294157138 17272654 190601871 993475238 141333491 541034293 459069420 979961326 168032005 991453546 843907988 796568486 526557533 120646680 174162280 198127576 368554854 392483009 662566336 211621806 99774895 333894169 351868796 310098037 298457175 888066912 529283123 916541834 487199056 96935400 306502458 753898977 556424119 167517912 234571053 291179964 545449427 245485269 401779583 846072938 71498899 780043080 282750917 469256826 396257208 776331945 820005760 813573535 547046761 837089641 661727141 362919588 935797417 963279623 208239267 439803096 726547804 234511356 301392851 720623027 759891990 57333246 703669893 242690117 286711403 576510098 270255441 722483689 466672739 699018680 837361844 913463141 877977860 662675463 921457054 877952881 573170466 534477494 92340190 549926891 74862746 892779546 19008099 145375203 760755659 590792143 987891924 819075581 484849314 797231400 60686900 911192430 908656247 528007166 372857955 230887416 933317396 49541014 547388235 427715210 310897305 181708171 773363134 226387183 899555137 553932785 370310446 869712140 885158053 552890988 238624125 331083665 30120326 525230643 827243164 353449750 291010994 701876873 486202692 442131162 419259332 503093070 140198079 207040486 396498817 441238175 507139643 497328567 968057419 532911280 719244604 295682847 770266496 196865428 391955656 426408699 69529723 900247077 309255069 82665811 155181590 817117407 350450104 278209878 123568054 52150322 854583135 828523706 869218510 105454397 582766463 593554321 783458772 27183322 759308867 164808495 790004146 960977048 213408192 882165646 284247777 596955590 13217243 895976665 604351285 558458489 542061477 399375973 269722663 383194196 5426777 190874056 238449578 889742444 467806912 756069878 182050655 784376754 658390552 775167960 267391592 912061331 130150701 516214141 316758920 926089401 33189026 785839676 639270663 687232779 213223586 461643516 415995965 31359733 901949163 315715 164801594 379020086 557701886 94806867 277122703 263284329 396876167 570785153 339024399 211460853 574404243 347831976 224758098 185506280 251259872 451200790 620231720 759414559 733889145 57285591 49576 261302127 644430667 864703112 320185039 599938754 336461794 208679045 231360137 237838869 484346052 833187326 153955704 837584139 770321661 225768414 578505829 636270260 716837037 962222243 264459729 442420945 614213570 672452285 205102277 617989592 751491882 948274637 463011073 215792209 645897042 193122257 28712809 762000233 604415518 689903563 198908261 394838314 166853988 99096885 529343502 480450697 410693715 392713740 858757832 430521163 913512362 716259541 362732812 923527976 616292488 535581009 785179456 762667874 74821262 50182175 632243010 22945564 242459571 832289339 149540802 112865999 618636200 32431357 457293596 706188121 499910410 20480429 710627982 592132805 276726395 714826396 531312567 299689529 610137134 737985040 561192270 963753794 788339946 191858184 205534866 193312667 629392403 989027623 530155264 958245055 704464355 642245063 730563299 200905477 679493255 414906736 598492715 157783160 949084257 943509525 249098813 859870578 592507233 177739280 943526204 187672783 406357677 99074073 302485439 534520540 359112104 497861140 900266866 42506260 860516555 910165926 995261906 332958534 416099465 923192744 20595113 302945883 286214523 724217184 65284677 491248374 605561089 161525067 349507635 828315354 729672995 420130664 833696927 5042297 961051317 106892852 452301611 268447891 177886353 290211941 662381011 143757715 841907570 756710752 5816509 657690440 442964355 442028695 473699375 71103138 106538818 110015857 453295626 599835546 505488556 848223544 262568901 818126487 661974140 942289092 13712201 846559697 981301015 37474703 253024589 483481267 469394382 630113152 241688657 321418270 795413754 826936897 843771163 733423624 458599956 753553952 759459703 902060194 773958547 55623689 710560688 877943232 441855859 2822189 678976559 645308650 700973896 594846718 151981526 914681083 693899723 199466025 881591896 633733615 4926512 377559640 984145408 388978895 818279497 841971131 329072524 204127126 671850182 544818088 207810898 75683123 178205291 24222568 650340750 398763768 867792008 295024423 774440922 962384055 687799992 735780313 805534086 329405749 647063451 786854212 819791999 85434180 5155973 689204102 928602321 167643746 773211226 839814548 532030484 208227081 839314407 369340503 730152156 658880329 473558581 813664723 577258492 990500082 622433426 361114645 424168411 548341969 346585814 47348917 337295981 878392045 988141297 136843159 363506441 733310667 854163572 200412229 252684900 447297530 444635391 760169871 658978160 416279672 213301712 991872136 371000680 195518037 963129410 32331126 929199730 562239091 125232057 712333599 196774962 320370503 971178560 872440803 593781251 638121606 627734285 428835286 235989429 269407517 417690043 880914303 657787314 906969720 959289760 520492222 681329022 330609644 364804117 68886340 149928660 295645549 85224607 731004263 90144572 190876878 732358756 678220142 694952796 674109807 399811209 322005681 110161678 553524471 327635689 939609013 531741232 110351923 261755897 896583952 715096272 490604825 332502071 672217995 875867719 655255280 17310280 460107122 90940133 891393161 201670342 708507486 190508781 717705951 255518304 63589511 870565393 523735504 458478227 575007153 896741211 391535889 957464340 425440625 865279600 839581217 844050794 837565406 951547002 605256404 8482629 590290054 730668797 208395973 967021296 654146135 670494010 176834998 307390729 853193907 335334837 447327111 845738875 970253516 673544474 870200506 240192123 585009899 51768556 574585965 734866416 607696132 122196310 332154625 320995516 121801911 40138 709684109 767250570 764807145 197121295 42633980 849722194 305309476 210214015 406529356 942246855 513835980 82931327 372780675 701618227 445758980 808198023 174792557 802673111 832664601 882083705 126120295 150229778 362962063 515950930 670872564 215260900 255338482 73827322 428049321 533786061 314871064 199605568 843862786 309426983 536700974 3747040 928468230 824427769 305397144 757763675 527821098 337920026 67749123 853230204 898990191 214513882 214918374 559335239 401160775 611505834 694501697 408836601 127152462 805070817 102604773 967553506 516755425 723983912 279189911 98568159 465106890 708775580 514206645 26280518 851166760 86595527 92836121 466036037 57024565 166383594 640637392 706006065 423945461 335300556 114008167 667841932 200830691 449737071 597239345 794861111 644546718 760446596 307648020 264909995 903140152 109323052 992402260 224355028 13487408 390557435 995423595 475589294 752211458 190014552 626494580 9008677 914344640 32431357 885613107 33139727 4012044 624184133 130500915 931004767 119484050 66638569 999480034 120955 316470592 33205191 999550727 699696318 199295854 145413694 721479049 244378444 590113574 937422682 89711711 427382340 900772867 807781684 695275299 68282472 200441112 458478227 561236400 5553770 324205443 912079023 670633145 149165578 377466844 85381576 116731623 961358267 78122537 946233370 335186503 122059367 413482881 755445281 666386987 733013748 511383643 877339376 521173575 709372501 409321904 890236829 219997850 439014601 643232601 599994227 786713541 501543103 520260544 638470080 698024042 210889399 561885824 581544818 826290840 365347725 66063853 819122754 443553828 324020789 637837926 156796467 254244869 893518398 64485213 453295626 788137543 707582591 508938274 854848339 434256978 875067424 217215417 69361334 601771850 574711186 753732878 933599345 527852894 808806371 347555863 705146474 277612270 755615087 487731092 93125251 297364542 806326626 426548879 714695521 525981506 347649493 598830976 267508201 881209058 681828071 532440875 829111010 197608061 482081511 921963803 605394793 172197378 234714228 438485858 560444759 434889000 637156754 932355386 659231303 188473275 790665414 931072872 228797418 599494480 287781123 582540448 296432267 418465719 818885865 542233610 441527657 726258320 870701418 45243503 898022203 310480652 75407375 768262515 478275349 924150345 197156905 792065050 683155592 447281092 348693460 675083154 879732622 408001990 870719364 575140691 642360712 581012467 95576351 566450402 977021114 526957637 602705448 634409611 715443279 221752858 798903212 127990535 5389171 235737107 602681970 888941889 177241605 330181798 476850699 185141951 715761505 571876883 526069473 981932681 41794572 17810026 232465673 452355875 245636966 748780151 217655539 438325356 60449576 908411448 911735889 235737107 398645316 429055756 335461672 389075986 707849591 289011502 365060672 248823541 151747916 452856184 414241717 99751380 309366920 694750819 214144420 24078060 738732837 242661319 856155142 612131964 378846067 912321591 709306177 342029818 297528249 31510175 939321343 94950190 634653634 567016897 314604846 113400736 648476485 929846478 635162570 552633317 276080718 844432655 875174813 276042446 333771517 90924940 502175897 23307106 173966972 391955656 694360325 73628280 664280398 547709278 184196418 845991881 215731283 293031475 159604120 199455131 973210478 935031379 403126770 844588025 762940462 355970136 908228329 286777672 543859969 924877261 292478907 39243598 392011782 56698671 214548318 305166273 910921942 897644411 392272931 946668247 313144482 719151312 543395755 808959792 359348323 775062978 173473312 973466797 659507979 720569836 319722084 144517669 38519703 441607877 504140699 709999995 562488890 440140729 558090484 675545176 235907207 446417353 905407204 329474968 581588193 660311636 304867804 302353184 757910371 70824585 856955842 306681403 976892266 386330708 770743791 101990481 402849107 685238814 390774902 145921146 788492137 821487034 901641686 471248349 473950182 792953326 197306279 149002053 93651823 584062473 819446115 445846718 255745565 905067546 91197156 357240648 642862646 760262892 534943690 817581252 549816277 255781728 787998294 881660311 931567786 263153386 106321767 608833299 583053796 254501122 702584899 56252313 178873137 687825666 759101002 622300704 341415503 901399183 61624379 820145730 429277544 29050113 684799256 978129727 71239125 405178828 914681083 208218610 254934196 18244380 533143531 835227668 972468219 211819074 313461562 946970493 584975047 669319661 397077079 935568334 289446054 842587930 838866681 422980549 308867946 579098703 43596730 819355339 2675258 631475173 522514145 927555015 351394460 683862871 463525376 658084043 442851993 610694074 305844890 453415841 597676801 190411207 694900037 552252723 644977741 173290246 359156493 641778058 193544159 594166405 666896670 713158250 743820927 158698385 723992484 272727662 823567189 472702647 860592158 648357383 127565519 766534754 315607929 971547602 576195529 724288135 588471262 867345758 16054572 543289421 595131827 175022888 101622584 93630739 758306636 581948310 72576450 661016783 711189669 588841298 711056620 926676293 621370354 163019934 309589773 350851736 819814702 998095842 463394467 200435211 893114171 830372708 915024207 376649746 524116979 275081354 218955095 375961791 489542443 995980718 651290908 646719116 526195779 853596835 294517864 250581894 796135196 796364336 599073823 682859867 730644910 46484581 539042840 607202166 473170144 514421912 366097570 101316137 431816920 485632506 505478207 706187859 487478951 22491666 761235691 295668052 56531008 987402636 497274483 670884258 461667116 606818799 395141873 611125733 816061453 157443188 388922073 126299763 336624728 218107310 586367128 94478511 684731723 244282152 476286680 979711959 774521508 751028663 217028644 465496532 914017692 449872182 153802549 203759555 522178640 908398962 570385114 460486200 436057328 731997104 376248628 366484296 418455664 566772691 312739853 757989975 99774895 214570325 903894391 87229028 421395581 207238196 754901037 122347654 749348726 279608541 985486927 196629907 33647567 275057546 182148333 843924354 737352265 518290174 882578152 299176713 601192410 55162469 781386735 957865136 541873505 963446140 2629145 718786503 422781819 563803034 267140160 130064777 21271839 385911769 403305993 170395983 123627196 409369379 49320741 121864026 944666904 490248894 845400131 893857166 900642568 697243707 827663340 760134517 934293856 32252715 549091613 975876536 778935668 228372953 320924697 168358029 421627110 394741367 283281804 326286007 579042149 56062408 840496131 241255382 596762995 567214013 484922692 734823703 40138 327415399 159273740 677737295 904768190 309219949 208054323 910723888 900982109 305253674 812034282 850082695 235364313 577408613 367855066 744172264 229971299 312662013 711037536 12753151 162840533 735761986 887659114 70597930 461878806 614293937 57443670 525629920 623759824 940691806 140082031 165839015 348876657 409836151 50261826 887030727 23080129 933069353 573129850 535357283 54407254 365287619 273515110 650088578 280315270 817178261 122192000 182443194 31422116 435265182 311303196 833108909 564005973 650485401 786512439 755868404 698820162 543023694 728972429 929159822 911509712 569363638 31666534 581700203 390043055 762060791 313337258 505120913 167255917 277191907 385543361 266494892 907645373 193999331 162568321 96043578 351486886 98615326 167737765 448108374 582326116 382881288 241338123 132953243 929299831 580043256 996772945 175325540 71289113 759710646 898016966 517300388 303021543 599528994 136105995 772444069 499026411 759040348 788564601 498115992 299508460 271655648 171244759 758808883 302142432 266576713 108653261 226556603 932965484 67513802 117045363 377969611 954350768 283018784 665466023 20970514 128950710 73827322 774043299 532474114 758475824 203316801 714604141 632013116 650537666 465951026 203278667 572476647 616357355 930240646 938712879 584056410 183875642 879139692 339424780 605125909 716315615 384392632 768560889 248981904 820271495 533854560 466765189 744316376 392685687 838866681 723640406 610232667 485072115 206792498 88779890 915930851 594245257 50034984 545236052 57132373 324502656 129956388 645323452 347523519 317248890 259562012 839211721 845266297 650116710 737710410 474314615 639442835 435196219 213808277 436392052 895307497 110542422 169140561 512155938 301524176 684535216 799239853 512262090 29348955 921477884 518146751 322315485 613398207 596268066 940800717 934590675 414509174 92260021 362771113 526557533 625677277 56062408 129042467 488416064 441323055 291754026 899746634 519709369 425055699 165867904 742592986 498967671 87729266 751794803 922914521 544329650 922401629 63226910 826990668 363769465 773989397 842240898 470611263 398777968 544301939 243783942 14906216 424093143 969620478 241763798 301648831 750957824 265670887 503331953 767795991 599858009 96771099 478926314 525585638 533380352 707052661 844132761 103659227 626759131 500862084 199523110 229028719 866270956 695889869 572877164 697343137 559186606 612566500 794617508 458716560 846071063 140082031 211842989 697910656 312593128 456452807 717717405 644060477 462118356 949190215 715992427 790754605 199531374 571571057 294775199 896859539 873523282 713839751 55833668 614631663 396307850 340815735 994793253 781034636 164967729 505959801 660379084 825359807 525422160 776282570 453713327 45785538 307899637 734829895 343032153 435932692 512572331 266847837 832273950 50965269 83497569 239153888 708795636 268837666 705021213 212782563 852176008 390099324 362963060 811370223 962498289 165020520 79962239 96043578 623829886 990796375 68168389 375407456 383769506 720018742 199880486 751020547 844488545 47377678 44669692 560533627 790870751 864880907 403016349 873510627 556424119 133628747 420074260 712543445 99549069 488336146 738875784 78270888 692523950 345750489 260514578 299208191 648068330 62648956 547842806 99108975 423649644 433536983 136323870 258548684 831925507 791975991 857638343 767989972 663989692 186815250 750902736 458149974 223530434 120407274 976096420 802756948 58579297 666386987 955609547 305622515 21406761 781935956 825860113 623936454 495960341 34639374 633139236 17272654 125883365 297153345 644478265 22989546 784901478 460187560 390390062 926186389 890761826 228836234 555367684 758228429 773780375 20966197 166831364 320960024 687736900 616256941 835342339 342338826 118801202 662997804 971511752 128022710 656183375 93593635 699652736 141378162 139673276 638596311 86489173 173924068 805450606 568316704 41965025 750082765 692648511 763081108 697591237 910423334 854023898 360816102 228672616 225311652 237883300 729482777 606281310 13189349 206436981 902917685 260963408 831076907 858258732 864464973 130745927 342211595 544220206 950796205 117265834 906365763 468738965 15133697 947666513 648680042 322322952 453793745 935797417 974175019 67436368 505341252 585036762 66902679 755706640 631860005 3544669 834555555 650537666 359765968 557578609 906290383 780408725 147440784 135495146 469727748 29746148 323554175 12121270 404270600 977058683 455614013 544624560 83552422 69513524 853031823 963893007 791697636 133867678 13487408 910585129 74574928 29154401 511475925 512241372 252757893 398390080 646676117 963988791 556238227 175278973 361018447 872270155 563202800 791265780 518873173 28641461 771391286 507951182 290869271 236364524 750488140 182655594 197532882 911868671 767085061 629014399 994877141 191088484 230907182 400603276 126685723 908398962 814644823 968554803 151883534 176813396 374705227 945885524 339307928 128385093 33087496 921722701 38794235 906912610 222391073 59336434 283322651 303038976 371930757 646592514 302330288 983386741 370404564 223840172 965657076 112512912 74765831 412669520 814338807 363919781 874780276 715208815 889388601 53803186 398684646 719935494 251953724 291075483 186994451 228922358 252330694 485679371 541142096 532098288 943932671 26915889 14038820 507917642 696197114 89254877 98652868 163963822 723628190 268365131 378271512 978566437 550110934 389601759 747698664 285890567 854583135 933628777 111690929 120654586 51988271 919393828 349907281 43447430 574941988 741567113 25302377 549681752 930179381 854033063 768143707 492603267 634202682 9995062 299908088 440005176 107472433 473113919 519540322 696808727 744364833 497236965 557018308 839413265 145986930 809474817 298154636 703068382 747716034 219200728 912079023 677004148 436718282 780040772 356149086 796941677 576947128 740582419 792132040 788204947 209878290 969674563 86087168 170102693 390774902 532383019 845077307 819218475 319615504 474448382 534067544 806832110 233921313 372001866 697143681 11094656 573112427 172658313 877903402 926029481 402101864 866572794 881515844 135164743 653321896 810935024 342685080 855845778 614277739 400360036 502697152 46971854 862977641 930240646 319752391 40061176 515741152 568201647 948261225 26748795 72655897 79195669 394439178 329629838 718707619 969124659 254933902 631236625 66966568 607414542 330842619 665814782 806919491 675051965 472894921 162805726 902729594 54647189 365587082 141131354 122730733 75781964 413534630 836461801 273640667 565276324 172154210 50477148 145727666 577408613 368813692 869494466 801572309 200520059 190266903 451483186 630914337 199857391 57633090 486560473 424401189 331557426 719581928 375824552 387316890 356774978 841515678 580485855 833380751 432996732 852124596 665980078 759345284 875873777 573552576 471367749 985978433 156556795 349409829 149694275 156300217 138729882 70481799 380565300 938318879 753012736 997939188 739726054 87123270 642529921 105240814 315024716 918043529 809253966 149940155 812516457 12692884 584140765 299403893 255188398 424125631 360060106 422783592 632596899 947895460 340622359 356935179 556238227 666714660 745657013 940513506 857882773 496799452 454615674 743842266 304212988 812849460 310608459 668003850 186100362 3249519 572217308 630533984 595831709 491130892 334655119 199128274 741099594 908495052 634653634 906007679 18666754 700282750 543448065 773508756 464975218 913065318 126527432 318913761 950145552 21267539 853980968 279239543 31260306 205458124 620231244 308216528 294871866 715839999 852250033 255610402 617780772 285233225 809323841 262794614 311148127 432522847 927180257 307866948 193440483 220772074 253630098 710920661 691885544 828008814 863584771 826980404 224577722 617537315 810986042 843446739 386866750 664563742 590650254 442022547 610028974 117171866 433841649 657453151 707188698 422571310 771239049 234022505 989855022 3272093 548942242 350433406 999155230 205857876 127841956 902381844 537365712 407357245 541710243 875336215 647603140 92430296 720705350 402765644 617950185 455294666 693848163 672065722 624964394 640965670 454343363 153341755 262090163 759612572 58890088 74991389 715958881 998523029 831883938 626531062 480648122 850569932 652420131 861821903 15916270 126664721 873650427 739721625 276362142 633433689 717278717 215792209 236374500 812125415 379502606 373171262 197361997 388885128 982747535 878800826 861166740 47147757 718324561 68455960 593876558 686157828 406801422 322630599 191301017 857161893 638711159 326223017 122778721 60141077 467386388 184802322 479685721 900848105 275646806 928104929 18738803 990796375 348553129 752056107 643258091 180173057 386359557 891852469 342523815 377850544 129912296 943269565 112352630 972350064 845792705 938887982 797182022 687567259 785184509 276871976 313990365 387954291 32323563 986695931 316810133 385147540 107496839 892684097 496296612 704877648 491957414 368060816 173676605 670756742 304378070 327047047 684578719 550761627 504645669 31265163 407049288 168632106 825698700 903465139 485534600 989209326 636535273 439063920 508428926 325442488 843907988 42553919 608239789 169789985 316841144 676257996 565698959 770827526 169052608 921449951 332585662 859071557 360780003 219270411 197072530 364100021 659590909 263211330 753728793 504863412 949161673 693099448 982348190 912877892 575707903 456740708 914348530 921577010 280396256 325425378 294724066 696377227 252472711 934754488 361173080 228679694 817835045 600100216 521340057 316132594 789154223 364500865 506721607 811278851 460829021 569826797 805654640 764012044 60364714 476359274 2617967 704638946 3957864 964834236 559387905 898100041 722248031 500430629 466125945 438160246 380556365 309490039 542918555 585577852 967596039 299215852 689656599 615011574 25690763 353651804 533933674 889009111 330842619 371930757 700382960 968935869 85578153 344060178 639642997 271250880 161208176 680570077 436057328 972268299 591829185 923458510 509973691 562116502 958040349 194316306 39632088 10541693 326677583 705999672 474438925 67636839 647576750 334655119 288622201 344683168 846282558 638004083 771754622 199295854 188430685 254921388 331658485 375875085 52150322 244570324 889078338 188339062 860455300 697974041 89147907 304863604 781857820 203581946 306120665 662693136 892416690 864727124 352777566 568719536 397020079 174004844 897845232 913470520 689976065 389745414 426791359 815817077 997760818 313878119 25904492 276879895 360262054 869277047 676805022 456025265 770748204 309420639 619746293 833757369 242989583 424679390 557640629 996703004 443842525 885669691 907506664 395746844 932865770 558677722 595132862 850180297 882027731 479756801 315913552 380477475 343277554 477089667 773805387 552064223 525541244 478426549 252215082 780438009 532547947 157903167 396234317 386809854 735060142 311889366 559848161 601125939 728938161 490095024 445501988 416869889 881053988 75067052 776033035 439063920 307899637 805400658 772955957 505300926 799489092 835110937 922504481 470226991 344581137 233035237 903226995 582328653 835242992 504264468 113024368 957507901 1384149 501557836 51279734 815804293 505763420 38916348 325102171 637169668 447900222 835018271 651883219 653626 929163915 165513147 20993282 2825934 550886194 931551959 479022696 130170559 916248220 279777281 166805372 592120398 804982991 429643291 600617249 963479245 957375492 770517642 682837491 116430610 937792933 900820228 944391899 268608470 301139014 10786974 24768904 731973376 680629000 538285016 378519087 308867946 668484846 160042755 789278426 88543725 65980792 302797042 982316193 472008623 895556044 170928588 15585151 542439424 846904686 95952134 784690126 778318635 61883170 476251534 424125631 49320741 627339766 742761441 148216071 221536562 693007628 202540177 475761609 702564042 767072823 532807860 400360036 595699078 239093988 62685909 653758422 942654525 288851122 598516260 27292854 288214097 480062298 897773658 126170227 510330327 261558459 1227944 103640519 797961462 327993493 314775188 678732870 384208646 906321487 744174277 257884295 345639927 109085193 74238023 319926430 710038670 366410943 190848167 989067076 858519591 177294615 495983309 414048003 582776154 36793498 526461633 846733446 185723276 88392251 207462988 954979813 126805486 422588990 908727897 978598005 989536604 194581201 610891202 827984769 592120398 733959449 801304491 340205480 61197937 52546836 163545393 753794169 497432891 199314205 645207263 199659704 511246185 694092822 313721370 944779031 782344830 489474242 266834760 542098025 225806635 639318171 853774254 867310533 165134971 571429997 444127635 665234479 763608703 592155804 284316098 660783140 988241884 561741012 703590921 113301937 694266118 695065396 65098391 985239926 860394586 268719034 146906389 81391736 486700524 357508618 329474968 230635114 468122599 908420503 986805315 239562054 466571094 376861340 487453904 408936293 69900692 865259197 470367404 538426219 276557500 362665936 145671696 430202856 399460835 412345993 275279964 389555941 544515907 664128164 890878661 258785982 561707314 433228946 575201414 177159798 339125959 37910404 133686156 348040673 936006907 776076449 753197185 213099261 289251690 983199973 815655766 875914138 474829783 286127199 400472737 795233622 208589614 981292617 83109563 480411002 249697692 701443344 868895845 631222818 151883534 713842807 365453031 589169516 663924333 802533191 206807004 190878240 471440168 813066773 740726976 202741092 669974465 262158776 665804696 73421146 789744447 764002201 700313687 830402532 632311290 27661669 999171782 602206022 924568387 309100818 641974219 276923803 372712656 507993724 278478040 950888960 85514280 243866529 931813312 135846116 942314751 837712804 53794045 344641806 639515044 921392590 666262780 983729357 356889683 419387813 655113261 615152866 835156331 877033602 876916641 597636317 368481623 630023676 236696287 912411288 943406725 578467408 671780658 551210918 419203329 584115352 879452545 754606044 953912396 286062351 743782089 802889425 497893058 987551852 390330004 182825014 167308400 837288924 758978143 496058237 461382708 611292567 609974811 149467548 630309099 983036805 693029071 380879665 773600420 73780535 631619711 896616892 374364472 713713535 138250460 628387278 901056708 570307066 394739801 548082186 306931588 332502071 521572926 760058139 53778810 128851327 747081550 559532633 313045020 961649627 763820280 301982148 239851059 780305556 109314774 20399435 342959690 969286953 473616453 578965651 281110211 273921500 562319852 866638288 767250570 34981282 895735072 741450415 117528250 904143170 171551687 519852027 41607547 670826640 555472170 938310878 944817293 867225026 833305560 174009172 247900676 572847744 841040513 384337957 297040589 951293569 722741584 726898611 394057448 647495169 474388591 84626507 679516191 565322383 400684321 17450910 255117323 738013542 407403391 397683506 471336156 140133965 607018884 446517386 717591337 17272849 239960476 659481618 505847616 172034624 372712656 213408192 765792261 608591397 829323865 2700768 790509146 456372343 919937994 379670404 378552592 632712063 237283123 649475692 468122599 22189734 301252434 687740434 921291773 540436814 153955704 114941220 315768029 379530051 594145910 898124482 736372640 419815270 933691290 853902589 145451608 5862004 80971525 270803181 146910022 937285778 530370 237883300 29502833 289410159 273731268 939805537 239388620 423097843 60139607 852888439 583053796 89256745 653150374 643783601 924648938 224653575 221179102 147452789 484098739 209282342 76432560 576338905 933271848 937689655 168357117 626731623 956583558 667957027 672804021 61062366 80491931 873783114 579888765 216683279 260735227 556716364 749867657 444974064 954257866 724673897 404623059 161418117 498711990 675846093 419132081 722568684 425740382 606759345 994951502 940801319 995980718 927078060 620777748 637618501 787675566 175215762 134787703 586064589 186737618 736412824 239411913 819994969 207547527 186053841 708245710 628289086 680142594 559397555 207109960 982692113 960327200 48904953 670006728 848821217 343918635 750248178 625933461 755060415 548167913 493759618 894163810 508214429 801613897 665576842 62617590 943269565 71363699 427560971 517269567 896182095 493367725 957350856 6156236 128739086 667699175 304328368 782332203 611257726 157715399 516844530 779834727 791734576 77637054 73553965 298121233 24905124 923464671 502991240 19677112 337533930 366563540 91426844 944913762 895660828 779676711 239364382 82621142 66092151 329554403 203620334 636728345 772769274 594962144 722206384 192359077 512504378 691221201 214227471 110492721 98881987 148922290 97336093 390579936 350525975 813448050 2483702 325809761 96257668 900551614 246350339 840950300 974265197 892884964 476884554 151295787 102515473 322570058 766229207 702990491 684079910 977853576 991259996 202837540 636643586 429043220 239303309 956310088 583408811 293135873 22681422 415028932 124318347 641522114 477336626 46546273 364804117 825574957 44118520 996038045 312237419 246097993 866429709 390450363 307393957 402818081 14812767 984446278 169184060 592831140 929804803 991872136 237608287 865228673 652577136 221435230 246251601 738294339 698402025 19881940 826324640 856231209 831603486 526294958 520885547 9447121 411777134 194581684 307816088 960229022 861866653 73704468 562774403 529928421 807013718 974042538 432126131 447014392 553995222 284778239 206346031 928016685 128507086 363633735 665072519 49904048 525137887 105145870 807556599 140255826 179563902 98712735 225779676 183537041 83141815 104517866 479022696 539899056 278827898 350627705 589190350 968299006 981442465 752760258 495273503 547692988 877128316 117065069 526195779 234511356 902319708 461508874 117620549 224714935 928230911 259200362 721061715 122691049 69903842 580143627 718809247 753250194 429938054 856890048 497989858 595652549 125481437 983096998 359657529 210558282 333712424 823976649 538766537 149379450 123038089 836286064 388178138 211716087 791410663 484233519 53881131 472384245 487446427 893484994 580534145 347996152 733557479 707741735 33426015 934391623 749186530 34824251 926703063 772440829 74412515 856750803 280020833 40991694 180001218 565938959 696563684 89959202 159957850 139675469 155820786 355389206 106382662 657771457 759959058 924104098 57801863 212783064 662948642 324579573 446190637 516565266 204396186 815392678 824656225 235090882 402592714 793266391 498673416 67217221 43438603 385734784 357829672 813824335 809719044 834335765 311303196 439279531 407279684 406218321 168351962 845792705 851296989 663148199 444109355 323437772 681598126 734103994 715577458 394583323 26016045 660620993 581234174 681253427 198376235 671142466 601192410 764178435 470228866 264274415 74828734 11225358 496321535 719143982 551632938 117431099 87675216 492561622 352594585 632720196 524968092 313601819 435008017 903697452 341256791 68478777 789346618 736301273 638028823 798266196 530920825 98826 582328653 370087885 701121446 345114214 410750755 208488445 914668019 519961424 958561687 462793300 218301767 173488062 429390632 35915259 574941988 860367927 392161919 340888592 421384072 935623897 915179302 582371637 512687918 50111326 406993344 367051975 593593113 361508226 127388051 302778297 671550171 222566205 112903727 273797081 473503771 709935557 112332187 111559404 697140539 613391756 442524509 839514653 124163309 933761737 638598059 624875011 910636933 335048154 953766804 430847206 414906736 363445814 543553962 788042302 463711510 810595580 448315924 952347919 986279275 41618146 218513927 802555045 127036652 742328624 188021458 369797323 174162280 502991240 838058849 74191101 336330303 569888859 237625025 861826061 850115200 582217808 130024627 538838828 551642438 113180285 794425970 288972471 872475878 275400291 817957155 814488521 23161632 323823974 525011749 124468992 309614331 891882929 75517533 499809588 479779991 93394362 472900605 164076724 304915828 523420105 749226288 980390553 448605322 989522211 357423916 817048962 573822482 515552247 681609369 8464685 47837529 596212931 627896599 353927243 870900358 680193658 864076449 337162668 35363640 470358604 187121870 379137068 14072714 331178671 748648462 970015818 505492995 312415680 340353876 898027911 9146656 188631170 474690902 971147820 443607992 647975852 83699610 299523807 419463622 164967729 284702213 534434549 209550010 549926891 940155527 438057659 983931295 936878889 709540956 903094417 129046929 566316269 24336122 798904959 901747800 896846126 937540107 279620410 789038427 59291284 245196190 113337747 783572140 859828301 271339833 628783920 792425256 789244029 488588137 147087901 755567423 976832805 4114939 438484444 148581561 506352626 566052074 380401823 569951082 873321017 144173078 669255673 814242989 504502475 945130015 289011502 386809854 946054999 914116214 887493766 720628002 303938591 168185903 885438436 262960928 10879260 872076100 951915243 869021696 31163170 189894221 277510412 63003350 217068891 300135538 762010489 94109361 719913388 851794356 270076760 763659018 806239687 137152376 280348735 925890706 643038084 535357283 676537582 922123683 377218750 749939944 420764739 606565036 412194437 346473261 16052953 526605262 743761039 161503820 15990760 335765028 530383503 547397461 980948112 901831952 501505048 707084170 470376541 679629006 691821521 31522812 521856540 640369247 842485938 742709824 192895958 431739531 352141513 778430777 53079732 524896104 18899678 557174075 214287939 336872726 516268140 709935557 107431300 119461319 931979104 227017176 680033969 853242752 495608627 704082800 379949749 56531008 610264352 250409460 181703999 238388138 437954227 224474425 298475568 123161705 838066927 240619369 921261600 166310611 2019200 436057195 131365428 212566065 472496471 692041677 327678430 737618244 13001113 451686773 591553334 491776551 427956799 651769851 376861340 517272031 576115115 955701363 956284755 495273503 849166567 349616120 722560877 780368420 910284557 346601165 863268542 853007795 735943139 619139403 230874432 971045883 928202265 970373838 928651020 613204581 874195329 683373094 769171285 23930691 203790687 627609700 179500461 929533829 526208186 350176474 121850066 88598387 805873089 262460736 648567143 542632758 633079407 405118807 138286521 54235961 423085576 265476558 511658051 920415782 851513121 492054971 980887938 661969228 890783364 585524703 236150083 509387881 795777394 975376858 721242988 810328359 694943638 232201368 188219369 926517566 982781888 93391858 930327826 750242302 300003687 797080476 627426543 463256978 758774702 40061176 996316562 411360565 751612211 870701418 214748523 420648777 323261005 313301111 498830182 869066898 143095185 796469128 286688998 592146831 90144572 987690869 794297637 699772205 878991431 625161627 849457483 301252434 266114250 721306725 926026414 129974858 618708145 348522575 479015487 693602541 583049725 262492035 646279897 314255606 526605262 936973290 659451347 80400960 453877165 764660683 732312973 795998655 731226989 746545550 592422443 646143353 142594613 857456067 219752277 314854243 904768190 257029154 658273183 516763364 419737348 853282446 344701949 891090190 149809719 358861911 851095318 330966774 660311636 455699756 690777758 756362539 866636107 465040280 508290343 159723749 104566516 282864360 381774271 490516030 74402970 104032923 194451794 257901926 471677946 919603821 915755109 332366548 917769319 692298021 420279964 121117836 929098567 430805506 354033385 360099346 489017459 595106664 929719073 876200497 761868780 197959963 286182280 290310690 457105788 822283592 626961714 294803698 418505989 468658649 35780576 772681003 267421016 772215381 708685848 878052210 859576868 365078368 130653745 39634552 960777746 553861137 441986587 83240041 717599209 591468286 105174351 58672462 109872578 287303883 16897708 522968522 698420423 513668894 903911441 992861147 23848207 916926804 98996342 192577696 814516611 15692885 602847949 552472718 980739584 236237383 78720309 91588712 669827557 13790125 114170420 428177746 317238704 868135761 440341443 654901103 425001982 990218673 935319110 67092672 458476965 280469807 162840533 487819535 346389484 205268837 585801465 689204102 448261636 822126770 691004488 282610572 954651751 41942967 391242349 755694642 655374486 962552105 359253554 447094939 304479248 309426983 457291514 496375088 177249798 291187362 928362507 725512028 215894323 105389889 449251238 692372558 55511491 466751269 500601698 269391286 773500216 823215006 41858882 994221928 98225792 440204515 255445517 104760959 899158740 299836362 972157488 671986507 525467228 307908303 734001585 950900973 795602101 650188770 802032934 194384334 5389171 884410501 560619721 108666773 36220632 430310212 847453418 194224267 555184562 114459514 457413513 342562156 215574075 98864868 730397113 788669917 207477319 168881703 511607078 141771332 522324750 787315786 283463830 33600756 399645715 774042272 435604743 947706341 854498459 125553867 313797414 488652018 989947203 451617044 316446035 518429345 106320165 842680297 499347801 568761625 612079257 181953664 780542936 505366343 795849893 610568243 415305123 624506047 443343245 240294095 26751351 174593119 774126003 483762318 942863926 153186336 485632506 403991494 539306040 496341527 313310218 811120633 652921078 752935071 404072647 30845398 829821129 598743377 758826863 984322816 256057011 285005668 93078366 49640088 564753800 694767755 587946720 505366343 82653987 932622419 361267663 353259904 263776639 450751559 303683771 830923094 168257845 815065040 372685991 374505376 446092419 328733399 730171539 156780146 549155841 576575800 580079021 837109369 5002130 587815292 422284716 969748148 35797139 671626132 105757711 877598865 148723615 738065303 776138822 867729912 694826322 576297244 865569976 791026117 911509712 459214955 912372205 622806059 86134147 103180123 131329993 567078366 748964787 573023518 271226481 621279133 596253357 425226857 837764619 748492703 76226210 298176178 600590466 401711301 104525801 221124662 997972209 957622366 1117757 69855308 486045135 516989986 486128392 161764622 797877796 820109819 566125383 374634390 960643736 305243349 840418089 118813726 42450255 627124883 822860658 26810195 303040738 367858491 620510712 981286489 37757726 94215024 742324100 290735196 631030090 86789994 456195119 49179867 923267883 716003132 738139744 546412128 666207093 283783995 324143491 13165098 865833002 18764117 848909704 855324323 437496746 629964188 602633750 972445173 676039191 713860416 905185408 646592514 132910286 718068437 802143479 49472533 101793145 860516555 155269026 140499502 617096820 971396577 224343186 534343682 973777197 611190936 801605697 491393583 721835784 978117124 350691444 48058560 666587923 820397617 186919206 672125569 690145597 866417985 211562801 251148120 369750906 108216355 568205701 896412209 101760356 804169107 408421530 239851059 838778649 593148098 83612200 143127564 913317941 377077623 3623287 113400736 702790443 696380804 709306177 951829903 691167874 947379621 995242696 756043440 309219949 928515633 606266569 93263950 479015487 432871220 317535063 561863058 675083154 762119852 306755720 795984145 439871345 724581071 570518455 214708202 401518967 603271778 518442357 774822669 40400320 922123683 952024874 996737756 423839778 196283987 707428494 648229352 935732466 590846998 212971099 126434686 868855410 835733171 551716805 231875108 136072513 140844592 936077088 831878467 354033385 853406862 128514148 577766786 650915393 319181787 134033663 87419340 34481748 353467925 838018632 728103752 718533252 38088941 145862535 316132720 470308617 9383151 64752325 218611930 460709725 722008588 601477604 15916270 804399990 343326308 236056806 697970014 997102444 517630370 929533829 640369247 643510931 116915584 890561304 911082402 997657404 740302946 549091613 11079613 909032491 93047728 443320012 829821129 191875782 326091703 371493110 41825261 921676766 703083542 598734298 133867678 184526965 243645930 527930773 204497409 338019688 241388412 374396498 355618064 24913727 628166977 350062328 402739330 120802733 973660673 126853721 738129221 475393680 410888589 375175933 544864226 48835111 903865274 820994659 271861705 182825014 795728911 388488862 183268884 887463100 651239422 692372558 131858922 658693795 884366032 648220650 218282077 220601636 760071593 485133937 177675945 996297433 571312865 849685723 145412895 705275789 897038068 326849844 857850825 13826604 875069649 72148274 4817697 777287682 659184677 597476253 677306974 912130146 197986215 324113327 58399333 112332187 438231501 261014158 530783919 71663631 193940474 423852955 92623586 419956992 777841565 932945629 700673900 936227838 378857356 607049335 190209139 410889775 276042511 483905369 920413695 587039024 319733101 169112681 331901211 62833759 482626967 13036607 777131815 324427772 132717918 307047776 789038427 425634539 630102619 284402114 788571551 149485171 385119670 146695416 110124839 109251199 504616944 345147283 926830005 137152376 406193579 760985594 59350452 229935369 634315381 390666076 962284767 289242809 995614651 552128016 271117593 409169109 924436006 825350045 91369963 597758469 984960726 735277196 326073502 624369871 236972905 416848966 219270411 422662102 541790235 34826828 31406761 545915919 434000058 340344208 544478444 71239014 944682820 780488186 765925446 555599448 69625484 692310226 939195421 437600190 543448065 874827591 143095784 411564209 688645324 892385886 817119192 326515847 656856426 362448035 825020769 812364231 818136261 246889436 547743729 500936725 523041583 372737237 625756321 187203379 846639178 300117735 943814370 199307887 214980483 954415344 4098287 377290828 619152015 231772323 306947516 412429129 453877165 669917304 443183894 257158086 439556855 478655728 151375302 737055806 739197408 835749957 918214124 776349379 448930392 969846362 648046852 759476934 226078200 990796225 566360396 103564231 469001800 844528699 915285784 193960937 349504851 532807860 747872978 214227471 316684895 667417735 112586895 524414934 978234685 325792468 564201744 814516611 825574957 220646866 762333575 301615748 892581352 412340586 963167234 768970010 701818361 488756770 567554983 407741320 444050882 728212218 274525206 157844411 891443964 318293388 198517559 555393122 757483121 40340213 290258916 596178899 667319192 365587575 800679889 664470343 654991147 838429014 226969926 639705494 652680558 520497060 990090257 294145687 845153084 499655241 999713451 901084108 453673867 314676108 216846868 282037665 669512748 348360630 295751667 871658400 442635028 32166608 681942525 4032417 726108960 637981514 162467931 793779334 907056226 188167965 305209435 525399581 23869087 311709463 971553297 525520259 593290314 528972221 57376817 123568054 392161919 328585371 237281106 573930458 951347100 424193771 868061994 921702076 851883762 785174373 227246193 532383019 874312982 873899438 630479299 938126320 688644181 779693403 297926526 695724410 740294111 723781146 539494322 543166456 609746404 236610650 333143755 445845960 263524363 141314900 145817818 931254945 632857849 478260442 726754531 613250810 390945551 356935179 474881252 521137566 83699610 694666914 640085393 129105154 908777543 669969442 968298118 129393349 193576336 410986706 394919883 222115444 82665811 404061160 109417910 103034892 286699032 361379188 416106798 405582539 37029868 703251015 898316846 591812060 923588422 27549310 159969367 732763058 764395791 349616120 273198763 962038802 58444637 122425620 805577333 551304188 227643233 51343720 494121368 27149262 68540154 809838216 373668695 232048970 953043239 668994165 210882484 687232779 772895398 917738281 958503846 539069870 211978495 938126320 710681174 466867703 642808191 496405122 356955040 526660360 855875622 385907207 870385302 541088700 960874928 128826882 996948797 99936782 265615805 170141671 955053100 235893206 244701421 467623 18404901 750573419 261572818 766818243 532637137 447029942 996494328 638582628 780029334 505202754 729402536 251426291 893152010 141378162 878052210 718594332 179016390 121555928 5803521 271157229 296432267 368977388 112743415 231583286 41603008 264995038 84640847 455531454 661738994 927961533 654726771 586472134 721849965 130059402 717473953 5418091 68539251 794985258 767132398 63265982 113596690 659000026 437474173 923858144 790007907 998782404 600386143 228819549 740831322 851966724 680570077 306832605 87505350 605899580 836399352 391666577 432895112 351753419 316945063 227008690 865931690 570984973 489170013 228783140 438572281 928991221 496389713 779910471 408434276 485072115 944308703 218358372 492089999 295971046 966014114 623208551 237597128 925386266 567352450 557234378 894680004 6848651 909460448 286699217 424737428 821947542 2856311 381538236 581278223 968226291 101401419 582204065 698751513 732563013 819218715 359568674 731323102 636236351 93593635 859610367 764020985 618465838 699444126 673333418 901627535 309255069 21902693 511565387 778349057 135247313 893762228 227521943 900077739 24078060 237384 568786282 819311544 382501540 976832678 702005253 954168062 338196463 303371423 238650833 403793339 82640638 904929212 692695498 861854024 495497035 675588561 13063619 454245829 13063619 136825756 796948983 863315316 15832446 71857686 521087829 854811042 466437219 497373126 678204269 964193923 420147355 384270397 569959277 375477106 717771716 379777051 365643281 70156205 726507713 690967823 21949108 848519613 594471016 540965538 806910466 453008319 843284613 880418670 119802977 862938636 694360083 516972509 15783814 133219520 466012772 14569346 610945001 180106887 444172096 920189384 578940914 297919926 937436793 733138533 316739505 134487583 119189016 127357047 637593627 870391225 39634552 900398423 953330099 540446796 230061430 130897340 317528413 689976065 352887855 484631493 259920699 57872055 231583665 940253825 252596501 65284677 445299316 775786762 878828073 270851571 645100424 538487886 243326137 396746444 52302708 188049247 989673816 155095752 915897249 421580308 793263571 429586192 788155685 759061562 394747095 538810942 291157553 170791359 547740313 493692504 50266139 325770511 25830779 582418925 739446664 968264603 167972850 711729722 833752727 449660674 644230386 617138380 793105476 796469128 985163058 190992588 975938816 611932807 647770160 695353804 427969137 738949253 618687263 585596980 150965497 462289295 33087496 541826383 747489078 483716802 198908261 369256517 920477840 730058585 792298882 391400507 399779344 183157511 70716476 736725411 209282342 804169107 131312846 951347100 592414346 696503889 18661306 11225358 134070023 130625586 474829783 161742205 69655486 965108349 867742733 74447677 79031660 304350475 841213256 646409022 165316956 146220801 699737250 91229039 260142515 453837382 800986243 81426203 662598963 621410254 752660908 582084019 925105581 148248268 410250156 368317372 855569835 973498480 388948381 77577081 785839676 185137223 688784260 976932284 122409774 345875049 425279648 978834329 333253614 142227717 791936261 60186006 80956133 269448766 394407110 98150323 534387119 214294062 746268925 779606009 168898012 859918198 457603240 445783518 163013281 836721119 315118630 298599039 799621551 171023974 101931003 263976750 354655785 664128132 644230386 138349 422662102 337751259 810500243 432010459 279593884 294149920 676496341 941851032 834847261 320556000 547954452 126375295 243066415 874415342 607378754 63214417 186793558 860381756 33304646 322678781 371143487 159100618 431270376 62603285 291365533 859693849 709772585 605945278 401516653 640768062 403610873 721028849 913808643 455614013 218057910 606192646 543235617 215119240 281732169 529566807 725262889 569677281 835157605 549155841 951954055 835304145 937374155 523062071 479076420 158169580 547131402 872743510 891603353 669262402 159800671 374900459 303106046 176494514 622300704 414077824 479735944 955899694 10296381 496395594 398676255 578599489 770366575 276026789 473671121 662437500 174272872 345391208 695876459 602695010 950797618 373654281 747712713 398390080 128663689 210537320 197021100 584982757 523438124 831751761 63494740 702254180 986851437 776475735 255518304 189649649 58732368 726557174 630600046 932864402 945005211 112476439 289665954 51391779 789975428 50427291 916896508 33559324 706967234 773729883 769280007 178118996 46886374 388922073 314241557 751727252 536545114 219632302 598976523 943493123 466866725 126688363 726440045 823006349 514421912 207676189 771857799 282598166 780409177 113597914 525585638 355730691 468049735 977324876 90497997 857207337 823248168 445740874 518542863 719354070 374029612 371846491 347292781 583410318 440932202 253226385 779058624 706643188 833393844 790699854 798354863 534725830 287622818 962269727 165020520 437984865 797498985 320081207 231560997 634743730 903050151 513237567 951718486 637347647 288565155 936937110 873014501 46856987 871767573 531290671 485267243 6867199 954819870 749317225 124766130 533053317 584936589 872212414 432582086 581257700 788478806 109008262 523562765 527714097 673960191 171560113 199924512 670681357 934651141 48180194 178730573 102685105 719831502 235815573 520736151 680559897 363689938 197832594 991140758 270542990 30017952 116996725 39353270 337626366 723788028 887735543 273522205 108515131 869980406 377046237 65146469 265975323 623303436 524932783 910853141 36363736 77999778 667179929 428620134 880704854 509112866 943795223 427082616 423625670 650753165 315290667 337611069 738728826 202602504 820012971 448640329 112349485 591225900 112745961 923533037 233871234 955296365 434950780 439498444 788460347 717205707 524581591 958083582 756240904 912156802 449088099 360727170 381554673 155658167 628439054 11853210 944346465 224474425 995515278 904055763 229382931 449477130 374264389 433134528 710920661 701984908 519961424 718598884 870004699 480418875 574330432 787443682 455172237 263617488 268901299 952366622 708051463 632311290 399502641 492038745 287545836 381878568 815360171 93104659 83612200 763396942 314676108 630773138 330943387 572782927 974904495 282132180 585643954 924854290 208971460 331597580 123555487 700882576 678499384 667467864 907315369 500466522 826618265 909563769 331682446 316119334 625718239 401623313 452065667 51838407 558371021 329913498 441455523 638220139 261308203 817996157 535305795 853012428 760681986 493986485 541368396 757912470 954999752 379490304 133811407 520268907 772457313 307725183 91954497 749807454 132174214 820647117 969108723 958434638 715784037 752542413 542692527 996650686 985133943 370073897 221718777 390855586 859693849 640258983 380793861 190104728 265926601 633931518 135966166 992162105 994378412 858803926 107243387 198840504 907305331 269763737 548663687 631222818 497473290 125544345 392709872 936933976 170555913 742381807 672090417 509126416 105129467 517517613 171383267 940527725 539660720 999998195 172890232 441247495 38045961 34992610 763184130 682261045 322946562 977849815 125400067 665623915 57112411 179939460 558152571 741055269 101556494 738613961 165839015 344921286 427715210 240953071 182359032 402849107 865004507 798325795 242464153 356774978 986719077 932000266 62826284 512805061 196743909 581746826 534776545 653979135 2639642 948087067 771643530 904665704 265110068 258317906 529164153 231318827 448834949 7968858 737491354 937833904 637709418 354180506 402135298 51356329 550806533 597171934 276007929 805567854 542188160 862937539 739849539 607487614 347483215 625914058 359234146 138626249 280036694 599613932 544936112 46221567 419259332 387314619 596364289 980521632 31950516 7653986 194862201 552989064 914961376 427716883 948024192 128111655 964592973 130674236 180609222 543273009 954564680 69851796 902786887 77100646 328632040 51726428 432415334 414533231 184512461 314613738 319688242 425259653 828816421 830132074 993904858 384797100 283777910 274336120 867588612 66577087 469117226 541343117 746157472 976524706 748461569 431609672 827797259 85439716 798602138 140738144 926489801 263332755 71725580 571151916 953903604 28015623 22862066 49274559 82023933 205744609 90874095 72718066 608511173 349557235 207810898 165482824 210614618 495971954 339424780 561925519 938414381 423796514 70218872 546554057 849281663 264224192 260412196 6621310 22917860 25789821 957675806 803720852 841608719 999795646 394943247 846519283 245377186 426173624 270649547 127010608 424934313 736894248 354591161 41990454 973660673 420582411 923040142 101031092 191301604 762676720 95341637 502973242 411958003 752542777 322862206 49214521 624095568 564917687 963861021 85553910 519126418 643707757 107305071 672624484 883913510 174345109 195937988 789292586 149304798 347872572 853684504 64354010 83552422 534300569 163855993 464043514 240049586 420440022 315684947 445811498 543123735 647576750 591065162 588214817 453952777 359348323 686371804 384433906 513872889 111345701 114200219 354154685 671550171 306832233 801548607 322892566 452759766 613381077 344144003 207129855 761371058 550031755 259785841 945989968 785071454 768396509 770028705 423904111 582963409 310728238 197832594 784091167 910879498 65361164 538083342 297579484 647202172 913080899 977394024 116242155 648046852 950242396 279389898 920305281 555393122 906530085 848723099 498308715 25944022 732689820 754186494 607371841 346585814 234487052 396169826 212016206 259918941 947224973 77800307 811836214 773549498 498467304 195224486 897198637 606621987 417387448 297971405 912983800 92602863 247922108 595132862 285782974 949084257 731237546 245189603 422440424 750242302 266484984 969146389 38633569 498163137 855413464 484560546 889480852 933007094 532526187 228922358 298475568 181393522 361739511 541343117 908793068 804152913 779375355 850521180 958398975 79469876 937911410 582452440 548580717 419815712 286777672 523420105 750488140 74136288 249908950 214429097 403460890 797271859 66217324 571102602 889638809 405178828 59250781 110206700 66492731 716987164 888461629 354479082 69615319 801943903 157802465 653008466 261184738 946970493 694843557 231334488 718529984 453622030 23602654 600146537 611831639 266844932 975851627 247940359 78122537 991664188 642233387 738577039 574520612 851794356 166652663 7887296 814298453 736275656 397995508 235021998 212647474 728062516 832487825 986563760 763666712 859667892 39285763 334358656 807889786 470478595 221172553 459332629 765737868 197043966 749791832 23271317 360338342 521022011 93159498 994724031 322570058 409615481 268541149 5761760 203162170 140256564 10371974 666966359 78775106 712543445 879604234 795044932 988930622 771746942 744152177 741939499 254308250 438057659 592439530 826684426 257105986 119475491 152388921 791110129 726260206 254484657 942021650 575776713 643804013 332250895 380668566 386487798 456964468 543755171 438693568 934499899 344557061 530220851 733212079 652321866 123309389 21406761 197021100 525666436 963479245 101543528 297423358 208522248 417013366 905590204 889085276 322170930 869500303 519034981 481836149 413195847 336203721 882083705 783458772 185836913 252613664 557375364 954627132 150394346 745292329 556372692 647016552 15312179 751645581 527094334 491724000 403117433 732603540 389266952 671594730 440541477 349846040 439498444 73050486 620883217 269624746 388427914 252035664 609784002 317762511 769318427 234488575 458595996 950796205 959370445 578903327 930610895 513751081 981091614 519446622 688645324 426554662 667406622 525314023 91687699 37747789 249240872 428877108 679777773 928360046 232179186 47920853 291010994 728937313 176764218 300867665 345049093 549263653 187203379 200703304 663933287 634718194 5283049 58085212 430801746 432646498 765426012 58560982 600505588 552252723 515904434 195081452 186995826 442832946 13549274 160563236 841829625 351691321 313144482 887011017 148161005 572342079 739392047 274696567 511279291 4420264 773138995 651715276 432646498 880464110 421606889 185340709 72847526 619053364 427384998 368643545 31731757 349138755 557643115 140839037 270053060 686145182 350707488 598085436 508084492 440198078 573675813 303174112 26525334 674076340 748919279 442557433 101790138 694843557 334328962 224356893 562488890 478662909 818059128 161239273 432642679 405722089 664268802 901160592 956491521 522533369 616123816 406828879 526959161 152685404 296616166 118281709 918026332 623291926 339715604 478988163 440204515 684815463 805918541 656867128 111101313 699385887 993775781 587591408 505402605 819507048 861828102 759866527 171087477 342653661 351846668 391666577 290539859 286182280 260189720 984198721 751807820 863390343 12385613 369797323 931759867 101653447 53453214 380964452 963790909 840432422 440539909 568345614 399067232 410159521 551054220 339125959 377575274 814043469 677059320 48929492 993525130 691221201 857188844 318113143 643699987 486459004 881079664 852989428 577700028 211022336 700124121 187134690 293330335 583885430 882198161 909895444 221427893 241450252 518759518 36456822 279760269 786049387 647770160 219997850 211842989 665554032 562634031 420049931 290129325 621613443 307271803 735917907 696585018 303734152 539924011 419956992 716751396 990899040 929336239 187456031 869310075 467294542 367868111 12803709 97083821 729402536 984698557 304749083 527115523 330207681 495304328 154467691 269757309 690760836 351399345 527025406 455247279 436063377 18339909 594532397 634439892 428446590 406553423 799481215 836657643 743996409 197062155 996411347 986749982 932438874 58474218 716324573 39505550 813708641 330115438 579598493 342959690 897924382 768492535 790243057 593614553 243385291 405350361 21681659 983838118 959370445 79113351 957983436 2852609 153663512 733617926 801141180 779693403 103471212 54847199 178242045 34080270 225560906 326789888 284029742 508201177 919843005 144351044 343468797 11414208 47081724 464423816 870793580 126970030 75239514 300458091 96548527 688787177 199557019 650716172 821191943 613440387 202070847 375201680 836186810 949307322 306785569 992449822 153171172 47590409 42591210 567665842 464234241 501834874 576246015 714398564 80506110 7204733 5761760 372857955 161869549 557732431 720945101 120626006 702576708 102097221 182616239 630700581 967787493 625769145 332394982 624574919 186063869 770612376 773600420 345213233 445878014 925580335 12753151 618209899 985040508 824278645 691725261 553147016 945354822 743654406 557324987 961429064 276655759 362665936 560211697 13196304 377551247 107550631 199355103 259736323 122629624 135043282 619131266 967819988 7718172 482260448 382339122 932808931 683076349 178773879 962332358 831386990 413694040 406736028 196797950 794826778 46549359 4225152 382340212 887880928 421750010 484014542 452380912 167415782 195051014 548923551 212065604 73563221 511900606 889321537 405906678 718495657 501645416 586128869 802128558 106516583 527713015 731279683 269838533 525973507 95661137 431929216 533652273 253068016 455036992 960226874 486560473 704141145 426449952 270343426 586263721 363404409 401160775 739941742 837100273 708966633 263718400 120593516 946074302 972756156 339491354 122884359 477999813 691774043 933465130 16882544 582853909 436144036 319433357 87971482 773234943 892579138 916320003 708668455 288437577 632930595 556862746 659545924 911798660 211591604 416631161 704454632 148108687 923206616 548115004 279389898 416642560 198725072 163593565 335472794 611106739 208911444 537123682 891946638 906374807 711351364 880914303 568231278 112470136 685254773 523437331 665072519 63214417 985678210 632479868 456613230 309653720 852438910 418200243 104525801 285782974 817524840 523067250 315290667 842014028 934082641 186246443 149208251 889442241 144776594 594463133 251567964 68644122 274696567 817231399 501182523 967046650 596212931 301982148 798883985 878991431 165316956 909597185 947789349 514093540 960723823 972051996 349592689 662486541 766595499 174276289 599905069 270278194 755813844 148126478 575163274 523777049 223331451 355314335 977817146 201040642 155248016 851596911 750331659 630302483 280834299 17546497 273793530 788088018 475589294 152136430 98108508 818906885 224449253 288608254 74606468 366135215 313601819 357423916 260658701 756359106 909143706 967730729 788315884 479501793 40569267 268541717 946464000 480012874 494121368 710340432 205157815 343066387 510653304 489818399 24923123 512687918 142528602 286974830 552521857 617424500 525565194 950209605 263814663 593876558 325345654 933813348 925723707 144076016 647287120 605768196 728972429 837170355 567023085 546731686 810983206 101033758 62838300 414753839 566881237 861500008 457576056 837361844 89502181 613949869 358732615 600630715 97620095 362420359 196841916 715759045 717518147 346963422 255922322 21515159 581706463 77063675 803992166 134075833 365343828 29518487 957798419 803368324 950146480 214526072 158502054 672659567 74712650 648845325 178176189 717514067 719380103 701618227 200806311 680028741 686850437 21232042 716534762 926534883 949523279 674345814 510296861 377506207 532866690 606271377 208075589 745153850 273199365 605472936 472222878 154430354 528188824 943269500 986090229 525503184 707088661 329629838 413754943 264329290 381217656 131989244 927738394 504309918 942607640 736950996 641428384 459087059 760755659 30972105 138973177 269865242 936750445 660774039 726910177 777996087 103650908 996038045 835731509 325177707 293408971 606481705 512095216 8781358 326914613 381642394 432713044 965785973 721354704 781386735 237922128 458271003 448468417 131672092 86860913 483991147 76707525 230688507 845340860 979067264 701171627 201986135 260982408 343745301 39197614 915912352 417464348 448563138 289146698 121806516 763236458 869476474 378265214 636514695 874355575 398727852 909858406 340680314 653830482 916225196 428456922 534005571 623461875 8418429 74828734 693324003 841482024 652680558 69615319 340537027 924648938 561396058 70151968 103081010 922748336 856626776 890085119 799882574 182700838 363154350 490806509 515707052 67934934 55222039 688767371 608533028 70867254 399001186 800105680 934698771 807724453 582766463 462166217 771388643 891428971 220582169 520492222 868765978 691375794 380001106 64066172 437402690 757193896 893889473 5497188 788086457 46460133 156969082 527986603 415028932 309138781 844022452 877189932 332680730 908598591 191795001 862244600 504940548 876191577 502933498 262188375 919937994 611799220 751167509 645938174 3317554 7139351 517188833 271491019 364788896 61922288 562808718 751255287 775007221 331045186 507754246 438804424 444887973 449636463 95048504 195626255 213721845 441404082 624288445 28244188 855871460 273852860 867631333 820735629 936185343 452975247 475503351 352421527 695802414 141021027 664945581 100696571 775817503 855076029 802544980 112856352 324712238 816327600 34824251 868680705 75946246 77100646 764511978 732763058 854775428 146618855 13790125 51969978 947481827 143489920 265113422 560731470 515904434 822283592 68153430 38507014 645242396 804685095 239581600 159777952 877929721 283775480 441527657 942934624 491062846 751729673 215194878 124302733 742097878 315596563 122347916 183588481 631360546 923229344 264598196 83380103 164860992 939082106 618724186 517953066 884479364 985259765 408788277 749108943 439319044 227899834 452543724 714194951 437496746 926970127 69975937 603533853 234270975 847099650 701879614 193067322 607721551 591495641 749005181 636029524 811072631 745244301 412538757 333144862 190014552 96771099 570984973 671771263 840263758 87663664 25773947 22681422 254086007 720739925 41348610 233789448 698400425 96640362 454800731 626143773 233324365 77635750 474568923 404969365 907966505 261706508 417759312 148812659 367444855 543972564 890524437 545020680 880841688 196853553 746149272 782431055 157090063 680685520 51073868 620855025 261619889 636439366 322837143 687252339 75067052 833752727 942125842 815958565 785563346 846302915 614564741 589988948 157513716 173874927 35756338 101669619 759982799 337541706 315337785 301502849 559578462 848909704 203359683 344881539 608124211 129929855 124601478 423954388 402281472 477819909 7696362 228204064 558647319 360251717 133338028 599200949 900418232 346906456 670320077 389745414 729411384 938712879 696690474 342527140 222622164 168985347 16292452 713648094 651440648 13025313 785266313 438128031 668126430 250460628 82132888 929389463 579211012 16317379 257414083 304070320 248438331 557776503 410431593 947744097 179511039 472894921 173416950 980931417 432069699 26989611 333377449 363988208 508647913 128826882 404359423 524807179 569401552 593667940 301098012 438484444 24328695 208423368 926885328 301967206 956310088 861272041 729913463 253160779 619961129 523356625 471089114 446743808 896610543 875707871 51424565 968327421 314005507 573445788 884287224 886051825 465117530 467431697 551909115 31140806 792060700 221444295 696406732 620889605 616036324 558323098 36245907 7421538 780109744 669624172 348903550 505525907 8795152 947950796 334347389 252695788 940527725 991478246 898090698 128022710 919617681 671113066 514880860 710877679 231778720 714203773 701494993 300563111 168500637 340335751 309313423 234599430 173018836 535823875 793171278 725257984 505361149 557324987 899218087 682264442 731417925 375953467 786087877 707368702 717999243 368643545 970643010 334317574 860206187 83908796 722381468 528229901 747712713 34298983 845484874 360195327 239522076 62234913 500091674 693775134 452481052 733540449 139381733 720332842 31580464 517442183 202867128 188143812 336323066 324228308 69874864 269532591 516839728 609118882 357131303 434869751 383554277 914865889 389075986 135313799 288674803 308183244 517377 474261549 946420417 439470991 344792110 507503017 410487831 219331709 944946958 778781683 833816757 825694667 825698720 550483359 219625782 273190639 559329413 120808682 227249913 816919788 162129764 649564256 512860197 225068491 692986571 960422988 412606974 271217844 764878785 532890467 397219472 346738136 299648011 903825815 20711037 208370923 509641 124666415 780099285 556163324 529856388 694750819 263183960 133826925 616075539 329449006 33708702 289625216 512694022 330612172 668522067 306691234 471204799 729681532 120327935 490823916 127658092 593923492 541207264 7653390 498883566 273190639 829895910 514745461 371707518 669977902 80625972 961401774 318139346 926830005 163165731 527871325 551831430 826944307 491421804 856792785 590840841 615929291 120625884 630008667 61275576 925504200 510669202 288017002 948401910 183949022 124584388 298366033 908691522 595169685 36016223 553147016 350837755 892341521 810272185 194559100 175289506 163583622 506329949 474221772 848944327 290359886 527262659 301615748 356149086 976520118 257048488 807881315 321403581 772375368 170056297 656232836 441971488 886683957 35209963 876943595 859550694 222019426 412169957 569918095 235986003 818674748 117786494 936380498 54798156 214243448 751807820 484226098 245885292 212299757 797263138 648919180 282054292 222863257 665835575 837032523 225311652 917628277 974749946 814143551 496920865 799352680 344383994 755513961 6466615 527997076 451286652 798592282 716315615 678719560 312524149 687007983 756576534 296490331 922999908 204178008 571535266 678693152 682103638 279476275 844377807 975290444 759428188 632660863 27536694 886739364 306900581 107534565 283538243 483176373 856016141 261826594 60309669 532526187 275812178 841144939 587886570 275131034 455699756 771382671 303371423 743377971 100392664 297353094 603704309 811120727 442681306 432838030 50432591 617011926 229855608 89901761 913568354 325885106 846210692 983061228 423491359 805039993 708907657 255912500 684701980 764758052 765509699 8853329 790208075 244399573 87028833 700009944 567311210 586719489 558650268 652995729 58513274 436117759 146943451 610075648 806214402 188219369 508603386 401075885 527674490 405685523 207527972 402442105 682451868 910847964 31950516 443426144 414108305 987402636 997334990 667186187 681557915 161550898 236333018 888360282 132879081 360262983 95994381 684499332 235815433 739290471 861967398 655862329 490205612 988563898 93639239 146608675 279848562 53936964 482137374 3853851 561741243 6207497 792132040 726974257 297931188 68135044 738178147 164244338 626509866 229453768 385166610 273719120 541212149 646409089 620768421 77857660 825860113 112246561 820735629 584518213 572434501 503725086 809195312 812803852 26407619 564160582 638859274 938906179 463256978 718478020 841516349 687477631 576965935 130745927 320185039 116060156 588290078 372018795 925035275 855749870 7949872 126411171 586974509 662848609 280427608 290942868 455069341 424158514 145288174 913396407 210238380 550562618 207679894 493751051 526959161 553557068 386726173 413841982 417896466 870894947 688268265 789138377 193399261 601423742 494106549 810520356 722008588 289407992 806654693 460107122 239772213 691954587 910385574 691678172 938062378 587515129 156550486 355603573 511930942 477594499 728614023 289617168 535648491 935879146 647016552 105240814 735485663 421719221 652527130 635933087 158402325 133857435 740504533 344130386 587961870 237381206 371640196 206249853 756550717 632243010 971726196 676966195 805720390 236633058 354479082 676269813 15883074 815522493 216800086 47139684 766278130 615776451 625781176 841578112 632123681 357131303 465643406 888003724 183319984 124391650 695259508 598830447 975274305 153730202 176865176 186951265 887254159 919996743 836213893 375218472 512733071 269336650 170035385 792332073 104023415 191869232 670188854 732603540 861770790 434849190 493674699 678852327 792146527 857638343 111939829 512733071 717717405 292298191 933133895 504947368 896739525 101052875 790131043 278357411 680548301 245131524 630248219 682945215 79733104 411715599 34121117 308359860 229629356 902948755 633728825 652750105 248468935 651412479 542376314 583875819 17096452 627062397 703802984 101089393 930261385 757373559 455984306 797329266 522099455 958180212 196311366 692044829 803684564 491496617 511365665 599984864 764504265 762102930 491166764 929117714 580261592 656217909 937937486 480152410 950923072 60350083 529907473 565874765 835981601 892884964 153463664 912877892 111053737 868091638 987338962 624288445 821909707 986585586 196472 436735796 842133629 497033407 172581051 140615078 821693843 784385011 549666677 321329261 157986091 935931160 68179373 552661057 756414900 894001583 628664702 611185886 408788277 95576351 26304997 196686420 238636699 576106183 325879597 538726166 235785196 374411501 546291405 468852142 539359628 636269863 941030743 731279683 801766907 900121198 551396984 744798269 552079350 404359423 733615879 742512238 98864868 155109037 881942206 908237167 199344781 15653264 544886124 570755390 136083372 894507501 341399771 830402532 775574918 101912140 297453776 350170530 718481341 864493929 919217432 863415043 481943420 499910410 281298570 297207931 890285543 616464963 510122409 102758724 742668441 101242955 451408426 567023085 926657701 393820794 455686204 73323578 220943389 493147369 30888942 34334578 261865752 720936531 337821949 283583476 404550256 648881555 227255124 314241557 582782416 875727042 148772146 303312493 88613274 275079742 823264347 329637203 696312538 670695615 729404647 878805189 71655180 286695158 623584344 363445814 596157925 466866725 691239442 959405130 974089092 268425468 811379077 117098732 557479989 723061018 322180091 75778465 997750166 255370991 346394536 596837072 200657068 8621479 490434869 994527767 708137026 170318109 139381733 364396550 638401276 803042585 106184557 437206822 495855056 769853555 279618764 177611378 129798736 370850264 787443682 95810376 348876818 867306682 934156094 518828464 242855974 937260267 276027114 980686242 331629513 142379586 900761183 545532716 928837674 878716126 449660674 467016493 833816757 224696047 489795328 664130415 895128544 466625056 345132950 225133297 980131132 973183880 623342497 157194308 878969250 807870088 944511806 837169252 753536158 291810793 288565155 809253966 579683347 198255813 637593627 922058789 527997076 544478444 57085966 800891803 811039013 524796860 941355556 802008673 759806696 729067160 340758090 935556539 792299092 323141439 57391186 798084107 290661871 337677311 880943717 56566061 819256140 772655342 253761553 10114542 395357073 296572749 469047126 667548647 469918124 106681220 123542624 69664204 233552807 144893043 752373775 26453222 994207908 270779247 694435950 613704974 663096337 671196388 552890988 746996936 488231025 857036015 677254257 23549193 631376809 227564146 34685508 564996909 495476487 337962121 344509678 576195529 511150554 525230643 299073876 28743858 337165880 685370792 514863617 709089289 452558021 984003529 458925485 864657872 813694040 821217853 147036663 9924571 414071943 680466595 511124348 752935071 715915753 832790133 827471254 291605476 625054201 679700875 906777499 443427410 336541197 717031642 336127854 22388710 688697810 596021128 402627964 403060719 378094897 543749272 391307049 884750134 61326665 261277919 863285083 801766907 505341823 79291051 575808487 478807803 111522232 649593004 195766468 81161456 806699342 605073159 954009828 566316269 94891735 462306271 167438243 759669746 361177625 233704839 53891030 722955561 351447929 10813211 158068460 474220067 478267758 934486360 515117473 275863540 687144040 170766292 988784783 521626182 620506770 706980484 209706288 493178134 191270983 155339545 606190013 951433674 692519160 345731683 15606842 121264631 352555342 570153264 650565435 206235338 701484934 608015537 724334698 10288670 570947648 118450625 502769927 897171868 347630628 823761175 688697810 355314335 425266622 871735740 391550981 646827012 306785569 668058630 860804333 974492213 744466581 447862948 619282110 998716901 624355031 938953358 89151753 478662909 721940057 736894248 247486919 931072872 275461443 919979441 732885005 741787258 703118354 782964642 29657744 437390819 174149213 479410532 728652323 719276306 112457775 820306307 94476090 249672167 456372343 581830054 898202265 644664931 971735874 396689754 959817913 502976207 868146410 128248612 613760224 789244029 177605669 741944919 50965269 180242639 637079438 7653986 639348055 644975844 430793248 610771088 164957660 836816433 9939668 425547213 572127016 888832555 890716137 686956988 1576987 915116528 737985040 706010478 746196552 567478260 874134746 675626005 283996389 930093893 214708202 844735661 397378798 932320739 647162770 33409914 391334684 703296304 139000386 967077425 454685251 147161082 945945014 945898855 122691049 158426652 227234087 607317509 487577689 785217636 421472249 261473216 32245644 205587162 791990680 204140488 439078376 170941829 504769163 352715189 798037537 374539480 969534379 456324427 73935685 26229386 366059985 754653678 208679045 579653649 678919224 805100330 861062866 671150168 999220580 746894218 768616664 663904185 418859244 530136849 594641306 669537292 503878020 538183674 541274800 806842385 575159480 921287944 977614306 495608627 67922733 666262780 470160355 591515887 55511491 676506008 281574366 570396750 37905191 821487034 377252953 905594971 361811848 680395243 627812474 115797683 952911444 664746748 670872564 63291731 139260204 876607541 543782319 191014961 346624561 212859746 165506803 175540523 360780003 440703453 168922878 792623757 869594476 889664856 775281804 678163298 37783707 681024839 665074832 148126478 452481052 919411127 328486836 727111454 175056693 232844998 28811159 804588816 169481947 26787870 235814333 618101744 812204782 812377286 212016206 268329142 148082224 721273799 574666148 536646286 52096699 455906516 257884295 583408811 13542771 509126416 142725384 346884385 519827169 120318861 24037124 299031487 760500530 650561975 643325975 985536000 630113152 784862970 881832081 268713097 757443864 705701395 369879220 850535406 639270663 414909677 97487089 404933296 540840742 174701707 530100049 449306928 915269330 486754069 919305493 267204410 25830779 639788926 526863280 546559059 972896022 54200725 779167792 781015737 608239789 967059437 968480114 273473434 262345191 459392495 166310611 342825714 674096448 156443691 806080023 629863583 769075231 465127660 751922690 620909457 452801974 586846926 525666436 516917534 84748088 368842536 766174814 38033733 268516045 375361143 598758166 879960399 452380912 983212478 319948682 365405221 199355295 374082097 294593580 226075499 618093895 101672874 679143321 428388284 107143558 985023688 221909912 926520006 166932132 309712683 978786692 189336170 900820228 511373788 609025414 446881680 271243235 67730492 146976114 855873256 951620096 245933973 984858352 702406586 819311544 967121586 242551556 251705962 82043567 621725301 931595604 250638470 937630159 546360200 640976647 848901135 265458638 366386118 674126326 492344731 322837143 575001624 687164268 534060207 13196304 393041025 689082436 163855993 890172333 553168590 412636899 815817077 377433559 872619830 821068803 615464467 580508081 578436703 136420662 345150061 355762898 826672176 207040486 210740728 675807210 775566740 380394466 18701719 227274881 908801971 95686837 421505348 21797374 508088048 875729318 574650275 18481335 800969050 583500802 656232836 115097945 887937829 404310960 759207765 708651417 400542528 63426559 708961293 860803303 258317906 386726173 700124121 771793304 458623207 148108687 607218533 216772430 7887296 661685897 164826482 777884562 947211876 797961462 844246536 1140627 286384165 331402455 701852087 578150200 271376826 608122633 354464731 520120635 874195329 684551406 356590232 415803229 335899346 848683011 904246079 873211106 777104867 156334876 475695834 597125631 130024627 294919965 476745188 522246564 497432891 148708972 499049766 23162468 79850661 932838394 913773494 527996804 708407473 223466372 724886288 944870970 385343571 908869087 741155510 444352760 303110089 183163110 708706927 821947542 89387933 686677305 142887951 719958038 38738913 651290908 601016560 716299948 82491383 24890265 178360371 980461302 413673768 850411903 67351285 30631660 221330234 588946662 655935245 907670156 880017099 783988102 311469286 463755517 390136608 829038685 279507930 862499563 917035461 245083512 533220634 561628282 202175897 941670903 677227729 996092998 262033244 536138292 210537320 858128649 51988271 910796661 612390473 370789536 170310608 719332195 222622164 407174142 330596392 763888672 304570844 719092472 105907160 410089202 347563845 428305409 859342984 876086971 751772501 409049542 723688676 559329413 655024134 979903294 171937674 871024805 725716353 275406619 689519580 829206345 368424203 305820169 819017228 901467984 630800117 297183849 903445678 913568354 542061477 827358080 281922573 603346013 386445300 35915259 959693980 900165830 356710186 49614625 868202342 723380131 633108833 58776380 191668788 316068126 126236876 729607841 477810258 226075499 608355992 455494086 851678830 32922479 590113590 301499236 173561175 856822519 964313654 826208827 568201309 946464000 639642997 363799947 247216138 771133719 603404594 115712676 116092425 800933529 210591465 28490437 969534379 162519623 368410491 873327332 144813401 399067232 436949514 111939829 903878136 283500359 751167509 330943387 989522211 546926292 715443279 670631921 700255762 121555928 340615302 160094853 779580135 849245807 779143555 881706777 712116854 619689736 196859777 859576868 235868705 687798009 836103741 913070277 33958388 383194196 331658485 151702242 186912242 441176325 842028295 681220928 380964452 345696434 869840240 898424698 708973266 599867782 746406834 921120454 332869881 510653304 169322900 237471767 508091696 958389337 949771581 969582056 134781106 197991960 884941919 594254098 751922690 472702647 868571729 318288858 522514145 261302127 242614494 420265868 988559286 333776347 691705792 698679868 559680 414770431 86485457 420990742 418725111 294085230 37371053 532911280 917753919 958661294 919468059 321435235 520268907 95933383 462805549 703761075 737833027 523394050 435613828 141080770 58990129 392596384 801181088 811131173 97093255 757691445 189044814 883714484 143503841 551150069 669979174 940169268 662550005 641733277 681079985 237669934 219086372 288261916 221288811 1006395 545240577 242238774 130470573 763912197 882493171 662442492 960737291 595322612 306884495 955955330 26304997 656549876 360916869 178176189 792332073 723298152 532798937 596491453 405773655 651440648 552876100 220601636 389555941 614039638 909895444 640232487 21734779 811990972 701186472 41950782 174556137 96212335 221536562 460330753 348298209 335287100 975678960 211438050 263814663 265458638 154086168 384234297 853774254 939225456 426990344 872335395 809095075 287805123 572847744 54301077 249347737 620889605 561863058 908397683 57381173 641809782 530761665 973584626 282898224 561755144 882684559 67663298 23145101 522066007 472299526 548769266 43578382 894232869 42451069 280629212 805228232 964521872 740026300 194394365 703155024 581080492 250323769 307387451 238590961 924549756 188829975 469010959 879452545 605687243 837842082 212781414 859440854 729978108 220841959 789985452 427251532 273571100 479147349 718726915 72148274 766972302 695860674 250979660 466780910 531603162 672943882 906311900 55752150 326551640 724461693 271278959 28612425 987603391 880731270 943699337 357441623 63006087 178988988 255619039 987000357 773623436 863161474 991286560 764328166 744151269 187672783 691637299 828251558 662948642 843944405 550715210 558675350 446803007 468111810 926517566 37885065 315947921 336317238 373152950 215927184 749883256 931424223 642557639 618101744 981211030 204418683 896614195 448382316 560069646 220976987 860482085 684978858 191785469 823781903 36309 832644997 693939155 988032688 340212048 373076061 182739672 517377 591156314 367508556 202801345 686387285 152409809 722738060 976226405 699072028 183163110 205102277 726280953 514280839 130103942 478936895 615180486 209890977 701642894 97333401 483631556 72379136 95943231 630146944 291157553 486461657 375201680 74554038 696265743 755808336 216784585 394004787 548169672 798941482 968573345 425214396 643275331 899700520 301260918 282472443 380193329 583705873 581071146 617182080 308265471 137045320 93379053 698424743 893855559 125384555 580991674 257048488 270702118 64895304 351173917 237297629 583705873 881813290 250269842 68539251 12012431 5269269 794460817 449859172 954617492 736490253 995831831 155520589 313312655 624423797 836372511 276050287 806341249 608342633 647424419 903865274 440900349 819649200 793429076 293082006 316721173 273589777 940567101 500601698 245714487 548341969 421234060 134120004 176693805 592339818 714888140 363883344 1515080 523370815 729564317 651957159 705702779 662956484 484297313 745521963 840405730 160098721 764165998 288799904 499473114 876043877 851036657 395400114 620747965 84649346 6500638 645324449 486819891 879065130 34481312 365105891 563153442 214632083 633464967 416294191 704141145 110289254 661664411 621246665 388640651 538364238 790789369 371767848 479933668 591812060 501317133 989015286 474770858 163567757 233580459 257158086 818812098 881309004 323429128 421859740 282864360 577269190 768243697 256383572 290250308 97329950 115150623 710700432 101234647 493013185 516747574 293264865 518910561 18730036 500301026 43483082 812715384 256775602 985606690 781246996 817592896 94536863 207527972 726557174 412742929 751101349 422842530 224140025 336112442 675528195 33143886 838656755 903517222 46341345 764061309 137806157 160267069 241178284 25169816 363154350 831163735 539914694 912891043 672126161 325022603 444913637 904743995 894424575 214045770 139999992 878895089 104156566 305510867 934897305 123232061 203454854 733643753 932355533 470178865 440140729 33669331 311390909 417065776 87004726 501834874 939109819 748144842 75389560 913424680 222743193 335853805 307668209 122455292 23307106 736186984 668640357 515151846 368060816 472506666 318022432 86966750 978596246 215190124 379928618 412594984 734031997 683213095 83654521 582933256 358497527 915600941 492913461 684602195 782928747 40269073 848477108 561156417 598976523 422328213 328460186 604355473 172571242 523360226 371846491 697533642 413866781 960483325 799588212 22984052 854767328 925409385 252914689 114894597 687798009 135506050 284262790 54774473 412254760 988573488 742403307 950376125 247754124 330705811 315886248 167981125 808534016 331406556 612182058 737595569 182784704 52012588 167727258 17281674 696312538 398660180 69850549 340537027 570879590 909165603 250815650 588506310 361033663 759408432 270563023 395624832 212473215 61326665 558974202 195942003 792333264 65113346 100265610 174328447 760262892 655513347 654090518 510217962 854064748 556953609 622189630 288923939 312537512 638148627 808275512 962643708 199942649 607535120 817126771 966387299 816520258 355560075 367056721 868125422 698651267 297080968 74946052 7757803 56593545 717331158 247980267 860934518 537383993 943509525 21818461 112512912 111456523 570067795 660537734 172214855 954603553 504769163 794494997 646655380 746560833 560738539 28339641 36950914 28195418 332250895 958800426 71720355 18484724 140130311 384809554 276042446 214313556 477930361 453206210 846852602 786410248 442874756 539494322 767181588 634011918 933517304 693530804 532296714 818614438 653324411 665940528 41661975 93745426 831081289 691774043 270635481 515167511 986563760 159643574 244173437 205470860 754532386 675877043 272934848 89151753 113009130 123067440 233704839 780796930 962534692 575958192 554086840 919519783 721973917 84444257 819593272 383811922 78729840 970126789 711728474 433479632 728141557 314450458 353056234 685499160 287558858 77408984 48909286 693029071 887012463 407630451 369944494 802973182 258697036 931881223 818768070 393597552 224653575 413982118 373042435 262475903 713416616 215524467 673997983 66777680 176709748 758421746 657771457 289446054 685129016 329842601 321279058 235576597 666139138 126428579 104735325 687719009 929938808 415149866 824073123 154652195 572278286 795511179 929714041 406553423 765344844 638586120 545938763 777996087 845201920 215756384 66743077 235829642 121203839 428165448 978129727 614865309 794861111 331821238 292060904 29255262 931813312 58990129 583672633 332229720 443427410 969748148 503411342 240719125 335212143 453878425 395124216 740297371 686151480 404809884 524116979 665940528 154121176 714285176 995082357 178496387 579582555 432229698 822433653 349883289 737106215 570603508 750048796 672804021 324017513 638028823 754482683 558131625 131039117 517232210 451998946 635933087 74799431 396594781 473322842 402147878 437016629 110206700 646765956 257757366 801537648 343512060 327021305 400911249 309259835 94436369 742592986 491768862 650503082 231546351 289701003 292712717 214734046 608708778 32814944 830060608 934669668 355064394 288923939 358654678 783443893 767039657 694606862 333864965 541838076 423183014 591563833 310982796 193960937 13610438 624428181 144261841 324172111 150308064 181801939 664563742 668422953 904983729 89754856 306755720 542805732 554137062 187754332 284852796 170941829 740967952 903023242 840006191 245007234 932654714 515161080 106892852 249980018 737354007 147698121 328314648 904629315 11151795 290170003 534115141 177706604 326223017 430240877 101968713 657594870 747961687 72502561 348740135 616684414 728897227 134912024 414747650 836474170 293320580 626010774 668991448 556939018 417597313 650337273 271896906 141333491 915349230 782489634 120955 172003117 758242224 145921146 952911444 446155145 145769481 974942367 297563074 664098673 801248350 622769554 309059309 840094284 384382840 897116406 748248376 141369384 35780576 929062927 755663845 554282370 411942840 82725312 995198800 740504533 668363329 940632149 510669974 182442062 668499294 466086716 594846718 290505225 586694712 786260605 975529414 893459260 433866285 446417353 107550631 306979926 454191596 702253353 190095001 141633425 807990932 972947107 431645944 797498985 670938763 827098864 968646222 33950766 734628882 724162028 898768823 991345540 121806516 849617192 964321023 977853576 806166597 223793193 771766267 645409562 960136950 501837504 663546598 695884760 970974461 153774994 111121452 611223725 831815422 225768414 705530037 973155852 829431971 532366030 416637455 350599905 844339405 746821390 715813359 348892098 430071878 240361975 373152950 578608908 694975946 569826954 429557426 925520637 721061715 200310706 920982133 729074466 435195744 27777456 162847393 371602258 829895910 80902709 708407473 696475488 184307715 96245657 416627969 247691132 520541218 730397113 249460211 743048173 884121097 526313055 213852285 539871267 577728681 586893655 754290335 733864628 295846842 823314643 557344083 465312514 603190123 240352597 717756978 951358318 651181039 146327897 935623897 324068766 100791782 455972882 653840939 353342099 93666602 22508008 46928270 166217508 287917645 947704785 160706563 902712957 935619340 454635616 358887577 840520484 67704908 216381824 71639310 654146135 68264693 40015431 772066118 669335416 986756355 904853756 355902633 825847394 390671348 768243697 707425926 151538176 490139676 266042661 397823391 557204330 338686955 500181471 467294542 935025381 968412578 613880050 700547433 911439782 747764239 4599347 267528670 182763177 291310750 878184804 756221286 959456159 89302711 397452019 962121143 9327175 647817242 412395349 151981526 780625815 159723749 330344575 562105539 591023510 867677269 133617338 919427345 514951503 226520451 205529268 101672874 818078607 95338084 23309596 339850549 540278908 946294664 909595525 625282043 116091082 273869191 91000255 558383166 502920107 325021520 233565219 866417985 319948682 458048146 54965248 507652256 628637778 788030898 951650746 229282989 304816445 235870811 178158873 826956098 620949839 953371641 536519477 684523361 341429743 648825978 644946700 983883443 594528827 909597185 641212590 822188425 499875399 772980729 129712321 159807108 276898072 727102204 589406644 196254683 665018236 972896022 551045351 413400304 588574467 804392776 66533163 638804176 295585806 939886971 307725183 90726518 16883789 482219609 139414887 479361167 295857615 541207264 152305352 843846823 59292050 429750006 306565778 749072145 11057796 406912004 749410621 997109823 960349912 968299006 441418200 951183423 456888286 691705792 751727252 510951097 129285134 351111990 303893615 294454716 968264603 906911711 461931252 437671811 885673263 426636111 492065434 904536102 879145071 306834185 208281763 823736333 956583558 929316770 351000964 503351243 777395588 339093984 808136707 566591584 14265042 735781116 605728147 101447114 785516484 24268593 604019965 93941660 775537490 611516410 671864527 967121586 702604545 464043514 334046773 92587352 125062612 504616944 955832609 648403195 575001624 408947254 454644899 559848161 581320772 916365330 441883796 570533703 30453133 230887416 614567916 217480649 838597543 388853572 92337085 733703531 819650808 3924662 396746444 488101342 179570437 521299580 192027911 21578351 137447959 163144434 439866785 822392075 365639550 124955674 411777134 566949008 410076631 832962813 451148989 939805537 114008167 672353201 919426118 388649477 780733815 37896163 612781767 24125032 917342914 512628671 730206424 509677913 392155084 334226158 46677140 589190350 986623245 428172099 440504288 15707097 728212218 959561636 902030835 332958534 972350064 901379653 111084285 266554601 704454632 942759851 989673816 729672995 403953829 328153718 492473117 650903191 303730767 73655382 514130521 405356169 335144165 127164345 184618856 892809760 257841669 19881940 679351628 178669497 268404484 210994457 130461133 390405342 279620740 702715979 824272189 261997600 714991885 801592227 341656709 257764482 891350426 456931589 384572392 927809592 10208023 256279956 27002657 428829391 874621322 658506905 425778163 269165262 115368608 546818595 471950389 919724603 405956570 478479147 653838381 984836646 332501657 664254001 900100354 685917961 634646108 587270297 73359142 318493074 33269028 957389711 705021213 19464595 707951947 185427657 723752051 922631416 870620560 271460617 278577382 552246302 921120454 264803659 696798302 242065855 557350398 851688248 41348610 647495990 582782416 112399506 733044207 343235860 468342553 904740503 750098834 339850549 28032307 393995204 517300388 690597864 706219221 492503359 32626087 514874494 520885547 614272391 945255229 20595113 702188464 931520967 511310379 620359820 925890706 500608290 663300289 4420264 593060752 338311716 571852718 973546917 909989027 646536207 724203698 19349281 312433946 368481623 164665096 137672221 740690098 58296012 215194878 54993543 706253615 766919913 832512824 483529720 153313676 624095568 9830381 770643306 197823919 866056209 191483936 385265086 410888589 372128378 180220719 265666953 996395332 240757855 941403911 374953818 680683648 496574512 560400579 405742947 736462669 768297229 373427775 84854444 337779017 175626233 380685855 90066503 789279551 964151066 141872274 980390553 872473766 658978160 488681370 101234647 687302617 875317147 774521508 825718588 876423375 618666866 637737073 69609078 343326308 870805609 949633972 689509769 489806462 575917807 461222639 615365792 309428793 755191575 503898623 35590016 791936261 342673219 941791248 835424447 18585011 7804459 885538388 28086902 557627184 409287591 275960685 462793300 485708890 592915209 820921584 832094829 54235961 900551222 642928165 492561622 114913440 448566422 776947136 191236425 571937191 570792381 482562131 933491278 623211542 357875863 339920386 155832376 716692374 856952404 182555308 599607759 468792745 20711037 21454275 610061853 851140271 323624794 280823357 806080023 800847438 556939018 390225307 354464731 565328240 657045469 477384648 610671307 298589782 703890033 289360903 249480104 916781830 415307325 679104608 690935732 284298725 376195448 514745461 947704785 952634639 473813564 130580976 594078141 599120458 56386860 929163915 173158376 343210593 563489431 167616342 882678821 757058448 370085692 586490622 783974838 52267464 236228707 181021530 104156566 58711739 439980302 509538732 403114301 69374559 916416775 638321902 439871345 439490808 441766826 719581928 654387208 28757903 977021114 784884716 51881711 940348206 144533386 261473216 136641932 81669944 365839652 286688998 729149599 298446996 847351708 127975348 676838790 79998685 932355386 897610681 622050556 359705093 864756723 937419276 468251904 668368592 250283776 547692988 499926520 123420691 815522840 285982447 412341146 982122995 972138919 184211691 306900581 215319737 619656078 571429997 3928847 135558390 848223544 944693288 968882415 616015062 474742665 635367031 117530852 501645416 399676456 667467864 948808296 90940133 207949179 368888577 576838524 447829843 587565993 402177888 308786347 561721319 123557561 710340432 453438146 878197827 901663722 297938109 362622670 859130706 638260125 823392811 599197510 303312493 83226927 51024265 498360865 128029871 201986135 19453519 145143685 985444122 490364698 947433227 502677241 5153531 58407606 276384162 972832889 97430863 23139282 461395337 270866111 705411029 276364326 242650644 226452803 329158271 131312846 206249853 427026029 485708890 155721547 232175025 790949230 718533252 242326994 697302835 276015611 647495990 923383940 710616124 222764990 190917853 773638427 418200243 353403188 269865242 324511970 120864492 514280839 499088671 313969711 220996357 525499157 84394300 382387347 88860598 148743674 674338346 197939687 92289542 835560212 408920208 584730412 180151437 3754923 516722 983162712 842041120 175867964 140745360 574443069 58060635 105345226 887212644 908777543 808851108 814458587 249771618 259452525 196629907 803851189 380347344 304404626 214903157 502700111 690598949 226322839 253846959 608881964 392463902 812548175 162790780 967455684 361056791 864835857 590005511 586234120 545308563 862933551 913055861 617782104 706281035 784884716 55697205 922504481 164147863 778082905 728409926 314880136 582047700 245903003 603265039 222477784 757004486 293851273 901182619 468271039 961233237 495214231 409287591 480801797 856548579 450205168 11164110 124992484 914696019 330679146 394166205 723678180 396876167 217035271 250191041 310769551 600505588 298589782 453704647 659060968 424152315 849310858 462602322 644977741 569439056 639318171 84070042 227049998 291737486 798272186 350456789 560748831 586658944 887084372 811802470 508788275 721732872 689541272 339021680 626494580 100780921 936869159 31522812 223888860 468311164 895081366 16608012 57420505 735354763 591920586 850486640 686254530 527274336 35680138 767713415 764020193 669504058 714312479 199523110 251438227 508285672 862244600 116386112 649722201 139485122 396885311 466763991 652417489 266377513 269064182 498027222 487532092 7949872 832768043 256022311 152411046 11787362 638957252 305885157 175867221 527871325 244173437 123593164 657437325 310728238 460476518 91860575 192164076 82355386 153064637 456019283 133290877 242935504 746307274 845188625 538598496 594166405 564934637 512885064 142128585 525309594 375304293 834454248 227046227 698041761 293654631 596318718 927248022 119518000 64925349 201222976 400138325 525648788 414970657 648919180 358082879 753459007 519709369 713158250 159307631 255912500 344927931 471248349 937676623 113729200 784871434 911200068 591238639 523502449 160551467 221706377 616618201 882812133 171071781 309756757 256143675 834950671 841122679 635094539 118635217 841497277 84394300 218236719 46971854 6335273 848671237 170053228 695793594 115528446 862541401 572107747 775751765 504986712 421323597 214168721 412046273 952352511 545233249 68644122 11827696 549908981 889593382 947379621 269842069 700727929 268674964 478176900 565938959 994481804 306925667 700072172 709475086 208075589 290505225 299035753 647299379 202189259 496040234 895659812 376530169 647286029 557310095 92590174 562744743 896637957 488386718 919679881 172538441 612781767 955129355 160405693 992246774 253495639 6093173 136888862 339920386 449890380 244575813 175794408 453009370 513827029 215695733 492013559 659000026 889691066 840263758 339491354 627858558 883954787 989177772 423839778 461557403 428165448 811859564 41476294 799105831 816708230 115454852 921187563 464530 734051273 746887355 13821082 917140580 541052082 906075778 767318540 971601540 999127036 448437672 234602461 131727839 270125600 800329249 599970392 436874103 802475423 50351189 745930552 33461922 258564920 770230140 55212079 128631926 43592636 148836651 638401276 2102252 485082489 778327566 112233548 934815620 55663241 326575107 665072720 973247744 433677334 887011017 633439284 784595451 711684099 292687155 430049222 612974205 2780630 752282069 290198494 999230690 556649490 812299753 996799274 404524548 588196260 219253146 849256819 957680639 962559245 239896123 245071149 525759299 176186805 54372876 899608872 36183710 938062378 695754057 218213057 988061475 979449487 213610912 114340944 804990194 605472936 422325885 373273645 438519386 139143032 988032688 959105551 203374702 885387794 348705339 144489336 735363422 736110572 348474478 709307521 449346316 127878937 663797696 881013748 217718209 934871946 506621635 574936051 774635789 850130181 936077088 113248736 891485577 406915395 98572383 315216853 704466226 991625974 556391411 235350212 592753627 218838531 406218321 839457087 67053607 175610045 731143475 643636697 609405483 171244759 128663311 971107235 359563967 230863469 587286820 455036992 660067411 46419389 355940307 388807771 773948397 497359246 29543759 265993977 695830496 282404840 531086418 634753601 814102654 98568159 778073299 976347389 637221387 540117752 180379371 10964635 52546836 919481799 581418710 514289041 899697112 613323680 981301015 856204490 494819118 596560827 15067228 711809870 100392664 597325094 753447772 406273364 98418017 951646647 286792584 239039660 52354808 804272843 99808779 763798734 171071781 427560971 472222878 501329246 978786692 507731386 786096296 290488050 522441173 592522113 756818568 907204943 133110356 231211527 248995858 880448258 123696719 872129748 158571274 893090944 490940016 851001437 194562154 929442943 315676656 270778489 420878675 987916797 967609526 888496249 324482103 769825396 369058407 478177876 723380131 442322083 203167092 236119986 425138925 644026280 889707538 738430236 799489092 221443531 856118619 98514817 548172445 567659168 374132825 35864521 470494547 644905573 125014991 826924683 470257842 816203782 250380455 538939472 904800757 793616828 773244236 970075395 538259723 769853555 38740777 604793246 419737348 801449823 111284117 366849462 900630891 749935993 482311282 294085230 184358950 362647242 867638829 701496558 390370424 287433329 663342684 545968804 400455877 658173106 587939157 361007371 490593836 442681306 575163274 961599182 394028297 400837858 23912582 597060687 342765942 122121320 483509272 952365107 632930595 704600938 477683401 981229408 146678055 963164487 817284584 12090694 946275138 152048915 854924011 831206189 315118630 302814757 530464168 340910885 470351126 963099943 829128187 718472860 1254934 853283741 168010246 916555728 832094410 24200949 317560576 808987416 733423624 68264693 390359210 206255374 48929492 756388499 365771583 504572949 847415489 447492271 979066228 295801781 962371439 298443796 968948360 826956098 64625559 751848065 475913819 283060110 379186854 436521292 128631926 836312643 823016813 842034123 430428987 33095921 571084123 899400558 759385682 447722388 372602297 357829672 170801541 54329911 524200730 675662870 456664309 249908950 419192792 12446456 106324270 654614013 219914738 720894735 869980406 573253121 161945971 243957249 774631517 749807454 722042691 900270263 812095466 882074894 196710440 800092231 837078038 639781244 328559611 836837394 964933467 986148203 876209278 6721674 964903751 290211941 658638365 191876692 170056297 803372417 511719042 444073034 472438628 710922550 710994406 80956133 597066462 228372953 46484581 380493535 961630934 246278029 293874436 733138533 623254320 896634009 36769224 692751521 938306478 221288811 85047910 416106798 779814253 847002507 722674351 221236929 429274796 97703021 764238355 42005221 165327710 726788545 157194308 535691880 480474962 405827778 907296478 86489173 404077303 958873335 624036524 742419540 127695496 954110412 906560264 168257845 143393774 499452821 208604955 943665825 242764204 451614871 352455129 215985175 502173145 421011577 288385412 705278847 933334977 274189123 767368840 929809467 917314470 174434510 756272874 967787493 861021870 722658478 59336434 5507057 664090293 264480979 354147235 997872977 512155938 842751903 96673996 560127264 806665772 69211874 835876520 40274970 87386848 959558902 981292617 536216739 360017410 143393774 833934640 767032029 706492852 91321716 683732301 271117593 759964935 975685667 757444095 250376200 331822817 751319910 303893615 281876733 15414788 101345892 697287924 598001044 666259383 736702447 19327173 579153318 870814763 268936493 757995209 443416424 343872072 182897136 290641800 490130410 629943178 117008820 891781731 815107418 756978905 346056532 284870483 370442380 837565406 220139450 75484369 421602283 578325524 974270779 554781506 149899524 966489788 977002112 348354419 227325820 148029166 958436882 795356416 376543008 138637234 942125842 382108146 566276729 308953061 546072978 61665111 828205227 387773254 837363977 942226755 89542477 617501062 579084043 781663825 541710243 83227347 253220539 883142433 391782599 366254439 277239884 471336156 335645832 185911427 37580480 572221511 628971412 83131423 337445011 86263595 358597078 290869271 488735441 287729178 905451922 165938978 477496386 416530607 54200725 535203566 877894210 800674653 347643728 13542771 830537856 284583360 830372708 630687548 248921293 95998941 655663882 634315381 452593796 584372738 593177487 344849615 678678373 712953773 595292954 981124523 747574388 238973763 205011425 946793159 852838733 719916074 562002769 830527718 276632994 690630889 760487843 750998674 4801696 418461758 75781964 86185665 707769811 170911227 230897434 634228321 7781384 15440831 278307611 281648721 366680559 474793854 71595555 943789083 695202214 833938633 182398698 855617336 332216173 148082224 70984359 809102750 800015741 493759618 355558444 151516622 852017664 486660739 717164065 507995729 129929855 166207231 284298023 575361700 415845475 918997467 169596984 285934404 168185903 94395363 420291927 714250467 513022222 402946978 873686593 758657088 235600816 823080486 188143063 37376230 134725540 889230616 409996597 58920571 365839652 188689379 546968693 622338796 294454716 298600473 556356455 145629710 601016560 736073024 237922128 604540245 487699114 211438050 25125623 580136344 913137992 744200955 323609538 656053189 505847616 777569065 131727839 554137062 403621743 530761665 223466372 124666415 74946052 264217745 211378106 52255811 352842786 430628906 681367327 255002768 378926514 185857426 619720254 226688104 689053421 575485587 536545114 205011552 703757347 28715443 978075269 931552092 735917907 41607547 891175573 116729122 623250400 689425258 718502178 909105567 983856554 638516100 319314757 184307715 874726777 982400781 953355983 599011262 929419790 566352302 854878942 594733522 671327929 382286055 152411714 153171172 359156493 371462426 525689647 52612064 47590409 797380934 586389476 459836141 277229872 336324820 502801895 376799049 799375450 581318141 672669215 42543686 914608222 254487032 700282750 568201647 643275331 136509069 770025357 237793921 9991475 199687852 849190954 835731509 172110052 454615674 191799386 342586506 940953795 855421411 195937988 350100531 663386617 768396509 645096328 897724907 462904462 33892879 881669472 550483359 868143439 668251044 500068417 344025149 873368772 235049133 133423885 173630510 583957287 595646260 916685438 627789962 918872204 421971453 263613893 64241836 43447430 817852204 795924153 702831669 697069274 831403150 565626627 467522759 739290471 293979374 362169759 209119061 899028849 343527525 695224851 937374155 497878519 40138068 406796930 536985690 635898877 851702676 938484815 887844221 300722821 764098945 96123194 567216405 88996838 101096222 490205612 596611259 15356422 875082415 429451491 860607480 915571621 677157030 233871234 368077147 533933674 790221617 610222716 656189629 597527059 221028138 893061877 5418091 954225735 833672616 946045495 109323052 280405304 12977894 56131274 932362960 316146889 419436507 380092662 20239449 571046891 567244818 310323980 221017754 747749774 934221653 218057910 625996876 912639936 958083582 817504944 980460467 672884846 426724770 735226904 252759946 219783839 171416791 125529009 473322842 84722641 728614023 538598496 998937400 81423095 158487190 386975793 523558581 253494658 824586305 840006191 74415802 309284668 916862084 499670138 407284491 957832044 881217752 702865280 562103585 545669866 154430354 614973176 999792326 390837444 543671439 777770425 640589581 980683611 826672253 287774814 412606974 939925051 982041991 489170013 913274865 272599504 134839348 389801136 454960150 588881657 499905935 786362648 138867605 191445005 977558924 418411141 438519386 581395121 351277118 609356116 48935414 950882778 188148056 59680054 843145346 874320792 22442804 944404306 892865029 201879477 493286587 364815774 686741964 24359385 46965357 811347266 894001583 101331651 120972879 264525872 819478750 263825158 557992828 190849094 845738875 10208023 108066578 260014305 696686071 655726132 836721119 645100773 802143479 801500652 367925411 610193469 27005382 180106887 23461244 653885870 682667462 945898855 679351628 253327637 402505865 132910286 623542034 216676792 613448437 108905194 863336419 958347968 928065350 960125832 65217475 832512824 959317929 79269521 404672359 595659504 997464904 95719110 264419501 967513120 680395243 437756038 567177994 30727884 729204136 309589773 753505905 257125816 407916921 409752689 706704743 990835629 666909896 688670651 612079257 639573620 321520339 470326982 617681270 617916351 58084019 388778437 687067999 746731406 535281882 418461758 46330434 1781848 612309576 91927938 167616342 276027114 535952209 128111655 4225152 640778623 441496477 311695397 224756714 971645297 635655377 130981656 160358962 345150061 604386539 407839634 53457681 857866809 846270584 348693460 255188398 582566186 400686673 270825084 822997148 112906416 344499319 362876018 43166159 172679781 540167554 346036261 356890540 361003212 340776133 419007210 217391633 157403494 981476047 524138016 22388710 976586663 551027079 218955095 655663882 591483471 985592857 738298442 115943537 697110003 139703087 12504183 882684559 648388773 654212173 404270600 923766949 693076085 610471936 603867048 671690652 696953930 904423776 785887506 716591527 662109603 394215531 213279589 542107678 844531223 787558008 878840727 709999995 624252651 319894466 514064574 32009330 893135590 173247580 215694600 473950182 738275845 34992610 114381365 790620254 735061499 477153610 750894943 264085127 653082745 770688391 858952370 17812789 873211106 353962581 941647788 180590162 506473808 382985693 633852124 902094098 253017601 401302251 500772670 235402854 497848897 665524410 251565804 252872320 924626312 824522045 612323103 156334876 472793841 917051275 981194102 236866208 111926436 179732934 377709493 217650367 703976108 999713451 866086121 780542936 342140794 475159636 677433029 379063712 923346722 754606044 579198580 97994551 27852664 547425010 254233441 642193608 778430777 114119118 160898959 686054066 303771990 824649286 479361167 112949173 557621275 664102873 210625820 475275338 61396755 352694423 179718097 84213670 440389047 872023865 991948741 205766826 689425258 314105426 653082745 484336686 976358684 894424575 408500717 601992903 992902216 477948690 440433592 82653987 692362447 569863246 457033413 204063501 880698761 865747153 591067408 581900262 10822802 17701083 704667535 15577403 847564246 444245694 239584767 360060106 467148724 154639215 534339215 802009679 344023376 702309041 661274155 192197392 452834713 409049637 529640530 227403847 312490971 655234572 986577703 484572307 115635434 93565025 192530042 964728979 416627969 486386220 878541586 43470831 345589749 516233180 922640679 631544997 339059112 556430174 807664005 641213956 42301286 395353952 585237809 334460463 805516284 538719122 790699854 237554794 182303524 129956388 304558161 813573535 14205963 878541471 19535158 459318220 952035712 276879895 331179049 935556539 849535206 608511173 249343390 747126493 239844125 105766713 53368556 879926704 649154667 249351352 834456872 113729200 739751457 513100460 36114350 357327175 40526573 527420069 825223995 166901825 480152410 699265287 918467290 398309401 851621859 66887902 578672808 860971166 196771486 155238263 864474629 943654446 441171344 190399946 53334019 883392520 433768052 678468759 110753705 221439402 743171573 649467429 543749272 909877847 756419626 667521428 172985536 717411168 384566749 703802984 904219030 320440529 250409460 274548341 992222321 148772146 787490054 358861911 832426659 546305792 878197827 718991577 210238380 505703336 905321892 195749741 566053919 953441547 444728381 510329521 697971781 482334139 668542634 49929106 520997858 891852469 801094942 183604844 330080498 492008984 57762911 835481152 33269028 598467379 613407900 456319836 753748493 548076142 627708210 413228913 991575620 69031320 599097265 196797950 443841538 774011855 396387924 902576674 367663030 803004695 506245908 507111258 535338170 801391100 989191108 381511948 204352332 639663860 684807884 22221058 878769269 359556664 398679024 678363659 128294873 591311394 18738803 785275261 42460440 905407204 290359886 199408556 972209662 946702706 104033208 250176841 9093174 319560148 163942748 781154958 791110129 765449059 508672636 523523212 425055699 134266283 254759814 719259990 69481982 677004148 126187199 895780349 970411253 855671146 602559609 329425114 523523212 985939344 411444609 836194684 165959139 639503290 989500295 546510270 508672636 556024248 337165880 663657534 23676886 891198657 672072178 827094737 645409562 22794247 61922288 977625555 187529372 76825046 374901626 431757388 191883075 894680004 938943632 63673183 742474060 437557014 114534990 418081569 174090428 68127321 7704234 313444036 416047529 58920571 561881399 354823239 718598884 662770412 172078974 788478806 424734833 513468972 346389484 438502836 134208044 986715224 94658714 188470467 321388471 736028109 859503809 983500966 433677334 169864659 992449822 665338182 754723691 531715501 483716802 487016763 974709740 701867738 614425111 505087889 904778829 497878519 531168368 645100773 88102038 878749659 8795152 474324498 648584537 927867989 297938109 113393311 405174263 850020552 164808495 979711959 450547878 598121808 948612067 247486919 794909053 530178441 428132504 331872617 365902580 59228326 874486343 789978527 462647113 636769338 786841695 435107968 708706927 515911030 900178730 938343618 767989972 968957743 271278959 255387717 221354183 840689093 294161635 14910385 650924099 251433896 51968918 844187802 579231794 328261504 948326331 346193590 3067414 128337891 790655081 190084983 795469605 303959847 662929819 30615553 161945971 261379266 349599396 305539377 638957252 281732169 388003716 604003682 834346501 816557486 782850272 750760376 840268527 474881252 355896057 377252953 907953757 578024040 725466375 685641327 216253909 88041455 890331994 323106961 215956417 776516248 37013096 697035755 71350163 349191873 251198489 547181536 413051114 476735807 696546154 268936493 353779146 837271109 433061050 853260708 843462061 334815263 771435420 163559127 202760261 334208493 634703223 297080968 601023461 182000369 155508613 63877291 903810794 113611494 155200270 706177137 264239139 401947609 300297906 523777049 572498978 667407624 22478378 973727701 315439426 983360019 18225150 755495966 849827224 985133943 247006725 628821411 986623245 636223255 817276037 347175496 768779754 267255287 893205699 553506185 999795646 570896334 191941249 575490717 467911713 61817162 809323841 788564601 453408214 37230811 977566468 670320077 612323103 884516950 224591472 624691236 232214895 624506047 453474084 297971405 946065475 482787831 233884354 598228441 798762385 624537817 478391284 807010415 650891183 436335694 123038089 885163136 371143487 412214935 831906175 851946478 287398348 581661856 921981404 501024960 453408214 640051619 437846099 840251163 430558822 75791119 623766501 3809434 679707825 55623689 132705125 476126358 986275575 318406135 136843159 283178083 423829764 214409445 466720673 343745301 103511071 41661975 619587370 181231457 871176111 290778128 278831128 3049437 62496867 857560850 290082626 253630098 515473518 949618057 634409611 465040280 741185937 103464499 592482284 731251879 371170909 799231093 155884494 764992791 243707376 537771240 852868472 631472006 835670755 16995757 625868353 170003694 391458631 67298641 877507917 261277919 427437066 946878334 984698557 565998608 694670644 646460803 321280081 466760419 656671289 316709834 802032934 964433571 574343499 603033317 269663287 82031929 613209034 668766200 73827500 8781358 37013096 110800159 888773541 720199442 33073816 342562156 465285715 327887031 504025724 722220000 986756355 155088902 155311678 8357637 326164549 502629775 299073876 127079436 22139938 289346885 93154126 61883170 79073460 341426020 364499862 85389553 811485398 395962692 607414542 293293381 905129344 461643516 732288882 19817206 798322194 438596613 129959600 843013003 377096786 835237100 518471460 224265444 574074356 436248454 695063509 50020679 901955929 675462375 903843822 392443299 157351974 878769269 481073502 120940527 931093178 797379941 29824445 501129380 582217808 645223652 527402884 863584771 210805484 748889470 118947923 916680848 285542035 69189147 46152738 834175084 842485938 783443893 354459606 441171344 550458756 51269483 899673058 387532529 544573726 196728168 639807270 313045020 833533231 169962775 996799274 302320264 615563490 45857861 453070318 181104522 54821093 762000233 588381017 125475399 148444690 235938735 136487768 52648065 57025039 940076486 498178852 228440453 106771202 589406644 900652992 720109987 585804509 83797940 205036321 149899524 506529772 543755171 219694324 229856163 706010478 23930691 648214195 385721058 612954778 43650922 464180112 70855489 395624832 551798282 793274646 570539328 406129909 338427143 278453240 970464700 483860750 425688404 885357520 197667870 388150123 466486310 447953515 19181569 565358713 60754284 290701010 839738403 894993960 826976981 745085407 100375245 721808123 287451642 707188698 706454587 674067012 584815279 423295944 606994948 884287224 943699337 899278077 899391651 896268864 890537899 260123067 762910555 213690579 588242831 749072145 634927289 321638913 453436340 631119167 686066721 806407983 361060490 914197528 391067853 369485920 215761822 208238099 410893056 572056537 568231278 16365389 778215589 243881770 765508471 465642846 139317181 815183844 185462221 643745777 592978706 72028145 554626101 716006173 823167828 372678250 295974196 659292 275246171 717738157 538352450 368691268 468738965 684496880 554975612 717112546 256244299 976834440 884898495 593321638 982400781 109733906 809077527 422491876 431938349 852165167 312549645 165951372 67129663 205096135 254635292 3957864 138113469 733615879 97335431 350378046 65399726 799105239 624036524 936716091 374396498 379167721 529967596 507187718 412749042 516518568 187791614 648077125 999650939 147935795 513841742 434795741 370442380 214448633 375417904 337751259 220551660 758555708 996423643 295663556 129753328 880698011 176186805 990547003 735459462 747724102 851922915 60722488 72168450 401218193 786685942 350356748 276375081 927066412 794440597 492562594 276327674 173473312 29473041 542979594 226532408 282872263 784613573 40818819 247006725 756641620 184403596 221172553 357970484 31915079 142171470 914483824 625770288 811553633 656430725 603225081 801584059 421719221 467964524 648096466 224206547 247257105 887727105 240444133 392668920 352059234 377752547 898956755 28560266 893557052 38696415 223448419 479076420 775067779 108772446 541676396 687717369 387843529 234599430 941282033 257839498 724860392 61665111 548076142 679999580 213904309 270778489 929574132 220250907 87678733 166192429 884286534 871972440 324040368 678120324 646279897 502980990 62530056 923102513 726944464 356967343 653692765 996896684 699696318 761555924 504526016 764463501 622322475 397795058 176170771 177604937 879148809 747489078 596154471 225980901 390948588 965754539 371515258 311514486 952449897 801059129 988258509 892274279 686707300 998720475 941910996 796062167 112906416 618635245 800282143 407279684 996258095 263718400 313623825 415375727 332785527 743552725 544400569 184757945 82132888 644362157 595965190 248750009 63023042 281496340 855796275 410632198 429711646 97165211 25789821 788215164 902576674 372690864 773363134 684670667 468352097 856016141 509575652 516523614 86181077 612114296 366386118 697386577 242264112 838295268 753553952 426370697 620301163 588464949 70417184 860072434 176813396 315407983 365105891 699799367 210967611 655407682 978556109 178730573 302026781 704877648 934126945 973061345 91328556 5417428 465285715 705796331 418352459 20067821 183843905 755676571 251021760 150231418 692848655 981061931 882578152 164775138 465064798 891140155 492490516 413765683 957350856 241303972 347872572 499827126 679142743 305271894 764020985 915269330 992647715 240340862 89946275 517630370 877888584 63589511 214348818 56082182 260014305 510023353 473742232 387384908 403652179 631457756 126805486 406584062 649576187 77944038 968524580 258372683 89726428 513013316 81877989 232874377 85018195 726745293 429390632 435307694 908359539 773204258 553949485 241733836 572740568 297859589 471242427 431771092 101894792 194548840 616123816 746417328 395112849 726537452 216179180 460191553 821693843 722334191 333128717 9411172 312593128 721530708 335496212 660065512 773036020 684401341 838470870 436579669 549681752 113441655 393820794 133723704 719471169 142133383 973745730 801555153 864727124 120777506 184278643 620581581 780699351 288943373 208220641 750752520 825623849 604716283 549387054 646827012 850901151 352141513 178669497 461788002 131994655 402671073 978607200 815424047 63413855 338806750 27539092 159957850 648812004 306691234 909604416 860030415 540985872 833307098 211022336 600639182 725932473 830603850 337779017 906219691 483843802 454767047 868125422 618345254 770799584 217509254 678856601 324765038 832568017 77445479 356583369 510689574 683177753 864657872 690619699 977533450 890309261 789487226 501453628 921187563 255533904 447675843 188328123 344162292 995495696 695137784 552243461 875437381 93802994 219640386 760071593 716417146 583230018 434738321 33323657 825341032 899746634 312025413 919566197 977901482 505451108 807782674 846210692 803851189 973443829 771311508 353836227 219409888 402288191 723038409 453952777 28862447 819982723 516523614 997227047 505334101 942357660 902094098 417597313 494819118 814193776 389229810 638838427 419463622 559162262 618233053 186951265 21094694 552472718 930270564 161869549 753794226 418474121 776873328 362745006 985543721 917288276 319950157 85381576 889993260 46677140 922501045 825167355 713528058 268816266 50911398 747961801 845519228 638443741 686151480 426061125 275896984 445504962 189044814 525935626 481143659 121976564 447855375 736073024 502173145 646389723 981399481 624255427 237795586 54349057 629553637 509677913 757643796 440760536 603151225 613371863 933418620 825350045 477671740 872270155 537421082 396515146 849862254 570788363 503149312 638513280 789206327 554932511 375897744 123696719 854924011 181855016 691637299 654212173 911735889 735060142 721888432 135843792 602681970 799066336 538687445 527624577 765357480 995154336 762676720 817110542 146013940 500195966 254215502 5201755 218213057 818019018 927462405 880962477 252330694 729086054 259544265 631080110 276923803 64375148 181915386 957213761 745084410 780889095 334597096 786849070 654775775 25311689 647162770 900551614 224268701 35065079 255471312 511504086 263979472 962095871 612516110 122344762 384225490 156688778 607678423 795268273 790590848 747724447 823555271 38045961 810437188 503514968 704569417 776030606 996411347 949925035 747081550 194790778 991476975 568601579 967955405 70133397 513038134 159947363 486026498 471208553 944182845 347753073 146220801 497042327 512993788 968224510 153895166 581703244 580558038 907670156 559059774 311387380 176836867 820817100 394215531 461300325 641351796 74167671 626739022 999642082 236332893 371856152 886159598 625410757 74911316 874826754 556742693 145714203 480954134 899734640 133614854 948227407 492913461 643616678 472827824 995527828 36548074 786263028 581740268 888809403 922423652 840872210 920626590 715467084 605812413 418114617 42925771 313685500 952191419 957033645 382419545 182000369 108666773 192904350 295259722 924137733 266077922 198966580 662953925 290872432 260412196 349918083 614292947 416564798 134327780 600841466 936141753 335048154 457415657 824894213 921684921 274798942 582726471 433866285 648236614 861960483 696460212 788134654 985841055 171700818 921635097 168424223 799504486 407168849 275406619 77380549 219420887 570627978 894717848 78808539 667766934 538183674 101669619 906708158 995423595 58575441 543856058 116531671 848949110 270339535 664268802 652577136 765011200 640429845 582204065 189292908 346917260 732570260 982384345 734142806 411942840 522484871 911734412 182555308 242241378 18246632 207473622 445484864 126487876 271879099 201923874 37896163 953689971 151264264 915389312 528577212 679999580 958368282 195081452 58435601 539267153 859629103 211103216 624969668 867640858 756251816 286660550 140321573 34140384 214642010 569575118 655856360 10875165 449477130 176486472 47648773 116381221 406174822 247980267 103958323 70855489 186256523 979365379 339376261 115630002 681942525 149142877 67499617 813664723 593432507 815996620 744407370 122441136 544952637 948915976 426028142 398205910 652881151 299215852 326440565 32680458 336028547 144261841 525309594 525422160 347904478 613829922 632163890 870000297 460104720 793543054 361060490 12850503 139385388 581937778 291600274 313453896 308979188 932226843 403652179 619069281 195365309 386207852 37237342 482626967 568947655 84807176 833401245 395741257 511958008 667891343 815308344 187926209 454020341 169895539 674215981 326406924 249597121 860518473 485835530 598743377 201670342 935832735 97010065 876375929 516637025 381001871 428036118 273515110 941433439 677721709 824348808 10771382 534934622 126348993 525049054 200539062 339714301 533220634 405591173 954992168 146746190 877598865 789826231 336670445 234836352 387109666 515650061 291160241 46728527 990915863 919996743 542078103 178703182 655799722 489208330 637223873 776870848 717326559 71149931 80947444 963888204 914244968 174684212 974498210 86485457 735459462 761068166 696876975 596563931 447310226 743842266 118450002 15585151 752373775 584072197 47074757 439844957 357327175 318522365 448199661 218715819 229629356 844673619 152165138 819781934 198445868 601253940 247143693 78759567 534119198 549375509 735951486 7965828 941975105 468335329 508171584 937096203 564605874 941757939 432069699 691706179 868201260 939886971 133420421 516901934 172714393 452218746 587420748 630717440 467148724 669252312 312682030 576971686 734249411 534412647 79881059 852963118 654748062 854160718 447210678 9072990 381216109 151187149 246748835 789910161 923850111 130762419 965275203 792560107 965706451 593626462 484607284 811323594 84626507 475772364 650644570 518946288 861821903 647124453 648494098 697140539 191275159 354282768 642405542 974867188 466687514 231288608 551248930 302612725 494564889 989555539 235671153 831091613 867621071 420949977 240184110 457049554 73809341 791731092 766919913 11888608 622549477 817524840 605748378 41942967 712342206 903628779 646389723 804665585 753217053 638260125 870841717 392754028 884006151 606871951 653830482 215731283 61683899 524138016 93112500 5903848 456188841 529473207 57172264 490171161 986584897 681324539 969323094 986749982 936802642 60599702 468251904 930791997 554988790 798211557 184196418 9025830 254249799 893584222 901446652 428157620 421429379 695330374 890137676 816791140 491957414 727122934 732526396 688222989 28712809 634647116 867776739 983157592 835338665 203784826 812671728 888773541 194384334 191324827 478763668 733221944 418178032 77002573 256600825 688864657 625151850 632259153 733178277 884310510 595069669 113392168 960158065 634723148 199370261 11787362 217030675 663933287 189733464 525376372 882194695 183865602 920082404 907429321 536985690 140256564 107834581 473245728 82327101 624092026 405190937 167034720 667290936 387548967 726971808 532537748 187537926 54861230 117905345 95061056 457321404 267664293 83883923 295579295 268901299 959379985 732018793 215444204 200953220 148114222 602307817 502108157 226844351 966492177 835202069 131340012 647381985 859440854 506011001 37021221 850070931 624168385 376499139 870928348 385175458 968071895 518180116 973248775 449821563 499716647 67048698 380632366 943556656 169492358 636321784 237669934 646069534 221256543 128942566 407925763 878576960 493931990 495799521 246064040 502975880 808393221 470760682 864981549 221774406 484631493 557920546 305759890 866818702 32351249 475242014 791589670 50498312 261729447 429558627 858646575 516418118 183558446 569162949 288117170 510669974 411111721 419902829 178275603 290694139 453824076 896491551 331557426 486386582 574666148 305790760 731323102 795924153 860637860 699136514 906329600 420821838 515102394 991887002 268066483 330115200 304408023 240240911 668766200 240294095 280354429 468156446 67636715 843059577 347649069 359559372 447894237 831859539 910834513 395343594 677923310 192156671 48314170 375339188 42301286 458087564 718324561 550069874 576722809 12106200 656568494 422781819 260514578 937690070 744779252 59266158 105874930 493158466 814102654 874658337 534785526 294380452 930927189 961737857 593593113 261818429 983386741 16742439 257409981 286064108 201657631 304015923 219311816 582396440 975312463 697725192 440200825 358889351 912862543 524819854 92523942 228320224 581638640 142137979 7653390 485710078 995354946 336705193 353073304 231392232 740859355 36135699 751055288 716878576 412837285 506366963 195491471 945812174 608877984 530920825 577685865 554827289 617497849 850573545 955443995 811575432 84444257 282575386 111579412 288915931 838066927 803303473 866477207 242183680 662694641 553135395 289283609 37197337 718241508 369357014 759414559 836069017 161111867 709717805 588180232 843578469 721770709 112816710 400258164 933956522 861493626 356199298 658385670 265085152 986776193 686676041 763298986 620977762 853817865 255958219 483715731 439866785 807842948 59170281 731394902 674365720 435893627 121533226 873253632 950260917 383667214 318269524 521137566 528229901 450824059 268278222 960407354 305457322 820271495 572956627 98128067 727299479 289989618 610190656 933310092 856410697 559065265 744083833 323350049 285945721 507258332 120435531 477610873 648357383 14606977 808791057 400593045 456407185 953276662 634321294 720502260 512164429 54372876 908359539 913268815 469777793 569000215 523787291 340809360 345049093 239933136 57159159 640451473 67856868 840260401 520833251 724993047 833534113 837209560 848944327 437192252 366477553 207547527 316318976 744078622 95338084 428799414 148330769 790075917 780002095 397228702 902457865 614469529 134178211 145816519 577076624 681361365 706835847 711709849 547567838 214618164 12945851 971999568 323056168 639283740 939883877 447060199 198877116 353479795 580143627 576947128 518300952 882364168 671599169 576965935 22711592 74698029 968224510 738177603 747832228 490756467 13165098 492027046 445094348 141904406 554662182 773807658 409049637 664345064 279693814 652043667 70133397 366677321 387158053 929843773 958040349 373944120 272783565 196894456 901228289 18456045 992601325 850670644 126343800 453537269 759977968 703220110 995816851 920905776 569005238 716212265 9411172 6689400 557732431 923402756 536475974 268516045 428048174 775164534 349348633 761415710 312237419 320829 88436000 32249152 942263518 775628974 712240341 864804135 931856446 852322707 161503820 216029998 824090732 588038588 484849314 867567386 980971910 370608050 96511304 120646680 368646682 864904576 756333112 602355267 340125945 207818575 734975970 790096266 187182720 339722388 925534331 607137343 133100863 371198966 72718066 631733496 416170388 426584670 972403003 133688863 689590305 909707746 73076530 382520075 197959963 834806900 615100410 722968835 406894336 204388469 618316292 89659229 316746752 223230999 865488612 189569090 720226936 621982180 301141022 142288187 484152338 359325993 785816009 555685501 26234978 870805609 253226385 538179449 170198391 377290828 913003103 975558941 584454260 802337284 931030743 824053837 666280816 570430846 719010096 969719548 196322321 257409981 877599446 590112847 363988208 803679437 888774811 392179220 637230598 816575626 813203475 295268806 321840653 292487110 905080899 178205291 703961857 153064637 577481782 773449284 761675247 570518455 840673854 359856603 586330929 837036827 209374864 254539137 710467738 62131585 738908452 914941650 431310386 229545106 727578616 901303501 100375245 389549287 32250026 149916206 219311816 822864550 252024848 832977213 497832935 549706220 594217431 820512383 164957660 312550961 341296880 714637259 256835550 526018513 408282529 542820378 693848163 506529772 852154543 168248703 479746526 976520118 625545148 311474186 514064574 861493626 597585689 33481810 147087901 974175019 979482919 970710410 403117433 607432663 753981291 714729312 294621961 161258232 787750080 784235143 197043966 934293856 908587498 99796422 556748791 36548074 142660748 194372412 444548506 943914424 700907115 670374085 615104297 567218081 119484909 346626117 547290971 12012431 164647951 15692885 641700100 516365274 377472490 820896508 969984538 170826027 696672743 223239860 802350620 430073669 748612624 570801746 46575980 866546580 123583781 52489909 651883219 807336789 238781105 819109642 780635507 634542863 147277974 936605702 378483335 905500707 115294084 397756443 128851327 794916511 447109231 923567003 972322400 184937267 903185696 537123682 281042124 595837924 912913457 337056302 460191553 466823660 706561196 215524935 571440910 93346315 783444534 226486546 310196882 155857055 514206645 17677089 90726518 909454126 71084512 937937486 743764848 452479551 773051535 14248371 786927529 651715276 139429440 196774962 460972198 898132862 399375973 59350452 996130465 655859476 976346622 112567316 340809360 975447651 687491533 10721993 644357889 16665364 30248269 506639815 549708058 941615022 317048426 13833660 362152752 711479554 996895630 940994206 527347289 4209432 166813152 442541833 66228519 752713888 88242550 510773213 395674203 7224242 669856668 749867657 878673219 931254945 440450433 277077673 725170524 977058683 710681174 415842111 840480677 599197510 482479856 847017509 655935245 557184306 822371295 860455776 793679935 339562242 746246359 214894532 351381727 763666712 545818823 902583443 478419718 556958848 942456334 632279323 688662020 438325356 447936740 885387794 226393103 900005099 538576319 563247081 662486541 471592293 808136707 881217752 115432542 572862109 57426123 421865050 966526482 685746244 351500419 840480677 162419196 32794362 968663706 379242656 853283741 112349485 670685498 466687514 904839303 405467707 877051492 233086494 539899056 763432012 782344830 986152789 460984626 729033252 895958903 745371602 658545817 867484185 460244579 160972036 533652273 764660683 18775423 81054744 903544312 205397154 358148825 300118496 295857615 112647569 312410632 354591161 403254540 831680136 709601414 251086766 15301064 207726761 227221062 693327713 467675540 182238177 182065188 940906294 645223652 515933842 284426044 351494681 821191943 542626017 570307066 474103850 727839440 467719534 809961371 895659735 780901725 336461794 468962039 191599581 629727275 743788544 724461693 705694842 508754789 595015750 170677134 992930620 620469246 649192565 631053287 295627135 976932284 372784591 115137107 487971687 10813211 202816344 923585190 531715501 342655033 91829204 467504996 282097928 656430725 325809761 117887610 116790763 700141431 15941726 647563844 524536994 137672221 213279589 802544980 315216254 53969829 756069878 689877512 370603667 204698896 946674304 288862445 392522622 967188236 634235608 530455807 785705486 173110636 559304977 335144165 908406963 781011424 405473578 430847206 907909393 552418138 307390729 866894904 592726318 923287970 978506378 196744170 288418480 402256574 448080498 185199107 99631604 293623323 285693980 149208522 883601993 984150925 275704355 975876536 193013064 47794590 91720940 703705034 550227644 624080194 930561135 966543675 174585513 54337589 49876779 351495240 85453334 164490893 561192270 494057014 74164729 69529723 908880874 302522782 395141873 329590826 263153386 48000463 850754363 822719887 60855804 906219691 756547488 195113601 873650427 633139236 370541275 268025080 551224431 887081595 214832395 492519887 848052347 65062530 669847315 307388782 174434510 309842061 927681006 914432730 826085263 435613828 89599816 332233035 888003724 135713923 180721601 395414032 628881462 615712004 415036907 37644032 741099594 967997867 85337960 960935342 829691179 138818855 871908071 95012628 132196848 621952809 332254178 16307342 865819364 946869452 149272224 201560861 111569538 977483877 654087322 675617165 539381548 804238378 434710295 866782888 17518573 923072961 527674490 897724907 738999413 564934637 195599938 562224810 736993354 116403255 49918211 501453628 756362539 202821625 812514909 788134654 814113621 113252092 669436283 621014244 244064091 514175201 599893651 982692113 359520606 126187199 135043282 807680139 604415518 729404647 287627038 816200540 528341109 109251199 253754112 299189081 413588012 317581191 546044874 82042285 112682217 667633039 153853418 764475422 935715737 80163971 622825947 313633656 948848205 837253660 833156848 125062612 36979408 586128869 557378681 705146474 535914530 798893290 943551170 931786143 78148414 94950190 824871107 915342134 557704565 992474219 80012334 607424311 908202754 950014236 514891406 113233842 871258966 375304293 382427619 350374491 233317734 289404851 72616049 102001284 462459310 974847198 346963422 61283207 977324876 636765014 22106360 288799904 152428262 269681189 210950290 183415936 182616964 35308415 494673029 732752977 427125499 273959424 713098975 510662581 475041650 317271012 840076989 235815433 101115831 666397475 921951612 829902677 965248930 450303741 740043308 387912591 939964346 46398859 853834180 959118883 686724115 374884092 262177022 703707266 757217143 360044688 788385191 696585018 459564900 860059507 987851548 948266364 404782176 198947620 321652769 973745730 923377852 68621910 513944879 162188642 670826640 440433592 384478296 476053214 288726734 70824585 414500895 989506480 817117407 436247825 426054171 776997206 803273076 793611126 827094737 467789238 370531506 554989782 221064387 866038580 510718688 758657088 652063551 344900562 680421514 895514974 518933761 51737793 992764891 953899478 89552721 66675609 317072875 881715008 594078141 130672429 525961251 221299154 63713934 996110192 51424565 504650825 105191664 778929699 323824327 29476928 338245433 679241198 801133837 374523737 946203609 258644783 968585304 799310516 743840807 712551358 939891008 695793594 387104676 743377971 998333462 508833806 360795572 706749648 738706110 531858678 599464890 968226291 889916582 978075500 198398264 72028145 514927824 27101473 887134680 41578341 888626236 432212863 673250286 864371443 467482262 526714938 212390686 581662626 591144733 382886887 720643560 268116690 981581851 796880516 819075581 218380889 840019625 771304665 130110235 267888906 983245157 598491508 78039339 609118666 640709479 785097755 898297620 187516853 594867663 22508008 255743744 526201166 817804927 623573655 157891966 297211496 237471767 474107165 265670887 142132597 4632946 143588500 688676439 846968963 518920155 490567893 73555850 129845228 969920160 765776052 621730355 361074528 400684321 978385206 925488391 746222693 362771113 710780202 888834971 183750087 586578996 846325731 440558330 901396467 602232566 218335334 639454795 110373499 591638658 440935860 642233685 208395973 227283020 443002956 449648624 356710186 939256754 353654667 265659705 887539539 558441668 530220302 505341823 474322824 442076231 1227944 209814189 237548914 358472994 333291190 914142078 977351825 499955016 910585129 405713551 492625447 18792852 17281674 458502881 437559170 379798742 8148345 525533883 920309549 971887472 773468095 355762898 420273588 210622973 73915682 118539444 137617530 297897077 600136289 863269214 807310991 750048796 249383862 123483319 47358231 986341980 89696810 253220539 898776212 413574368 114366653 538008247 389269582 206255374 54264163 904413270 759476934 881207340 329405749 498151646 574792188 673238526 247788705 241881054 169760920 916752822 700648542 712893266 941669403 248083176 159044264 995020290 663538952 134266283 639285012 86687451 742921110 217655539 916019234 732281728 716010225 190874056 138250460 270406529 125341773 166026431 727947738 435561305 353651804 154369266 348853920 499452821 224140025 377774829 778291025 39495632 77944038 240089320 874228539 395931602 829852289 492611162 935505118 923192744 383986357 512011091 762541755 646642498 175289506 954306349 261209655 867025049 851095318 535770320 659521611 373185949 850322470 991616641 242634884 184889282 355172771 4032417 903992960 700187320 659675478 439490808 220645842 408115151 805914889 776516248 367981003 275617307 39032239 626531062 592625254 348360630 859503809 563707709 104821346 33818685 826815243 999139973 240247410 216654616 310121685 37193672 858440906 737268388 125454088 743963974 534067544 977173189 829168908 302473165 657234588 698025664 829513366 566972891 732541734 373995660 288783532 988857758 108304575 619269981 334122769 385911769 24261434 46507299 506386247 425688404 892750420 741615054 281650987 388431335 54821093 189292908 369334143 19640065 245083512 260137625 646642498 623466220 683288005 361482650 486801413 802199807 19633424 921392590 743969001 28532308 765286169 741130423 460478672 306089319 393067443 491062846 626678154 615934346 439649017 478926314 845927596 607062665 191688650 919114049 547595026 475451754 365827022 497328977 784973487 672270047 708766415 711728474 280276554 369785381 991345540 994743841 572221511 85347089 119575739 872501409 180289330 451492857 655314495 395666575 396760451 850876567 842742916 193971724 492416979 763480906 207033595 705821240 59778360 15096513 345132950 67494123 447026694 738457372 886069393 683979881 823061553 815296268 671195693 213785828 680675307 235364313 766977895 136083372 801943903 232615593 153420904 449218449 346192980 454994984 509858336 436335694 474560439 820512383 744894779 391970033 631517133 83073931 127910939 97795792 726447100 490681963 213301712 612390473 933212196 513513384 790598535 957803804 440450433 307264012 342523815 151292972 297652439 664194879 418257745 623705472 21502313 260434438 621697474 725030214 785917455 930440569 281270184 434300947 447411257 232889948 827982008 962371439 336077001 550515817 675464581 758953736 621792211 429361932 764876549 588616140 665420271 380092662 450658793 216329877 584269916 256747868 111046836 375770066 852154543 536419454 189999183 179943206 199126870 64104057 600492841 715391760 860810708 100545807 794903713 484612165 641190453 327297257 768927553 148557852 38979173 104180166 112561183 290661871 338040955 534387119 768873521 644026678 200424369 327356320 4666078 319690374 336254020 94074112 711661502 43596730 197532882 237188963 661307109 404432436 977233312 102759608 703351453 114657537 708167075 152834543 438776950 76189106 76820014 470821773 709934263 634851344 167230173 291650752 632734271 348553129 608394505 596302936 138682763 794071548 219041875 238388138 807351269 501515844 648068330 982622895 446643414 564109705 331938890 876943595 760759457 573127116 474685074 892212189 332501657 380879665 195781982 41304453 763536290 465496532 117447266 54116354 384809554 682218922 973012064 790007907 566685884 769134893 351128264 357240648 933813348 895745910 481077671 945130015 377929205 749646632 714463952 170830931 469330194 304300083 365647728 870522680 996092998 526703710 364783964 469011555 590012637 383254324 381666514 613714634 892956103 558578597 793517391 260029949 700660991 763004267 983764931 324783678 277592311 43316418 956371770 814613018 949315319 45164804 261485115 458554510 742397234 602183471 73555850 77263211 136561159 570620160 292617909 674635974 707698357 18775423 495917816 757806559 13201657 636214843 934590675 567842425 971126339 487976546 348095740 90757160 773432232 980579499 747735613 692918775 759946097 703862679 626706213 949837294 884708295 720581291 28754597 61350138 548208225 497473290 387809363 540635079 889935119 642650454 84910682 999791872 65757086 141237654 639310843 341366092 677563760 886214484 844675741 979004394 886739364 276839870 976967596 310098037 787537595 98140845 304718347 459415463 965179516 61650544 50838371 403925836 48837905 510232027 742831937 183206833 596816392 950546791 745869869 130859660 279791701 849037455 659972461 410159521 980309784 775040496 627273346 72000782 375339188 824799919 787335687 383794434 554929376 136342439 316460373 250105423 977156006 725444556 922378546 527890229 236540966 2394590 60449576 805228232 688676439 960986931 780305556 12106200 186069821 796193616 364296793 764782109 521340057 463624899 688106322 144827624 789422501 79305100 889593382 821185538 5450777 913396407 260915333 360270167 794769027 462001014 172240118 225055188 489017459 393387481 274140001 735842582 261558459 776533799 826124069 930802479 327738178 456378505 923931190 304626182 477018536 585957199 256097238 887538618 450649780 956284755 780570248 555826582 248303883 150710443 368788814 304701623 516524126 397056708 404061160 382162203 115098796 256928220 454191596 256253693 947662468 394557919 732694538 815606225 75132282 362152752 817861031 983912615 753748493 36618563 312370613 183065293 573170466 529793814 167716069 430814340 202128107 348551477 667254690 849281663 681637724 762838839 112812814 251606070 725747284 644139813 411203949 94536863 880187381 783246215 534973335 602149520 683627157 351934170 486749262 2033081 788108868 695126625 197237728 87539085 78143124 283785705 327218574 881986788 408920208 186146733 30859606 333712424 494906786 717700860 689109404 275704355 728768689 388010767 123588657 930327826 800745859 501765753 79903363 949190215 765653165 371409257 174276289 261139547 153420904 664098673 749943130 764295550 870875201 208020868 326553317 584975047 386873012 525753958 588295662 568873113 394045251 487978779 276364326 746339512 935619340 906912387 450281715 999029426 337039027 50911398 842733376 526968135 747872978 263905790 71027456 118731780 351011414 719332195 705578119 368514574 319440510 454593272 355018371 130103942 600164751 42196091 470909610 80216009 439009155 525499157 181758619 432522847 760458020 976564065 901681234 111711771 169830252 749939944 625410757 350573544 772883206 836892773 584119436 23505853 266114250 408154023 443400729 158487190 367282750 474726236 974677022 344541021 545495658 338823766 439078376 442185594 440200825 175156283 764723617 867310533 359527666 494121156 617182080 160011999 130009910 343359932 217091836 724452659 903095812 837236862 405134948 623237741 510592643 673172317 428033368 846073065 607378926 474388591 43610050 949926291 530746966 126730891 516018840 221194648 46341345 679779415 212065604 23194870 86316314 379412933 537630214 666528587 449306928 54542980 26547465 43502419 6058607 233692585 81482833 472859211 282519699 53881131 803995148 72332546 358732615 336446003 625617570 677917878 382286055 899526985 608634775 245561288 401123928 839381787 929336239 372784591 728551886 918175166 962050162 609118666 552458330 639283740 674041685 176488805 274074732 132073990 650872824 649154667 256512334 702448641 624355031 28516492 111136878 225869577 512177703 557518617 915522230 188170215 60167109 622036801 879523858 951449840 419350315 575835165 438762567 539173989 903023242 600963089 50618279 784084309 689711514 987113175 159413284 135602446 156729499 484014542 949928045 818550130 284778239 485206854 984300487 171530593 999469301 229830447 557350254 42573864 917811414 708458989 516220725 657112042 663462790 38860976 378519087 954263239 445592033 253093953 19283711 358155838 574773033 10535336 901084108 51134880 579513229 49274559 549577988 481135588 39747983 639503290 242124632 762060791 926186389 876181470 993563504 141954585 283960448 569412851 196047796 918043529 87368824 6826178 841495268 596246031 703169187 513434802 349565046 817957155 967912980 697118948 588064451 981923730 953649730 613302028 853269883 592522113 413639361 813557152 522178640 928379666 504686175 618061979 494962421 310230816 557578609 318021492 84031902 613440387 132458987 391482162 743202592 487577689 760150783 485397954 572146171 346453079 5708114 859629103 709540956 30744577 602564043 225991375 402682157 808814983 276948902 631860005 994951502 743843630 879374829 151837471 597486558 638649396 899745919 764002201 11414208 280276554 981755638 657112042 742328624 469164968 964696025 313940491 929788566 697639257 271489117 456000494 772110397 146906389 679563175 93391858 631544997 829530512 867565325 169933217 921449951 671613409 824855049 20293106 305410404 767846682 126294679 176275100 323926762 137113670 816722297 542107678 757322800 975928730 770700668 267255287 460748945 552084093 511751677 180745638 174340777 972734739 729212621 880807247 812095466 910423334 42419933 757575715 617159992 822304545 4529226 860234744 477505584 970139130 436091092 555009689 394203695 499865883 351381727 331427503 434026891 617780772 132770091 553100308 558383166 793725505 947623453 941670903 384543078 22106360 804819742 2060789 668003850 224268701 682469451 732384161 917628277 562030900 864788683 88996287 313323619 542979594 908602772 101653447 328531635 116218599 365587575 276985161 636354752 222324353 664375709 139973745 407016127 786732582 798597808 249980018 15506695 12216219 322925519 24718091 560270959 539500481 843308173 993664815 248093969 637633299 571312865 682722202 702535674 266266484 340237396 91118052 41965025 704727550 8666281 576300584 132280175 910757814 692030139 407694954 890156202 93379053 125094485 390866701 521626182 831879701 247991560 822644527 414239644 273602053 366512881 912947914 136910497 88010161 216179180 453457773 732640484 393903778 519930539 726108960 922999908 346188534 470212504 939562780 162805726 113369419 470923318 15301064 814338807 43462139 396459316 413754943 612783060 213926528 116326192 596149976 848302234 996859608 77861913 373731243 394638343 386294770 546452030 538134057 391858876 526018513 278129917 750329060 912983800 519926666 836715060 254840766 862825235 6531823 592482284 803935110 963487196 429253056 664489773 679594910 910284557 496106483 66652348 103335631 60722488 567796588 286062351 309326979 651420183 636931022 780096896 879279496 458520036 53698804 918315328 161418117 579888765 673960191 35678610 158571274 630370409 672380617 617520619 205484734 433228946 955552619 21453163 197315171 431645944 464180112 289410159 939915116 484143944 716006173 345421802 430801746 407704642 442154257 3853851 840192 416185947 67414675 362224217 559992576 342435974 91473635 120808682 451164587 591023510 570386082 501141795 741011898 58571629 911480246 509472558 330609644 271148415 733245332 609544731 711253414 369827602 264553445 41049127 635804924 513721367 724673897 294917445 423269356 784303269 384234284 569142606 797915063 909520714 664965060 295968213 159838009 34639374 30012023 155095752 218865142 996184183 343816000 541088700 16680365 783652896 260604347 549683066 857635590 699265287 678825977 528577212 427505156 183530064 177207114 931166114 832710851 880677722 859088205 318473721 412450674 107991118 625914058 452203304 803519113 578511479 868289571 51957125 855873256 859342984 932965484 275766439 420965464 259655432 556200594 836991324 975413865 923931190 349916288 741411236 616540313 85777155 881769301 745657013 653293316 593202860 605071454 320902483 919566197 530304756 318469077 966464159 160568062 353086904 522658372 170643764 988075585 644026678 100188348 902603111 46247777 507151960 555905191 518782598 701044377 562990789 235849445 355573927 86195922 249559873 12916134 226310891 498288227 592993232 184197193 557254761 323181192 428252494 49364204 835706702 19349281 709066489 28743858 550693898 479372609 335300556 60087698 300299881 539718211 785561690 164801594 571538042 594643022 702265685 230686376 312230394 216772430 322971536 503324632 988930622 733206637 957674719 934514104 896796495 952263904 252808343 427448222 65795088 808053568 872322850 428755985 499574284 34534380 534796538 484556222 476908639 644340047 773964274 465643406 574083618 517070409 761890203 46012349 238674562 499548067 825877115 159222198 249343390 524536994 461648067 420582411 862610961 401075885 759679258 125592588 509034243 700479739 453595562 152058072 599893651 629002611 294757830 764953455 394375743 300390308 998502400 579211012 817493201 526165536 144681551 645299747 837032523 877475730 584062473 468817299 256253570 78049992 790243991 557174075 592339818 223603717 486723354 724094230 832325796 597094275 692527441 485062249 372006376 150881626 770920178 481832302 877707894 483911102 574947074 648063700 625510103 49540946 66599753 705232073 172395302 324735623 669977902 661057330 733864628 255533904 152924851 341826259 15730211 773500216 730594710 464025516 144948803 396104222 945255229 470989019 401157163 844399291 674215981 426370697 255359184 772137812 373773897 55631802 608203807 747705887 647502557 68670363 116029385 921750126 21971883 737653924 275603116 814785733 245451212 966157891 961672461 755752120 732474520 231474068 837868889 254487032 501765753 986153943 544936112 662613175 946869452 513513384 440935860 994550656 822040502 123164016 936983161 466486310 535691880 636931022 685544961 324113327 573321599 615168616 541790235 920779205 758334902 775534252 377126399 220997904 655448837 43565392 77055864 970075395 129236035 560069366 709805150 752675887 472426893 730226311 407876064 772993926 372482254 206980779 101740695 970671021 924427382 316484628 148287110 923377852 707436286 313633656 749969320 726711038 247342146 914599072 253033942 620522413 486536823 509538732 270803181 594944271 53891030 603340857 715321835 741319961 439697480 271252692 633836845 697487788 174502047 690027440 399077206 683046957 463519243 348840650 644807156 107143558 982144283 724918925 245196571 215756384 11324488 453763778 325559351 830865979 155617443 998152338 768984591 269873819 437306388 83185487 334408831 356642441 260552978 120041670 943032548 271199624 332229720 313003681 677205562 361296223 149586407 558090484 441170933 844137521 450230275 756520081 541548311 360382896 598698988 562184104 473621121 544886124 683282206 492490516 378808204 988031643 349640113 777131815 769428236 149906986 597094275 150886738 95943231 611872085 784235143 960165250 540081957 555316939 49206135 745726963 240842994 900569110 447855640 486459004 105542288 611776560 819380844 577079628 843370307 727989241 712506720 463598646 372531621 541838076 899533366 551132547 66619046 85578153 840409744 902766944 275561073 968503120 668542634 273154696 904413270 671286757 97481019 780438009 650089838 995161565 988290908 395372514 882076485 840141840 244074281 339692445 510207041 324712238 424526503 815949118 732288882 633680800 996297433 371170909 348876657 924635764 417468912 515652916 362732812 896583952 892192989 553187214 23200562 408596149 581947192 477594499 605240999 234707120 982003868 840169589 772066118 775751765 385721058 408795582 653124089 548148957 562749135 648961645 136056560 670334627 82963547 973864785 398763768 942746326 480289784 294757830 814101311 225806635 224403433 350875542 507186071 105719272 936490381 724144852 350568440 569712647 298614356 68679000 100487525 830246069 539315905 835204667 242740587 308811147 453704647 55911071 267421016 155337036 472062156 140734949 776042826 338279421 780921494 74250922 113101502 844050794 659730665 769353366 450142857 825518507 621345105 794219334 402493051 906530085 708766415 721354704 173416950 986663338 835237100 242650644 968007913 182303524 287335195 876530225 320380273 521703703 246251601 947986120 738074720 660684227 488821222 3645337 720199442 99237422 744693550 308665008 367986101 272506098 285430618 770920178 643102954 411051852 176534501 614776728 200529307 675856310 478176900 592704108 170974383 697974041 88934082 891485577 276613164 486441530 778657361 39171370 269848007 614201697 412478008 851276730 972778077 565297694 91553808 463739766 203162170 276062493 940354537 858500463 849326986 432793747 396335984 756336962 660453031 776696912 527120738 361372519 120644199 987323728 546062229 309294528 942326418 775593706 461268323 261379266 777212800 355237999 540923995 424767459 761936031 608235941 852165167 968602850 795864300 731341613 223379155 287688002 819428033 342079515 895079015 339514194 126284045 716805018 279098121 960723823 391458631 976346622 611208516 353161727 825039514 384533682 547954452 82336005 35101279 420393857 544595334 567782817 696380804 159660007 249597121 492047421 665770513 68655383 902917685 58767798 591214613 664819951 824241184 240952567 850535406 364465628 800682646 601157207 13217243 705999672 449374227 507908486 74241299 706970683 292435625 349705830 559578462 991080882 231772323 112865999 200346280 804406830 883245553 758945705 16565315 558912266 419188589 583868668 819256140 396307850 373093025 156697680 397726694 829923978 514927824 120327935 671721383 231238228 305415331 200963024 444647552 672162002 969674563 105534171 859480778 321969464 335471691 223139913 178935991 669969442 422328213 691120598 283171016 247788705 607432663 451943013 285364343 560544930 144404506 538527723 133886677 271239556 534796538 515933842 513665152 623911327 972336346 708966633 476299451 707005326 194032739 347483215 760451449 247586505 856674392 837236862 725858545 810272185 185395381 91244401 844673619 810437188 347825542 933195382 702880206 575067611 672683019 318846219 701738340 955611259 780889095 149097041 879148809 69874864 273529827 210111906 575561743 406488510 475599062 957660606 447383001 402432757 106681220 766825657 862057191 506376215 494669970 219561299 954098051 829902677 379545132 672498735 297153345 654962344 399338589 122409774 970710410 16207825 742781349 534219386 201120381 918578606 145629983 404183643 112089252 958626164 860703987 424076304 873206057 420835300 453736225 566173447 795301277 443467874 78729840 427984612 967681705 612420369 195871 438832410 192463164 639670495 300261074 28288353 986313348 545663192 455343246 877095778 798281990 192983700 501661261 33404118 295024423 124896868 150735239 977483877 156955217 224769915 157582627 275828658 609254125 645005966 408461941 636664893 271896906 617285362 877557279 478038440 527821098 721177433 523735504 199531374 180813085 725167677 874571742 141204301 223603717 113595572 33433518 246350339 440730378 513950083 40919229 939011528 966908136 133785550 768262515 235158674 341899373 848462148 964815767 255180641 914608222 625634797 984504764 34429880 547906634 973155852 642360712 491885290 724297047 960734278 304799072 847184751 899212681 894858057 220513659 229986028 709532255 216635118 323202070 927095844 339625810 307388782 92559949 408829151 952123770 222806323 801066455 390248206 41854656 216263111 8011841 267134058 174272872 412046273 925301251 450849214 742810656 171688689 555581170 291737486 746196552 260915333 279185391 205025916 204366684 603265039 608545212 189898404 223230999 736818239 931595604 611589252 177161815 339497816 594234722 919305021 476626718 875236860 428204965 608218999 950860660 490896299 902956022 904523592 806677301 176050079 936625829 185964932 980051909 359520606 55222039 865304134 655543454 944308315 237007409 698756529 365400078 467016493 677652837 91667337 737939025 31234699 462716543 747006849 50838371 972891132 131365428 3716617 380575424 432527240 517768004 373424180 344074209 287774814 52666609 11853210 730566619 681289558 537231500 893114171 857188844 84720368 362489400 4342622 109032805 176422189 667715310 531763106 396696083 52697134 605483153 402113119 421190800 619393648 841387880 463153616 947293533 868027950 325650791 616368678 289496442 468049735 155248016 579814920 182977468 228402058 53280180 793700375 405638856 197246125 694308758 74712650 108891713 990299925 327218574 709355195 899734640 110037865 847346028 139078635 975234437 459110071 357139944 692853190 109692974 626659408 436795411 924427382 460563935 375581052 299328468 46899360 195221944 883706683 534754075 838545907 390706392 559964134 791393043 799095752 47482638 361633644 424024156 777672553 861166740 427708060 236892339 739615192 730594710 446569082 337698183 35672542 425740219 241957617 649790306 871119378 542626017 700976354 339460408 924671516 57230495 617153899 757181207 360294290 258326024 360262983 158042299 738519775 517609961 848381302 762328478 900643235 293246846 3783704 459783204 28274995 740831322 561622211 751157931 404398080 656867128 91726395 959317929 53477356 322061164 124577494 266836481 823790976 540235806 817126771 136939475 144794874 861786 880814522 410185421 149849866 625705450 73359142 732234628 148020597 335645832 819122754 145299640 409445895 988553939 563707709 386448688 717228070 388390391 129712321 543717256 273818671 39837376 339058507 239900035 138877025 34202352 434922926 463781069 663386617 747208481 392623365 232110593 665018236 576152482 213198697 823173428 422631172 6451745 186672668 56898067 618705094 638140139 624577161 358155838 951650746 237188963 615280363 545495658 478538411 313765792 382089765 381695947 943914424 228289478 10875165 974034924 192133542 492008035 645100424 379803153 454989627 831163735 80227730 654879268 888813211 690556464 596439893 614252206 472111227 94182070 276327674 187052690 635618363 682872807 541872331 46247777 569699365 754692997 871789080 237921670 460476518 794681986 926520006 837518144 55754560 246474782 50349775 822236067 391928228 618708145 690916860 971447013 562392503 115973605 621334193 526461633 368991616 445155806 862499563 548358046 790476160 774213889 532319743 899861550 60769191 28818615 520501700 690496587 2019200 250276827 736789354 37414359 491424702 372324395 776815798 569005238 854003188 245538853 922152676 638960393 549706220 378552592 670779083 322786668 277016037 981589233 32963601 140255496 646278523 877557279 611826194 960082883 691983874 682405553 806166597 420377907 811923249 400787816 622256020 953073496 896491551 988930838 408480255 578731085 471089114 779088015 31140806 304403071 663760230 942934624 290356903 623393764 287152147 776331268 30071105 525435674 98278694 327021305 583466623 453101497 750129207 546400588 229494627 42049305 434026891 394838314 823567189 612876818 737298195 604403024 754581120 76896679 240889190 152255740 126343800 962907560 934221653 927078060 256383572 279883942 801226005 773555857 428018847 445541743 836315322 805739488 94395363 571772395 432793747 780335315 765343363 424861026 218282077 602303727 395353952 755813844 695437892 482233376 144404506 470724942 451492857 538674850 219806708 242855974 949574546 494882768 536068957 343806736 613359183 8764230 361811848 349837858 504502475 393460566 960579202 131390900 810567737 879854603 678176737 286465371 717543173 522771313 498083285 415402164 989897040 557018308 394575981 237786817 936625829 403603113 296867912 127037033 795984145 464440799 812601448 875067424 782067302 962253309 27122352 200397802 983193005 363457706 37197337 535011574 718060493 783069187 787987101 578028194 460377565 913595430 230621650 880356845 440005176 864610571 841080056 551428601 900121198 456536815 6679472 911787691 800018922 889289376 225031784 234636581 954257866 580348701 287956477 531944150 455497026 158186860 831859539 541832003 91426844 505207365 77646430 607426914 843862786 31158972 762332176 356873506 427984612 906912387 477024050 759288720 303091643 123800291 276591554 431598106 20137897 772573925 892933734 493376733 7101028 157982306 795547158 246687640 704101491 589616760 280826009 808860726 895770649 920730391 360351174 534115141 186815250 411923941 226527751 690091948 381683009 75264338 326164549 102464805 563074027 427047827 790655081 388003716 610190656 209658098 522441173 483514155 380685855 340776133 678076125 509961785 550806533 235744339 346164856 494240704 209476761 426791359 594571295 730593033 229784365 849897218 580760771 263494668 825121523 602563852 758722662 418538191 506056621 103984132 546515289 100016954 417685341 933027900 104231120 104735325 314195697 197930129 649824183 771498184 213852348 985393342 169989771 947706341 175382526 411203949 646143353 18669683 823526623 754261454 696475488 738776508 100110846 266042661 230861426 70716476 642808191 260892615 798266196 314613738 444620324 613372288 720105959 218561166 325357804 612541432 235889721 599573899 808806371 983757696 775164534 422647169 762668278 908220319 205430750 561080028 934701658 166226110 989227796 32205679 382419545 288055952 914608017 50349775 316684895 304915828 485689062 399087004 968503120 791265780 853406862 83240041 915832659 380464993 410430064 840268527 879522743 946027617 420288113 318935247 459475531 331766056 446867428 777710577 242676627 436049111 449305277 142137979 907095763 370561285 897508766 846733446 379372276 394943247 642412753 920727460 955114782 517070409 153463664 858564495 492556869 283500359 166727137 785304211 890542202 893591187 788385191 51696329 435269345 290170003 160172520 871834731 695319144 809844748 399867166 549293008 977603499 995699292 627883729 336478389 429020788 995354946 846726289 120373505 206996513 473253485 123904526 634008989 515552811 752743102 193312667 466765189 189729651 836125308 531290671 294574803 356583369 556637566 986313348 538527723 931431204 576115115 185901068 566189053 48058560 599881064 365647728 354154685 697492278 347665151 954009828 812080634 526606387 70029235 942326418 779206120 403768037 417051459 214002040 237943679 464820351 837089641 923908915 794132190 996895630 645299747 321442137 266356207 977363168 518350190 866576854 650561443 848604590 949693697 60769191 126688363 28054267 641212590 352433026 820011407 523904607 539145297 749289143 250252513 159643574 913070277 188596751 982264069 938442172 974702930 358956844 627339766 935611658 957803804 747091563 355940307 23465688 517422613 855452589 771028230 788767894 509587137 204480024 375361143 538294950 716358210 751612211 938306478 410070725 488058691 712958081 442618263 631799032 442353330 994976656 652063551 424217044 768493680 844485357 773510552 477885786 569556884 653677604 760487843 965737421 851069187 415575009 759367111 603046200 993883059 207726761 366652108 986362453 950731886 753059445 641778058 547230716 260137625 67704908 174194463 310380412 876754965 661057330 408457011 548134343 486444105 973498480 944111214 977411545 198940555 576722935 938743664 999650939 984924265 468885775 335431548 175382526 644497777 295801781 347097403 646719116 185595522 899933687 27120892 569366707 90992712 841112543 868935531 656923396 153530374 157910753 348853920 409448066 852972063 256858397 122840596 166680508 852483151 338102565 533859091 24521081 25505765 546559159 912488797 674856453 568719536 660563047 843663347 304816445 907436079 434082243 755719445 777391656 298973634 108142450 93394362 262030193 472115388 161099785 655642943 597794689 795329837 52486830 50432591 715200534 462640215 788492137 629512828 55666725 744798269 598036984 59014246 742696899 919393828 925488391 183421350 240719125 990279763 928424040 746149272 331349853 302249686 631258035 793997709 705561027 822126770 401690216 893430706 595705416 492077955 139815667 304070320 228324573 356707522 56383527 272953811 351227574 957893069 620895581 968114566 969372206 569950718 177675945 606175261 443897956 908727897 432378051 647508684 247657577 366668856 506352626 852972063 484783893 446119014 766979009 766082948 792916996 390043055 977372041 64196173 166736341 209509399 30319200 860529696 66465500 697341859 575234189 137563650 333379551 972070276 415312988 355522770 468498027 186919206 73710997 816427346 177228117 806677301 145299640 911082402 801304491 54470722 695632292 476745188 120593516 887659114 927913345 61617970 130257881 23912582 388580583 775696483 21754036 537828536 811289197 711985885 525137887 290929857 991608794 219941873 459564893 754753144 460743517 943359955 459206643 831330197 321840653 773927410 278637284 243595327 436130146 412454397 40919229 211524034 115138700 664024588 645184762 176384805 231698095 136369338 626050570 418899991 659589239 371412321 617618979 848014446 352667548 983856554 35274462 258548684 276267131 251722281 538690266 871024805 67551196 532098288 317238704 889442241 238836701 388165048 483166309 856919552 553305192 202416572 34481748 17134760 85348101 523562765 577070277 201057241 159753682 942145481 148129582 805340497 204238632 965935867 685740019 758816255 109872578 45793433 562517402 446920523 844267818 593177487 180079042 683862871 865545858 186912242 944831634 277945491 760925126 334752594 459589841 767222376 48630570 970373838 261800788 913851858 623311448 23385878 160567550 629532605 320081486 790784755 91553808 244372680 21330851 387035859 516734637 884898495 308982517 849243803 308638255 239268491 845272332 402443218 671583770 835777314 906827660 801389136 683997487 398645316 495578910 724317971 952449897 137965677 883854934 498665836 913864700 955955330 581740268 257522584 182763321 69031320 825485954 975697307 971645297 458471999 622087499 979321825 198397743 487819535 222838897 544536577 860152187 960188626 651337420 691358535 136450713 978851345 772710514 943520888 141314900 942244874 108362826 77645844 287052558 334566382 707582591 400332076 489822116 342050561 427184652 222586734 143208017 993775781 49002326 64104057 899257528 874088445 205135271 52578676 714635200 755330726 544432435 619139403 115623895 374170817 121997722 255756695 467789238 955053100 497077493 980113241 500607303 276267131 42573864 166669092 532500938 68836686 620602012 813554618 230257303 432974465 112075414 852533580 40991694 30319200 827343419 741641849 542342149 640019197 438170654 909570349 499484393 876719458 89675871 906911711 486456670 585801465 281780375 745930552 390352051 508458491 97913606 840250994 814488521 481954987 771304665 388711214 652678756 506807085 669025094 362835066 171530593 589616760 175346244 8506228 542873588 474437149 19571987 658293800 87667012 120972879 986898485 814695864 607582213 476165663 487907613 850970327 331822817 548363179 39171370 90992712 192789449 808791057 655022859 348500500 191236425 395917366 784303269 162445675 709717805 581324729 841517724 42418035 90014457 100698686 294448273 503325436 251780067 240184110 520879386 479940776 644162225 45785538 361767048 9973520 186337660 21454275 119672508 597676801 737311358 887589483 123288756 736871182 117959903 668921144 513255669 873011307 627034165 179265817 394889782 98438045 28577857 183049936 394747095 403453851 689379755 388178138 242568638 714145823 360850179 95221977 264978672 288699275 11996459 948155676 866415317 955246714 877291958 995614651 478847153 624423797 199966378 402190396 870401535 216683279 658046588 389155860 277340641 195224486 683792548 85837133 184340049 360480999 981102870 17126828 831680136 383651665 467404128 631010947 797810224 826842689 785275261 117905345 858757832 871176111 229264080 859150055 646191862 549191698 577269190 459885463 244041631 636753101 233890460 993538393 201636629 371919694 595194838 365069822 533653099 54879686 461847669 659422187 587918841 894687917 513434802 625875468 846285493 55019050 79188202 750373948 386975793 412286813 943299847 860420416 311833587 768947533 323921042 420331396 473813564 448747237 736725411 989636378 219033076 560270959 351728910 327372440 7451325 162920564 608655047 886561025 419552197 145477087 527739535 789609443 409703093 281758655 102386177 563803034 693007628 386109119 495799521 377222987 775673485 665150327 201939441 370789536 371656676 810038991 848183024 44447670 101622584 602220739 616995426 573023518 82259555 249347737 983167252 966772997 982390307 768958958 133760129 326660133 329322 565848809 168449503 495535975 667427411 486108831 984145408 271243235 952682890 375403422 191910294 837518144 438485858 48502492 127859736 337831393 633033228 992179624 932082460 587592528 41049127 100949469 926970127 63559274 564361059 381736229 630717440 957033645 246018397 980442525 655799722 674338346 231206616 519689732 838018632 314446496 126428579 169778604 715784037 915585972 254092754 350568440 34429880 731993806 371253256 373898827 846270584 643418178 42577059 295268806 507925163 523792024 98172193 10421205 77847537 916601639 41599400 518410476 252024848 315840442 588051955 455057223 963171038 756057078 460972198 306860504 855569835 725626789 367644441 427048220 734345613 697952061 145111489 117091635 363569786 361114645 959510376 383149391 11810282 664411633 739407428 392732047 121584537 451704252 833929654 508710031 508454462 586355431 440140026 264217745 111078591 374966868 951221909 347581729 403925836 93743196 303959847 276006513 274712494 236017513 619473798 249240872 67970352 9414705 257073496 211980526 79291051 325993576 800105680 791734576 756818568 239060295 608912469 334754086 609471397 122144769 921818056 345940051 225386610 706020243 889083709 241902249 799135796 631376809 599759333 213689685 241776432 2629145 640316039 922920711 643375019 151108336 353470549 697678009 583064564 566901674 906018330 391858876 47052964 905590414 902595694 905129344 85239886 38271361 265615805 624454651 470367404 237339294 717172298 894870180 953240018 607953274 876142413 474774253 224591472 949493198 695013873 838008680 292435625 440932202 873818103 377634773 403305993 104146622 211046887 963487196 138152576 427979275 363473380 199866167 915812872 614547969 295849565 499913125 230635114 967058111 825576072 339070611 486544778 386352179 566397084 95938313 905364003 842177730 816107839 343330885 907970669 313155904 623237741 344661344 292088602 748659146 64925349 244447689 483911102 976614258 397610033 620436445 969620478 809507045 61396755 636514695 204396468 308280991 767029679 988290908 7386125 743597326 571077790 692934550 248960968 266016608 946878334 437220323 103358951 967829888 617645466 512061932 533118978 288127699 620974031 556011413 881426231 234597617 939050255 629512828 447855640 34169213 642749593 723767629 73827500 867716601 812021951 365590988 677649560 293337432 352420575 940176335 984115004 24956762 896691447 836546146 916210068 415845475 350141726 373250732 693844259 846247685 616242322 712717332 412279678 13127627 839351072 487614222 550084012 331647744 62131585 64443170 795843238 655993155 89681136 743927228 960136227 221115261 1302567 234707120 415325456 635096639 734245760 287013806 669255673 206545941 511997162 10964635 872181607 639618189 371640797 69176252 320163969 768260651 648045704 621014244 426960292 448896781 931004767 629271462 230751788 415376018 555042944 403126770 132879081 199751063 832369955 30860955 788629442 353304221 82355386 689109404 673165811 313337258 233771978 194073218 925919817 503402846 445501988 406213687 334108576 614201697 563183701 590092588 591122423 235829642 474708853 415036907 98867910 178988988 513168180 134320405 188820733 513428369 616180819 645372093 929062927 935977920 48844342 130418372 565654961 711242697 323462346 506977337 328999736 139742594 163531269 875562307 658500662 903740413 678678373 620301163 505478207 221443531 642960430 309588308 679594910 528463501 274039339 232844998 799762911 148875769 346506829 130672429 516560247 605580252 153932959 497151928 167517912 88854380 346769067 432333735 215260900 614063890 798322194 67663298 466679357 943629727 212511253 10131796 2797568 38088941 398777968 893090944 264821781 723637346 346193205 982721479 461324481 345886022 95943302 317126013 131794192 165918928 965040007 419007210 175903200 342583426 315546588 437594793 182763177 402262093 484534102 363468875 79291129 727950854 319688242 898082384 343623135 749504682 746919595 606037512 148051592 130110235 840833799 588195935 394571373 474560439 103659227 860810708 791801879 82985515 556391411 854064405 260658701 601068884 24612024 467698760 978249155 454829880 309134438 543548427 412791126 60293539 992001752 506247462 288255957 520576828 518398944 489117259 97430863 54956000 570087412 204497409 484783893 59568852 844126989 103451167 816424957 635716180 420908532 341716865 422457325 61518160 325510374 865067183 797996642 850556220 57498549 691689597 595015750 930818609 213920347 136886292 436780671 657590709 259972148 953648499 777060467 867203731 34441826 274189123 740242353 879934509 51359256 42897233 860081670 779097274 879302024 663540028 828574903 930659574 2350990 537483844 408917440 276779218 157801911 76325106 754532386 166042988 462891404 30972105 117190212 171046534 57054755 685255804 462628531 549666677 388885128 151538871 429186338 917769319 418392291 713103737 947367981 897343962 176319926 41246059 418081569 616256941 130623250 665255483 601898490 526366827 26386750 1867788 220151801 657374419 78049992 772678096 961793956 477760278 43534160 686259915 269560889 189013614 322254602 795786791 599994227 425251230 143606540 147412159 894432600 309103511 519852027 751177773 818259617 81211295 180511729 707290569 178848352 439822240 851166760 223379155 423796514 271599449 122863073 939151896 476154857 204396186 310897305 95810376 874621322 692041677 222324353 150944055 519034981 924666599 722903414 347519003 554157742 876930821 50649066 562224810 6372611 451849918 905927149 604805432 895128544 567672307 722690827 523405217 577259903 34869368 459564893 320275511 401518611 551668275 793966002 348740135 606792944 76766586 597943613 777346982 765553646 994672802 103587570 510018118 351662106 900539762 236900060 418538191 600639182 762306583 170131068 836106556 619430088 463089233 574626414 117036877 888095172 210591465 945895583 367668818 902767228 744427892 17619574 370505261 109626745 492026614 503951783 871394726 119582032 755754015 84829525 428877108 152495774 707581184 758257047 621225189 373981954 521381685 393460376 911027945 12336000 75818832 21094694 703249681 341426020 257055281 506495325 655096537 138378530 738298442 443478977 457638207 969563598 758689592 847310502 112468219 887854703 466437219 108142450 356722173 813203475 528967578 384826642 170481821 185800938 150735239 447998755 114672380 699934400 536583891 171714375 933893590 144875997 831331386 179682367 975032616 102661157 291138891 432871220 48089847 272040335 152495774 930261385 442842530 987592448 435966947 92899831 721727036 612755087 587039024 129066521 131858922 696510690 74196764 965557853 307026778 876255402 344144899 111858194 283777910 33128997 977566468 126297877 294003897 616681707 304327963 656217909 213574653 544003364 332014672 884335036 551436549 266836481 862541401 31449813 813228174 576300584 176630675 577222929 32794362 178158873 757994956 110151817 666152405 524207106 99683332 75791119 35678610 685619248 501256424 148224181 997143684 906571134 600630715 124456882 826208827 121717157 901182619 749321637 766096323 602327600 120625884 520497060 145289913 397339243 228812888 508034187 391307049 190084983 699408486 361382738 525690387 357362454 655543454 758446679 726280953 895271480 49908779 479848099 344581137 11076063 192501893 927894030 139503006 680431607 973375717 429055756 489082948 678337860 786382808 479581983 378312758 10993501 824871107 419591465 780729217 937277894 975938816 575652823 510146262 643314877 374411501 901734628 468271039 63413855 483631556 998262545 444815107 990113949 989542020 673987275 683627157 25903467 365183237 439223852 592204791 197007972 475953297 254136522 780945199 159777952 748659146 91588712 820372765 675221461 84232257 353728952 406579130 861528061 945071172 419747181 503901769 575848946 333435615 334328962 699768045 242935504 516233180 19502763 96475540 565633355 339885941 904423776 102192883 842787859 916487188 910796661 181117566 134940855 670676559 129205889 948553391 317299532 749321637 10328989 845783808 969315167 660723885 479822098 689808131 999499262 37781807 516763364 897544956 465713369 735318754 292297568 973575293 531875888 780405496 947053607 794020228 700313687 361915345 822001597 683717026 192144102 372498480 118850242 470576393 310592838 473170144 607335284 805739488 707741735 950388925 974942367 604808786 671113066 84667922 902768383 268866149 795393717 729319203 911058337 838761284 660764507 277973375 66524259 503526708 87675216 527739535 653571200 328733399 140062063 691536941 298845396 428755985 34080270 407028489 759459703 780068224 498665836 562229491 576966420 78722663 57206509 144831500 941939921 850302616 971956785 112812814 398735805 877910173 260269228 369334143 280265348 288071782 273529827 142462476 728965499 349507635 679326389 276293274 826225529 239933136 553713847 666907760 248506211 646409022 997411334 176319926 205867647 786489018 963212134 949493198 23502021 944870970 325486069 484179169 23809345 310934448 6216206 37517009 532942953 812274186 818500405 663964456 612967818 955922999 194451794 182672202 104498619 106490864 160098721 812812411 149586407 845232412 622529866 415224707 508306531 745298989 542001064 726043814 248297358 864554302 519833845 695999724 292265818 702491388 906018330 449435170 171563799 294871866 290959522 932892042 726316395 203699740 395541539 349621427 468158466 506501145 836049084 143932196 935262535 736971141 427301980 278659405 427671184 829080715 660435605 902371568 915249125 332785527 226374142 302925995 167981125 678361118 590090178 785490848 459589841 325662114 157589193 241134023 702335701 187121870 377396289 930650061 759657836 482920995 632771135 27014020 990500082 875707871 715749950 868166922 141758159 558677722 856593597 471658585 433430164 308825344 851733268 287809916 653843287 436579669 357326672 859056790 82523077 485570585 634876883 670681357 440684430 4478845 145393423 484104473 236325260 159998587 7566661 337688921 18482443 905500631 405522356 443724835 881415067 216495757 653840939 141954585 628678668 844473855 360503852 954151791 433967921 39362913 913448972 542746663 742840803 544895534 340551864 799159732 346036261 387158053 575392944 370097264 920553764 777492584 154889646 884034756 914865889 800969050 170677134 632861330 756575635 996968909 6138175 867458596 258697036 464211708 943551170 272796165 52794329 499590230 832078633 275912984 514387542 233839078 50536 49541014 719010096 442358574 865403274 142701608 660782143 322892566 111586495 361423859 290536867 28862447 552266582 505262014 971547602 125481437 831305670 209415982 455089408 73475904 685917509 582995132 944199327 981431988 877161697 586658944 481597595 13487268 630991626 758727679 521381685 367912068 322056636 817581252 131548064 961087852 125288626 787973761 153812979 243917487 946195709 160349177 266799042 27005382 412898749 480503654 931359618 773958547 692362447 599858009 804956044 259452525 588219539 67264046 922585774 542465287 60139607 141477175 439223852 877619615 327564207 788645388 737710410 227882239 593542477 823599052 355626528 230601139 326302228 881079664 577313731 458809028 642101431 247419202 525828881 656348151 349513058 681715988 820647117 319505076 914696019 640450705 674888174 93826889 480020713 68914031 419849989 434766121 619750282 345747918 318846219 365842693 881588094 143952720 577487205 872501409 769066578 573193940 657134173 83928317 94209730 462384770 786676310 428070831 728503723 731917652 594857046 849615235 503625510 409998578 913595430 144533386 460609053 632720196 106821953 129845228 675528195 950523833 59600634 930276019 323882903 680999297 311378236 631665563 466853198 697364625 128641579 755097643 125356492 28835800 480055436 245730923 518300952 198947620 139645129 772804478 360338342 412655115 353865275 153021935 4464055 940784571 429361932 799385165 780109744 167430590 22991070 397077079 662300986 187730498 925323502 713685025 201086478 673878388 669411976 630309099 1792671 860901286 399448813 488734690 974280692 67388454 953406448 738054 694667085 908202754 519388328 282575386 423250765 906170053 768674724 143692976 57857514 406144565 780001636 607424311 280764059 959347686 334108576 992071920 27183322 756550717 709209099 353238983 363792280 492795265 80250543 732166406 245714487 285234070 32327386 405735590 154002415 614567916 788571551 408452518 801422355 490343057 251970011 273996311 100791782 986259049 407811294 385252057 761555924 199751063 156708345 988936793 102392074 790563214 916694227 110311909 789544903 323062263 998290939 143179987 543104636 233132380 877391518 294193933 315574923 48089847 934503279 545935497 862225259 610107705 370531506 50490066 301392851 346433476 522440445 951694546 333460366 81877989 668222497 247848854 853834180 29056750 455172237 361483162 699768045 932672169 229511829 873767148 480411002 98743499 7412466 240212914 602667429 913274865 951423771 559738476 999171782 223139913 375732965 763589367 634439892 775709029 8369492 568092268 943422642 185579004 630700581 843578469 273229538 175643748 967408948 839969586 481775185 473639693 921028973 844733265 84324261 25272023 611690558 676966195 177228117 811993396 767005648 170304611 329582538 422829959 89052309 233206805 806937088 943015548 913922230 660407182 253494658 677547599 277205952 376361416 759818312 276749235 788754344 686768480 808731987 279916671 941757939 425058422 119518000 797264863 848671237 632616989 12406460 745191111 619515414 474487061 827629097 326553317 53091461 768173682 316460373 948582664 390248206 229116670 728382051 736773148 305932416 918872204 125982201 787773668 351753419 707084170 627609700 281236694 679779415 378671514 646416044 579958827 999163842 130500915 3809434 467000311 206939281 18197620 54495109 663964456 68560523 994982990 632898236 682049166 247926854 959428160 530197512 806483395 95275932 362448035 207185948 743131074 598524845 638321902 220197212 431310386 828550538 379828409 885573190 294569608 823584070 824360526 274691412 473503771 7880556 623311448 807256075 503317951 656427169 952682101 717514067 281277006 578932751 278418373 905063863 486755668 141204301 724016162 201554281 582371637 695013873 903276105 181824688 163217635 204871912 286312572 514880860 178123879 96153827 875174813 409556607 279620740 642369286 749057749 256279956 750907913 456888286 529193401 517745358 528188824 128384948 691996208 746038273 455786192 973727701 121727892 781795137 239615082 130580976 51646477 76175267 290544354 35756338 486349190 151187149 826770345 801580638 935196355 306365560 839329290 218651931 203156656 316189302 965377803 161742205 77645844 328950761 696082896 294431927 299542895 404398080 426547186 273198763 854203607 727660419 906453576 638085692 937540107 491936204 849939840 453969707 422471158 380069044 4419017 865767373 828797450 280783269 26547465 997657720 775211503 439014601 270635481 350356748 32680458 762940462 296785480 89371392 119264397 328922846 270685507 708775580 320651184 492507865 780405496 799379627 504083061 555826582 788390711 989608959 7927594 905804029 686791182 602695010 828865564 622392259 281648721 434064935 808419507 461694553 362112200 889957627 498855113 37580480 607542467 578150200 771133719 546429942 946321180 670685498 827797259 767181588 262622472 445347138 695480239 409110396 981175680 503595229 533398713 726898611 518759518 933317396 13956902 246078257 177347013 117419103 311578433 726357714 655993155 318730425 665329910 61518160 321442137 361372519 691167874 535024547 733628366 89309284 312415680 601811961 617000711 370097264 760171327 734001585 840450563 554065941 733178277 406500037 419075949 795272360 936389295 321296796 248960968 155677276 120612650 389266952 689643345 47837529 419856119 122377028 254183733 756608048 488026667 576489235 987376881 229116670 226393103 307050197 643481067 614356925 539116104 995716283 453713327 630509054 508091696 188820733 827629097 661007944 389125379 449305277 165066094 562261973 767640277 55574210 794706294 418126263 251294323 804971792 10692024 231844522 914526887 568172244 361633644 542764320 319926430 251867502 918302903 260359908 419750441 473080557 829878070 785448378 605125909 961429064 465433128 676793087 250298040 567711457 904474279 973106457 625733369 85413707 78722663 432892629 332464999 331003735 395238408 544942106 671771263 325316516 697910656 202691822 933147705 480450697 258899546 675618779 661096056 420144554 55417553 827140200 221592840 483899805 959226394 838254498 356873215 614665218 813299937 451002065 526256849 937730237 136825756 820547786 933063553 482562131 811596694 467504996 329355250 370603667 526352557 532637137 321242377 394207548 85739874 592520170 303057232 635427463 835430678 256835924 376060662 29087161 292650901 561074988 101729800 289421818 497949455 208419900 657231824 684732806 597412568 114482845 568957368 561295281 325176654 662619534 275814352 471912209 284754010 305222795 284191836 277592311 839685680 593463638 139832619 176788545 101073949 977221893 742369800 859990750 16608012 684599750 480846318 85863604 870732394 142594613 541511432 186397884 155269026 394776654 496246644 272203066 379043276 98572383 315845839 176874190 42816552 765925446 352494793 530467476 315845839 485206854 784266104 74500131 533035484 201710557 624475397 718078371 40229253 585281678 86312919 844808174 444697343 121051869 437850325 581900262 410089202 875451288 684740179 674078771 662566336 178389285 415016315 929838452 901535835 108590939 396601009 436718282 660323530 819218715 975032616 486185480 526366827 958400236 29687987 816323753 383681639 71157693 58085212 834995999 503303463 881190192 962384055 599120458 543786998 349909418 738759590 827748988 515217109 990537450 229162268 403016349 343359622 175123696 137344446 65146469 775167960 477790183 147424748 960810573 172154210 551831430 458471999 857181368 592418762 877149172 856919552 919652281 643417239 816791654 533859091 996313424 877929721 828657996 226932618 648209513 78184591 221445660 280305821 840122804 41261328 58708853 511748778 373166323 116691834 745883253 37885065 689643345 349837858 558767582 115973605 888660868 688670651 580880905 270967324 712894271 634202682 957464340 866998495 148020597 181287458 212737754 213188524 510644698 643745777 500639165 627883729 249024140 152370831 365323085 6171443 101025386 923457059 409069053 952092792 617569219 7757285 275880829 722220000 371403810 809507045 246373675 574937907 972209662 876833878 60123196 107801717 925021398 273719120 17971714 719908309 885573190 644546718 793879170 883303758 468311164 388822826 237639027 208956135 342651436 558625916 133952858 636270260 996968909 861500008 412791304 301185544 356770260 455089408 778875734 583535158 294193933 353991970 941359365 953441547 934082474 445760183 69754983 724931737 513721367 747017030 743786802 568239048 170102693 568452967 756057078 88331524 607083359 134736444 856556427 644652334 641024611 189556801 942830498 330340395 60548789 312370613 499939605 839896956 779896947 312093633 266077922 82523077 66152072 466486755 517088830 106725386 159246699 236237383 935381372 604199140 803560544 961701244 770556132 16244623 427875682 427464149 207238196 993422708 590301275 139000386 470985403 785304866 57473784 188536771 668004423 296341860 819773857 369827602 161835094 119461319 809938805 448016517 472496471 42396080 555311988 331826891 51974489 766357648 351796802 884240191 502667850 841608719 766515751 63846454 454586710 71358740 606481705 879693828 65902205 594432641 478479147 398863642 298721611 807457434 372840742 854906876 179592471 628468873 784786713 494282252 602104960 357946985 316385410 857885687 67749123 116401882 146699881 609058800 381947720 116684537 567499219 237381206 368762317 676269813 871649031 205249015 674738885 907503499 181243081 193841714 51374912 718005079 749724859 452193059 362434469 236525862 817174501 553949485 319214677 942188134 271350944 25303163 294020847 969846362 797398586 251426291 74068720 682197450 825698700 335098292 254952133 609289883 514628547 234891074 312883370 740220256 574279398 110449735 571539500 419572123 616266255 731047039 286191872 4612274 137787552 517430804 617619320 44499440 631863810 133911903 249103821 652282560 339070611 65354394 282610572 169789985 151538871 120165678 786430359 65211885 402135298 830717267 868765978 967957775 723447340 955110304 507139643 242124632 151985680 869332059 285424066 989999293 150054186 365455030 864673770 631114896 154008853 255471312 114919549 288479386 316580953 198446337 219699494 660689348 62361370 11114567 157012410 254778287 95549966 416155216 733236287 163920742 546514441 111345701 870206052 835067181 58672462 625531447 892934631 693881152 108236289 260115705 908691522 648203638 145289913 730152156 606792944 853207968 923425933 905242922 281906524 712930518 200021275 411187936 449268212 101242955 304219181 96449233 655255280 954651751 961630934 903798948 671594730 684323618 581151292 802235349 215896665 50011685 64196173 533274862 623759824 565195432 261776414 376369871 279349715 544308951 152264544 675380385 405742947 826815243 489654036 916601639 893804414 326302228 354396251 540635079 135435689 744638205 93666602 869216262 893831991 548984695 776164139 111599923 872621425 105773283 820016530 58228859 850180297 687534219 818218948 620293461 174154461 497042609 908793068 400837322 273473434 634694100 457191564 975993059 456964468 743820927 385833750 407459846 242183680 570015153 761535556 697118592 952634639 131682793 527115523 303110089 506700762 901279371 292003384 785917455 757445779 450716681 392495447 203374702 606327354 810801084 895179098 56210452 570035681 113009130 308535404 288127699 163178804 189576119 612547414 37414359 185464149 225830693 701974716 370457613 135749421 843303833 98712735 215389033 573595938 730784434 52486830 289497030 97983686 448230973 971614271 397875762 847453418 722496493 883000215 656623861 630008667 545616551 901854769 921889591 171346891 279899872 707845650 116531800 962552105 883020596 853793860 640979076 817048962 36135699 542174118 516376551 953624448 802929712 432618396 722600204 996837342 106625826 787500914 374473532 5548249 968702365 412595408 832636818 208238099 13527699 909454126 444548506 612787701 258301504 260503495 902916945 439210837 427279053 864753384 84228205 277128713 716310252 532518952 572162094 773638427 2615696 329913498 235139066 142570291 303074793 781940361 233287269 754504020 65056123 681609369 66836074 622419953 369180154 435008017 476359274 636778409 402276349 602374838 119420924 63713934 365214007 833533231 517422613 710357631 407381680 192501893 664833457 742509664 106490864 729487208 133614854 515158558 229437768 183717309 864030878 662293932 847102523 177161815 754887088 63877291 68865130 44995196 161550898 629519655 679346591 421320904 746406834 231195659 734963374 691821521 986388406 952870458 537649065 459836141 223234473 97332030 499587102 87797734 315527673 705127807 921635097 644707339 845744654 321420904 446746954 311257895 717411168 675380385 775062978 854534495 222019426 414234384 204588081 9039671 430772076 689519580 364988819 976941240 790276218 552011070 428551048 760681986 703705034 971956785 287052558 142420479 289690753 470017681 792416631 222764990 780041430 218236719 987592448 326704037 468999334 608055806 15898990 297434692 226411134 52741342 618233053 229773448 555286296 890401019 829581177 982491636 415362599 279895976 362420359 125888279 55691539 948389875 254186684 823794070 831022823 384690068 289578371 360800320 516379074 731518841 395262329 426818165 851919408 228797882 145375203 674076340 78736024 839775066 197131389 80338036 608591397 952267616 435927529 930835152 501317133 141525759 986008549 116790521 321420904 673543700 562103585 691744905 675608028 434310678 709113003 476925379 560384446 138124148 596560827 478777776 988563898 927502549 717330437 136889498 795708933 834847261 42925771 685297119 413778758 16054572 953572920 260115705 990978389 429666584 332014718 332741185 515117473 188412990 706022929 687870881 883019847 562634031 102943335 960335999 494901511 419446051 975156870 726833095 557513133 739470382 283187823 255180641 73245658 668144083 960679335 13527699 958652825 805666000 898063445 811802470 227876346 86820408 559065265 580380204 18776376 577258492 677433029 978778017 310693423 787906443 831730742 975723945 206346031 7177848 846316622 461153451 835338665 300986573 464211708 944529729 163834512 613448437 15465391 181048451 998727731 479424034 846871715 418296133 636167072 50416399 448196446 348522575 233062623 201547669 491424702 9849333 362758380 819132947 400472737 336406201 184016166 962656640 794674957 779355242 642059210 535242214 118651141 466488404 323384297 154501890 675768745 669642335 941328087 194032739 269873819 314195697 938414381 930742440 176741736 485667699 791975991 30393229 934979401 921001118 632857849 915131869 717881054 471572223 36877617 10204040 126119838 535082364 487016763 846771821 603947097 51963580 896634009 214734046 716591527 286214523 837737812 293851273 589533355 409752689 238986870 828990292 353728952 54557271 176678459 581721829 128556933 954527674 486544778 5094809 456674971 457979108 357641557 997102444 451033230 370039652 185199107 375581052 931338375 748612624 868061994 311028196 663528640 927946377 364945683 895081366 78039339 647427684 615871912 708025284 953043239 116713690 280546038 567475228 708137026 389464653 494413325 155238263 453550902 153171807 708044246 66784141 270278194 703005393 398131948 828158192 715762744 950068110 39362913 772475308 188882398 827984769 450716681 246578950 262492035 394375743 631851084 411762397 434164509 443535675 655975055 398288150 147452789 749814395 975712967 338159576 248921293 636852189 846289725 831730742 245700337 527986603 805162134 183750087 262445765 171554753 511156221 523008918 623254320 66895421 862942219 598516260 660426815 539218788 920264709 625311260 268541149 142049338 986387012 922152676 400603276 771229062 497042609 602636088 425305391 659341874 142184098 305199807 170149310 234931530 706643188 770584593 583634656 89542477 814500787 385715658 775601305 892050229 797915063 60987824 153084224 512542361 719544907 775499917 795517599 9010788 848519613 924615674 406915395 878184804 95938313 900266866 416428738 576706639 826097366 375120583 998546692 748317723 867723723 97787917 68540154 322377766 831519279 931678404 949693697 578621154 248719328 680142594 853817865 805458633 977411545 381844223 961747159 474447896 124456882 15707097 541334796 270757885 871866740 40138068 294919965 19444380 273718394 960721779 304408023 531446009 282250593 927119102 999920088 159660007 422641067 186256523 934651141 713685025 423373324 210339469 990792736 500095201 246621050 134630704 29271221 35926997 636643586 875148693 166990388 675446221 341778502 284877426 721536791 882537104 373072372 742514644 618049301 978793698 988182898 277205952 97961274 782696976 904371371 680274009 814644823 205966328 758638842 280876361 893070501 902768383 969507730 37367171 728061158 892577049 553199833 680854710 27304020 247964566 199313819 675512278 512882249 928065350 714370022 60293539 885831600 643418178 569575118 494100633 296296535 536424041 636272617 901457861 61832354 157154939 204290148 854610451 419467172 880277934 457233216 688039686 138311529 141904406 167210755 340495634 672270047 381736229 819405812 151569625 11154272 797398586 371074564 180167803 992095056 719730183 855441860 649838753 996038132 910271675 740367236 927859298 110542422 100487525 376649746 775097293 573306635 574567912 200515964 247199268 719636773 395746844 51618799 211978495 104595788 918497206 67752053 683282206 835389582 146380583 892906306 939321343 472827824 6755348 525981506 103358951 936410881 160363290 142673838 290536867 843871161 710357631 540961866 286668310 520572709 837290029 23222391 632297801 464814469 133256696 77328594 415809821 813097383 671649898 516095013 248371578 701496558 840814909 379490304 330687902 440244589 435927529 778349057 478177876 146116726 315515163 410889775 370310446 608980985 161773254 31771914 486548364 27216358 470518476 116713690 544899617 526165536 121830454 327191184 756817657 423363428 368876898 834887170 3109441 42005619 860216341 893484994 848462148 336260035 715229538 309103511 92125255 185164036 232269154 154151809 938466585 222569210 69850549 817266378 554929376 964533274 333310872 235402854 222381874 788582705 795272360 234779968 318154520 404921193 639766065 893152010 988858664 285832941 699127903 316775190 345919636 457603240 351559614 342653661 6105162 953440780 806483932 838326292 39994845 262475903 225954158 137601578 759861374 481726275 192164076 200441112 662109603 784063348 235053886 963861021 381600151 820717741 927692655 125585953 424679390 376499139 191689806 782238059 314609352 115200702 743202592 446155145 579377884 959636127 877377096 365832486 802555045 57174140 722116217 729001257 330006256 235611084 564086464 249558667 296446786 445727047 545795108 245189603 396515146 991498883 337765280 300770106 341899373 812516457 805400658 71363699 12216219 321603740 32873597 401578063 571238110 120320 302848359 854726786 761501262 412740279 57270882 664422974 204520409 459069420 240658784 213574653 408581051 753940444 647506258 337059564 671115731 572676394 422829959 235708929 258305854 235154074 111385261 609644147 448640329 887038829 613725383 449709049 68621910 241388412 180917110 275975735 105129292 428986351 292439300 359641937 6150584 381479368 992207113 115390115 514387542 272652593 960986931 248265257 955149946 959291507 325944206 912673261 837064383 591506850 447237067 222136759 655719511 968957743 759094105 985606690 28095900 896745778 865735771 9973520 41204965 705259999 744152177 469056723 543513984 664403077 657070406 256234335 204563289 441325343 332805550 651053421 628664702 856953857 844808174 249383862 148375633 572162094 926112288 741174775 522333572 867509782 927985169 398418347 623678787 73831294 119708110 522867964 571585567 666528587 500057781 40751179 33333538 815589513 130059402 339109631 241255382 331731742 122014222 264218613 25940623 140615078 865685740 99513479 465520565 132834378 852276285 145757502 270599830 289576310 472672681 252210250 782238059 923402756 376444296 850885583 28244188 184750645 495836788 397501823 572002505 143892769 7976965 685877319 96813746 339192887 565871478 796211349 524581711 699336246 203776850 966497061 548663687 919546107 489759067 188470467 645559725 157582627 687745686 405350361 103335631 95300136 939948842 150582420 626925662 817592896 233324365 391915639 741513001 909975180 330494150 583716467 583714337 808353416 547498618 852261859 183206833 436735796 329563314 488833677 394371003 838001014 579042149 921211720 969286953 416572111 390571083 603583268 739285180 232175025 970394837 965752682 66510579 445541743 697118592 252271017 551728960 824248578 720823179 310773996 944795634 956082823 707588422 505451108 419015016 855734994 513778259 333784207 937354177 505262014 855212677 781109215 358597078 583588779 777417215 600814116 991011327 807990932 752211458 821712404 588867951 363205806 322147583 883760179 252413236 934305610 939891008 630658881 714877356 732260710 364008556 108692298 372984573 372444274 550773884 598467379 3623287 202070847 975286655 730619765 341319829 437269348 186905594 958168960 573822482 757752950 577500468 95994381 777522870 733518689 652940513 367097542 429616183 168229185 930359641 263240255 839390753 527651241 302473165 636561352 463272080 505334101 667735607 458919221 707899312 360396613 698420423 10942017 970389633 701303221 654639353 540841838 660046731 641029395 681324539 977558924 959332261 537365712 555264206 620663327 794938873 957869431 458906521 555685501 46407501 881022941 997411334 394064869 741367163 941019154 929518896 205011425 202470591 934096670 287403919 447039856 214998640 630773138 6884045 641911066 669937615 673671943 610366075 197608061 829181683 886766537 938466585 927276675 655356219 35174490 269649420 263008500 817465059 318825290 66524259 182508861 151375302 114694518 551673618 28425272 327208891 305769994 646278523 667284822 771276599 111284117 128666480 888315473 450013468 671199995 350254104 228841477 856645125 98450116 339425613 554512975 550144261 169693353 924150345 504572949 90706309 284029742 24832934 732094791 533690477 458118914 622209129 829620983 137491888 161779509 212811767 905062591 6986247 813824335 364601424 463739766 639645569 432264406 849995818 92881564 100696571 35797139 51985417 654390474 332341621 648881555 132061377 788088018 785184509 283463830 923351838 191883075 311771396 17971714 859480778 120236478 32388712 128588508 418455664 395416115 167737765 5002130 487440128 836456469 758555708 796880516 297497665 696219040 502194880 126512331 237321869 147507532 671825304 346984722 938697595 538369258 648560859 943794606 950145552 275188482 500544706 719236325 808409551 181818071 900665808 687085214 593188338 386644437 926802285 93154126 80301602 820764740 369708321 703896811 786517802 77238151 788111223 268205467 108666345 554106669 168386952 749204138 465191083 769341918 890811524 886968873 507167999 809686535 857882773 657345957 439657701 919034982 677709797 88006573 766174814 729260833 258891128 892855485 299279369 588290078 989999293 505949454 719908309 638759096 144626598 963281889 370124109 665576842 864585573 986979354 358148825 35938307 797390029 749405294 572300470 31163170 178928749 994729377 903894391 614763593 871753058 844621999 197334398 745811423 292088602 486096282 430396897 905666594 965303141 537421082 268019518 872694213 60141077 30849997 610694074 118106702 212580072 928588486 402849184 976542315 362455320 211819074 494564889 513550568 111864684 287026042 806065897 316518042 697639257 277328818 741744053 139078635 64272509 991796077 323430161 994816709 715392897 437103773 519011232 621792211 464234241 254539137 665101748 498954880 816668269 324520960 885669691 867588612 616867190 251838155 395493073 59676462 662815592 462969428 489288089 286659974 667223192 405118807 843564510 260311891 494135846 575384585 900755816 496765063 55289765 582003791 698751513 533374404 892571379 761381005 911192430 196744526 441484707 415575009 14377651 117431099 311309462 168122567 50450983 408661256 500301026 436073316 597594690 650668433 892914077 760320395 17349599 238334141 278582991 120777506 836939853 891962734 720705350 711985885 613766035 986513983 46219890 311744844 628241669 985102615 431715600 277364479 61600729 637833160 853775085 655726132 652767226 151335254 312410632 119212724 608609515 919843005 61617970 609544731 735363422 774210119 640536351 920955473 256244299 643793865 829303608 553311285 568955025 904523592 605748378 220151801 823625986 900338074 611589252 878095510 600876983 676241271 624746682 351494681 405203596 848617227 914608017 136222280 11888608 21255943 614763593 853565646 31769520 338806750 238178112 258793871 206906920 953620048 66895646 111216656 444559832 727947738 134455034 246712266 427882918 844339405 567790844 939332620 922937241 64018166 574541964 101720630 405893564 383091660 572570767 441514006 103032957 998239278 934422767 728131034 631518882 854574067 28848747 532296714 610705371 557087827 360670140 801673627 99749547 180167803 826559710 7634956 264989413 661003238 585519304 880356845 259087131 866780328 175057996 96168663 932734795 59756799 425768143 828157474 644390779 59250781 16132617 283260166 547743729 397683506 89466118 803092016 6011611 373093025 377709493 711882259 408457441 942314751 446588589 921077761 110837277 507565644 610771088 92836121 776740052 746731406 745885479 633569613 490823916 438572281 69232753 579974084 615672294 925245918 271126947 904536102 680838630 146589131 242676627 48835111 515167511 743843630 769310429 971403600 516972509 487047346 976614258 546220378 562572392 652039181 980540610 128514148 856094384 298917773 208196878 188457672 590374934 135035896 603804282 983756312 392926272 856750803 583762328 817522189 60924222 103883587 625718239 740154361 103693215 430498922 303342820 361647726 686259915 175023828 648884467 156422438 313910864 141440340 733683109 665881967 12554461 29796333 356891668 420393857 48844342 425440625 537915710 909298347 543263941 570380698 898768823 843057019 446651265 326428268 48841654 425565944 970151628 839702343 241786762 50351189 259475320 9089014 956575254 147425047 801499291 135502379 343812846 244880488 662170588 291187362 967190513 632964449 33404118 363467228 734452274 618371929 439652349 939424482 647887649 271534874 687352686 371407611 815727344 856360482 87688029 355298263 330022299 298348639 352096759 318834273 312415530 502894972 853225663 958245055 427546113 466125945 985486927 177863638 372128378 58060635 715096272 443423022 253089452 957082482 672631072 613359183 508638473 850885583 780666930 132174214 467911713 953395783 854069920 807881315 288011131 81557467 736998155 224286868 794489830 632594685 10321502 114290613 531843650 946532891 740628675 241757341 800004454 441862474 42890675 796065032 726691495 883020596 273117443 171046534 388415786 493174641 89270693 114919549 732018793 717950782 161802750 211562801 999292663 305661178 912899606 60045346 593290314 63968087 991509921 504654115 863953244 869500212 513665152 849757028 421285843 667608258 791499227 245636966 873189629 955478460 428018847 353479795 559423953 235377609 869712140 197456713 860455300 929798881 427546113 833837081 486441530 617224060 275681184 634647116 268359827 566881237 562749135 590353512 671825304 994461365 716310252 672126161 475176013 730022105 797381445 7487924 357366464 867563193 393119769 632169938 276985161 156043332 823615606 92500267 235004957 927119102 86385256 340888592 315216853 599624440 936196039 641767805 654767444 944788333 919625319 205064503 157443188 281452852 888812448 928104929 38961540 345618886 77306316 571535266 153378216 69323295 63884183 999024098 178117680 470989019 394123116 771659024 800282143 737013679 964321628 582407026 463853310 16493779 403991494 588381017 319181787 576343178 919524896 781154958 525377431 970963123 158952505 161802750 471061212 98945383 425565944 676086953 849166567 333589684 736256426 65367470 44499440 925797103 601477604 900755816 378911134 225187652 221115261 739859887 453622030 759737597 9175507 886533316 405659691 56967887 924813797 381527364 85224607 391577808 630226767 23080129 315817915 25125623 31460915 274744798 236187715 486100325 20691187 647125730 316339291 136484374 45540037 427559131 731525975 835765521 96673996 868201260 214429097 55611148 366358354 339109631 882971763 422456233 117036877 594532397 649523168 312548271 5560182 861522706 156825104 376430488 412926286 748738289 211285496 394107167 675662870 417957724 971700002 302636196 565205443 929532247 269388139 276163742 540380960 991160122 777884015 618724186 717876820 204445335 789744447 882449679 406781955 745517527 380977482 43613063 793700375 415224707 549107642 27170381 383123904 818384917 92559475 432088803 749967337 89813306 861522706 738740574 368094732 199605568 567352450 225623436 471955950 129176863 661727141 490430823 944934312 374160859 933225484 771766267 33818685 500654259 911118882 573552576 521440370 58435601 626998515 727092941 427969137 44141406 796690761 13482858 809169349 246857039 67121033 956082823 772681003 123505893 751080673 971887472 608877984 838229352 616915443 134365280 728897227 458553954 797722996 472451037 427704690 929419790 788038074 373269414 705101243 846702199 442964355 877953406 581051055 633612796 110825039 937358582 979921177 149540802 975096083 162500082 967867179 439649017 263698998 843846823 52919389 442185594 330414410 68282472 723767629 615376659 594944271 332546427 612954778 715200534 110449735 187926209 354424475 275399909 343382073 995792489 65988984 316648343 355005815 697160719 407160045 738704100 217333244 515708776 285055113 237986153 883954787 332714637 498275232 625756321 747076440 961747159 774761625 610260189 670938763 768616664 542244250 171067492 525120749 247955169 496990765 61665623 192353159 198939710 512782021 702190121 878805189 814758904 955847207 550761627 727385126 317056733 307259440 566052074 228016844 196512550 844856717 553109185 622952443 119128511 258129930 841243437 644340047 395999173 148696565 212299290 492925139 92261571 528431104 64185274 641732407 302088085 149087484 836069017 363086224 416913587 355787863 5883795 709719999 419566916 399093722 75737373 378911134 102516302 49918211 425367484 7089397 865708269 753064312 319143097 267917755 320848358 725168665 861179236 794706294 938305387 624783308 648378118 572269934 193971724 869275912 69810319 671480862 627539351 119260690 907503499 803679437 485689062 129066521 671780036 737473960 164392622 273731268 647907412 802249313 341429743 989045293 993165391 579198580 211450229 795268273 533916964 851922915 78116540 733847254 561811042 220943389 460730143 327883210 738065303 210805484 172297182 84815512 333034066 507659491 610029878 45317284 107745876 62273018 137043230 741394707 34140384 690597864 378687720 212737754 50566949 54956000 978172116 870928348 34735429 625770288 796220718 17518573 576705476 133760129 619752283 427279053 689235953 992612694 28930 839390156 784376754 44281027 836312643 173449408 390626073 297919926 357875863 580261592 807676281 195535819 223888860 278129917 162790780 535448299 306444046 864169457 673543700 731310253 595884111 48912169 874370056 594068170 220905681 576383807 716626940 449218449 937554471 527430438 547267984 957704555 9672286 638960393 538390766 958456309 67551196 114366653 473124240 66836074 543856058 365884513 229201676 153171807 332174108 803475577 803821664 271299948 360850179 379372276 110151817 997143684 406669346 999965034 153875973 138521809 632417362 131949779 349640113 581998301 736115144 34605505 873818103 150867065 929505139 70339342 267508201 158259484 199073628 563796370 659985083 822750925 474071580 61688897 601023461 951997632 794132190 70339342 464679201 569951082 433435838 370936366 967819988 162362405 168246636 20325094 492691572 730593033 204689870 949852031 943963972 219253146 91200796 89256745 78589802 570860184 940844375 872963292 818136261 28560266 549256292 215444204 883672479 410070725 112986704 790373608 788112942 723628190 817996157 428177746 448887931 440377824 767659973 18461677 550423651 766362507 849821877 270287683 837851567 600963089 8051267 773971537 458554510 312883750 700173051 440026482 838271468 827580470 317213466 250429695 875729318 594653046 953161628 148195039 83816926 318730425 565998608 309722299 549180476 923206616 734425622 345459259 159869640 817758108 224696047 392548565 765286169 371858870 390706392 24890265 634575631 518475818 27098420 998716901 511751677 231238228 866785826 739615192 58571629 450205168 45617969 271668754 129996497 897881906 408434276 411966540 28274995 806699342 835424447 861956469 249558667 712005099 332353873 291490111 215325400 898985702 296616166 998095842 857272011 709066489 518618793 477772307 376934247 138818855 373609054 451215937 869066898 339871433 747238722 84090931 789343694 278838039 648884467 581830054 862589015 184618856 283996389 342076792 995030739 794737990 829667153 782912830 631609939 7386125 907246888 944263788 739407428 411551167 8879624 390906162 397542069 79407139 854030099 459610121 509085636 513628151 66643676 539990104 415016315 926734367 757038781 744174277 150368216 208259024 860482488 277945491 980131132 978006341 639446627 319211892 153968291 594641306 644664931 510362969 212782563 270851571 874538229 711911862 268846994 609815465 873906634 280148613 143213904 271761386 217606029 790986795 162274196 629286841 160358962 924666599 946345243 764540947 891667689 55030284 868097315 584398231 290959522 71130256 825847530 598741463 954992168 896876 40892130 623291926 27277636 7314148 703010476 541053694 934472599 613829922 760009889 11474947 788628830 80491931 200066831 499349499 51221313 522992104 99749547 516923172 605483153 838429014 148029166 124391650 741185937 187446112 766040848 43000557 962157323 43316418 428673857 205871639 919799808 345995566 79750824 448199661 874889703 975422074 97795792 7312878 392623365 49073212 639515044 418238233 295585806 527359122 282730228 458362574 564684235 979451686 716290360 193388576 548283616 237349796 651752174 185641255 547595026 772573925 221057542 921407157 444854988 379777051 970643010 554697441 828865564 964682618 510194310 471367749 85863604 778108465 87523467 475733171 222008155 737040869 999883851 592553135 381538236 6530235 380532322 808653657 334597096 268285267 150054186 763298986 238674562 984948098 997657720 749937392 557306737 876540535 261062922 152442181 545532716 370720506 934503279 297964319 618513212 419727849 517934400 798883985 188167965 802448950 508306531 354092379 761670441 699876063 665405194 663636449 252897005 910847964 349883289 445135358 385586338 741861382 695057500 744719502 420130664 138590358 153002496 432996732 541832003 892535144 689590305 249832722 775557286 613467544 735842582 918172462 665835575 661856707 303683771 196744170 298973634 947826464 67201264 720848003 263211330 820756679 475628297 192753510 81249648 511257357 823380849 535027472 827644348 140320451 849752270 522968522 485804841 617131757 512694022 841276634 876844135 555617550 781246996 151302625 271044382 482656044 78944229 254934196 35734220 555472170 607945470 692523950 776148629 529452965 887468153 778999939 327596852 233989473 502656068 188968510 338429664 841055311 698647692 993538393 997109823 117740509 474071580 836657643 32245851 984446278 948024192 73568703 755615087 131322566 427437066 234181296 83623740 854878033 209627009 731203970 586270150 18456045 373570388 626503330 494114954 157236146 81175687 452280428 50020679 930429658 458701564 525935626 637023947 764328166 266316462 415016302 636765014 269389245 996837342 843145346 926523116 339847787 179224386 492344731 334754086 952583995 883441445 50499453 895856681 482445235 491864159 249125443 303850083 280783269 41603008 619306375 374170817 936793276 994878696 19886712 824219764 781456080 873738504 11421450 616464963 600864381 100547462 575835165 282278416 406959007 77503332 720296406 50477148 456378505 923447489 239134317 473072422 91758714 108417071 727419967 54226715 820372765 953791180 157384793 690562813 81693328 19633424 298419661 41872135 869794553 463927480 982862428 713725999 854775428 361915345 246373675 435329810 108772446 49869396 170198391 278715546 939598157 403365273 222362844 96923676 192004074 782170050 905018388 892162893 3352131 515920276 26230021 998927579 165959139 513455797 852398108 819650808 272651352 311782477 641182014 766696832 123643530 664102873 913127287 123800291 947914218 345467288 580788310 711263137 661872426 472988173 155359839 719190745 651239802 969365138 238154648 892006610 198611676 239960476 535237295 764497382 407262950 426724770 721428394 137601578 712014228 925749821 842014028 188590520 455531454 407016127 548195958 99912414 876863199 836334264 74116072 226469675 420648777 789673667 330996738 818650619 397448873 805100330 960335999 679550678 680496565 617722010 522227610 260735227 339514194 892750420 879536648 36670731 37571406 780040772 126685723 13262382 664422974 175085426 632414365 249464200 978971606 637704704 945296518 564996258 250070504 20415424 881366977 802128558 319214677 639704629 473099668 347709210 755880794 293890256 289612133 581947192 682972761 874538229 483212374 97093255 697791192 608898280 507167999 785549988 148238182 982860933 548077776 549845794 267354507 385843806 241693550 739446664 249351352 394741367 962045166 422284716 22306634 603343697 360800320 118454929 902004243 512220952 425336278 365599693 146116726 277319290 290943267 687998440 951310571 714742194 316945063 799385165 528563212 772171574 818906885 362060606 638175534 366377956 707790061 991575620 144875997 221766885 704496940 507503017 231136738 898027911 870391225 403632715 923229344 322862206 715839999 308725883 581049242 854023898 861081663 833800176 458118914 407630451 102325852 674365720 3754923 469803716 136316336 163805103 381479368 296382394 414490106 685752954 115979078 909807263 221592840 991948741 306759818 429557426 60782610 405695714 981677535 186672668 985760716 414414143 545818823 973542743 736298513 66576383 456597938 966570309 679935151 47358231 650556375 499913125 692853190 221774406 745765732 236325260 615586669 623360855 308702464 422203607 76910157 108003155 567899920 508164232 529328758 744315930 645723435 407876753 557898259 443835724 419203329 367615581 288844271 134630704 470351126 930537095 404183643 65673612 724272062 927317678 2928069 364160121 25068691 227433924 629532605 356004779 906240174 926734367 827807321 180938785 576988416 543063660 587392866 331775955 716878576 156528009 448292966 942806274 597022130 674713387 906447676 34237221 356154629 162175186 152631810 38434978 695539270 419108538 51787728 905407089 957176415 607371019 787070997 618482516 480189408 120514017 468247561 945331275 999965034 754262944 102356896 826032867 196759226 128652794 675877043 269616676 126294679 704632821 114958232 274897758 918892219 694360083 309699022 682941065 96293512 504870166 733847254 629630912 645566078 484902948 591273146 970125929 669512748 806972050 844331373 882469906 807533920 932194725 445793235 845493778 928388223 176229336 133096339 488693948 280018981 11882594 719236325 702982090 396283701 722695754 442521951 984000807 762177488 111400733 714169758 668545333 733020467 720484957 458906521 91139281 784467330 446868496 611668821 519011232 184972349 194086377 826502790 745384806 298154636 914116214 916924317 984399788 231400105 227424825 404437763 984960726 212931986 15506695 536622414 827133720 882673904 861171250 972050018 125341773 369106853 296462835 795469605 602559609 765977996 851087798 598256134 366975432 625648151 207739798 185464149 746634827 299555864 65888873 812274186 888066912 968093781 520315854 765371403 519388328 801059129 245135297 102262343 808353416 830527718 606271377 865487681 719259990 285738433 281686213 197016629 935896130 446190637 972050018 690894557 882829384 340246536 978598005 938218163 771391286 24021554 166805372 441927911 215896665 674735063 370627497 281460535 834123330 460375672 445926815 513168180 164490893 969700409 384393412 102609813 942654525 80581542 212195247 521120195 551809757 879370295 307387451 453450184 620909457 188239283 364123901 411155014 768240796 432088803 725716353 352569972 988982394 362372216 318770972 942677837 537744674 152442181 339423702 348947346 701448735 307987038 146682835 292003384 935931160 249286949 670460988 429750006 879279496 753904370 375630778 153247849 378008440 819374203 365366989 469117226 172119469 895079015 334122769 639599671 460765646 295579295 928362507 805519243 938016671 837579322 842194146 101925373 296880583 168201253 368931147 978931542 121639780 147954964 506080827 826176619 788767894 470985403 518953984 762668278 914412142 428492450 171924095 45609426 825810508 483578535 990826917 145355641 306669754 444490968 228289478 818230169 32249152 319352618 808053568 163853831 205529268 7999791 362489400 831337887 817504944 29657744 594663368 302520238 621476206 97487089 669661385 495550149 615497982 992601325 425367484 485804841 608667478 451286550 352268699 330910034 525195544 776033035 213184090 346196434 184136489 874606337 310186649 841782572 352484320 419301020 324693899 641925205 144801519 493002897 475601768 404969365 800121140 892762922 22010144 743815534 39028444 123235314 167776269 658368451 97220960 557110500 277392696 698747660 25542602 999168077 247586505 201040642 513038134 29309856 257448074 801094942 115776038 610193469 448196446 202416572 12061898 173196971 518820810 820165950 960089105 407809860 720125726 103733899 104595788 700484476 9236676 802495855 509336891 337488254 707853459 337050587 268109820 782703388 596149976 112027974 448468417 25553594 262140113 796680422 145629798 791072920 157960505 825985665 829181683 853207968 105506087 986513983 845484874 430772076 302249686 170265463 733236287 390225307 964313654 780552794 51492153 680326723 23162468 192526732 408836601 3342619 950376125 370407754 19008099 194581684 271917309 506637517 691347010 839237408 769122108 942164286 169176090 353935029 985291868 193479933 34064593 234488575 999883851 793997406 468020636 156825104 416788595 650816866 215227017 36912817 432582086 276071974 110753705 238624125 568563333 740220256 866888383 659942075 388169150 692044829 509612016 29658088 593692471 372810479 943478918 225375899 371462426 329691392 813409812 982721479 11085566 952323016 805210613 361647726 388914539 148502352 934701658 138867605 884941919 70714667 816589122 888785177 513468972 31099561 625769145 151683241 384706550 522539678 319748576 935327900 102569629 816901255 623393764 199019991 328922846 976350155 518813532 388183056 691871100 92430296 941975105 337810348 622378159 21060828 649796490 510171234 833069681 227246193 944471662 435329350 947352511 740967952 732119158 31026986 176788545 719380103 275638571 176678116 173488062 134033663 671866501 109857003 191967687 645067227 66806804 348951099 925678296 222468006 805996000 838545907 318834273 363955605 882587655 548115004 693870749 195518037 810095818 752978344 348807126 889742444 734386445 971496753 408461941 531692633 955891065 574587693 782162301 389481983 394354625 306502458 108725152 885172840 292630471 788878557 792136808 991734442 607636886 147811620 466760419 553380693 325206931 706817248 854903661 808987416 843663347 855084157 833705977 631138311 705718989 547782825 36861568 612867576 210214015 907386070 493556453 803213916 698424743 724297047 811262681 38735556 478777776 164826482 826924683 944492547 630991626 490095024 835913539 366702788 413444865 895660828 58186475 281811190 566415941 248637347 974002493 576259326 447109231 347012785 681797852 774495657 523247563 449173788 394283602 572544595 155832376 223318257 500571515 382769008 212445034 364405736 257133941 882812133 268141634 721086915 903361579 924106223 229787504 276779218 324641398 304687054 556311653 649968765 721306725 769848504 609617141 906108145 897818267 590584615 969974052 937510460 101931003 355273022 954745500 100974869 650333685 658368451 66902679 457095951 758554989 805155359 876935538 57290132 793589567 342765942 820138932 867306682 641305071 52096699 6586035 126411171 480179579 122182155 870355908 493968774 254271393 975697307 503143907 605630328 699645696 207180667 185591591 15795803 113233842 42392127 534023208 747724102 967968482 576446950 529232815 760446596 739978074 125458918 489014961 826037466 819167814 534934622 541872331 33728657 413126408 77306316 13036607 445191368 429848930 263992313 415722007 948545565 166500619 726507713 779834727 117959903 825223995 381732000 516755425 310591648 191945120 594571295 929068492 264390284 469873825 585519304 886053498 6721674 708458989 185857426 333075211 248887852 807680139 793589567 611932807 258804018 213690579 604808786 353304221 707775014 480124833 99522723 147573893 687485069 317128582 63111204 961200385 334404946 784862970 86872918 546429942 166026431 486717734 873191215 93404167 73774734 376035182 936163065 484856023 335899346 799917953 586330929 584575191 705127807 213353504 835227202 825237627 106348544 555042944 502833217 761756508 885723071 805687808 736928190 588964090 613933660 105129467 693324003 545308563 547832222 282322093 38489515 216914715 966030358 628351227 447383001 63226910 957084988 690562813 480110731 788492690 972680291 103180123 218838531 466751269 613704974 411184795 555252154 359682293 492065434 721149085 317911837 929719073 101990481 536468493 472900605 808474866 395900439 720043916 917688654 461847669 397358115 384862537 68998034 677840345 591538256 830429979 158698385 773137606 260452223 278375164 358942771 617807294 365842693 219473277 580292966 844708300 250638470 10935302 343295602 658044816 228558120 301198535 365384007 856172496 788354688 790208075 424017379 489822116 31623013 84668281 571551329 132324175 867801266 645292127 284789013 519200804 404711866 459356408 524959868 560624127 826584583 275141469 576035681 653850527 168667269 850724164 703002295 274140001 697167641 371960760 423269700 354921565 830958881 765553646 182336396 928117383 741768032 500057781 385833750 609971716 149142877 916428637 825341032 547752650 60417896 177429242 284754010 479866392 877291958 941699396 185340709 738129221 696127504 924061591 381152725 301329923 432642679 748990661 290936031 928542674 764165998 77408984 671916582 984484017 625720055 28811159 239581600 434766121 604805432 578228467 854994666 619720254 659045507 368523532 725932473 590514948 686193957 306834185 664489773 508088048 294161635 478690962 329184395 987074255 337929395 436421321 898661381 553773728 488698244 214698672 519773499 983199973 101933198 65557236 148300445 360705059 335454931 759420492 524642640 393874544 42005221 437845897 553998541 521149462 781034636 26672158 522922705 673874625 818946963 232454571 848147228 853078806 744779252 458787004 544654268 951793709 697295485 544864226 186628601 35336754 385690706 578672808 199307887 974561319 523584328 570253631 640939087 12898214 859589122 714959215 465597386 768560889 485364389 592422443 8998786 357231065 854190585 826670222 106200608 36670731 597800291 578120984 323496064 169895539 822962304 905321892 880307952 563066050 581341407 876940611 7566661 487440128 569874412 427959955 658729065 395958326 742337484 692925996 111385261 375218472 31238398 368917588 363625018 601911408 455502848 225187652 495550149 991936070 788696013 487978779 57935565 304365714 855984626 760086356 640490269 960458017 747444813 624025337 731993806 853199355 977383074 326267037 681735992 374264389 988494606 582826623 985129693 409706415 457192446 524961779 479685721 646307714 149196524 944293547 401431515 369635060 902956022 389172473 773353331 958456309 716358210 878072324 758117594 561755901 781537549 117265834 313836900 553199833 361391847 514130521 785031215 523502449 137617530 775067779 729033252 905927149 864406855 426490859 483481267 802957225 367341806 745055565 896861367 406513468 353954485 385177393 128950710 798281990 803216384 63790566 644986820 498863980 179423869 213751064 835590100 246725942 463588423 414753839 1530542 9327175 90377322 446029410 667793842 521906575 517105080 121388330 545020680 672612436 285890567 704794360 644998863 482787831 554106669 459237537 899933687 600386093 878095510 11810282 125413634 975565946 178708130 80441357 490650781 240952567 695960040 134491764 721732872 564778214 837765489 470146172 591067408 901681234 784954685 979004394 725170524 104589757 12736416 300111057 950972124 567216405 277824991 148730580 439261407 948303713 542590908 594188704 854767328 231576933 33648182 820011407 408284074 407227056 892865029 609850403 214332695 359587124 985040508 268493727 43271407 454477894 239985469 177347013 564728626 551150539 902342830 264867735 864752619 744857121 373223725 366587571 678781923 624015913 270267685 36513395 898210017 585237809 350062328 334408831 832890146 510362969 130675457 968007913 860455776 792406517 888709331 624468605 159232108 277318 879895073 372133866 992355584 479925706 952026282 775319568 209973085 162047036 49540946 935660388 290372136 604021452 936750445 276375081 756272874 544536577 529930236 688071154 305367443 165974140 310323980 751054862 274801970 720332842 128694621 61074342 816609479 327225450 695982577 530200681 780027976 795031573 76111831 410717207 745787985 170928588 431298703 729433873 205458124 164661959 575531610 931359618 693056468 855453520 190357434 732563013 53551606 921943562 294775221 431759429 26849975 908279290 237915994 761068166 27109902 862643877 316339291 859088205 402475953 942667117 644553266 664317113 297455349 83795742 88331940 370800799 653616780 840790663 819034822 76662408 584942160 506011001 666385316 154121176 113275999 111893388 406584062 671834865 612566500 464739937 368691268 600281420 155602006 63618354 298662263 199812874 602137128 14160314 500466522 199355295 288657291 600146537 690995129 164647951 350780952 461854576 240425847 86332677 722248031 653843287 823943621 618860664 981692800 287835616 810801084 854938434 472320778 316132594 918878918 69810319 879768455 624130933 929734643 816767742 429938054 908546493 916333390 790986795 87505350 309411875 287196610 679629006 335310041 271016597 75730376 344365506 362911894 187730498 1400016 823215006 358049164 363374106 387809363 299423281 738430236 93415992 465064798 366648874 565878887 780532270 883859189 233275828 192197392 406191150 959115308 813159781 189220604 640049861 164229446 21950689 804588816 848821217 649796490 346192980 231844522 242461135 69526266 914348530 960142224 772815435 735957706 654916661 788582705 611207447 665077098 122412988 999121875 252930492 604950790 60784045 740480056 122144769 671114046 519200804 388415786 471204799 278298322 649838753 28743692 214526072 106320754 299928309 875336215 316967291 939174172 251970011 498673396 689379755 741130423 24969803 86860913 339077293 496352058 107035838 411613815 629824618 553713847 177604937 386844793 103818007 667521428 700216116 467032134 436247825 947428775 416299678 86093624 858005834 101370427 90978527 272796165 442851993 463853310 655337057 597944097 822611116 347501549 565009468 964120530 538810942 956774117 480941664 277319290 180797276 819814702 538026258 181393522 607582213 335288068 734860046 130414937 169438111 558133638 688387090 106292480 408551899 775007221 698487585 327766091 13826604 523792956 845360534 848507490 907095763 522484871 138992270 231685709 247394708 111522232 691652988 149722756 930788871 369254881 15730211 511900606 289911797 784063348 57944596 169266792 691871100 914498677 479953188 266439362 19605131 406283083 617989592 141421933 873513812 338492640 751995240 148193566 349348633 698679868 573670626 575379476 725167509 346473261 942058637 883658397 745981564 660563047 511996116 955922999 989821801 989830532 344233424 984294368 301098012 757404176 539800663 409558878 97335431 953501819 482900963 303482135 105907160 514279141 310592838 338209048 611155695 428132504 141692841 557204330 773051535 770816594 309362130 856955842 669480986 506247462 963185612 20846838 952035712 923042221 305271894 573980960 207129855 831965850 531012159 256418075 421820967 443467874 538540082 863147719 189793903 676395928 253024589 98652868 708685848 207361517 766480273 417689595 657757262 949640039 451617044 943794606 463527456 15312179 678342814 241481625 560699782 822026013 213819732 510237603 960029546 642696032 311695397 651265070 287786637 83244052 45247142 783537146 854655426 925021398 621044632 481469586 951139959 828431107 701818361 744427892 787750080 342547078 203596056 801738532 877189932 118651141 608276516 719120401 263316004 351447929 806388205 738275845 325243667 628616889 500331187 467599030 22945564 372444274 600104517 7757803 117098732 954156376 347519003 724818338 535770320 786362648 285432446 866785826 618316292 111007973 947006414 642090073 751022540 405325124 424080157 419283884 363293889 58084019 407080096 891601091 844182802 442489178 643314877 873686593 980128494 286699486 715693604 642875038 724320287 334317574 796926687 952665743 292764107 518542863 208346343 496341527 383869818 633108833 369195654 430028078 700774032 219409888 562081120 912947914 991293550 654751726 753039960 138775695 379326914 834790857 423937772 912351214 815107418 980761670 872076100 841766883 985567751 303771990 924880447 249784224 760552873 449636463 404507612 460581980 917388226 697295485 337635417 917811414 620180117 2935547 983376904 59291284 775752455 316502839 929089674 457479034 261618721 190399946 952822185 577166121 770556132 99995110 986387012 859993896 922070476 957170737 380550406 927809592 645645446 195051014 667168001 298250252 86352697 567721434 630021990 152676439 788108868 903795856 277486119 58044580 717079627 848790687 733766958 616015062 705328699 661087298 657186386 419759796 241358866 291898749 425058422 342583426 516538472 920082404 346401408 736610199 119913101 879561644 453824076 594929746 808754930 938812971 698400588 110496881 251309049 228797418 717596376 100000181 762316412 902797560 188536771 993649433 104589757 236612286 40350007 710177625 671153803 264842707 565057499 947623453 533774296 172180994 53854023 930434059 344684347 862589015 415306469 315942958 840250994 484282581 718726915 190095001 570788363 877051492 57077066 155147941 798017623 803368324 33111482 210740382 857483437 827065010 49533532 748964787 30225882 981703052 234571053 43632815 609306822 395414032 214894532 76082295 14462707 384891246 99631604 558272873 972659573 565383522 197666785 629970222 99913598 728006731 301365421 575691591 796416330 467009816 732166406 912384113 28095900 795356416 973947503 208687977 960397825 213689685 780532270 305322898 366648438 522922705 986663338 745808889 776815798 152913488 575448809 432281285 926177900 57872055 594528827 289597304 942863926 626382015 525377431 429061521 491992105 794440597 394045251 393601941 121391872 676879871 304749083 216257477 763912197 422440424 66626689 175817178 864131465 923224187 21332321 895354470 296267130 786928974 456119523 458623207 959783251 714729373 719244604 777287682 705821240 743048173 496288534 163342940 908406963 295733967 474798703 454989627 429139350 833011486 259006296 656024516 365587082 38735556 502771563 986358912 127104858 698441812 105735422 223878895 508454462 183284001 86352697 283187823 874320792 945077059 658046588 844742414 876515785 717378721 412286813 350515791 322254602 762356533 165867904 614528267 482920995 790580557 108499350 758953736 34219315 342076792 568316704 591515527 466127200 278453240 822729168 195160871 533854560 855039185 699653825 488262543 785516484 37673139 573670626 879631302 173924068 675584981 679992606 440760536 348319189 728725946 910032362 130658579 486301200 114122981 792262112 189409595 300770106 884561093 35308415 289798685 602149520 985678210 159240190 798602138 464997284 445237725 534837946 502975880 474324498 585153459 53986578 837839258 596439893 750298921 130210109 225495157 161835094 845980197 574585965 547667737 947558637 314411439 248136171 555759076 899870287 352329049 426736267 142336603 650616672 727957234 387153803 147491677 905803552 620402403 630468627 451462775 42297828 388390391 71103138 592625254 56465444 948157176 322053802 783652896 180565336 333883696 340834657 77574753 671916594 814724824 416708586 501068877 378271512 245975379 47348917 886806667 844200847 758848566 407126562 997325801 790673442 209889268 233534144 92756446 567311210 75397778 958991703 766318940 503984724 378035192 850970327 139973745 144244757 886395827 94053300 476036712 159222198 15825546 687466656 25353492 311617573 583453644 319211892 43610050 708051463 873615512 165003644 201879477 2032352 476578310 80064689 8987304 426134346 492556869 571983012 46398859 934413819 874640547 983616263 178254102 806151914 345321842 928094580 299403893 370627497 620495379 812752989 626201816 229076056 841210653 592573376 277760938 936269260 185500248 998477638 607678423 932882720 580043256 890524437 640311605 714234086 724207035 772331214 149928660 145778028 648680304 816819921 754386682 971203271 565886466 554094394 276080718 430734808 458135298 65264365 979365379 728061158 420567475 235989429 214847790 695350852 302280326 360127142 264218613 832240523 539577929 890607555 329668277 865752522 559237370 803197619 431609672 834175084 119298376 456485454 106725386 322733563 642159610 124694975 184937267 71639310 242068801 296005728 112155748 413144297 20855860 424898175 902916945 671556075 803684564 5426777 960935342 878216278 803821664 743278882 679183329 334149096 335269883 703764577 648300497 409342253 132015191 123288756 562105539 755981841 275258903 428720973 9311413 60900736 82145808 108144466 710881178 951446367 122434642 957926611 459227551 175643748 389601759 646069534 433435838 906969720 823584070 431844771 650048691 674738885 930914169 598774203 621730355 415119952 300745790 630200900 242609743 157608873 947119539 570701559 612367979 948582664 452445320 57445032 21800933 806715702 261193057 791333877 373166323 195535819 786871853 100831127 97983686 213050809 919494645 480559854 110227161 49808731 437867004 747887163 12930916 9452286 404437763 897198637 32080776 513762650 754692997 114961277 212299290 255781581 104010067 602355267 477141995 746603440 479972953 926502631 57085966 192463164 227325715 765593108 366097570 144293040 914402751 788130042 875695410 505799355 865228673 341880385 165062137 845753798 569950718 391166989 844506218 338823766 765678604 445811498 359760217 620925792 567016897 984828388 868855410 971135636 161023515 116501048 389259655 53275143 743523783 470821773 296272814 984948098 768584304 612792059 29154401 214002040 578234884 818078607 536646286 983162712 47795317 523584328 282423077 453220601 730433908 406213687 465964410 323426077 431185578 416492708 461508874 599233509 943241550 166383594 358082879 46221567 925165307 511492233 331643979 457444217 383857353 841210653 682405553 780027125 921532853 767085061 872963292 262196608 764020193 65835923 699580993 464679201 605075848 939303109 21502313 564684235 134912024 95061056 410431593 703493701 553966923 455417418 103470022 328454332 153537575 946233370 690946557 59568852 225772265 630226767 151132015 503901769 50993790 944693288 134264136 684483457 46219890 997387429 883261783 972963841 74136288 486045135 544891980 905063863 845991881 720462394 572677057 436091919 375441426 901663722 284789013 383265656 216742251 204048790 699807934 401886483 105766713 792299092 353298979 47739789 81760098 596145325 767430667 811321736 255566585 620506770 174801050 540707575 122618896 434127328 37798574 490237386 648214195 293679542 196793183 355618064 479565026 818650619 321888460 310757404 208184385 778732577 873064042 845783808 743294770 433971801 757624342 957088494 231969178 126852343 997837790 712342206 577700028 219577602 311063614 557506463 351500419 192359077 572370884 955495877 117928171 845019831 966426057 351173917 276197934 427178062 872146572 879642999 155884494 570041724 244723652 641732407 504788327 212863908 331573058 417685341 365991941 347084535 112213151 434845330 557479989 4801696 89599816 786489018 563059400 558767652 566415941 697446213 373185949 456710068 428624279 908411448 779580135 661167076 766825657 436220114 777682989 721126068 485710078 547906634 960165250 875317147 237487704 601771850 971563196 925217578 621023629 614621416 113610089 35182041 147334470 660407182 539306040 516661098 379149065 921291773 624965826 963361039 252183181 589225901 819754264 70814830 588571823 137045320 721022839 517605008 211103216 281524233 130064777 893108010 819171641 752351726 483715731 792285413 154804839 287090976 332759773 114463298 983843261 914750435 923447489 887805730 826283503 168960211 567470457 578505829 123557561 379531881 309646948 472913984 897827619 585513582 464800207 362745006 281758655 48787091 277396511 412075236 972783154 79161584 765577847 614596378 115006651 971601540 561885824 93745426 929125227 905297768 868964672 988858664 427075790 797215826 237915994 72518778 834804800 98273425 719704954 94806867 740302412 113611494 423926083 518016935 816119303 276871976 246474782 927738394 873393948 995464856 21952584 332254178 419301020 328405372 275444057 607335974 481954987 634107847 939641531 940938904 200732332 702581089 364072853 638231921 957983436 679700875 364296793 747887163 849364903 87766087 72421698 97503074 932562226 673736404 100581923 476984961 441065944 476957186 883142433 864428366 143597779 685292313 478515915 652895547 494805947 220845993 582772058 825907130 127140624 692842017 663989692 802693422 674860812 942249957 716103392 848690619 985760716 362423950 534828694 752542777 285234070 615050012 181117566 856027275 617941229 217061895 707297015 916320003 477258328 234762078 61733589 706517195 198877116 235715942 354984220 558983502 968700949 579902913 18964269 139385388 572300470 588571213 418563461 297964319 346601165 537010775 183588481 49518651 483072989 991160122 884744332 657050458 525931751 592915209 487699114 995907954 893732006 737013679 347825542 512542361 690091948 902767228 714250467 996313424 44894269 216013849 68670363 246097993 817740152 191799386 38459199 46768855 781700140 863925271 348210945 473326945 92045973 726794578 267640754 425867455 126326715 138501627 528344270 435571283 943413520 759679258 749399284 410290094 390738660 954415344 64391220 366254439 862225259 408127908 782223974 336173768 13806110 800329249 416279672 345285976 99357460 563074327 373570388 611106739 136449779 45317284 546072978 233771978 312926551 956384630 924962939 415362599 445718719 392613995 172501736 284105417 614010479 291490111 550110934 399949392 804843326 645656897 595646260 523688036 333351162 393407702 325684424 656094479 476315805 760795821 749736724 648680304 205272144 849941959 598830447 64443170 806126147 108245683 868505500 413920114 298845396 38646783 175878273 58030870 642101431 970155753 56134052 782976016 692061840 454476543 161615315 229162268 86492109 226647173 502695121 422631172 168246292 375463439 784613573 162762746 190936595 363138133 812514909 624441577 993389284 347996152 866245872 266964344 167159821 653087832 745819712 106512128 777179881 340125945 260892615 80968990 841464842 235671153 185287670 387755165 932441324 730261937 950684491 517272031 121160886 46229952 243326137 20414011 276421417 235139066 488386718 758710870 168699186 775319620 652321866 680548301 926523116 513174447 992357388 547275519 625451440 811666475 92655765 7566803 372700698 272381794 115098796 847655524 967718021 264540509 856593597 473348340 226122205 170914703 899673058 156136805 491488237 661274155 396711801 846771821 4497065 151200856 574425928 639961711 269852801 554508905 184436032 576871752 150965497 158617297 69000572 650493807 156293743 571876883 657666974 839112187 125529009 237595736 517542061 20141643 734031997 369482187 734655432 749775333 880329998 881706777 663652623 435306416 664194879 861937955 787656094 358675249 287781123 644362157 772602049 191791860 597391270 672123458 517768004 828816421 729471846 219086372 327596852 821571764 927501507 422659876 559533617 187446112 78720309 309614331 356722362 319983688 432713044 191875782 691744905 108905194 959299180 686406797 837868889 127279074 28150659 672452285 103897007 154612563 920997474 340580285 170003694 127910939 4098287 743606222 174231962 277077673 602881092 481217484 208467102 401396769 738667876 480466068 32331126 251160763 621980938 429451491 181270176 617312629 95418362 732696267 935962074 453505370 986085828 874571742 633150533 3983067 780951704 169112681 265946297 381961597 48724585 178412347 797747760 418563461 435067915 438128031 598187725 273903447 557518617 629286841 523787291 969189150 967629848 28825945 65963284 592905486 646307714 851464265 703206466 398016863 669979174 996229420 41794572 146071692 780998334 443550106 780409177 65384760 461648067 940010791 449374227 212044595 184889282 126664721 892027393 951364319 406715414 672171357 884410501 17979709 361932845 476540541 989608959 722101892 38034015 969348953 284750671 503450670 467244736 675704224 179892761 490428299 587030483 857439147 488241568 915024207 594217431 701164032 318710704 948915976 277483843 386787486 854536570 768354900 156910557 953158909 839817857 385469812 448896781 594903023 539753904 924607497 915391592 11151795 553253095 661116488 429781378 310504310 519303171 936933976 809824688 548453386 632986144 932669352 862948773 587591408 188430685 759367615 27295572 22131303 368813692 56439163 718691886 359112104 518799935 941328087 986776193 203620334 939166000 630971837 350288319 808145056 352842786 534412647 199457878 206996513 270649547 104741604 408947254 532718407 527425086 864624936 992213848 677205562 683732301 792461184 954110412 440489318 89515723 257038753 401578063 558892140 642283368 282598166 471030975 780680105 121850712 888999508 824278645 157801911 836622677 127535416 140839037 375761930 846875607 332966116 25903467 963753794 583633958 596840074 761890203 393669090 557847827 617916351 64337633 894607280 645324449 307185129 915937887 49817038 813165049 413694040 439806388 291669507 410750165 6450627 994227289 688779002 85121365 819446115 995699292 219851097 788392965 959296680 703301440 324029774 558189194 432378051 914982454 630021990 247014653 373273645 793879170 590634857 909707746 263240255 131989244 737568961 272279190 820675490 210448052 550923325 101250202 539042840 712717332 553966923 733237201 971363997 46191995 78641770 402667244 539722477 727459460 905062591 536214650 69189147 684964719 321861553 561561987 633565876 604117993 148708972 11886114 640939087 469047126 648229352 114958232 307986303 293779028 470017681 181048451 926774098 426449952 84548226 403453851 853059724 330420141 427117985 183695090 513888955 449435170 820114587 967455684 540126857 381053167 755301097 407126684 47923253 930315036 600164751 832366439 572466864 66057952 11647704 998370334 204689870 699772205 914588865 137922317 813476741 795265537 242029871 527274336 100000181 749663250 555378917 591156314 854167624 265766926 226527751 702712337 575553714 282519699 931265602 887229946 159240190 991140758 152411046 97876869 126246987 385501794 77892640 807323389 726937541 817420994 652750489 837851567 869574938 404221186 222163775 151832480 879994135 449222955 84954532 469823568 774243998 170389744 562517402 610366075 690971794 165128482 207843329 896371665 379657411 834388082 897171868 626133374 977013310 400230493 751275057 41635387 840019625 594566573 121198268 968873294 370107440 96212335 183859955 882030195 31491329 597794689 146693642 828558357 56071669 478936895 709003355 58427823 415380918 443648994 457119820 807426989 299542895 321391102 38625419 773623436 854534495 224265363 389178481 135713923 265378086 754261454 396798839 869067211 260223017 252210250 951221909 373980119 826352948 112561183 884034756 397523160 89725621 186596985 202499618 610451864 350912068 58767798 34777480 803998780 38352372 309069429 914249699 54847199 337635417 568400181 752179191 176302276 763930579 508566643 38184464 225772265 253085118 843450316 332869881 719831502 340893433 502894972 792659812 922104646 275253634 276628411 650503082 724886288 514289041 382049993 696783306 886970172 639693261 743143212 191759007 784578973 293246846 862057191 496093911 134177364 375984448 925607776 294436833 799663790 898515629 962302935 308786347 280362197 246522243 904740503 249576949 731739797 339714301 998985290 54968661 349117055 652048067 617537315 850070931 388255716 193295926 231628698 771544292 393059119 230751788 998126253 757404176 800679889 115585476 931909978 971147820 205020804 779014619 923585190 348225194 557643115 836186810 501022772 899218087 397736950 53275143 271599449 96762339 551771829 35520230 475544304 660793723 363144149 414529188 763930579 231771000 610029878 930429658 263910446 339605525 235744339 169238551 600671288 189165096 932945629 875655401 864030878 607267493 976333352 660056831 457272922 484563818 225131760 3317554 280834299 444050882 535199930 900592731 719235969 782128921 828990292 663577725 869724992 846072938 662221968 510199370 737524558 289906073 826649333 308982517 960952211 706951308 510713854 89766506 615050012 858865676 966417540 814552113 460678114 649722201 181796203 126727532 692118603 51953119 385843806 497829103 804155404 433803975 26364629 516260928 47088300 924026123 957176415 926676293 598491508 132578636 852325281 986752033 979960931 787424686 990157231 359420285 694139612 126727532 737164319 181223293 443343245 620433313 136469182 507562004 603343697 396335984 935743153 657134173 589267425 804847393 26364629 637633299 592146831 437794800 778414960 718616837 386082856 507395553 344509678 70122095 494135846 899713675 708968925 940938904 70998822 565059418 287416740 650030310 556690729 381451820 152388921 421471079 658465889 306979926 607317509 786793007 841122679 544468248 188902159 905364003 252320408 779206120 722455001 580272662 268719034 982827517 712615867 132953243 425305391 806960195 362224217 860234744 792894314 440413386 751186883 381451820 521022011 473822402 588295662 994716896 535338170 759367615 5417428 229028719 205249382 389402705 157236640 438830194 417329031 460678114 850185777 726584347 571077790 739235436 803720852 180590162 222351690 500195966 591225900 190069967 150335776 8102464 744726094 511504086 208687977 220477834 783378445 434000058 983120301 976757253 243595805 453044257 950546791 252757893 77604032 497861140 482081511 432126131 917543584 264186701 91927938 53969829 233274574 121839791 569959277 636101762 138470729 773300273 580350837 687719009 599573899 678365176 704727550 876754965 926530311 462745201 567497245 558578597 754998677 950066185 740773912 234714228 122121320 730117443 196047796 573137210 736576842 34395313 328149130 948050231 227046227 294710710 652620731 777165175 811246788 101382221 363315107 372018795 125278908 920780988 695612651 843059577 588708772 115702555 36769224 578430200 523879914 426884171 856064734 70218872 86789994 534034226 502700763 776533799 972051996 350707488 967322353 856427654 301329923 984347139 714806913 532256430 265879163 492177639 642875038 196815366 469452271 931787966 67048285 969498314 884479364 659485651 281654782 456585443 808754930 166680222 161809462 753942440 289896513 247480240 734405851 403995074 82040076 883982494 54465356 382407074 976028740 305900980 695889869 56131274 145752162 260731681 216272529 878541586 542456187 344383994 538350292 737865086 972659573 586355431 708501743 551688805 408282529 890236315 427178062 298368512 749057749 463011073 826097366 591790903 33728657 804163047 392095801 377660153 701738453 655314495 923682146 703493701 928468230 391361005 726655107 72616049 540560391 347753073 80393342 574025382 876307334 541548311 557310095 18777536 745885479 663229806 469308112 500672290 102991545 777293856 860089214 319950157 872219621 412459778 940617113 909105567 368332368 853225663 15898990 349599396 64185274 782437267 570657860 603989665 268076311 834844652 476388732 634700925 358887577 858136919 108096774 480669933 132069015 364113377 239578032 733464875 148931232 100265610 153812979 879470136 452047209 642454156 319956933 1738006 444710198 987264164 322220500 650203436 790792285 174154461 998236834 656332033 69077368 967596039 157715399 547752650 755177615 681245307 983683374 365384007 160012840 566329890 569412851 254092754 478547889 826146964 510018118 493931990 271126278 766615265 230440094 99108975 723152412 656261396 323315818 428673857 754465957 536196773 906827660 826240716 366702788 584263285 794177713 282052585 347153956 411620916 788111223 9501520 979957425 690597622 805801693 978725577 659450053 35919756 129013432 48129182 391469728 943359955 156443691 600269981 722455001 988544950 850322470 551924592 824482244 937472605 138605415 774676479 326441640 182616964 503604193 303850083 759905613 194605051 200124825 823356391 4369729 371493110 165327710 562771993 215227017 863472330 567866258 723447340 4223642 834738340 549191698 966426057 552876100 474255615 533652459 726944464 513837760 917075491 839065058 16883789 854064748 112399506 343767736 869956479 792406517 920730391 239097666 374539480 461222639 849260615 826146964 596533881 210915718 606882241 370324121 828315354 398106549 471994949 187151751 611800668 60336333 554662182 144833651 869709548 995935839 826286399 845967527 17418570 816557486 533118978 508170233 609697571 596610614 879139692 289962613 403062838 26793506 313310218 56172061 727102204 637914986 831331386 766303912 323426002 197689364 243595327 644430667 911906638 475778432 352455129 416869889 745567484 26915889 289399825 237592117 366240413 403553902 601838459 885684096 116242155 649141027 976524706 599833618 269799105 822434253 456857385 657192234 846527044 93266599 603632157 95418362 261226465 521428006 884880753 571958138 384706550 907384613 934863363 629400328 663450224 976168246 437018700 894566808 927949519 407430299 770230140 249690765 854236954 630149221 772432140 932000266 734051273 429621559 981696437 334566382 798852564 436248454 434953785 464237331 150748058 38997954 665547195 865752522 588900789 972953164 797688615 398684646 1622619 212195247 484995169 462602322 160363290 503782181 420821838 111456523 344581346 773244236 668581071 743920077 828568384 405773655 776696912 312883750 7139351 952874481 10003665 504526016 662175643 753099293 682351481 337963907 756043440 923124608 237887657 161773254 813654118 773729883 509572497 657437325 802350620 852395116 964521872 700009944 213633326 277967464 639563063 806779803 293932756 470352708 219971550 935673131 827962795 465964410 782749948 400085829 241358866 137773333 977603499 308953061 226078200 419099022 399316820 281484363 437845897 858208399 675451274 987851548 759942424 489208330 744399151 685206739 403553109 379326914 565328240 606871951 476729626 412666739 430706901 37094688 282193802 2852609 786732582 410964398 816589122 507728781 363404409 491407310 643510931 538804771 374523737 483499602 252144451 168768972 291365533 423250765 760328126 886341065 665271983 186959025 200833654 89524456 133285371 473165212 437192252 496634943 122320427 680667902 720336994 681220928 903028383 566685884 867467258 714071806 511639363 535366239 120428514 451510684 471272770 580675965 190843262 951911237 475028079 189508711 113759111 842059887 365455030 640157456 596147917 704981276 1835750 834474562 391312464 873523282 266650297 39747983 47090227 368194564 915571621 985878058 800482869 877078575 36979408 26102365 682628733 980079834 626659408 611535524 608974644 710848216 705606187 17491309 190486304 610517731 223841949 362729882 801248350 80319271 804155404 792136808 795044932 203454854 60175495 751054862 920314608 772402320 358256840 624979960 672669215 605817120 588824978 823157026 346351548 729069272 761233966 402766274 241637881 439509764 636778409 749254717 377396289 139145691 927229967 457638207 89726428 167319484 705930001 777196964 565400214 828157474 687153391 632259153 324550354 807676281 823406813 580788310 962050162 858950497 446413717 960151426 102869755 359041690 930417505 364614652 373042435 580196582 451164587 950565919 709841276 492795265 350627705 361508226 767306082 991348278 180544571 51515506 812601448 278582991 917249978 929316770 704569417 544003364 785448378 370800799 949925035 983540626 716655707 654962344 59657925 450649780 999210316 884335036 943612519 589426168 745517527 656189629 66114884 742796895 28640965 479371480 816819921 634753660 935397215 665372997 515518783 249575334 923464671 340535916 722501371 729872236 824563007 451026147 550933915 309842061 825167355 317128582 232536710 695156985 594432641 515590138 13751349 168922878 821094447 399200811 692918775 896145999 922240526 573271485 572373453 618465139 920074266 502705250 673232546 469953748 200144712 346211318 203299762 758041144 65098391 769280007 996323075 919679881 405911091 47896702 55162469 927229967 909467770 601076029 31150138 162559145 826822552 325885106 928738824 971908881 46728527 857635590 725435587 99506622 79850661 809824688 149735837 502801895 957792532 147658758 581080492 508428926 750129207 752738125 681790439 602113247 386061928 909143706 319502414 880814522 743786802 150006356 353449750 299189081 416094499 819405812 633650035 581784610 11101274 571244120 61062366 320717081 549387054 902616793 323202070 664304182 42258524 28954389 873011307 233588789 564767596 829249990 913598363 474970382 882650200 425251230 514098909 269230555 547626220 582396440 582553855 376579479 64519240 418990590 23928313 461363137 97620095 196351071 811575432 697035755 180927277 435276765 279982584 736129899 587166054 953445491 24977742 311138275 677652837 705561027 456451871 574749800 538780954 67137126 530383503 833167760 246018397 162867895 732260710 220112870 681704281 108626310 939225456 953766804 817740152 495944667 599812854 448425029 245561288 510038729 470430562 85376477 776246565 940844375 495980131 502108157 457317666 440593364 123006774 399779344 431209238 395798079 217116549 542049529 946294664 255796985 765442268 361003212 135842135 153987437 234747531 216675363 974042538 536689267 34797603 616855909 9015839 80074955 351982331 50199105 613937687 910723846 90262955 550366063 573585363 772134321 970671021 762551021 343210593 703862679 337410137 33304646 525386654 186733810 322598103 730859100 457516413 807578964 925898244 960796169 819274565 975096083 347750128 249125443 53698804 476303785 639446627 237067527 205845951 622204732 203428176 30371696 188829975 632013116 185805801 799346360 415037762 451953217 20248017 353875107 283281804 180637714 647078952 487057863 353470549 561074988 50074486 143081344 391868223 65518759 323217505 235088462 991286560 941669601 874370056 817465059 565633355 383283727 336585867 316337035 121887860 5720341 959008171 736932835 429381018 353107277 743420856 330910034 494999349 588242831 668058630 810558303 660000606 947972945 929865343 892717817 814415864 7794209 976853237 226983026 498308715 950927673 137157700 844246536 21952584 483899805 91473635 633728825 537828536 678852327 273921500 741898703 335496212 544493197 743293456 853303108 587281200 228841477 465680616 569692335 493147369 892296327 57376817 436252473 394064869 695927579 706140023 529248512 412538757 857234950 627241477 998727731 643833205 610269407 227341896 324794218 15941726 939467994 601883434 825698720 985256037 648584537 122434642 758946206 841213256 576035681 310974445 862025234 815599648 510718688 620328785 905239693 860523471 649456232 846325731 41246059 639866316 475772364 188457672 519988844 753379270 631119167 797688615 589498967 935327900 771478637 7968858 350433406 381844223 593929231 788038074 664908036 371130205 654073693 934391623 876572658 10137202 572373453 713250364 954224752 227622950 470679823 646077234 283367824 627640896 181766095 580348701 994914405 4369729 408127908 393041025 74722988 744129100 479257128 135699865 686947749 306139104 59578360 770854324 286818617 788754344 572434501 58817695 58051563 293278607 332902811 587404969 487081704 1236970 12187224 235756178 395416115 898901792 861798816 882919475 735588623 84513933 811485398 764395791 717079627 282560801 185819559 206792498 899607756 817219393 749844605 185137223 385166610 380401823 566450402 707698357 283472058 436707393 783565008 437358191 348095740 490461888 548240750 174502047 39359023 912673261 84011625 106278197 565125470 541611869 1543222 641218457 788792012 365643281 762326987 439200301 348319189 721626369 988031643 512851663 433195970 586064589 272848124 573876073 9620385 205967905 795991802 314450458 807533920 507187718 25536426 608881331 371276574 107895768 686970927 764173035 144079694 474595755 390275200 220996357 743585912 60398398 109370792 13532455 383405849 703220110 803998780 923527976 568452640 433919154 310501357 959226394 444678698 672353201 482142536 105216175 107894938 812908878 230528312 476146694 826770345 824812523 447040244 820686905 959008171 763079506 880677722 863963856 176085551 116684537 497519507 171554753 691135139 319417194 306740502 645851569 814043469 821527025 668796775 709307521 723385134 686981188 537767014 284843401 952267616 265128892 327636082 399077206 595551833 102097221 860523471 430107231 832526451 744467608 457173088 207912187 578227830 369023753 735111390 115983756 419340626 654955616 94456591 848548419 890811524 176711811 727385126 139815667 498851655 598048800 860805688 648300497 890803166 605230184 583991708 526249331 421340931 44508634 970155753 162612755 812021951 644998863 979007005 874625443 867293501 957651243 887538618 21288655 405252977 701125306 365351988 225092235 375676907 692298021 155677276 568004557 169129960 778744304 745247975 271223314 70000583 162115823 105497560 64370285 71285853 43619006 431298703 631609939 706006065 684482652 736950996 891161446 568205701 943665825 144813870 336821870 260497462 57426123 176713317 674759055 688188889 590836617 541053694 345577037 365400078 128745470 941619423 906318976 731389167 211313723 298214672 566352302 220139450 300117735 459105109 30257147 115193490 403610873 567214013 820994659 327567718 978073443 833143817 750395918 559738476 89537719 887970059 346673456 937504224 320485366 181228366 913055861 300824157 914424038 855452589 125454088 165003644 56069139 409363719 655595205 118813726 71242725 131548064 294724066 853799145 466894956 987954520 84548226 96293512 189556801 524619008 801673627 323418337 717586305 186023416 519579724 582137191 280774570 402577056 954698719 778744304 814724824 46529632 379530051 865337645 597915089 395917366 687869310 846652924 120092633 631522955 312550961 674345814 369254881 324147985 2102252 890695376 849852583 325243667 517605008 701257600 484619563 345460117 665697189 972531871 121573356 726213944 760552873 261618721 596471101 157154939 100894459 248025798 991787022 410165442 989177772 884569168 885857622 337041837 466192929 391452323 175701391 340305031 721770709 198611676 133540398 567177994 113967869 665087365 504123448 838238291 722306591 330687902 552243461 405647280 640983163 173438278 151482915 954132665 968948360 16064073 807013718 388169150 637709418 808810153 422842530 3570857 233331079 780394872 580434264 42202413 679777773 905085892 267804159 269447868 426614499 535324812 804982991 529469849 128619866 266054215 238851234 213198697 109314774 891421849 181843682 406269935 422617604 965657076 811859564 448292966 466605616 299240505 247900676 898647258 845519228 892274279 704632821 252460927 89232722 866728731 664839844 276931844 629970222 655584168 448382946 755752120 315407983 131981302 459527433 29154919 661096056 278247688 638336748 287825244 845755485 280952287 704354173 735674911 376150634 298614356 379429783 561707314 315299298 467062713 515197837 196853553 876774101 879040951 979165720 949066044 192043498 890592544 440383248 743070043 396423445 916924317 644578709 520234879 487605626 308979188 775660455 860738326 181855016 728652323 538726166 77055864 508290343 731389167 851702676 521749741 266394520 848302234 260538613 956834270 629014399 329554403 408421530 182837727 547046761 996786966 489493962 547275519 395355456 950296315 862382331 764249663 192449678 769525101 591511208 324257762 631308616 446161136 142462476 637230598 607801916 636842851 221444295 288470904 203316801 773204258 481169835 991202065 958111192 963212134 702312158 742583778 825268958 482033664 443033930 790702079 820118754 794696735 470916283 962799478 314105426 937893039 898956039 209987068 744135559 684817296 405735590 919497495 418392014 645249429 977203419 257840518 849259911 20309391 921722701 490300033 251259872 921797107 620827886 251968926 746273635 470652217 19514601 515732002 718009734 310504310 281684990 114487154 947225151 166658779 907138479 500093860 253181694 564289337 631999468 907629424 132557523 280205266 839953672 633650892 275237464 594962144 549363579 46330434 212869085 530673537 601805731 11154272 932579806 639049773 95614479 855984626 664624447 954098051 404987669 508767008 549526179 325409376 449706061 745982238 720125726 711056620 963171038 635070320 584861921 125962950 159413284 450303741 150889131 961118654 567594501 215769668 735277196 32895890 725067979 285738433 84785164 913244089 11085566 183065293 342417363 237353879 983033069 819918735 49528734 127279074 732137806 604355473 761263917 36251748 778605063 641150161 447336119 772440829 534034226 899756742 104032923 780002095 750395918 152840538 155626378 581320772 278777404 869310075 915881210 243461352 733300984 92337085 995816851 97083821 453412372 754026894 630534529 143842924 966134856 400767305 392155084 86280304 918504134 872212414 158495787 754275675 876142413 737055806 296375697 87840221 602374838 157090063 204581910 347175496 824563007 839123847 737106215 272538337 946030250 837271109 455686204 772749347 793517391 431577962 605684858 40531759 756333112 346196434 504654115 312218765 394283602 110782357 929977663 773898318 741861382 705606187 520873838 952020337 864113421 350792373 412666739 275960685 894279195 856890048 64517960 314074897 547656695 715356899 667745375 207862988 994173141 570791431 402669606 163942748 498851655 155109037 754486525 99125435 398052804 818585622 390336601 23944013 432555004 950799133 290020918 84358769 657234588 470692027 963357085 886069393 362281605 119555354 69513525 100302296 62150843 956672649 717196373 603422463 512504378 434124977 668991448 157384793 266549609 277789775 58732368 376758414 765017407 380871538 864964228 677751872 1543222 413778758 832475902 467482262 673779234 427716883 862216447 380069044 457925444 412454397 832209262 599905069 247144695 44513169 250070504 207473622 535481073 841578112 105369973 324693899 964591445 847740578 583064564 271879099 558972137 439995802 500383538 294698924 875712432 154501890 966730917 636535273 662576427 607721551 331901211 274679250 459833496 707287955 294077473 65218245 950331095 167679081 794178925 907974962 489596405 713603455 284402114 82043567 162093550 287433329 820907314 61100349 335822478 48374549 749686026 905500707 7737593 54647189 270988322 704648785 313446095 100161684 451943013 990532000 330249815 859421979 859130706 624783308 596883491 948940074 244292698 279260673 537542241 313027911 604786511 355765589 49737968 885474617 638140139 116401882 59688447 751885199 231576933 894653145 250276827 484556222 85413707 182953192 865621749 238161312 291656797 127867116 366791673 730171344 798865123 919315543 580301424 368851470 283791418 353107277 351633561 776425346 134192602 947184312 273534976 538780954 723788028 376150634 731093481 145388552 921059232 846652924 229390535 170830931 192789449 412757894 636418909 627032276 517542061 14029098 889438077 79897254 560211697 882194695 405724427 276360496 217006484 302353184 492158035 749399284 473873069 404903531 154844733 575248845 446588693 3928847 356802862 737493798 367986101 307730522 533314598 43632815 224886145 920074266 133905721 117589674 474774253 599833618 8418429 816217961 343816000 692962685 636753101 462279034 243066415 603568674 333894169 777104867 263287205 481582553 425279648 715365707 837021280 724367551 83624312 99237422 730185088 183415936 800708941 658880329 927681006 450661082 191811823 390350809 644166160 172374205 576596321 29173697 52941497 979798555 667030632 816921655 724610735 920780988 527333403 184136489 355970136 191288542 308133201 245127151 167210755 284702213 688767371 9161477 927065725 335212143 598036984 550715210 250105423 871898636 418907310 956245619 847544160 891443964 457105788 835381878 262823714 876281295 759982799 900652992 763659018 786430359 840902133 853185149 429643291 599435239 74893823 627858558 142171470 823988080 573137210 827633172 444949603 255138956 621412933 207256641 961677985 903245628 886806667 263734530 833672616 342359330 981703052 419075949 348947346 583629193 251148120 426584670 943507234 845643978 342655173 562116502 400230493 802384018 266377513 182566553 940994206 702448253 704354173 445811960 713683530 471784027 92260668 694058037 260497462 22794247 613945361 699018680 216146217 288071782 847520396 813343769 618695411 927462405 111136878 805165974 751991212 608076008 446746954 101968713 376720276 771854680 233565219 274234895 621233668 378404934 70867254 594230484 467386388 797909097 81252044 407281074 215722609 363647566 165147234 932320739 860754181 331639688 765517994 581566118 390850094 261494570 566720836 422346108 176302276 813634406 867907762 678707017 705930001 10003665 160820772 719151312 399286782 276282349 783032572 99935170 116505722 885474617 235377609 406482073 427671184 282108041 434574061 583003494 946045495 297897077 700131059 365655582 874258398 238554160 529880563 518290174 533938099 55281093 218587772 991280416 791499227 483667688 299238461 16522039 384512520 918696796 934560012 703650872 36086517 139485122 946807261 696095162 582959982 940781417 731354190 554489452 963600416 28884536 407408183 65368184 677737295 815599648 943795223 843975318 367256426 78298474 241341736 666207093 207378947 412612681 657285651 695319144 6908694 432433294 887516585 180745638 457516413 101216485 81175687 865459783 309435002 202821625 303343599 330863704 626566734 301104835 488548679 682467555 609242241 538277380 125264134 271163342 17619574 879262791 809958000 572726207 548077776 101033908 242609743 309059309 85305426 931970027 986407779 393157200 716324573 991264292 251309049 743969001 788155685 912754401 396696083 529959200 756682726 53526268 963984463 413866781 890285543 567261841 841987100 379167721 695065396 276133386 288512248 138378530 639663860 363288733 226647173 67657881 240049586 93669046 10051176 818284195 865767373 887164824 401230458 263838495 860979836 507697652 3824208 627971449 631051198 648403195 763684008 298628361 729872236 493370109 391076752 782886364 129722803 169402740 148673977 308638255 513255669 408795582 520297847 3783704 911075436 518213542 275279964 505180757 455303702 288529386 94680981 782014860 783737512 66743077 785211756 325442488 931658140 300788050 886651550 409864654 649506134 494774479 208612227 507082219 856887218 884750134 692848655 256206378 318699685 941679615 658693795 300110338 642336201 920240768 37031799 117190212 65907850 829128187 78641770 833069681 654665800 227307194 459782926 850702126 994816709 923457059 746222693 710627982 594237297 376006980 454780475 436784048 669411976 490300033 463738000 489795328 995733464 203133850 336360380 759426933 465106890 888360282 335310485 239364382 586974509 135294337 965108349 914521274 360977818 101250202 699266730 412612681 864406855 596883491 852573570 485133937 980521632 784786713 289285403 517517613 727244000 236187715 698470480 493885949 857234950 889321537 277680833 107654238 902989873 888774811 2993183 248530560 702018035 998622059 37560485 244282152 241776432 344218736 630444531 293403315 502920107 453829690 967092324 953445491 304378070 803485454 360485536 384627089 963234688 456413088 298419661 269032183 539180191 701189471 12554461 304479248 231288608 166932132 789609443 142556602 925952215 541446009 997909564 576489235 833975962 940862046 764497382 466148558 528633247 469880601 462881906 116759076 919546107 798345832 184434510 588506310 402171113 633357934 8441162 398016863 931979104 947481827 26565915 557898350 76707525 850716405 402475953 105701683 497946093 218497484 334971928 81693328 621697474 309362110 16487654 757074849 275115983 522164440 957809272 831076907 412529111 449051098 368876898 578566123 429497090 250840795 229193030 777734192 598492715 643783601 836286064 680854710 674157598 286227388 13019246 411334347 734975970 1199924 697582952 222557427 312405656 819153311 536401211 696144449 270967324 83734513 408548933 759179251 214108309 959561636 575652823 327485646 404903531 540106285 755177615 956704166 834404722 559475272 283458115 604879080 320651184 624025337 914001959 964043579 534085278 487758395 541969527 516125914 237953594 250814277 492158035 390268723 129753328 475937871 449285047 39607601 845077779 196815366 620506002 318914905 759946097 850495497 214698929 622280483 684595503 614356925 432877783 461041652 609815465 358889351 917269996 788206056 247754124 747724447 858128649 286016355 307908303 971156263 171714375 780110968 987315158 569162949 89649136 288699275 640637392 639138228 68068827 962166730 914402512 71498899 613042085 846442624 162467931 789985452 153204273 32834918 827727351 351424170 412791304 32205679 314726750 623571773 670633145 904117973 860482085 975422074 18824339 33756717 28575154 630102619 926657701 607976460 828008814 487456308 91954497 802889425 95661137 764252008 883506436 113216892 644062313 281959534 657285651 357112678 743596152 925919817 75386473 560823115 973784447 272848124 448663163 212835405 875148693 738525282 343809065 834600191 925749821 961686346 427495458 834887170 79188202 121625631 311782477 756403468 834126895 64660312 651339003 943406725 46546273 675660841 908798475 494999349 818117321 537250318 585811149 213074500 121449555 876773245 613978671 641351796 404623059 125743359 47329566 978399944 314462450 876049590 903843822 726383251 348943973 3093510 898943533 439872941 929865343 150748058 447829843 567842425 54817001 480285261 170011545 621854661 875264324 630338315 483630737 74088295 154944062 933628777 558858142 147747649 975783753 686419875 912587424 603703956 115800807 611005791 320197642 856749432 334633497 103590540 366262700 70398038 913489273 786676310 783666186 814566651 987315158 317236936 583002741 761265995 557234378 159376683 168122567 295259722 58855512 492974506 685640903 7177848 61688897 906733762 108914504 451616070 485778853 32066524 31731757 852214566 269799105 423317373 30377520 665234479 490846350 135906005 966030358 46768855 226650755 160201201 910501754 910469855 417730026 402765644 970965904 683048062 314074897 338542284 33128997 666841087 838965960 993202030 563015459 737173152 844092619 224275444 967190513 710177625 288058355 382940814 262033244 622196175 309414693 908220319 552079350 331427503 645444237 298985049 60087698 667745375 854145590 483677292 754965469 394542114 522281313 449821563 787672395 71663631 576388151 236371454 212386242 937750352 866773554 483509272 289252179 115515330 602307817 873253632 291678095 519932433 956774117 771229062 927275355 70763815 757193896 874747498 34592026 637759900 744407370 445039048 321435235 94178501 574298789 43590211 807664005 779031528 748308803 448828371 106512128 160520839 926803867 439822240 705813936 636025945 801391100 50535091 576274138 219701092 123421148 34574055 195444659 447139058 929389463 688098067 572127016 207965980 738361348 648846042 557883657 850482772 455972882 995527828 256928220 611088048 795998655 8484070 353836227 495303029 655651188 190069967 617255562 8011841 505536446 698015852 384225490 972832889 767795991 123920737 501814258 382407074 214546798 297369419 680530405 592275417 870200522 823708807 655564335 581260907 396502967 669471167 478175556 425705815 96475540 93346315 621518057 937706446 582495027 486945436 303342820 540410893 206721522 699755578 93415992 583303576 279120627 26265768 484056994 503984724 619587370 886206389 497398964 51515506 787656094 745980993 486700524 333500031 599970078 527779353 831433518 805774496 643417239 31522246 268404484 177914972 9920224 723204960 69349601 297040589 247944849 831306905 717330437 217740455 670369487 927913345 92590174 729521691 442076231 447513502 923916623 24971610 527465479 786517802 933691290 493726184 321242377 853525532 602523854 484233519 469164860 808402484 143096893 391907050 547568453 342547078 377173647 864493929 115797683 124731932 924365137 232004362 939995195 206315458 724931737 117045363 985878058 344684347 500298799 219331709 519967646 383253353 402443218 564550520 491031926 413765683 756159953 251953724 436517055 768294285 526789461 342226154 972070276 311180464 720643560 982410388 155872104 192752945 872900680 32620210 591214613 374132825 578608908 928424040 416631161 162500082 606895200 589939778 530220851 818059128 759601569 747485538 591796051 189904122 914622128 352253635 223475991 408565835 512319050 964785220 901281610 202547149 243662909 800593827 472062156 897512994 44995196 479007552 936716091 345453193 385907207 960158065 256446923 897827619 900551222 232934170 150944055 290952814 506807085 661362152 110724717 612400762 595659504 107656398 593994658 625752454 620232335 156899628 744638205 726655107 345742741 292298191 418178032 128591343 484282581 126096778 622927473 471989659 443648994 760985594 103579087 14539872 363689938 245196190 508265103 671866501 706505136 139790901 997758901 809148803 913418807 726547804 276749235 140255826 561755144 878147512 159800671 786263028 922773041 822630763 307893459 609265598 480954134 414425979 215880983 223746953 86009718 824241184 856204490 886214484 808401105 220112870 34237221 121424867 795926776 852061437 985259765 443891570 660745843 619915326 653923999 389481983 542918555 854340230 382340212 488880047 301102599 51555217 777388611 245851100 194548840 815727344 271022703 752469708 488756770 183109267 200978367 226589290 921891643 548453386 906359412 52302708 902031742 484067634 419986517 491421804 516777573 566964277 907974962 581257700 194029298 357970484 165079154 625733369 801548607 777478436 101270822 576338905 697167641 30012023 309284336 683048062 768080382 987603391 866888383 324765038 993278914 802357473 970191406 559197942 221706377 219488540 120435531 447634486 171505544 726213944 804221748 728047542 502719164 689053421 852754648 225281104 888679362 706333285 797457411 398863642 597594690 675545176 204637075 636946023 736998850 420420634 819593272 951992145 63898286 990926649 814425870 330628911 321133932 231017559 195069517 405827778 780635507 761993464 811810334 19502763 387109773 984322816 678076125 566831310 614777162 181228366 925386266 244903266 330596392 712701557 496110836 685641327 426363181 555367684 247394778 77503332 150069769 607085102 914982454 69788173 120484172 710885859 140432146 224265444 180938785 932865770 900177829 331731742 52794329 866270956 75239514 579598493 273143368 877507917 117447266 513245990 455294666 259561731 522658358 824262458 33716074 421445043 368554854 939969098 121830454 599194532 828529622 975928730 627119439 196315752 283573164 80202487 829431971 465827807 781018661 487748302 528973731 61373662 936831278 509736059 854160718 213188942 605066711 733853351 152058072 665512430 742514644 432974465 439230456 302921265 886502161 337962121 155626367 891962734 102946774 175614574 641428384 238412921 299035753 668041875 666648892 603447782 360122919 295846842 759149753 306860443 596498152 261865752 268056723 585596980 166727137 978566301 330890116 991535478 251189561 87123270 377472490 368143111 176853800 9767096 508259357 15446698 997387429 217030675 50618279 155100924 778910159 384222270 335488235 608385665 69099916 877377096 556715850 70398038 189268956 445338715 258971098 209088690 453491137 645609079 277760938 934472599 657192234 649833346 877831621 176609537 80806960 429497090 637038921 692482842 345421802 36859144 420851623 124697361 531931983 39505550 699136514 466577005 989500693 409295322 28813040 683506233 648077125 127970575 540984998 368426356 312850619 514033790 88967512 182402411 32626087 52502598 173812050 219806708 380481691 3759082 390738660 512251982 366563540 858208399 566836156 124360283 255566585 925111606 623547649 575099464 402256574 374122586 219752277 310608459 29819091 960142224 422100414 548170691 793497408 278637284 511528806 965188003 674407825 363766945 266054215 92229595 45571833 564283944 999056833 604908914 417059736 359807324 650812142 498022229 713098975 469346354 936659725 353257785 813799757 879944555 659608597 595194838 56066412 316447852 178221715 36288775 482561121 915881210 881264760 761605476 185550505 475273408 618860664 809409572 658768112 436707393 877748096 981637642 397736950 946345243 502371363 495303029 400542528 545771188 340781123 180001218 537040294 422564263 793616828 115503769 348468689 774038614 221774348 245071149 116144026 26378138 362325662 491268045 714463952 393460376 814220878 581771268 68168389 326311470 221017754 120514017 573675813 134901994 790255615 396750051 390936516 54301077 327766091 693327713 510207041 793885033 120281021 828493863 307874792 918189844 128942566 656632058 526069473 783780843 470502637 358434213 480941664 925906789 684539451 570791431 786483672 686371804 597907470 520983698 681792021 709792293 507151960 94346740 850407504 758446679 540017046 768755618 397257002 30541740 55011258 949852031 565347270 218651931 447588910 74698029 830208661 482137728 696082896 559645444 767592004 969898386 930087049 903770756 6093173 655440270 182837727 931415093 927192605 697421745 820641733 61213935 586694712 471955950 654702197 433993911 512251982 700255762 268329142 321012428 535878750 597920890 549975507 96991972 800482503 348807126 98150323 958779935 244462460 198847552 62833759 897929403 314040459 236096681 555906049 261619889 643659428 163468801 294145687 890783364 247394778 383788496 79750824 387548967 566387993 223001425 36735316 523438124 641305071 730424310 556798966 633109639 152428262 510689574 126096778 855014106 646163635 799726452 399349565 144788841 383506096 663152481 406619995 662712890 289292033 803519113 37490555 276065752 393540898 155840988 886942652 276873171 330111845 384017183 242858244 343534402 673580756 69980125 21800410 827703839 632237057 484856023 733540449 797410092 933878302 560363448 577403619 752501706 689489729 434833704 508156345 671248921 719275346 259867472 806341249 526316181 453497290 124252487 119962025 561077399 585436566 803372417 651756269 164775138 150916946 642960430 490025276 136519023 885857622 482033664 588037804 405906678 607055139 414484124 269681189 248070358 689489729 142654655 111481825 530746966 419727849 553995222 818554131 655785615 986883706 315676656 305397144 556958848 812548175 815374055 541036964 770028705 637981514 191730161 53980070 70441208 625587422 683801583 881256678 105773283 998622059 814220878 730237982 205605135 807162229 169666820 964321628 396903560 303421650 905240622 887640582 768613430 799888637 163066250 249781052 955860566 125553867 26758893 46856987 935873583 960641232 192004074 100161684 548172445 656457019 586529905 608533028 49764523 570572056 328585371 808694846 902595694 673898968 341716865 678468759 786996146 442281117 324147985 10535336 738457372 413825450 916356965 394207548 713471284 391706524 33020241 87826333 473749821 986883706 834942433 622256020 675250932 203120942 280405304 916685438 254136522 547479384 691004488 287378878 729551398 148750002 92897608 288753830 78331427 23599157 39632088 278169423 437984865 632660863 966424862 953662279 589389018 384018973 639486974 968327421 903387733 96709450 183865602 802929712 715118059 261454690 597391270 90302180 378998151 801574667 280348735 671995202 892192989 23202562 879830547 24612024 594859887 337918195 173691772 668192204 375353474 280165522 149657219 967912881 606948497 64169606 766942152 395262329 247199268 400286701 367185189 254061908 545240577 424762927 702855982 276319288 430498922 87419340 196859777 734731565 397823391 170420780 169438111 971156263 556430174 138626249 530197512 428110108 337126574 98132730 458791280 112213589 266576713 21902693 781537549 702694626 978739910 325662114 246431001 733085646 220722182 322911588 868322285 563247081 242575150 197991960 882227691 18792852 168010246 508259357 858531615 159807108 477873053 966277965 71170713 235113931 491125446 23869087 393464115 938814030 635804924 396681930 353866685 780488186 862977641 993948924 761501262 129444007 310932582 474437149 679241198 780682245 936185343 332367444 791003518 508710031 284376509 539718211 509587137 842680297 340758090 929723159 657374419 755425719 172395302 215459477 407174142 379182198 462289295 164229446 571003275 158814365 731417925 267761405 231574937 510588947 746560833 100847423 591184025 63006087 505830396 582495027 77063675 535448299 740810886 488101342 706951308 324059497 81584394 426980784 77325380 614469529 658037282 548190156 491492539 944955732 164860992 520234879 317072875 54316047 359807324 705259999 524270328 274680936 32895890 98278694 211811851 816327600 414263365 236608339 788726138 527651241 905610519 931401979 723968105 335938686 77733493 807316670 224649204 556978422 85131829 859828937 239541007 660733703 745894833 876085978 385907885 166207231 123912065 485062249 432895112 521120195 291554241 640147854 313118337 492901479 420144554 158772821 280546038 38411953 276590209 680932056 350505074 252573591 587166054 512572331 115137107 942219167 108216355 162274196 515707052 677245824 192530042 373340159 498865985 212488282 591915514 875772152 807262694 889326573 51279734 726603526 748222525 428708007 281042124 827580470 677917878 948266364 674888174 170149310 938510367 865337645 783378445 479848099 356891668 104170160 816061453 221096308 736818239 881040560 4556406 787654662 461575851 730216910 80838897 897347825 907436079 370705977 400619639 556271219 948634009 262823714 122429916 482580607 47896702 633931518 135502379 984313164 888679362 114256968 180511729 408284074 853079021 296477085 668430046 270594142 52117360 366410943 323019503 579109869 344027920 647299379 801123935 122377028 456640303 851351551 233062623 846847962 861665023 684323618 344365506 331682446 971563196 327772328 535011574 883441445 295668052 539291167 146910022 680813648 884732156 394886318 28754597 580675965 717596376 7805476 643343249 257456314 773036020 565874765 449793449 966896736 284818624 142349796 969737335 9687986 60739225 553168590 999791872 620548722 885082011 667197582 670009865 322932658 605139525 513921754 244074281 990229377 899745919 519811792 381774271 755880794 551637082 726290070 976624529 320020598 982743826 778318635 792503798 67436368 846247685 590251860 979321825 70755016 816260103 138682763 567405526 893557052 729584137 86738477 938499487 467033575 706709340 67856868 581727806 510717632 540847960 209348087 954699790 99472000 245485269 361739511 760795821 68349414 970239725 963093195 617645466 462709422 333869370 358064602 611535524 824206584 765776052 654090518 696973130 655861048 56760190 452020340 905751204 719704954 238202505 150365000 333379551 237943679 775700750 312926551 600814116 991498883 322786668 319530870 253030137 737434739 143840590 263479484 740445324 47494063 583303576 913000766 978294358 888461629 360270167 686508407 305457322 340353876 800121140 560100986 404690540 258891128 861956469 840713459 848147228 3759082 838441781 387912591 438804424 112704701 576388151 57498549 446741402 42396080 648943375 641355327 567665842 664317113 959289760 499066453 765397932 699652736 219927297 659985083 327790799 423500239 343918635 820109819 265614954 752179191 297364542 184957557 88331940 523688036 50616908 698015852 854312436 442684030 577583362 331022625 676737805 146542373 94436369 161504708 393834922 976968279 968585304 233588789 900647449 794328456 997760818 178360371 996755524 362962063 864169457 422798316 435706403 115150120 139429440 724778790 206405465 999875736 811666475 412450674 223746953 486625711 19514601 313182023 253520791 562761710 737298195 123862763 908598591 716798494 320282595 828779775 882027731 71655180 181953664 485589455 737790474 583764868 77004545 471950389 535478624 837769061 562261973 255909656 589939778 619473798 849646693 513538987 475159636 810234460 786536991 279260673 790009767 99808779 573947845 747961687 661856707 417387448 120102995 484318723 805784117 251780067 561622211 506082743 844856717 38014042 673736404 334314230 581395121 772655342 465191083 940155527 928562864 229773448 774586570 835067181 214832395 624965826 222067154 215985175 182836102 797329266 145085990 977817146 89946275 861937955 556736618 17424244 204218441 826672176 188460430 50450983 371640797 544258450 193582172 292617909 114534990 6058607 637704704 978398541 676801134 425970959 614277424 282097928 674113882 557776503 404731471 235687129 82256892 337261799 309003598 11010190 409661022 18522656 402159607 205397154 875018779 52492839 373561961 87678733 849505993 574626414 516591814 392574387 586270150 127463663 499434872 682261045 840118364 780043080 173699688 517605183 937259556 414329757 991555434 561033385 617424500 650668433 772769274 664499695 699408486 566901674 497893058 606773508 105145870 700690712 871610661 302564740 865545858 338028075 853775085 111579412 391970033 340580285 991608794 542809174 280305821 550886194 61837170 103431433 825359807 355903097 182784704 994247969 291727542 971656172 298312270 660934818 828431107 413354738 661757977 503228001 706985261 9866637 80400960 358876066 861839695 173630510 741898703 354180506 996407684 78148414 521299580 56020495 228345987 918566617 645184762 276492696 671009648 523912456 612131964 565848809 427047827 969759896 67787347 469330194 312218765 591122423 97862893 641522114 852124596 588140202 298966459 906708158 897907613 898659983 324257762 993388389 17310280 138432838 891007206 219529840 413126408 541176056 581401372 168248703 734200104 238031342 176050079 596302936 181376032 887037998 662550005 135088166 305829907 890716137 116755895 169257256 669859514 540948676 26793506 739941742 467806912 212835405 238412921 241559084 72674539 192027911 654073693 158911719 97787917 411406539 57441216 882341386 972381638 563489431 599933092 612203431 309919988 276006513 459362295 252354692 502557668 529232815 268507758 583003494 671196388 305934011 592204791 615365792 155370699 108124067 828205227 587289535 145858511 984759924 570533703 345590994 615776451 918504134 840460831 616043604 207318784 390136608 476561844 513944879 69083626 283452984 725167677 1254934 110764853 592645810 221028138 589412260 232767934 853310308 335431548 884015490 307050197 835789177 29496664 171346891 945909564 950127204 517639481 429024934 590413039 828097523 20764614 653492654 532689731 323510792 761476179 859576675 32976543 10593451 256534853 124360283 598985770 184802322 716927504 860216341 134998759 115776038 377752547 354471162 903220844 57183847 862807438 966526482 260783091 290952814 998502400 392439021 542873588 777467825 535575864 517969245 449333778 800647952 197762929 36509143 538731784 291527379 860394586 917779555 405685523 303773734 69232753 915364033 846981558 536874518 363020376 437846099 266905947 574571848 807556599 95952134 305199807 465915071 583999729 471989659 414529188 74553490 520160196 745191111 692934550 717111948 441339215 640506256 266844932 434953785 613706331 711763349 633318430 364344540 608260201 396969016 705303666 988061475 819374203 503907389 266837462 382362369 858999575 514594961 523022586 797215826 290935037 149485171 415226882 157366150 727681931 587979382 820138932 993904858 148885859 629004088 420851623 307255318 797877796 942048889 293293381 979294485 332578682 551304188 667002861 207733071 50993790 630533984 664223966 249505107 67351382 541567999 102577355 860089214 346437959 871767573 452358866 759942424 591468286 256775602 298259932 353333607 522867964 263183960 130623250 209503170 165913991 505323654 140738144 471547081 40060741 227166816 125864786 659723157 129722803 159437479 37910404 709391436 477711396 281686213 756251032 926774098 591341024 940076486 813165049 358674289 729284959 166831364 274042703 294899588 668282058 736876218 645715244 322256704 212566065 465827807 794219334 751065123 457979108 668308080 619794816 247742383 947003184 430428987 629727275 485397954 450114610 461300325 808810153 766350340 257963422 996322907 626861169 459460395 727678917 444073034 29975767 440947510 322056636 972420058 149287025 428029929 616313857 955891065 726910177 768985026 835389582 961203258 438241283 669926707 5713363 936415161 890276665 291237611 17279536 54465356 501151605 190249603 269313273 655598175 270127926 53710773 251867502 518429345 584575191 308361570 475913819 888203384 628678668 855734994 888342737 129302720 810935024 605139525 193544159 643481067 38271361 754204569 726682024 893430706 825373261 800810620 213050134 983212478 406828879 701125306 529595021 925615121 848421851 244449055 127841956 606869900 285096093 733245332 989555539 354394619 774568153 60675806 793266391 40400320 140100946 529069789 134208044 270125600 490977790 894593060 621926744 835018271 294149920 8311640 112790207 986584897 995859710 523656577 151818248 866071144 588174781 562771993 722491232 496717343 151404656 705566892 810033001 786419681 413062199 389182532 391915639 960103653 168386952 671555160 549736991 284298725 127079917 10051176 399811209 527420069 573297229 972783154 731832043 322969645 154936902 610384478 703961068 794308422 27120892 641268512 996110368 151994779 753828236 205020804 625054201 133886677 820165950 899428473 444672400 412194437 600386093 406488510 175526839 609784002 608064430 920477840 228120829 858864359 125392231 951773091 336028547 685919562 795127862 711259845 166550539 51699516 653293316 917142381 391183408 906830674 108590939 683046957 995935839 900772867 185130682 979294485 588881657 13610438 209158106 277340641 708044246 501446185 279141114 76951877 138352945 34133383 160250957 439697480 441484707 513835980 974321215 274472221 381600151 525973507 391577808 456476243 604908975 288753830 745974747 401123928 626073020 480062298 649022837 419340626 340059675 873240946 201087842 847555604 821813637 39353270 383254324 499660152 678976559 432828792 520736151 133811407 871735740 197930129 425138925 133100863 823173428 194605051 280249504 136153434 701529327 268765931 845340860 331356655 294985777 91644786 321139385 451804147 117336108 967442221 87523467 622916575 36245907 467623 509225704 242283460 159232108 186063869 354424475 987175792 599984864 47794590 419133552 525388235 948943025 228101530 768920212 725747284 418859244 835913539 256512334 399220211 772804478 291857809 305790760 203864838 932882720 134940855 29290725 118952436 343877841 975312301 792071569 303346834 275115983 37021221 97336093 962717004 932318121 851702182 161377866 701303221 676793087 643620060 365746076 109151931 588977447 390304154 431373480 482489868 460402905 484098739 606902883 880094668 873298960 979067264 656221863 546219864 919497495 805396654 569366707 43671197 276726395 452403195 401516653 998815885 660774039 806832110 684732806 747002114 52071115 464423816 54730414 862434743 421769141 332598093 822188425 104180166 761531043 541178289 893804414 612448245 426078620 37757726 363086703 31314158 392228893 933212196 572278286 256057011 365440972 588982677 682659118 322678781 21950689 977002112 793105476 701017080 156955217 932194725 574542926 389823101 78347472 762248722 866947939 271338740 325379231 614390031 262960928 817484442 364614652 438965152 626280509 524019212 171967090 931917315 481914912 359867589 203864838 161512869 43202589 674767780 289510775 843303833 61982847 70628317 502175897 63363833 652282560 914397920 973093720 139999992 60288486 722089959 686850864 160091818 151832480 724855824 740989684 299423281 576451307 223286326 826225529 454924950 1302567 336872726 967442221 492967501 474448382 415149866 643460579 71692749 247165077 942832078 18244380 500597606 882266996 175576533 523879914 647287120 680421514 203581946 749039671 435274429 319080275 707088661 858564495 768552613 208362076 787122241 867640858 313910864 617867074 815392678 545423626 892090407 450702928 155001386 184131064 722838546 760194136 426132545 654920926 623571773 995583349 122182155 931729869 755764328 534300569 221647879 712609290 672617051 853012428 413982118 487074615 837981877 311935334 159753682 616867190 412345993 464630597 230057483 697952061 35802218 430614638 944404306 393681058 591238639 230511784 877419922 898274634 912765071 121360023 756710752 599970392 239663848 39495632 912587424 450490535 280751382 298443796 538690266 970752356 599073823 792599063 281186566 936937110 588464949 180275862 826218922 490712263 301277322 908092272 959296680 671555160 595053366 317157477 823781903 289824288 243267520 989500693 691669698 775959017 453239388 734755458 544176025 541480368 116755895 901739163 458841266 857728520 85603212 644478265 342030123 994409674 588498520 841040513 389402705 171940219 606456341 356703653 168898012 428161058 827725942 197456713 502659352 55883100 803303473 277430073 741775317 826228148 269848007 311901975 743171573 217480649 559994169 544195431 684038126 627640896 221337663 334131790 930093893 385378540 142336603 873899438 826117490 190601871 328405372 438528166 628351227 289288158 579505324 462859047 428620134 600386143 474970382 178935991 715761505 628212466 302778297 469932017 912351214 309006380 69094783 925301251 119679148 180447677 933007094 850670644 396021160 17327298 299208191 40229253 463435241 286127199 598001044 892162893 997985355 381152725 33963043 824612489 514175201 673583721 796107195 676496341 137491888 690916860 811370223 740171201 504073262 406482073 458787004 668156353 353260341 856504738 779762975 802214905 620890984 48416212 266847837 323056168 727268514 830347083 972003455 175903200 770025357 393775636 72343610 135467754 853046144 402669606 29975767 786339206 308025846 795963749 458154657 202054577 413051114 297434692 617255562 490271962 729120521 180813085 736917503 692695028 176637494 152242800 800486804 86014730 696933448 13213241 704798862 737434739 717571016 412777888 467447136 310693423 541018477 229547405 161615315 204218441 725892478 522844878 386644437 947857846 185158844 165156395 517117086 744466977 796941677 789206327 203538184 889493546 124468992 421545380 846289725 156136805 73612399 793611126 865488612 670497643 753821074 246781279 173290246 246208658 998977560 187546222 153921582 965673836 871258966 295147872 565037165 588210013 77325380 342825714 66784141 578228467 874250036 193295926 889721058 689903563 104759075 234779968 591506850 782223974 611005791 138820275 962643708 838658309 10169923 944105418 426818165 960321540 32798322 985812992 802475423 198725072 945257641 900270263 206093092 423269700 737524558 749814395 846071063 921077761 286705357 208196878 235127459 453180552 943278203 867001290 922104646 529661752 574484033 726711038 117603156 161258232 249571845 898424698 13244024 957651243 772402320 859828937 893474709 823585522 204048790 496634943 17327298 172757107 32108978 615896681 211811851 172297182 97913606 35497290 658402878 140661958 873368772 129663509 43578382 225567606 22991070 257840518 508833806 717720741 468885775 472637962 641705484 570011682 900580492 721028849 262568901 649628678 509094193 952877664 478866717 538369258 895389180 483105191 560336856 471009223 179359074 558767652 134615113 567443519 383172005 555599448 238781105 853631 738667876 17418570 673311069 796500158 764576342 24163302 600153202 299176713 384337957 37203564 960185204 576988416 961701244 33648182 199019991 950068110 303938591 572802800 806937088 434003176 619001782 83868922 950497645 843560205 620548722 682049166 368842536 762616344 387987802 280315270 391782599 476653432 889240541 748235396 513418437 85603212 930650061 30738634 790255615 912765071 411273559 970963123 360568456 117206768 395674203 908801971 342720415 150983221 600257013 218110187 53920053 962166730 587736966 354774759 298312270 152631810 111945158 148557852 832790133 749226288 780068224 774495657 21787717 820764740 290596730 537781660 762962345 36279830 651920481 680673240 376205729 809612692 428282600 33621000 776260843 64915030 1326101 173301604 9123109 34213701 378223048 714488937 203866567 364693101 930791997 390885570 292571436 551396984 259655432 449859172 167159332 510592643 565654961 767568946 782660609 343579735 78736024 411535445 283489405 143840590 138349 388661980 564728626 154002415 564933896 474536744 44508634 629004088 722674351 160932494 91817412 553506185 232934170 44681268 594463133 717876820 23396491 767533531 964682618 903421276 278623327 573326516 310982796 169140561 314069563 586651729 996737756 905067546 322183541 960136950 911957555 20248017 191244412 393460566 851056483 914204364 808499169 77857660 414963682 100949469 607506179 710560688 519355459 393580019 8369492 987716334 502738147 125232057 118328310 921577010 226044479 954156376 303778748 743927228 447722388 860730021 238636699 136731121 607224036 580279805 726840785 668926540 476146694 669937615 968070507 241795018 212781414 644026280 757667155 359002856 412791126 448382946 541036964 686887514 725308073 28612425 177590593 558926023 288230939 959921401 933069353 28222192 828800430 2550910 141658636 796603405 139036846 73247967 981349688 37364181 767039657 682859867 783360173 763355899 145629798 811721365 548313166 211006747 483683963 718747095 48364291 98128067 274042703 251149060 617512323 832398891 599852899 33950766 408548933 846468391 180797276 170318109 531686197 818218948 335694346 489654036 430071878 568638097 972336346 400911249 631924912 583803946 197361997 429842861 817451341 829194693 222251555 687113985 331354261 509612016 434893286 498467304 901598062 10100677 850341041 654404061 669392937 499088671 372984573 425226857 476755726 820291904 493751051 306798618 219529840 518470343 316746752 118292380 832240275 353083264 687005729 833961957 845493778 877953406 862938636 232384340 929873677 642022255 885252290 537070717 419849989 994469841 598985770 170187040 178347387 982747535 819947928 609025414 575576059 364638897 424244463 750652851 112567316 327873080 958859084 553056837 891350426 28546242 762306583 714465754 178496387 426884171 7270416 240391558 616515715 62920164 255095475 799985960 559117374 37361853 155622902 325770511 666940417 796700839 81971466 900206389 385734784 395400114 386082856 231239209 858563807 17136305 938912177 496747762 205701988 514874494 722089959 86224368 765733470 403918309 89979131 351825270 19877913 725638400 37361853 953771616 70710833 932441324 723943307 719275346 130099330 685619248 649626785 444647552 455569806 859828301 243517566 857850825 164614484 633222307 604540245 994409674 810972603 948825211 260892445 878749659 470518476 860819847 890277752 471365801 340893433 15406062 679089328 177914972 249167866 768576534 245733495 877936782 123134347 210807799 635162570 782605070 234651021 489510296 23405438 881832081 346906456 16052953 222293541 542490028 928882367 194442442 177157516 391167775 200800735 298676301 239772213 879262791 704668720 794494997 635096639 513837760 903528769 400170540 666280816 806765353 434167682 376543008 508156345 289399825 313885934 705910850 952874481 938838719 214174469 329590826 433841649 951954055 289502545 102685105 989209326 51953119 833475766 696769962 841517724 296047669 158956836 226668780 889975950 953225157 903387733 663690794 89552721 656193954 226688104 387954291 420398172 351796802 752080268 175325540 419133552 453434921 928447363 779900522 145714203 966296780 215531009 610367177 626599292 705457098 151182363 556372200 56425567 654639353 686429843 724918925 721973917 608124211 142774036 901137636 629964188 441072042 175334033 186100362 722469203 908656247 445787172 385319309 349903709 849844879 548403852 123421148 317048426 991555434 379149263 583049725 848421851 941433439 711253414 993475238 679504839 901379653 583453644 264735059 299838935 701444545 244378444 978425414 531922744 617341247 802448950 912392179 799074297 359222898 548228428 687357814 758553769 263300079 638762826 914521274 3254028 267622648 852533580 176144564 490593836 685958811 963167234 336810987 594416766 666916705 136072513 105632368 696503889 2771739 383739045 719541136 574083618 275400291 573484778 817621139 189759569 875581488 161366427 700495673 928431160 33143886 18362491 540585496 999127036 515056712 874843264 466867703 500862084 872057228 125288626 75190736 309653720 48180194 359234146 941404876 446297491 432281285 776306418 112323372 449872182 774750502 211932071 208527830 132770091 944111214 195766468 527025406 47944233 846468391 571046891 466823660 806903658 731261983 218728012 889975950 395112849 245938693 395752064 324427772 936869159 614943215 897288769 463879657 410430064 440747083 431689047 70984359 934831614 794903713 97496996 757058448 486040453 454744076 920413695 321133932 671430566 659451347 33095921 216994124 870565968 360727170 676292323 745596935 153908521 925136192 997423834 965395837 269388139 850819324 20353491 212445034 684460302 532116270 752542413 425543970 102878892 723038409 678393063 319781934 796714538 24222568 273852860 401338992 298366033 416552148 269722663 845953348 731241406 656655626 592136964 73712616 5803521 975010728 936659725 530720655 908714871 562977853 614765663 680258406 522533369 736463397 234151562 269757309 259031708 478538411 623344714 816338244 637103021 312856341 166576632 48374549 756221286 306420848 120501330 282577211 911734412 528973014 912782467 63790566 517987103 582197758 118106702 991230395 971203271 134126178 454593272 287495303 967949308 28848747 670334627 309646948 136384312 711703847 119743320 961200385 273814463 265229747 437306388 363629656 867723723 402147878 701356629 154149352 390752377 292875742 444547118 948126524 413330603 645165008 419747181 888678879 223394228 92051816 36861568 195716354 874258398 320859129 772144904 226297244 310678717 130674236 345731683 241637881 758381058 145499198 175123696 736928190 182443194 159861927 900090411 471410420 43590211 850702126 514996249 273143368 154907331 215524935 298926259 541649808 309069429 681926663 161525067 982307439 652881151 985536289 588337970 17136305 358959612 843553405 210786902 363180052 444352760 565297694 612719738 641733277 955246714 735957706 361326622 147107714 359016436 363377198 123665940 680932056 121025430 865395898 91817412 744624478 40175305 477244050 567970742 981932681 871259531 402742476 227255124 325143920 155370699 435442689 38324452 69557310 455786192 260958054 58474711 653321896 26787870 606115117 433430164 325316516 829622028 835227202 960737291 784715612 957697593 851036657 655989389 776436844 514433609 494752235 950014236 725579296 172915048 699804961 223788379 313182023 472940767 496688136 247716155 831782961 687252339 717699955 270008736 836564805 356860661 428484170 426188765 196182196 927276675 854099195 172961875 5159999 572597306 621797618 248297358 264573407 885936529 903653634 754056443 717881054 528412084 664485112 621745653 906994366 569888859 783264138 660493655 363073536 971853328 515590138 369936084 90057413 432555004 871262015 773774213 984828388 4134604 841595255 921891643 677436907 427733 36877617 405956570 440408530 187052690 728685013 688106322 638788751 353086904 986654849 154772819 443136064 657766291 336824569 572498978 326707693 428172099 810095818 498366311 820326540 724553962 745808889 924104098 684737111 533398713 426356563 348889586 24227481 816281411 363293889 633439284 607526268 582427794 487721363 19797042 834346501 341737455 351713864 461913744 2886024 709003355 286050631 47680596 548769266 95735763 332258170 914844671 215015044 806960195 416094499 949004098 600435789 407049288 647027592 432333735 650903191 576838524 732541734 835560212 113441655 925678296 473759643 780262926 808854036 613760224 55754560 540908409 750652851 677146439 147425047 959456159 351909107 558142199 973210478 126420052 685958811 455343246 946420417 335400238 825810508 976278083 408525573 146052620 502699981 296462178 830311181 586578996 352715189 785480995 770567448 786382808 402946978 289157211 58312901 860193281 406827748 866126584 202039719 727945475 208465646 539359628 161358073 458298245 339807901 749943130 179483536 275057546 423361782 757288506 693099448 383542391 860708110 212580640 474898955 840800876 365405221 693085614 384543078 256747868 923216239 85348101 27280816 892050229 456271307 12579380 953816694 481628199 972755592 205157815 608834499 683007006 490139676 356860661 694188295 962268985 265911135 80707886 148814544 567594501 590449641 135842135 816119303 329445812 213566193 498765404 108236289 73479346 603346013 11842691 322269339 350591933 819478750 45607667 968346190 849062139 827372302 636686457 977324402 539291167 436606333 645353276 276491674 591488809 599191959 60750510 607576876 159989214 175023828 658690584 889175078 837100273 386392281 243917487 836334264 87368277 232504017 525689647 746273635 750325181 129807758 114200219 144938871 759078578 326147585 826250821 6950239 66220931 256446923 484226098 500298799 755567423 231965450 734866416 685282790 48231972 80665965 671827729 401890916 832771312 500654259 80820245 324735623 962656640 433111496 653979135 377529486 228345083 87971482 947225151 789680762 65632103 378035192 557898259 196728168 985854129 417785741 227531693 212931986 158495787 470295094 940617113 302501957 456119523 313992979 150608250 335356044 858843222 598256134 148732666 569458414 913244089 270244070 367858491 686621376 521008225 695984714 33177721 453374459 193071810 723061018 452479551 622549477 331746952 641002152 531944150 658722620 74167671 687745686 320717081 35800670 121586205 618049301 506080827 464408081 609846385 884433246 749538016 151132015 526779246 177482014 138820275 873433336 136610438 372054752 196780216 141828061 747716034 978739910 687466656 129013432 918948217 19469245 94964116 972381638 414370739 912788674 387486002 535648491 60675806 507925163 5823699 863147719 910469855 771362966 579722603 760009889 800482503 943146167 562431958 415380918 845581689 696546154 19073264 748654341 847014778 463714196 370550145 393681058 838597543 329355250 439744240 233631346 375251870 771746942 598783457 933761737 598231960 257414083 914599072 57726442 513244219 628241669 207843329 880242029 29232239 457293596 914844671 479706055 385750609 944119522 948645689 865957640 114463298 37029868 11997145 912963221 56593242 211777715 379962112 824237927 76130857 412344583 862743900 404690540 967609526 777924175 362714577 306120665 923938615 684397442 512983080 773353331 355635461 467327985 331685298 758826863 455146060 380565300 574331224 574330432 315596563 991535478 865279600 540570331 953371641 223331451 258877694 633337201 439260340 469346354 641925205 519393140 653626 863856809 850130181 816833019 99947186 251021760 770584593 288622201 189702811 57256642 193582172 884770546 420147355 546510270 814143551 444265510 939082106 453436340 79807475 927340631 777053201 243846319 761365107 131039117 882285239 872473766 219851097 98826 650940695 333435615 697678009 259412730 307674239 863760132 135569217 101746019 720551129 386391555 759078578 893321295 785433327 723573988 576446950 426203260 147277974 358472994 313969711 173612081 331257628 939841740 92766231 294987064 368923618 249355378 575584430 610075648 448558546 173710954 520909619 313272938 376035182 544942106 454412103 391349024 666795962 752283820 55058013 860169525 393171446 754290335 656193954 360813385 491068520 976350155 684336534 75132282 333810160 283932983 24274634 624369871 442311472 934635758 273960713 140584109 878430148 176874190 508071357 935196355 61613722 290778128 311435339 160568062 598742240 962284767 312490971 206415391 260552978 55712670 96805535 415024726 249861751 652008674 459224208 380481691 640429845 135291319 109697700 496572443 186808054 386620908 547479341 690630889 431598106 423491359 256835924 150886738 24856135 469164968 193634354 582019623 276975319 413354738 525931751 680013136 894687917 846427165 576520770 502334264 55752150 174495712 336231122 999207204 934815620 297924820 293193504 549966190 268493727 8464685 231306439 290020918 250269842 123912065 489893234 927376391 76156332 300646100 387755165 645076547 532798937 756325844 552326210 88854380 154643481 998152338 323249048 407210129 860738326 529503140 860975947 751495091 149960707 377556984 989506480 989064214 93240886 748144842 671864527 820434520 756336254 513289032 824508220 731168064 362849230 973951936 307987038 12894231 358497527 645444237 858302766 644196219 902637585 758406766 756681298 249650312 564917687 523041583 457191564 906170053 525885754 893572904 223043375 663906098 963234688 448930392 237997731 17407744 824003217 655989389 459885463 626961714 804885931 85739874 258677173 708776787 939303109 796120750 578047295 877605526 17729820 424737428 349809285 283217937 34826828 432980054 882443976 112574827 919518518 948545565 706171366 407876753 833307098 955310048 820302383 678703158 610384478 873631239 154889646 377171368 868166669 571244120 148428020 985067009 866636107 197830555 60274796 258211207 229287403 48837905 343851448 215452368 248823541 406500037 706704743 321329848 740582419 138292839 206420217 662780550 971896631 726830776 140793507 285988165 101912140 566964277 906329600 578120984 876028531 670869754 218561166 308722140 640113680 259551552 788629442 126099228 170996606 627454405 652048067 9995062 922753286 843187971 213610912 206315458 678361118 331733611 706936785 368512711 185130682 572862109 601948932 816919788 666384598 653007756 332367444 985102615 117091635 32035800 531763106 805195844 326660133 535341283 777417215 221179102 823867270 911868671 784690126 273757218 175278973 374130156 945706980 244701421 967944044 940253825 700939227 598802039 21071589 769134893 27751005 617807294 943189729 584263285 850500162 220566940 963352757 505536446 856952404 973998128 684079910 409250789 9616397 723983912 832710851 419599007 733078182 961304813 461484705 510330327 999566133 265016974 931540331 714604141 969507023 866056209 743174281 984294368 482754997 100929080 148330769 860367927 288479386 195313104 228324573 447060199 539576259 565246656 784871434 625933461 290170431 100831127 959761622 445074203 169052608 498883566 85191345 30393229 47920284 353218611 761431376 736794628 717378721 640212101 539218788 347271362 511035730 307668209 831641387 212476239 831014537 371524816 942145481 156468317 607426914 562081120 819572433 407487432 153339958 792894314 151006840 513842415 639442835 915755109 640002196 3681378 757322800 65399726 408860308 276613164 529793814 975703385 732281728 718690859 91118052 15240478 854033063 151916085 842587075 699814197 467285642 667624445 264521121 206986390 993906598 502769927 429187369 986763480 683252347 122376147 261729447 629630912 829969091 775455346 553135395 983376904 432020920 654545739 660175383 155990218 782425145 860173987 980438544 445117246 421064563 672943882 826950077 793222357 764092090 903445678 389333865 138766202 963220160 475281311 354092379 352680183 743702084 932355533 597199288 504650825 505573821 861386171 179500285 110119563 381211004 650915393 886912973 437403295 373995660 327415399 938499487 908324791 488399229 191945120 844565290 994227289 77892640 313817917 446867428 173292337 722955561 288470356 619746181 389828357 966068535 576764570 294985777 816336523 9763072 628028155 969503492 153774994 16256807 10100677 92408613 420453578 758129163 310380412 547388235 722059234 912321591 516901934 566574126 661908049 454808916 543384664 690178688 984924265 25554101 208259024 245747443 564605874 427882477 434574061 405134948 157774653 673898446 490895762 568623626 53334019 403832975 319676496 797500813 634256667 592414346 977498862 213749377 992207113 515027310 180079042 463598646 848901135 140432146 144938871 721691387 641425141 765517994 463272080 717436428 500544706 171518576 810972603 251257478 319676496 881809468 1667013 191244412 662442492 843308173 293182642 954410703 660528251 903992960 464630597 876509974 391157213 166669092 534477494 243221539 422671714 667989519 895556044 24644503 503625510 985567751 375251870 706709340 445267679 497728686 64881616 870385302 185164036 65217475 988538553 863285083 903561874 363926629 326289387 673324250 499955016 780733815 478763668 2694110 706188121 989686176 304403071 749550730 274679642 604331581 792765816 574072746 146771574 209094445 66495673 747071189 397631536 958588759 337963907 17957264 450021111 924626312 288844271 681184635 785649210 379075683 278577382 587180934 687485069 913065318 563074027 856077168 212647474 266782755 98293073 115200702 148212632 811640864 245538853 566387993 959299180 835342339 720154514 406669346 697785992 650435966 143558551 12898214 333280795 534434549 599635884 587939157 818230169 31099561 831847422 769139287 829182104 522281313 918916166 561380785 742403307 57159159 618233378 12672483 190104728 828438180 686888068 742615337 632596899 544818088 716798494 442874756 678176737 289276396 599344884 776485745 667051081 988819325 79279001 33600756 262460736 253952623 167641684 56698671 121342578 839882065 158382466 76841244 426147007 454533989 287795333 934082474 411445294 596835518 170996606 826286399 366710635 589600647 344442776 454245829 380496897 849939840 662712416 8623998 218023867 792361282 850724164 509034243 121002344 793919265 314773435 471724616 103958323 750454551 385144314 731143475 901050398 376430488 178123879 262191441 567697663 531127763 699636027 969976253 39197614 767407695 170053228 205719464 343274715 827328999 689808131 54264163 253783517 529882177 84187494 672434714 894232869 221718777 504062072 608958381 273534976 214703068 772804462 618061979 956704166 210503221 243832740 441496477 731997104 802973182 615857704 161674928 89588106 775281804 569888903 812126565 89949120 413536952 937792933 412742929 409363719 24971610 406269935 23032383 178354308 279982584 591133446 319995153 628826193 288657291 871115931 390763570 999649750 401890916 793705164 926029481 798082049 939346342 621413439 210074838 868777454 553058163 133076187 734689059 708973266 131322566 853793860 145288174 797558168 672434714 454440958 546818595 924082415 920805293 717151735 121067909 747698664 112805186 742981536 355765589 816789087 822392789 221342169 451462775 722351356 824918675 861272041 399908276 343295602 639349688 3067414 480444673 390049978 668499294 823636081 99096885 101033758 832636818 410655746 555184562 311257895 22727677 93802994 175795135 55883100 65592482 174945507 494472901 52612064 115979078 779827744 456348698 509961785 485816934 609662935 271267056 973151074 464695528 316632451 245648128 982144283 475740932 313161495 745567484 142660748 32009330 398676255 323926762 394724785 542456187 473873069 857541861 72576450 251198489 218728012 148812659 127449495 210950290 341366092 946199328 390987798 381217656 961727231 711479554 554919274 54586435 550243809 905185408 9311413 477819909 173723532 124302733 142871866 800125412 425189451 24937505 677138035 511475925 109910728 290069524 642636057 860805688 994044799 173449408 658042304 393648138 214243448 290265454 587128968 405724427 662682243 344721779 211313723 687867549 955764908 81211295 702491388 359723604 93828353 326294918 197048948 451286550 211777715 875914138 738186326 867596193 312311915 811375857 249809649 991280416 988705380 472059330 92045973 883161818 717929845 548281638 930835152 855014106 643961998 894364275 892858979 173504983 792099066 142807885 160258892 858892150 503416389 172928741 780699351 837288924 406350468 334460463 361701858 712316328 718691886 483514155 698743088 889993260 108517721 311012281 105345226 127842603 795511179 651752174 851478750 893415157 761431376 6980679 828158192 924281602 369397218 325044460 710038670 300693430 869904304 698441812 115138700 174194463 355953577 223234473 200557667 91328556 718529984 794512726 237837945 288527890 408661256 949633972 39680725 824360526 437026813 172538441 262158910 402505865 736702447 185897908 95732981 9008677 783163112 479706055 83835742 513363709 907204943 698581244 358937016 462745201 712141866 856155142 350913242 495663427 442842530 679062046 108914504 29256384 643232601 599529058 375154938 433195970 55354572 456930561 933972273 925847356 926555083 667793842 598231960 861837805 655585678 19036214 612864863 555316939 910362924 296769911 706187859 972138919 108144466 30120326 774219079 368888577 225617971 476251534 669368592 317124335 214472294 186397884 785158896 143260652 782431943 858563807 696851012 742314656 955910287 737981096 363361364 170914703 392443299 733013748 209574297 357139944 501474925 626217512 213845729 586024811 41591608 115630002 953380158 37624858 157403494 100255923 935732466 379049455 421750010 851296989 334702233 86385256 858258732 648093472 356722362 202837540 569692335 170766292 132883591 279620410 132928058 261842205 747444813 120394812 849326986 774207992 445158044 375984448 206174144 778616468 856064734 413952797 655862329 862716454 443535675 947826464 615682705 471878561 117170424 711755171 156034169 872994611 344843235 421064563 593007034 323510792 965252768 28195418 152168409 692061840 91321716 610028974 670128216 808814983 871119378 770573002 672380617 719913388 613042085 365734098 79160607 256229562 66533163 657027850 225791346 865487681 963000926 243578315 867567386 288017002 608598416 784844218 415836120 829355142 437016629 899603926 916478487 120011449 312545741 317489491 815993896 560239986 743815534 448100483 983650613 725369175 747174723 229935369 885427342 287213023 537880865 650561443 893787369 499582497 138470729 783360173 967734753 612588516 22189734 574655174 145355641 326349309 316189302 837513010 819773857 320081486 473546401 120629390 188689379 880782842 410192407 841250745 162115839 417329031 707052661 436521292 444129009 199774486 157986091 35112069 181287458 540436814 326495849 252260944 114941220 657590709 683506233 502677241 175057996 380394466 932186681 422783592 230061430 773874083 873753730 80539206 651907222 719190745 679023057 36996023 465642846 244442775 777053201 362168855 69798739 41304453 476438591 204520409 874435168 912754401 97861123 722206384 25868727 655861048 613921295 328072296 938898544 85751793 368250509 954527674 424168208 168251280 258705683 42708981 771984192 757735252 250460628 620949839 738160680 520446590 479314237 515039012 455980166 490266821 235859952 396910703 159360474 55663241 236794664 594237297 765932665 839530970 740628675 393400831 317177835 914588865 476187971 755719445 468289068 624475397 76432560 221129443 14308104 942391600 327208891 754495367 602667429 193440483 521031725 569834296 717848046 163626299 290622107 52492839 368095525 402579487 829031185 706980484 647305530 911904058 25542602 58513274 930359641 381645923 491923217 658084043 296488763 463927480 778277586 581727806 595165032 252914689 770196954 273555488 113070692 980939420 800724637 737311358 913137992 860222639 61197937 575260277 199866167 232886548 534220248 204588081 770109168 189250503 484104473 629530643 863161474 16977048 188148056 255875861 253160779 120654586 123164210 378094897 176764218 570919976 669368592 581661856 320853359 3198967 220912826 739590985 599881064 383149391 756815720 618524306 964321023 559315910 327567718 124803356 833558253 942190269 702386631 975565946 421606889 63111204 916333390 855039185 135313799 171940219 803509130 111926436 90978527 409615481 600337092 559186606 277470596 142835200 714488937 545935497 640976647 292754556 191688650 365323085 339722388 764576342 129774985 550786068 205270818 931128076 166226110 676005625 402887290 857272011 311709463 571720535 698196989 620559971 758475824 674175178 901734628 961382165 620777748 409504799 860724254 118945256 352765518 269407517 895849008 849190954 515652916 148300445 520900837 842760015 306322667 874826754 511246185 574239703 115294084 295164774 654751726 206939281 266554601 738999413 267832560 384433906 894769838 276015611 20399435 317170354 876484946 169579457 497258505 660431391 269663157 216784585 981841313 889083709 145543859 661904410 294775221 670114032 725762634 282481581 179224386 273045395 239721152 494428241 742558508 412131890 692751521 118556872 162324392 443553828 942759851 916634626 817052871 828493863 939438014 612125215 416788595 516982076 759915475 639267408 634718194 169668831 288512248 662381011 458385378 116386112 798460980 672123458 763081108 351694370 196433598 192658834 247537717 807819241 528480159 631863810 377481745 135749421 841766883 136105995 659422187 199355103 57285591 613371863 598975759 656417680 391361005 466709199 698942888 968070507 529048671 315216254 561305899 808534016 833187326 154008853 548337413 50182175 826842689 206285807 917075491 289166427 926026414 969582056 304719259 112155748 970320960 890803166 79728017 912559211 946321180 753014825 504295826 1781848 892688580 54898908 933124333 990826917 94476090 108835803 908587498 344442776 512983080 596189052 684401341 416032839 2550910 64361743 542878922 966424862 909849712 722793587 809433821 559303957 852888439 289732160 637958333 479281896 532518952 996143755 582952058 712958081 892688580 167967139 442708617 757445779 82783329 444509724 813216696 713957242 291669507 69013242 35502840 886110094 515650061 25734334 762394940 605029035 873000175 482480051 924962939 560273785 840169589 975678960 215653396 378846067 206658523 178773879 513313679 259226805 241957617 994327041 528092533 177483816 904038126 563077808 751425968 832487825 294561751 406803564 833768024 887037998 906745483 16493779 724518170 858837891 83908549 164614484 948274637 777388611 43653802 671480862 783163112 676102730 20414011 860763694 876515785 281496340 859576675 707428494 540620596 624537817 474438925 860706337 208589614 959491910 479586551 128905569 977903368 845624535 899764391 421627110 931412309 780027364 935762601 213991985 370966318 546360200 425493847 547445134 67053607 845237328 319690374 42971961 822392789 814074794 508265103 264224192 269640774 301141022 291352673 79195669 323554175 392209621 410655746 444559832 769186751 337713772 284262790 544278663 501903176 382052182 501141795 359760217 711682729 722523156 159255130 814415864 644611625 924363499 423183014 254464317 774352851 834923524 289348161 808393221 506501145 578846585 372555108 660064376 934138868 738183657 910723888 467825169 687333221 817621139 665121109 804789941 393903778 152113705 749108943 853495206 323726419 383811922 222221797 241902249 418505989 867563193 136564985 48556398 810758867 853282446 236218385 715745893 7270416 953912396 606266569 320829 530240453 59688915 416047529 285814365 969693886 889571674 814298626 571628940 111988047 854489802 980278764 426028142 815213954 779510469 855845778 34026797 425547213 713648094 15319281 564434873 57592650 2797568 325427152 782425145 544366124 108725152 963000926 335454931 709532255 601898490 165311719 303794978 735026193 350248008 595391650 797863465 604961452 195748797 395701517 421011577 600136289 425778163 966277965 797576861 343617319 514279141 112586895 928388223 670538576 415568777 916428637 201802842 736198978 114459514 441065944 168881703 611420557 320924697 987687810 410945496 146668541 757575715 238237861 771984192 654020998 317299532 192054523 635347912 573492577 368424203 102661157 345995566 448108374 721149085 808143741 756240904 593923492 800206910 404965776 707243098 350225811 836105875 7664280 323360348 776485745 702584899 838254498 145271387 334761299 232384340 743277501 220569186 996470204 486538852 548167913 359559372 803490117 751080673 808776798 930734436 60175495 758816255 358064602 882678821 449353740 887012463 642400262 475544607 670862774 583002741 736003541 749502477 541865558 154073696 976742849 462664996 403159155 436215231 342685080 944511806 391456874 717700860 614114838 367239247 630733405 466812269 283683211 483578535 692695498 298676301 951582242 248506211 255514134 925251689 242634884 636167072 983167252 267087970 938777905 409548353 200435211 398145508 751065123 966268127 616313256 834126895 900370778 427602035 806188071 143096893 880782842 711157477 572476647 793431280 556260002 706515057 771384592 594091266 995336332 913207720 456538790 599191959 291656797 112892641 489117259 375407456 960151426 481923639 951926979 443384321 378355302 152197098 794561046 474898955 10169923 439803096 201734537 25554101 401431515 695081249 457975268 500861783 915464593 856784715 776733363 621058320 232559845 748462985 939099390 520654835 295464566 610143301 809046545 92125255 117065069 404245321 14569346 961401774 72518778 704638946 583422459 54730414 95221977 247922108 644060477 24547570 509443006 800195338 477089667 588479870 659332005 421798794 327372440 85376477 503689554 26230021 518213542 45609426 289609809 40350005 505535669 77076114 853193907 359367978 42827734 138311529 915912352 155949240 211034335 878459014 370432957 644139813 909473742 850867256 29050113 590673181 975312463 314854243 6884045 140130311 233275828 316841144 571277186 718991577 476310410 842760015 275273253 977453075 948667288 761421065 795991802 580866869 615152866 935387171 960679335 496110836 551248930 932258577 645978887 337972798 331886772 366477553 326849844 62234913 919481701 238680884 378289123 934486360 26127331 949255364 224714935 730693935 442254311 975146031 377659396 848744104 139790901 37458310 245016327 633222307 177906470 343359622 371351398 801586021 215333307 88996838 659231303 170296641 219783839 810567737 499434872 504025724 713804954 657327030 936415699 905986269 346806889 566065203 788736672 575828409 263789225 452759766 491407310 249160744 705467087 531026372 493757842 79881059 19464595 376559664 188473275 499846118 497951463 148224181 348903550 634753601 912980631 126069453 118181442 442131162 749175532 543037438 862247122 832941572 55432611 158062918 480763808 363115207 47060245 472243329 524867834 938310878 979651985 949269365 841497277 78362074 876509974 987789479 527382954 201636629 696144449 135296587 354936775 479940776 426382637 76841244 725626789 452484797 856353921 412740279 832768186 545122251 207477319 619545251 214980483 242464153 242421438 705157488 906385443 951223456 445135358 337039027 904084752 27391512 353218611 914249699 207378456 555286296 588180232 387688809 326789888 852017664 438535901 237786817 334213287 203596056 101995892 273221429 865067793 946702706 13766537 523584177 706492066 818185239 746919595 950194449 120880906 116069043 666403978 224356893 752113060 812299753 619683347 809195312 20030545 440539909 604419118 8623998 840024896 490248894 274680936 258783405 614063890 979251851 735588623 211595333 771517459 269836744 640147854 406935553 42686713 42451069 508649964 243456453 665405194 410964398 191342927 712615867 144076016 870565968 817451341 27216358 559731563 914349477 57861183 712598721 709877136 352268699 539081225 333916645 805534086 957682768 954617492 985508270 56164025 279883942 574279398 659590909 313885934 205268837 936033556 811553633 40045734 153186336 187151751 520099987 425211700 994247969 854604076 102476479 440943584 559431489 667781738 355558444 567460705 636322488 978725577 14072714 936561735 570896334 980460467 589328660 232179186 668118904 678834692 488735441 934897305 127842603 66893597 511145161 783032572 375256526 25505765 373141301 530464168 71692749 741174775 197666785 935873583 71943187 266540648 822001597 26620003 185050208 279593884 674900283 659341874 68647402 226684661 976859639 650194612 978033898 224902806 848730443 752675887 965785973 46518125 792786341 201070404 227578317 431739531 772375368 833272952 686887514 589069425 128385093 2394590 954251171 618635245 608561439 412926635 983193005 186911462 703650872 353991970 968882415 780783683 255445517 883577246 6917610 897929403 46928270 500072876 630923162 289407992 358999354 784279339 833931060 343958018 486536823 504309918 668614702 371589991 554019748 976060902 214618164 615068085 376447494 332902811 571775292 363205806 625826398 641585496 71157693 439470991 680683648 480559854 730666871 359486363 832240523 443384321 364426079 2744220 520997858 467599030 749686026 846639178 722279851 725071315 163583622 33669331 779827744 285139620 703002295 107502212 991438663 548026401 20869591 698487585 391335703 182836102 161779509 866293845 292867014 168085474 833275452 546559159 399235988 49737968 829427562 120041670 921135788 106184557 466509280 549604659 96510379 530372689 710033955 249949171 38065525 789544903 698647692 140047859 955460099 151985680 259307786 37422287 491247960 720154514 166270558 250213489 255443351 249907152 500082196 703961068 531523480 163019934 678851239 420824952 972491556 21453163 811580665 545669866 65632103 927340631 243339021 103529510 878102061 639486974 388309592 309259789 876682410 941267697 785380104 734791103 103746817 605029035 774635789 13200623 601293750 765324064 407488379 692842017 661317755 970239725 111216656 618465139 206986390 949800407 560100986 442865470 515202164 362611866 716142 302253853 960554299 392463902 891817623 421323597 952365107 592993232 996772945 748796239 727106894 62870770 12894231 558256118 309362110 48846087 145451608 346673456 676102730 867203731 658491550 343579735 172679781 309756757 996423643 775340815 942591903 524238972 649338732 836105875 952499338 379833987 983557084 877943232 795390923 417865144 190209139 929714041 737653924 524968092 975793297 367997234 712076864 253085118 17349038 651305704 784954685 71350163 146699881 196664284 960185204 344900562 581588193 594188704 448425029 421465624 183457611 876773245 998546692 723678180 982578511 529469849 949273279 530050734 445623858 621009749 491492539 785563346 150889131 607866838 615679453 27292854 418907310 440730378 392366869 878214104 355005815 207862988 731554005 62637139 978556109 597574108 498288227 875479758 844018646 334149096 143329121 847986398 19267269 947662468 139832619 453864595 119855608 496093911 650030310 897932714 945427572 679062508 262794614 558173444 910615714 878717347 68209468 810038991 185158844 609918550 912373420 717748551 889664856 974534789 764249663 867526135 943647134 934631558 993084097 451686773 580334299 724708186 851087798 527852894 128921933 176853800 644553266 835962065 759217908 616036324 393386789 839489895 262626062 498598738 929942061 757342186 150475892 951655964 896616892 809488375 256752024 630849847 216029998 418500526 715139444 684908491 808124180 380667802 895822393 923287970 353260341 345577037 135917426 227099672 642742010 251879257 351227574 127953293 331597580 576383807 612763309 287495303 696304726 23249446 148698702 726490841 632901201 914498677 755650098 808234624 702713956 202801345 796568486 41239305 712281981 715267454 343767736 366484296 539458706 514413977 964151066 307994435 25487301 572020742 858467215 207391898 909619271 722499327 42066593 520697098 786871853 204563289 726191209 198799508 210994457 324095256 996786966 526762080 237339294 271354388 37905191 156670013 105719272 656701159 394542114 839896956 63816631 329072524 859421728 739449595 995434356 788878557 773672595 387141221 675348975 437954227 952280853 249620853 540861292 238444187 566942226 270103362 439279531 665275777 555332562 875953211 847193325 128694621 899767281 48284298 934503532 636885165 52354808 104893269 528412084 486128392 512086451 82690879 891617025 755469923 249697692 86455247 814193776 653768770 319560148 636025945 925136192 593588278 382587084 795989694 74104087 835304145 694900037 315078693 173018836 152115138 945982373 71239014 380026064 259412730 143712763 866773554 416398897 807647848 141369384 443033930 6429665 549472590 150655539 796128765 184510859 437759809 993973606 8367206 81971466 884286534 639633777 898990191 992318670 93263950 267664293 998733416 95941150 446161136 73629277 468962039 483302301 419813416 49908779 493512128 323434436 670497643 619126079 588064451 356616092 561544366 642536765 409811162 480474962 658975416 364815774 480801797 484346052 581776241 124803356 180637714 21125568 232090363 474670027 677976940 810513711 554781506 197661506 576246015 154899289 544194263 450980802 947003743 754262944 441957467 632771135 79998685 541368396 770254691 284208715 129176863 234762078 842010264 43613063 181993549 981175680 719935494 817573775 165977517 292764107 199781529 242459571 266837462 583335515 70481799 42128415 894018374 117336108 152429968 128751822 555364956 463610356 714489066 323664647 285424066 560435833 664223966 7101028 388215767 244442775 837438162 375885008 921818056 202175897 34481312 521752417 907790986 575140691 387987802 92559475 348031557 278659405 897881906 186069821 696460212 222557427 65113346 53453214 645124068 805497706 961780414 374625511 982827517 275537268 166496148 350096957 16977048 640778623 381276344 668723849 470308075 882608933 32080776 467404128 568746934 72847526 669642335 507565644 39455059 926483619 97126988 416503653 544263330 345494703 632362300 246712266 624574919 659312336 884862346 784241791 716655707 135506860 827098864 877853570 51418205 474051094 638586120 877391518 912782467 73935685 406876212 799265753 966896736 942391600 547820754 562345723 354238870 62778905 100019046 646380576 489301767 738591460 16244623 310734309 867930560 666520266 743293456 141591441 69083626 652423265 442836870 695671056 777924175 596533881 229787504 210951920 216772538 545215165 56842228 823366291 216105451 137684242 501125796 727848916 284870483 605256404 119897161 409616010 221694654 118474464 559992576 207433193 617618979 347271362 193634354 250591566 940394737 67058979 999480034 649475692 503951783 662848609 44888120 177340024 247144695 771074882 919427345 375484994 316987047 693844259 359990337 235053886 968480114 277917768 78184591 613475572 374750154 109085193 690496587 120183327 860518473 995809400 97342261 383429452 645767271 656427169 325372421 526249331 744565311 355064394 110495748 153842274 783079210 125413634 217379295 497029032 856822519 212859746 377119508 9924571 360017410 337929395 220128257 297013261 294448273 256162590 3747040 244914094 968700949 547139238 685544961 362085782 895659812 800724637 826240716 441404082 471440168 786685942 513754236 9672286 587421675 915936361 297762321 467825169 582418925 895060559 285693980 792527404 763821642 712347542 167624105 303040917 608572220 567697571 707490412 96379943 518707464 940348206 735674911 876916641 699876063 984383158 462001014 448272568 937422682 270685507 412279678 425211700 747071189 809450327 214045770 18389805 921690190 847310502 500861783 864653952 444129009 588338090 756789256 233789448 600590466 123165955 788518697 864464973 496104598 232615593 714171726 720036345 730489927 680838630 795127862 209865804 821040072 831337887 634542863 508458491 271338740 229333407 270866111 715762744 384018973 917249978 12061875 953468946 113558051 234487052 22615167 448219204 872396278 517745358 985184738 566574126 876339334 912477916 554489452 628053285 663942594 390268723 756789256 184340049 651367948 827512065 323225639 609585074 759420492 11647704 277520265 227072645 320129126 477885786 228938747 789673667 599435239 339970541 570801746 231655457 152915482 27255310 489600871 249620853 953110959 446517386 375388027 754887088 854938434 649799144 270757885 270339535 424360676 964568646 773796221 142673838 1384149 497728158 982365412 968935869 491992105 199126870 175867964 394638343 573427710 385215624 252932063 526803057 657700264 384434325 205907979 853046144 245919492 348951099 935753816 247799416 53526268 912488797 101500076 724553962 477999813 762326987 29746148 341296880 287652855 952499338 245996692 658506905 860934518 896834351 20276611 902031742 852261859 560983835 941619423 817657863 568172244 903185696 536787296 802779506 736115144 749289143 149097041 293880162 233890460 58312901 951183423 214348818 418296133 804847393 872920015 192765169 56816794 475393680 150572185 527959162 417865144 7737593 149960707 310769551 60350083 177639490 353259904 144813401 691023661 284741257 622338796 734860046 844683461 967469813 833631612 619001150 888587414 701738453 511565387 16246703 142425049 849956795 247520276 967078000 645911657 515552247 140751542 452020340 801133837 881749066 263698998 421998827 977863983 974498210 661908049 497328977 922034240 383854016 388581309 786512439 854046514 207297391 356722173 789845699 594605519 815276236 124521222 168919915 413330603 425136872 240686583 420917476 882165646 830157567 898100041 428029929 355429622 602859906 533903374 574650275 398735805 774575197 59880543 214129638 258073669 741473527 151683241 162867895 91985621 966523868 743568295 4012044 506526360 507899013 172757107 948638856 370281637 911058337 243267520 753012736 652127038 981949275 258301504 641500254 340945209 591122807 223655199 26925534 624255427 840673854 161881059 914244968 635039672 579604819 575012192 452533417 543548427 559049822 541176056 99778948 585041715 426160608 363053866 853079021 425717869 322147583 446643414 625906021 910863340 436795411 618827768 494478924 224273027 424693650 6624843 456451871 110092976 717699955 965706451 720569836 408406226 64895304 123643530 498178852 288015239 497627011 975670597 816668269 84232257 698268685 529444776 442805223 790870340 123920737 795294624 967942637 182510437 220815516 922423652 300003687 120428514 179732934 907246888 571766708 198847552 640264213 930179381 970184695 595043298 368591192 164395307 872669103 602174860 138775695 74529885 261320219 584591034 59756799 777569065 710018708 921841492 700566400 716692374 705796878 143503841 120137098 810595580 286191872 740989684 353200022 395716916 969365138 815843114 300299587 380427833 487914185 114122981 470117351 218241045 895066423 252021356 681367327 728725946 758623094 789775175 769848504 579722603 799074297 302320264 588214817 79897254 945885216 948676373 924212219 337831393 384566749 864703112 690612277 743406290 723478670 895483920 373340159 584372738 882198161 937554471 437194283 509600994 189898404 791661677 579653649 520314216 757232765 631136045 832157128 907835965 201710557 364783964 460330753 475740932 921730758 316337035 528149914 245730923 364344540 437178406 846559697 740020155 338028075 2532302 146534988 445729750 396417040 963881409 762038384 390579936 202039719 485078619 535326012 797001432 454412103 203592851 753099293 406632630 348418514 752851957 656788443 805720390 470132277 560297762 823366291 788339946 204131065 135775843 400411010 731518841 776077009 785480995 743585912 904853920 977372041 556492072 9318780 94346740 329582538 858413952 182353362 19036214 656276873 921622332 262828447 142227717 622848868 229630556 349718419 99121778 138152576 481836149 299973385 707588422 9624009 772352490 202722038 838409338 276948902 498088561 452698564 378265214 541304146 191489744 836127804 510737869 690830407 804080618 576764570 134969377 359224662 241602006 134901994 819132947 80115855 678343586 408596149 493409280 787684704 42460440 652940513 869979551 960229022 185068399 976694759 270214663 809958000 132831691 718495657 343235860 600253609 12446456 955896834 368634183 212850274 168246292 798272186 204127126 870929123 527201967 224355028 702448641 320148 801555153 179500285 305435711 324199664 31910667 389680919 527430438 55833668 881053988 617520619 707769811 660478005 436517055 704587785 264573407 473699375 331418653 743131074 362434469 7754608 830698398 819330161 255370991 844674284 220477834 628364010 877081093 431464519 547514456 168768972 656407428 58007966 732220786 342989643 897853100 714398564 940892875 269560889 669238619 514686484 729411384 678075391 890428652 512916783 641700175 525399581 675512278 626861169 80495005 79934510 156708345 333364715 878435941 66492731 53946815 821813637 660394152 695802414 79768466 623829886 196315752 670562473 919220579 407616403 323062263 880439976 95800444 627981083 878496795 263470837 183558446 381810531 55873909 903906876 723431590 587592528 40679447 219079043 369785381 312949941 158225049 571001516 735951486 674900283 696127504 949255364 463012890 574074356 268447891 381053167 372737799 360099346 918287450 328261504 872964594 92898621 320129126 740911801 547587585 925215961 359367978 370404564 204139913 926555083 30292758 305144134 173684614 980237136 902797560 11996459 518828464 581774226 553187214 245700337 237887657 483791443 870200522 769567872 738856453 799882574 738517642 782451548 332725914 574484033 570728200 348789840 479746526 276050287 964193923 228797882 950356369 729725686 816767742 312181855 813351748 988494606 713603455 691857215 987213735 691400031 717436428 906229480 967092324 826086710 903944518 787675566 418446527 869691838 51374912 960342965 985239926 312524149 956491521 68720432 305661178 492425395 897785614 573045528 906745483 704183614 818674748 555332562 467747254 268116690 770266496 588977447 77152142 744858460 284852796 29612574 150867065 359179714 146928483 477711396 130387764 685593919 430614638 960125832 984694609 175386085 210614618 616229497 30541740 845643978 595069669 705718989 724914187 227578317 496572443 704496940 363374106 956767696 106009966 930818609 179423869 300745790 422780793 738776508 94964116 296757663 826094478 763023552 35768334 516595074 24532127 141658636 345747918 449051098 977399328 36241837 690777758 934305610 732368884 425116429 182854541 628212466 315907387 372737799 251838155 529566807 958927520 91137510 326267037 887752885 671153803 849844879 207876488 998039450 809274273 622392259 32351249 16806493 757038781 531477130 943814370 153021935 309919988 441981460 653923999 678399315 376522496 29955695 497829103 465965549 801537648 273522205 914483824 231581819 471244073 675588561 797996642 793658552 439806388 5534246 988559286 723221527 290735196 471009223 325176654 810513711 692230615 290936031 107801717 686893676 602380790 154545858 261569571 883481459 564719019 870577906 225298905 931258201 986379257 486349190 919594517 170987166 303409666 902828335 747076440 881426231 140345387 389219681 60286821 27690932 50832081 549736991 380667802 360127142 872219621 585823182 481963736 579985817 277906907 531102335 344017475 243866529 36003249 590411037 68637886 930473208 27777456 109094206 69983967 351934170 685238814 380970152 615851316 236579700 549102514 121112903 90874095 382827917 873193229 382049993 632237057 826032867 439995802 828979623 403434181 221909912 558662853 222350629 546965706 984232765 95732981 769003654 703669893 1558272 133785550 719120401 666841087 332328118 91726395 572877164 622322475 619676871 126345588 477948690 19248492 827133720 454924950 107461764 294444094 936275268 12722054 775673485 895804328 741436896 729636542 290078527 795301277 647063451 316711488 823943621 974492213 24489454 573326516 456407185 980991623 128641579 158042299 971896631 831603486 498517617 980746853 242238774 520016027 336923638 180917110 389801136 777734192 851969671 285934404 887952902 756336254 125592588 899623006 763821642 665841158 853269883 282290730 341319829 865735771 778438065 802365523 634107847 87028833 231142546 229855608 188065419 965285595 569180252 620156343 453070318 675218246 495884446 144517669 872284218 566238822 717586305 132705125 810009181 530344390 46617623 182331004 901467984 924962688 292630471 5857976 469452796 79903363 625752454 281811190 503675445 548403852 356569004 845400131 421226823 666103732 508134320 267314451 473099668 58841422 274340122 148519320 715229538 438535901 450490535 579863539 836612585 46456838 132634299 666648892 31800475 970015445 347643728 207361517 665648871 265518810 270127926 258705683 678732870 444072976 421126545 544195431 511279291 190799801 994812682 815513640 169793726 541250847 888812448 267016829 870265004 413280089 481775185 19729932 611937795 849245807 214548318 752578734 382993765 74402970 637674419 578213504 151345580 67048698 693822076 573595938 102853268 339423702 931178415 275215591 240849859 230751139 165110008 148943886 173883262 73514010 692310226 372567936 124820852 24832934 104741604 797500813 980113241 785549988 940953795 794071548 972907160 925165307 26102365 541567999 742324100 371198966 255457173 359582550 180080644 944831634 185246332 263546379 102323900 710877679 37644032 651800856 996924885 62861840 988857758 791393043 723943307 568623626 106516583 534085278 607062665 524807179 734142806 82120918 224403433 876499155 868031029 802533191 295227604 607085102 722334191 69513525 35519307 789008103 99186477 756251032 718690859 796364336 905531603 865902297 686054066 32824448 149521330 340862543 265926601 856348618 226364622 974585784 695063509 425231733 201391127 114927997 695938592 415005408 349083148 470916283 184972349 256260769 446090188 130897340 794696735 186905594 884240191 403832975 68134405 845266297 185102024 674020804 319530870 838909645 802495855 358674289 258793871 844002169 397294280 559582565 936831278 40877070 185287670 921211720 225476809 384690068 773774213 393164045 320163969 747390795 926230309 435329350 750331659 893483310 959291507 816108956 111817710 337056302 776594719 370612206 707529495 747735613 968067553 738737561 821766619 953355983 464907639 241347344 298975964 476626718 206184876 644986820 462759446 542244250 844080953 789487226 50536 776748223 223175489 498071294 492611162 657683484 17812789 319715878 733774654 668027913 751494663 206387327 834995999 430645063 237703953 927692655 312433946 241206903 709196216 185139502 765991057 591796051 968752784 480957326 9866637 140401460 71401339 774710395 614572546 321329848 903740413 293091928 503392938 456571844 41016469 831081289 913922230 130050273 58407606 834787721 310121685 752727148 934001047 33708702 110092976 460472134 663070690 313161495 765467096 431356708 851688248 45243503 966492177 625996876 668041875 84657679 121568744 841871449 173110636 963881409 119802977 641133074 416642560 827243164 161305066 513778259 578587086 471769748 810539720 555738603 784501945 838009451 248719328 498759434 57609289 936614593 567244818 804297664 28411842 30134387 69983967 727913162 22963848 980266196 377969611 383554277 270244070 48942774 757912470 413228913 50011685 399286782 824850138 367185189 604176019 422513744 549526578 410026920 834278847 631733496 899603926 79073460 493062393 5283049 720835203 632734271 592978171 83227347 97126988 98615326 728956844 568362860 702713956 947634934 781760171 773145774 806654693 39437773 395838881 970572929 687492661 282730228 646409089 322020727 921261600 733628366 900672732 66114884 525302802 825907130 191876692 16487654 146682835 782579493 933027900 151515038 641107000 411762397 649456232 713239723 1811757 944704728 611942553 189336837 766977895 715208815 386520538 406123833 915684600 210252919 802564604 657221073 323051229 636124096 4134604 592174811 484336686 462197810 10594355 779135456 601582179 197894325 329659300 146577819 720894735 624691236 351633561 750315933 975234437 854906876 28577857 622750138 209119061 339634076 688787177 251966245 42419933 273552236 165938978 391718967 46617623 675545571 500068417 397017526 726181485 351399674 558323098 538793035 122441136 182643830 354471162 195069517 24244761 221256543 495031779 525049054 674856646 171206066 891161446 655024134 616152661 230503639 334463069 887844221 248424526 389810320 724203698 721849965 440429679 418990590 716350125 190239146 443311883 862918015 149735837 426826971 740010247 371960760 313453896 459903194 778108465 857116180 846228941 918214124 92774800 268066483 214918374 60548789 63816631 11979868 512759193 879145071 891140155 631851084 188143812 422642559 492008035 225672134 850309523 272684755 528539750 569699365 149906986 857259838 171416791 876530225 918467290 579902913 764762493 877339376 29309856 277470596 788462565 502957282 818259617 271200292 299648011 447528804 4169289 302555331 511208922 719916074 897442191 858236713 490940016 273994286 900647449 315024716 799504486 835682289 641946692 309674105 112899957 14600901 326704037 981949275 930275718 33139727 637504207 940892875 7965828 112647569 376337408 157783160 758848566 848119264 852244315 610472639 743568295 765932665 114410730 492619802 799239744 113759111 628509240 982264069 29778056 936141753 208132327 620156343 872269097 937084215 184404568 140062063 228016844 114089961 898274634 748754952 554534428 299172529 960422988 348555659 206115745 990140251 730647082 327894048 671814461 627437963 932920635 191689806 683647554 603816614 925741131 892439237 332974895 909065206 83562402 221299154 663797043 544176025 967589147 473234485 868789346 235814333 58146210 493376733 267622648 50427381 174787374 730663398 105692391 622477829 600559725 230552092 975146031 142822417 532547947 29256384 498598738 68209468 186911462 224758098 261800788 848014446 411445294 661712011 150881626 252187353 711189669 435329810 717359984 826078563 251726888 792765816 272762941 556837921 572913906 430107231 867293501 223908058 442832946 920613120 710780202 366127018 473742232 395355456 736917503 981301816 19095831 495437589 317528413 566493169 110161678 759385682 399514067 376934247 179218839 787490054 613714634 298214672 121864026 989894902 554919274 149936404 781529061 334843146 518707464 975413865 267406739 417690043 914344640 789346618 995107796 47920853 590290054 902446088 62001345 450391903 968663706 99078338 911091138 942667117 192240835 338245433 545938763 360440023 112075414 168985347 69995766 267899029 327790799 137731579 36474251 70840144 248887852 180234730 149379450 317915088 836402208 739590985 818223058 962967284 825373261 958400236 975293652 747222227 480033553 214928254 158518041 846948697 353257785 578389277 81603461 452593796 44588800 419815712 331045186 281460535 271217844 590374934 443550106 621518057 838228620 615756642 237921670 256833268 298442243 266689404 391535889 104570969 92774800 17752403 371253256 515039012 172877260 65486564 527465479 203940087 755167251 756540939 639349688 700907115 451439442 386218673 537216282 682659118 348091709 373895807 129996497 754056443 53629847 367615581 758224803 126593176 48204530 688393470 597920890 296267130 717031642 810880644 487446427 470679823 828719265 412757894 897610681 332287029 358377153 802519587 795031573 511528806 271267056 616075539 833366436 750573348 403897344 660000606 990331416 342211595 182953192 959159208 649626785 976742849 433993911 230907182 222654789 750907913 320960024 856904274 558261607 558386621 772823012 731574800 692236674 653278266 863953244 916356965 501129380 265766926 125837906 840418089 845232412 135495146 239792594 515855946 470478595 215909063 799095752 525973328 354606454 256253693 668192204 330115200 741777804 116291766 215635499 503925245 463525376 397056708 255642734 958626164 600253609 166183 264331156 241786762 9406050 668522484 903544312 544899617 812880799 665420271 154772819 978321486 644546764 404072647 965726587 350912068 125982201 993949554 217504141 102523662 793171278 710987711 283863070 914522122 356802862 317489491 136848398 729978108 479221176 980995452 257841669 805497706 267961345 203995494 976358684 655440270 801615284 884172151 152512811 56592426 503768984 19797042 814113621 457925444 43412027 317755152 730424310 501122101 784709600 16897708 238264269 583031587 137443031 191587798 781700140 842108595 897594767 859870578 756251816 878038988 677562085 493885750 447695197 833631612 512782021 386179981 194372412 780001636 393114210 574567912 539069870 718245171 305253674 233788659 689053361 174556137 261941256 5862004 889780530 173723532 492599649 701448735 660417693 549293008 895129262 465117530 33559324 548787778 746887355 375441426 851056483 269763737 842982474 645656897 969817270 505724151 513013316 45572957 879631302 59170281 962157323 566949008 315527673 769042870 794985258 390948588 676995801 86748220 555227957 316470592 414034964 767493022 126793494 748492703 647975852 110825039 718809247 172287763 890649782 615682705 151874145 287454098 279185391 444284227 621370354 582540448 699749395 363138133 405695714 596468830 348225194 360485536 284262216 572069625 309922807 853702085 41591648 195883279 675373139 636344843 59676462 473408219 564778214 137677670 275880829 933465130 147230182 861085899 676145644 588571823 704648785 669600080 563954818 128391847 586320608 802983876 632021469 24759846 691573227 538661728 296302044 802171216 618355188 324659384 496024193 513418437 845734714 48044151 8350806 937963910 601125939 137366431 719383067 263720499 643081624 112816710 13918627 457095951 6530235 861062866 29518487 731832043 478048582 344541021 769615597 249505107 674377120 926585704 370807745 774855068 771382671 339605525 312682030 145085990 263789225 853603718 394303028 735058519 392302441 388488862 155872104 659356607 590974262 41058196 412075236 358049164 214698672 707700258 684237525 680033969 638084207 386106084 266675184 258858677 64241836 211410815 959105551 727111227 421545380 425735728 608833299 562002769 898956039 817755949 722116217 83012352 730563299 631437168 36689314 20869591 637837926 395798079 416418210 314980500 836812079 840450563 427959955 205907979 877419922 894364275 319691392 57054755 329097764 920613120 705206143 57025039 53079732 531686197 93125783 553311285 805914889 257105986 1906348 101894792 178808822 301277322 383066710 501311179 88224058 205719464 645799728 153837490 733349051 297369419 956397279 331540721 745244301 829958681 768939375 121160886 808499169 851251858 83908549 778291025 186388386 328020983 373171262 459214955 628379381 552965547 546483333 346823454 895039237 990915863 830572818 997986668 453457773 464549000 417963980 951773091 700187320 627815311 249233284 830012386 58711739 97862893 394649001 194684547 680274009 774092453 980739584 756576534 148470397 77238151 902829666 499349499 307730522 213093264 268537277 649420466 860971166 686419875 829427562 721317568 352014173 192576712 126297877 355102722 767846682 724665054 785433327 374884092 110144198 924064960 738706110 713839751 83883923 869709122 71346047 645397488 368307596 575260277 216876744 196104027 511476613 770321661 270076760 764807145 543869465 167385377 214863091 545145980 206426758 325374298 185253775 973375717 408884261 462785279 234642455 685919562 684469085 734596720 335287100 78759567 246632208 994685580 724518170 857036015 756815720 715769988 468335329 858440906 867729912 78502919 136888862 365639550 266201922 594867663 370085692 264611548 591138991 220442630 763847693 473216109 509059440 112896956 215653396 18888989 615778508 554913930 477290269 479586551 712544007 931552092 996405869 347831976 473165212 113688648 428807475 77637054 853510808 235986003 782539829 506700762 263175226 472859211 398727852 309284668 506386247 24148338 630645359 563665551 456667365 557627184 243900794 275061392 858880882 677311261 606820775 161057074 856556427 534165464 527779353 985256037 299048325 781935956 332903272 610699668 888318865 901457861 405722196 423434184 669721473 451907416 382520075 151431636 739950993 966391942 342971345 777258876 642233685 520099987 370327450 873193229 110587185 47588698 287196610 618504791 970965904 314993257 600864381 424168208 5816509 523635348 512509705 299113841 231400105 36456822 603605833 732474520 775340815 399208084 72235876 594643022 750573348 698400588 572228084 827644400 405769282 160814390 580349882 110523968 618524306 972404566 904038126 609511977 591538256 560317340 695884760 845734714 228922432 66905511 282940578 694667085 850901151 536068957 548134493 694661124 806918808 234026828 559587169 341186153 75787738 411444609 540446796 323664647 358677332 686947749 811262681 876499155 389134804 750822677 732563510 94813571 15096513 672617051 354823239 285139620 396703161 941821163 442730521 547813009 149264499 470160355 917738281 983192609 234779465 492264608 360382896 4209432 610222716 902030835 983378371 662175643 205470860 458755537 805381242 141774993 116291766 624272353 957170737 59186851 215574075 918290700 78199079 947127170 394575981 726299583 921702076 400411010 38014042 406732906 398496816 172003117 919820169 184197193 621573996 309428793 56857513 585436566 392716155 536033248 577487205 327947087 79728017 360661449 796414571 986132755 321691139 772710514 921522371 749775333 193146843 939562780 846525137 665980078 29467866 440908264 403603113 506171600 330376099 183604844 31771914 270146761 116296404 101316137 3249519 544515907 189713334 426554662 755553814 476062295 570860184 388183056 911277345 860804333 786260605 354394619 629357985 495121042 726490841 148148749 667261557 661255322 288453481 968474917 727066915 356707522 251718499 885351658 218023867 399200811 249815785 79161584 19640065 599344884 554094394 908037734 364499862 253434787 498786205 154075504 42049305 649338732 74574928 169481947 572982165 552521857 260958054 492519887 585604424 127314229 616266255 271926039 685917961 567152544 530304756 893459260 918241151 551027079 213904309 697836161 205547840 508498621 742981536 796538692 44389153 499473114 84915015 611033199 190357434 266046628 990044487 182547579 172985536 535027472 624850830 200571382 120626006 429024934 359582550 494610477 693944970 159643945 258804018 957690522 103032957 540830926 787122241 225637299 502114229 696769962 145986930 933063553 794308422 299031487 746603440 506721607 470576393 357326672 906385443 139905866 541745519 924204713 859151681 23284481 975010728 164955972 925806522 81183387 834243541 698059557 592425201 273515282 523292908 758334902 157608712 414407515 882650200 554559169 548278237 979897492 842635613 827725942 547567838 817420994 426547186 430881375 294444094 997762533 885538388 551863042 759345284 954410703 441805870 230465269 420384658 530146635 688393470 28949754 408829151 346700091 783836568 768860208 346901587 837805276 108861718 236371454 431209238 548014015 541052082 35212844 49073212 782383100 127704644 903310815 991438663 233985443 161173945 654975727 649857558 974709740 52519950 33177721 790702079 151401513 720909725 988936793 310932582 696555558 478090620 447675843 816424957 56513999 43681200 236668930 438776950 952086007 111685658 746038273 436144036 225617971 982798297 36003249 459460395 117008820 519393140 914412142 580532673 696095162 906614063 572782927 767771482 641425141 859779544 311097420 919654281 255002768 19103029 416942317 404432436 20819069 24200949 630687548 785211756 101270822 52919389 556405604 149304798 621147312 73897662 870317083 779703675 123348053 158240961 571494310 590477255 763261019 440504288 889230616 706020706 992280486 968272975 793717877 254527147 604266384 577853050 970227851 718600012 208612227 608187067 345114214 247257105 160001995 983054662 368514574 481470328 556748791 252891210 802182899 759669746 749967337 405467707 304204025 180245988 335850538 415770458 622464953 262158776 348376941 437004488 876607541 269636708 767072823 481169835 67787347 235889721 794674957 111893388 828733792 595053366 268738968 263534128 198445868 575899201 378423693 662712890 261796392 864852625 624875011 769953145 679142743 19181569 856066436 724970487 274816752 458919221 940469808 570728200 440341443 441981460 125071789 346437959 583885430 517590365 705492020 559007409 841516349 60142313 480371492 385319309 731359622 259673446 843057019 770458441 956582527 434922926 509894517 28277316 694573671 843028145 884770546 72674539 450849214 17920679 29776008 754653678 387318492 554697441 915486189 377447452 833837081 13482858 152101041 470089106 11324488 680667902 380871538 669504058 720018742 195883279 581318141 999292663 55611148 492653638 499846118 671286757 63753373 484563818 242503310 623734499 982825625 817864519 671773799 738186326 471547081 113757068 81597341 907403178 544467321 556690729 860637860 284540066 883396749 636269863 276581415 712139868 580424961 651669167 618801879 279239543 530989181 696783306 558926023 883161818 49528734 757314735 112767187 981399481 761108606 165506803 861960483 823615606 553606491 19653660 709877136 579058402 888318865 42220086 778215589 849507379 276026789 142281414 1530542 72607178 107431300 214319742 863644482 181402457 400593045 835381878 64932018 902334744 617435006 398496816 454001605 906786090 61851891 442061527 421580308 153002496 69859085 16489249 529907473 214642010 859298774 564996258 275561073 126372453 757667155 801592227 126299763 576757500 229086220 20910414 808860726 83272655 626451235 553909431 948249180 465716707 871829642 952250287 226322603 957022807 323051229 739069299 464057652 256234335 545233249 591829185 93266599 590836617 202288294 669898007 240957899 477217993 877161697 106348544 702005253 789025828 913687400 344262817 187134690 409998578 815553675 752724875 405638856 244727452 119575739 757869538 261014158 396243146 457173088 82672242 352245751 617131757 568311507 376823903 236096681 748271314 752883843 601582179 544157294 179563902 522270131 51967251 362392206 96923676 321242163 216994124 842143158 79407139 788215164 332937497 592385107 6052074 228868479 242264112 374953818 799066336 247533430 863472330 820114587 816091834 464814469 217379295 147573893 220652444 321603740 996842544 351500256 848617227 921974430 449968769 29156931 293486559 231954802 426749328 579056144 504140699 584640518 164640346 95531707 471805911 781795137 859027099 601631432 567470457 796500158 729814355 684596245 947211876 586367128 279477903 430028078 717288702 995020290 738071990 191811823 516661098 63269004 519427100 607506179 85347089 260955197 494673029 135715504 490500126 512851663 837765489 507390690 814444187 240340862 339807901 120898530 5201755 297444497 865902297 990926649 929039983 439319044 102354096 789964045 660793723 416321233 117528272 672162002 621671786 462306271 828719265 737040869 448252204 653571200 760066865 60364714 602703742 607976460 92099151 308255024 827471254 343218741 428254202 362918615 854997377 162188642 613323680 787500914 37517009 746634827 700727929 523360226 38979173 685740019 199812874 916238469 240345283 596253357 887188735 844200847 911805242 774575197 412440319 914961376 209140356 800018922 77593975 14606977 655411622 456600978 968997563 465478562 845645047 47692214 532562541 89650091 394166205 324017513 860586674 650002923 317755152 425266622 744172264 130009910 993370271 244111645 940169268 158402325 141828061 826670222 703271226 950923072 656221863 35802218 508535694 597239345 901140130 113101502 83764841 873000175 212580072 780552794 691376544 292754556 19540973 690971794 85777155 13387215 569142606 786928974 849364903 797247100 699961882 671690652 488231025 182336396 875016166 662300986 672022052 997417588 690649645 232702696 561571730 534219386 755474190 344162292 476156723 725089379 313721370 738423541 763888672 319894466 734102992 297859589 309420639 892789297 448057368 993563504 740690098 227698093 5592036 327774083 256116943 554019748 333401479 842122032 544010789 859342294 832941572 216362771 522400156 746182951 872970330 565599969 582644972 839642122 508938274 363457706 371298002 790789369 618153263 766229207 891624199 794178925 862130057 549329571 872023865 951139959 986695931 329193128 89813306 78884550 210098306 305006509 902828335 992619688 48231972 255829485 970389633 184055677 89867400 491885290 972932941 367855066 313351353 873401461 44894269 418661682 501521880 303421529 577328104 750373948 918696796 995676810 259721122 963521364 753536158 228868479 416935820 531166845 738091039 119489360 205519355 711888209 990569506 954883648 390244856 263202522 387688809 170805301 829291409 525648788 178808822 801597029 149013406 905986269 844531223 612400762 886683957 78601672 817231399 925906789 445760183 65241735 331022625 394571827 493309830 325177707 943635203 791162714 191922021 559721144 63673183 254464317 25904492 971353690 427109873 756325844 318770972 66652348 850020552 501661261 758866254 251841666 543289421 77179599 129893793 521906575 557590635 249160744 365440972 797722996 734188201 512086451 396048893 302421312 332464999 574404243 402763459 529473207 707790061 400455877 874843264 264540509 186712215 646928543 994469841 868325704 976226405 383773184 967077425 945916592 757342186 521570401 514092674 552661057 537649065 437400228 876935538 13201657 323846452 405591173 850429963 441927911 37549255 611800668 787537595 511141053 900340734 71857686 134887967 581660986 923112603 735407065 749504682 656226861 746996936 744360841 976832805 724665054 995242696 205096135 896310691 420331396 108227704 482710488 293890256 736925795 33073816 664550944 623439637 702190121 32189748 862743900 101451781 260223017 565412490 465563966 864653952 712219188 224769915 674232998 770729348 238031342 494106549 236803857 910615714 388326596 709772585 338196463 735229706 672498735 896797813 223239860 995295887 412297276 35136048 80607815 141157956 627439263 540229834 429842861 185130288 789322487 861174659 722344926 392095801 161034699 984399788 703645386 270287683 19864565 251718499 480967856 812751646 635574942 143842924 272652694 903776681 814851868 890477519 404711866 149275696 659175395 73704468 652750105 194192879 574025382 182510437 402850637 960264490 255577126 500936725 182508861 122849360 1906348 254617479 295202235 347110434 359573403 311313527 874088445 478090620 463394467 929442943 232240837 62150843 927291130 362258422 182617650 384828751 930647872 185244883 299646749 769409899 498151646 620895581 986763480 541377951 22399979 663074906 14576391 772883206 242568638 247848854 558256118 421285843 397045253 879005136 208184385 590974262 291352673 263979472 665965963 448315924 775676890 36950914 665097708 998621161 490430823 324659384 307605060 626010774 118652074 355573927 720670087 394571827 766050423 438380495 730226311 644101353 932734795 755427054 282106081 436737140 903653634 805155359 534082867 63845332 816791654 798592282 509848036 444400782 289348161 822180958 918676329 199344781 596610614 645724935 376962303 243662909 678728421 815421884 697364625 574674358 960579202 756520081 220012864 658750954 47494063 864962428 818946963 347292781 3869355 167180914 972773828 282238161 906696459 946674304 306322667 765977996 739470382 65289971 959040930 457234249 878716126 718481341 410629140 869956479 130658579 873135461 361213011 702692262 883323380 79469876 981692800 627119439 156347673 958927520 983756312 873420208 656417680 789129448 379879200 4358257 159969367 583629193 91139281 109210465 657486034 212398343 571482310 349636115 780921494 112682217 796414571 875589391 497033407 253675074 651769851 757074849 817276037 441418200 567536870 525020910 458599956 281110211 418348724 879926704 774586570 678371315 857483437 329073771 592916676 439009155 316721173 658044816 225959757 661296976 562338571 917543584 367626151 306089319 315942958 248998649 313444036 487081704 464820351 74415802 196710440 569861586 176549532 575248845 841040747 917967736 8319036 569211849 604793246 354918283 967681705 104144326 36011996 165974140 725071315 713471284 390906162 29819091 640179459 153247849 757498587 560021959 213721845 676414104 223625834 868339361 902371568 182093632 303346834 642621166 545423626 785846200 830572818 233783002 733853351 790944358 902898872 304755906 548082186 474447896 732094791 530221753 459006635 442708617 643059141 951433674 296462835 73563221 666259383 193776379 52046013 856837185 115193490 415606782 596099375 558669478 150231418 384697531 37237413 625764904 985122105 278414795 448102283 47388952 416398897 150608250 450290743 805577333 139032078 892911247 116277093 231016126 479147349 595367057 28884536 200833654 570041724 585046415 15001279 151394929 415325456 403553109 615735463 82626270 783762506 447210678 514807331 381562804 480553062 163626299 502164883 751991212 871649031 973236522 713333590 235664623 128947162 53323147 758623094 764090886 464530 574792188 399583542 631799032 593432507 299279369 800859361 185068399 643136335 659045507 745011299 792361282 431757040 33181335 849705447 614547969 434127328 893831991 336112442 702253353 640511626 444547118 783560034 985129693 62745691 441472228 437828128 490954041 762328478 372071804 738523072 165163797 660933943 805918541 600219288 877572572 727299479 775626974 428660220 832626958 949269365 15061001 582778190 458706943 703296304 515855946 458135298 876719458 819495280 825846528 68560498 573112427 108378855 391482162 996548925 620021550 795495189 764868815 843931517 414909677 911075436 484219178 178462519 285096093 620506002 766318940 969147065 20691187 414275293 640965670 843187971 737282766 272581443 672612436 613398207 47031105 131199287 449531528 227072645 999302624 145413582 801574667 126310740 892385886 12187224 575448809 950799133 31297969 124521396 934422767 375057400 827401484 217718209 59249063 937893039 369559718 790792285 130520286 525386654 732612668 885613107 713250364 761955912 308286944 915249125 284376509 62838300 459105109 933617081 253434787 435780664 347904478 528099334 232240837 171799564 258899546 721317568 483683963 486386582 228211983 148238182 776923890 821790821 439540646 903038257 148659493 189220604 99913598 590665437 509894517 258919264 713779023 413539124 85330804 648327396 210834857 695040326 682837491 788491793 839814548 186041605 712953773 545215165 997325801 622869076 140745360 124955674 895039237 193399261 749186530 841323326 809842183 73076530 65384760 690906004 875645134 862768869 381642394 535341283 719958038 363094432 233371880 441986587 842219218 473574625 659593708 487748302 304350475 346461915 978701402 617758770 642412753 855119197 96218943 823327405 576451307 739863396 745055565 134772 260892445 883341468 628468873 255095475 275185969 580721253 232067696 782493967 586811149 290265454 354655785 112896956 431045026 186337660 378842987 788378730 937504846 617337184 803457704 433768052 607535120 656332033 637674419 563060235 486639472 89696810 148603717 194136192 559602007 984089016 579215088 670756742 819034822 480187751 401302251 622036801 1185762 333810160 387741748 259305356 518920155 104837490 958546046 961800873 964437787 339626622 738732837 268016137 971565084 990725695 613479086 146204709 88384008 441412113 548169672 380727073 614390031 120880906 136564985 395372514 628028155 887735543 971018813 659450053 978563733 144937890 181708171 670369487 728137918 80539206 737173152 58444637 33494301 657595658 916698654 173438278 515137687 821909707 924365137 509059440 584874948 934979401 195599938 100847423 996219756 960775936 309294528 644599183 687233321 444948193 452047209 95970891 170987166 681828071 808439563 421505348 522849874 412926286 701974716 170911227 249024140 93240886 734718525 185634483 690457167 664591162 738013542 715915753 491785628 431036103 793575039 182547579 852510024 369180154 303637229 236633058 28954389 148161005 296341860 542607344 466158999 469526834 372685991 724754509 52953995 123032330 491777259 61373662 593463638 542233610 559680 991105832 172214855 803903715 656568494 765944176 703351453 148581561 635367031 582553855 232767934 331573058 863173937 304718611 623098305 294739896 322946562 332702265 617722010 425189451 156694972 488077782 567499219 465563966 62001345 689509769 351816411 990339007 527156187 890878661 149487715 576736716 497062587 944119522 491776551 738022165 367893421 678393063 21155149 446273596 388624522 673151405 552379585 376799049 185395381 189013614 80947444 428708007 44457196 525195544 813654118 229856163 980931417 808439563 177739280 709995608 722476327 498495511 378022197 782440097 734118233 800898864 593781251 854145590 251307567 348996293 216703212 990113949 509717143 397544836 891168521 38513999 803088351 717473953 367051975 566640392 114047900 292571436 913257104 346624561 619393648 384533682 47178975 75484369 648168162 307020314 629620548 872057228 728292905 131682793 823976649 877696026 906560264 954224752 977002204 265946297 816582486 776331945 448838107 607250325 464469670 115172512 219561299 207462988 292607501 279899872 688644095 161305066 435813083 845272332 612541432 986825821 231211527 703389672 967374209 19103029 959635642 293182642 284001367 858549401 258971098 634486092 518691460 648017360 32963601 189042928 954698719 203437895 162324392 700976354 207272298 411538717 420955528 176836867 487047346 741641849 970126789 93207784 213585431 605394793 481597595 108245683 856950225 353654667 373250732 463879657 538748903 546559059 299646749 99409568 528868347 498625420 676384484 872619830 945404640 453763778 676414104 490846350 12204782 29056750 533774296 384891246 151916085 596840074 42577059 203133498 126372453 388398556 601829991 13905732 403553902 809894784 884513211 312661364 281650987 993671038 655371974 944817293 430628906 527120738 372201659 137157700 612309662 849705447 679493255 87596045 407241539 64990447 946030250 641182014 864788683 806034484 760766216 641527106 337810348 515518783 516418118 599852899 407262950 87667012 200895976 558020093 762248722 44974168 311012281 534451260 353841864 237485273 983912615 742796895 147908271 587607850 221600134 101995892 255164878 61632665 879944689 176549532 58097521 719222649 449285047 706967234 736186984 134178211 500901012 117173192 387355084 922410898 908092272 973151074 611292567 571775292 87132212 620414907 650340750 31580464 803088351 973325618 689047902 417808418 146577819 700479739 201120381 204238632 745894833 368924421 608992270 815236787 847363854 501557836 895699842 17675177 307902486 983990798 274816752 88967512 576701051 415606782 273270703 53936964 621923317 9093174 666103732 779974901 154907331 922204768 748550408 435174736 503097725 52439937 530140858 838470870 738843836 406803564 795927607 824069472 827078977 586707689 879040951 833534113 562409921 413282713 359002856 946373447 813512188 841051943 697698587 73110033 725833957 616540313 259721122 61837170 303678657 309797620 337972798 978294358 885524602 822611116 868166922 276007929 967730729 135843792 675660841 456613230 657063211 923176714 84714848 94182070 508171584 250840795 286818617 184800559 165421785 50832081 448230973 688745272 658385670 504194621 267025278 342179013 479581983 752382421 734065274 491068520 543514311 844515008 205701988 621147312 400767305 604667812 223318257 904464952 135909378 219139369 186737618 995000488 897288769 880807247 466672739 27297628 756336962 674512776 149187982 221337663 571277186 607422375 822428289 933883451 848829555 776733363 917046623 600327388 938627411 571199089 454080013 29502833 251438227 754197011 427999236 846358351 100688072 801066455 331733611 747655319 849505993 190089020 994948032 188713181 808327386 253892976 260068283 229201676 629392403 756224255 386241798 244062645 47596814 928640375 834905474 99163215 261006743 342801628 172287763 873979679 138401767 254186684 859918198 438502836 743143212 103733899 247657843 556200594 351810893 876554323 85600174 231360137 682882589 972680291 575691591 230636814 977203419 249815785 234056349 605250356 715992427 268261076 749842227 291754026 494057014 148450814 96510379 920420941 264347914 968602850 112470136 670938758 20239449 686981188 792819188 630268679 895401068 375404669 673672014 359576236 383791787 310718812 493315922 665023670 491166764 220645842 137043230 723700960 187791614 930275718 812533491 331647744 429794657 263583235 449419626 786076219 866605796 699336246 216252339 507886974 889348343 488224943 751319910 277224827 539495065 300867665 760966248 719544907 517787524 525314023 518691460 198803798 402545890 705810779 931787966 928531872 258266975 443601072 325520037 963104511 896797813 306444046 490266821 84621828 509094193 869863345 495983309 160972036 287956477 921287944 354252079 206436981 745530463 236332893 733212079 572298996 428807475 630875813 839314407 794721782 682103638 454020341 854574067 852286533 140728238 899417397 169628238 24125032 420979670 556832785 241688657 491768862 943507234 432574758 525520259 783681959 512770204 540560391 131929953 867773029 380385754 832550899 847015812 475038327 673668635 165134971 342537385 862942219 250522321 735487538 750315933 963936067 254244869 198825995 418065780 134606821 803149140 842943789 969750804 428694094 648236614 638838427 279249825 323274859 33020241 653389970 116790521 208911444 630914337 343527525 639645569 215788734 424193771 593929231 230409302 295372153 333274442 161111867 133628747 99610859 312230394 133704514 28532308 537765942 947914218 991080882 656053189 615929291 97239793 281821739 235907207 419308063 932222481 253217332 730988124 726745293 935673131 812080634 243773211 785380104 182093632 637991947 465496908 657881750 44319222 853733264 906359412 451953217 38895077 860030415 837169252 617950185 545145980 96449233 744048530 46340355 168919915 690040612 388991565 257823395 496395594 973466797 515123493 424706197 355603573 514399820 757435248 927320188 503782181 652043667 64585648 625857009 226650755 102925001 996903908 648327396 437778103 50127560 274712494 726611978 87957679 415119952 903628779 411360565 498517617 415817716 668282058 762962561 277973375 490421784 680813648 542764320 921028973 180414345 627131846 133911903 986341980 87368277 781241974 271552510 348418514 665023670 75778465 883009408 405751809 798664343 282850493 110652901 677721709 614665218 226322839 767483342 46080444 192233229 195605306 233985443 936415161 397257002 913697199 784578973 182897136 749663250 464549000 639138228 352982490 161099785 123063193 899257528 943343989 191858184 26015185 89466118 954870907 898022203 811323594 963967986 337018712 266637256 74060582 728933673 432828792 948175486 722279851 416064526 457360785 160932494 594254098 288862445 129910059 416503653 98052331 409630429 795837852 697110003 945572801 247736681 269636708 103582584 121925331 986073526 378223048 808959792 583807846 640277797 641514524 929089674 826933303 589548324 486521788 387430670 602897038 117861027 468156446 100585130 590514948 661007944 259368897 795829813 491278951 314286953 605529534 50728414 456485454 145817818 860348030 660733703 249135343 5626861 276516086 624556954 365078368 504986712 268837666 686976647 883317967 577079628 826944307 866415317 332546427 19952330 335886437 899127439 932928571 275253634 889289376 873189629 269265545 190227403 631475173 187529372 729584137 431129441 340910885 664130415 378511471 651669167 319983688 804182470 996213252 347268334 924212219 466720673 120236478 161023515 763964778 177098127 133219520 973531238 44118520 503628939 202816344 287451642 664470343 63543170 648560888 99235040 84090931 632678439 879005136 390334054 877128316 937963910 574024579 36251748 38080629 610904510 986825821 183288181 407301095 281524233 648203638 178978156 955114782 630252189 554989782 730163713 481556555 809312355 352421527 175867221 376606278 230190332 232793091 167896720 595381259 984347139 702881571 843450316 319786267 185970641 815804293 86579896 440088834 594230484 352014173 920001846 134157749 904992886 171394267 922412293 51855929 412365791 887229946 911658209 449648624 679593582 782431943 374398820 775617590 949004098 847014778 839211721 303101923 90911083 249781052 371162554 983838118 333991933 910680902 543553962 366059985 944042575 342359330 935443125 142654655 609289883 83623740 575776713 721086915 39966464 484990981 287641643 23505853 187714502 731341613 52941497 309411875 311617573 773468095 411918493 478391284 78347472 673324250 73354636 921622332 767568946 246084301 83141815 332903272 608125408 743840807 661974140 555617550 950501409 749254717 501505048 37398473 905085892 137226756 590413039 48284298 735505146 517088830 849310858 324794218 314259455 209828425 531917608 372133866 240788779 444412087 252183181 368194564 28222192 355903097 844438107 269616676 325927900 660426815 522496684 593148098 215956417 979830232 969887525 607202166 808402382 165642166 74606468 451998946 620827886 311474186 745160708 667005745 247742383 930560423 287516396 77424358 579501620 573876073 698651267 466955988 971259596 957626764 742085553 179563198 52578676 816338244 295066237 420858399 138468319 656923396 239663848 611635402 435274429 501958004 172197378 993949554 707109949 970411253 65389163 236610650 282322093 889271839 3109441 403665306 692102490 628509240 185050208 718147288 195439230 999642082 681905877 45857861 728503723 637618501 129444007 267668865 536077594 128905569 877696026 393773366 933754086 550084012 996440722 23809345 619430088 605435040 581774226 760500530 272527983 758135063 453829690 869870129 366580074 14205963 344132497 930772047 360177711 312245390 83816926 510644698 914273752 913512362 768939365 923039781 286385970 421340931 455502848 651412479 717571016 243105830 731251879 893321295 807010415 390709923 287454098 453708310 803696489 148544727 957682768 313767464 400040558 993278914 214314497 62925158 129046929 710411024 128248612 548341456 504123448 889902589 218552104 372146775 962717004 145594314 480701065 682628733 574817773 141343376 256557019 946837101 84358769 981782515 966351350 667030805 835749957 125458918 611347137 371656676 116731623 539670479 281951217 300178731 242984977 981660537 977123062 190089020 448622006 169184060 572056537 417051459 625531447 419051764 722517032 836715060 599933092 659175395 854498459 416032839 721530708 377077623 664113787 414018867 65486564 211898414 864866234 428091781 807435422 556163324 411551167 49585008 142420479 550355343 473671121 610111326 206460949 566972891 354593370 968524580 892120582 85131829 253300010 900642568 724650677 488241568 316648343 834454248 812901452 598815359 213128807 261997600 488058801 493178134 302735470 85169174 666711439 318154520 915294492 332676203 228101530 552066174 546044874 854203607 906994366 875712432 545122251 410278916 310678717 412169957 882368343 776306418 336311501 269772124 808097889 527714097 437629753 357946985 243645930 782451548 13464982 997500317 133188722 952682890 114047900 545915919 281906524 63846454 476187971 908006722 205744609 176028503 130160460 288574570 557144118 316643802 574758512 333234563 893349466 706581367 678363659 862933551 234769226 419387813 23602654 590477255 996229420 620581581 670006728 134634290 690967823 115692889 429608701 873461596 881309004 572726207 713779023 922631416 684696909 234056349 324744732 282106058 620960377 836889314 717613701 112980748 292195731 183271392 139218255 645767271 325865797 326575107 38895077 336585867 585075792 983757696 161397649 913598363 154804839 19319081 369751505 658225911 564282240 323921042 79260026 316502839 321791611 995625475 860222639 538748903 456556292 847489553 825268958 491923217 509575652 327076291 750248178 364072853 901641686 107802339 744135559 285055113 101073949 595292954 219504864 927741927 539670479 963446140 586119377 976669435 561561987 524467373 962304328 404933296 987284645 18730036 495744497 490650781 972756156 519470928 866071144 441943797 675464581 152264544 33323657 215894323 899870287 969976253 460077711 2928069 214287939 24736191 523469361 20199645 325357804 836714406 662175101 709374413 554634805 814590295 603447782 15425698 541941713 727957234 6011611 346401408 65519059 970617427 379531881 680617988 415568777 776997206 271433537 119284451 332353873 566746335 983774587 748867383 484297313 116029385 686544143 773999535 410487831 547497830 197433421 430932622 827807321 374683827 208724915 398910514 755663845 166213252 283345795 891012694 872307590 17814500 817024729 266078851 340101835 969624494 304086183 66895646 151747916 521540182 624750342 461609441 578884993 505180757 43668422 721126068 858500463 356770260 240345283 887084372 150657340 622378159 558782520 805996000 711763349 295260989 244909959 348169104 967397402 448653596 84748088 267225216 879065130 309435002 525976162 914941650 992612694 309863915 737392025 104517876 202128107 606878486 40094288 191412359 471703322 427638559 7805476 529163954 233371880 637318101 522324750 18777536 677146439 188239283 101628281 532418844 128187159 498361770 565433567 340424940 933147705 315693001 482480051 203305840 785179456 764992791 486521788 838362892 954528850 170349512 119040991 350230305 103761484 85553910 305006509 317271012 403906955 967942637 541044678 362049507 599991100 357531067 331354261 426736267 335216775 319763939 77696688 816520258 547942642 269064182 227228851 204290148 460176202 707849591 298972311 474827596 287097470 231887272 151401513 245745168 198315005 856445767 87729266 634851344 434932693 968873294 387815632 80474748 466148558 408043608 224649204 947563614 524152273 672162258 699645696 879895073 411538717 260452223 133076187 995553746 355337553 559080231 622615781 402194827 894870180 632163890 505120913 225131760 840800876 563060235 780783683 331908381 433036621 619689736 284877426 858246635 424945421 444127635 667030632 304799072 86579896 118549310 700055970 145778028 775676890 355305166 644006859 367981003 368314205 405713551 877853570 566746335 555264206 416052665 64975344 445726920 473408219 531659389 390528834 263175226 346422786 139415726 575848946 611420557 932920635 30453133 602657018 217243670 44827805 7457956 42196091 829303608 473126921 306832233 240631460 127754658 273640667 689090352 902637585 149264499 357346333 754386682 453967300 940800717 634791841 383542391 912096432 529067129 235868705 642281979 481868581 840122804 643123640 931093178 546349377 338686955 73176500 607392486 870291071 662815592 707529495 404965776 891393161 868161925 374900459 738759590 115745721 734655432 176486472 215927184 671583770 828004827 38352372 866782888 969974052 927931305 887109450 84324261 83642863 657070406 401563019 252262294 343908749 199795362 149000436 233982327 27122352 358256840 289033455 589777405 836127804 36258480 332741185 287825244 106651398 282423077 869275912 200806311 903421276 338176490 92099151 174851071 365466162 428720973 145412895 216651887 36859144 115083666 108515131 682469451 936802642 819947928 545240689 131716711 251160763 566779788 85643762 531603162 177335007 514337666 444172096 365287619 190411207 232135300 284500887 604038326 852723043 244558735 919220579 541525174 414067812 99947186 521364614 276491674 916674972 23032383 598113906 829038685 366754045 966911568 947107174 699977559 152906924 233290757 783896113 783980760 614631663 913463141 996038132 997837790 705796454 75517533 734065274 820014265 658545603 170566296 837737812 479314237 938016671 579852777 222468006 503907389 867199088 940675119 666795962 425587773 82985515 605852115 856792785 337883382 725000863 814082932 947943207 940316219 353865275 314933298 92289542 561983235 120766288 268867479 690649645 473124240 805801693 6668106 287405293 39155062 405349360 644287784 299908088 264480979 913619793 511639363 706177137 201910415 933883451 164999803 752664487 47988311 416903157 257793906 451410908 338706470 686397817 648209513 378511471 894566808 984181670 64660312 489178228 396376841 410063690 389338955 694606862 94380369 434891949 386133665 925681757 672683019 21510487 666385316 113757068 602726583 62893884 278357411 134157749 811597423 92137663 275461443 947789349 694670644 717288702 493363639 22727677 407227056 364601424 824003217 516538472 942188134 999056833 610705371 512851329 361391117 933299701 748990661 832273950 516260928 556736618 488269553 643460579 412648730 368762317 453969707 71401339 894681674 534774066 710122403 711463643 751494663 208100594 452301611 396322451 789741854 958368282 241024054 869594476 908805311 625705450 103564231 31474384 759194067 283452984 695330374 554282370 256738147 21578351 809972424 324143491 847193325 623573655 919175849 348555659 368991403 58994523 933893590 115139409 15465391 966391942 883797361 533786061 252573591 985516045 210252919 439200301 834830224 509190 979692609 793575039 433479632 516637025 934635758 459356408 262373101 383651665 514033790 116403255 393119769 380827147 884569168 794237392 516595074 86263595 489553408 513751081 214313556 634183805 87596045 83899719 751028663 536138292 827280952 769658528 33231452 245310601 177886353 310856912 945331275 819317533 690995129 814590295 838271468 596056082 13549274 482137374 544818517 401636588 597944097 792146527 740352701 667548647 667912785 798569729 782995066 747618132 163920742 765593108 908483731 236575001 139062021 303773734 487456308 800708941 836315322 306681403 433319466 524096599 374160859 664591162 710264441 558360402 889078338 840872210 738382832 633680800 553524471 567055262 549472590 337230873 459630177 58007966 430061756 54007660 183457611 606037512 450270930 566665656 543778814 714997353 405022481 502164883 516777573 160567550 339307928 262191441 180040728 590009275 26292481 276873171 715147389 204388469 875765440 988982394 970320960 237554794 67449354 466905659 544299414 863415043 410310950 241795018 535239464 100790955 768958958 570396750 102604773 493174641 745292329 701484934 675478034 333253614 453876534 868935531 292866701 180080644 308503264 713299117 508498621 509950883 10269582 248685160 812901374 16717408 171937674 269842069 66021319 74114546 294221923 25488888 274445885 883234447 738022165 877827855 627280060 749724859 537377948 437402690 802893689 618220508 686870782 958661294 265323961 665025403 953662279 93565025 86258423 997895078 570552979 349340169 824590722 825364882 530998630 921532853 827764901 879770014 531908992 344037807 324511970 665891023 504359774 683078120 154666113 550346709 230552092 580350837 487966413 531858678 908831051 326952641 295715520 604409971 951641336 250176841 629923663 519469871 900539215 636418909 219117499 285605967 985959315 446289908 801449823 984150925 237988928 215695733 262281814 476062295 686676041 707671778 211724199 991476975 836873566 430866099 96211540 269336650 682945215 405190937 536823762 642245063 196104027 921635847 839293717 943612519 878490479 689934371 76130857 863700986 386520538 207935671 316318976 604003682 98595565 617941229 760711783 444678698 891175573 496606001 23681292 452081931 721999595 963413681 538124541 18253136 979961326 747318779 474737201 219805629 82256892 594140813 806096616 198939710 569556884 939954635 313312655 232100960 960953533 310105288 853031823 88543725 794561046 11886251 139864983 935619022 820016530 292754778 311387380 759771220 515552811 574070370 750206737 206054582 689972685 475186951 1302209 92899831 884135772 520120635 338301034 716299948 369559718 197964218 553253095 806385412 799501575 640886215 664403077 912684015 667261557 688054972 28288353 884197910 231239209 559203662 472794263 220674854 587628666 782242422 78853927 601491586 207679894 549490611 177157516 901174221 442098095 980568564 820232884 184131064 525374804 660684227 62273018 761510262 805538659 960587893 599569094 399514157 526703710 894584627 701642894 380245386 892535144 989443801 504800088 906374565 42633980 275828658 773690713 433061050 286208675 963599054 291750729 60286821 961087852 483176373 925503834 113024368 276421417 766303912 76360251 891421849 484165443 95941150 550144527 996258095 541745519 548131392 410250156 211621806 783572140 320705299 925723707 191403498 155001386 826822552 10421205 241622347 759861374 661362152 370068617 767771482 654467742 191770339 232919519 648528196 458628111 210048214 310196882 371709539 220675005 20199645 751425968 521428006 572389985 770458441 695506536 727777714 28641461 918337740 652914410 621952809 604163704 878990805 873783114 996376503 578965651 182787138 909858406 658042304 851478550 395958326 879830547 363962992 524619008 899607756 921477884 913001465 20347649 305829907 397875762 711661502 227876346 145502156 62699749 617303927 10822802 747222227 256557019 436004929 223793193 863390343 297802512 609405483 264390284 228901485 41361109 104328842 725638400 336330303 721384561 119189016 884893118 153921582 948940074 948276541 680013251 859297665 331886772 971475830 151516622 91792138 317762511 932355631 230751139 120802733 892120582 677751872 607161688 305704199 870401535 98273425 892914077 42507223 681217268 519829070 875873777 887589483 799663790 72168450 604266384 24551425 573045666 676133029 74164729 376120986 727163349 916862084 382501540 490677500 68928984 887880928 882814122 748780151 400831210 335850538 904320882 965935867 427495458 696953930 342655033 835590100 792333264 496532815 88579943 660049761 426408699 139703087 225792835 717174760 413467700 351381604 454685251 906374807 902069618 956680302 922414522 347572520 42297828 728123884 900165830 862653771 302241302 49576 535281882 234999758 345453193 63196468 542584409 1908242 857874861 231665466 961883559 548381272 52489909 701856340 540315157 595828691 216362771 602633750 583714337 494301501 140422350 482441515 505949454 494519889 721940057 861837805 25070521 42928521 365379984 799726452 992179624 272599504 691161590 114287294 916698654 682275742 638513280 636461746 856887218 465528529 614425111 526606387 289497030 969765388 118850242 854167624 11673854 417240606 313272938 61574906 220507450 315659596 153842274 767640277 21125568 747238722 705834130 98728216 722499327 337410137 629590116 181243081 681160067 694987800 734894009 68640422 315976125 636839832 460829021 34121117 866930939 875264324 657231824 522400156 424017379 306925667 805377744 868289571 234636581 904138410 143692976 894582184 158259484 85239886 174021681 437557786 595918153 950972124 61556704 284385352 333991933 312548271 663642470 741146308 492619802 889240541 986263656 806388205 672574614 615871912 875133102 195670135 364396550 421648932 662506165 278095279 357189541 151394939 601864925 183759991 587701398 430413334 12157633 59185596 169596984 172078974 127463663 642850741 76910157 375210372 672475054 526060623 403387170 930042085 311063614 774343343 77179599 678919224 158952505 752438209 999649750 375035898 262493995 77424358 418330842 505372267 193576336 734102992 728141557 158814365 68941675 953389866 938898544 668144083 978620030 295849565 155622902 150938074 173247580 39511472 951073594 110006914 911957555 772264605 323418337 959082729 762629986 454418142 300022235 677138035 318343955 59266158 565520089 632688305 262963590 70213496 718758463 705796454 484146141 411025398 980470540 727848916 885812674 820590894 787424686 609575107 164581014 18481335 752429123 445347138 88934082 544864029 797381445 57333246 253821550 95300136 214676848 869116225 120092633 609148690 226969926 525828881 428835286 340495634 315935847 153909141 672217995 77553743 741768032 600034417 496424341 606115117 68941675 323726419
