100000 880024238 421943433 201872615 627094536 367934036 32829864 220746128 494853924 257419647 833069244 317808526 655074413 730650420 192340073 757022103 421794757 149681749 816702659 804009786 15050378 949976692 414188614 895946420 362141475 243619746 730155663 676724507 412192801 619634208 653901449 772666790 482532939 399359638 755261771 315700800 532027987 623283015 663775281 457676834 325722085 267467982 317615610 638245878 512149631 63055515 439403751 584950240 801514000 893382090 679230501 911637064 403401887 824061468 537558606 442267657 22492948 403754127 723820796 976758791 269935711 377779704 129543472 57873188 254211470 270809077 59508406 30679991 974481833 25626949 142233507 289434861 486921446 414044219 649963014 76349394 866644096 104137594 523553555 323168483 650612119 777096096 156083203 813397036 258279978 33313147 832971399 135422102 966587084 261677303 719521666 448583351 768896664 94140247 734897854 455938155 735888355 671836476 774127177 721107283 847006516 656414511 148515018 606166114 402008588 980096929 714142656 810482249 68200699 849868832 455905071 792276554 988092233 36336744 869586905 677472417 879095319 588403241 566378808 869474042 809528576 630887457 981424590 773532634 922573984 191977936 700900241 762458184 87425993 817252189 892785932 297924138 629080047 607777655 936391214 214831414 581963339 552024731 753176812 302569662 552273997 502971183 276274105 830370527 496020062 828298937 136038469 759669429 936123953 186163686 401337314 172444874 471048355 407698316 219050226 634598827 756754695 223122700 906858070 686103526 523942563 34533774 963999679 56555172 818630682 833540949 73702355 416551625 768331083 471814324 228231446 826639822 453886046 993328831 221000935 512839212 65806262 33581037 710550836 975836720 247004701 28648588 138897172 161765606 175535704 738145758 544909734 193046522 174061300 649882259 465119517 40665603 917447707 510191535 133744063 468479633 500169254 746391259 670917266 560287697 770225996 84294275 37003178 479721346 794779270 427540698 724540415 135949397 621090241 376766092 769679700 10880863 747402891 674310775 11421449 31341361 652537817 616918072 615134210 691470392 834596107 490687840 979750807 356348735 766425869 479961298 446415829 470700668 514035903 512540704 537066293 226611816 385268971 67945502 401930198 809777414 723764487 487894000 392226201 269539390 493159249 738461837 352706956 486413116 457882083 138862467 995131797 990802249 263794226 40034252 205045093 753764565 160816494 614182804 909853537 676814588 381614804 896160391 721009164 58513241 103832133 264296920 139803734 460752482 405589400 913222339 794615653 306207232 711363017 422010266 856530973 570466106 712985232 359781859 320988246 343567752 329519642 672351987 824858338 882426099 602642058 902980462 565617397 767800047 66682994 257590888 629698441 142038805 316407283 955047985 361346866 811572642 235781102 20667632 754787002 564171726 419177223 260603254 790747643 7764233 325932575 615647443 400522213 771326067 679526027 123126557 922027478 316166924 247284613 325365614 964472556 28394035 298007058 704693703 72950394 470122196 865905100 579086341 86149954 962562959 935620592 6573788 731762112 351496696 19425072 991721452 879883305 727320815 887247079 405169705 599987932 967240044 953760378 674452016 746379878 533066698 654867262 70360450 953599260 969733280 572140666 628106397 778426646 595864890 609275496 69061904 5012996 902205645 169834285 898400876 512465692 139887084 554983084 446543603 377107369 970948454 460391599 435906836 990067627 809380476 166263113 666769559 44053841 96646548 776146863 320414814 933665464 542712553 843966294 599570133 662098740 62805163 289758061 515038076 820562938 938006185 845335184 529450862 473800873 416583722 455405890 913755878 113300778 417553057 578293335 435798318 653089260 506790898 783898498 161712891 56698688 167039142 59946725 494098082 158158230 446681943 906931013 500085805 688514284 937154633 238431601 617616652 691915742 805344737 178529217 699257303 676574204 612161500 218890418 49834651 637840690 585299373 91988322 8363515 666353325 157751640 828635928 829136198 955000802 17707475 451554095 987562266 855686158 904439488 9036879 32179226 535376172 547274722 59695952 624003463 175335934 152424960 83060868 695654138 429880524 708456769 811151550 883605058 114443864 538683011 112522346 955010612 250904459 472375521 879617892 513846025 70496498 164648652 874137567 195388069 670233583 576139997 582121267 130222473 804439123 414547197 818676811 234129774 434448085 833808520 313093129 135395477 187193343 756392395 465866429 441122333 510474677 27220628 453541083 300149908 946893780 262881085 534217375 384454816 934267891 509777796 748261595 976153228 197029992 496854307 148714038 266554899 685414337 195698491 64880114 970349846 74231499 349938287 384884804 177659703 317565483 515291169 497659907 445136577 802584549 852527343 641445861 201442953 768785538 708683244 184550 429696869 270403932 888722374 683805313 534720162 71309271 378991959 752805122 558552458 73878238 899868098 713029040 882931942 949648524 529736782 786724519 441772686 280076770 856204877 569552281 872791728 530450690 891728041 403377632 577195470 640703233 973503516 939006564 474538747 194633030 467361197 364260584 21385620 9686813 852187213 283531091 876627522 823331534 316269485 865139735 622981584 849746254 664187085 64533254 249901999 376884628 957944308 843586877 830414375 725127211 948870984 633675424 663945835 304622020 511492567 369961846 545668209 827267817 722576175 740705354 692217767 495810348 948471196 590480244 667356431 483748765 907170416 834412370 811408413 817917936 81520871 875782576 44026154 790968706 519486345 85851986 249818894 532610986 31402511 531676208 40308243 528433737 330337450 549208994 780065513 856573921 912201666 488379488 310739374 21085138 11305629 621235804 822456288 869336893 649785567 781207677 710294154 943697826 743385639 448751063 596381942 21804491 833995691 823492360 393560762 613826819 795313428 603627126 467685364 345478898 898974276 697356654 440639554 354332306 657664319 751571764 342964168 920313176 698898496 446428660 763266448 498683966 996216144 851285336 625357305 708620510 498918385 835653767 467318635 435426439 22262320 546791338 825293698 199849141 14744423 277508982 747583146 945657749 927247121 153673224 545279524 258126614 549304345 663184282 369118368 371316303 854674365 257089751 334473234 245346638 707123802 930549665 424568535 797804528 655430449 819614274 371337312 208705611 478498101 618315243 837636819 784433772 173484070 238871139 274349054 337510086 352112589 532422337 17264189 217739722 317077685 946689783 635120181 247908981 484338368 916983656 33124889 411957597 177106261 694903198 699808138 615791616 391384620 34152022 229550936 837823706 189644795 651868566 838266669 396155868 910729465 790025411 410759016 318739985 858807634 840637348 976182593 42458849 254364483 395547071 715108249 14228152 942964860 211249283 358682588 101995972 996106269 335337637 800670296 253144835 999416824 288210694 694124159 959918515 663348346 949264795 583349038 706304275 317610415 693020192 34443270 334755103 635166675 698361243 234552043 591444917 834356852 788006843 677521559 569501938 946287328 769930812 540586972 389391732 538958865 188521120 979775298 318855990 292562716 143224442 334752976 285370482 485030094 320518222 594529833 787978555 985077322 970478428 774350279 472418538 453272962 267333203 196273477 647051937 772865215 824274333 737279439 696229073 310196083 111966552 428765177 3238750 899603550 450704814 973014124 606588630 225763558 370923829 332036478 925922487 811169980 970294713 893138017 242186021 54055482 901419499 92860733 18349155 136140772 839693849 891448056 166772713 497350189 248379712 661638683 285095166 534164099 371660924 322665697 724243497 214439871 706831604 687180420 141129145 942935251 917165209 385117603 937114199 785322600 207811714 788158526 334490582 5120118 517580922 436183281 258936488 392528251 777215500 488067863 130461093 344364600 991004211 704237780 86234260 477516611 235521842 93667036 726251134 722715335 711317554 258494130 35158394 958298661 905266902 31181667 14743493 513345437 958147671 918270183 137057498 284739825 649740468 769812469 588453359 192605076 587157742 725015005 778828976 815411006 860625830 553084733 119645557 852321642 262967343 6827846 600550766 59931258 625382047 937262607 339073647 384083265 122718450 286073422 801016170 72638997 165773208 647808108 3389240 949679196 497096425 894409970 107714769 599628450 820315023 698000048 641642413 206555076 476194206 594185543 487390392 463677670 926113349 15787887 700132191 605367463 403835718 327156091 751814180 912233603 275816296 453579720 263775316 639057370 776358350 865349864 743813401 612655741 749040747 916970747 573165703 465035620 926204668 890629831 385075545 113234764 339875935 607528162 973472314 486872163 467862326 108330837 144888351 729378584 235495119 881918741 469031803 374010029 977954749 685541155 982740222 961507660 638185763 748075070 586540185 297027353 751284124 832212626 258623073 220282835 890474278 619836215 578261236 680905949 11678948 713184423 765920081 589121982 710805464 488452970 573290822 134500768 519583939 713153655 339165976 782735178 159879706 521195644 485844934 14592011 939240607 773739063 349818854 471340457 820708222 731788026 920780134 534654412 297867499 249820730 467842150 791086341 49573144 654518219 711637830 284409937 155732994 85727272 445081592 418809458 362411591 769314679 716787842 898104411 201122910 902463456 684661617 864737141 392922582 938949849 373329959 245733949 475735172 430059989 428540374 434961887 837970074 591154003 376772275 595933659 969049797 891520037 821281448 637156299 505262157 991276262 457827385 432371569 412772908 9786642 160112218 49177620 174233481 527929502 925482262 787418597 525116571 317194742 590080666 619835836 111249508 925984906 375760144 55409972 29571911 165067618 6857053 989389425 236280310 304805277 49581202 158641804 457699290 718348223 818231929 834781014 141157179 307902223 698037429 690105441 611532389 907286989 422391887 869958938 240339131 20146095 830539560 946468632 308418526 626823315 837022522 592153986 989814170 83366398 941651416 224358177 914496241 663110550 79742505 769134018 76317661 788466042 226922178 74377306 14829671 839788160 380110490 697623001 328817016 53270665 750455816 836891437 301306047 95433367 838176791 591341179 328964118 960554838 483786643 7182169 668275800 512218271 891162102 772489866 627856062 793873728 971982968 869237163 675642918 726579969 620674387 986445822 913528256 914103708 52094787 859034242 743365843 936479513 251169942 686153352 496226309 913819785 394893157 127185457 129473828 932966087 417545208 431601840 927601950 2497463 667094223 664122847 139499607 366221810 215920176 739768399 21751406 629523976 497683940 414737094 750939220 501685358 960912936 962771626 82159686 741611274 554464366 611075272 247852106 721973628 425781446 260772612 219985251 501429489 863588102 96994741 587223713 617362718 495488175 993379256 772300530 580932245 207880314 340397125 265288244 317037039 836056012 630677788 863703916 56155598 920064977 941775619 78850962 411107678 668965006 727201634 446261326 300307184 297299667 759896647 776921686 214460111 568604192 354512789 740702359 432683997 129073565 654422478 483499539 746614971 66021854 247864753 798257502 837510518 420237345 626726119 985562124 991977834 2109800 253517353 722093018 205515058 700520435 194135238 201790797 205335714 878596697 147319191 526961305 174561974 190166122 828494256 150410717 509580349 63365517 319361389 845232670 544328056 702986253 138738963 381837348 43784165 727493557 101064837 54125443 126962330 221878789 14955984 272110994 33148420 776125855 907385530 356300166 64446627 54118244 311832876 327106304 341979610 883683795 866241041 893959993 759306562 307122249 292399949 906157250 596692323 840201596 686280288 488319428 277137654 409496873 328737657 708925259 632178307 528285836 470316880 652454413 916909470 641946692 134995590 666551262 136379782 217213988 52741047 416995521 929546135 223713945 685889859 229755322 533241623 138987932 419949664 223580052 721448446 102860473 287787296 590540733 552532552 470418318 565481670 1488790 843270754 736267037 738839292 505996991 508021899 97235916 979707383 79102983 31679136 625788238 758556031 296948626 90457966 864089122 58940881 905703658 468546326 774225456 981953166 224532215 572394188 694422706 601076337 796563890 508310151 737158660 738802457 564095984 651554319 481437875 649024130 768849294 547376499 29934526 798546328 518220918 9210001 757420369 897279357 263075138 651080290 101161808 49332480 86525235 210686808 330195786 717745237 340922713 350479314 340410149 202891812 490687315 790043272 722753051 506175367 286405555 768676499 296160949 768482204 780553203 643527623 486307154 143571086 146295239 379136598 293886471 159816740 142963770 759051137 955046940 398403410 823412033 347144873 787116351 264734721 238446411 142565602 829376660 287272175 251601620 985242059 211762128 221594667 333962800 418525115 167926518 372393810 606877895 889060099 727001944 386231941 328199725 989089911 326857833 867443341 813752729 537909295 90296633 656319080 407341306 957500708 277364407 339547734 150787692 291422760 657189772 345132937 852788300 21762940 930044724 116631325 886981751 692075931 208584271 469185448 348698782 106812025 765593111 905555832 73580253 524391000 501425809 707044582 912643526 897467598 67737955 434848587 598124601 621299111 521064321 196633821 840305044 652214353 147243481 816877678 109270598 973864763 803964964 907130634 754823358 167505552 191664925 894800819 861551413 438482139 901228492 371653031 549076552 831901907 815086625 725918329 159190430 836328899 281353195 549399158 806171651 937109206 783760728 525702429 4823245 876906090 20804311 628382056 115394685 291891662 327608619 955887081 94946633 964411987 94975357 381418780 79708588 655410445 124391284 964749203 526155188 269615394 975977805 365344981 636412021 92587948 251673443 799752248 208123957 232477245 917110554 927468696 817708823 228492435 672370123 647900715 557908951 755424555 422659815 386230533 946338268 870073551 242795395 334522643 77452006 249911029 962099665 500831188 122314791 518918201 734904897 72968486 288397444 311616760 928773994 539937073 758714621 685808403 177077417 123537551 179903118 582816868 338893439 865162350 248592439 236630396 798374115 130972150 29512205 13611700 867039072 892594692 630081940 371371526 377732629 548852540 432839118 629878596 759365925 519546111 476933289 283867435 526172273 673239682 546913478 400480010 555184673 94015378 558473117 276638888 573700264 16767698 238786677 746167805 277941407 910072302 8313153 610905758 504494400 679691306 916467676 481665281 1652737 342400118 475103273 246570493 472106455 574830573 813519771 798823927 307597368 6200818 113227347 674754429 260505783 360547446 123133023 467824112 200351692 949119364 858527546 678725018 333893162 340559576 811275255 568948488 631395153 457349794 183977785 356539085 645596359 833027596 935873512 885143801 662970229 511371406 927972526 35736104 295317318 409657900 852426161 723238581 782308107 841937096 256909312 989447570 425784328 882845869 771948668 465657249 845148510 326803767 453466738 402630505 862632751 643686434 324817277 137311939 363438469 675221231 926169243 690920621 663882346 412125057 616953928 618782090 665452923 794328095 140283628 728683058 3583368 923054202 106261983 445565553 346929082 779150877 362998385 176952845 594100551 745963793 90427000 697186416 483651421 786947835 575302091 386114183 373101202 481132756 138740006 404500850 579129518 322396471 90433127 413336920 248805867 326711087 71670923 549412223 736981476 950554164 832713478 841618062 410911035 152650696 482421877 809430277 5135766 183323013 884358522 240493314 827526251 479046369 146211739 461940263 298319497 926115071 352375241 655506054 429239039 111864021 649761579 252370902 242662574 976097802 985364671 282328162 64441149 411720866 429620374 663416788 174061410 918117112 421825379 29071558 160109933 726929285 33528561 892839356 476951981 903463887 480666113 943581063 367022150 109896397 403376097 814350409 769259924 338713762 644432459 125930569 772735550 477285970 174835567 671155119 788153435 689454560 851048715 593151915 657756938 531735659 40513522 387897997 666346671 922517675 816234493 377566336 799790229 25019162 284124666 191561070 844232924 503703560 489028677 64319180 686332285 750003206 338652879 459799108 699455284 634766877 894785121 51459468 52627341 688750946 74130617 462324625 275220690 125986293 642567880 584760569 106442778 304673942 781684196 724896361 861657069 719788485 556411302 559045931 758548572 133130208 76928220 591643864 542724507 376610719 125657164 943430147 765937855 934280933 209045799 608787625 787351637 621957402 408377590 131038064 375799350 917523942 99623021 3541471 716200047 355858993 318276547 603525403 629222346 290022991 963944133 140593692 395099993 239566424 440901933 435070386 608485620 494156856 787171390 58844949 435519858 337798536 821241902 84369322 316822995 553916376 254564450 241302530 287691182 224356452 585131125 418952541 530908835 892576904 225679891 797340637 226870036 606053746 89357699 388367086 264842589 680510185 128726406 679715807 509073139 449877364 376166187 652243353 529186329 175749372 279234799 912860671 443954219 904873807 971547480 289096083 945383412 450484052 792362016 745924943 35816477 505048672 321881545 885262394 584904771 605104677 953920979 501260553 297962236 549548362 711782101 478241155 380600047 931758211 343890382 166508862 688610730 520756626 470578773 922923637 212849749 960451614 558035431 34270852 755638178 332877091 862054416 402845512 51990395 923893961 31166243 175314967 950499081 670147746 644928043 803369892 364636195 501585345 955691599 214862862 680205337 495399104 956077015 271589957 80330790 738071802 767134386 90545748 376598489 842070700 277786485 34139720 302850469 333445434 422859616 374760973 759560880 548588789 239506408 71752447 615069839 85751728 294882174 90919879 88726306 87325005 155664763 642332126 173350030 111526953 826931540 935963837 945826979 308077105 114212276 877816685 849210155 434054818 303959433 990036837 287438295 401616676 173224525 135963271 638775669 880202314 62471194 909951899 369529372 62556041 168462304 311158614 771627792 368381507 213978928 788747980 827197434 254107663 779715103 399480519 117053079 870351027 263468531 872474751 42119673 670133100 621468890 125307472 730810260 744709898 789323817 57191185 590245526 681347773 196305561 302870074 453467652 651768724 199792624 501824202 137016013 584124055 520405887 172365472 542742585 542816241 62183472 579632789 621056939 461347988 512195406 566949500 23364377 887994680 22005890 196964654 441694069 282342552 10788449 389137048 809713068 339116039 877870419 480465885 257620097 438861167 238680277 783765542 828459072 878984422 892143700 224149529 321649304 404674664 743991568 381042425 455430398 681866463 620166249 206389511 291942810 103162738 608662308 699872394 484898563 692251089 129557513 782418527 349175922 144184621 459458843 302933932 734802635 542526860 204269072 750185147 671403051 798674087 193041632 573981997 964558972 785291229 362178833 846157654 896495351 518024397 974615848 825331492 805857589 402263769 522782573 357150878 228457132 76134797 239222154 303359151 878379456 61692724 396373792 88858875 558712658 570180639 429491590 563363003 559619145 501874448 332941793 699705909 998223837 663590644 831334328 984919510 756174626 81694906 162794022 861972856 9651740 705224962 896875864 481356684 508655912 84485096 476568543 225396414 216973090 292435191 165076157 419852482 464020601 274418021 123728050 618770267 891670830 566684138 759292563 292383568 869561673 562750640 407170912 201980254 641480548 520958228 8163199 250035935 715484070 750836715 895383070 349760 174564368 309898925 63072150 472836321 331019433 217059975 156339560 411200197 101979657 282946136 811729455 278606831 419433459 818753481 773118777 328724367 783256717 899464440 14068329 520380889 699122933 189992809 304532042 754014812 462003962 194700685 809841965 960476552 711728721 942426466 615863372 436927151 454694346 166165231 19795647 444468463 120293631 931406284 423036602 511087517 465345000 80892873 287471921 10271093 79844260 684164721 509627282 511464247 833407246 248541933 101544382 384244956 157156753 203697897 919076519 47202209 569493878 902949428 498273897 826474730 531851900 185619062 831139849 133354572 705840590 411738672 874178639 400554228 963848248 192864841 966231793 498008933 867521833 504359776 375476931 893386526 938692424 514309572 336267888 366978140 795969031 993924419 134354511 758201157 93996442 753619402 241665925 501095049 881188855 830610685 672413854 414260199 300462339 684137570 306053212 87859497 380428237 338419602 530106564 186676637 644835953 205307061 158465696 986327247 441571030 645671499 980503764 965293246 51463705 344808833 561964529 513132743 168458986 433432041 260096049 675920175 412169305 37925402 7490176 380038315 419687262 648816832 51309758 302759931 171616607 827796747 541086745 124390393 631263632 476749378 732436259 66413862 674377156 557151318 145837764 734281763 947702285 727016533 176353041 466063084 420826582 333691058 751461581 595399973 602117124 837134115 76735413 944366059 197637411 477059243 817561263 127584280 198229070 830929925 2749476 415163716 597405632 60306347 262301907 465960292 33991816 370315777 553760953 547599694 753156947 693162444 364157070 37391903 785224361 251660619 410976720 126141421 175273899 876157962 196950416 826605384 273237139 493188743 453850156 560199563 146215539 249822963 645624887 158584098 996099389 810694243 700862880 232936937 207593894 305972964 176560527 991336935 280919515 271483885 183592549 305598604 775014767 956525950 996484717 572321585 200110364 302303623 891775620 995283564 477120339 284167372 750994928 43426088 793140363 858693578 974858452 620852059 633843759 805339116 58221747 46768370 250071400 38041438 912485033 633005740 193244548 824785319 656600073 279266515 561823379 817469155 258252496 298131484 190302921 468178440 708599504 845670015 253606432 397102312 475756624 213720538 60440000 28246351 938518239 831792961 796631789 911289190 777261301 172923489 587998236 139272686 912756269 672423417 890317127 195697481 227054912 303067694 370879868 304229064 13618748 10603687 218100328 320072812 890856989 276129657 642854595 752372739 298419371 131026180 272268241 961379867 35581218 698873893 840708848 492479113 875477300 65742992 795118042 508527156 267215031 742044546 797994333 923585456 80276108 275281011 802867460 748907348 925199228 649063032 617787147 139014114 702315510 965093596 545714906 862026577 954114368 649301302 113795383 655242776 511550532 106015201 131916897 619217040 675058023 790430296 907968199 856152124 81930559 799656879 909389162 668222298 207935057 938450095 713319556 513122426 695783004 57076852 46281970 596792870 582286012 788480232 628781702 350689099 464755354 931470463 324499449 606926112 529779877 578478955 609346568 549767731 946503970 540003816 237492401 656442763 998543158 852387943 406839363 511025608 296558691 88435808 625769957 538419722 857050267 878880013 175153798 497694459 29402772 893830577 234515678 515298259 307317852 119975692 464062817 647679579 222234498 287354916 190529040 757141070 400219821 624047206 746528585 250089347 267568244 129279629 153518972 394219500 462269660 742410698 130685006 201156751 675454194 81373453 123615238 453295198 965296832 280373218 600103368 602383891 817230425 364460777 319132792 454707282 914090544 785699414 252748726 40846660 887621495 104656041 953792952 165073200 888073131 34392334 295290583 917683382 578367393 635571033 829987944 769499859 439433477 660578617 164097127 128450171 255010893 210005159 584566850 229929966 722023113 17887886 288372518 709678816 759940890 41687292 70737421 808822548 709512830 471870734 438776121 332501148 847002411 705841267 669603312 164711748 839819061 257007028 126658728 989257630 935978258 597349779 855598540 461962998 298638397 466229585 788677471 154689715 841682286 568672598 26995757 276349284 36933305 960357318 66990519 914963025 624978153 488694385 409747895 642213667 13430618 682756717 676116161 279423852 986384499 552004620 345020462 240197032 265314523 228483805 230530648 680784449 585905287 16086811 816901286 709411772 703999705 557622885 640449338 333402710 648074715 283175991 38316476 281819178 506774602 123938832 791563185 779866696 285834183 951211425 638838706 478196045 413036864 258360859 811165884 888131298 910631100 131987658 800581282 658238371 893585665 794217665 645690537 617155849 367273487 660187529 526425234 426664512 815620143 509906098 308007929 270316589 404437531 380029225 328694936 61109611 762797331 889015801 905868913 998292200 310836197 849802706 532725444 803032306 909217933 570577801 471430241 580273964 761573141 29816472 708464365 15297184 938573699 723544462 521962379 150172402 475975630 968029914 610258321 340065472 916141956 118457136 357711346 231511876 199999270 202801567 884313878 510887658 266595069 47127676 809733055 223250105 783473747 217595252 87817759 561051971 227191743 239839670 924789379 592003722 414388025 71567683 807021797 200781364 478327422 15254503 303529985 115588404 742350108 387567494 51052555 470915441 229744365 271542616 616796213 86193596 71332297 622807865 58618696 786482814 495510962 998264616 974638129 453866608 776787138 174971177 42656495 424344523 647379409 115992992 896557477 61417250 260440812 793766653 348508928 154367139 535019044 789057609 497802153 166206214 384411718 433707000 584319074 525797854 207196639 504910172 49185534 265371491 3346555 863021862 196917450 764232079 793446566 65418188 32037198 79758902 60668865 825727622 620594673 251577938 611761399 921715496 203619745 681322168 429852402 56611190 449770072 337306267 194238044 974475274 635013604 498999434 562717065 423937682 465142177 964853187 618806178 241197320 998234084 252957798 609696752 149472659 356814412 204229681 420933165 254068819 404772267 418065702 357750243 536570904 792313666 520240868 554870974 235618581 375765713 140629758 750888618 337278228 549665497 389887608 118855070 631040641 585947921 345262660 859273318 9629569 442350909 476418031 708223213 388794198 175023008 399933235 640784368 659545238 222416628 265065879 418878086 84545631 19209524 459399267 709835456 612950807 844055838 101525352 503046410 100162949 364477541 491306634 231542537 86064937 514933732 689820212 443819047 25730159 337194592 241334048 450694872 731497836 510823336 995519544 935727700 200342050 927641806 333416176 621005610 594568235 768598565 809406222 254693260 189112175 809865117 430090563 73563682 863973460 850581146 416922589 59300833 931296871 629204554 392272191 25519013 94844961 662592691 172049794 217337118 19550663 62869630 978681683 316998165 593770191 209704411 248953374 845958553 871854168 337670718 534115994 973950365 94858828 479707380 321456641 307725187 605169121 706128647 180226877 774138564 760026991 518497328 968155492 309944619 324564959 336543988 260732139 157752507 929188225 270488656 632267180 207425561 118980326 895686098 735819780 382111628 311467479 646689384 285003285 347725897 419564959 358757928 705893211 856712722 869702936 350456970 747527989 919409067 201956860 947961161 853779918 343970398 266824951 219571328 281166260 626989319 178649258 374028736 771484344 914761427 570936600 933891649 930462828 661381863 351564393 89699412 204735564 705533437 484477388 659639992 478233415 825266523 842945375 352153489 643073905 839331448 360916419 25249911 324803454 33477567 395881691 835875468 24449714 746306206 235951216 39754925 228936043 376065477 255949303 888207782 557933491 600952960 958502950 65314101 602225066 661053619 694593157 174885638 946677406 387598837 565056583 478576777 510720417 509768194 374427741 436149610 74490511 955861852 695543162 878066282 627159291 365364608 823441905 356959347 932158536 688795887 776640180 607419727 42868750 674332775 580500440 439513004 870882092 745883636 977905529 800314691 460510500 727882368 922068102 77408384 820263164 616076866 754241551 773098682 576620029 387700752 172319334 108298896 838072846 327316757 831832501 769543364 291932279 933874985 753256032 700122451 224449134 174268630 802944853 471573991 981661668 711843525 152005599 811994094 492527135 889320675 236567447 440759128 457503741 510479961 812631972 690880005 104813783 763444284 470794419 927994999 49372429 12072081 161241497 481772572 567445799 697808988 595114951 754142411 573690902 108171404 574706327 239277839 249905775 314790877 363185509 368450777 600318622 251997315 142578331 765536409 30606891 672052283 659217306 986427445 593248828 140933669 976317699 601540333 726302096 509739368 139412970 636866718 738414354 908981582 905893229 578386160 182945528 535292201 446863700 798573341 774304336 497712370 22532492 746140992 227663136 826308643 124541087 496439682 862262826 394902223 79841126 64980145 577959522 253383945 299087568 699034137 336809581 733866673 164253236 475746215 387082629 680108988 298960111 800994638 322986083 694288415 452966586 717475067 540239434 327034723 865748643 239079293 658156812 435702455 639132975 368985155 546789882 941886256 403700132 560926318 623670444 837764245 304099616 876451660 9770322 883681469 243663774 198996422 476598703 662282768 269120969 81119843 106498235 617253924 750484464 133013367 387536013 803677412 298891539 836365688 294784561 628688754 447681261 18995360 629294860 754870323 889520740 673631591 229390041 524578943 156080379 110104511 814122250 808642996 991917800 47345187 851568958 683985660 952532441 259941425 36877468 75404702 272700324 127091685 186872893 621706744 638650817 255828516 576385437 74605908 572413013 606639968 780742622 739237819 405369902 241288701 569985954 296480224 89280379 512130058 873046214 612564646 694663134 470480110 844205692 858258901 854798016 664103787 332574373 948703761 474546875 56227987 233503018 732398147 711401386 182077993 228782125 155067351 891857536 370776972 280330923 551000802 732365626 799445425 685873415 242866131 209972566 538079356 619740114 265739302 136081244 683235058 484684402 992041926 425465340 35493298 374227707 722035565 999479899 317185441 801888787 267833493 217844260 820541686 301647922 351133127 175783007 371750630 620935031 39818481 847509956 920265701 771209297 274585942 249081426 169115199 82304422 484814806 667320404 514013115 677232274 321013250 133612170 281149813 673631130 792513544 911647074 129299044 845786296 803857485 943247463 831903102 384415294 672190813 717873429 845564225 461467836 975715855 972199294 186571986 38028148 116298529 737581805 644473661 215393423 537717991 840357825 705672868 288908546 763699951 404884576 102245388 632672957 298734851 470449475 972729475 673746089 817503761 942167118 210248966 296988934 702759757 110274693 849239114 536857919 755355892 872183247 679249495 940764869 756448190 493118018 976874244 586295610 35861669 483219722 403593216 841799875 279274810 558179478 578580296 997357074 605861681 938173501 707142651 370030528 849346847 578091091 502951363 784051264 404057498 599654119 766909472 852691519 155623711 584712899 142501801 63516051 251645312 353116513 895481368 635503721 735685150 855160979 364507592 205226515 744041233 547870584 787111745 505340749 845987232 584976314 313595494 539827938 190807676 213107633 112583722 744622788 154288710 717471410 943011143 800628317 261924407 900951999 82777996 828293128 662341162 834569361 469865275 797402012 510261659 112356425 454695659 58021521 902082019 788027169 629486590 34336875 237364553 774106228 547163070 766307320 233133412 45038121 320103535 650883432 780263277 318699159 966698200 901194750 714773887 769251201 169247243 820447063 122021986 208543665 876707001 847213277 684698231 112885366 98544905 679214000 987454103 161851084 829011624 343334768 565273204 483179817 942423617 396184506 176202752 948794138 152393074 560178937 258461972 262927340 741935069 173106982 349560387 591446682 830025364 937143005 801989934 188607123 442680352 801934439 409069354 277922617 790557963 777519858 645220489 274851427 866462197 335474219 10506176 995283615 708315003 808509033 836017087 628933531 625579336 467951185 323978156 411498980 170240126 720799562 77719811 658471378 489961016 281762994 555995603 814338714 128414147 139570294 201002450 210999061 609055171 483389259 67797898 341529118 927747605 185273794 572906485 775855375 929195813 28189173 171916847 902953627 743775873 246899872 725436889 181466763 20318668 960659159 137966345 380787014 622423541 349101164 622935010 256891571 182198309 740725227 972822502 321599386 264384936 321141607 230430144 101759616 882619608 419018373 135363314 473707720 56346020 794221849 948818629 639804811 659233852 149691246 600175809 526335517 123433486 536080623 127343464 478299798 196614255 964273440 80459264 845216911 787786356 554849023 618319698 76788358 697729052 385609549 425253659 317794325 117757919 393522799 793384244 698034833 307374355 128418836 702035267 210016853 108896615 686521351 318246334 665266473 615791098 691756826 160074034 216827785 740816735 39728813 238475913 830606958 464921699 766710748 599866708 244595926 670768253 352128880 815495529 808282990 197491901 10445444 30977546 546493265 9687488 992197164 822946778 57778075 289767505 956188967 101664836 863455551 965365338 254264724 669902944 117213346 24151641 636125759 1521395 166154323 806375260 609446282 931152293 732771745 79898821 283053170 477128264 387953887 596053640 822675840 502124819 843599876 704409704 243882789 644618827 488825722 383166560 305981722 796662490 184432958 35802387 692016110 455046626 788776123 824170791 808032794 391786621 307805048 376922526 798419125 587938043 453478982 47926518 764399529 25483662 916425982 627583905 754390252 553850678 277003455 366149642 625186482 978464213 258620577 346987598 732098246 506570868 681155279 701214515 915376943 402495739 542866354 200920225 519238183 734180821 319787078 330594817 462529095 557508911 887525580 537175184 885801654 625731306 915548646 549745029 551441060 269317827 406819417 854199245 927640867 346443733 239043715 56515256 708845233 420764691 827062755 281780392 861488170 393527760 990848343 775838292 713652254 816196172 553425818 433781849 897882638 277418364 506217865 496225387 605571671 77113909 64276003 628539081 360631117 317741802 25935326 82251745 863088859 608603124 690012604 199619978 183222206 586940429 999083394 958345149 925176464 528770302 59858963 611623129 701033910 404702143 380473949 883878079 313078201 958415418 281505748 725808523 849713302 190809786 920198430 313657638 29731725 642056565 433524221 959884205 673458586 289783695 262923435 817697139 879338381 219043305 939098364 215673594 801523653 631055828 685143110 326747702 904606717 525096362 617503242 82721900 545975556 149900971 645107316 24406755 921667952 450412438 457054693 379023636 715951235 47825828 169891495 957623506 665581171 290950836 859012994 226617387 77312615 471381415 947063839 449529045 415838294 353705171 627787408 726758028 689763579 231748870 395107006 126318021 401003399 249132112 188446270 892011126 79578234 817493791 335518755 968954479 650847186 758968201 522216422 567569008 243296762 916028857 597050211 488098715 208612413 189748569 375219501 78257159 705028924 670983524 38468098 673619399 642890650 96398382 421495880 274806224 676191554 931768093 533601173 863553268 577150685 683890391 953493457 64347502 518995421 774612655 164739506 997599470 784340437 375268430 22798869 522311892 464073356 545087806 408086873 972269450 970401543 426880051 506477347 58242753 115463922 909111287 321349513 63129467 952794393 17709961 803006824 823831904 560361723 871685132 511710319 512211892 817678665 993541950 740173583 422021585 695284654 78828697 904667830 923008516 635311482 57667702 674157500 3859885 543850895 26272657 97754632 817543141 82510929 408262900 860403130 687520699 995200103 325265552 62491921 45133719 722156786 699062652 621211725 746887335 478928475 588664572 434169100 293051959 740234826 705578675 263520935 558481155 341156263 786914798 914884990 903392620 69229830 441918184 3185486 433727346 131612917 935550262 333214507 731825232 359855123 280378317 419252054 302776774 891895029 237257524 921538355 164821846 760442755 956149040 223730244 922720563 91931425 633970993 535229819 809471702 117294997 809591694 319551306 394870021 452154099 189533022 395879727 906933122 643859101 77241504 376745345 839237652 386001172 650151856 130876630 180861894 355444914 962929462 320032225 839618687 240982760 307556972 795786461 412171521 439406616 16909836 804501856 268380130 815276967 691270618 579316020 101114378 330287602 405452377 351635120 960281699 809502357 442143098 37477449 753651308 322444624 353160718 89320102 244505375 89770845 222877896 222095468 55037264 249652921 374924265 906957505 916545392 342214294 922021940 615236261 514307359 14132321 931728914 38949950 385758010 605822567 169499192 493089630 503123781 151136782 294549434 238708787 662352813 688170398 560908622 847856976 428003274 6275537 608592627 411495456 940151153 850976905 587390127 825183510 290946171 848900734 522980495 871425506 364045301 211498222 804089591 680637260 81257324 763511222 268845786 968154837 182080819 782993725 181192740 407411690 418594805 77446457 96100038 408153565 967845178 664624237 534180297 567517814 713589761 116413665 362601930 511137301 109657243 355656557 207597495 939031682 237312040 798350047 50640086 500119784 17269846 61343844 449508570 409641225 435818696 879514478 626402351 270296936 534219371 376766992 454114070 893320420 603495585 638389693 220033765 381762645 239626150 366148991 776358302 582684399 720362689 741743613 835737838 287874053 113023975 302519830 906900792 809743396 409006799 682005536 278378943 925787103 268589615 167504549 932520617 151081985 90411224 479712222 773959034 80408613 847010709 100934095 473826423 895782880 420253891 250677881 340214324 800271739 244955922 46036684 410261354 371685381 546906750 492561095 157570284 106689843 906334517 374296664 267943563 577786611 13386928 930710671 766396516 867287459 895101897 145390777 876310792 112675738 615967239 989707147 381669463 354337753 553038395 849925886 742188721 56048743 816594971 38022185 770907080 758690262 644446714 18101662 538517429 607514691 185768606 680655141 546516667 224337636 529953843 613760980 566059542 897567985 405020484 476680880 955857680 503897747 593351709 523502928 642156565 174642842 66015770 143966777 53068139 224023263 893363696 898944824 858963732 367883976 198006223 76876927 405238806 24711881 609950154 373327330 254660785 500725888 572529351 114493451 737180003 761031291 379007660 279585596 806482304 736488995 592219736 574648650 413471689 484623033 620335956 801489866 236658375 603267300 135423636 714213782 516187316 800093447 220069892 966045944 14141239 908268350 150873083 650515704 615356946 552206148 331435924 500161610 426805745 99176889 996466854 837121931 682278223 702961321 976611497 409893868 132135648 503597907 352067004 117367474 592804104 34811540 314148697 210431601 846720121 558738098 582173183 405548957 996343035 219654517 756989499 27932327 654290408 483260174 473876706 818680992 69201253 94999306 748870548 402396790 564429617 136861136 264383462 862546114 137033954 318154570 666117012 557662987 170946921 861517166 403899360 301361720 932724400 942327781 980333981 701669639 746866181 356402609 608081751 964930510 712914242 808580428 186952903 38207726 57298417 726214260 267821017 788924219 272401058 822555779 491665273 298614150 907813246 988618446 916128987 7325671 76118718 544202625 16090617 701580124 573388053 585204134 4751967 576334068 35641509 88545626 175279260 418000584 90687390 343076124 331730474 630326180 953482116 49778335 1247952 692509827 126413546 171078310 611021711 359532258 581477761 670514381 343340623 659534955 367116987 54940578 860682796 850744716 951556462 531680707 268964942 122592957 120871336 229497822 783345176 568525185 292156245 863220730 187045918 193560037 361692227 417529537 358250335 222762187 340485301 70157952 297997609 497682245 383134198 60893753 116422546 444654038 239609941 975532195 352124316 353422220 15086938 581212979 979648180 861036237 191967756 260045646 494378578 659032443 199588019 607004850 617830756 371962784 25515874 375549168 200137875 356412977 926025457 298631358 907673103 397721443 751654478 12648635 411323475 21757623 535953597 359126449 831746451 237976261 500619393 673987054 746345159 470717421 716559361 368196014 864096951 497511482 73269676 23603211 597721921 417520210 812743339 865425759 526800355 107852218 88494316 589596569 84155351 11449100 115482176 914140355 295171503 533889295 505534701 961874463 791551442 220260417 853747443 557197996 193905648 229761005 413027277 330751653 63916451 522751747 907406537 39751437 779603049 732319618 253774428 748905981 609972823 322706221 941010802 183476631 944345037 379144499 855052497 588781813 273793969 670948757 779708895 625456044 995590156 803299638 77642825 124258130 587963719 329732955 6710473 271816067 133220681 838340772 861957679 261336776 760495894 683916011 708397157 769254635 944313908 610051248 641275990 75099678 609089271 229264162 925631951 930110771 335076699 520203043 461245871 359625935 432687271 571968420 88773709 100732778 395075998 825673202 261660114 372969515 304445782 546607924 265716777 677823378 21925090 557504318 419665089 288719541 377041391 666976336 725398475 319649306 510034124 173003347 610846952 102024613 576877476 763738519 630748459 991731434 347297264 593502895 956290835 543235880 784672644 786263370 715030253 27162911 733759394 1942702 785409699 837686993 215800963 5379045 137479727 203550283 727402558 4026375 539728235 739078414 2049267 739139784 466244338 65052881 455943016 379861946 208699422 259624150 903885956 915749708 561428363 67684175 166641086 304337227 377347851 430561948 965712397 726503641 109473243 353696518 712104855 270779892 714501863 108180786 254838338 680875347 365497771 706974530 228964953 301586843 55665587 620399163 798250749 65317371 170004448 654325685 383765032 138631634 580754664 413193398 222488479 103542098 537201272 602711981 664047108 124257378 317823258 67322717 948738128 684274705 412258643 114254359 605920258 779690853 616441834 139621069 899158952 711231202 209833764 425600576 416604949 983932547 37673392 545945495 690105228 467123963 739316248 534996222 926629525 226844271 123232150 913482535 939832857 195788040 683720218 257220617 889359511 650853580 234562843 337597307 641987489 993324663 483504417 669776062 12982278 322020000 730631012 304941912 832047614 756599220 932041344 39014246 478719752 186528396 603079924 473441025 288433474 357416765 506328873 278233622 274923011 167213940 899666649 694069337 43408119 630824519 149120687 812120994 83788053 610050821 213636394 354470597 882369284 804320422 591988566 814006882 811768516 278470567 669619915 203410000 723288936 73538112 373994555 903128908 109153657 381153899 840515500 777615659 833563781 968825358 789803545 733067151 571094642 872527792 228028132 893242559 161517634 116146911 706411057 331374702 622551152 349923183 751239603 727649625 199973404 657926029 349755042 756382996 153567063 990828580 5064443 314429801 623205245 181090885 614927021 62990639 693899915 519511048 108133242 811118789 110760232 8577003 176963654 965481225 834649207 299327275 138570198 544310690 963159237 573052284 95480703 349471188 357207852 422784288 150259021 123538041 825953301 823162313 198310857 154468284 698483503 597361144 159765987 981727924 500732995 269666735 478068105 733612658 7651907 268615135 354641012 569811683 434981680 287525308 23953186 373594325 96217037 427833420 288327162 192861175 266289736 418936597 788644442 483356391 720438310 724589302 538839315 193064291 853967954 97024591 915014454 993627866 786910064 609798788 203001663 49076270 958855906 846289748 161698919 627139834 311606456 540077566 605750765 124968201 589696823 195353621 172002031 956610109 82286366 150640170 186949409 578410549 899768494 906394959 426603778 54432461 38595330 84552186 998695784 710000499 708257811 501591533 574387164 713798307 632739575 102814133 75951771 231465888 265010802 371063993 785430489 164265954 599010492 963875201 732965713 414626269 47386239 763253367 757898480 94120978 222952029 437403674 936970970 118271004 657853350 258105230 495308758 576807465 606669144 559276683 62157375 38803896 309105890 724655102 892500464 875366200 230397562 669186148 216088942 428172040 251757234 81409498 208582440 461330277 690018290 860714888 135851814 613397565 881653500 910503971 807060605 518679290 716538623 914144685 420014121 935678323 206424410 759106390 620602476 26876853 864285676 119400080 919177771 453693876 434245644 350270854 778001184 922383274 708969658 765298900 471049781 4988434 479870187 912205844 218885100 81112605 470750713 676331643 62062626 491815913 999133611 182078775 799189297 232480254 283802534 123722788 386576542 298861922 969998815 517401024 7766338 865261125 269115970 631384785 68616399 618747398 739852199 44895770 396685814 29293584 661828585 820116267 550954525 610523386 781956980 200823588 541079399 471310187 327904878 128568174 309723489 442610643 782003335 798136169 497228911 796699321 28561320 186732511 346037678 494669557 893280350 517765881 793486868 967151158 112610937 347850615 834857295 778257572 108415056 423379316 216454126 83305641 23743149 44722470 911120875 297726734 644843670 665040899 374698075 816564455 396109364 420828954 720906677 816652803 80686859 331622372 914133132 568500237 66439580 738238417 383993608 913251253 177324234 709456352 839675120 638033885 560645586 505979533 79185027 624544442 914949105 510468389 24936593 31510170 332804355 7419003 242500326 303967468 330298190 720294675 113168521 39560910 725496690 979095043 908327605 25488936 451112939 849291987 410399255 919290085 193260252 259670491 26827306 718207136 881555138 703137646 512420950 993535040 54166860 829501561 793569599 333001190 156815635 511731597 854292062 587052200 671297087 449680918 522021474 818967673 236689789 102737070 767942998 96370586 23364710 256334512 811384553 734635848 745533198 674248275 246622359 583864164 511649572 416249482 544426699 416650739 772510278 48583673 918698435 236452126 575693961 519416931 873853758 772299555 886930587 939375986 2615240 815066658 537093693 8253083 875280522 779966001 506228186 369447323 26178558 636647316 108385418 430119553 755867098 625367487 64641446 153866684 813248214 243493940 115366276 386959450 555943931 775749660 10816247 626663698 554744857 700664568 206278519 593208455 388038969 590057305 287438666 129483387 194325331 393520753 112216178 180793559 827061656 869535569 224404166 352114801 724020234 73073787 809729413 925090524 164257660 564061600 839451569 178988449 328146678 407249031 443959002 118031323 733935480 645229611 560952208 930354910 727721015 330753995 44427792 810788447 790882273 359932455 137875133 134001041 1022902 759587211 438981108 663057107 510984066 244364278 770699170 800388902 609440185 523705191 296349525 67657343 987677554 623263703 553502546 8725444 406537820 774086367 22101150 349919098 697237322 443670579 149250057 335743545 388016659 565352568 168165396 698494440 563906211 23070863 884120868 77174240 404056517 776550608 646616398 919528881 108901282 516868885 999858681 326273037 223400798 244663654 809823538 813582623 505191324 354925567 836946107 799070333 362065564 480622112 400506331 360071244 102996270 87525853 34396065 356344476 168454149 704238786 96012384 575916037 303855674 325449148 388798292 315920850 551781623 884072355 264690118 469102362 944140909 147371290 15261581 39118381 3391558 744758517 893020164 576871319 540984072 315455047 733808808 247812743 299404830 379258750 932988586 943647082 892231887 362939618 167314648 647418519 468391689 693434287 83399812 96709805 252576453 429382794 619851024 50405324 416150144 632140888 415646949 779649288 829101816 353323923 486867202 182441691 287573962 274823513 593593103 656135676 388323305 895386920 774546966 130707893 944347182 179089164 460822946 684332328 738685023 477543395 977014517 780061479 938635217 561188285 530843883 948780678 964856859 805505514 169164826 411098960 194926822 592013891 875951375 246925757 513093635 67246920 902237755 306142026 366954280 232552637 943722592 131342712 135702823 134842591 440593795 66389363 149143286 411050163 877059261 423029436 60545821 732862920 284925247 806693583 341804809 399786978 186351756 375859619 119745499 747750948 308508815 613313050 25770344 489978366 2579349 833169239 239858931 251364431 746027776 312515354 932122197 679037793 841555600 783039327 4673008 357568916 311063933 267876943 934900219 860801912 823799913 241123611 115980938 686528678 409539064 966279410 80395444 785681493 391051793 928250165 690140456 21721482 90645638 423899039 101815750 745074692 817838392 966030673 363096373 809424997 86621811 563663381 222637642 402936061 75472801 788139637 536281533 980450643 592942592 663654928 822806717 230268628 818517782 26366756 853323441 964267372 894068384 341733090 330484754 624825630 69405851 593664827 535984626 17793571 17602421 312485296 172145953 573874203 900122011 518919299 21566354 539637531 516635732 88816924 758231848 40012704 165746556 303896308 853508801 368725002 288972390 587910385 588332436 937149343 984727537 752671706 932088590 878972363 971860528 284285043 927273507 51716620 606446878 644525202 503374727 760050915 778705927 826692825 516035441 655041187 680975176 701382255 574785591 190824926 724849728 178461957 808162386 64669819 495625097 900347233 415661353 396058434 788423453 550538398 361841523 36159879 709800008 705560913 763398006 883322426 759112661 406282400 908224984 171611467 535552924 188510884 590887987 349353211 782523567 221878731 205362277 978940179 158231831 843858893 388304382 177236081 54706736 833749314 54540451 395287359 193535425 244838744 745896270 931298466 53028249 578902471 32958152 589052035 649972973 914800370 817217347 420902746 539620343 350920 15828036 295745137 429765782 82200945 608750796 771904712 956690562 793684744 470017227 405057083 721014636 630585556 668580614 755489204 214867025 456417680 770530895 719240695 166807750 346875019 328630998 377992258 503315283 298330895 486105759 25341753 537791761 286569788 71266670 412652869 201847357 305011262 452862902 10440878 315952638 202078598 158557902 191477555 518576859 679656840 785589105 263361215 400305966 423372989 129075420 254965839 190029667 50248930 87233440 732043625 96999994 838114690 560588036 419579531 523063527 371930453 792210865 691324624 274616823 520287346 820798595 796652549 683129009 264581149 806871311 336835743 562757449 381806623 419159926 331816658 333151194 799319468 201421744 598245201 849958366 258932331 63965244 309087120 429983053 189873055 177855495 55488032 834067879 432668828 106533290 425124540 218016439 67227827 753617838 32592481 846284355 561103132 107201028 86293408 549537606 930418478 540534370 240410701 445967507 570593159 574841863 369387447 941954124 646040509 837262255 180267561 504708867 892491102 115094079 701197441 396011273 314503819 246497009 966340469 359024673 768613557 363128736 169891471 906430993 300721891 943876367 543666043 493331495 914420209 947426224 548250303 595955027 221000978 766339784 381355152 53690322 319228012 499100679 961500256 261511024 918530781 842490111 294303626 951944293 291293358 532245775 442853680 756640815 11809747 878600446 966394989 514540499 3880567 501514974 70081061 398126301 956015137 866445227 668456726 331235252 409517105 774711553 480605088 403246941 563694852 292430058 649624133 173820339 226382032 271218158 113514667 741254131 333216609 973154790 714321722 264993451 496537225 804103851 680262176 551909804 508928250 756935829 283701321 789077733 586764366 618900959 970488827 371288362 785232193 159607301 712913000 62717325 514875656 152159672 142873282 780008416 157560151 726955567 538081324 942995030 220673283 948529361 885089033 980805302 417636563 959689486 201438060 973377255 275799792 70184746 224919307 920373731 278071133 361966044 489851675 284384401 126176199 859123266 898845290 234022510 152950671 515481665 45460954 246556238 524778045 518203232 388591678 735312519 460696204 73077661 825577009 907735699 820042525 468222446 673816939 102106112 585230125 169611214 785914971 763704804 303027252 867542940 992177985 155354215 340042661 583743407 1518172 55675311 599565673 189313089 833362023 489719015 370490912 190491557 694109212 570007270 115404912 682851721 387573350 535016114 236369173 790320094 339082133 135673288 131534468 640067203 289795073 537107787 88906842 524328791 117926078 588623671 413435523 66022552 184288844 175631335 58962282 657442508 957909154 518094556 997558464 270911334 245449162 613521931 669744947 589387204 921778015 325119371 728149753 722718341 263980088 746727685 207102276 163081599 387056562 750524240 861742723 706950597 227129282 116193404 288617180 39339165 25721683 991755303 74454990 359745684 501659185 22877339 722675987 570091000 551209438 218164796 194273605 441064134 121295447 72857338 762057321 299742533 182318430 173230590 143228511 727630457 891898486 392918599 814959388 577034756 873155342 75625023 153870785 456467874 312376471 107981064 551920748 152925452 826842985 356820364 452182116 319478545 587510057 471384799 300503370 63509662 404256614 872735639 585538680 989658139 614503531 465046656 387086788 43316351 512312427 817915 33457997 923024885 344121857 219656233 993254475 734411754 570429192 248968321 281702676 837478851 182436978 459778378 457886881 836267556 803550203 213288958 166831442 855770289 340319185 911938769 23113950 943467484 444740940 257525228 500663282 600492444 460621358 717532778 495964493 572912030 252681401 184487087 293811616 343862194 538901006 58863519 416611694 530892113 93338621 957705576 801035844 807608611 50397763 572519331 657990737 478302854 933350457 514413962 554190610 899680238 648440611 335220599 323138412 954590050 440371243 15164838 178978121 759519173 776741059 326627432 440547 493339169 225016741 823123369 5569529 752593530 314742223 269981812 224737536 237040419 924748349 61202963 520921097 21439334 860198270 336854354 56020149 186907521 282386444 456637931 948542964 769081321 646490507 249027777 762772984 845697961 805546130 692140462 937321568 527255184 181150983 342558588 189174673 485101160 834003803 57239038 298452633 570745601 28672886 959423202 636776150 402863335 226633858 169746969 860730933 823913663 577757067 928088065 88481882 414594395 459568385 348613111 333447080 416591046 141276673 162474922 632826479 160192101 933594692 342679393 68838748 608039230 914249443 462925760 900635018 765696488 800111078 10254110 214154077 144952021 512535891 204940379 754396779 631415732 418318358 359965101 949748706 869469429 393379875 548301270 466533080 44277189 714912894 463193012 724609938 715577991 696914578 775330076 517257845 614848527 422966609 758703575 981402260 636603016 623874526 340301030 55859791 665679534 112366261 986869990 229318248 882842348 656806993 952992578 106908752 398938206 338175614 861122127 899501404 104898312 719566966 710277554 849661338 371357225 145038825 879346061 154974311 25359 137884673 225095462 270033601 510395524 232466474 85220106 906771040 253970691 994345794 182170759 102080506 247309977 957491172 287604872 865156169 355508457 877939239 535012226 289238390 438255326 299630798 674746545 261552166 602545876 107943118 673227705 445185519 864258705 6059997 44571969 417596111 999720749 459281848 936977099 896934875 311930796 601791555 662544732 903443699 152656157 495813525 649559159 6984482 606115542 298881804 371897337 976458534 216120852 333604989 23243569 973166083 557078575 76091435 467792793 804047943 811595004 482894503 139193096 629996006 832640024 120365477 712907345 658290629 840693561 669119522 37219808 611549680 564952354 533073224 595735673 441583956 194822279 39892257 524297784 283924236 36166539 751050859 604445873 352708001 576531291 471017352 832106718 96355883 487056695 898229797 117075369 95789992 960708761 418827599 923225807 205721584 387941336 31527227 93093238 170327214 373254868 703121774 544896176 304363503 623864652 390136973 71585144 487082774 300346649 612415323 489528018 250975641 631540932 58473511 122543753 463950794 71946459 927578915 369380664 211466294 269552345 96976479 198559776 799821818 939278157 518894612 419956113 693979684 618531520 777249836 967457246 82268136 73326881 783401793 406064719 816813922 293392238 560591741 454450716 395280287 449582690 891086945 774329229 698183307 199811480 750130522 297054586 416439155 16806811 311314877 956852847 568790545 548629580 895414379 623869456 67583929 311906656 122345468 763904565 780831523 612499256 694006914 771007105 291231509 322449611 39303355 996122015 921490805 891116693 39426329 801771740 358228595 902647321 651324245 179221381 47142604 164704458 343359267 58778804 20027429 301066506 687937799 822503796 503480051 341238384 451125611 127255903 35997455 453552349 947352033 276430849 510975420 163580183 367929330 489118722 342976639 363750324 506132250 587478021 781270487 47526025 198945083 848393592 145506208 634605040 800762515 542997019 337335696 679763699 135201123 569880503 27704261 670312138 897054943 838904054 810778097 413042289 183154423 934049293 567957257 277033484 125891979 132542127 144964918 59407798 766248208 764354654 915703098 374451831 229515298 233113843 308454034 590668049 782708116 595629900 873128416 773066167 997108698 640706548 560826533 233043904 656496919 695183176 795421880 668850082 569154427 575755919 732380952 587674081 965356896 623126070 156807665 466892004 125944709 136365413 451115073 346101488 180556879 348932688 935094054 925429673 883387415 778295922 421138694 361260783 439378037 209476146 665034587 31859359 302398765 915786494 837565310 27875041 55482752 268958066 185588339 2093884 592466414 285439824 572612199 847513326 963651610 206853042 183921871 124829473 234804384 182874616 372372583 683231496 651989302 751000921 52904461 284810808 763189434 296762893 817924936 276293700 800587121 446943917 907955563 424832554 157581457 965188267 308011003 520454847 632814632 807716917 567164865 271742603 637467564 589169745 684129948 481611913 174608038 784579158 862540631 307883343 672595938 135835375 276620549 433857978 590211712 108358347 318217324 834724085 885471714 146946228 384562754 361831486 118299721 463256968 43563324 298423838 300340258 600024790 831203721 163124891 706604188 448160408 384350359 892862656 599296133 331092572 986174165 825291371 833350170 800694742 232174887 870464339 563178994 615323091 239127738 105836880 928770348 259968324 887512422 965520729 90532032 888970796 431042062 218814598 330174473 196400484 323522524 978575408 93773555 995151699 846358834 54244849 197563764 825775363 536511727 356457847 501010664 977312973 794484643 486071842 382710220 944342832 627616447 394091821 767582345 393449905 329307768 808280969 623508095 582906052 70018456 928041768 124178231 755460807 179712670 124348448 728242132 148750234 993680679 470433632 497295208 572308193 202897603 388002781 859756351 311455319 606993268 833613782 22921212 380646731 204333772 29054309 306789489 331001836 151597708 40602270 597249137 324824722 272898883 788688569 321205434 151329423 24429369 516959806 277601560 810953653 898123595 344445396 266648023 771996232 358863639 560887948 666899007 803313013 14317759 147107534 459435526 541272923 291020708 488317167 258227060 458878613 215837936 9552720 876091866 742261758 962715640 783730271 292648212 332311248 719610810 236459266 412512249 620321649 932204584 969692857 436753191 488259789 948526630 354701696 791271159 899124814 812969944 126901695 678462478 371569444 813600430 745732921 417601916 664281734 379195936 860655528 577390693 917719348 233626189 942896591 879581132 516113700 973329835 112915167 762255540 705274042 887784553 441860953 625367692 10685627 83603650 142219389 825223962 804627954 132178147 884817873 870081100 665182626 248486180 421453751 882007351 985973039 690937361 933859472 102839592 594209737 191300849 372628565 248599361 906288970 561618901 966277696 832569505 180636939 427138266 15577036 484451188 967964988 589317187 956005088 462128032 610636338 373071186 708160115 348576501 714085265 175552094 553260344 896559746 322009294 987412996 736136020 114016137 484881758 513426652 159047400 50059281 313913952 974184932 989344816 907021209 929839122 149309037 396276971 523957264 802702984 221197534 693653237 163486443 48285099 512484358 520953228 543875785 91680510 480954222 932225344 686265693 828196624 1526488 644885843 996541938 533338742 162211779 929915836 90557523 43210685 176554187 314656462 571527311 672275199 476522876 202996832 71834889 498201660 518199753 991965942 647211213 851389735 612744253 634871397 178729652 413860917 22138402 798765379 689254766 662836262 479038935 776676543 923520891 417162403 418589873 764050635 580866113 497698031 693640620 194244026 611608953 561329115 549512186 595090431 325402205 803207157 298628611 46236993 295352788 637250477 719292577 303726095 599563214 527016506 241138166 957297182 177992980 504464189 292993026 397952638 346955552 31820866 112145149 338237246 482394559 880917664 224616561 144014188 190488310 487741307 344668657 11231212 77831405 495645735 334351589 227018789 60197440 401532623 719843660 155655772 425928209 295466945 62485969 224548933 117331037 836681884 851278969 154419197 348574831 294249686 658461850 785413177 856366764 518878534 527157642 225840528 340743202 624936459 165957864 542983425 296112860 577810869 371228992 323343078 675387104 329964656 574802638 528498026 575957818 151663808 723789508 638198820 964736539 234233067 779572132 893899106 136308817 397318752 733695267 476182168 718005504 875479653 673886364 243397827 312053623 977644521 338538625 218318164 580389848 76211019 475018437 723271221 800391642 183155152 289616687 666504272 732476614 119035882 825029635 813861387 701492393 893531445 694185277 423326735 455473372 885543194 772065393 302033245 985487106 764789430 259188768 529029335 829667347 999155624 204484028 664475906 43840133 60999796 865964511 617506116 407938891 222482682 118209853 570299483 976516700 843187621 415551558 602751224 52046036 613455170 967881633 180531804 753381728 953559090 734734670 216305658 566543397 357009515 405257222 533569855 132700494 108241823 306326299 484278618 41089552 526500155 845193533 290721564 211482877 758822122 358112762 603080863 653405031 132852677 659128264 709005863 720344431 386722286 361152074 526026274 440791300 982706812 265729489 757342084 601384290 597650451 617577951 743077232 44698033 886196747 970398276 522986490 873295425 620540544 381039960 48564346 205254271 709530424 853464266 957685834 216465668 792752476 578002845 630049008 38036819 668711668 64873692 921218106 751188133 673777730 396740717 444834318 900275186 390565598 957943924 303761362 130317550 125648407 168449683 983244161 882240555 259244071 308372913 564119325 472725922 669346974 625745241 501295517 902811415 255475665 498203796 936542649 20684021 853321493 130117969 767764033 913301096 518817291 230997565 519225121 528501853 370218981 828305325 773529145 957887283 468735314 136953820 399104412 461345897 50830614 944338408 436899540 707181212 96675248 48248488 255191189 353964172 639162774 126211586 342479291 240040234 343392757 841889127 309617244 197899712 105013307 29550252 590784429 329889912 675249864 775425250 117865928 613772232 259712731 446188930 74573712 790065196 1917645 816000033 3935929 576532479 77677715 129114885 637810017 857610917 623178114 586866824 817351822 177348210 194378136 168407318 987222931 817127312 93540800 528096376 849812201 702494825 125196845 11155240 630909575 643868431 131968804 200341534 928527139 990597469 42641286 722582287 571358924 470938336 710157950 763904185 443994618 822151774 433658004 971917227 847957843 769494906 582594532 478346425 893270857 17055275 2103028 614917387 614602202 204773983 433974974 466757947 686804704 739351897 778940485 910223357 623655350 738316942 684568572 188522424 99035412 681674749 194326689 901353966 326264744 251491135 692696343 617547917 822325697 478936229 76012358 125920910 132121864 876252146 323003903 864060133 597219157 116197608 805693461 462180147 240682285 181806616 448719552 691971863 839765288 784360065 675329137 717803629 850745724 903896251 672768262 522747112 839917222 910431473 108575680 919646610 923948976 273064148 979680974 296330952 725949694 171597151 684898224 387298697 730320666 820356980 965693551 112422926 915483122 800075673 533301020 29004035 46476534 913392267 862864508 121217408 227502638 413248181 859534160 635355589 683972979 401044548 848893940 576471225 710632661 925564221 716561019 940110927 769851067 319824770 114410133 953733988 381016539 605308102 296124449 9583892 333200732 271309718 731463039 174017418 873900649 20090828 689343506 145362388 385430001 670129802 390768642 320264041 569188380 617120148 836133760 913396692 382489011 826904955 480686812 726213822 317284684 218026891 879949843 862386715 901916946 590323585 980594650 798620665 574202426 96782699 438370064 745536514 156371818 405373898 713627168 210983403 340003934 99481337 877198654 670616163 48647496 863214654 413977982 380863580 824642341 760273487 735519983 590658563 290517169 281862287 839242384 592296370 755686342 576081641 524572089 760345674 251660081 498238672 689482589 843316579 590259410 875634570 496402004 615129289 13961312 201416204 885508839 516794494 577843403 878066953 396144904 325975529 343224928 350051434 95999116 115472073 721387019 462892687 48136623 202854776 241115577 479460861 263389786 82361142 307396762 286266172 719321498 838237699 959896200 265054184 724926257 575794762 717791881 898849862 692249689 852614744 995962777 807256896 480522396 239140525 88717073 164365886 570180636 784435477 314621325 834685259 461482759 72690513 177464077 63526933 304081059 593829476 337180687 599737179 361621838 525221386 443419962 492614640 993316089 133916740 901384192 750546520 377215483 308239126 625623497 643759292 727968494 296503332 395284630 751228529 230977 431193693 395481755 283235303 455464613 779769080 776959962 870168672 737600859 472900373 230883180 521610985 12422844 518627504 568015607 62934803 910681378 760433821 114875428 302734431 843235581 919218608 319049594 1194271 719939724 731179947 194728536 894858876 200347946 138563580 229947039 36546368 270549725 514615579 140839516 468549819 627316549 496920085 862100342 100884124 641912620 341771794 116387043 763013631 840252669 899561163 302072302 865617917 225103323 519197924 857340290 243610866 218474841 300338224 588761656 118298013 445756802 619692365 693400928 790147045 277747223 324080923 80685183 220656643 690938997 817635864 116750094 853082424 803576619 206868934 812404553 976636478 927826999 22890380 574344158 632487476 919807077 93723147 922892746 975089883 135405839 464292863 728177310 206184528 14030578 31075725 534908601 623957943 35912759 407778435 591067470 597026230 579077786 157128260 100184945 525984083 672303199 634508309 548008674 751188308 729889573 157298105 307424687 979035143 125821173 842790281 380786513 724413671 628323639 376911131 74240909 192349909 726775863 704694257 657866284 953090748 129456409 885291196 988621220 738262483 988492925 760686729 396862201 371749781 838032513 46983907 361625861 431437812 699175940 357214102 996312939 527094977 25562745 486815992 776955725 282005557 64776807 447137430 124771844 224740180 371645487 704633447 374676470 309219668 245762833 49946400 912225629 982527615 447338363 480927204 173454231 83668746 491230830 90891411 968575488 566596359 632857535 775554813 608263532 71370443 862991427 364484151 621679445 943827980 532043606 921702341 413776924 255545105 898380295 60201868 386857567 843106310 922729226 555034507 178299215 672575511 451881635 481634241 512691768 893394857 309891938 633559775 583241429 214595992 488181176 89960860 820222603 140595797 465857242 973367649 109911499 330864021 543377767 371621411 768362716 575769549 641336930 518658153 672106705 677803458 173700932 457604937 925295201 928398900 323842948 912501160 319231945 916181102 834407230 324153712 789859922 429064419 406270645 58586034 283065101 798681061 737430450 23279457 599977185 793478277 811161865 15282730 188872689 731938211 13022908 512094882 788367413 107692270 748865922 636193313 360858681 627703184 582624668 383579032 360055313 879308759 209573338 594358927 638198803 100835433 978197427 48280208 254956075 496817850 378574166 586146932 241381099 816837041 765149164 93334283 846200747 126371016 504364024 256782761 976350112 27305417 997996506 86346602 305259967 728269544 694217908 240988428 575305921 415879446 733297800 547730536 103761242 767968510 303783314 151982355 416639431 927526861 478584681 563064529 135952845 268808783 229723873 848530830 281358856 477247058 911340756 190564890 699823707 118694083 835743901 626324496 322708475 410923994 197052115 863301478 784968513 707374985 571326314 138403061 268084292 343709345 63615802 465439818 3585575 896020327 280381886 882092577 575501458 415384728 506610099 638663870 375430048 346881454 262834173 563883747 654691319 568147220 116685730 285591081 663033349 455624379 990483110 593035684 264061584 885092935 754285068 6248957 247359978 302601695 96998338 734902455 910788460 846409583 707543742 287683347 710001989 338672738 385088966 581217497 836286348 275227623 31885584 932606853 921905485 800585471 229723167 168185356 81278287 396620039 349098476 938069439 109986158 137160790 455823302 927746671 869357911 771831800 276151853 610609106 575773059 258291626 199557680 144308193 106410718 562364144 490191849 818517926 396196407 550857177 941034081 761059964 453483758 720369710 437604222 487464309 149532110 135427760 732780878 893262984 749538155 194833729 320389293 846233865 68664306 908024412 7872071 40820412 244815246 678894543 180749834 548985176 610387655 248101728 760963351 458407903 892317007 696128031 521536111 663373451 624880215 135951729 658460772 119009093 888521261 839989841 787313360 180004491 777614883 358318170 275858272 910688758 497542091 903759180 632459767 956994989 502852702 18654434 43086152 259671640 183578888 122306884 910009114 682751770 588900490 905534414 201326320 925943606 681621851 299418417 757532129 216726795 319398565 735761723 253380757 877664526 990154840 512290563 113229715 26277990 79871722 47866472 761308005 318697240 676803046 562525042 36714993 658567530 286996100 945368776 455269621 145609555 504014588 523639138 427157470 732427824 464415076 860960612 192991371 376353824 324342180 773276013 598191897 539854278 810307395 976222434 181021225 508303530 407790174 426978730 16932402 129219221 316134927 461808749 997483551 583508289 830753548 829269337 141133384 497354477 869068959 398070631 938859423 738563157 63579534 207363039 180720171 731523116 685927025 114336050 874777744 123744266 485513938 720255982 819773133 913793643 410557427 684524636 880914289 916283813 258275040 571293496 567831461 619239299 462135288 744588665 813864061 837826629 359746445 166865650 544836878 353156738 639516723 363868046 448197883 669671033 393973636 226004447 302520491 661351764 837728152 921690199 13014490 643038143 454409968 622564468 252096375 637937869 656232229 393512238 555301323 637545368 259136744 938338079 682598892 311270124 941099772 626577847 395522736 122229462 529714950 900683469 579639064 142479350 400714216 965800149 447473614 327651478 278413190 801193208 43677645 270388918 494782715 129226091 669538734 704627608 408838913 39636295 237941837 61260879 939101527 89313055 225285376 775628254 955809342 875155654 691407902 688863897 630001988 789992799 874402832 155680933 814129772 821266226 620131444 654169949 139529520 774433466 211749860 641289454 288460612 256140149 98291107 810640311 105992892 964108330 369135410 496766004 148208954 994087083 57230309 637467416 823201498 358591354 692136320 957516839 469375956 336678193 106242416 566840888 187281576 195434693 184776914 395555937 830705657 284771388 171363602 99414922 448811249 924658065 330951442 720871344 994493282 818063022 517698714 265229374 111210204 488168941 505379187 333701979 790649871 44659684 176442418 832886722 391152872 647871519 3059806 447614242 596545813 864539398 864768709 120064152 177218320 838532204 396995413 198716788 458117910 920881242 627113420 198008776 100691879 250240847 687229027 745805825 545844066 67625240 626758836 282123780 368221293 688629396 198751138 306546359 219843620 372077776 490207658 641523967 310378959 631159063 779342385 839761512 941985492 672994378 400005390 781357111 833298736 350204457 890809924 37636615 212215662 490965845 274874813 481528992 340396175 523242327 591596398 82075437 703272546 629359884 415499989 560343457 144504559 718696032 993699960 77764991 415572436 488979277 598679633 61279084 444729046 637581775 378089447 285031332 550194660 657330452 763900834 504857390 563821862 887147578 542242323 780795932 754906547 111910323 786523664 353281576 475714323 103746075 964897034 626254231 671028371 618124422 205531219 567721358 494922866 875396690 288219606 921838133 581878645 432575056 503963888 100627253 945199890 215179998 116641839 192050853 397614346 627357484 418700430 625262301 766626743 846130254 718328251 568482860 758599949 651555448 79374453 37282798 389982578 400669071 734647006 553258729 896715199 721547985 826758156 731813929 47871635 19522394 295397280 264842613 210836477 37365589 282841207 592876026 20452776 10763362 4003418 674543761 464371653 286461814 426907448 289983572 766941446 370593689 409551370 67575662 252607504 215385172 499321170 113805062 381872901 467980315 742044212 502410456 75944882 861352812 478427538 883721945 483642573 498043461 286566860 148934479 562745049 766669593 601052860 737552312 882192808 708626680 545159218 982202713 220228805 380280995 922656202 432510784 736893334 42452456 221439183 310575574 24022647 839638511 93073733 663757963 278267886 733170891 548558637 798726333 733547176 18264902 384593800 980352115 792311815 20344191 696027932 713316519 747309468 394030798 244765551 213776155 352558518 250978751 903944275 713727110 49408766 924258173 635032548 643428035 886686296 788675877 835885503 604077260 637088829 183996219 569728380 573183889 85001574 523129477 915242125 497548194 254836583 322235137 763014841 703289415 367755307 894435615 578711826 433390967 976421393 984062617 695028362 36735047 915766861 567839826 324573567 210890134 756461905 101467613 176951213 65934305 818065666 385324499 235872300 636867842 415103108 349076846 630992216 118989268 99810367 797458435 853731998 568542381 395699751 304109294 840265688 198885745 658436058 303115190 612698769 186975157 698784249 291358827 444006038 636717255 184484050 629959899 431703839 222888802 437977154 797006115 245792611 165428031 764838789 266110089 408164403 300444337 954106160 322184809 493679627 973321966 485547418 837775398 484256167 972842786 617518511 212932862 190148937 343866398 744270816 729020899 188672223 299980311 776928729 330570828 533423225 685472767 124027883 378711574 842471992 485875264 715535678 910237728 854277998 704202752 415864381 417799290 572265898 893435504 672466377 26104850 11163177 692454153 877654165 466017196 290580951 130148331 13239943 69428939 321424223 618473873 518252570 235549081 257643490 813801744 637485226 649714156 917741157 772041336 329346691 549041760 846222609 80506316 478767829 259484379 947947466 558212682 458430897 134678080 608357026 798896660 374471345 495811494 358227181 855901955 495971438 477358532 750260636 62108270 314233782 620398735 664806553 308748358 445047990 762679033 758204430 620328090 413525972 695017832 8166417 626858927 627300951 374819226 476076378 294154562 338990997 228392881 836838217 81636762 73925421 934489763 306831879 642088904 906705301 748122217 567479058 538280933 946345448 45970331 647725067 532741383 421052905 513144322 792425835 228891458 230284697 935114851 916792763 759368489 360410994 420778857 956182236 434769916 803328083 60337566 667327810 887839290 411741701 428067332 317109224 628392937 963597796 212066779 577570243 388817215 798913299 396201736 963019521 988200292 723601590 465351408 215686513 425062106 59074960 670547927 927463044 322695562 714104223 329358979 337738716 734880294 804497097 672391561 658193380 735374590 551493327 346378378 503903736 376079872 206681725 827952392 670839588 747577184 675014106 224858015 610829685 141353843 606564583 587351667 145083914 599781113 352684888 945711014 104946136 473172520 262289270 140014795 838400258 414667948 140029375 556784186 574817760 205623688 566833796 943453910 619174671 696379022 372937491 562863590 766672878 946611632 766966042 595473591 382338910 302276216 887857154 881591564 401149646 747887499 457567913 678322153 484681464 815876726 30634709 515120721 840464013 969604395 436444530 865448243 864868365 40817774 355031879 425602872 297645955 118217307 276512655 304870576 775676841 540932491 97328447 325079103 640216067 682057706 805303785 314991097 350439417 489119978 244360084 247246508 682956680 168062447 968461714 625651207 727520106 147826096 378463607 464082888 972477974 636012215 702505824 618927510 156213292 935107071 896422921 503630996 944099065 846719262 189134467 50736330 304398992 331824605 252155408 887442381 195703748 16244306 628445433 424186593 937483844 954205234 336629405 754044639 719344604 50037799 41400603 990220366 285994191 46765240 622588526 971304711 214218980 837449274 560106319 171182795 121294900 422482093 787334300 10554574 553513733 292317516 618543177 630139369 895205297 152519610 214548410 43515762 47246062 815882422 854701088 515447302 487893305 593520313 612461194 432216092 278384760 514197549 67644764 181867268 379275354 455817488 468857552 789230167 228872928 208420760 549417076 417948163 923769147 56592597 210521661 517694734 741538052 338005747 132621495 131118556 259846920 802955397 197959971 107680700 332597703 619166826 805924041 769819319 576587920 642706788 544063332 650248964 733128719 422525016 396345013 497129492 942594874 532651567 19358722 749148639 249333561 56726304 905135967 353646479 811616907 279319682 116529306 731984793 545486612 936509719 121164989 964156480 797660776 647469837 546990115 868444079 209164220 39356570 866548080 709575957 101045376 196703708 330546055 791309936 177429043 867183994 57555002 256836286 772146507 184822133 176869867 188227575 31046192 319073750 749942608 320654222 583551004 981113385 921018352 322506765 342359980 848297889 416282418 328696595 848142939 446950233 771323075 382301277 135950356 288312033 434206223 764844657 70382695 140264921 926588112 7676055 566833649 741975533 584510116 16454720 914758414 974845733 3481598 436020758 230468853 712482878 129431551 205422204 506121335 626995737 840664486 412789208 667983148 557863434 142184899 444063798 177433511 843788614 139291312 41694114 24649757 597668803 14763758 838633977 27702187 651034524 505763103 512121045 723167870 254853304 718635787 188884654 621089221 342674977 439511092 764613457 197663332 177803237 111312364 442871989 439690851 891637127 471934472 21951962 258996638 89151505 38994999 66484524 191853992 261651633 167113653 479852929 202979240 433478514 96312804 121097428 350550204 762275158 709316654 332142325 668090617 114404596 517681074 430651576 918616447 712862793 359905491 469065288 20152221 177927724 735384142 610416399 609255578 689403682 186475146 954721743 984617876 747764923 53906545 746262157 532939997 671975181 776675597 418357280 15041317 807364589 370296786 747632173 446073491 592030295 659439312 392327355 726416216 505316690 538085031 237500008 449038098 455673101 274145859 660497439 42208680 732345135 587719283 105243680 243055492 20424134 733670663 152483986 770821147 796456682 431452342 808135149 984744173 753746490 256066760 942379433 322973472 321532696 37626821 319249445 314494525 778484362 702661749 875258720 541325320 193808532 54423039 76802913 889132857 10352850 26958145 661769639 214551384 307876229 139278902 93520786 467412090 812490030 606702027 224304226 69074712 725449168 209033193 456683979 700037802 873068317 80146564 940440762 770960147 336726306 227030169 206033774 9385116 146672065 141411121 58949501 12637119 856220631 34940092 484314647 844682838 342258776 39633479 586717490 968947873 492331472 574228314 53761185 617985815 643135935 110498737 890614860 852923184 572554093 431425906 245281661 781544305 523409949 167120288 501853803 457468585 709391134 788560577 267638356 225305974 75307948 987898093 776110791 719015784 947279992 924424 66497367 690621175 268892122 813507265 677165978 702542509 228226575 259343499 37926979 922698553 300254076 488583465 419016807 245112845 436983439 784082734 203025856 125400026 655850080 656732527 426610663 926033642 444991678 324504804 682410073 478486670 717491350 428472059 74323938 162697711 755649590 560209445 451392181 641920191 909716083 69827046 434419669 555987316 79585332 228279026 336994498 387553012 525422643 987923133 293347350 839587372 599857845 454417074 73898198 450442619 309784607 106357256 479337229 997921811 870487434 577251186 337285687 53723733 54808637 583712617 859140751 322433350 585320054 303835776 475718581 180980950 99805937 581193115 189671754 439557464 675384284 682429963 709896994 317462713 340330648 105207796 397985114 233890176 791082778 669509118 815605288 805617141 855693822 224183048 469886228 841803635 441880769 976376869 566699845 867001635 824047876 982691547 648989817 4955375 850957272 699617263 727896319 735992628 225529031 447291374 866343054 841689734 972970121 539053823 984069648 975720952 59360412 470193420 33626800 982654702 781504346 54202127 323676642 129718534 725067528 617452067 422408875 70624456 464609340 91043862 763346980 95929253 693878478 758684981 410735934 628509377 817668225 632114752 208703195 187318958 982491335 975295103 180618056 753088917 844555337 512481535 513619099 920263742 626803691 153683681 861320443 774537758 483547554 914645725 369800211 795927121 522708838 159288666 934184379 208881992 196278634 363509391 97002740 384179211 522478884 963527731 374230313 587927127 220016284 969047507 990735766 820550248 277195883 111684757 399439081 845902688 670447877 230823315 771568130 973645449 196267428 456149351 525125241 747298891 563129064 775042716 242297459 144944124 38773217 756153567 808570035 784443336 463608818 827398340 142296920 301280636 919161071 31025336 953810277 835882794 433260721 645839949 416418761 468816534 386462590 185934045 81686064 219171961 537084190 507236050 745363734 363673775 790275983 378013795 495890570 414753073 7244703 27603237 10728188 289758508 646177507 710174033 703344351 909657949 209914246 992540464 163088861 830109271 212319913 346979683 924954426 502917939 931731190 558189049 485768540 648404601 848874266 725482692 534591557 655443261 362092635 643234871 635898082 558758559 766045201 203417881 420134596 631242829 966605607 730869251 194109086 742513222 584542065 300826200 398850239 958913941 337238569 728414664 449802105 24527570 360030421 189362598 543805772 931465520 728834070 707564678 609058678 106636548 982555993 48281698 912917496 361150250 226347338 343347742 33117271 709514546 733529152 471213695 407141204 860966081 704147791 364363108 643005407 938730702 638762871 843819433 12434662 851961125 900745539 720046348 873568419 871777665 836323714 613968565 879942510 211869937 715639596 215940393 807461998 729020780 58626533 868435039 274301594 508196738 15130565 321174937 292501710 912045588 113202234 968964506 843725840 193721462 664140595 574701539 519865334 156103967 701074016 908791845 879867508 57292745 860010357 898448451 515700338 875164293 163968448 375955727 172130175 965718653 17660187 561066713 494812881 138447234 493088106 579613477 471729050 891651317 452172834 883620977 855363282 933513165 267254362 555078469 160716821 155494290 744430214 395388047 658005130 800430235 826194992 439408910 528339849 664104711 482193741 389162039 950421717 49434984 176499544 952310285 525012428 37026320 995554644 387410831 458234443 850298592 559915595 346495521 657036621 222882980 266502902 583200848 370907321 387118686 916684093 401429772 934237350 561338340 781503364 293971888 734129468 866699582 858551855 345680203 337959867 956013230 946939586 605203597 234948735 901319749 830371842 142565588 429917321 76440295 588423054 422155973 350548791 151275835 832665111 770291113 497307716 174546310 125161691 828905301 356172874 91340201 57892523 188977997 455093487 442290141 142140983 163512921 360543905 42494898 551970885 918707553 250433667 217177987 473494480 493920321 190594529 569106228 166789162 979307085 789290569 441666361 738544255 908129565 132719276 396547981 51382960 780571913 432020593 202215045 813308218 484192789 148991757 991331093 815471867 36954698 298621846 964478004 104481120 283182146 847606958 750678903 402699694 302136891 82230222 907908591 451088580 614396949 783516473 58540906 148470284 56438916 254166993 988887711 857586427 358654022 696401938 64939823 806054001 461667341 806309362 94753861 458026092 323485544 376614569 453541597 718340957 850440374 699735999 227767371 963088111 920737384 808308318 109885418 312251011 132626283 909249539 484021071 218804554 736200970 786515635 647486651 780537922 947760070 794897229 681383272 397391972 248476409 640103170 332055865 99738471 973436747 701388377 64517965 240170433 581148828 712006510 589047606 890879882 65957545 445166997 475213770 13127920 646340906 512390323 495215838 957930448 665931447 832927835 624695294 364246055 354418645 314562947 210656577 310733009 991654788 945364099 993574235 382779014 236406022 512580966 834675108 17178265 751922683 327420823 57218699 695445703 571311719 960018240 292668457 228863966 286935077 732442381 473618893 459390298 911534264 682973113 761438730 372136437 196904852 433212138 113739288 516101454 696726976 934867850 252303285 244678483 734534060 322769501 387369948 422207764 591928921 971554005 490705309 832892092 396048875 298062304 185511238 345531941 909902360 975081899 508018528 674192415 235917872 455742935 221378527 746455468 265998089 849624914 645644441 653166755 17015267 99871019 944423637 40458215 795877740 389705458 847552491 243628383 819753426 94352247 272092452 331996003 931777849 937810785 986150992 470959614 390494491 210372619 718266579 801898643 261171332 884658712 376968984 409247385 556002803 165098362 89274235 643066935 89070143 145685459 597489166 918647957 630233481 438656350 175619914 767702138 696387636 988346955 460333184 370819644 795341316 659193297 509636107 742988112 630032948 643530607 726939972 224310513 293267964 199863344 585395190 845300349 494723755 296804477 844667857 293357109 389483458 435277767 543992717 824880295 549100480 237175743 689978677 5508262 601991184 585608530 686439414 971556729 459938051 866636629 194071186 262507737 57295709 68598209 210440443 647146462 287589290 332685071 643383199 872571652 149927573 761209675 786882847 150276858 378261229 292577315 453177444 734525875 411387904 396546684 313624079 275511189 87791087 178447904 577101515 480887029 181316011 756046144 698025117 72072186 748007049 990712491 80864953 404812689 361755590 160069440 869972383 446586327 853614896 947878649 202026021 248820370 636986935 416470159 280485663 313483624 21308155 188407488 394582585 976357057 32145503 683140518 503140920 280843678 66217769 929172395 339464967 724550614 583627548 339897470 362649894 902074025 383446873 738485391 564423123 115012013 764050703 347855206 731457887 486384615 286478172 17008333 182275217 425009321 473529418 972015340 37557886 307300523 788931933 498044080 766248255 103728842 10599544 745070018 944236008 459797646 892105122 746885641 540934715 448731321 249370901 711421572 503505842 33688343 627177832 97421516 729431254 548388447 194911980 300300644 369312955 641155276 262397865 962279977 709562826 217754898 563697611 764673073 124740353 715800821 615387425 170079314 121723186 316586059 189293353 195810462 585061900 273736058 553980119 885607632 571377578 771876999 829509712 757391413 705415568 848976869 835252942 733096592 709146836 386276188 717866966 164084719 346036054 257939492 841037508 145531251 820468725 878298942 504728967 334724938 29911599 186882312 945738252 239926211 4928865 104451247 839502040 810491279 310220070 169334832 489931485 261508543 614176311 791100604 489105289 616487967 7946324 343266664 240718698 833764577 35286205 16556280 517589489 226630984 222635525 504753757 402472609 571669888 863439462 543513166 773217843 256882978 865932318 961327821 294697593 978304152 41859570 47487234 186343741 875189464 896099857 922002005 992527647 927043941 798843480 918479838 129627112 65709919 532746001 71160554 405629640 449333437 67466220 713314706 502050688 518234342 411723488 393079268 389588407 113865152 848843043 18017304 723593185 151298619 921686243 946753194 443227778 37716311 401913769 218594618 322666648 27989652 725722799 603104930 699857879 722437551 204589950 841710910 936963629 821189744 834537984 787228151 898790628 931572071 531541127 538013444 94848180 132159479 220575362 391790675 438384751 588890829 79135726 728274704 620760852 263812377 347285182 69582938 726541725 100957215 417075632 964027482 726597014 547431799 833725340 943168417 731788294 775542070 182294190 954511174 681107020 281082868 20764844 877214926 569911850 970100329 697488365 911261363 281039289 900302160 921118169 207587295 45026117 870146754 742561279 934691784 617474384 37768504 782780395 883452888 416345172 273656618 972558303 885025045 551086065 815286729 808739178 550474633 489434567 11485768 903399005 879747681 150123286 654526097 717874185 819074964 958590073 854054050 519117919 182359307 862852268 86973042 246245018 353676044 467558491 298774190 405999713 722308829 976989741 484572780 114358710 829951329 517223901 602678797 329342011 650815955 986554265 634686953 823067752 890550525 125759687 568991535 157636506 447988093 15450919 273823054 876709345 878700346 5169616 161770395 681419619 110320807 833290915 403319551 850426636 77396692 701720931 773888172 749914417 58301804 731967026 273814459 527467755 587267492 812198403 346859116 265687681 817478024 537275991 210352243 31336013 39845254 975684416 26434282 430723239 14357818 545675223 559240896 624024025 437983372 370435841 141226191 603143863 57027430 242467803 628457936 546382228 926255959 677202681 765344792 116505250 228398853 435339678 672508111 165858433 327532399 11430807 358028317 266843657 511787299 472600232 269274204 57466940 598182746 678084313 469152181 269628837 815317578 684988724 487451246 132016733 54997936 586596247 696001995 654311179 646396118 563019639 672222561 49656186 738419920 76023206 266247441 155167881 737034145 988405936 837146362 36440210 855262142 225822171 371279340 943487955 359030784 581254386 342701662 954683737 900322774 267058667 281768013 417593674 272149207 753203657 2073761 319639311 981565117 462566639 412034907 587296894 952934892 415836438 167555057 181371990 408560901 90477835 94455246 997110577 861545785 298558444 448800395 740567479 23508036 137095742 191981943 899600918 921885407 590796970 454397927 978592554 882119763 673484542 179756122 814235641 333445055 643633174 178560451 993062745 200219610 310027407 669492332 933380778 500339114 864775191 37286545 613911777 767631793 600220360 977498424 295719175 170171657 638130002 557628063 941375897 467978242 198291515 975397551 588730798 714723650 871397330 818039095 881604928 874485972 592006686 49641789 646831110 442376773 965658523 400318691 772697250 73401569 54939801 470363375 267138798 618931680 429311182 411782526 839125565 798137626 117313627 101902819 817141691 642223193 51916241 618575113 279736979 947807423 842174636 957220215 165971452 946574114 80467923 148755731 459027423 834245921 534898005 908779571 310790171 342759293 73560309 890144770 24630905 725858538 716696041 839901376 559674313 355414253 712487921 26838279 268668768 405851302 580352165 941668198 34707875 816911227 627917889 881350888 698718876 35690216 446013681 762501945 806529597 532750450 809093138 856115091 326180926 294498968 707045848 300709748 284835487 26383198 911900183 481051300 2071290 978004349 30860681 791582657 999469173 491039701 474563473 480559203 454358928 886528020 661157010 779581653 926594326 397106843 66320492 380710597 830035708 455988471 175690309 142187096 938566620 647852258 107960655 362688817 662847369 431913547 830090733 71437644 903623143 799132628 847830697 376646703 999959896 430510753 143160822 713898008 455646366 851948089 282944430 634202097 915541820 319951703 997206607 130039323 496285345 189333101 888998022 304201118 110325069 602166779 596605434 173041296 954458143 105872544 152389976 779969125 906383367 484026254 804360876 284349371 654328733 235716517 150204480 76761707 468233572 175369328 813288962 123001549 569986846 293092252 781767124 329313236 58724595 560924285 845359374 625949491 817214142 351585783 896716065 530768115 313504028 838621057 469542142 607447134 345533716 761127471 925398069 4150863 812706816 838574110 673459254 279661749 127393535 600344186 454400403 25687033 391528047 674206943 940961613 867958784 626598127 182138552 248182259 549830644 337232482 514212630 381962038 340143094 380698565 742334 281935657 525445052 285841300 592326877 228044434 653842241 107455082 685772428 235404222 234748035 470089386 971302775 153940898 225059802 894141570 304950063 989718546 361417791 52965649 155313053 447516589 985467667 911708913 644110451 767780463 6089844 519865677 310237708 881076576 469366327 629822121 756621392 663539088 859262332 623767116 35094941 359856740 178755822 105945079 931567788 538931416 751197620 354946062 799679010 145112652 246392163 484476409 249629625 922105451 887155789 249607094 831813040 437696961 930007977 198754506 323755391 495548493 21940326 356985503 836595751 939153224 665047991 631715929 159922447 826535669 649709244 967373681 759456273 567554659 568865139 862583832 424080510 177126342 630870282 466552107 624684956 946423604 125922625 917409630 50527830 302259371 357494670 988748513 158700803 147348491 639290045 186464046 186286330 486877920 555217659 35564469 582660618 214479120 875181827 828239946 31481233 177308177 820375692 30343041 684725078 294975402 968392310 117512512 42109308 162966673 365642270 648792434 963320639 330246766 256845340 262871117 919720755 235164429 789232176 663609610 25753322 619921259 855938384 215432863 908168341 15980667 723099005 812882721 733505252 422576473 721806992 356060577 180499914 156427301 243535754 863680801 562002658 145409823 93901114 600143695 933930509 83905705 917087934 378874355 649940161 895189334 937397794 674761378 157025408 545815992 775295247 129218218 133713315 99303297 463873690 120880108 432750302 765611119 784308257 610970318 393139272 215001332 254277072 829931572 298608405 296697020 226170368 411690151 514331871 73934598 855449406 519279463 854835028 862991442 930998504 955363412 212258304 166461092 593544297 838278789 958242220 650029929 666544968 682285437 829272237 383340692 995425202 514348791 124116086 388875004 201041084 64309652 558896472 508203492 859671633 558508697 378004805 399700343 890876405 748273258 100259418 473227854 555083948 628422379 15137812 37984229 426271013 306127153 481220034 611061808 399611951 853616190 148790912 629330932 407892966 117658252 995525426 159880139 925251226 186039515 984459887 666401861 673269758 848133986 210957175 950505639 826835942 664681422 879713699 654627971 418033649 438639870 231481234 120746551 228345542 214237786 143021270 415753424 540509339 375998031 731628297 500606287 394345657 17113645 729270366 810843790 262867128 201509212 244189733 208761772 454704644 117306628 415619009 51911632 166162296 238047437 529070964 676678835 553996021 885811216 817775191 16322320 651050426 36677835 391927503 268226580 783715837 267432842 640733171 112030641 875868870 892696844 675415625 611674409 479028094 289225026 475687321 628819590 23243470 466756707 432694893 147873859 491266897 504113585 610080632 584280044 401598187 439287370 944283269 281329773 179485455 733931303 650626295 661220633 287381804 944755251 457509326 514773311 398434947 892591013 408025673 922409836 739649273 311417117 183109615 680494020 746331180 206884381 666062646 879359924 964426028 530073007 876886547 603608519 355372938 249176765 676795824 397758692 842037217 724568271 893103660 31468480 742870990 101325571 16652884 816047401 441461932 733329595 840759586 440814982 527584265 467737190 218262335 624708212 537906831 992165890 766927149 767118592 215739063 427582899 251755690 150170377 800037856 437316072 904450697 539740091 320759384 585393974 251317542 907494670 807399099 333124676 581623120 684135716 516521881 265622575 464468110 907679323 453654830 71975539 406457423 649397247 793629412 675802933 493844616 608805290 668484588 669521402 190384837 587649142 215009925 237446155 156270688 994423570 437391271 680499381 952023872 81502857 398626456 914740465 54823734 82633707 580990666 177711759 55195353 469286705 101520445 893715184 716824982 650224394 323665198 249515455 51383830 21085490 426294100 789721096 711332281 242385244 316880988 661743148 458874301 678195396 179049866 741744136 24528382 507346530 485609682 804156732 847315553 773148131 460456466 11569771 276951573 139996584 302833234 60412561 950178667 565133591 444765856 461651425 317407944 19288042 585840600 873663650 854058260 457724571 805555333 807139494 738284871 33469932 679565652 845060153 781638715 765352539 974368535 137491684 254585192 669330328 815072670 141753865 608173606 246030044 702250272 227293337 981127405 514187069 709084900 215327161 53212401 13748320 87223113 567845914 50272374 343582071 480688623 47055618 140582217 566094252 73844256 559126791 213103407 773823465 734978094 466116432 958953806 747460639 726854275 817101346 24503302 143996282 925275008 342639482 25607507 670473833 160519872 68882129 493871221 901650308 451219990 404748173 404251236 104822297 545730176 691795267 771643759 382297228 820482017 983220343 354007063 695854568 138658246 987505240 43545515 970862701 371649869 627699138 802868341 322343412 717959808 764432349 760585514 699882435 179185927 930368715 115659501 469776190 659711787 811267156 617284472 618382606 355458251 469846582 318435479 872314802 954909659 883564376 116102807 469441653 749036581 352704936 839657574 573916059 784434214 297362656 747750869 772019669 582323149 34908098 389669180 806049685 782954798 672662690 107402401 805970510 619673982 811518495 250572844 7281911 583521123 490126792 57688572 919857202 838110562 851933629 222380500 805552138 546412987 448336785 535849653 330617429 583276281 574063589 862887678 412642003 576907936 122218320 421971565 940797006 693508419 424218734 428068844 805768485 807624638 763761466 372270480 294027717 173634765 229151238 300420653 541943823 823037259 151029716 385429995 60574647 863546273 599459586 112664383 48603517 813321996 361401560 407051385 69290670 233716045 480624002 509484683 638730559 269176905 322258181 595373044 110886027 824204083 6247775 965495360 345614259 711276561 159369991 982882187 898500319 975231180 911755600 294513790 848553415 104791990 908806437 633035569 734780114 450166970 42149630 241399347 774745743 192382516 256150206 426252330 622961009 653806246 784373995 289014243 836367899 708616997 350892326 472316574 259692418 654145028 545644758 100507983 66389312 995486428 764981610 20560228 109307846 581936456 138855630 777799837 878712234 639213479 807034232 724327537 451529574 297745480 429429536 571869729 797849811 129324275 459321426 218021369 33252887 704634191 3220897 273954237 727403422 177172750 20225296 553513994 962563959 519821721 481150015 730205869 535709466 957810094 411620591 815255181 578678478 334368040 655978541 516643865 326435352 241160081 314262166 793865197 634302249 405145288 565305341 617233351 525721511 594992354 909207066 285295213 431628507 271227943 781641104 21691954 50540347 688047382 592665884 842573157 101052647 796515372 777977472 216353762 127168330 128942902 894730274 456758303 117385691 393525880 249495928 94778506 163854701 105613215 944223565 158555244 38114778 601211580 720908450 123292101 172988294 663859200 662657903 823741277 232034 473097241 467105587 691416482 277161244 360064772 740482799 661712968 495220132 520947056 421440651 260757987 102513082 204520499 128202663 527281108 441514447 210693732 315945086 800065929 213756934 271477316 93294964 686804499 597697817 439607243 701806597 621670558 728509288 482653521 503214394 176332123 399357021 672314817 408573691 739378434 401612061 736244947 216920293 55134446 128667749 928010674 874830139 781366558 768756648 34189113 92251340 758288274 33060073 262404834 384406515 390564785 599354660 654936539 649363448 79034642 621219599 718901748 217986105 310183501 392903303 279234684 806018098 938665288 766884377 604015538 497013904 734619782 221640553 770938082 655445314 478521716 925997597 401303458 500522804 904824044 321032055 339574351 801173871 89346896 702686120 533835472 78958155 162173467 73790269 431819834 421399169 448973739 10807719 33886455 888650827 472607948 274567718 637419459 45907699 152805645 515826716 619395850 419701504 48766460 492208243 312076492 117454201 232039178 422500677 856015212 845797099 870729060 733905937 562745715 489897137 796131084 628142286 131371051 772506885 976685784 623720232 230242460 109093198 545408239 986844934 974682329 675870636 331295657 830684214 252909865 368977076 289492433 551745663 420900653 942663027 608550091 443399691 22049755 949200833 244477174 892916693 220089994 965866244 513249300 55317923 854323175 121739391 438519202 876815443 127113893 759591182 669344752 573416812 582434520 227478512 741621237 669873805 772855456 229816932 868209821 187785546 682316235 529271933 123864397 471342416 495064444 161036361 40956038 232032381 524704242 771911226 841423957 763526421 395840557 400522719 451428021 55795465 137230215 358093942 97180446 70476209 710158857 462134503 457113636 855491002 117509147 68190979 65205456 474660754 752086488 666525102 944416399 464014764 211755599 233155345 668322815 21214156 278055759 420399836 328599947 957820845 100858843 124500379 185512015 294969707 40829444 787924619 686991240 976810964 442635309 65261740 737317269 101322303 454089253 423479062 147787480 71524189 573652507 875653357 323489364 509882636 35751445 994681754 779327096 58434816 739222780 893527603 535044707 489863123 514482360 496226691 516770686 273153064 277869707 756804268 320002156 916232275 96251765 120089900 283834831 946455750 392055747 805140012 690919886 525968777 268710543 721854941 533320011 426016482 669944793 895867669 803845503 270874504 511546834 398118722 880768317 251418252 640881189 113509402 866404762 362035953 320482849 46323256 452911586 485309429 51518684 808676312 260760699 227380464 888234511 685812216 180621433 617971793 510440232 951740265 993709691 1159081 285723985 289333051 412611064 610199226 119838156 128639084 608522440 42605823 215448803 699290652 267964488 607289199 754287949 295306587 790363709 592852328 307850838 904231786 728626430 493475375 199505277 818087020 936795312 181685656 829992885 256293956 946426228 271396844 699008440 165702924 599732776 198955506 795550174 222724719 155394398 947838560 756732929 373524226 341141289 664651443 609249945 60192966 404664360 33479498 675147753 580310024 395179929 257125463 986837997 614403563 910979554 714247767 546866685 260791664 29955041 566262427 849858501 563570880 963814026 708688646 180930524 670447032 323035608 792529056 746789660 842575254 166656883 242986737 343418467 660023161 710924173 638483036 770939849 351420654 540711137 344576763 405313207 163380399 908816463 454469021 940834540 805142255 2296062 351354407 660478864 324238479 515842083 166614300 943556054 860327509 294922604 229375543 728862776 753431475 506771654 603678549 385161796 585734559 334722992 622858817 246708989 134752803 532023172 375594563 555346440 20854218 543624661 567956583 349432967 169127241 920345254 100353542 693355659 855307471 308966391 315379782 507865953 747721219 656706914 304141521 17654357 741348790 596330539 526635580 267825007 761062019 259304699 372006001 118534251 881129316 110391566 454982967 658353446 764247430 854788813 543447779 607356947 45592073 729079790 979182942 224653485 752943388 982521470 754058729 22792517 624836738 872088157 46074585 56409728 859479174 185139538 877938286 250880984 663953792 212363347 496673077 148239474 10915834 504213283 991952684 144913593 852625800 79776766 158773040 927757698 423619522 318435549 709361377 890281558 110212682 516317445 855202947 111750923 866491246 19570551 890218091 596910235 358351558 385024599 967252916 107327440 665499671 104727119 10787860 40585579 684718075 283396884 824622814 138533626 878400152 475384253 58337022 246012357 278028262 468874096 580090636 334884608 263218467 862119330 316647628 153073009 182025983 317667215 651198757 162012744 610889442 871289397 176233748 471486508 134685975 612006560 557494762 142004718 598484579 143112775 327157456 930263085 951889020 102441421 52052921 197462166 450090390 231743087 775780770 156826471 903098297 49068990 203481673 862192306 511677160 188094683 728086323 211626297 44372437 11556752 378268703 77401063 965033797 390601824 755594739 393894502 696823172 680562588 408361560 148158984 65480272 381149611 248514076 156604922 126788115 954443247 482391232 76624972 868760877 124164835 443578955 677827409 879653476 815498630 182478202 811219512 255195903 775941670 352459528 491128832 338324262 273820385 581440087 733018379 929732585 30288118 187491993 288624188 724579699 705151459 128418545 948068919 524747789 619498067 580173125 914604403 231897790 171937147 405630545 98725949 140842320 689693548 554805092 178841491 521955822 942945650 520242034 139098803 35237308 552794162 920714343 907275066 990665685 812848677 763313763 516954594 513667065 808080553 611162697 274318969 905038633 5238230 995417881 309058687 171398610 137469557 209444817 429454517 44762693 382089001 428155419 630220000 288105896 372631651 579652130 472456471 985910938 217572365 360604320 413661432 348313446 72810257 610449627 121201589 238772982 831422784 169407254 277885073 951822344 313152427 440684789 259403795 688697012 704569726 614484457 967114720 186674917 888979677 295206805 711558034 371351032 548044996 567251246 507423191 764450065 831360029 857729095 642715410 759751496 452267378 399125811 66914905 693869164 682556556 800856577 444773249 459519048 258030367 979029523 192399587 865750368 909178347 855343334 915002304 210875062 716660234 151330246 759781878 221066426 711781778 374718193 335184030 580978610 107480470 512348398 805978346 287585430 545823286 897629371 231662329 869501234 862535345 754564122 588931615 950373127 711989076 195445310 303686501 555613792 677897187 827186744 454605225 477329352 516863893 9434159 957391202 89348844 605272228 433925799 805751652 329083464 361435824 610975005 790203812 766916262 621106742 82945382 327465764 10832599 747636324 154732078 112556312 929389941 649435024 384936086 160713820 734341456 365386156 891253256 339040260 739348821 281562931 717943567 692093950 786839443 802130186 931546456 368698874 314127211 344201800 288578004 585678287 42320114 188988876 490467162 983476745 948501781 206163165 15238823 751614993 885066710 719690680 427574482 177503682 889687689 643169587 822066384 271858896 972463146 315118264 412929109 178946034 854939112 367572064 309817937 763102053 694154221 803130112 271700835 149903106 704697041 983843149 445985658 293835303 623869975 958121399 613837857 345744204 142343698 871488561 437662607 728688329 386177257 185943116 54198796 137236854 96377069 537317880 741338606 795879914 943817955 554916438 818434309 123398481 24909454 961940338 481359773 786193898 824905696 950369576 653941265 26263385 999043553 149016704 384209058 651760578 515524200 505243252 54851039 246970883 292867983 525742766 892787964 209045053 337812885 19681562 74892658 22453630 562359234 290943950 121583002 825450960 44275613 690029616 902014948 967976229 454181105 117498490 582138720 851068439 579848332 554617855 8433922 707163714 359431321 697287215 130642704 313233312 467186269 800040321 809465586 879080276 996033168 394219272 243191467 883174313 516279780 65609198 507643034 519675246 781131119 504653735 511455277 879190856 582222192 215482506 614364244 871112101 170986599 131569152 525421389 252343142 927535744 702391255 738019283 657828218 592765035 613030851 132423073 624214981 620772206 352676855 446212514 59370125 257307137 639838276 766847565 616858471 212832641 91883613 491992986 308958104 846745920 378487797 553595430 988016813 734315287 286724617 618923698 112573092 197463117 158008122 16739825 170252772 286671680 608629098 520557378 918255879 898098449 218959445 466572637 576414640 996119941 91599618 848528584 333352446 750728918 169931425 996144681 206855820 800862869 498866026 669873485 512315826 438880072 362856807 305304556 252568255 314413937 727168178 205038044 182229742 188798172 69898671 39882538 586855561 536893037 335663485 178124615 985242790 554616611 714990822 265412634 632483482 964085645 663562659 478366449 228803686 453530941 491245032 124568654 202621311 139490837 717186698 488987728 498262387 504098207 23632678 893350848 970781678 356990977 757655874 267361786 212970438 392197518 501586414 181224990 998478212 107742319 290225495 319036716 78303044 630811663 143047760 356599352 979931776 791341992 462541467 659617758 699748325 549814789 120209778 10353784 641099797 403644378 672620993 852250996 363914445 96721615 774398830 991593943 596924813 824318081 91299202 513598390 40327706 198581403 658418918 436949776 868699036 334582061 148535370 559327047 858085833 175499169 280176385 688109630 40068086 614267661 939861849 143284858 389662205 332185709 727759490 19188262 192602981 334747214 124732057 570844841 611901530 125655205 297357607 738885757 326135647 904681739 808507353 540129924 930416701 629754043 557739076 353706048 336556326 802586460 522672681 927137802 405922119 634024557 686970411 200877964 96099513 578616504 353975974 51768775 671513807 768466382 446668563 112695938 453568663 863699666 189503032 506316895 424418171 331581728 32045183 816284356 732961904 569158206 641379966 435070646 127212424 383989676 764732510 850953409 881415245 911083076 634363424 995361994 636449708 447489714 824576273 472194117 493225993 106900449 891016907 948140018 865925615 145552196 856087335 955952597 898023750 745732170 897911074 165550033 426625320 637728788 673423912 269053037 946233076 858390418 911321404 347335158 164669542 289188955 248518994 497326768 184593649 408132025 899382486 909929940 257022586 790431863 373370820 826829838 538336821 578597455 941722823 812363266 151727689 373773082 549556101 956298799 436670716 572423468 14712930 645778414 748080519 288608651 937924967 594542136 589459454 652078756 342512823 643491555 494347754 948216736 62296905 442747363 40768184 695078927 817114139 842600060 307761578 236616149 72787419 135296624 119123494 405139932 812879261 233976900 581679506 200456747 930889707 464567330 734226414 438252426 664363016 291802958 318044237 758411495 925636187 464814296 7594424 85959627 164791614 233504707 14200029 744305526 134206381 117507293 233700963 937239201 386753276 685941286 266008783 586178798 954088483 456257028 496024898 641510770 450755213 441750192 877481925 130906219 731484247 636809092 691637124 988163820 824473790 811891251 850945189 620977162 547332323 270087370 431502646 154069180 687286853 401479593 892286694 167477653 687328704 520601357 936969731 599436624 357904112 901291111 436767185 745638358 869323214 763734295 529101561 79961521 689312113 301468738 394208234 605433178 497373123 970862049 232821440 668064236 301358264 210855606 488535288 40099943 412977509 15697570 326092453 600606034 380592040 861392662 854536549 756836621 717341182 407179645 206785267 594166511 467792769 173180191 856352091 44099283 137837110 789485224 34325875 505157168 456389878 106894560 229855025 171512999 654343337 459219071 575337182 33818445 680492146 113632491 605888331 513169311 549454318 556741540 18339082 685208570 243972151 487275091 723646164 477723395 619022940 404444738 14948426 895321386 416124429 975670767 75127118 255808425 150121710 647377078 571860236 336450330 597963285 550618028 550379449 886821936 851913835 377207370 376548300 460868659 656493585 689856400 442368425 824692108 444209033 29374317 19808417 59303459 696223765 174662393 33368085 647412095 379875272 260024803 876986920 419329816 932446167 825158732 338493412 59106849 883172475 875546432 866394226 631530192 717222901 227385012 719847884 411641749 241494765 784657892 829111138 977381557 12462684 64898405 445858567 260947749 405515490 824842685 624120124 587048073 595504260 661784464 750522080 31944708 282385937 163603770 115299417 47712693 717737816 945364606 603021235 605639841 93353853 217398598 413799265 877439997 725698887 401382678 67843089 74256684 212455866 734826451 839496187 277242185 985716582 219520639 281601914 495363734 739022332 80374122 1871944 453936157 941037873 194406277 391626589 875047692 184594963 455324606 504774408 444131964 71293297 977236866 243959147 939329703 55066798 556536362 502749849 80238875 954001136 590352263 799711034 167004890 343310116 372249702 509233393 801305406 79926928 66432272 888924227 410940999 167913330 702322439 792934734 465243433 192532502 304671112 157893325 907110927 544482199 507000453 148468373 400984907 251347224 760540878 853985567 64940088 722991231 536300581 923490224 165213084 617704159 345889076 746696603 900514478 930880278 518605138 293622818 817840027 585119679 852668187 841270533 807875440 402735311 61477901 38003861 794993811 175196316 71293733 406717952 443368741 582920235 469403444 642888362 774347512 193869681 999748568 648504935 485174872 96944965 115788911 213100675 88308023 970981172 484871032 958911854 769640378 944076521 837409360 948324540 756339451 928631891 816593302 370448308 720097771 101883673 273252263 832284487 736586679 424655510 497940502 673082024 211131771 595483240 103385907 832186024 790948539 629475960 196945347 911578167 287983930 908003502 695900580 740747390 213301640 692778881 832075585 609290607 584248976 357420489 924637615 967713088 950272458 554946814 621722098 575181812 627352003 223288099 7017041 575427811 845897907 828926109 878642100 292964615 904777460 182208068 646499098 444743218 795863614 22069517 562913129 829407719 566801767 243852117 67611290 442318840 294552700 412182455 606784386 303740288 418553639 983368652 710877232 39704357 433137551 234315413 365862428 444305351 127856237 376161427 743744795 935679892 251769105 655072671 985862018 370822770 886848045 288508649 118175685 290019566 37741896 619553048 431547528 292811183 600317234 967701141 104597179 450266856 393373058 447362866 805407487 417494569 426027121 257563986 243155413 499612292 215405802 462603187 892552808 399824987 630960260 112685629 798736603 251228447 612258858 287942376 155533690 882921699 605148574 834125412 994859277 141925851 969549842 435387951 382629677 154643328 99274942 528873141 392141484 658754770 654709735 138956596 985163887 228879514 869332321 242137220 531102084 541347325 346936408 666713419 1323456 597354792 945728461 169857475 6752580 410190296 288736838 152419059 33093420 850474286 977062880 422263157 878218341 771298813 388723936 336440575 417843248 976575888 281668540 209140643 36686639 994804746 562688774 166358804 708155628 432857861 45531648 78495080 684197365 841666235 885892426 116848012 946177192 991155898 618993620 724922746 443971493 490228914 975675977 682245022 924028780 722736083 850990257 112077275 457042480 582827127 896130599 314600080 58387914 865538190 960353843 583089729 709629798 25784769 434991565 517348334 810682746 102870177 248506580 973476235 912639753 956677991 400445181 915284229 227197825 411551273 114601126 352489020 175319951 82271337 87003590 90154113 735592725 630195245 489490469 287463001 192308831 179617327 226729172 541046846 696608023 304011419 700762432 465013284 357344538 136602862 675233243 958424348 390590222 55009869 386721624 125778361 321710895 712550229 797608876 197694855 817209216 503077356 48429973 998129958 605387012 89045654 739539955 301860669 557976375 569472261 67781059 25527052 342811582 563492444 917073099 2473309 56856546 486301805 286524914 458694763 994661528 499017446 573137498 906454784 301549188 52686785 395983474 822782537 419018366 980392161 475758987 981461550 671154068 141902930 558927949 119597019 575882799 73153581 591430510 354039667 191452537 437515942 993814757 668016845 184216747 64579209 951799666 116448034 211473886 768489652 510621224 209736635 443976202 446625591 658618168 111656934 11325420 660207821 330310566 454520918 381863295 934905965 298550870 373905160 321534487 312105873 308933979 736385393 988343348 13512336 998230009 73217907 433104587 928317046 375770735 498889033 609701174 4918224 9985045 977356501 38599905 619290894 962744278 388284009 799281959 644188845 262692111 677210392 397748279 666857348 937656727 449942680 420918051 146417966 189615554 609354949 554438140 679711454 289473180 162007322 694693550 36689194 338516701 456020554 171069843 913242255 331031434 917302735 210873198 134818261 384191717 821696355 828402904 41925414 121311371 991972816 599303683 920015475 473731337 151699840 157461173 780855203 649975913 147469 208957429 279007855 262198060 740057594 851874494 83221270 33177786 890155884 535022282 21056544 882229460 706162349 804484198 196853535 411801640 625405158 895965239 412860762 681464729 899313846 338811157 357805409 896719851 706066098 841931373 309321143 248632636 925710913 904902361 583857657 322021678 846068723 568503285 306873784 647321013 625728758 451365366 460325694 762680406 314873214 623412830 989521691 941206885 784621777 289163081 697254268 47726816 758521669 40474449 265464911 132900063 401803158 37489109 742178749 642921097 532020829 96557200 271743997 452475194 581177401 328933213 202840470 452678235 433096902 623053094 724492480 269296524 29866630 507407330 833556703 956818725 571238622 934416857 667373561 357437976 523841762 447060059 501787756 763777295 763826105 732660804 731584226 289075638 572647242 58001907 218848716 416197730 890472939 966002622 906098729 805207508 947727265 587148890 499591433 28219568 442607884 244416360 885211545 178615612 812469090 817871752 961043876 540417610 477314397 197822939 908850274 789289964 562529744 726847999 324133802 566307357 929411256 878870575 214531929 829580996 817673631 597402193 699144110 837159562 93141873 692950386 544303434 510521305 63997656 894769097 896984523 342422061 449710831 662109974 335005983 367380435 230085381 778927892 672994539 945319088 232518739 315262274 135123804 416577047 341218809 67959181 49450963 660015185 414319111 147964146 444567470 626439015 806166680 772758501 271980661 15345122 846000505 148899303 135686581 932365534 581420779 196271886 666264688 352876541 235063018 751720323 180443467 652514838 835704053 990205323 275242463 96635931 524019410 728338773 936200900 860597591 615090700 288086576 213358824 110317680 350309317 960768703 800532591 835761621 187960712 305993010 148398017 10629393 839805676 730639257 80269312 687802304 427767380 663802827 501536559 632259374 44807603 468408601 465752604 899114543 878932090 534436362 594767512 454795247 307370166 414767333 576244237 37174533 24796627 745680572 35742159 364845678 623545907 366326367 39137723 640816576 426886685 48386404 634995438 45242886 865630927 293867706 765823364 989475620 893800182 719514588 902496974 544112359 877733779 80537499 889104846 452842399 100797370 641209121 94907703 257196579 199389057 195251640 753417144 37565182 202228733 24366173 159464462 792710267 625525791 787085161 66805835 112486373 922525808 307061901 851345457 504041342 772867422 912044310 534604692 117796593 408998706 55524229 967958983 288410613 481036127 286034355 594388002 345391031 523830716 439183682 432978997 686902455 283587291 878459075 502201254 710192024 496722441 194617637 758673729 784840585 89329868 223518097 828744935 161158440 859321341 409869463 732963993 921595618 885271747 226534417 2037017 767049659 982056354 298112452 153473896 998968749 550477980 3560979 410606410 721879480 108277071 792481904 574664479 70300283 207835610 365787042 607306051 534032451 845173220 870398292 212684958 710334930 226048306 277425101 629881442 598899236 398816159 231090094 943464961 188482971 154514867 436225746 266953991 959804289 511605190 753721393 440184706 436002978 366320845 389680425 599643199 493421106 925120076 711913248 524034187 950582867 401478702 83296729 160977496 517033410 355432191 525872175 808958860 289579175 56801309 561642860 667767121 941940197 248730213 130267613 297654154 385950807 213592125 50652376 56286618 738204075 577025126 872511468 276560216 171220283 169835543 647002974 758931553 82056085 932898628 994596580 443201406 986676500 703631836 374349537 750417727 185826169 305782666 40910421 799571356 758076866 163246658 715484878 563726580 879736636 703014760 807745372 522158257 975212918 641949417 825336848 526424350 472079540 786948737 216396434 486430468 882570402 156533452 708431610 964723742 761345189 194943180 84856665 489705920 922495008 139593525 908477440 842693519 412703210 91754517 628031606 553698515 586188562 294049488 406953010 292800310 67577197 825467497 199498107 807863436 82741839 242148076 66904095 24786085 485818718 677246943 324447559 881957112 392313595 787850992 908651256 546304363 304491495 165672432 399622763 667950818 204552718 749333745 4915936 479467856 260002713 782203118 869710342 888444621 345864203 706060238 308761588 782987165 394361657 683361681 103843676 75804822 708159314 476483527 49393018 419047524 185790452 584804768 770014569 892357469 701981593 128773632 740175088 586022755 117197904 575505188 320602105 537649545 631800664 37627566 184118661 198860839 459172625 531089827 367812481 772749238 55407907 636444516 525801932 730848812 536845150 411270131 537411492 13595424 272230472 686719762 872356403 499856743 584845408 208438671 911248737 922212381 871072162 947192063 744376674 857040571 761017119 890461777 17026638 762782801 383490003 709642054 947117286 698681343 558217706 160816058 530224292 477539744 221637377 649336128 516785667 804203181 315479850 762278961 658973962 29232471 307244781 621326421 79918667 349041351 132494928 461492358 100018137 395912012 329430612 855288598 432598730 7240835 327432775 890154826 214241822 460355240 432140906 591893983 594503007 949162533 553104402 351732572 671766242 807213255 619616823 923924243 875516222 530782477 405095118 900827283 345473329 887924990 555833009 515923167 397607230 753985944 453740492 665036628 411454457 650967664 173694585 362696002 579808717 884534518 750375884 139051009 218597270 32215621 916640791 448952181 900673612 873896263 89068167 956308071 412320880 74649276 629858326 629592709 515511367 807823307 329064197 750264871 983385086 650015864 965920812 160486708 814595727 312987168 480764818 307623468 200802531 996612815 445510939 210575863 792332761 360261776 61180751 360796408 537578336 33241223 919049368 266181658 441483960 843470314 367834268 444715844 410511977 238443109 242028110 560186493 842575154 252679172 684269316 52521934 931973002 838372698 953663927 630598939 382821546 594323226 356328826 694111960 324983359 218421732 647260794 687175869 278929911 960582084 621915588 949635307 97270187 195318584 958409167 147262973 367829329 174099215 941051233 564776612 636120011 871344557 236557860 441190472 735704690 473171918 119065757 454071378 573249584 689019892 349544521 585376064 734826401 344339853 633225489 172230283 618503261 539696338 154996695 641936539 827600549 190825116 487456220 940965573 915898619 859487007 710023178 334065231 36500332 100945283 660283261 392929960 64119074 980239335 873818224 566880797 894921607 987671749 503817239 978838319 163735119 722241261 271237279 120911791 10542886 573982842 815564174 172008066 565125271 874059994 314768065 639145125 340299326 802187898 44242793 583022079 846307509 44245441 10617846 246133576 113281831 293828436 461722655 734041959 940192900 875434985 354316110 68835063 717864157 26300063 889660096 726717835 83640998 243092127 181721728 573523776 954332525 581790941 664762443 21342190 32985702 642460596 108027476 404884524 831978503 936834615 552279981 37209755 317419296 358200597 608330914 415893397 346791682 963022006 401838987 126265832 265300672 961877093 424205843 760864829 340337225 672087608 548477843 925153611 959604736 423677712 353124404 446172589 849086642 620282543 376299129 13353412 799589849 97648633 379226172 145827185 7935481 513922349 816408600 570365903 654532772 970256835 569442301 162506258 457939263 246284195 381084220 271798912 436360472 92934290 554044242 436537868 505647773 912861184 721159848 394235020 902127099 603347406 492610593 191137484 270956059 428474730 872251493 246940387 888826370 518483274 730707322 137202051 611069133 14975972 613764297 395153385 343812850 121760430 217736196 845639513 334791039 942566455 55507292 908613453 968909015 242549594 749276532 611908744 98050777 171689406 4470524 828676049 452006268 263040023 682321009 228685667 827930477 523942565 720132874 50731489 802210694 241535665 908877535 315199006 43175628 777052424 942778089 803026324 655733320 222368394 171814822 280258763 142842259 946509921 114268639 10249872 256449183 900577206 303940534 500942471 291766933 819327704 630115849 897783620 69067752 441936317 629563848 447577069 882662528 951870122 906520173 384684187 778259575 298666344 710767798 170909200 586092016 303709637 924099653 659940002 976206246 233298197 473298258 88170695 226838452 675160005 998969673 581260364 853679413 84612009 915998985 69124803 640452539 851000651 834854741 740793675 550443118 342525386 117543866 843053893 171258392 571833957 265167693 978941461 102298988 561245123 693221725 618044622 60756136 614163557 673618363 612476680 373067595 462797093 488088044 930861731 684127478 286602390 879794543 989656352 410778901 314890100 27996166 166426171 164412847 91966026 667083245 503515107 933813834 65531448 415490568 248809392 850652411 949542521 272835721 441500737 99256722 619873211 421043188 910668694 30581343 392288900 2261109 475349649 395431197 224812555 502718740 642209386 689949815 293003430 528338658 849734861 107632121 275889384 576511336 115254746 162984255 430711973 168524562 68093369 547457110 282114482 14860278 740670225 298642359 725126507 717279670 4116562 567469522 289865171 981838970 288392593 592318179 921108329 652264456 28324709 971372317 942542938 850344838 978070638 29351356 218202007 606864800 459890761 679361809 650417224 388541523 515061354 43085527 417972358 196210061 456800947 850608673 32099737 23895096 667355745 580062247 831869592 206973737 538468609 748259606 292118252 1133075 525127834 603589348 87948639 120865393 862010001 970328840 799333029 842133738 116176082 33748632 417681062 699868670 459311341 257158229 624680630 667427010 119323312 544325705 392183071 565979605 133379685 448659304 224791773 656255756 760021979 676241068 758640755 754016834 197081380 241641195 706327415 404760359 907890513 514541844 969579968 659525858 600326931 23336582 994707049 651135739 977777888 881262223 176045797 159488405 871560723 935573505 48049912 174342351 767792309 575063406 363190495 748495238 287991733 532256790 369152691 945171378 167302329 866212287 27448166 403655124 307016229 22563387 760848160 322339761 731688602 663991285 395288781 198049138 5880173 601493312 461855827 748140841 661180284 747211609 865768739 540016137 502359261 667169353 443974997 675512893 162319035 153890977 787620307 980287636 95757615 446826288 342232097 466930874 620937950 697048479 751112313 64245944 477681478 734971735 727489831 673798180 371739301 576194763 244478526 683522 447297982 107209607 328553178 908701935 81315059 610526444 239035844 988994684 868421411 277116630 894335926 842050570 477857376 115620967 409574513 499746901 895900809 844130249 142717345 468776497 675072862 816886165 399796739 781423039 104739584 796334879 487676494 31326975 37390489 391830819 982056771 379347369 97172212 121479779 605841639 627040487 158926537 407153063 990221519 685363542 766777636 995123776 387190371 620239316 939131816 438860634 716459995 614770252 366128906 809017255 576269464 718724260 481797888 366319056 389278836 787339296 573092546 737605730 110142619 337201318 173063416 246965645 770870929 660300973 931430765 321452419 444597075 378976226 762068424 434150567 58408095 412726369 532141795 510802975 439478772 730986447 103816169 900118887 619705588 87486541 528305434 363182500 349603548 788547227 862437561 920022397 651089327 198843336 681813898 9619230 796560446 823085405 459372786 557116920 468138427 532250180 657609158 277965481 84311836 877479702 885805619 667776372 57727844 604746390 658808477 677999128 446656430 340676653 687232466 855050408 20924673 679457730 927030660 335375608 783066050 315576505 735311321 381951165 398248904 780565978 938217722 433685773 289512086 508208550 119230585 304415687 488654448 174170471 488223092 649409110 134761269 878598312 149758914 853224529 49720149 245378523 477937746 836976227 161372825 511815492 109871591 275285961 902860303 115728395 218311096 512263816 864413612 657701284 465032015 496758315 796552968 303608582 187756321 819090318 72184009 116782642 589875648 934112517 187278854 38577937 264211042 414797519 94890714 231927098 510397809 973688716 762619297 393728248 394025000 786196719 576555686 348737460 583379230 528376734 869155866 756307289 41103778 134182322 996587800 807314419 12544226 600450279 846441861 821788662 770072840 77691976 662948715 372129831 435079588 765606611 481785554 911584914 400442580 288366036 26164919 885943980 391882415 561698060 431985652 23958860 29566778 654624018 833843759 371942382 534231752 211692049 453696101 891275204 586235715 872217343 993312173 871226857 280928102 574693169 545013265 784832091 723336128 801831700 35798800 252324434 802043481 692201434 243426299 598929205 641426604 493713456 990211673 723632655 311282284 48529111 437830849 3112200 107914602 130507399 913707542 444194708 711786127 708262964 232423579 486762525 160024978 658960496 196618736 758436999 661581049 914035719 837480047 321704267 940494381 330581186 613910693 996941288 288720748 643280225 197302775 817178245 907663349 368521414 932956963 687124491 214639253 61818785 639999822 69107105 582262223 666120878 875511254 811240795 872648014 199877822 466677249 410509397 781906146 589574921 748584577 879204795 674099619 836370254 53047240 24329035 357478349 573983934 791850285 706037755 977812634 19923503 472298741 557523968 307820809 981739275 117252370 251943353 615034709 899381483 815729142 841701463 53777568 652944442 837115795 940868454 493604592 584980677 856593211 437502526 608005090 9506904 230804132 89557338 630333552 19914310 919560421 190345486 151484882 852420129 172817728 754039447 668042870 967318274 965450522 330585850 57624612 871203379 110292117 819134965 325762856 286911389 430618289 452026871 462185100 942336759 482961950 771721431 256023227 931696186 446634690 682453209 337298923 518029314 558198469 324915111 454381695 76087025 501127148 641482634 613906032 784170441 747419265 509361543 187979763 93891150 998082539 69823799 696005290 835505167 718134356 238792233 6826056 237982807 652674519 956532245 774690131 172408506 261134197 415478580 390732144 161725415 25357194 782451166 421804454 398700630 747369618 914975732 263665165 444996817 603950468 150615431 730992395 494477299 789805195 113329980 921259796 962304810 481906534 93943834 912764101 927346569 214872874 169651420 83334650 494970894 872627839 179900964 743857649 662198361 1895622 148981911 329453403 913170348 352339441 75895119 859005894 192539815 311865068 163776461 127667891 817106584 865969759 726187639 979421898 101858066 413103593 69974265 170478525 721631559 828092400 769118321 341203568 659942992 758437167 727524990 167716238 81479194 391678426 834696161 511512319 487093172 526278153 357058047 671074889 386711908 150689608 394401869 540275667 653112909 648762228 326768746 362090475 162279325 67563090 527252586 349896542 797111655 258762680 117920615 352955059 633715133 964413545 323319869 322325818 888357690 594731643 613233601 355087662 298002433 335166374 222273542 489930024 418006206 578907437 130889312 497454724 442913331 965604175 172829166 490649990 448769981 973882010 83924128 183315219 830989272 62557831 645060378 679020569 155277515 280055638 183449124 800529884 79729111 83830435 625393293 710972168 61467128 806373585 667049887 672167327 891856520 20686555 612004052 992586085 98722452 259983061 814017461 152322765 433193557 676164245 447191501 99609590 138319772 595018135 486103180 165843124 540496531 223815049 893410698 348106712 362876035 285913880 454416783 96833196 181786495 957627441 902736881 619678725 673843886 819554206 48309046 532996353 741773891 531619425 127038134 18639192 273884882 529758126 280679804 505610480 481859208 734455732 858877006 314703244 752811431 31714638 734090729 255965340 121192009 632098120 139399308 378858050 193206308 111109085 61909661 336440842 713762347 240655353 198291254 989986160 634066081 158735266 900172104 136449059 143571677 57711573 393426886 381200426 755150720 611137139 2676515 73620407 189665742 595809768 608262761 300782020 687428729 315885237 56562288 273638635 33027279 803304457 174815975 225498219 448769041 807590677 472307063 820048550 676663050 95287315 597262050 177436144 69680790 600054292 144519848 151413433 9162889 842975525 417010666 93186994 335372315 296457211 1000457 674168128 536131623 549348901 388691188 507620850 718446862 796195568 33221669 935513203 778892553 287528076 900209369 607011361 716144548 403792847 448312387 275753419 967447750 755012528 586621909 981400036 576872918 364151905 364961973 997511521 485801741 141014373 266719500 612542990 293259520 221671987 653674193 407419779 441588214 193017312 975883413 229194062 605744458 729694568 829445418 583108977 706803694 149580336 926083086 507064644 518816527 72198956 284415490 984854079 615523078 411267835 679557757 253949320 404349228 722263945 838497840 527344166 202510986 529366216 410692264 765984889 537215861 900614781 203061374 347300507 830149499 900984036 873745962 494289522 791049458 80142800 600483366 31564281 150996633 642056961 609355768 147014301 657864353 591592749 200171317 111144425 680477923 122389987 720971534 935692332 501687525 529703621 628772775 6425129 155399481 332249491 584410320 204618118 257326356 382160207 23189483 97998456 431324289 191302397 640611447 864185731 381846489 721269053 772566864 74666652 8382031 670673296 342638873 33324616 51897281 791691093 373948556 761007771 253283588 764314636 466254720 339424329 984435266 724271393 922338985 844460150 756981894 914993434 478067109 4255017 42440596 393396251 997189082 97181009 984431267 418867849 69936016 856153166 289031162 69362969 706187617 357440518 745002778 168937376 141404388 5791237 448257186 279636405 581381593 750948555 687676955 957733055 440608516 743761775 447352019 705497448 329703984 838564385 459470522 246546272 858009105 523997131 274906764 553962883 182887592 298770 120594414 74378447 937858486 41199295 693968821 945800302 884798998 974217491 540807251 157572137 441771650 325106228 730358501 648057737 178374494 91715818 282932986 537058653 617385974 637612916 203254781 660725306 65629133 429121564 184145556 869868241 265604814 624882780 185096793 657401940 695685732 525508379 866890505 243914607 850733070 101198799 260633667 326096461 708448429 558337195 723193882 773805965 788101099 450282839 405165612 253795699 89928479 477400055 344620674 922378020 658978205 813407033 339068986 720317062 211783344 101669472 770624741 260184179 866462627 88701023 964262427 59106744 763404736 425347078 592806211 957943958 642571336 943990796 33273774 322621524 996428151 663874752 765004746 110049894 960467944 446577963 753661750 900236575 167140082 691463181 605386122 11549890 986447891 950745927 47437511 735205666 314560619 841005442 360671035 378810946 255267006 477461091 350636190 254515006 86197909 696082326 152320858 527338563 437355102 666162351 706971790 319684990 137189969 311800645 115583292 28565875 860297621 950228746 777247031 233482482 121329158 432120133 463957345 64590082 816702771 778664259 982685182 166435161 369194592 954862405 227565079 632832743 926354502 667657632 191489944 717970625 891848309 55496491 259583984 199617932 596561015 506042475 894377460 317096417 440042958 869276496 505262152 30387428 53993282 258656116 720472872 605868893 338582858 390303111 53660801 132917679 812329570 74888927 463808078 354718946 617442411 203795319 898808014 683305445 435014799 378115161 898572370 715977430 857659982 579733773 312671227 773585057 208026536 693556068 308788276 383242173 790510439 974741013 149232222 867168605 351674247 62135016 707183224 85046309 97580028 554791269 740871151 741752087 459351963 918999614 124089520 605137622 995724467 366379313 605397687 8668415 675726142 568078862 611444566 211421214 444933858 277202041 466360755 315711690 786672905 774328490 786450740 112720411 548405733 207743700 690809893 801337904 585540764 756614046 503754414 312056691 887116382 706919606 355333753 778987338 540659952 617568811 577685072 690509643 752455174 64669477 76915450 515397110 440463606 490303739 37240404 237369283 138497201 751497501 142946692 200204346 555029912 257478886 763121997 650011835 975204038 753265307 230741986 665713726 736974585 336782455 907488386 769232333 598938618 591094296 554514617 485913443 625218261 348099402 780187460 328655661 333459563 32295436 17870777 350638641 520988551 253572793 300970288 464822775 812204445 87119247 926596042 151736334 886677642 923185489 549040460 496036797 74603090 811891351 762127630 98945163 454758037 228984744 524241405 930913161 454614797 957613463 878247183 207256291 404977166 155122191 859057132 171518473 17702782 918295006 78565265 196879121 949786459 871943254 608787693 377626871 295669582 172269865 177378929 435989360 550783510 222192011 25372216 510370049 826109786 74097646 207084877 489238298 462018129 330751860 590608354 380081607 383889268 955835169 806093121 280807532 250018647 577046107 683537181 323585283 54191910 510817857 836922388 22461094 893723225 315644736 562163668 250941639 255522681 779841880 827014141 970355917 284338012 663864526 890615631 868013236 906964356 121147973 623127280 193460313 683754031 689352186 867221148 208762226 58751984 42757772 183100816 573424702 772789199 94341634 824964359 891871798 695357283 817976529 140678534 511314670 595552304 576180299 45319058 786445145 179211210 854798971 406646254 371978568 385133641 851733131 450584257 659871631 484443743 138366232 692492792 951362869 314159611 654749085 341510680 240574156 393564676 333426037 4791564 409847553 157042929 889159738 950794476 419626825 588714593 413286166 99097277 561734193 267102651 506321513 474304998 812785767 557613831 127790318 392061264 707247024 364140552 996326594 411095709 783521869 188107339 459182793 244188464 614440997 278777745 434696327 786599078 646783398 926942665 407769112 710913100 338022064 339751456 609611408 322662780 140320211 988929709 661829399 630982891 141296836 609299856 566653326 483974085 167938630 755927181 433942698 134499680 471792279 300130322 18324851 221501943 317397193 562296088 359504081 972946249 994578755 156172102 75477090 841239737 982692002 714623977 405332315 241401780 886566295 868380591 842244782 305598340 702934813 801165771 132913265 510859601 261145222 712780153 254567936 953464814 918053018 490286491 522564836 867427202 112970072 982039169 326547564 490185389 881120793 204424255 780519838 950754387 461056465 14157363 429182022 832997378 298517055 108670029 861199741 824920018 149664234 877273463 869345668 422406957 848061639 816891560 118368047 636916029 562682550 635630030 757911876 602434547 479290987 139355682 193871982 892482628 906090635 613461716 885784455 89262059 169607506 669644579 790871775 904065384 345895609 42859541 369254133 717168494 125863569 728254795 849365893 692706403 385687018 398912312 546627933 521793688 440924059 898278327 262906357 244077452 518371003 548154443 283879777 707110997 470620035 460794378 77668290 799017442 618247566 994913581 94692042 133060186 542149543 592226270 397012849 568464740 878104158 154063751 126994996 317677215 289587285 450817337 986872415 237449596 254587245 174179747 508935541 49702763 378637893 710833570 331875597 311917503 258936292 538220396 4274133 674568823 824151954 346956944 772465294 668029636 365345442 755672519 952405395 346201115 214929989 769639519 475368606 683091003 852099674 523083713 305698364 588319823 626895506 757797168 475884118 878563184 720552717 242159462 164209099 628752558 277730783 106159705 456446624 219005994 36557654 787853630 985709403 173716267 975403179 196020515 188485854 385914763 888837862 914427323 773906440 939856531 42412481 740361896 261482478 649623940 740697848 624918786 684965510 977240303 776687633 356687931 828882422 885121919 272543066 37716464 612889844 210895067 388993237 882231883 687827343 345473739 433422618 497741342 387008806 684083707 883799495 428298553 301100575 86455621 128842432 595182693 256462497 455560010 970134490 892442076 523900630 450640728 22476488 717895752 851563855 176800203 712446920 291740007 396190094 10539687 590866722 774355299 435866041 824955060 460059171 756942534 37122258 585309297 824231115 777831265 797595696 157273053 433292657 906850298 737363598 224986552 776594226 131259466 227164570 486678000 56024040 709661893 216752204 329178058 782688595 464766792 629686526 93776869 224543394 77961510 926286684 225641008 336766305 224954522 949986902 984546841 846120391 549904727 133754454 619213817 162001458 318811529 410277781 593519654 222768200 475119933 317313311 730284575 966438070 110347194 75051614 759877331 744117258 55721698 110720899 444691607 982090588 336858015 827019409 914453320 966247537 952091642 701923784 996925993 761598511 377379374 272212578 628681946 67622622 351954829 656917279 154932179 624005030 100463440 347102162 768417500 525940722 456437948 345614418 68938013 273807297 294961550 663091040 355467749 535851558 18046 74495238 676161887 76059737 450634043 843808096 783405545 863651200 248503773 880001628 994332296 470699279 636203420 575899736 905173392 827267086 908894369 827094082 772541181 814385289 411770924 673214216 443556223 529355582 334198227 960793897 397010264 414651232 477366002 186345598 274541075 750055068 31128070 970472482 952244538 435392846 84946074 25693056 469768247 9822464 545655841 208875456 279391773 38331391 870239293 650012492 125494988 425501591 204780815 702272115 879891846 520418145 717170292 407386558 602319179 71059619 493140376 190580090 542769640 457265442 605895107 96097881 680317587 993776713 102524603 604398063 87371349 637088889 757711415 843127264 868117332 445843025 131660156 306287571 754345336 682529255 961797014 236138226 114449459 239704478 970070926 758471543 780624573 948195264 644448337 71100960 671369003 867482530 629121048 28722603 588860607 490401674 671025415 835950899 990161774 105052844 805326996 235052068 133930757 949761243 640049828 324780493 437160962 795134816 852016910 639201741 862306445 305780448 629797457 462179039 604779594 887537726 887384732 606878461 41554118 227149855 473251742 310499346 575298453 866533075 775491629 644817814 854379360 177285765 795855873 429084772 978019166 243006513 804129966 682240787 848967127 831116259 566077814 703453050 757674131 405706286 397849276 981284800 782387243 1318529 482870614 571689329 401255507 933884357 113103756 887809140 175879805 827617629 132745254 422686437 969518569 13058255 139582924 911277800 539932285 898603072 521428471 978421936 363584890 55866770 557730499 780995480 503084983 814988746 778796804 44747435 903224695 873236626 938746675 161583001 8169935 273529907 901012310 691392874 209176221 571822847 833904412 940749364 305640109 420257333 8024113 377251909 580060553 951300673 134482327 281561746 161867466 926112273 87100930 534502315 349723670 589016557 897955544 618598720 996655739 297733371 141809436 987438579 291990845 16068409 54604559 1443046 460154153 28804138 121397009 160428493 737048822 905546358 538461348 795665274 856641984 17373814 413193161 606271048 122279406 105702311 597822354 993210910 858659696 907920006 783626803 171138021 492246909 218916986 312860286 950907398 781967280 548832079 387593957 819367339 683321884 687791465 162766131 79078625 596910564 58501712 274175896 388731549 54621264 992630182 877034430 731638440 690188743 727846679 610667435 278070459 184062287 516497672 150613841 569212608 737559663 455279553 869677989 358167401 132423187 2716748 55479298 67778680 323375829 70797621 380885466 786019218 89453229 282973169 544149534 931063407 337506150 656346477 109539484 826497091 52284658 330086217 355128120 440814630 850836546 880859405 324082680 646584421 982747811 81290374 79009266 410540189 212579508 75951854 56251359 424550562 98285419 361182136 180257035 863805546 568291145 668747489 724870541 328836657 641589660 734002163 644769239 295456427 420124151 407245188 662393808 540019578 28047657 750211979 572665550 570346786 907115262 931956059 784828176 28259574 771142352 570966242 706152065 748200852 736646700 770137646 542018719 673391099 270521325 682564653 283743231 22252506 894196764 56687692 63759165 857105837 849717165 749108875 135576524 800752580 979296258 923287235 910413010 345675547 576613686 389075797 36792941 571117456 308944676 697101988 195884880 869280083 950812685 580223378 602106479 15496409 342142604 287883624 658764568 825903424 451273399 373406585 58614228 845543827 482421191 665165780 811227569 274399337 80835078 829040252 13151412 109614202 303374036 997447561 44798890 851508604 842469795 179820740 150284060 467026639 889411880 654786973 211794962 97831216 990952828 53370438 79261786 881407399 699308958 398605550 449511405 278191542 466042491 649299367 302200285 291515636 536679019 548253526 994410534 873431454 369652184 274020156 862882069 716001074 579239473 440406431 618673144 987017162 62873907 755688400 904772578 442316923 796742961 675864331 290611634 396411429 456836942 372207031 589327545 356879172 686698317 130846921 903948080 144682478 838248210 327534749 896653442 57922957 981783620 221522931 514179156 358745319 312121126 804817671 430674781 29436194 500319403 949688289 844334303 149698881 450069423 65473344 22948364 377853188 711001970 810125686 238020414 930194296 875273958 847012026 798559464 695554211 59574063 872001457 871272380 740121637 819029039 808143675 950538481 706053360 362945862 726121138 684039562 763294172 307807972 200570650 654023777 198443447 451055824 91070272 368054777 387465572 360868444 649781081 594901006 811757990 356334473 475369924 422520529 302446363 298356118 580124755 397439534 867430091 554178905 601747316 257033713 583802797 566094281 918975829 132570982 814398835 254698602 215351859 336546367 281047269 595114875 783887834 624052714 296622293 442212061 527428452 609323122 652102354 890063151 902986787 404256131 544911511 874167740 502249624 344120104 676352522 215910103 685573653 362247586 755837128 932504600 884733513 909099810 335281901 450863237 812475718 995421581 282768985 360507997 717893166 833718543 736741403 413804166 653766171 558582175 140903404 412964573 790781378 591573472 537368808 686408979 357464769 207699830 444648217 643660008 107349659 743948979 483623241 503197755 703023978 754124224 258844000 456286075 730831043 176225299 531719039 430835817 175353282 329498714 646177851 695883669 94456569 534338129 980522694 933444316 6096662 325738474 967353349 453499924 491087232 143485027 688920121 988215347 551422329 417617333 814871590 900777776 542270686 938125790 418335558 589399714 805490627 448876854 553948288 432612521 266246347 480252783 928552389 505463909 923095680 578927410 694907182 494646154 506772546 521483216 737601627 231875420 110201417 823000065 241519641 719488799 540144567 672484407 897812009 895319411 357873583 896560083 367347270 785074186 194580649 237132127 810842315 521906217 755513305 757836820 896059336 386495938 501740254 308399195 783705977 829602154 895815671 283041601 310247924 417178255 625715277 319296113 103628333 930935558 551462970 867448853 970939680 196998105 243260704 508636818 58590238 281803989 576020226 755137341 15234399 227707337 504602165 897851993 674175691 769430684 555580825 789840328 791466033 578277181 86937101 867936547 628111186 136991484 986994134 580639012 290116208 247096129 103229732 942306596 437159615 589042227 436288570 433301071 999830153 241979297 487564962 780149418 961753167 555869236 856618049 776901103 380514848 332022752 430384310 258770122 505777308 231032262 112920767 500633401 900302013 243014239 804244833 407878012 692411127 138612846 475008579 211260119 450102622 374235544 476452905 112725710 341718936 63809056 527652552 823159484 516487814 938132084 290432837 890676875 833577140 960500568 612158802 760694948 258257385 240096224 340748943 720375271 106408672 188273531 605803337 947700726 514980656 149225754 385959763 369102377 337902065 572842539 668547763 142077853 342947703 954278405 266209218 555882307 381546235 650408765 259547541 378333130 371035916 186794639 481880285 982523563 820536816 102947881 159467427 281717027 625114169 895927675 23658922 469021877 48171463 324534005 178056859 808902742 650121270 438756597 191280641 34549515 450197178 248843722 99613323 480661370 965421893 298356442 299854382 559655466 463190543 990125157 421144474 454980056 122080482 986199611 746924147 51158213 514068008 488993986 64318108 516415708 329772495 203476806 936300536 86467463 216929344 114312642 718844443 731376840 718073493 91137357 679215881 191078352 537814380 510210390 625048457 171894457 5119681 725221816 539444836 65731566 545110831 742214998 344603816 639697861 314065837 176508303 588895886 498251185 128291627 30794845 326423280 885506789 541002631 700947995 301760367 63338783 77645768 641180035 816303115 338682467 671806135 261354278 838261004 741672722 743665779 856386599 22089201 306335678 327834215 403533198 922874364 719905862 647948347 656987846 850343843 300221859 206034631 597853364 825018832 591501041 599589814 348372063 277432656 580006317 748982469 682581567 344854608 262929271 476819590 159340020 105954260 828147764 96503212 428016763 281612524 452917254 387412423 100002791 387256642 566883247 942085038 329951507 597355628 452569130 281910786 943045184 305790895 658981736 492461945 398155809 914871787 954210299 698542055 398638797 717706945 455889429 514468391 417602344 416451839 525037046 523973931 712265063 948477209 171206972 83431840 652011788 144169150 317314654 770673659 492741415 785882851 351604110 522120041 599521584 450417657 924354801 411602377 101140955 338494690 370664179 855706547 363450177 397416257 102986314 531897573 123517431 335400379 789173811 273374749 672500577 152781344 876174897 819317484 231475956 743323819 582597560 320676491 3001493 268654650 922522297 602454187 581921957 206380657 592746965 789628426 694660928 369334428 835529080 230818224 210506705 115119888 108785826 345016432 399870764 818333329 853955269 430645256 568525930 93910334 821328433 355283521 841720346 988707722 939848993 28772547 293765025 613769493 80720788 916356201 76016639 612719444 58614352 611457918 735817697 889703449 59081355 195768138 811017342 799030953 732725108 937616652 749756107 451350758 554442897 427820514 44633717 553938076 290735374 497050178 969341552 825617877 145672020 954100941 870538736 219122560 709201312 223273701 322146707 759070753 775116048 104349448 299500366 502352184 566486986 605683217 993976050 967472599 498431275 745081106 853495258 10446566 308465762 324277207 805794225 80338094 599191866 576700287 719612973 455137626 81950247 719462222 144569108 421645812 245353051 405979398 138880837 42232651 804672961 144521910 411093505 248319523 269166472 773725459 189646839 887938058 859611022 577399659 641131267 437177138 834640330 684405379 357098788 850076705 964868793 358224108 336610630 898816760 302123208 477403031 159701704 303380145 964451526 73735888 139539017 797519258 663608122 6031619 967625986 264806278 324219848 684645171 433826133 961299636 212314254 642610064 279945562 836762211 193765517 773136525 753210509 96803901 724397180 676256979 344825260 410872816 710785068 794132315 239875732 741230926 260131945 272762037 458810198 749194636 929484900 659342141 879816655 692185512 126218445 634401113 206877528 107047588 788985444 370362697 617397053 995679722 846450213 53355491 897823898 187741254 912627645 341215599 233238198 58308942 43512072 918617146 363639872 630992539 22305738 3469062 515437678 567222375 661599296 957148655 918063479 251095983 202888663 898182269 893205929 368374019 444406936 929177269 805633296 171706621 140554048 144463110 853696083 516949225 800467385 495456258 473073773 961130544 182989438 766789865 901689978 697534656 23558896 178301168 326744438 686025545 537383968 846088087 576814862 205654395 442026152 294177911 815557564 763984926 273798560 690385411 532712453 418542179 469265975 802167672 826407079 972712979 954924760 965216331 821727627 476561044 50993469 395659956 526619351 718348399 346124405 336862826 120156432 27398737 104489676 704572251 844846787 589123984 569074133 886355397 888292981 861582525 865618771 872792737 386597962 753763465 585657018 158104384 77516731 871826045 120585117 326241791 162058936 580206142 309255039 554553076 138023608 698649515 82049472 642559440 379134983 500601482 463874725 168438648 604385455 580765053 210456762 124528635 386232913 118399038 933080093 205665929 776059757 150008974 300177122 292651014 347882870 163423041 214836259 485677228 401609804 579091254 682147188 183375131 558835986 641605200 276518655 167614250 35053540 650396276 461124008 53108334 599426843 886167490 891014880 163375104 317681208 195267578 812759925 386686213 899514562 53927784 85698795 671821998 855257561 692150958 176530983 89546239 371272897 321429176 349276348 125200581 854711964 428429598 188217531 344435177 782992310 655272340 243261108 335421953 702419170 373946004 203784020 76491341 322332398 958432085 662369479 768881132 624893982 84212741 258286763 572839619 756484848 147799799 728290001 860932568 99602754 503122119 831003408 394005703 370711526 255034999 717450718 720370641 14667916 706280789 810371331 694938385 832554740 216076121 950419218 777037088 920846831 37880815 721119801 381888053 280389139 875801552 746916594 807592399 715687774 242773252 903825459 234314037 795482056 323555608 358924666 308620310 221398094 641986255 748225325 445572750 79068966 721914308 582633847 245886857 302661472 886910201 143491081 620431571 831852887 453862065 524305858 649239573 490685916 732534298 196158319 785551987 132834292 515191698 359657229 947713480 152439698 563878679 979347856 185477546 560841871 6785236 497741285 460302760 330170328 116229693 858122645 822898723 931183446 992697674 305869393 15271272 665766317 547762363 184658726 316534136 730301879 914824097 144223501 695042456 365691119 25698633 377391635 807487643 127828056 982886888 459548040 386117417 161522923 378545513 635002336 509873988 435620446 590582722 499736966 554886421 111699570 598283329 99497188 264433417 971416085 44921141 101743245 409472308 208569501 741188077 383550898 316868511 785754945 827567586 614746968 968044263 44950631 882494157 392967884 73478477 413667474 768740691 262746589 493405085 401201967 161506604 45207800 195470890 24013224 762479024 968726727 28243705 145568745 904304605 449639795 329942064 538677503 32651020 538837468 557101817 173059173 194169734 979050393 528183469 151715967 318100773 962215866 371631623 627253455 810337250 866685429 182409914 5424597 414998530 182324508 344849454 219551090 782672346 340025776 517976634 648212897 411884549 560791839 320046912 194525330 957514620 916554038 58030493 848801971 272392973 475196826 142960290 337736013 591418033 134822152 675931270 957382409 784248468 431041262 985753809 532097729 943295713 655618573 358053354 223610258 264559201 834885974 493903534 556870125 254533393 439581383 100900144 661364642 764075282 620118925 156046103 756825627 718159491 120776966 834598489 428290053 650357613 702519821 166599227 699439908 848793390 977008795 356764080 219636841 484569245 144273349 452133817 850246109 932246830 126569163 667049679 543344219 7873777 823606508 105728347 710395181 94084783 699400620 430279294 310020229 403161416 515078100 851753429 51903415 386368298 726090653 74954707 21531284 798270124 927173005 497711869 920109294 528869661 356259067 247058336 168445050 920098901 111699184 838276638 840738428 887683547 841270589 593257833 642989387 758741008 23694227 842229952 445863484 807642966 231744178 856712250 555499359 247868735 606726325 492116191 184387321 653924399 251324505 638796099 409562435 610097720 209463655 486634981 874566120 267321931 154927080 580219977 333756364 543236259 238942269 822662447 67855203 158259561 164132585 876043615 731763030 569631295 920210981 537416904 132005659 427599173 675856802 511643966 954109026 683790985 401585481 977268507 119594480 253214693 301361983 205768574 257248968 661901908 517325042 420091201 958627716 224733912 79677960 114992063 945835779 320169086 687892520 544459745 96555504 117513140 300095226 475209508 446771738 742831751 854529588 743218879 66455499 886255867 820725078 268748539 836773620 375789734 186913817 359598057 140006417 498281372 197406561 302550899 793195259 376569849 663621919 469618526 621321131 118402943 602695237 463000455 617105098 963606178 909970858 871570446 465849013 613845343 198881917 84785157 711506341 98857395 633154386 828813198 77330067 419940859 985276879 111396801 586400964 478235649 450126245 598908320 92548045 973811717 368230760 548141906 356807354 104131052 122567101 550199453 706514439 178863105 87871480 86287010 29600821 92137486 758586150 661237081 811999504 224244587 990467339 225092113 114002644 578253924 852636467 966792524 375795476 436795473 876960203 857045662 930444151 915856203 928047736 68488554 29180847 696300624 246568912 106561302 935322429 307327247 694037346 13796617 878948678 717642898 14164453 394366863 885770320 284717930 482587120 702438754 800738300 285512783 556237127 399782365 779286157 632920950 27125866 119285184 448236816 814992675 910004441 366008560 19134584 34534057 560182269 862551695 839959810 745507616 912529549 779638367 530738831 673140354 422253863 678833173 603708082 820054315 513275864 313621826 819849645 562021596 761253883 611837714 920273195 797171285 18018971 534963168 371426091 676853911 293392685 728212702 433297919 366006941 197030962 305434406 107401666 352405234 200975333 484658208 796368832 587663585 357450230 981815902 281134838 908069262 615947699 302913928 47292513 484861413 87544894 698566187 791643962 821808921 961957040 865221749 968250590 803803032 162431559 816518863 32812533 937301371 644071610 414799711 668646082 219558715 39931926 320455720 176229572 776327817 994785443 406619399 348429404 396076218 698698352 855570584 370266822 763702119 254528737 453567721 362220999 328465329 96195284 600615092 676380754 191611472 851056676 209794491 927337029 930115128 875744238 336711786 965152024 325034319 205013806 894682696 624858525 286715058 208075126 702791264 855959676 948903047 842839038 62414385 970005577 851921845 887283023 749888622 886454740 868732879 80319214 285846332 91373052 685852143 622063623 334669629 704500331 77357649 911151803 257689798 68251380 687045313 413774003 936063827 522111389 706784764 757867316 574093118 15055725 845376435 684771129 974173484 767280381 558128360 481700174 557539668 948365912 224068841 657605593 379482828 85434083 69135678 378330290 234426660 801530563 748022930 888810357 612655409 284189725 485154181 675917327 707201680 451948173 582631651 547290591 835664919 41318647 47905132 89392048 377808 623234817 576781848 841651896 735603097 665386807 657683127 342963914 899697425 337630453 347930202 330709271 655721504 339598276 57886682 8710354 581621916 282655354 483891737 321668211 34629782 846750052 802930753 200893795 940790148 201788812 105267341 304761449 535923608 121770640 439765926 493754800 955484832 763137950 427040270 772819940 590325181 882680634 852782682 34240541 747164253 580787320 361968262 509005266 290560833 506129324 483043405 71659283 876698878 835775874 899004059 543275851 924597564 746401521 529726866 787232756 658572038 102549123 257774191 14839225 853905724 190601022 388699055 866192353 504375492 239365468 417994520 234133237 749184151 613985570 880370178 195953765 43543124 141628833 624924175 28104116 27424639 50908064 366723526 380753741 569992075 541084142 77095914 646161734 641593117 235153628 572323123 48609673 223833362 476070657 698015465 62707338 236244498 271352083 159713448 798436428 625595045 54684683 654560723 432623177 283356297 956494490 189437319 870830009 78858929 797573218 931549058 663525487 797887631 552419779 939857425 517426307 556637861 721605592 392173240 524421515 559546318 832091801 778748464 827872326 467697449 186385003 109231190 286972260 625515328 396686170 778879452 897091020 346542745 683978110 256639803 223512075 323284722 575030726 952487153 948594304 251058425 956859027 839103066 76718540 207415249 348226524 714588439 560868189 110682777 103241394 796551601 799829669 268817485 73239658 279539159 301448882 296027237 142688232 774444118 343753674 275411863 510371741 393449618 360609382 559926949 794822521 722083657 389808795 804140886 43642696 987611648 16512724 690888726 985889826 171929836 878563945 576104193 544286309 714111245 383081750 440311535 165832432 592461432 387235928 188564977 829627781 24195921 788484939 566533479 542040188 283038778 482425320 663585141 361945029 510618443 230618512 32398558 76975792 609448771 462675168 730232155 806779409 875993535 823572643 775270327 245123563 191131572 361836487 202706359 940283393 780714245 489227599 285933398 14578912 520313718 235904443 413635169 64226007 425139886 753113859 212974239 481970576 243576536 791929578 170603436 834521822 602187661 113302169 640267363 27340762 553321548 987160494 368030289 82606670 959477450 559767106 701255664 201533673 910361999 928353683 924925449 355810281 148541190 581720266 866063711 969223248 37353868 108291478 608606866 289680946 992415548 985969465 543068552 942056634 646701246 934098216 994771317 334373007 901567550 165632994 131863296 876463094 548616373 440252424 722516434 20019413 293883207 154372274 146257215 510480348 262246553 471063642 280989554 790691572 41953197 676987157 962907969 615893489 674084274 106014533 454586160 555268287 930934286 679111916 135255943 707686131 611184634 588541754 426332808 300841569 629186955 534343865 325050171 247041067 247910717 627969690 685336162 270607698 583245196 367212524 262023555 477410665 608696744 562186010 399172647 287911473 611356702 647105377 747806045 3272366 135386158 372351995 120647878 147630382 909561233 713492551 290173923 946559032 608282482 38027510 465263889 938852861 910654416 15889283 792112266 154090724 117171353 971930055 957538546 17898937 289870540 976690780 265931036 173115875 813049923 34569844 555465275 880404957 849264168 52337162 824369899 172691652 176677988 287386665 449623738 31796151 853151634 812885212 48621112 646257474 256455511 724864340 562473809 431669193 788455171 685777511 794675955 842731264 822272386 826297203 418094898 905688670 590240555 909111216 995342355 646854264 192370444 274342988 634015425 427929324 267110173 597143329 600184963 664789621 839035075 705736951 152641016 636942777 122970460 909362790 670786501 543038142 164491394 181225902 938132604 118254288 182958819 16907051 477846194 644367907 251654172 91131713 918762285 69331977 84421793 860610146 443410701 514861473 268598336 378302148 956680641 919137093 500328936 51294942 982269114 933829764 368487866 237810444 410467635 329423042 257720307 511878721 946361126 491585850 138214881 508973539 945282445 903965397 333454841 102126218 416475386 863617538 794568365 727681311 359426494 38717784 20451067 777283895 540131294 23211767 75417163 859630441 378413151 965405882 331410130 507676903 412064498 411524560 345302831 871902980 215424884 527046021 505927632 423068641 343747455 299920812 715309775 848020848 297636543 464415997 157338676 607487475 498632446 743643332 869174225 684788899 399458781 899901275 814410738 785305872 234766091 274652597 950193369 783835717 929802508 400463254 3853782 78026933 831313594 597605863 977197506 190968053 733873343 266658937 607708251 846819737 776189121 474588922 55129690 643055693 344677495 56716520 961036335 664815731 660888552 440952403 458857003 777565147 459743178 384830918 838236393 813710360 394160424 721977715 683435822 310219567 653559354 795454164 930034576 434187593 282544672 617625860 372955754 29818052 858467432 259970985 510466212 859700093 866240319 182384789 85572211 60695145 477372686 965603707 738723867 416714274 545488069 305037800 496286794 816066869 962561512 38041764 925002338 470555760 59681194 120395317 91906469 726125639 273533726 45636864 550213502 965057467 825571314 488160797 64559645 79251738 623455392 823937846 843137670 451676187 329706840 217128075 324134194 869171219 544057237 343265516 918433233 619510270 908859794 87738768 528654270 168502954 98101693 752266076 726392280 433616936 936520520 936073987 934472877 878376137 913226423 655289428 114962171 145937621 81252808 359523785 337630062 654603970 298722197 665156289 666950597 44091610 288854461 772369619 94602858 483509080 585190747 75817241 619598610 521171675 192857028 921069982 631593916 774891365 397503921 434076885 156975414 17928854 384082454 996552695 298919511 823832664 529635369 411872913 36138717 230427161 631711320 272566458 93061040 110662153 943327846 996875191 147905431 319225466 836725288 494714267 947949556 839257882 642361048 783474137 756999787 734603087 944669064 782731778 938486700 234803306 621790961 46899990 315083077 11222586 489563815 810772691 300549231 481339743 547742244 883534391 265623895 555098723 709281950 317639796 843590521 440258478 71532480 678393991 209266538 196233109 82519141 228128300 874832011 158836923 233755600 151451042 536882578 13549313 889215325 767107636 553249176 280005901 183465753 391521790 82681455 464880354 365633254 299548914 312752161 805839560 481624575 272808461 41578318 19620684 745408986 965080821 254269482 466319588 922063490 189319320 741141244 798067807 989593113 859261364 226168412 273800827 990926500 725497824 311303184 276773750 322380034 846677840 324493300 74725412 803420583 182357959 187900501 920609851 597271201 710333686 253827005 343351218 256723592 972526538 948635805 929731719 317730789 113608610 336647724 921772562 115604656 45759051 137115574 268670261 649408132 866623545 505269694 793588464 698365320 862757519 328815350 355424167 949467154 957054292 859912156 341992287 527624795 205338757 738603709 646721860 968049452 728298040 659472473 212814956 729442725 258158544 245697361 569176159 522938934 982139001 582257308 289036808 709469454 18400930 210553265 615860516 545180268 633080659 884169882 405185827 411400120 291177015 779651723 401095923 14849344 662174559 667620506 11115195 883864720 589294855 98064109 418132997 160807644 489493789 27553775 67457971 480010086 934493538 320447381 901376920 769260163 5987841 272222969 623677826 146497646 453031741 112382172 157618294 527720219 446547008 763680710 938778253 348333688 827198892 125860441 831907411 876694317 263784890 128031745 513916016 626405061 633603507 316832780 534169903 760755243 798762740 769878229 964447788 292100833 267863178 93743254 326096717 274549839 764177214 600948014 134455121 627864403 250422900 679228922 941850685 394101711 524803009 305514300 626043124 31382909 968733194 949311814 403795557 484557365 72976135 175019654 930516859 654646191 940423001 328917636 695425933 589443234 777324163 622353618 692549457 565160249 755748321 574998550 958831516 172808417 592269612 540719661 65493475 4606715 791354927 203233873 789206629 723331304 775580108 205070896 256888646 162095764 465050934 682060265 954636 333605745 682928526 337021296 296682033 242838372 532452407 677545915 211082920 950294683 660663091 985899304 906350017 47950001 699418594 501533295 109512376 553211120 813335865 554777025 518501645 799866010 330602857 581853415 640915307 197794555 928177831 775605081 200745018 620352343 975140802 265574502 452300689 639645290 6351478 593081817 549566674 964065762 129629804 553406614 959146182 317023988 531118906 218703121 745675966 233466769 442009928 524436871 951888433 182409776 98799176 789122334 369319934 440656092 841629147 556867704 592370573 926512874 6082622 194933055 902031767 216978034 847264416 303167267 856305727 376518609 970872024 707438667 745317817 125016836 196370909 96239164 362706498 700199897 182637796 50435583 793300652 376731252 995867450 639371230 199983937 637599694 218265325 374468286 516189370 386242022 429492647 699327717 67931210 198996715 436637411 225479771 902837061 148049653 758223782 231308341 532765804 422329500 528151334 116192353 403133748 362837615 410493046 746713736 966298300 796750246 947833319 968307684 36874266 465328096 494144185 735979509 478962280 322948169 426791767 918705039 264880055 235933301 419904357 750433477 426863976 442041782 368035531 320751707 168451907 946004810 595880915 569207750 475974343 822793247 360654402 596485453 663646546 175525703 75058489 530576611 322757789 63674832 910509065 369109387 769852371 61032812 10254024 968785190 220372064 691518844 953174317 529998338 698004770 477294351 55282383 426141624 462225678 877163086 326192190 997967332 240202465 916953581 640858677 106538886 927470889 930376886 596345625 89040596 344855084 979605008 398579199 825823785 145745242 154179292 786038440 235372002 65878491 782116121 318950683 904035378 251213529 232363819 668959096 130353441 989376742 861663197 389757985 498447515 385975609 620730908 390917524 118615889 715693843 419711811 793863898 764167244 706572758 413407424 874885704 291339035 22547866 142789778 904694017 752518329 502656663 85964365 293894028 623385181 908749653 734701180 909932758 47617801 768979351 260057154 871677201 577281823 465430321 874534499 996688965 893070982 661507777 198406244 370419498 635117151 877083855 509185993 979127978 185042885 33219124 413641733 272103078 632094292 764003975 887701230 195942982 42065617 304436390 738963592 221782617 878975478 191131694 206553142 951799870 647770426 881574308 904201923 225377952 798229070 810708855 694548094 633073359 151173145 544722309 15351708 639689907 302264888 779231407 6198949 434045019 633991835 926793914 275742496 116696795 473154385 139860526 193851169 281843935 247475622 859277550 966140660 87280428 228247705 13787535 74169152 163855895 184332193 903025872 338700886 503674661 333086425 175447147 174654386 63365546 886573249 234915528 324399032 696904171 946962965 999360643 773028446 322682216 756621904 696324331 815367561 489144171 334993739 933018715 768543655 769319491 478119880 779904623 431204026 517564673 734277327 834306319 22097497 447412184 675807350 292052349 162588812 849794796 683135777 943957572 682531294 847758659 537348669 791937677 172195203 800140184 459449358 982430840 737472155 577271791 874604672 511730234 902353617 316134910 986400390 200415311 866785000 950726659 187574074 925032918 179301946 672454722 900216095 832104772 648191903 332915154 773635311 672357330 950020721 910794726 261682317 986813602 627875391 708404466 985395788 173198477 405215902 604840765 455138845 726685342 535867910 25212867 80000707 338970823 835812438 376420702 481188617 467825167 443614789 590172890 519342281 973287884 528624994 857050948 350339377 102298379 114178375 306117886 685240714 61276610 702600602 745363010 475735916 748642439 275637910 362891531 357923610 245878367 173788583 102897193 942670997 471987733 631166137 230280810 374595073 69755309 906703932 864786412 890398091 975880041 903000984 891425207 27218764 427478656 141563124 741295122 419279933 753964589 455787709 550785213 554472797 340118711 187428334 239904144 605140223 102844801 612816082 716723018 575047435 147866213 108223114 612747361 747175345 258085782 352324813 259500587 682216905 167176603 188520800 352797186 551461940 876072654 345386450 988446760 552929552 325296694 394268146 344570514 391442185 181240908 421435209 731226196 764425577 806343136 629056336 967501632 466597888 577389863 863694239 104879393 946179773 332985344 229983572 954183638 853297845 131831534 932006855 574179193 129044966 202303124 101958676 783568197 943519808 152414583 89677285 250606973 460409775 600198451 672169953 974004833 419955622 145679912 385438924 272007139 992565435 782666175 933914327 681704223 924306322 788764758 577105328 532442917 913933276 864613558 386336275 887139905 77674741 875690568 122265830 67394552 553131782 435618163 19539062 510497912 564142056 473823853 619999823 890252606 853919548 283333146 64700543 761333069 266182590 945929190 682244360 605000547 26089629 151987109 112939306 687001437 164935157 902342803 655819236 315279316 819955008 480105999 169792415 963622421 277865570 178270356 256929297 246262474 465374404 772956599 39002118 909741869 783009879 706756769 707123895 281223508 380565258 275245751 618578394 648182813 55189404 885981008 221424424 460131413 337589055 740594039 689249595 637789683 111884684 420898724 42672853 711300709 818249215 760149409 834498902 985878190 102472446 244289590 994221947 705341027 133810007 116280229 449225801 205843563 189188662 532228457 645290049 61212318 223271701 840099156 642009409 289046278 34593946 974808150 825979713 434566077 519733377 301903310 861378366 136648215 287443329 507844091 422806244 136595329 956197101 979137899 401321301 253782716 637643759 91070658 262727076 294915647 405246136 756207911 668677946 206833070 471712480 340981586 821163651 175221440 822685369 837123009 454458541 599301682 305427772 590176815 828743270 404442126 245799086 748273602 902972321 231347763 683035130 212550971 901206181 307361242 67026665 799327400 192773522 686671011 407422270 142188451 386337810 966128589 896815020 736710793 306637519 641895135 157840491 499987426 9052710 785151748 24588705 562099514 415058779 217009308 630333800 596127070 57903752 123540416 77350822 505065098 709569770 361309336 231999682 313909633 321210890 771602699 721268966 140648020 176026397 848502208 331194427 261814483 316683262 913287511 652322686 251609508 939085543 390541330 390010489 991162548 907475713 98677268 549473912 641818143 525101099 591198714 549847116 33960231 245722187 631172245 661876853 861747476 920324742 360447337 15558471 646305224 790534702 293067842 963649465 813179640 543424343 30289143 596055363 129416712 515385239 598082642 467479987 430892630 224811137 534035013 900439215 165573610 162442511 663828986 436006265 372321823 78127135 990986077 966319789 912200068 797716338 788282129 532696973 153198966 589716345 357044684 18351636 10229545 576754275 438544550 357549596 951335213 752017800 704788853 931510417 576086003 41927294 989260523 853139752 335456820 457333721 282492999 850814431 645397521 120205928 565694756 547071379 781450099 14518150 671022888 410630205 281639374 162374990 759115530 809031394 115636642 28706588 538956356 343731367 360076378 677852965 83761088 890303038 380445073 944878362 225654424 730021874 766598648 847235513 728103786 193453832 36025899 628547259 457440637 113712473 10704760 353821277 90960502 963625669 765609030 986816458 405983867 571838656 768469135 671805175 598182078 399770504 148417528 376149873 590344380 39600430 995967090 909030709 458825189 74055971 343581229 746551793 359563633 724215959 3127747 511170455 882268577 992468802 472593975 697509127 572408604 238767148 289089958 286900 196096218 492033638 292887243 941768550 308420278 141143101 646071467 686048417 74378183 984226083 159130736 661083587 168271409 213333750 999402502 159953628 29372988 841297098 723708080 578432634 938809720 987824150 339295291 436036476 288376483 655611085 88166571 995309827 72014916 594709959 951446903 855399693 807076605 857534870 510194512 979155837 91690799 690781405 694511882 687082888 938227725 367505440 702595272 724381551 563770735 240441807 327513359 506136055 241073969 92444898 25819877 755292898 505921232 991605313 463452672 203683586 532403695 274571758 26975615 57264137 775750310 961384525 596991426 350095337 845127497 775175957 811352086 308432858 213781485 386799424 140465141 673524313 342876470 419882603 253312128 516858412 828887953 114063063 530682704 105603037 497675166 942335272 254547270 560111920 393136484 798873566 805699690 758669157 839668948 202487618 366543641 7825239 259073195 576238888 978143044 352516759 253097200 684076701 416320597 301221498 174430843 831666640 132350692 927123943 360834808 797586553 915120791 571059544 422532249 820252990 981951616 297579824 700278528 881126031 258853843 832325152 199845915 724993638 938998299 308640213 725217745 916037669 397398999 851955775 304035739 132014050 306037617 915473111 869642733 969146714 413553999 764005988 823031156 788623928 595985638 236598140 792946358 780283837 724461072 998996561 419688083 31533343 196579327 944213640 756863423 431745522 283757870 791318345 275603218 444562792 642725823 445592305 764973577 668140229 561714427 711871725 146058025 362318288 722582192 185372598 951611566 778805165 466002446 808131046 487131880 522593252 198837417 388105015 790823835 133979044 141030080 299514947 105021914 902670841 94940029 961252262 345495603 834509512 42432406 373992517 130369224 233867174 364323510 267968297 684255350 968015835 661427635 176641394 915969763 218255839 180413121 733326543 531303712 346136168 516017587 76718410 660946445 409634386 448026345 51517588 800634983 659360091 239638210 607699241 624362528 358309253 70131366 472653931 676426304 570197927 789029002 604706348 42182390 740334534 70019883 295450601 594022497 909556994 663873830 783176732 200151517 889446665 621940311 310867111 643758173 407064925 150452342 199462906 590788284 710419331 636381448 709802636 587150792 139836305 105397250 656721185 22249021 964740243 732540600 814352093 60739692 368753625 973759007 816389323 723892933 806283823 208541863 279582505 263158555 211896770 477394276 722789099 669032688 531184257 275380519 121217694 101476458 810797160 257403387 442546404 709023819 256627465 12961007 904220874 725013373 423514898 646122426 653034964 779961283 899163853 839431944 155953546 887665698 252431271 898677980 855256871 75501587 667727249 784467703 77057285 763385918 658097572 321288119 123938500 523247154 492121432 598352772 842633583 294697803 477388916 262066418 60565079 898731498 882791582 745743114 977726914 141853870 65175433 773763961 669888543 437065292 482408619 962170483 378671278 56251310 829913323 362649425 252585737 90515621 226674767 709704616 382962004 296187042 409420959 8895932 512742278 773552219 623023027 292908206 710932009 603528178 577897529 214129856 494291111 902854091 438853330 670796649 138620103 994080832 403661467 219664732 951232467 516891738 94680874 963652851 794826772 791660452 113013351 840306799 337470405 366789960 299846452 793433273 695505706 210672656 892457787 854107278 396490897 470646834 917390843 335846597 354257291 351426811 746785707 532945413 316896583 473057741 10156938 168550360 200695459 585169021 888725404 964886452 517825680 866130623 960251203 775289790 893605876 185140989 669030368 579917711 79549841 217181971 847995950 247568972 447531944 581725119 654118968 568379705 352331841 8722142 575924916 92680083 733055797 539092402 733863530 683384885 82222312 397938387 421387922 515200151 375871702 890581795 232272520 447904392 761092315 348317273 299043054 931458327 356564794 562725029 544058036 737595335 510497744 197010868 718703703 179621368 26062741 765763093 218607965 765977868 402374226 564022649 143669108 762553092 556790090 161065008 850579639 514975585 97408874 516589142 821654231 813197542 289822087 736078546 936711059 940821010 624530633 331763741 208604104 554547131 150167435 857695023 723357309 687037174 939254510 937096661 771129418 385017426 512347342 866968695 23359551 783039681 237481583 988879475 149377881 714722857 943801938 378193063 223948137 591174732 611888252 754358677 300926375 788932280 601497446 943602161 188767915 906048551 81949547 498199530 37347113 896640179 225615256 971693430 479633566 9944939 493118693 86048887 187233431 514001090 196897620 831997342 837600478 132010583 410697215 692926981 722415442 448489739 20418283 282631819 458114020 305112125 756030793 158993114 9010004 282019397 432195823 452193130 939373024 415836890 487405848 282070881 843737986 801002511 372880674 497832566 375246415 603328042 550315343 984383429 762823996 272270680 538511255 217730703 896097214 246453922 352424489 783995173 642583151 259776872 131324302 169922193 275672167 286316031 250709923 198283617 42824190 826954884 434319032 964998084 451767146 32619392 912293030 67338209 428604922 177422239 539883103 233592251 545162820 828035883 511333660 440116497 249117274 671270367 57090440 361056458 865451793 189680328 620374654 795582479 910071991 565567181 124121420 263245009 269863110 118657888 30322799 63506134 242289052 719857212 164780717 22798596 566048474 205702573 849377372 659725274 959898930 463580693 421104177 837063762 309671350 318046474 714577400 968995439 978099135 443785323 505159231 44968044 99546230 696860525 388408176 337322602 525871219 886081165 643771761 534883147 147550974 206453396 897768374 365631564 310647192 67088186 287269909 178649404 502415092 426975816 39240738 999825853 898490685 794668287 546363163 354922490 688374530 672474478 36611389 650640233 332326186 120052238 926884083 157355982 745539468 501683523 923679917 751728338 813314810 395957195 749450951 664852388 328918952 527455133 7755562 352139689 829131760 717855556 367096466 644656902 737004581 930492029 297093509 90656930 808525598 867715069 550678064 505096627 72929735 932084555 826676807 735699045 335412595 193793517 448423008 280010860 836821204 754383591 38636424 567498893 458029670 454492136 743105558 422668062 220122864 338366085 745637109 771340541 790099169 296678491 104203906 540908119 134884624 991424704 812851100 938933454 340821849 414684785 191587394 988584942 540870780 655004259 949934086 221482208 659981699 554971631 961463398 739571665 457170387 123746629 844587791 104000458 501620354 304313917 204671708 62056894 242850669 745230021 413723965 459409379 80252016 424590042 400873351 706992406 492666288 806099372 301581914 209534690 243406968 164139521 182747572 727155117 889782392 230602098 894743822 483326745 36253161 521853834 397536339 361664299 70741676 452699298 178466416 59831456 32704403 18524906 162676764 538299774 680195944 16978888 599658969 340935537 540297267 142682135 391284405 139429649 722555515 689753839 524925035 799461778 583271419 179284190 311021818 352869972 937682503 687527088 548444134 291026116 874664997 935444568 27245259 950893997 40380020 904849137 665303860 537555484 978601485 689610284 980554875 325613216 871926044 291696963 332550719 175124983 951697905 197439076 708288785 307713509 559436047 279785040 993622393 462679486 115203447 190642261 735054042 346366066 921257169 857829096 743335926 984406571 435561614 495324205 357194092 978705512 674839734 289107371 822920912 317682299 95362075 500380113 760024312 301505071 885308598 66312765 899982939 697447150 749317927 418647301 645237701 796147393 709277228 267209405 229942014 372921202 290664527 420018586 697855238 133182436 964786475 988996645 38196682 310556855 910840211 997177076 164031307 778926803 256428793 754690142 488334142 10174746 635906574 906070595 692633963 48925170 367411552 344211547 462547744 302338661 625299262 117796170 89767956 185007525 65188662 359787803 445562289 457566396 447505402 97551792 970056817 913379027 608021075 676220276 37117545 410088702 660960084 356827705 227598776 768666804 530696479 352125634 493700480 436768992 444460831 465748893 768151306 75992745 892089317 398993866 445850024 316443174 110260584 929372678 171909154 352080185 379882491 805488539 926439880 362587446 631388252 716274355 328732578 288791320 453834041 436142221 403332323 236881589 413655409 839721259 984213464 562281756 999745912 367286247 341527861 364674719 371350126 858435763 97516827 73243767 89586248 94077097 787294125 217812576 420377441 319593175 705014396 165518475 474734796 673233551 342245596 267206797 892484211 507669310 821634461 604373916 864951820 652824879 136035100 327696359 523670574 82795413 884536320 221327141 933174581 666656223 759322524 143436145 250764251 19389399 635065638 868426785 562288133 230882344 548050606 760396085 635735914 747179353 893480399 245124129 225483659 94729504 470434190 468770645 733836035 230305004 409440295 149534337 678462995 581866484 14734923 999586801 768216223 486877564 588768132 485018793 375939272 294971975 482524833 298705372 91658812 257974193 850001156 924735968 435693917 651181826 690881161 955292251 290481098 740234150 250204172 132151525 298115919 632873957 161144808 544726332 917063339 716237957 790605760 104521891 691416632 517890627 623608944 722226730 605648298 344151559 816472157 448854753 396375397 378005004 713482185 993102868 501949503 308041088 738767675 518350620 451841713 525705555 613985768 133938940 888668513 556698488 414235179 771883383 218310599 351433567 136913646 972717119 541150978 591467524 220252328 868672166 17310712 178767404 601368763 437734010 396911774 160638506 559600385 497024777 319559708 907964785 304442612 887360502 968210138 834266458 539349320 418801203 532297803 692725215 11313068 528531235 378127858 21800113 947919617 436258893 188300919 842912428 867574968 673070056 153968167 950613879 724530146 771988200 882465033 7937606 914353794 404920004 824976406 756999033 555504186 891286654 361704917 377465771 578641961 835483208 953752423 286832791 9085774 681573585 469013469 954392523 652071614 208645087 534415837 106914975 382573506 671381532 636040101 452375988 565017529 929559150 580277768 290042743 826600059 488640456 898991404 931084348 347466381 789576150 245892916 737904301 238936441 933660548 861027414 211291970 272647392 448322439 67783557 960621422 505494449 91152194 237150376 619166793 947400916 560224233 970412207 397147463 715442353 991573574 842580451 775606355 988197627 957678003 759651013 165299229 462167435 416742603 492831740 320998173 937757909 555617302 199010482 280310085 291887330 44831723 599507714 181529528 786199956 180683523 228019320 336771490 901207535 532751846 798909226 931761369 889788946 564449709 595980569 339405627 713918216 603890289 352822340 716492323 278649516 192054070 301337660 97701127 114078576 673819685 989913062 418576030 85319153 562971865 447055270 476385245 588272061 233937782 100914200 164473722 265541307 655217748 151704960 896551805 115097973 607852363 154751720 264981293 932746900 282069043 509472282 95844852 43108052 21603435 714092392 506824067 790103848 64233308 574530972 400607744 771577872 807491133 740199749 746071450 606162702 20306765 715324021 832773231 183461602 197706654 837677671 412997429 262991003 576852946 402499026 325948116 367287135 241338426 162029627 532117585 850733346 728413604 97112916 790181708 519276344 397212078 913124693 663467216 621334476 677957639 450754239 212819394 16800384 517354648 434599475 932197465 343945705 169996306 418444855 18275669 126764349 432274446 773404533 144139324 727641619 73813667 876859510 374514104 213992354 388092051 201367966 205332924 522059510 218930110 98623456 939764539 434052916 965129143 895161178 3474486 532807705 552601758 976233618 247178864 100316905 965017476 479657134 179067843 337400948 228371427 555194386 619120280 584805043 254251404 123643468 65684295 157729080 193746591 418339714 185160873 961984173 724098853 804675358 468012317 306855180 958876234 548855326 123733298 416578465 441681028 893425917 635709202 236524723 762074914 480539615 657453813 261877017 377039113 735933918 292823424 298709973 943368343 676874125 752614318 632205295 211567715 338148136 810525008 673169361 333240807 569404667 958164137 212949533 2987090 144715625 380683343 836382174 690502297 461535923 640061941 937631414 675472832 712913293 722190036 224872113 556035218 450191880 248138599 622286188 298042663 848713805 188993560 819936691 124482419 253520462 300540948 355631035 143988461 189059311 930866901 886913576 875459446 316986834 910785621 498141215 512054664 715618774 703421398 367071043 992876980 980026394 344817377 86556623 455224401 530887152 187285441 704814776 558251609 445899773 761647297 859162295 85591715 820239634 506451575 521655005 959282811 342065009 498820066 321694877 229787766 975993347 27876948 416641801 509207283 840618686 639169627 510488450 468152516 944068371 744970843 600906276 237403901 797922598 656441760 369673115 712126499 115475933 295990915 645226597 516624346 189604767 551096977 92932558 625982210 281850704 930004025 212558532 805665527 980770461 188708921 884423809 248942235 485512880 82931835 83929331 955130855 121166989 753793911 857988947 571874944 508645974 293897972 854486103 407876246 695341698 396268459 486848657 110319305 148514498 584557463 438672349 896280933 813640102 6502672 554320623 303878364 941427803 832530605 972825537 37164614 82408440 45808364 717158645 878673327 502423913 897422605 747415373 708746073 711867036 675085551 442951368 257123886 210863132 443028825 459035223 256735357 802276382 70668538 890999615 274351645 72187134 897620714 737150445 679323635 791432244 875346342 927329657 982534914 980595060 536155315 954821355 959184230 986583406 371068773 279651391 418647469 748903551 443457743 859907132 492860321 68180160 873509889 193796890 667458381 879564888 458174300 280104774 936257928 499432635 798379889 526208392 88432203 748714167 931182484 494284854 460305144 268450950 713444998 959660624 811089244 891593443 192622240 77756266 963902280 728880398 708397618 778610252 724176540 25421689 444563719 798822869 385443675 485961785 2090661 879052123 721492295 125126245 753085518 493245083 62136744 696934419 554654861 725237109 457986695 673903452 348567595 683378298 190577488 594177787 593795416 804326814 473000300 592960183 839334989 120887193 295440752 524738598 731092958 58892677 813979089 152887970 321892600 720991011 293718201 99714138 215050315 621572833 117365661 224621176 622188688 71141604 490406285 817339384 974025059 868139964 734524139 117361092 992012823 553730571 479273032 617205304 152936192 879487628 921621607 404172320 878809603 969613475 598903076 716856552 977713764 638109398 64447805 666693171 998239245 513183588 888526694 112033854 156990590 145826822 139698041 577744595 270686086 619231808 292010656 46026220 357665501 859242163 672332457 166951863 686288350 681819427 289033138 431106678 886517620 406341316 97133619 584966102 289389865 908492251 733857426 184610621 599233702 5878120 334222248 873445172 601938351 641882933 961751919 174997715 546828310 199324018 173165166 918859374 921145737 370925777 574825354 869852158 382941284 528945745 759767124 546139569 776522126 401544741 114904801 832809901 634283118 160734042 147752257 855195533 666658628 406107818 950929471 694100495 800759068 503488757 720150510 391580920 493314442 568917285 501621546 155995793 479696325 217788359 115995409 708456298 776262209 532932744 491376534 45772348 909459615 832648396 489836900 213886148 145735316 261162982 50136121 658194816 421107587 217700793 754678227 890333800 139642626 991679828 97315052 489604890 851978362 250866266 12216846 980411534 895195424 120459244 258572883 545550945 664238973 496228662 552287076 957776839 931616804 848593439 736691081 375418906 121931233 121970148 816380384 327878052 506236607 233233940 69087221 477483142 622323573 71367395 392158824 460160710 882804472 197208357 970202525 165691219 868386022 210721207 637068487 338074666 115825120 890840505 299877879 703496457 894190352 735914847 41863463 995903375 316432895 561679294 728486724 701804037 92599215 789848820 850019376 529876377 799552667 943359951 326321801 656014435 608949209 426059667 148588708 141359428 279738635 552660393 779665645 723899502 792002090 965629091 311701199 540434727 212727649 190527560 945502943 132053307 272081201 143391446 957570675 422999361 664374220 83144786 940420132 743872299 790467395 853996724 960649323 689903972 120694421 259766118 676329198 388079040 644281578 90523658 683215209 178409405 981361216 163473711 375747178 886763022 111009938 939176440 648767097 89157557 266951024 334394064 731896126 218716545 795104509 796558766 426151693 135946856 759064797 524244485 857691351 401301876 804206563 343732749 595713269 833351726 231930273 525521865 364612225 759875110 619990913 985611545 602186509 515405203 470217123 594323773 627375769 90313787 668999334 963929240 378096224 486130491 772279271 706772848 779711281 608557444 877798293 576353841 21533517 807644201 325175361 848999842 644875477 608006663 290720703 96468700 217700104 22580274 82107889 426869995 324703353 8673718 193302598 182954424 825668948 80941987 111232835 961561646 586599374 984212668 663839618 518680345 821527588 970297400 998505113 58986645 56578948 389523439 594939814 686671476 30881753 311690035 43364747 527962892 368235777 972023768 119833014 356670702 74479160 126342668 279419264 335487972 628122329 75867532 370018380 911407551 129883782 830144302 14639379 799712259 884251580 159772429 857083806 299191351 774009400 625273010 774101759 643991693 850528619 657064676 204291937 913888271 699517776 842393297 895670380 661853437 719638326 621757380 72919115 280364230 576857386 518861245 530078948 920148817 143338809 663876274 797834982 49521569 293120834 262771994 411159522 528357453 172700383 753932165 17029282 331081720 313364995 408066584 660234713 208013798 345346654 834393989 661118656 914999719 379508308 924141661 642536533 29447559 166041624 136838994 741559891 592832687 351791271 962610513 394913789 582654181 143006275 911930280 735353762 452008656 725500603 694594119 67968658 542622135 739678493 752418723 467443465 253804049 387776320 565006144 687538489 425846151 860477670 470948354 966382976 366096185 633348403 777949144 591558485 824479075 912703942 864255718 914993279 378214592 28952347 201106461 702036450 903813118 391296187 120599383 980028777 180492393 916940434 493457081 777004747 366769488 739152285 216525519 176963752 447981985 888442028 985763402 842791594 553833255 324988938 94545023 976979860 423124446 413854990 323641543 125313653 706761274 325597749 950362171 929518023 932010832 339912697 667625454 821123340 919083317 714311129 82711512 886180602 103143146 304161806 324586288 438134261 578687691 111796426 462149182 796186659 93422176 138810326 394760381 175813157 336887783 206138749 325677968 626891229 368978907 537153387 976746358 262687527 305823995 375508948 368465594 648426716 419179029 11952921 389465089 497930402 156879442 16889088 538204485 321353160 439862160 781177353 327560618 416943506 609280815 123635055 32971934 686575604 660024313 325069337 436118230 513122235 474044486 180365790 60714821 573415070 818445501 677931597 795894895 828479585 190149944 788447217 961930730 146829300 215897423 322354695 70593618 956687974 262908815 27044362 501633404 370660010 984576666 283360340 728124077 683060340 660445172 651543405 923549828 653083691 375563800 424426395 567079229 546963520 425451850 575523705 30966989 901121464 301094468 220031974 694718458 55420224 423148802 202103447 369047361 872240888 75379299 784037254 175573724 100951149 24426634 663068790 884638074 675806196 87467242 296020972 689893889 747761333 209484570 184060717 760705671 733627429 307854452 563469707 361263142 934701651 165722695 67856623 500272901 895644186 766905019 209809626 614071547 553395010 846616638 163258022 884448587 42080016 142494464 282213192 771384444 571493696 329458050 766582676 500752368 894629247 904832147 308721770 711679234 883559431 615485281 253664097 941842751 647061460 617933959 234937908 528916748 728256153 5543993 638232673 16675014 565762457 116844684 848965063 66319094 215422752 442202550 793124693 245057340 768659451 764864145 870095972 940428409 52600311 902875330 609899378 876738693 927259494 89388593 251727624 562255794 214088856 265308420 839526951 678122946 553070570 646281735 350452450 795865718 322001290 271791625 502474319 6878895 604228867 193111882 910624142 191944730 316068943 971185045 399990601 493072328 81845238 554372349 514613508 797292513 415454915 133941391 78012291 305594360 387304345 228798133 911823998 260249352 765667505 937836226 780472398 57228156 840804646 298374650 199388572 136307064 929623596 242084179 415444878 690377440 426180633 832547101 904134234 5674105 324658488 290300198 695314839 435364988 578946127 601734798 829062407 855199380 357834748 71717474 926380239 495432455 835978622 315120640 779966396 407939479 984868765 825439201 277710997 502545879 377941256 100693096 549015991 152285989 263631837 606742711 455978797 792904804 738605873 771534654 462237605 774257485 431217266 140366741 816478091 991714608 868187995 660145916 595984361 128296412 415321977 24765847 921230149 803158860 611599810 57989330 865220131 798374299 906353537 290663066 123735602 53810260 830614232 656164734 2940476 561588071 218197238 143844301 416155347 23636512 21789852 62300289 161770077 362535752 590245884 259473640 988909204 117339128 479928334 565200847 62950315 797673967 788052220 419252135 791485783 34858053 121624820 837000847 588842339 827990965 812941108 420241609 603148478 438326873 419404542 981051762 501503934 184049984 169755585 758284058 8190134 619615683 479888604 586198952 21969953 995747787 642509704 812562765 836088928 724447389 951731411 988907084 408782778 707532355 516284756 73417025 447818214 31090205 893547277 22090799 42307928 520152650 297803247 984836991 703131934 630174696 79278321 254101199 499052042 921389084 394719930 768981281 563297566 974317937 914770848 312327571 535539762 963235954 250240462 691916860 913661458 523918137 623052699 758984977 726469347 712792750 684080285 879448800 978769353 126429456 325842645 413285673 452668281 793716487 429480595 177705967 354468262 90616627 56083007 760218602 591113731 192514920 419568626 540209594 749227958 322262278 652705901 710901075 764563756 916228427 326954652 829647961 943392196 246459991 943562234 677957016 691071509 275713978 698240581 495673955 663920089 837449519 94325587 308845349 793930789 209003878 877071361 177225916 46798714 860738762 315486873 54417990 375972440 147679808 282356632 469801770 466067729 965700566 269880048 245628488 254333712 624877299 849653511 504169795 524280967 325266699 621696135 26617695 896093104 844414682 17567006 58843997 751371490 84048243 856267350 535982268 333422153 708126382 385813475 125356348 124948137 418810890 5760842 142197679 463789373 811295952 50040955 730382015 488079131 873790004 268004030 626152214 465653335 106192043 887808575 145122616 300440711 714897886 398811807 736535355 186570789 861040001 34160026 99271222 562012309 826568112 196638622 179369316 910002456 659509591 686891099 404734537 348361905 516540478 773566241 616023243 973391212 93437882 996478027 760633995 632191776 930627244 416572885 595367430 949248448 857291711 128869817 693649340 224107083 87609091 67498587 201225092 869392681 799759705 738711884 163909831 249431240 77685218 140646007 237216199 228958769 525400255 554464536 750719676 167335651 364390438 265133254 28246662 608757239 100953405 308810131 975828489 788684537 646740466 873310417 453817666 798133307 398430568 255601709 189679044 423733313 290082514 992924207 139462728 733855913 514808923 104264940 942808309 30570177 872308511 413809177 917591078 444685138 648133499 59582835 9845521 666224156 518799332 5391700 756795589 455947074 177518031 99001664 607130292 588354738 473406703 395287691 430260746 666316170 889499443 699615102 144571223 823573602 220881228 122471730 566647904 971373846 239434861 202392428 215160696 797271703 159732883 853604442 275352011 806607821 466529704 985839377 37237010 879287899 613449370 537486294 851945215 845520031 524367403 170375274 126217924 558543884 623537239 977383142 466880552 737667589 192307754 439203526 442301859 331472749 429227454 39983085 892217827 465713936 872846304 517849653 418885212 623373016 166689079 349559374 423877971 670549773 2081513 941725463 725811581 924688741 331425466 260247154 925671997 369927750 975641854 427170554 113757562 238168078 246976617 574367961 841522991 357354063 512600871 798937580 512221755 274067659 937743670 451595969 651719830 446760389 575924211 13183005 50601428 30051966 345513058 430584219 772936741 182589224 530477768 277761811 147167023 949601167 836861329 88316927 497512548 338297370 429492681 94033289 63989951 286905556 136875096 985357550 494736807 327951136 13212481 130633838 524376992 17488164 684575674 919081223 18782409 108904017 933966572 469482079 955961520 361947507 940517582 515159781 638108422 679738044 918442592 377526666 607296953 158028584 64757220 171742523 130566464 353688370 580657909 919039861 19501526 175755745 699681427 118740196 728800339 950842916 18662288 888381485 325541258 574957599 15610435 706396337 12174009 726223883 844301212 433850181 858191957 811269431 345619088 477271804 529993803 860992810 773815245 218488609 104975027 762643513 350118328 773488951 382656120 545963120 942646081 898114643 662895042 405494959 702316962 725417015 495337715 591686327 830203414 832577118 309096774 480672955 677607036 165409795 178841424 16312826 114732831 240466610 471100103 792413650 534313354 685328774 96744348 765110174 445995031 192370024 652308983 722131595 283177923 32964451 267229711 862218075 995136921 691302829 782756015 157389756 715381482 142934543 678267716 14168880 65692415 807181807 162798639 183302479 469342593 141767689 34457154 792702753 933641858 801556103 868906890 776522292 339311965 627694561 149573369 907759160 662151354 232645636 213529713 794050004 45501206 905790 735883760 630844408 309479487 510579681 659419453 237236203 560291933 184396311 874723932 368237193 32157292 994264832 169903804 761380334 823894926 736146155 725541596 504334426 674039153 291975189 770210174 804792361 289895477 36833476 378939823 828466533 106434125 504613814 790429504 790150938 409560971 147225619 90099503 953687957 155992198 44178219 907586877 247060924 42118418 238758405 734836390 272456763 708384849 395626015 256003240 339017326 557966217 675097917 182169163 770771622 495094210 892230614 905047989 265752693 917178042 350210460 921606450 259024147 784971378 728845040 856732715 899183698 102080943 244746609 5397265 616782953 337009717 952930178 409574912 511131227 289284471 148235541 319816944 851502698 429501074 647439738 327230077 924448801 849149198 693602820 715816047 722189511 829808434 695056957 743468355 211300722 903945973 456754088 23612257 517719646 155413689 21909498 124557417 82451639 620258065 485682010 393314223 344901226 906837710 506059224 325853504 54814959 367011634 431554665 196804190 696642258 84004539 235412402 446171237 64583371 681968344 7715809 476697685 588104969 225303691 650083512 54144106 960499011 390704901 139019133 591040974 494477808 263987236 190119192 250428779 594308746 440127690 241793804 633387717 292287985 319248111 705698381 452287868 663449356 769791379 388993854 441529028 634553792 604874216 536866883 669314920 477526199 423252722 464521825 337230067 733012506 296214470 365133601 393140939 339693592 652583286 894116285 104745084 794880863 413290456 163339733 511242695 708929447 851686295 234366085 498600085 259648041 284528254 269215802 39285673 872285282 211606091 754108662 778997679 392101071 945550139 456682190 982631419 884181170 517918183 928470898 608115376 54431364 649821533 176776252 402912029 956605570 951797373 132905082 819075403 567524651 949991156 651154363 663797430 910652204 62417468 958518728 957915895 69681712 295690148 623890849 706356243 473732667 363741012 261653033 220719887 526600786 499579517 536550977 377216860 371543704 358019783 645381709 404958632 43370681 312052028 32650549 869744785 552510279 369780824 669891546 719176833 342412248 977766058 490249544 635915253 945214674 162677529 2491203 125203847 600063210 216936980 919782108 651900125 262023141 663632992 606338157 202595535 243849803 590136988 983271198 3850412 331140307 151139434 826668055 359846705 344316119 975295848 204318479 265678025 924426796 953906194 853680906 691261883 652669008 833488855 912570315 434408177 442867905 258594301 371174897 484854092 858220657 89465593 867087054 274711381 464958447 578579914 444984023 885276879 161534001 734563774 451419105 795483563 136551445 538508782 56139603 65283775 65700176 762848512 935495460 111223229 67165057 832085300 344668204 83988218 932190027 189281758 443234954 447787043 165919849 255001022 169681401 726981367 424435184 420050057 720188203 706444589 668887207 418126852 804173325 150299800 519276793 232414051 801756091 181096704 789176784 301464584 800967605 585125031 704530545 975085146 491615361 581731300 6874510 117042767 509621902 95635911 854766965 591563687 852771095 362133581 885596321 789406312 587053739 127678975 668520939 986685877 91145899 724617793 665679737 700106897 782876006 403407070 294168317 345711890 899869215 336326768 599049108 218660620 532723127 352619878 95045227 680470212 588155540 530151386 658127765 124192803 705126587 831968457 41339466 534146681 744643798 452978090 581843492 37445923 351537234 365917419 558018381 911384656 957806363 940318513 98262737 928282386 834229140 455859998 231060320 382687020 881460685 437734476 815577531 235688500 808554140 530828833 981272037 971153800 454743141 258569601 562209188 296313517 490858303 32774009 404723251 215938041 553848754 686742865 156114514 958306009 852594469 836133752 128368794 72994089 686795630 978263333 505596329 623739328 765373551 757384283 309745899 8461375 522593879 44658934 274020805 18627894 657393416 269655244 20692709 731759518 303344204 414733701 892226990 379132449 492684739 816828655 435616334 842652738 943322883 241574751 985785387 352142087 762952069 618582967 284857031 695640642 989240566 136642606 551349349 879096089 550926400 707965958 281873951 52987985 870337925 166120949 500417627 435923523 682169375 400439986 630842663 196962474 531182301 704670659 339747791 962208258 968346286 390466488 97917582 914591233 165053320 62576364 769245483 400703101 196581256 862290850 458317900 382953384 532828670 713027877 576545784 837496298 471825560 794269958 382273416 786248889 673180587 187330411 753779225 577770332 328718412 607679035 544872993 352596032 513351828 388309249 510793421 12894954 200851399 427764498 826156797 964276763 780173272 291019256 275602219 681881640 3735576 94588800 367791867 451110038 506955109 313075844 420357963 199003840 819740704 499085203 682678249 990563413 297928400 399277630 450093967 177967297 347143108 406325282 949561592 408477982 222829296 136655255 446559020 411374341 569730071 89811001 660529385 732116929 873388121 388064477 674749921 999406239 524928010 736207281 448172735 855517201 262034821 766980508 549696884 207050914 821900983 242276683 487575707 295471326 577600418 195606915 104760762 893916950 364980782 891422218 425040154 711176478 796337979 43768438 131196196 888299289 638503331 546519885 484227124 184846230 114725204 571007992 153096557 728022621 522134607 552113163 503159057 720337802 664362834 431702583 249761062 643774033 271313872 769454104 558647705 361690865 829824770 823528762 90702601 122129985 128550628 227022428 38386638 759955681 172849166 724711267 259679886 648466194 644688719 481698668 820750408 857311650 623208133 392078249 819175403 192487484 789547307 133786576 505377223 304372746 171200574 925272718 331193504 54971318 968798593 216181341 869491688 684456192 388225913 633324952 51861653 333062307 432060474 336464287 425922926 456051633 992543532 59778421 40058028 864379449 994565026 734501772 695347782 226787269 671739279 51220461 11570394 116066782 720285497 630830269 530797209 712819834 68067448 456403148 622475049 931383587 180595796 837305204 563619325 608973921 191836025 299918696 541348308 168888797 480230790 448515495 462459633 170537223 63455434 696773808 2966157 729942048 426830997 118952747 652037640 69932182 625004233 477217395 716567173 60417001 482576345 111718241 627120591 588274065 256420449 109864930 915728994 321846794 831641698 158383125 320408000 750325075 14488749 716737302 65290585 470132983 302781569 59078619 209452861 942809740 72140705 935827307 280955982 292437663 479144227 713244184 549700126 211815583 124515841 958079419 362006878 174087455 462824915 661976600 840566134 182382715 841141522 560706243 785359294 656034580 363312281 850270805 171648027 294729355 964110070 866008610 424019019 428308146 273461319 765428728 142108303 704487764 883189681 169227181 192140367 461194873 19204825 986793591 974262794 949973363 61557656 963442056 266416283 59848054 92350154 248128764 217055588 10316805 5344896 742967428 842294210 508280337 311423058 419728203 556912526 155053031 506169255 891577387 637756523 898014812 505065904 322610719 862119654 367944598 441293991 717071482 876670473 960977560 23092419 499927506 338624675 621920699 669349037 489679471 483367710 336639544 497830069 142812468 13553996 368663781 494520864 784584781 397152224 890765636 916520875 62177362 864510648 177362050 185734789 180118171 591864022 775990096 330260869 571033372 569312818 858790204 111691409 634311097 193033112 454394952 683217938 914893535 149622716 547447103 690050546 318168982 934092727 25330843 100017994 308528851 456068504 347148356 227658196 618131345 953142271 444296436 260123827 533503256 947264430 510876112 184593173 973587303 932494833 799384736 417963569 171438063 992254387 626062149 140778205 985200268 286181264 351846400 136540146 53181550 295164730 821752118 545457103 635860557 910980930 331626044 190829309 464752660 269339708 199114042 223446609 807810802 95061817 748233278 432872238 770194862 981618592 685465989 15267608 384057348 710116420 269776084 272373542 945687809 960990868 397618195 208274639 745866446 408269741 757919239 873005327 118716865 157108973 165389362 874902302 592019826 268996412 601619682 863360861 878866653 7437757 920143721 567774243 106375434 430360560 538759944 135390994 110712265 148027476 504257977 303139982 415631705 868437089 940732005 609643541 164949159 138111238 112843154 358837784 941906136 961628905 426307141 389319832 348207365 866649566 698270225 828827413 690479388 730185013 557101084 785254815 111347318 618808733 744447724 647525594 646342063 721499602 802014038 638299886 60398424 605358405 796923012 831268259 940320861 120344674 404717867 96666416 449538150 727517141 884153842 197296546 879125753 195685816 114742584 44646717 689916216 479990861 993046563 580848968 774699656 749188804 807756661 752162074 218743135 991619529 984271318 557067930 532660364 964880196 56773616 456921801 444387529 364604333 303168359 507331982 139508246 48238251 9109736 86689847 566440917 385765416 325577425 749295931 416163722 460496966 636500636 82793536 442246158 820345909 248496408 907735016 574655112 105578360 254794114 754017052 847532741 904663836 30242571 190892175 194131471 153964029 757592736 863749743 807397800 471816116 546651292 772564290 495192708 57772642 117414727 56097201 731015137 849137004 573829057 284952769 168088310 185227446 487535276 800614901 551709170 169875717 107103143 428047431 870229887 820181492 652051136 695465435 888866103 370765903 403947615 191083451 395176109 321169630 222270327 774993483 800142472 140815400 146145048 704246452 727450665 530189299 134141599 182466216 272072246 784800156 584863766 980568921 429210257 319148570 81242880 642908403 456980448 432041766 405470101 804767067 398106801 796333087 817549916 326936462 404788488 670178453 21770945 620085003 694003044 754974558 803555335 786490705 905189922 679541238 546933779 281946161 171796196 633139870 79049017 447353882 983422979 221301187 147732781 629027625 435619231 233740603 242923075 489673626 526298255 901372298 358500119 426154346 903195008 330556721 695506806 405386283 539493595 116249970 111992658 347491089 597430217 909537013 180354324 19878314 933745872 214317830 85893388 822045925 234153538 614557134 861271334 176492615 844148688 110799903 578652459 894245526 192402922 561530273 633078133 758278444 453943946 506477701 721142723 820944265 651007650 892547418 748748111 111032699 556021410 560309549 296558167 537363311 29306098 491552839 955273291 923025943 689402557 653038465 49553976 800682918 982696883 449847370 156189320 765116473 515574777 14743050 933491282 912789093 531235694 11482695 399767843 547639496 345398466 718710604 847326441 588440168 167398820 682955329 617018129 114727872 211204456 295878988 573648778 130054816 423042821 813502006 926888206 253657866 874853468 732100411 214488597 585971818 169414650 361136912 287917734 174451269 152657051 244532840 369919215 972693568 444130832 325721539 5480143 377366210 865198075 809594511 930803064 258846026 796776090 198698237 329006105 13869634 704198694 549169616 872217360 917833047 236859478 475299759 631392287 965385733 254257983 904476681 278111005 162714516 742241886 579006980 822855021 122380081 903193247 546423999 940198805 534445737 596444980 697851342 558559816 286866205 350622139 162807986 998613427 263375704 41948406 381623780 298068081 836536748 324813356 191498872 791769582 349386159 814462438 143078739 430545234 703045357 255312843 163349134 698883699 922614480 696396746 980140197 356206546 993824642 408728481 44718197 961879538 719506489 6445952 423458855 148967874 850799778 455874762 992361069 330576952 595210599 146571329 176783178 806347614 21610852 563447286 470201512 135514606 610078779 79571570 661801537 707473742 2393809 957462230 64908725 413961811 506308849 578705333 67363394 897523250 712178530 388172878 786844885 955460594 747780491 596710027 605218029 166796580 301228431 330050743 125262370 579786203 610773513 898133966 732317888 72481513 24946360 548926902 968056958 487600301 332207766 288034810 466303565 642902740 990370984 763177393 716651844 531038671 63859732 52025306 906394620 61800875 816862437 576959884 705203399 184481830 763758734 650641050 422665711 825559437 653139456 991509832 937667584 463272590 561664061 603788947 235251785 133097250 909568142 724404400 649244550 589537219 10536965 387630762 566543170 968241406 640698014 69299936 594849544 349475035 655937381 524423420 919604559 161055065 130906162 909830940 10421012 424384631 212425689 284694316 623046593 721063244 864769842 964815363 962851492 627752925 471632625 884311584 443268336 649596499 237563531 279916959 438143510 939937224 198678048 727036751 536812410 806716780 8779039 750516774 958755487 892427946 65479189 300055005 114535341 564304211 368380536 764713578 820828615 661810129 807300460 152556052 672862156 530167368 198981247 398048619 32749028 199654902 980076562 457258647 586582874 672302038 526390389 366361099 120191462 603607993 73748742 357920527 723450086 408567999 441470736 923029685 270549721 116541644 855125167 561140041 245474666 250096130 679750600 441167169 234248414 25353380 900134421 804984757 34094819 524177520 4609956 802699137 802976681 375366533 843102188 438209423 130561782 884825067 157585491 835238729 544584726 975700177 827955793 746623239 43356639 847553291 976347621 576557428 396671449 943611551 915418433 785201063 816753352 97950583 916440176 700139426 758382326 306686261 16421610 81682937 322466079 155735901 750605702 408667685 383622625 609497040 385289284 548079061 301992188 749279607 239256245 571585731 291528355 182011300 102759887 2802131 574144423 103134780 645332917 257606499 26538226 603916968 156261849 959472527 567917288 94034373 12291980 404841889 812478064 593459093 183789524 878697848 696352295 681938890 39991324 480418973 455629510 2681585 73924065 666933124 351542807 666546634 556302062 312011577 775881038 470734576 395204735 832104389 503770035 378921412 306192331 287252001 82778949 759254713 977322604 68974833 842377086 498810083 577046811 554729768 308322398 919920972 880818759 861832304 737770680 12917385 129818005 583024076 169617759 703229416 312398145 803586314 171175945 75428495 294944872 296494964 280519802 94942233 499864445 117567560 886770106 763748109 391642944 415000836 836512632 42059508 5231759 812024073 285181665 669474743 574973558 383091969 358520633 874187936 25711088 549056346 35593128 867367303 341564011 502386307 490244191 664715245 353608090 679078584 882393678 492366572 990390454 465784821 416723634 317988293 633108615 979365616 666690032 435948320 795516510 180910157 619541940 287443410 765209300 897130265 881944519 787915264 640366113 746756555 822663728 462216687 833051052 339606785 865442905 479650538 672432932 197500856 790349613 753764785 339090792 51462858 33110961 98914671 408742923 731430111 189749160 977200627 715317786 987537730 52924153 779199543 166072408 71403524 860205863 616834247 763727578 932004846 692656848 399502701 507604705 799818195 491693478 492781989 922200350 236521808 650285092 289516201 745354308 32370689 988018494 505758619 229013839 447683416 712381579 748047055 340823792 923438952 90409687 762144630 902375363 396034443 7928418 977819680 937988388 929513126 834443657 241214534 994840517 633538242 91360100 654230274 455983795 873639405 398020689 50214522 241461603 106554891 706924947 968346237 800171313 701586216 756171950 942917155 53344037 209411896 335863386 834831484 563372772 199789847 52040433 417411326 604447031 135473222 525922994 855552391 11652357 429742148 531536480 942147028 38691789 935927840 625499109 428461137 432429368 953451134 312909617 85900216 49623720 101450135 222927904 358075892 740190198 686688977 88461881 153775297 268312901 321560041 755922507 197229055 252817450 580491771 558485573 199559527 497882303 475813277 697959651 811980949 19264269 723937263 221975929 276663415 663476304 616036868 560045429 253834881 263340808 723841826 964110501 606739340 788621025 241168144 974052781 70633992 319551035 52445828 409427762 933899567 960218811 927971157 237234110 290154759 425310203 102072738 84641250 785633053 670957781 532317914 397565772 243376714 651538931 746025606 708087079 897990899 640371162 162823323 310037138 177943653 454247446 496892535 846177504 704835854 581524694 135824300 906132838 457883117 67991093 688833700 434975092 135569575 576114737 106157813 410491743 593232522 180029324 311911862 348533169 506583859 358868754 407455136 77826663 17321979 511550292 856321517 877918356 716538953 797944187 827599383 665500179 946248201 205504824 112910001 326588299 548859043 76445237 441509370 339074627 386760721 25092585 476235632 940908712 498569642 277081518 826821433 883447209 216140551 854407930 482295234 555643063 627583391 70750402 333935407 703518864 464780791 177643125 560485732 451302570 858076997 845844026 473383062 456250849 583186211 382713239 256849191 247407229 492209820 519715810 695563343 863255112 998441732 103269826 915825640 502645749 195774030 420602091 354938326 309161053 244839046 193997120 100812867 967320529 408998922 952436634 538224337 566209285 152445072 465705985 781089297 74263417 551398518 317019679 741337206 320146014 283533951 763627114 19963490 391818069 594603781 127040428 382669285 727855075 209358835 520863483 436298525 998822485 889845115 192987394 171628095 470419174 17519819 371343325 436654524 16286279 676164273 820698450 294624964 268039468 357784081 252080373 756276828 405072136 518607917 997037149 287939682 507809513 455523964 700712784 888481358 983621796 637621547 83931027 584871341 929396262 937148809 592755215 988591468 883653579 628316239 797800446 570361649 964959800 458034080 602408493 161251743 82219828 940971672 911598812 177360053 545011856 785641263 577132496 138498263 783734947 196080533 255023743 48493965 861914934 680780112 871557413 959471486 133494278 948880173 559286749 51207033 864152883 645545927 119291534 259929553 907023918 485598572 356597295 272118181 349454142 545384148 73865121 490699676 982695945 264691135 338197582 436014887 985648683 996845458 270335562 516042760 134410825 511322914 436580678 978650079 360518664 303472024 544392081 837662916 77390430 365596556 548946862 690239736 681297666 733373950 527842836 330539224 835283379 413044268 221690877 701978991 513757277 444324419 39174999 91691950 383805408 396778116 446963596 813432188 987199680 145553656 641727807 208460090 672673071 683957241 685905224 321693549 404772908 283694975 90433532 174353810 922499518 408981316 657257145 991584012 807609536 688700126 221592834 260730675 925470738 525636657 279727516 60223211 384376740 635380281 212418164 363751202 370970798 755713153 558389750 802523668 957382872 609371383 42430767 201997793 895417322 127978593 140095072 16298814 786312019 567584567 45544865 711897551 328735556 928106845 681537921 437937891 374143186 605503653 313983200 968761463 250969683 766191362 883726318 304314020 697105003 901907035 628147573 523601126 132341997 617458251 514083351 933150670 421805345 136950561 782685027 474287345 695042775 386708355 491252103 800550958 519760365 614494542 638026988 526486564 214013165 114459391 154398449 575484615 7522707 355147456 124777943 568034206 648594199 478136297 907995817 529207787 304755634 829139325 703946368 738528450 964791931 751330669 267423297 971538648 652851311 36675848 845332964 638949808 945634745 451612524 357678508 218901980 340917629 609408915 56208743 602749739 638088649 882811483 464591138 61462373 985228578 12673135 843737228 544981857 476549361 875105666 333547807 967387789 402966537 76490414 327283725 870782497 50994962 15702813 95307691 720057831 430322881 436668819 25619566 959133444 965552722 969351966 903670910 700548576 381231621 291688713 602451900 147240852 149955546 774966965 134740154 5319405 267433791 13686634 240285666 187179759 866277761 983294617 708276794 396945564 401761627 268642054 453935872 940935150 705627102 705532983 463552337 819712216 499238709 871912331 637442606 397203355 455670008 790562286 386861175 284909401 95550457 109257923 295963186 510736978 383478174 976282801 335445044 203733887 390901521 806325264 905019269 792729986 724496476 977031265 563557385 959586356 283834459 213213230 644669015 744543275 917979765 966307082 511876372 293516740 557064448 256468306 742570160 57794298 834878968 981138166 69690535 650856912 866624682 446589256 633740819 643040652 260887538 432662867 623579259 623273891 949244138 848990346 716903847 514906670 780841210 888188337 988788054 32858828 76532641 209825677 297814069 873485951 332962287 646483779 411715978 332681740 463245039 65454348 141097531 392387502 762204834 753983403 332122149 783338659 846343920 488026642 73484901 516255812 852625170 36807273 486684676 54088934 553918035 336262997 678748561 444504151 495403150 796639994 607381037 312481425 623138111 341933597 904837748 898952426 217110285 756356833 811365626 705810016 12311762 926846891 416062296 271372198 553179043 121907711 378694441 521872328 17299297 825316580 195609794 124870856 584752061 47181774 612239705 330739433 166304327 617861817 4738628 973746713 438412477 606814037 790815525 295703604 201427576 371605528 695119574 937310184 837277900 673572834 672005166 806879014 810939936 721570123 142083753 555679158 308425289 850763945 309393828 359467010 78159635 614822588 740843349 335608058 885019791 989714587 385568057 721143257 762317687 343875304 551549431 273956301 776593566 597670175 593875991 911953144 509298825 476636808 608932552 125565972 937451614 518654095 102505893 346594074 80115253 417664285 375853118 873449039 311447486 830338720 353294757 992360990 304757086 291012239 798272223 221032125 535499345 463279660 398016642 599306957 815841634 940527036 314816686 700920831 161483093 113421345 172191210 774221751 126895784 846895816 749201130 493620538 35238177 44872318 371102349 577722225 49230842 631507380 663112695 486945487 944371001 245377361 33017662 402070353 399126631 400874728 178403141 868700748 485813575 256746374 201342113 955014311 128967016 320582569 425661698 958051968 287520893 964425554 281016286 848815668 472963029 863009450 992976875 568885971 552567544 440684835 276845273 162264350 779595715 37922796 598799283 601068537 948557063 108112334 865437138 476674262 135152602 125462244 155744068 958684821 858840553 488170795 920983494 296533272 566419555 965005697 18491357 197896651 396706227 295980503 855544627 93427609 685605504 384061597 757315984 368888434 42471982 437649105 397367035 918894564 569859485 206262147 81118963 765010110 14443295 911609982 538733604 710538423 764928084 701757047 22455844 952699246 58714365 494827827 332166488 872473212 229144899 728237731 969383456 627725631 839301386 369428876 836765351 444107640 957299276 543401222 347825853 780174883 243814946 26006930 718062148 555341556 121909621 729733655 98356093 278415156 66368360 999694637 857098584 830740012 780257326 258353511 935879958 909302193 852980429 248468017 858256323 697884638 853507454 401619833 427512229 164399615 885999434 532359341 648839900 555796323 448853229 694806639 340528799 956122053 305193202 926516538 881693594 750414181 697101561 600366457 686592768 327362115 995923775 476446836 452098283 481229084 316310327 668877832 244746180 982945640 460729174 984737311 116627045 119788785 695103096 448049694 981394570 346172446 550403271 47368862 394089180 588156524 686909272 407533344 107821714 715448948 64310249 453731851 712767555 426038662 786913410 24234108 47774257 136712734 760131182 625526784 235285163 258722581 606608555 657170334 888848458 253906579 624822198 947749977 146213929 585760552 446943792 582846904 849091780 701988208 505822100 853206012 596000479 694433731 855276765 649565369 376916472 90250310 970607740 902106481 681078819 688399295 536361523 268793405 654259335 666626566 804582991 810282467 355852422 323084487 800132362 274559762 387359983 219429659 800789325 88795158 660867788 497992602 139550120 399442541 717948919 473186037 649351297 966787708 954782213 41327717 766292148 592374262 675220995 957529202 721032510 964278238 555049212 55358959 186573436 720898671 919875554 729591203 629766858 465268119 449559973 645674293 518561200 616696551 892912058 673033092 823106943 794176914 991521642 704841582 137407856 981811373 554859416 211183416 706841794 759089784 250850397 138321004 993162044 642917744 514452387 643167041 765564880 407039598 689795763 525739752 792443366 477718165 360029736 2753768 285835773 365211076 542119326 658803376 470961832 277793414 937804092 2464483 144700141 339904903 147101877 275818805 470250797 605389868 918763608 343806558 965200448 379922258 684441469 757678909 204009031 853253396 983092642 842859882 524155008 47658632 628009981 207053722 286704213 61326958 836566877 73658478 850432942 883861753 25869687 173720177 843914693 127586463 271634130 786737870 243125631 621751969 286006556 545284610 191279362 671241872 391403285 695911542 706620235 574371875 469265401 417193721 645524233 985983300 266215858 505264887 779114853 952243465 854914305 52262680 328765243 676806562 502933138 312347863 969726930 65071085 446976379 790907357 322952307 519631498 218310067 552053878 305497335 307985246 845641595 600161982 808211410 380002625 644903749 774805932 684398225 10152423 389811664 318155931 127691742 185376113 32233780 126948264 37676688 390617509 742558790 671971434 12225359 516921031 312239441 957751828 631135017 115042105 795851377 253031737 553707567 780867799 47498399 297128195 490503691 773336625 352528083 188622656 956147496 789894631 517227329 597576772 301754563 746994819 617230394 606997468 796962502 491153250 715325409 631762126 962242652 352645836 617971300 392751153 196879325 349274812 278911582 84290585 612254276 639218677 768796255 767815138 420731895 458127788 503181307 30738964 587098084 805161692 825532174 793078763 409667763 892726333 331568756 873543314 141739181 740904550 453729117 357696514 361558413 284664867 323726107 314820912 362300978 988565911 743263244 632923955 464812016 838301304 203626388 734946354 645002149 74769148 602025664 983010776 631127642 557233061 72830031 65368276 300505436 832423512 807312531 543217488 159328210 87990650 486524886 584138469 556143557 468187478 437046813 176016357 377347544 702274535 548167682 731592086 935228418 354355168 282751920 612419658 769901089 847762089 436269317 738533204 813105751 228901133 499464021 485504319 704749349 246879962 312245776 914246942 63278861 465634590 749151086 972265227 358535206 66317191 428458892 297238235 685689793 369174167 589467271 725773182 913903331 106213643 320150297 404966350 809023039 506665083 423112167 605715154 167788810 883518074 500416403 226495798 247897355 751144545 38775909 541245181 772454878 950068817 856084968 897541237 599509869 119568228 230334693 285851723 366518593 825621557 673103918 862012667 833066915 319466976 804301014 552811503 673854467 205247651 727674995 492215675 827496159 608226722 87012492 831652152 164901849 923866779 169597005 510423977 795830088 997912562 700028378 192434439 213052120 422733029 949042635 815123048 72310140 423675358 140830222 76320959 324236205 621315482 952781266 296523908 555661956 990523451 654866741 485631376 382470147 235174147 708941267 493601250 145013268 912978422 512562523 374001286 763799940 646726075 537489905 285294557 160694782 577264687 842878995 725367232 543360229 833952230 824158586 606708780 6704668 495157229 266611760 470595218 19933984 224700854 431856496 197638800 878472562 389618422 777755643 305615458 821246336 182824939 897800594 695349175 708367104 840842703 178486483 668183153 929914931 411047962 857643478 145199615 566850121 937043237 722741388 226591773 38795908 708629394 359911445 628673012 970616842 411165965 442907227 917275258 298714865 347410425 719694683 313548785 115691447 980776 713700913 723602538 435391255 23247999 56445199 968691580 990354045 674187075 290742059 280057487 437541416 687995816 528233555 308217006 460359408 618864358 636595284 97813213 176096944 195187069 350693898 373372778 656610026 1772575 185602585 711494762 810064314 653520605 423139515 676278280 769325104 551748903 679498301 991365874 222967924 546471102 847457969 824290707 873346357 9509221 174681195 189868916 742078048 435396080 6216038 723662708 8040339 766754548 437869811 420694500 939474930 464185446 801512763 551968193 333085039 950830085 432609051 377262120 341725066 510122636 334599947 980269066 440483163 90751209 156295006 900714393 302661724 162527670 428035404 476771834 643946011 259631117 382664866 919475976 17420576 919176651 982735873 407038367 547525930 680905181 237080925 856129536 290576636 550284006 906363209 95647526 687180832 301027605 117031188 695270223 291286410 450965436 697047482 833911332 905304214 827050758 430697710 703977116 283637952 554499046 369918545 127488510 364446635 411310311 19230264 200069714 98434809 628841698 431777254 334024578 810360618 871231184 205554052 964759780 457690321 817315480 202012936 193847668 93963788 383441034 769689735 232845443 727758290 527353401 764628009 173719128 311453741 209504697 130237073 650107521 398002829 53680117 868061812 369636505 399806694 858105496 453696838 566377550 633728078 614889102 715231781 428740690 953539271 33450675 287028083 230615930 950531092 771483993 731023477 24421864 17862356 680096282 44373966 304388239 929994990 558683943 143631178 768927429 680978492 337237157 581191039 489552682 169998125 549552642 304809605 747076769 176908656 201943074 331629326 992525186 312912610 79679141 320508966 19760710 679985245 797007074 299389765 953623169 40647672 809431094 876781708 476427687 721039348 282192431 563440556 527726643 72582665 453142061 614294496 209832049 636453942 511905058 795435956 249817022 762846360 873402772 29434487 765963071 350023463 760926599 31608744 666502445 248501689 958998516 127654622 724628633 173237761 776329992 844363746 477080120 905295904 942881325 776629680 828144705 122568056 604306134 851502889 75326406 930907525 521276273 117778141 974002599 198517201 676088568 85179517 460132536 941933001 242033511 829973699 202833204 798057307 843573293 938571699 35129900 320606662 800217566 945934968 647361567 144391766 116192354 76929052 962807847 540668850 655360294 500729132 643335759 894757181 275686508 430520703 64414154 990003927 415398051 510639719 679608701 91220279 968222380 138787259 974817346 483885088 386133009 777059212 641151509 17020720 355620742 706991355 708467888 370736479 287105368 503545362 255223038 758407795 573514222 727405167 467766915 411178250 886566196 37826596 523620584 819859773 102986414 599745942 600415498 64896345 292786482 979505626 43025438 393944859 217332125 547594686 50520217 777340106 645209046 909896907 342100789 240115298 345457652 222338505 259877469 180725691 175255307 519469183 13700697 841347066 501940358 41964573 358306734 371305462 924984356 476600686 819310699 323284602 410042801 945246018 351179679 403879526 852397875 398872827 943510873 883479644 701459935 986732724 667356966 14679870 936117486 305328601 576065098 989154160 721507811 692090047 209689641 849430082 859026818 303151405 612898879 239294706 676252857 305880818 293468433 939956943 828116852 9521724 297170798 640350749 999077523 46757328 763122653 91197880 620914271 964534118 923145629 439576491 415422267 187383729 584099870 592365937 760823405 680560749 874805151 458198325 335453588 400836509 559320747 871406427 875320632 610003286 209004743 336425360 930984975 294053320 966444417 940409469 451175527 696792182 616387006 753018498 497012525 497167017 722348901 405788858 517670373 438083026 43690199 961413330 474891243 94466421 83705991 943346066 768308385 333605038 469219763 419068276 317270130 123483817 303164143 215225027 127092774 890652740 794609920 936580185 358231902 995990220 389223059 454614391 844586532 161289494 741155761 275610815 500461680 535271109 907378461 517745838 344892541 703377233 513494430 198091784 11123025 664673365 606063074 107526834 244725025 590574182 134999565 580682603 285020684 344330652 376797567 598239287 163068932 340826254 155224802 554356436 799825824 595248408 866693879 512557156 487536725 902807147 625076880 436191403 766341968 800457726 576898009 57027036 551326055 568774863 248431275 797363780 604710734 310226380 918312787 260986198 177068916 684447659 91037824 480270410 133645560 329619282 697918482 690326998 834274733 985205486 207318807 35293450 981678986 476952263 328857135 133721010 596318060 92846943 921326437 746920813 145147848 968095419 311992494 149727274 833965066 660525234 796239665 223652834 552596483 758213536 599542010 533082721 776568141 710001725 447367874 915844155 929746325 372215042 997691969 347667589 125210823 882680796 628130742 118510757 776958594 473126204 937975968 398201746 900458379 44860732 731666808 239926286 552119779 49736591 970726683 451424697 393918592 84335639 971540701 820459701 720823609 853561794 864849105 303809634 287250617 924663551 360376730 85534868 96511120 456951237 975388903 569221218 882437941 36575164 833913446 921197341 86192075 774148332 693278935 74848460 487514755 882570335 581040001 316738925 608966634 683305247 39734517 78944448 92826119 453432171 305923618 605051884 546649679 808806721 512020573 40853411 281175753 807053798 140140408 88476356 399910726 439874554 923708349 33114685 71134992 7486099 140360415 307010205 124108480 133977553 678133835 891597249 318366172 606741311 423874606 937711436 820709132 749506767 639301958 322294207 85669953 937901862 947345791 266756624 497394161 551290933 56133211 649571189 858730765 686981865 112166113 934718391 864145084 736439262 582714759 428435273 549107990 335087561 287641999 9962451 346877592 482905894 361013619 270767596 594135169 345280711 539951389 831692785 606124590 435880923 168081056 387961512 845440489 768305678 72789729 532254463 63450738 677594553 76034109 15026902 478079257 871190334 981837636 172979396 7704221 545537461 438918852 34311403 952960117 898982775 154293421 746049718 638924868 761808347 114578164 587532962 373943996 868188968 150199381 268394723 630838996 522595012 863383603 300655293 322096672 955351949 780593215 289280795 804073320 806290734 602447197 775049437 664262633 753238399 262368879 93923063 326943122 923928871 190940390 308170856 25996948 638730147 31765905 203330003 109062609 379548877 918830888 172529672 894366807 728344502 706456092 222701251 108711466 277727547 152356344 908892464 472366054 773772913 699390661 961779291 314060946 813452885 724469816 107792853 56297911 235111520 695812492 491890424 804758878 10240373 823446914 753771325 111613056 700567681 816911747 777271515 75984201 875509385 682801436 993057966 468154480 535296604 890693848 273424337 123109202 314355797 763218992 794526497 478024718 332334238 447256534 81224534 899860365 546174909 652288440 725577008 53015526 500172066 575573588 202295050 566567890 947654874 405789433 529904736 479867743 221730498 623502166 333548569 291960213 954465034 561509927 980323286 645241002 696963060 49412765 763103502 991502579 269108524 531016182 472696937 317728555 865408881 72078214 797110645 906566243 961348842 681285123 353716647 128435396 245093669 902784196 660556077 893658923 883532884 245232630 787889880 858567653 339252724 631327345 435604290 574051772 37055682 379659440 546599810 633007583 147335704 406116415 321707791 945055481 416677552 127182798 436230672 845670272 763421449 853302210 577150116 390419340 802735006 294870055 590974443 768568572 81326433 955086905 96013583 298597478 287463741 750313187 634862503 893668887 680143589 579473843 137087439 882408778 948056602 633104960 342618553 231805108 968035785 944355254 394402121 248363182 991621562 976010326 249518045 574707215 542863533 237512630 4075641 352143300 571092859 502581849 114553187 292917902 569648898 802826992 417949932 868999017 132467588 457323259 331901495 161845283 577955842 817584679 225019786 649914492 370959532 116146270 951997673 624859047 902302466 457840393 16285461 854622183 753272326 77507358 96130047 826613364 977480249 760777689 165738675 773055789 60213890 491176193 838521388 863701107 375914565 464336045 142572289 934712417 484179662 226834651 52969770 666213961 110725400 830605986 802523345 272061227 999910479 9240932 214936408 48285227 195099751 129431334 737787569 560496238 384528614 956400898 811080005 942824385 377622262 758563224 637065591 704563698 281513012 35390703 380789353 299381720 71173952 609116653 181727310 845693538 698867085 692116881 538506481 269419106 403675503 221359413 730214209 868815245 366099560 625289319 88576547 457570583 160237639 463698178 531857411 810574703 206178856 11541170 895532317 942269878 98057495 892902030 471696132 15767775 861444828 319398995 466755944 543086959 320533912 551078732 372189603 289382317 965845808 162117319 943263179 163940142 889867599 380610907 619275819 522429607 134788335 927886196 162921558 313893142 285725901 954510715 742426048 708056973 912018509 523571652 943967378 889949867 162885555 80941752 297809952 145321541 16476430 199941295 978375539 272256049 88299005 958249340 691221430 4700607 488476645 209871454 287576337 652574779 904176489 168962306 790184876 314986903 580813428 816140227 698194116 600759098 227313430 22720764 37606528 539582905 871829771 224722874 879406948 847152656 707337300 721123642 737283839 702635230 88139168 952166074 377622555 811194773 726127582 958707497 265985476 948884347 840249156 634496626 179010472 767953051 116009942 735468118 701791153 558966702 550816418 303772410 498625660 436625085 991370799 432412143 187587075 894598295 648402013 903233901 632750116 455417628 170563945 398779193 707509502 171157438 830901717 753683982 159634683 724073565 465998746 967866975 253707921 890673568 583373593 645291903 328341292 410310975 452632538 314887740 247776256 522027451 413649235 398657820 154843799 973744184 619980887 18128134 879463239 971756857 396506159 794423949 83323416 558278770 377984513 67577562 404993487 905052360 157686493 213328906 552868980 887363300 199558686 255883296 812276625 442203936 792936418 400927285 971638514 659280788 620622497 42268975 494323857 779871056 142324799 750056144 837861081 391167769 20413520 343116905 294215486 840577084 535565962 750613268 881938907 849657922 378604402 805467112 233410782 518611820 819354930 166690433 754730142 244056014 301779136 813802496 977809145 296070227 232616832 122132413 548396394 124946131 709819089 307315075 794489659 721155290 465206802 369971948 608153714 124049649 263929150 631713697 276201 580928815 794513698 201572838 551158531 623971784 245070797 17469862 439947008 45107561 97231901 556054969 670636600 573344266 952280276 340037174 112614251 789796629 916511458 341058638 638796008 428437505 136958609 38267834 16845755 614921535 762117280 296056841 854071182 712362614 359354938 562961124 80443733 437916558 943003488 44475930 472500255 840760752 222134060 927562106 455442251 637104368 559485998 824924751 860576401 662830630 795031363 126585807 458761807 516164429 258714821 167886784 734588273 743014601 544823528 392069450 699591541 520542702 983184275 989361120 20783658 420003042 660283634 7999648 326065006 679062622 359709757 650755326 659255488 602491798 192096502 604999431 651633240 53630661 901532762 662444032 151553986 716535812 658973135 413560510 376282865 873797575 716873566 532796264 343839418 738094209 601128508 804943228 790514219 552439542 410799774 319724098 971092875 315697884 83346788 467726761 326293965 370300513 996874426 752211630 494347729 578630330 889825947 794685807 30981817 865003156 697118485 773324152 911662903 320569104 417656431 609458987 22311039 588131025 835343022 893983652 308103806 837896112 831460117 812516283 523525519 506022665 298533120 546498802 96637656 694417168 800512089 130073653 212800317 626140132 619542333 813936692 584703856 739305868 697714838 656830398 686598388 605443179 514157082 753366142 560372789 230103149 777114580 688546034 715432610 578055696 430351549 994925340 922665077 430293425 422420478 291462783 735566284 175256537 567268099 519989417 412738730 900318646 811156881 510199550 100227428 386741456 652591796 424274787 917732744 56169231 645483771 411879035 619083231 616551424 556530866 327382710 749143652 524649662 476382520 806250035 81519737 376280097 399531910 292893395 344329626 497149131 320831400 235290492 723173115 872220107 144081727 950570823 345730896 506046343 152074993 896783007 794399549 317943162 726046594 285123982 444191341 311092514 361167004 537620486 948099033 949608156 43118629 341914743 759154085 656182262 574735327 214048778 651426966 50856992 355863418 376900703 335989677 932359004 233850186 134488676 263711985 817641263 906557766 790209080 749898512 725920034 790069433 146066986 279767112 692690363 320668803 81437082 1454664 934538403 79552021 603866157 94181695 764610742 771169036 406373312 202660723 31397221 134244558 367808552 755992420 966008504 730733320 137410435 124616181 163778547 139938937 341828624 892591610 913486963 403471010 725040301 932337592 328444355 134572028 544830501 770768817 127843684 684392020 700965265 992932966 846357740 749196363 938186559 843688727 206023232 312420161 144647194 825369906 648246751 8959397 744728176 443994618 940271431 133446947 89368765 653433210 323229268 879489707 793044004 456942232 50428263 536413298 706802064 791016043 816668790 15687415 314668312 639362529 25011428 291209801 483031342 138393285 831566827 652073621 977860883 231370127 679540502 144101698 938324886 942796932 43461277 125863154 131374335 693747890 379360930 506267274 95568689 17188150 855879664 924881119 948676409 606510673 719814557 274593559 487706616 591111353 276276881 908129987 354976194 341158067 255141332 67750699 656459134 92002951 990471683 133751078 731258267 451951745 668104102 233104131 847041166 267049492 14731978 390850008 699910035 565178126 266208210 289056132 181097465 953819518 453062138 868612496 658661822 284090207 391459083 269117943 280943084 514676191 565314813 895866890 4658990 523078863 449930551 367734058 486385712 736528237 228405265 266510084 506635249 447288109 528757861 550433300 17708893 727378379 90522435 647686485 426539178 854111797 999743216 456718953 117973331 126250094 458534855 24128649 459747528 391896482 690224974 338358079 983990615 489626255 614239808 682054863 669733561 90025098 667845458 954152051 319706387 385171862 475202960 961179683 575806681 927265223 722430026 569010422 654108787 529332796 189725908 439210746 108759479 901394846 391933354 54614324 273331772 149490771 126419807 604372872 891139695 609657981 666968163 453730513 603764643 46465296 612628270 775219677 292375977 462962216 432804580 776388351 396534483 912593144 222668214 881202954 285431132 38229919 572429488 693585529 281266883 495955456 833521553 915202982 240877858 892927534 241759544 593384657 350733763 463516358 471612078 16744608 592095778 579884706 129476785 701873041 724225000 123668496 967039071 161134696 117059394 660553040 681427136 746211647 998406489 244978849 198368140 102461544 619698982 348517071 567606191 372168479 858442373 799538617 863690331 370406681 442870775 940929676 815040380 117292073 294619510 366813759 466660541 505596216 344940765 944964678 327017382 699705231 81474137 991462446 836622762 823094411 114253570 276824147 11310401 836236224 819715807 433557194 756233244 964964739 611780965 30109222 860508533 243029221 643083487 727128324 115395271 730918709 865170906 634161690 82243087 733166324 762506626 610356407 688918739 292674638 756165239 927207471 823878931 606912887 988100085 546129975 181839380 843380905 756107228 252141513 361732386 686648315 488815863 129960947 94808015 663020933 269790975 236133395 68530876 167925923 889042779 338777031 827502024 282152091 768135281 42286945 267172258 759103569 113557930 486249434 700800922 328111936 140043682 597321414 548076517 813757607 346176162 607295040 14480175 310242208 814290817 100503132 67137343 156934495 20483860 510475912 177161634 550516780 707906795 848707852 632851295 393978367 504428940 399616164 889928283 495083690 630429730 77589389 963829625 134882968 425186211 644692564 749177881 596510786 518980761 8397956 871611802 45079395 997519236 342806962 466189732 470653768 549122159 735773662 698610714 923320532 265501008 810194377 895476395 44614567 39999740 25091917 702780445 223187523 416316559 602036082 314723857 362769446 340437897 926034010 301125771 917370112 408138878 277284024 913603192 942423321 253998904 742642111 650903710 412912198 61658888 677021793 897313352 498056431 492889911 647951109 126879946 630118697 808517307 794913101 937022645 244183307 531270706 457573398 923895739 606709196 609526049 178957548 814523613 11444019 889187908 135663947 602721964 636039894 356923628 961733100 141956366 838345921 827067442 814940358 327775858 626089077 67703299 901532878 953604810 409134742 873130965 36565308 282003503 979777053 791688783 632837322 571575398 52061340 640749686 662764418 603176764 200887265 56232203 844314549 569884101 83425350 433095476 986861936 882409086 945094862 899620409 893873006 155102317 809888925 47381383 136503063 949243657 100336423 80903924 297412236 84569732 471963681 631073814 601021554 296982102 23904836 487370758 395902831 57163036 183641318 737050895 647029122 594309602 885806659 131430148 445138763 499804456 417581472 356129941 846815076 558871530 189965098 710303183 653825662 31675247 100786470 183946099 303881105 62104517 616059486 147454645 855773650 614516316 906514776 113480830 401094344 880567264 799642504 233029000 930368519 705951316 968582610 649054342 700033519 483399759 341934475 802157393 352662098 704681732 706400836 922550732 177483812 741450708 989581787 697452750 228281661 639937494 549435816 166060561 998630943 828752166 170995469 897408400 837026535 507122431 694455031 904242264 236873008 157190766 353401725 144180264 141780383 388122295 225285539 356806658 853226623 3046822 463219944 771649747 698606271 439090677 66423225 997397365 112574430 595686751 114109012 235134786 822587705 28010630 652202896 428240689 816434897 900707022 486526579 445641904 802573690 486564463 333830368 806698920 978246488 568059680 460105468 56815867 870623121 46774081 575673104 668506924 539786254 743289035 204040840 358661788 839611294 585335173 146029519 291450562 620415422 794466907 370124067 459195873 933778644 544511727 207480617 122920331 283869896 312266128 755301280 204887079 593833587 584536308 437645307 734677691 955610821 179731911 578769950 120921775 399106088 909525292 504464980 212565563 111873312 894135619 227550805 211580049 793295652 971450560 19826000 159058346 48347682 879873202 848472357 465088454 489610837 581132213 560938335 313165727 144595555 224578188 773946053 23987255 752415349 847084875 271557255 100339117 63417391 652328385 899121770 136802191 461039136 600655078 920106565 103808806 19926312 446027421 765937886 550937582 260970746 755930799 464423723 157517766 460395492 625503839 943040170 152341810 265142915 387960341 851849913 744346274 970265332 432359915 105252665 180158740 738717375 866710377 343527059 589042438 715365859 395306314 577648639 468367318 119338474 722190548 121775184 440917342 449934311 807131254 254818775 977894154 813463479 368755636 350664707 641601329 123123392 303666578 138580989 395244431 495995033 333570320 637458796 113998657 991581141 721561730 294778347 740848344 531974048 106580893 535085479 533023057 221205150 49816039 497482483 726654235 52296582 840351944 227266977 623844792 412613572 607646645 383888638 360184648 890044298 655417292 732178598 185315962 294375436 321150667 617176497 352838513 280516974 981142679 491051519 670106547 168531376 650931488 870623625 778373871 308187211 577453073 558906809 727571725 698701195 982210384 987878957 309948976 193418138 355963492 234143186 630183405 350551128 78003933 14130985 908258877 537810396 69130111 969078664 561187564 955682835 255287365 354789972 120741699 973039408 280661505 520950082 278686249 402095040 692104196 21931515 895310040 100093197 107878087 384807200 513216045 50002480 114579923 691515676 233788947 13024448 682024183 128355915 87992921 771040312 304243621 448747207 737358024 479781943 745397401 939981009 683140684 458981746 910627235 814305464 93867744 994774946 791276374 189001217 264196731 537951428 340143775 994323378 82001117 632224948 54507997 547142648 850530641 856694328 12322861 489957018 100849617 746749522 958515664 678689207 734145071 289719314 805904375 147077250 354489756 148699354 713465714 68163158 729242670 572824507 208834869 289455448 938899155 140184788 16251273 646491886 376054824 297656652 779124761 80471915 677933572 161786072 790003546 626902390 207144951 944722447 640200232 984642578 749263093 841062186 548225483 965747390 624406613 934228923 83333016 673600930 705990605 523183292 85398770 769773681 123247726 630293774 355507223 762534025 205595969 47139883 110067968 521961039 396002518 49771078 490840015 88469731 942237669 582620836 452504624 933630010 566011830 813387294 657496873 968849918 981272635 346125962 351027794 956744123 853493712 842782665 798319521 219957276 65255857 984539980 130469038 974664593 371749165 241883757 951643502 384645595 954215717 321105932 526468545 517372135 298743037 404558565 43364729 111338041 626388448 942374180 73359826 229134307 964823681 637569078 851111268 664972787 518136964 526438297 10849020 668939106 798615306 739916519 84569530 290251186 227613834 499053793 721904556 906615757 33884361 897383379 992339147 829549429 18092171 890747482 808010357 728374246 29790549 471540272 953745794 845514378 32241741 984183245 502246759 942796033 869433770 2690379 670547188 404303524 198009235 393570281 561851603 251441205 910556628 933450816 654269208 527111727 673365577 934542841 147100711 255971680 456021361 591052545 257609023 810782858 655121790 304922668 126840060 840907347 242710091 896914848 918566440 369403130 520411405 128423018 719940146 751043461 56745444 196157197 479927326 907412096 749835749 649807961 338376807 679876208 955263927 936602670 170708692 4365835 211103435 448087791 577575377 368229401 376444661 109392173 868751035 636648286 335054466 24528526 592941682 941026627 1125533 254998437 488551783 673982100 24673060 832305183 724965414 570838789 469063008 148332460 834433391 231461207 6034976 885642040 582718905 982679096 559116221 896228843 195738289 236831475 436432887 122912661 70308258 713705678 529636052 781305065 234997297 21958640 222749881 397335177 96725659 331499467 810258672 154703545 892382460 131710098 164547196 867377708 160781987 573521257 540516980 14664203 135197865 485530735 68572616 82313302 244555701 926683584 578161038 602720542 105569099 73816871 586086194 202344330 849233410 346909611 368425448 917524693 854863116 667977466 333683581 793307080 361480234 115291817 134641197 254310760 558511906 150489931 404547630 374083875 600105802 228010055 498015322 66527329 153545219 283563893 544850727 722232640 106407712 808671808 4079513 837940286 542448089 151553897 977428752 861110382 277591056 696048493 342856918 844284356 303732158 465606087 689125758 937050224 832012609 931374463 477622490 262161605 763815685 936349673 952748919 723319225 220091667 157514290 261125946 647522100 930638297 62906955 72333651 813779330 990466685 957243221 764418044 124093458 81698630 540314510 120520384 253980530 378420422 455612890 918105077 208990411 266026788 783628223 859367658 561751321 456556369 270794317 743484138 886837539 330187654 451655338 20585992 348337491 431141021 337204670 227767736 457079176 405798380 423158335 367615719 214629111 709064342 358512551 68855390 661017811 630589954 836856356 732430703 920812409 911064167 447603695 816570369 468013291 325862895 411976044 828247878 912855630 821972620 101077949 397281377 495294974 289486368 173809222 932429897 844886179 358142487 543811960 475329132 768297155 505967346 743251204 930065991 350470611 397515359 711569795 154259400 921151240 15375867 695141332 261845202 892929412 639787763 481289855 426292372 678904823 60306316 812374962 964635191 452351009 319387374 265031444 87837084 225145397 245626563 628321616 568584577 705209956 823826859 524135052 109278008 295997619 913017205 286890701 479726209 407573449 143221816 782912502 921023141 415449438 195353216 287165542 276295666 249616343 271347002 279517551 858261354 616270724 14297916 789158040 166144475 152607649 102064095 364462659 498317873 479117362 242381434 621405064 850942600 540919676 40420425 957499865 28808296 401939354 296815838 561200833 998830900 876459173 308861231 427138792 219428088 443403111 699902243 181942259 135417754 670076046 214409615 844944947 109608996 221567115 29680151 145274289 36575404 451315631 843595234 294225638 22718621 288929229 404873058 994561493 601623881 500728911 111932160 288281691 730538971 622866619 756238462 277147987 959349450 990936051 510733554 504465594 123313893 133770670 520208538 888882916 166177431 631229796 477865025 244414168 243547292 595950382 713125005 902245122 809497925 213559260 765718170 497888223 696390118 648531713 620301213 863998000 149718244 393568728 80814417 607896217 852807537 368910160 345426272 308262052 283065686 640056633 903894533 533306360 630431197 958284757 843791679 476725756 52968300 958027181 784137758 370111578 418476399 304616570 435172520 475814831 468697237 413450982 458874009 163166092 502124252 357561144 543078371 173140148 290135150 898664280 973042952 990249125 204922069 706559510 672999754 681025941 42492121 276086124 46645800 353011185 698482942 926044454 90479428 397686970 946753433 203133529 645623156 518762261 100658341 993476571 424523356 349988058 757046036 283440299 130293326 982769816 82634734 310490327 750722567 649024712 836272803 157400227 516682425 808152522 586220780 606759470 667971429 488294165 840446184 526253526 181869134 342274765 916461582 958934383 632603050 465068542 415799454 558981906 998562672 788006471 509525738 322586039 904341242 303040352 601129682 696470756 199626023 702944302 768082667 911575601 940888766 186795151 74570174 770563058 994672295 975388716 754620393 618814635 136411096 575449570 775247333 881951943 186194633 673187183 729064355 368407071 797296899 41417684 856276554 952837956 383821217 277523615 647226646 120106765 420060335 528925863 721813365 255687413 393545108 542213290 77238660 699752946 115666994 886814163 311383297 28917963 261851311 926888608 874706895 93789046 195026498 152523718 572363755 786432637 449026650 434163439 913018932 383836017 84028618 766939532 578927459 981763274 413793086 365235628 211250473 951089997 96291246 495475718 4507968 405656371 986190260 149476737 229680792 458003957 70843109 36941240 11839704 792788381 668860885 597335473 902879161 251807746 541230378 257917364 396364356 206566789 878636885 904215892 487420534 8914595 784429596 794297990 270503335 483705433 443648362 636697325 232252608 787250356 164338192 436881436 63639428 517032822 941463997 124910136 998643917 692689142 748225021 713999656 66457115 877660247 623449444 532795919 242206746 485918489 843192865 255444741 679580440 906875945 545037412 679565287 697617073 604916842 753129729 451911529 380149349 553413363 268419895 16053990 215656240 249224277 954455522 674835768 160510253 104287509 131484144 819368482 20602910 950748295 686607303 215912792 606480332 60500205 15257343 652686793 472663662 183990062 982537624 939751489 781557252 37295816 732605130 744396869 436839238 46195948 607982083 661335612 771166986 752709476 625238666 54035109 351228659 729859533 942718317 484979811 163427468 767479593 579674715 955866923 206355550 898424961 237944600 6601563 496506174 246962719 645841637 760655131 370316567 319768451 796606300 354018967 82453908 341250994 406306698 639082375 410300772 220899549 648989901 643783433 674914933 877560718 480058666 582355250 698264837 815360073 697574907 774974783 302484351 129828204 827654557 211855873 150455034 474012834 113163902 811738509 118278856 700482402 885973042 194953141 529656972 627468008 249228755 34605342 392676244 342447361 31772455 469734444 759506736 492614599 443317807 624825166 427116893 970565038 666786340 974373335 813841891 889235792 839158206 584530580 704215664 370387614 14900233 693488038 401326207 357773569 135139705 513083944 93903155 994268598 466390207 123442005 298785734 142836305 479148590 173673804 772300723 796817545 857852115 580565645 692984953 145623618 343682175 922886269 693346422 507582236 744422606 886646473 52903256 247502225 356476012 376952635 868337667 952882913 740864565 245796102 337908614 311026911 405772654 556218503 240602650 103892737 996106661 123497766 987753191 535872538 761078130 26865108 838891064 631064446 274975521 273927640 660205995 131559444 36425097 478515862 973567831 353129659 920069968 189722182 565637121 398538187 563011322 317724937 397737177 352994624 977594108 904386502 114768420 476878334 618576464 125479351 68989345 174668060 321436768 716462072 550385159 882407138 806564429 531998525 862954641 415605325 163512566 748380718 606843601 112783279 213016392 134327303 890170533 344588877 932716050 437470697 5118348 702247299 732473887 377569937 444431542 514167968 148952228 219725658 963715399 595481452 172017114 62499675 869178696 870245503 676485973 783533201 982728948 645045379 510443890 410552105 440040849 92718494 448076955 543554797 556233902 789616513 516876692 756393652 760559198 506789177 33193425 225642709 90469638 512726540 680406353 877267444 571170129 163533318 204738850 396156366 271549076 563042223 497490880 48189338 781659104 255941196 163692666 462902674 799817054 425196480 164172748 747206939 788844209 802180312 984420176 741788138 147649302 301479305 29256815 543877575 652071873 214005676 407435488 503365595 533509662 162323001 271769948 65739486 215608408 645544992 999536212 810382224 359217491 450466139 781085764 210975666 908972598 193458558 521035690 308016582 782934838 358978178 29044110 364861687 714898704 320246585 716188347 250192842 806410126 456956659 193975902 66034291 520343288 813497824 622833075 623449553 994492653 996176795 363596070 846692243 378677715 138215678 553916411 550271619 679613247 548207773 434498747 775460134 1375354 331947782 73342820 627669354 160992270 825393407 582037365 812372188 852618927 730667478 422735835 560005836 478571788 522663605 930085755 764303904 244168572 105702040 266198023 620938512 508540603 705518334 2053087 730432532 871655191 435847071 398018964 854173921 605475668 885365662 738064617 486362797 808128914 535843714 228116480 561083767 565396330 125161793 716535480 633266771 514329187 68806934 209597535 450871782 778159076 756790208 5319582 871886877 686818894 593823279 462079642 262454896 195519454 417256212 127919617 140816486 957894973 244819607 297832837 812652392 33491343 139242058 760806183 141594423 311190421 751257580 537774123 911438802 849646816 454447114 665727287 124818033 209045629 432785273 780858545 15377593 906615512 62915777 210410921 520832889 128055807 983724929 602178523 687080706 946609876 258692954 854027560 339788435 961391595 892716886 733511337 664580993 737988618 115379263 504358855 303700161 452010890 330016232 124500814 954493815 508497744 178865444 90658040 363317631 339624436 481895424 204576167 933413774 158635849 268774533 599555982 602256216 107009256 28861028 394650784 345668655 365040241 65409643 804492126 952194065 844377068 242457759 496555869 978543800 620259689 319845196 158695910 225729668 184666096 106182967 390819578 147164632 371186922 925547224 559180084 23762768 703496193 934235744 838196705 165948608 85867532 678898196 53675083 861385506 967306210 853799789 483101177 972026793 155361616 682187125 377015233 398039367 640279807 221844893 172573701 313559272 344918516 59500874 743202799 74015069 337335017 456537732 67479297 539919920 990285970 652343839 838109250 238472770 540388716 201252612 745080189 522630401 219216944 503897752 164500185 582734193 451842016 586238454 77758215 757431206 540779689 27418639 787544210 168830504 225683314 55596914 92077038 567476324 724679865 824783729 59688024 278081508 917977240 884477446 806484250 229360115 179530231 603057779 585484124 185099607 471474237 469346802 95517018 566910649 533962978 83621773 943359342 224431681 144824738 814383050 201512006 694706258 102789731 788792338 690644361 835036477 558523137 898716562 319389678 762281002 261859066 650250702 143717061 338466300 873741169 737811374 100830278 435947568 301438586 763091584 565975493 112803633 206076332 248692006 215479024 509106544 729829198 35598612 572705359 770492348 8509550 351388216 58706616 668119114 651242473 537726840 707903174 232270340 484517497 129182317 2789002 397148196 921128195 563165099 690871783 593724564 8114402 94924663 769888391 127476454 363759262 842083092 401913461 897237117 200676327 696578267 60382024 472755060 243102476 158466461 393278148 542981998 903579900 260949602 420249289 759167459 185695265 893179975 773290733 955889488 346362010 298154179 929750388 441929793 983560229 823882715 800715449 74219572 469766535 485971698 401011315 337452959 837401693 862119312 290091673 874592912 894833434 457271991 979899662 914714077 279870044 149178347 979565583 616003498 123941965 243858001 305697945 353047726 212872368 770458368 993318737 357822464 994615544 165070618 766248329 395167677 537844012 93618387 10822543 531498439 990894775 997122040 807086291 210490919 615079833 383580757 976416258 620265601 392029620 901413283 810563078 393889255 463630593 914812263 194798434 538339997 159463247 272477088 26097501 481856847 340761062 293616600 249524286 481298402 998184382 107605789 950970071 584193744 858220225 777375198 882870328 640068107 837620527 959203600 615860890 565375421 35496343 708882472 939763720 574324785 477920058 999752133 830158565 267170819 734204623 402428517 80642568 992561502 518134212 136967026 720284039 703310589 914819066 245606821 566521657 705167293 569215142 230593647 948660170 289685064 223551340 20119181 110570337 991191219 306829096 533184356 98837052 426159133 50310769 435292604 181089480 825054806 42037744 112562784 961917311 345311906 580353886 976453604 536004870 113563506 212476957 656759062 342230506 150491532 851860985 955487270 485600918 589123341 373967248 876010197 839117925 480158343 281210562 549087040 552060102 949386573 724834113 934871450 228320321 562952272 606490330 738530413 178137528 224210899 287760507 408561811 352787004 331933913 419938176 754330613 840992504 126097719 536659370 214089151 189977659 751916034 88603719 108273295 279450740 98962354 176428324 140260879 675645177 194330788 460655591 287001802 228583180 322574285 877757015 468157824 427283399 157327767 998805583 771124205 692715639 489965138 911547513 840130641 950314322 708501609 879171778 569766428 75118727 127925184 50629795 908678776 583370773 772805986 102942752 591175210 969332877 941703526 238580019 655235294 899908324 506429949 865688921 314359423 147388650 127530292 890704133 315536013 361752959 688431210 636279743 475631334 24105391 109487016 226253846 599362875 610720327 869665951 754631845 948446073 965439008 120013546 975810427 745906168 731864954 982021449 910326380 161071735 640573277 771258483 102082648 486216234 175696571 508088710 581187645 185424524 901751502 24169749 950238455 272725027 555201625 336826523 908593457 984409549 353257593 205724177 371971578 337036370 167344262 736137560 207683649 232445161 701137746 209160095 405046383 436916315 667317922 133597146 186298417 485362376 400930473 308039943 558594881 993601066 55916864 461993545 614982208 887372600 860310325 358247579 229696801 476940920 831388942 282824195 136089666 883249619 870752992 619495396 819975710 602731009 726329937 270760968 248451470 943114404 562016249 416031297 616468592 634826791 37249605 452785290 541677300 264926933 934150515 51428200 52380691 367095643 192336121 122004773 135597034 475321338 705764859 858098090 501836140 181299120 765111976 932416406 937912980 584952065 951911514 548400494 600873119 533529464 916495617 104772043 325864250 690590936 506599740 956487422 185241647 734626452 723976728 947363127 40128848 260717528 869065288 89287114 22452646 613873036 272194233 463712084 377643163 158161424 871132697 176082600 457196231 162188790 216466494 726870987 507274661 814371379 648008201 214056218 865660882 665967637 297520543 691986421 621452413 888517808 835270477 214247861 540981152 949221715 831537366 335277898 99788729 689732528 126498809 168276310 287505849 164646679 270263881 961708158 340008638 560457799 306368484 100522157 874998702 127475905 379549542 612919581 851574063 584540166 637765635 834724667 975111645 673453432 913715742 973369650 978175296 108117096 786460547 151721595 609047535 594310263 656570843 331911033 816316332 791114155 903974537 429525807 727381186 518500892 693212601 319685898 163573520 433469505 297428464 557318326 419843234 2945280 38152934 43708641 485621006 490092261 77794738 172029784 713653354 362331393 710298295 241195212 762241688 459482247 19325610 174409376 472687696 763526429 658970020 459573010 434671576 874764915 291510539 811761544 292739799 826540840 102117819 918533741 485525298 688464160 24476967 315742111 892789847 997634065 67382415 603750667 610208613 693898016 732098557 811623723 734227608 238285266 737180665 443537202 53859022 768604980 995734317 662820986 819445890 721146534 227074213 496656913 363431812 25626465 649185566 385119441 821068688 890336962 684364091 245522693 644100293 542259150 381121466 210963913 139388575 81107117 53136568 195841683 750462679 913790021 895187898 395598586 366018073 919798745 78444173 919355492 137750132 427281001 368735966 635077945 465117687 667403369 356997869 614398533 590156501 381969010 35666117 215786817 672275875 552029932 563834378 6601906 982928045 494886826 348138466 526950644 542437675 363865157 768486801 913367914 6769945 621534352 197412436 718264116 117164127 812470156 507340886 229780928 711240385 209775914 435298206 907685697 672975328 583344727 341668087 498776816 99612450 299426644 548540290 601706680 17228100 330088654 333850655 295210484 951787756 811888822 23150000 887430833 614806721 558044422 756185011 712355097 514584938 711203442 202104938 265765324 546875715 109952248 200107644 516887185 384843441 995384924 303013911 456023219 259543007 171577715 503934319 704710186 151484718 801141037 236494320 137318970 687623946 477784282 713694073 2690084 173518379 589257868 484325510 885556170 177625512 926671111 825634217 946939685 593159055 506339517 738198326 58234262 190586999 627044360 435960152 129593142 603588093 148646369 470634751 680956618 214916389 524228226 431052264 964865596 421839824 38329430 401838547 50556429 265199690 229030778 136323071 319285554 984498429 922097861 592646058 350073567 541264731 173910685 884148662 66760838 278858987 252753730 913445813 990487783 151691780 726516033 839438838 246842754 563347576 896051722 187877413 415579860 851213089 553587533 138701109 615284729 192828520 461835112 12703927 69057894 561889952 322776862 944615223 698190277 864695071 762921642 954062855 821148168 724399574 385871979 788282269 755176800 552855784 204958565 789213005 476812829 833506571 869635827 408964171 788521382 824025901 361976702 947309424 49889350 279750862 433521087 616240243 4160830 118276768 196483426 760353076 445466351 680358674 713938942 942111438 387356594 395673789 39955709 538707784 585734547 690103828 640818106 621715624 34389287 826512488 966539227 728529098 183777449 310782710 718088884 260434800 980358406 764536957 211616093 455276401 807866728 536840197 966265414 626584400 803983120 858472671 125134404 569693548 133310153 915168918 398322684 794756639 538564285 147762148 672118655 571828376 434322583 878084910 615285659 520881241 79203499 249311823 495337556 921918671 981907548 819719613 707510869 241096536 690482919 492517234 417400623 699677046 416492604 821398393 572686041 211682030 540214874 350693791 863671200 836815906 268770458 392372841 768509168 906332228 139008462 905715727 634091265 24929675 760196105 947551848 866268628 348329514 382655003 105431789 683649880 548538555 844398601 282773887 789251531 328760475 184263120 156503656 131441384 219871562 948109947 350772691 216170277 592662079 690870258 851884242 432071427 638504661 877208521 208799201 881023125 21732603 566641486 931204468 954860284 192060714 277249040 576933668 171154006 750825048 949006730 498057168 453177044 403152306 210380429 990119191 699177143 857099689 754655074 918568719 777733159 389784892 426805836 152164873 441204734 244241391 247224120 965404003 67373809 941793387 170197530 712305280 542183817 368990303 27628575 496547394 981627608 114123325 961390748 75420595 112808989 818197767 323337168 393261179 379198106 366045077 909482675 299584638 47503500 344181847 293573516 24936568 284203025 585619878 193602732 435556685 844771968 742299028 628208817 768352568 882659027 763441368 25691315 112512303 155884470 167650121 939775057 230553703 195887075 753428435 780224848 891319555 54319421 516135901 472097766 517010485 449949295 127505294 134535961 538512857 726606105 617504464 970756700 60316746 176994454 24375276 354975438 272490340 339628032 317553459 321955311 599633752 892767318 992816997 186390035 548848353 701850708 547767371 376638355 571600962 387217130 945305832 454970953 952140677 281523890 229260780 778244106 189735175 655764239 579038407 415272422 289020589 743469583 453646789 141734049 987275019 679863925 186425714 864539319 416610769 869032337 178388428 298761810 264070815 235059123 891742740 266092241 292796882 321081039 374251610 285537423 863522115 618851906 128897860 17546437 31428259 649465091 36412800 864405481 350227276 244113340 376305846 744771053 587226557 704937609 698831830 629712797 453829929 152534823 255381077 956149999 871692016 15339742 847076941 617518883 281566260 301568795 494025651 378414780 464885033 670662790 674760593 651571830 495945182 306927023 740896220 430237914 14209794 77182429 617493477 169358906 482073900 194386151 526417317 544398400 245664145 750228691 324819031 291955722 273998134 870802348 452878437 118153405 648403765 987843349 876317281 228719216 622716024 140674963 264584795 935063646 637330401 357240847 622506194 202982017 790483722 130797806 957216274 885423029 554565783 414774039 983763514 624190325 926494785 775228743 24220729 65647974 19512037 346421197 400490279 210979733 680148138 352406222 126024525 450991661 842388 414799664 431952786 376407980 309757299 142622936 804073544 650980061 20318210 244830494 43760009 546930049 230506548 79495636 848740584 350333574 523459650 344136655 289110855 771809136 928933559 510494368 210593153 297406042 271799297 311603391 299701696 869110175 272242545 637960767 236489930 64343741 173808755 718052409 970875696 568845148 651682109 646493804 151332072 893388527 395136653 908985674 281462961 239183502 611906642 222911568 294382270 779040024 795498804 26648831 650717499 198857228 890520205 911121975 340231358 630711716 659183997 616448778 844610523 656769962 386743011 903502909 650865541 109489713 589678120 180963247 34170176 254906989 806638712 606679115 948903468 965888516 440241641 472927428 601828415 541174856 613996384 298526530 134501073 225071753 846073897 470750549 589064071 909750364 420074837 394742178 841953245 598734501 389296496 600380797 722412263 401716119 196929269 229864682 207343915 653636306 697293241 517416635 209186248 847575324 859656029 843169147 904819049 935445226 808666166 411378234 763661197 198593792 590487025 565393465 609464075 301899992 179900194 910491615 599936192 982547892 341955432 211232351 144598668 714155911 407735816 880532034 8810809 395861338 902412865 668068570 442654530 222679216 852090104 52018270 468551474 473778158 687972737 412933498 185700046 447721626 820060745 46691987 165500596 329891727 548158948 420439534 530102171 716956368 31666923 93654024 325598214 761590089 257726585 680106245 645127132 351343577 138840553 872599937 7634604 309475333 745933150 966385609 675298670 981813179 268719753 462095039 152256963 817783613 190630347 176434723 92606391 221136283 967494249 476814028 838082539 656887015 328065076 588331443 977183206 660186439 935000206 395841184 323801080 949344467 957237856 77852421 962909164 247194374 725910374 881454663 302550045 800123793 484240892 843389913 863293814 637264174 468673426 377960703 518913434 594443243 803533431 929566510 608424615 558793101 319933122 313111806 640406934 644517661 670451271 965942478 653010488 551111738 166375423 836548041 927882279 841261999 750391811 397345206 746897727 332223998 732771139 785150454 473515521 951709253 736962761 261168969 811223118 91101396 225735045 732668186 597167671 772732749 911916809 548434070 186135481 166466451 273244427 16944073 435731079 156958137 645709223 113772723 540871947 952792762 117407688 720200752 565491222 362972000 99531950 125703113 716126167 661701917 787292089 435706294 50867256 151907992 10472430 995110900 970185894 717626240 345188370 508035624 144464215 640163571 163257010 540416046 949752040 953157835 505765952 380289527 439124884 541361228 662303909 915034393 338812083 815889685 567518305 186649524 33952438 545860610 256081957 757673234 723973023 802745144 376595972 837518059 925746608 159325509 714842959 873095447 773714830 765039787 150850495 756343830 389009271 785814278 737467584 785597113 533698773 918711670 230472389 69654439 923620215 394525964 332629995 598304886 568757280 771845452 385965830 131931465 244112281 399440307 945507135 719554126 820346763 588436146 478626202 768374385 801598701 881805313 764689413 756544822 588837739 179368944 960402331 455322268 47095433 688515645 860805007 424065661 299966417 81139478 925649203 803506253 493764312 468084624 192273929 260975640 62744994 147121573 759321839 206639997 381324404 300999730 883199659 743930050 381585400 682357488 220200702 50234152 357045011 940952514 531813431 150951087 567061863 884735227 841083814 621259757 685174487 384319598 635249618 602049514 709547535 840277009 746591809 626138486 965004782 398400246 72134712 994839585 544256676 139843398 195118485 953169956 761250134 92915422 400345257 363919141 520444435 710488404 890308033 101171562 886971006 698998711 16753791 945603660 266355458 801372594 504534700 85880045 455384231 632961275 174975438 881621258 290562472 284151028 276842105 532414664 881731791 913322774 385096443 446141018 352819005 824553778 675244723 150831779 673626444 313145035 788339734 691704923 497744290 524902074 521441631 13192635 300916900 161651429 399293619 206467982 142623095 594026984 651143343 310079994 878317231 219007353 474228987 649965803 403336795 690423112 680248467 46126563 908761703 726579240 3154222 65459097 769677717 570804132 664248789 133079142 71591464 804917217 134317910 389207118 187001408 173217505 962748049 371084072 803190385 761983326 14492375 183437555 131290174 335290898 22280408 988915569 193637699 92371881 907354617 986708496 257443032 87554147 872622777 691882561 376143275 193749018 865893729 821632303 588065388 417617250 710790694 839161642 57129391 328582940 118889351 605930182 682657802 422676267 150638763 801689637 38482659 567613418 400955260 925466987 394622825 196772316 212453060 133532295 535024521 19643919 258626064 896177406 670557718 160848200 233435276 149150841 759273795 563923242 113682543 750093182 30505234 817731709 665886 862877068 428356152 858857940 89481545 631133787 320670622 31632268 890267336 405471626 552725658 420182938 238983951 601697248 975582991 297345896 442336176 503433586 848773289 973469481 797260065 892343269 260439592 109875243 410393116 627097633 8253308 987225302 817448208 155523166 603096428 265975068 113885194 256017551 200938111 279376708 450980813 468603691 344162941 208672310 377090632 806931934 735164410 490959246 76481758 329981179 320125535 726495435 10151614 63421852 888665226 127793574 699839353 293792904 769429872 99939146 736321195 576871624 548549720 678403554 958326531 760224661 70417755 796599917 787978375 292180775 290816315 602975277 908951592 27861939 127604500 747881133 897377209 911277312 451761038 690424295 718287628 198736100 533707708 973345012 924786296 476045371 349868626 204771824 540416232 894382769 333048063 973045519 797836396 220211048 806644621 19481034 284992506 880816442 963179462 15752122 851059088 865809543 695754733 698188097 712799004 110218960 940791414 483189886 233887604 31300968 293069617 695540069 630495404 183901284 904984515 66466144 827776197 790146157 639029185 681234019 162142330 459286676 981289314 185787597 836347990 173614378 996670557 39045313 390926281 677729390 820859632 572663470 772649933 398389382 10964955 3124147 260930186 261457000 705476577 366591836 715855109 909716526 280691724 275125267 388278339 339762661 81507030 633627182 551340618 417239102 221485497 661413485 861457167 962470051 856888940 847184798 767736451 912512623 251315825 318821665 721631411 998885865 572195733 330830927 477621836 243364339 577344138 367582589 367458924 422279047 207648901 161282218 764984052 646588436 628281187 848858256 251865141 618622546 813732244 676903811 612246043 362253240 267644047 452185747 483787233 968186569 764519763 117593326 985691980 480934530 875764427 181010349 724077016 628862309 746819540 56810035 84974694 851015634 993735525 470881083 990310740 903472134 225521622 43822219 164121938 797934973 114662332 765514933 515232719 576446393 613896783 204305631 980456983 605458938 56898524 289121607 711236960 501138657 869040273 990002874 380496207 197767087 277422446 685892689 203482524 374479908 936296894 466605874 51677189 901803773 841128393 178222578 423413726 705128753 369693750 603001907 374760855 161689432 619268984 727048540 897112209 934521400 693908679 367937713 343270590 616105869 56812889 963298900 500276465 182972248 378708953 611010834 608698343 43264404 55164489 15810971 2337289 576320518 336700704 719046870 862459798 269589065 151502089 697812114 656797584 963471557 440838469 42687071 869842586 498605558 363059289 283665378 421425644 680043912 352818208 751421008 977729380 608917804 380371633 767477571 294223737 290957148 697094928 617755601 117454263 558149118 163982341 803937653 497268156 966485684 35970896 592190097 229358790 992814553 681841978 987796232 665496984 292404029 447684656 293171641 40224840 935977885 459849699 307349377 582387465 413656597 831254766 19989832 942640284 170465113 780395046 458904376 857890227 273821617 608921853 557639445 848099141 25574042 912978381 477145397 368569996 544065937 777094603 448214122 876696590 143550142 934057711 332094217 548609645 730710255 107637323 437779841 282634776 306461107 6185346 356803748 866675222 591408640 748860401 372767031 326723993 885683483 613257052 498908767 455721680 863576737 402214432 794261426 770813584 738323775 843501765 596078415 266621675 441328975 902862406 621089206 886515767 579283344 275666257 876357943 672602029 751801371 724303386 314531272 134465388 596578301 500894011 821263793 530112858 10098444 588759024 275458506 454673598 801397055 680877897 142484893 278136735 787315339 468636751 856029806 202625836 59850324 746887800 137262075 505138814 415461305 677580272 778821118 287524032 291933938 239535258 782631828 847380734 887171111 117197593 910909073 678877589 312216771 493365336 559437059 149263160 460902496 975292596 282330080 397883963 208280887 296063215 836461525 697330076 906218889 489651715 275795797 217126003 565444101 598664909 545146749 837501408 468943526 370552391 457342826 431660577 541878902 250756873 436719577 862634647 578504963 112759775 63537187 40801119 140911965 260715866 995185911 607483419 804534423 403709948 272374851 937694153 517583508 964261124 311137348 543590248 502106827 448240929 771079513 739025342 724095365 898891007 643145070 493922824 579311929 204491320 595107945 265947988 762390067 746856257 466981805 350437649 673836953 725524629 292816659 343407895 776994527 553810990 82873223 19988915 986346445 973311192 199721466 927331082 388088938 281717577 694175099 39713598 871377848 946344528 202654058 549078602 861433310 765665331 252153457 677748865 580079821 988400372 920143756 325338971 98521847 149798479 626703078 686356795 520856601 832063511 206575915 566352042 360632844 606430480 483417330 307439906 853363594 967727677 953822660 695590298 849998144 852744716 219540922 910650272 710480995 504551858 94810252 754441491 68101400 306510235 63153284 692096850 925729991 315419072 363512543 402975501 329561528 488708986 44453612 872522979 446056755 36701898 733651228 234838755 435899867 447879615 597975166 905555512 547387735 591245820 199855871 203283145 583926518 37679422 584406101 969009538 652216069 781230935 659045235 416227070 554839642 181556085 940395416 259588034 811143061 62816492 185120348 736479682 776675171 821837251 535730772 544720993 958781045 221340367 18549013 70702717 916801752 733687542 165453048 461994674 249739589 198733993 307851114 106590137 13897321 838345611 488809180 645593779 503779892 559175908 427247629 540314640 457506392 137256721 961337012 414510485 932750121 292798376 324907190 914413012 215237157 809925870 704233670 868362448 188868954 202129066 597326745 257346882 328788171 57154285 559000824 99571207 800507292 4094413 51617326 685164371 738824922 281989553 928122821 27235086 750997690 552550295 307044775 364828970 13647638 124689283 665850246 394952194 411727282 478209707 204756060 819131715 700277961 342990175 346679107 241238667 511575905 805801626 971438181 270159713 984542146 969707801 67303969 816189921 92592644 851477830 811116093 573652271 40463590 724233925 328574967 905763866 186664713 99897936 6308507 353971568 110611118 858172040 780916385 386725642 946860507 618241487 498624893 268431696 320389420 914937874 919123480 767443380 365872483 618226627 682726183 342858620 228433757 151344712 135326180 587523751 875294132 988988927 724726133 794764540 275531674 925825175 85301763 562947141 6632151 683451311 942988841 715371834 606395091 1727411 433517356 983244885 299829496 552368396 508899770 964863312 896501240 263932008 54001013 699329259 930605063 104381124 516388810 486496401 23497418 219260363 559204254 526608061 421895355 806788580 494851976 27199228 780152279 261306788 317622367 591618121 892863836 736227761 457112965 674428048 314392050 604208310 972897121 102886926 12848046 600670311 796714834 914765724 474782250 870979305 629001578 240469142 312924808 369279458 212492350 938025917 606773878 75810714 934584996 802743544 754217548 765488008 884977238 770251215 555156571 454354985 80756315 359620212 394198367 87754808 856322535 887898276 954345647 430166024 110877758 649244564 929433550 553040390 189601768 199449317 953254331 901989177 557747048 969034984 582333855 332159527 34079269 930158507 330794201 813990724 59581847 815340135 831087346 168728268 926462457 976032007 475729668 478862757 943927702 338323708 834071106 359564331 237459895 587440347 449516091 904458381 829825152 814828539 496418259 298644098 76025468 171247927 88380982 778929092 137185608 341867381 68021442 8679214 353838760 591502528 132260917 632679471 353324802 926759821 716326662 500637101 231533590 256952376 655410373 964329082 644389250 385567087 943447645 900002721 6953042 141185152 576370054 845296778 662884615 145975563 166453004 516712631 807471031 280577771 719615443 610503681 681303524 404396159 770568804 833566118 584066143 680427201 503633269 338431214 501304862 685777646 977957999 6913400 717992928 932770341 468116859 169104533 372997958 543266838 88216605 975831266 851896384 631063924 714428706 550208288 256278268 960902889 892396538 901149046 893683736 409831132 439903731 489026241 909438856 352907470 413497575 838727986 29014594 827751185 594761811 917702124 765882184 779164369 971738452 889223811 257589091 441022361 336079715 631471915 654369957 578089949 623133032 618181219 918890821 876002248 382964954 188176890 303236847 599824905 791070655 814516363 938129164 974974867 210695890 373432272 347861699 424821471 703980583 864317315 887642648 330872637 915654073 756294175 309414687 671251441 907721209 758675266 412922710 714232187 830768880 421720619 764912904 200095248 131983453 658341173 780152091 909548433 160576231 876033698 384755863 926798087 869266604 725853784 325482955 524877153 967911507 483267186 797168922 15142555 527524361 361229285 785071110 724438259 687861676 538757051 949247292 543463160 824184768 255143395 58794231 666373199 786944740 246337938 904006433 812770781 867190385 589917540 760167693 5516118 789672868 400018612 981567584 197917579 164769765 218089745 369681400 6197384 112920140 267952791 289564067 948577459 138745606 195328662 214121101 449574609 200827299 192233472 744114473 689955244 157618070 240681629 639348275 14211798 227874115 222956266 231241560 770462684 860377969 725213860 472105825 479945435 592723449 463520501 436006688 938633806 113926540 485860623 114792506 501553639 995037795 102710366 270349236 872400537 176300994 980558723 812541930 187295510 131447630 838512360 338617515 477680344 222402740 387149612 24069749 496436513 919900991 436431209 542981990 877763043 841651251 496957018 342398519 708666401 857532417 384161439 878928107 146866024 298756383 618616999 981386064 424157835 332381266 156518216 335083099 981805656 435209431 894493952 904616300 719664081 207043041 394978538 367591011 784436512 340558143 687433409 117241180 326383184 526257012 113029063 473534293 44601003 839701200 721675173 197432770 611595623 607045521 134470946 659906159 96724376 692920057 930079698 679655256 985423834 977499869 872016376 276022794 72142854 498985271 472211906 52439210 691514442 245943079 948459594 313556679 524214777 275094441 753593492 806446480 774964274 901372147 438251146 630798102 847272560 614347557 463999078 82096529 264185776 948400406 989900558 322888600 648634161 770844523 58295411 537571253 882572651 598061145 295169329 469377437 453027604 637490855 137734641 540583620 301806304 714486094 967134795 676961907 768973930 114212164 171093016 909673030 763933782 811696052 904506453 294853254 468681032 222808293 23662517 92055413 723178018 326126712 102479350 735802672 788197841 768052661 597513670 701858400 764838867 761310607 410660042 757016843 343144407 896425045 712429530 408883168 878694829 497733937 439360794 493502507 296606611 699840820 794087727 506590021 263929462 283027446 805233430 909496148 986713403 746972915 543377719 619321388 757840709 434583900 252500908 783644009 821487046 661727365 300748916 904960567 144434078 809372128 141174161 971561944 156108166 833585331 260939055 308023557 425071682 900984088 473540425 832863824 940582696 409780194 164946256 876692723 808801388 821844490 808766688 501954410 405734129 211952602 767900440 355911931 183049796 846378434 731936291 376813737 712390825 53126121 479943414 868882529 939685 525639478 778108723 779839285 504398627 153715688 53116277 680970318 148109041 841307223 723407533 912283419 909149978 102085656 518392424 23707798 171351839 590824546 401456005 314144429 234047204 487821354 876994741 962657534 274168446 58582893 408285304 172374458 10355514 627238480 557861769 833134580 457931128 530072891 71001587 245617603 319524411 48033237 772559502 455670583 496838521 508506037 357076195 27172098 311168112 895249704 434558168 156607808 356217113 422880911 261638997 863530213 282953591 478542995 323199665 713719306 823057914 774971164 992091388 993548058 153656076 66194676 915887106 849466027 300405580 406704327 828033888 843293545 662778547 780903720 605731937 186439067 100698793 651705579 393100843 985536266 941749725 533485789 299542934 469028936 678850821 858214656 456385815 958948005 310268597 404135940 334817676 464205354 50196530 729172208 168240102 308033641 848870716 374288849 442190270 376775201 499874080 646391972 749937442 2561521 689833437 833126300 147967750 1911281 58936604 587215973 456825107 739766108 663171332 548178657 669136075 322047371 506361904 189357528 915136735 597427665 224606373 993874863 905298971 842257850 728890719 303825890 975735236 330094394 117678624 233733786 432685101 100433021 388624445 639823634 94183016 854496515 191450003 408272412 176055132 667759373 834349929 639369134 351458188 476926477 486172379 687988139 154698291 244008411 326416854 118862495 923581090 475362143 557443191 401000077 954202926 651562036 868681041 592259103 270823875 402315642 823271564 541328676 273258443 689806348 186724952 637716453 189001305 780814637 759170001 350868353 766503542 54108017 231613642 985623084 840393067 692845932 890973399 611533460 27897239 237090875 739953379 110006800 343918955 745365629 626478317 121630046 369840892 416206658 558009632 385969228 352940879 778446150 556362254 619584902 25202006 637759904 350131000 637117571 655344541 136038672 795044693 976371797 813166374 164915586 796134555 637135471 334989574 305894818 397294782 595025720 244026741 830540825 277062776 783754544 392169065 824916379 10911971 935215001 103492506 411434436 81077493 696539823 858666272 705306663 93833404 889793886 429133216 670860036 2345909 570739757 619619235 135170159 717666399 370756 635117055 925778020 349940727 335313843 377032795 948844731 802684190 592294243 198113130 795584280 148408617 718104428 29012448 831161424 294853660 700353358 534170507 969349199 970075379 546885282 580378517 260191805 976291194 39193067 12738920 402349391 449355971 643814631 898375733 862277697 321514713 688789159 255274891 379850616 949065817 174108168 12481317 124137049 999155041 159389997 649852529 541590374 130138569 626631747 150220557 219424786 625472500 837830717 381591480 112787661 596365508 299825767 442730737 949289595 800823543 361795262 217148542 86018403 25501483 559765141 8503886 372590603 836101347 289919458 150041482 698258980 287616903 390206728 420722737 420171397 582045115 970387129 387439389 952215790 46083191 971950771 92065992 166142518 941750730 465642872 664083891 727200522 468916684 774415346 446698916 849499620 687487878 159215626 98130647 763682749 311507390 857281062 328132268 482685974 585396918 330281476 824996088 399096118 31800701 592258688 720280102 891122301 515112501 985058045 525544076 820806649 169518849 669541313 677945540 62946756 331564212 194232758 119374314 297314022 755485819 928095138 604694961 760697475 573298067 394002346 300445748 512430910 11362566 454224026 310828660 59333146 419942973 262483855 733136367 350606487 545408131 246263167 694768183 132356667 257511962 879336248 109228607 232744053 174580863 604491954 665305065 126900023 836194082 660236034 968386935 706869253 748156480 556138369 688884122 278076259 101269966 93818148 717664284 907900302 335104255 276951568 241011502 228084824 422650438 130905273 193905902 920437323 971190552 668781045 987825493 97654475 781201567 742864783 985437380 479501952 541521541 360713477 731757507 833182461 417382782 554683502 850774928 672110078 769594191 671707222 261804030 515011879 927295508 828882775 175866489 325473115 968729257 291450581 558164133 92665678 803844540 416643217 263695797 575846312 785139528 612399442 17524414 146191774 309237562 376807301 640124446 107046776 94948102 226998034 375782610 822991667 579797879 929217565 219698905 60268861 532011916 229489614 190096282 441841093 826677501 893429850 760905417 416404608 197072543 16003907 921292784 192396985 861447820 117318912 512950221 51082903 844874226 337623520 8242771 990796270 597261286 61890482 647395100 849674819 255048246 159122376 310212590 171758969 226901555 898423405 739891354 681718250 9086967 489448934 659238012 172673257 797863866 368021551 6204551 664192795 321063417 854273288 854722474 172120361 850101332 35464703 346781082 728932917 332925277 511308704 10491704 367243250 969405291 62733300 895540831 893146150 345197297 895266563 825057680 702537750 907813619 271612605 332508503 9340096 632428201 28605369 3123108 382727531 582438468 606598842 506018824 843895815 191286071 659971693 519475809 454326435 8077370 398790483 993377217 160562684 515573045 554839370 452728450 975435217 849581900 251551314 207187736 705545932 153272260 839039190 19982136 283648599 662326013 466903990 720783713 649185730 35613981 90980714 547169964 246184334 945485818 237132850 923539628 256393953 595323942 25760426 191477059 600824219 178388524 573462584 528408257 849011111 237590949 733000738 765425588 50518242 292090109 325646637 261587079 294598165 153175247 639512466 770718291 479009225 351973430 118088646 627088355 619366762 344622834 460035934 373153717 922212590 916653748 615845385 137050866 69465098 187818156 759035086 350627413 10500561 911862154 723562574 257916268 909690252 476811920 832010459 867784255 88543477 625145469 108017589 223360799 66252223 655184136 8111811 644522737 34282454 34629211 87026874 277704548 822812230 256984103 363504953 601292474 558855843 765943006 156729900 70884351 143390537 872594633 86836152 394424917 5694214 899381487 948731807 298047194 275807973 127022373 953456337 113579397 430401515 867535276 771695503 139734586 644839665 745841438 662307972 70645175 735914600 527719605 455651026 676791702 996625976 784951191 541818899 853369535 558743769 543427393 759424462 504873704 172765810 540106355 1193486 536296578 510872569 824043388 799224641 100400075 757154778 839761717 358487918 827439980 445323449 974434182 179892433 520263668 754587761 459283769 615237844 902895594 61142322 657994550 769972950 611037877 417204265 23686553 566930339 280165892 296721900 306716976 694329083 215826325 520117071 781653037 552136783 490683533 382585680 514289992 554104332 248587456 970812935 133127543 748517726 352668829 304105663 288084637 75437525 269021280 282877110 972298702 786151239 290140668 261710269 779912405 368267978 914677258 958145649 894163038 611122293 879624234 105918549 401306081 209470001 162170681 359804483 957210412 657120851 391747093 206817630 924998492 110359632 889147967 245775382 510637068 107400133 987236523 681855864 896529252 132637037 604405011 247806389 831382972 99348527 561878366 267337489 621721075 981252964 244640303 43545933 701666049 93273967 162312449 63791206 970246726 868350042 990740560 496276069 445927616 784781981 88718045 512726616 735044382 287460979 551698186 572297161 756331798 118922243 186328258 630153719 634800314 601279780 889692990 799019274 908261561 109849018 977110167 233882110 196774726 496023213 122744615 986892930 783387850 72139276 320011756 711367133 544511668 775750510 624776069 529817007 485245828 689684546 721712475 550004379 317541016 910842041 680986813 794007348 792742896 66963975 640069610 999787027 327085792 244858267 342877196 926579290 951399837 627535834 474794124 458341258 890998201 651499010 664149270 686104110 130301001 549684139 5877529 712794364 257524832 596831089 273781183 319455251 200587969 281201280 779244731 506574511 641407823 642078039 745871992 639415249 546071706 779398366 740923048 2001124 641054779 90310354 735373681 36533058 73936720 907210916 39445942 874740178 995965362 222170935 398492018 16745194 484060861 956941722 626053802 893807430 435583098 121030368 833598718 496190347 2593133 109889752 197110592 708856303 597435142 855975102 367501915 29180654 576001255 618696046 147170626 946321502 679620233 578542498 525503475 877512657 443035098 787972444 61328786 799749207 683205299 997557242 893567468 344931714 634459121 176754552 357902622 958013579 946004385 207991860 934288937 719839039 577072330 667201463 537584433 913636863 915059847 746642327 555233219 533598085 807504479 674195514 858124063 454230765 716557065 605041312 856561003 975112681 611199461 880128617 357216114 672081233 751162425 41891945 262210694 413749886 593292001 227061067 161322730 455576241 178803190 327859716 787013410 46214425 992453070 69211699 503330202 527619731 240179339 303444075 191739905 115534761 939481714 908461497 308513015 537284131 828784382 480369998 767581396 882844792 778923279 818838222 603665273 698672712 874068496 533547146 389804339 202159075 919727485 181974488 562749572 412457368 807267428 306364064 814450467 213698970 617970084 24333906 365808792 185672303 522930385 207822426 735714542 97113052 250295305 175673149 358093732 722577793 872718550 587052944 660864664 622486137 470355122 612687843 463350354 347206281 170054677 10357376 359679451 298442276 548724676 310389404 471117515 385422919 543115371 632598652 33264961 23457495 379460118 439193533 713827073 584014848 368939427 453574583 314641540 649211431 712232501 153007397 897657292 330515454 965233681 231908988 865291420 759768438 562591380 528353722 103698354 702324302 469635500 76777881 109797226 855995873 303816901 59337584 177055284 133689545 675190617 903856983 407044293 189005464 683654489 625322075 476713016 189635170 406358012 712996516 580643999 105500587 745725895 232157923 941880780 647653561 12264969 655314511 597264270 819630522 169185871 186743295 588243639 713284700 140526062 102824844 143255655 505012760 366860362 272629442 655208583 285734053 591198684 292488724 955201577 265231886 260051558 179506093 849035346 354480935 158239769 1456486 114923922 383684273 699934110 481418415 655675865 238219656 373000199 716434764 515737063 427611047 516423874 957012755 908194745 702389056 142464163 472993083 447520492 326721773 168135680 835059664 159863912 858892343 718417206 631771488 931851454 758680044 979146481 705351000 930328495 409161115 679459049 599368805 55352956 140703172 714017460 514444698 283972966 38280478 161507789 274971882 908755429 791112459 142895434 248240515 336237663 450390279 68573492 581060855 19768135 458871483 804190674 887780728 599078607 145157139 41912953 583478015 704809223 886447606 548725890 812180522 580231663 701406378 893664123 730041772 209612612 755133873 407004944 373826897 220730030 69539406 744627936 800899407 373578520 909215318 549839518 731103054 374351753 491138256 336394161 664487651 584164971 151458029 446390742 49736280 236011015 507275252 117716782 957616487 332499762 887681874 474664194 806974200 616335147 610518822 85258783 291066874 671455614 680666455 192229852 468729713 516517826 190492351 952163252 558476547 694164726 742849886 390486358 696497838 868800680 559502941 52018058 619494027 280420516 634041615 856757314 990902112 559663062 96644505 43374806 345202932 799061902 291279345 360842700 497579326 453402811 72543728 598954336 653428727 74446736 101643310 732056430 647125881 361488410 176670202 642440688 620550746 828317550 815681182 139754078 198756138 659986524 82543084 584530931 512111478 735084889 553548889 490362848 414871740 860861613 523508426 565462342 923600402 308932805 509869210 894053793 129327851 41073432 464372744 494051606 303708236 781590960 445836201 812999339 138259896 424107394 599009845 455627033 832831209 727710886 335499825 953748236 147455631 350873564 160291760 662212165 107552399 532830758 867217818 322392860 818897714 591681562 599917712 68019558 901848304 181214104 799947705 377608261 853751087 232868613 704417210 735986599 813279730 533488790 678231188 562444508 461100548 962832442 973225416 976551541 889092436 586336092 412506966 124773984 207202312 684735998 218481755 886414668 552769539 805767608 87893654 298939634 1191588 260055592 783802835 979290565 374766496 926635541 289977573 695822876 481416553 752272498 810663893 763966439 973155729 472853045 663630607 744147330 471240223 875747660 327191082 5055567 420496988 171604022 789547544 289546281 346947070 765296928 835253499 193185091 921635203 865553505 602235304 517796589 483557995 195193722 236687467 654196173 204550075 389588351 206400913 349321881 311857544 683186892 52142439 388574966 356179568 576474393 679578629 440593982 985517230 647011066 980393987 507531008 637165502 484537789 978836034 789406942 712504321 769272587 410372475 764640295 876970100 600707916 123282933 275317704 413847737 114950860 513367753 935850917 300227546 959511400 324182937 503322809 252508604 385289078 364229218 696127727 227057967 357634260 141864725 19978981 916626028 339176259 724790587 193632690 669687697 326725366 604730455 744527942 675731834 808030905 876007077 730142883 407368719 604207448 468089842 168874438 277246040 540684069 590816207 834404369 955823782 946480662 304265481 674659384 598272099 247774891 543097014 840119807 754983384 145387812 410080607 335780818 747903539 638652950 668923689 920991543 608757086 581882936 391937622 35609725 888158685 938346662 340081578 18746400 161266680 741043095 991658573 609170765 929314152 754634160 574148194 939361657 405347512 785631421 818707491 519661586 180543667 790544427 737655018 433013939 819263712 681565718 957169975 444448085 984277503 822855883 881321697 446988479 451928815 232415987 343480405 42622845 134269249 851755999 891767055 265880641 389158098 183980334 95079969 990884089 575864889 773703773 442170728 950675612 442141608 843774805 302255962 436563667 31076886 164104777 126252713 994997050 733353278 536860816 470843489 954729720 540779669 842129232 494008241 195863763 413362823 258444095 408733762 501365847 224362589 702713233 577470412 165851229 178345222 577204242 950679075 273409906 240541695 107010283 962287054 233781460 185945462 279922552 811014227 370403338 320610235 109490326 312817706 566019714 403143472 44602289 918831638 270095254 167569418 453126884 507199132 433094342 549370121 717404817 617557226 623053098 107826539 624191614 424088146 132028753 9213614 253474621 242974617 497769598 758513702 317832136 910096349 320493663 520365576 392177796 974204050 820964663 355290628 691941300 394423329 173910704 890665040 296929428 222443450 647535295 345719563 505026605 713580148 413845343 257850243 382591382 688215287 584150856 642033625 368292398 485056002 388465656 443598286 309763891 714218970 632627248 123933260 259517269 424030115 305844859 522833333 905572007 357123321 769769664 117228979 978857686 477598692 409475385 28636284 78500480 698192467 851979485 919744478 199563636 315297724 154637906 565008807 189694067 225119575 384118021 894796193 20020346 782322349 736733605 905562109 605517111 114211356 64221676 570733591 431751250 795898671 352184890 757631218 932355423 505947908 912445425 461484024 6942182 982920500 600558839 827097571 557208340 889746029 106869859 47388205 724528271 970343380 610899184 32229309 289000895 310747377 305490766 143633760 154391034 145044642 629381288 677798384 813578733 536783238 524064816 216262248 167824597 583061024 34810284 955781211 510032552 714417374 514484442 537294386 359076428 305865118 89187713 656867838 25796979 292067997 556452234 700317813 945086752 408376036 109597984 242899929 137374775 340894772 406277806 378153870 145469255 14705942 232717848 767917291 39614700 935673631 774623316 991919278 82524554 943152430 164847201 408625608 943625567 554720229 608362357 642743058 933923788 901170332 74443613 535833893 194987236 510823028 321050625 35674552 713306479 987901848 331312561 309602162 123883180 123247946 22984152 427904226 608949628 789309646 249928590 883662678 63994289 377017292 373366460 352700682 709338617 370336102 397433619 643935243 604076305 433036416 961918877 257088309 435341937 3965038 245187527 702196138 611436726 576798483 659921427 985108873 386032557 714486809 648631162 608346209 86029231 277088325 677785143 669693948 832972018 838124594 794535876 587561512 724969640 530200609 583514151 771291866 953228368 889930139 321742048 805235718 57528101 896574535 437185547 149758457 460742526 847737885 732329853 451309016 254258282 679805884 498748747 889314060 341883523 251841629 549782186 264411033 365319583 445576652 718385807 819782465 258199730 669405775 933931799 81803825 358433708 300317548 917660007 257974748 423308824 122439045 1109375 105834670 308031150 833744892 102525986 23974326 655961673 99092178 636450231 681934002 180168404 8109852 777632249 581449652 662771881 620887151 772222383 384117748 927466010 280309403 329306516 365360618 605093175 522429135 606381811 303710037 360446328 490001156 744626367 192032061 87309446 592917021 303663428 61947730 573890766 768363709 564041304 399781015 318511142 688204397 347054860 587541058 724372068 151696358 89256790 146699284 890599999 285478366 434595411 754685223 203709079 499357251 648628880 112568855 571700109 927834379 37185203 590142944 199243661 257680855 206698623 534769054 614273591 853820994 195098444 97488481 441448126 613527216 441556100 40215329 805506200 294874225 815146297 235176830 334010033 141805459 43376240 27649850 857334595 595947485 419985242 562708445 334740862 959315984 144591867 69105480 784294989 991608743 666161936 963485256 297671983 222070297 86568556 399488560 290917360 146804841 807659285 602871438 705096267 897671870 296493768 739689686 724944752 956450331 609107812 711974357 602238859 258375108 585109023 29062437 392864829 310540494 116438396 235955524 652134990 356315351 829614668 181530088 86855332 377588259 698394448 170512517 676851783 614040024 821020710 151610255 670608245 232084821 186192233 343532930 400753515 463685615 493696050 833363182 495375590 513051290 785516791 403558736 295651778 663491204 311581659 927713075 762439857 218864380 228429197 591972703 35817241 514261362 729224360 354020545 998514390 138957277 639100638 53242795 881619490 177051844 149088444 112306946 311122437 272788933 693950814 752226925 50538844 980560879 117528838 163073500 873646593 981678239 631675717 587482705 502501382 480046045 865019519 520440340 250190297 202961926 487766908 287424617 267109877 181339602 266569797 730274867 390357526 756272991 528193937 112100925 293079582 663568942 340290254 315759191 515034929 509295466 493453777 660683757 74149035 744754640 560773498 842297543 755572350 378997874 491120213 416654360 209394662 953226302 579862454 900477781 378171913 645112520 225751944 824689694 392755122 756840527 325127276 47775919 258756018 616922144 614935211 900779354 584408866 393833039 827778853 613057651 724452201 327594949 709354763 862402082 696658272 892778701 752841552 283095869 202254944 767289759 264998249 717916798 699911874 217937796 197181244 226861341 373697621 920380416 655179236 134440041 153930238 645293349 588858746 674636345 276051935 899407064 466843839 433654229 359802537 64158918 14914322 107538757 199036863 101757620 636151474 265917176 357420045 412824769 32442124 461566084 347075753 74520320 901469371 530025691 352248682 60594147 137223524 830631236 25297842 190757209 789205056 440438896 328767658 848550042 235548173 527331874 48693650 149527852 17236783 121476418 481898850 948157591 187710406 176889299 749786596 994205997 152138771 445281767 138175371 734004563 238504295 484392305 993971472 592487414 118541150 258561390 768975048 492494914 896444044 558928805 949321463 323679161 364229657 561314572 420225008 262611680 500776994 694701491 525438110 262072622 711231871 854000777 770448064 31645057 460258415 222573844 201034883 131834724 768897143 739986481 115749606 60607011 43577635 390746477 814340998 453536592 756316088 306183139 964133432 819939091 622838166 856556356 870654346 186635231 163427539 96874065 674694099 129471237 216144483 769557509 781358312 606016225 130199742 459817450 27612198 896880988 165056109 262164517 974250039 352131008 93081261 201142879 423748976 371760058 615993737 25608264 513502364 63001602 255605720 498036860 532606979 139732869 576489257 642874559 992329231 287571022 276191283 932522617 94838214 913526141 961108095 636514188 608758688 980671078 53709030 112127027 955138876 548048486 648606744 539398576 677079429 943821369 744181091 257833260 181224288 101976544 275352328 159440175 724000151 673878911 592814773 469281825 974920885 247946296 354797728 354283857 695017034 604379542 496628541 781314368 614184312 858864782 453764743 869750324 595006407 877034441 229209945 856718151 323320940 403548268 274134299 737421219 301316926 941895517 115254156 564551621 303259345 142610050 798718961 640877227 561440160 943441252 189301279 934025697 326925185 510541268 787180288 129647603 720454159 675448331 194542617 743286161 974087003 182195378 128392098 217214037 667979373 876601132 858349930 168093083 236646567 116918429 258851069 611753544 863423789 53274742 118048132 332767105 958140016 564134902 507482673 730517577 956179738 78219999 298062944 588104705 452743988 684107743 523121328 991923577 299130729 627894567 991183094 615615319 246549341 698941901 237446507 56122615 546291785 673938199 875561637 876630860 128619685 421149791 341270847 759713610 508759033 541678187 683797570 414661079 720786047 48542178 49246131 95827901 40773218 590173 244662045 306447762 821130573 52140445 216083995 703192643 772749635 745490134 419606651 633233631 167296400 905682715 729446308 248334467 84972005 113905397 807513413 508825738 966399592 955131423 14413476 828865709 331078964 736573748 139319641 562785766 603259507 852844796 665499586 337587542 948516890 185334518 317676525 309063215 327003141 264671381 427128473 207895599 802774035 710587903 660312786 397744487 221361333 116593329 511985207 45442584 124947408 332011271 852729779 459248024 463247572 206801947 956663397 62433691 590633598 607153134 479874349 347791901 123568389 537615370 484367195 106064548 910694408 231285093 873256271 168700462 920669722 316310083 706426293 88010445 918350313 596332576 994406492 525383566 615542466 34212642 649725729 712817363 80226789 949846613 351116506 582852624 557211605 732906506 136887763 806116869 354750692 892158914 533880626 38651792 758719080 5938874 121830274 555657852 921952399 598525003 712612133 828663535 271148700 79115755 64670574 80374559 87171195 573202898 151294318 779259454 948541055 149595824 650233224 114671030 609818024 581815203 645610313 657071382 763339552 253774760 224350113 507519758 841224828 554553529 193404364 446392330 2132013 667917485 9935204 612035662 154643490 732717330 860160770 135767004 489365529 715238006 65413249 814389835 460544523 344074179 663044704 940454892 61396130 2820292 545560919 153125894 605771649 992802651 643722092 360550340 528847752 875890479 505029550 20270713 522980343 712402523 924766952 47669145 459651530 154686798 977987326 451631659 701732678 890146311 783876856 969006022 188474597 810327073 177275670 128686991 210426257 351725121 291162982 800473888 404660657 306416186 453272658 449788250 396726549 633255124 324632201 653961176 450590944 532043240 146716112 728235606 464177288 782417747 257862154 831215302 891143184 718138077 754258471 898454247 115808928 888733166 303897555 901196635 328219864 154966014 607799410 895747367 423093575 789283011 796072735 962280731 404251205 62250995 980797607 672779982 874376659 211278144 724297789 944929212 189176455 916361573 291908878 835961204 242048757 619528651 366262276 990290555 568463652 44846840 210786272 274761117 903358378 133270292 364525635 257535018 291612072 786701932 305399022 648738768 80879377 556747527 123488439 782999905 286243162 930685345 209197130 669664412 639235984 265182586 561738591 670197711 900325618 535435807 923734144 262542315 163378333 276645594 356427075 361534467 8520223 103019740 661111733 302415065 108091113 847359348 756685913 449904769 693433489 313242646 40717416 504634542 925323970 502238054 53326614 814052464 495317723 774469872 164273745 483705240 477913879 194789099 70534821 274657983 506995630 434775266 591027804 834432501 909531102 141857539 916820038 587696175 58256418 246322772 637173044 613593834 670895951 594242794 252911134 391671309 750951721 319068672 888485027 744448197 765427844 689111829 722614407 462534028 51699123 703211295 666374859 228844082 183105414 7394067 899288044 582576226 600314263 334468097 806273928 413223684 620820193 495815835 172294106 952339820 238829993 671029146 503638538 652434091 801254307 592831924 188591393 221724015 300317993 701754020 565619805 467876915 568913062 645855689 329767216 148434895 266660685 136059316 428349956 473161921 444311958 775492702 415746813 821601590 432972070 177600738 909721173 205077835 488664853 419413855 500037954 490082244 284951078 788454531 319398598 952197536 319922682 62680460 968010694 298832946 315356197 313030492 888795262 530011790 147219174 19668532 659872006 477617345 563805221 367605774 679960175 957408865 32368101 63341338 21550603 413702082 450841490 435628204 170233470 578364954 835189865 192681804 145627465 380795324 983076761 515187273 174460310 749947860 596520787 587824045 196531221 248870656 393260504 659800595 867574956 563581721 576323080 331609683 118758745 3308141 395607143 591117897 682613758 836740092 213439061 846701066 379140855 431955613 528305206 378156474 307991400 746764382 575010659 219543359 919308776 218555462 258668428 910664594 851991214 640745923 5025420 904586454 766179694 101848655 913613671 68596226 489620753 375319202 511137144 690197958 158713745 654387170 46751996 506349143 237257049 390703270 200567455 1656219 200392412 809434548 960668610 818439584 161424682 754177132 804570375 783114533 24931046 819335598 491007502 412726820 52584183 812646132 758025652 79812243 671519787 850074484 943780632 348748873 46011595 152848826 894545298 648411952 55990243 597169791 724204104 82260835 809697696 791578637 746537931 365505727 478714329 335758962 432962669 898365561 807900927 438825318 5366411 88751232 223679584 472230852 888303230 712287261 121700040 874832831 318995986 61113142 169687750 924877328 287934472 287992103 756367301 449065859 549923239 825485495 821684367 737239186 822697916 603710250 962901201 587375356 632970721 797590846 328408197 528406036 565088296 171698805 383692492 768950903 144304648 875580215 499303700 966385811 749306666 830466396 975489481 588847518 201401935 817346686 548655464 671938582 83329460 251087497 673262131 320497750 177458828 900046787 883014079 988162371 601562103 85674117 779202047 504204904 858904051 417890422 762147829 345243630 830867674 723872729 190106761 693981310 486386168 423126303 471718641 725277754 284893027 852109949 71858387 856065643 347108917 668619148 577660242 639396678 64819466 463439363 745952543 755825879 776694027 329193173 777468259 871578511 686985490 379896662 409038120 165891680 161014878 80131910 335547331 16039729 735207244 999698038 184504822 825463874 759632547 805137729 187677785 491337163 905114513 929889093 675852902 266935667 17566437 33172021 656436052 746741015 348897626 8799743 211271797 721298375 333054684 182056210 389761443 329788599 859753316 69171553 965054644 362083128 656704756 416325246 755128866 990066416 515369381 169762346 334664986 125586602 839912990 496717484 329616529 906898179 71891450 447545210 856967401 558751072 132194392 31513345 792658204 53390348 210659311 591888873 52098871 46256264 556860681 710695417 11998318 350166919 152997186 161353664 262635093 203282072 672515114 691346296 214285438 569918161 385709421 113329115 377824877 39184757 997153799 869846221 970189339 638371209 729128250 293050119 917793494 399256098 644511143 937417368 691150216 835290755 273049609 927530370 364103753 179928313 184735335 456300234 700098271 682849436 69121206 230937753 590067471 304412252 449545639 102392365 844726139 10660296 136831810 380660797 80469024 903882268 10043512 611503648 287053584 505624755 942958708 798589605 79064139 708053129 291096602 13296198 733913847 258122025 204470263 170779531 584501019 813955781 58259828 754998221 596172837 302097651 526138469 422964844 671013590 55053757 949018592 438370557 149031451 324549212 436427383 597655960 73141461 850250815 536722123 91777499 64350039 945771945 506306401 329648005 65625054 195836323 496490600 416511840 385865562 414333202 760868954 907357258 209305893 584701820 557763332 252456145 115795083 85252973 984062315 116876566 911412085 191423844 492192439 601144510 30519018 943986640 353210040 623113768 85046989 313117094 723400438 328169854 663216961 357396207 95886375 767476160 9364535 971927747 369192968 604118744 651554484 186428908 722724189 65262293 34824294 567723641 341447019 536699106 531398188 348272065 410190124 295777976 254445188 231985428 178435245 803307951 174660221 924567402 495772448 731631700 160656611 200826303 250870674 448537033 803915148 120733791 220656695 904088540 167265143 464826285 583994431 441855342 510067028 432580467 322803016 963903870 294745045 764952211 725326707 20472765 591084850 219222251 380693450 213714663 754246539 862536344 818843583 252493139 339807095 758290334 483245597 677976685 446392296 593090321 816673764 296154925 925013383 458229178 364158607 26772116 273095669 259918997 935003956 505313318 440510157 425617808 116105922 349473798 502477495 556701476 563132934 881151167 361531064 414278220 86411844 878060130 735908023 142769479 790372223 270041418 532762723 62433270 395388246 453405900 775837371 918537375 73395014 162094496 179308425 271482959 533728593 770289670 396989351 388891357 687659723 826271938 816623445 953306608 263080357 160777373 213139106 126394331 487100814 760757062 912741517 380747006 22358565 282991381 153663427 94383263 78849479 305895352 6541052 295083075 544124622 845790686 410803184 639471026 944767409 639518366 794030563 791701384 245422669 559215274 922595987 377078169 302903973 704681472 706059610 915445222 418882942 814346410 312108595 410729366 197866284 830126338 311271207 640882762 358535017 796288014 337772891 484448864 70988627 118566251 845633674 558062433 500693464 286465621 354008404 914762259 26832918 401156292 562342908 850945884 451649195 371164799 9378988 404284402 863931882 292552193 370455604 988833908 7766660 804835636 561583398 577756413 855739 140514399 869322221 760208131 911141283 587843501 903872470 236761068 945568665 439900447 381739418 436615651 58208740 778723022 284530358 574429509 564911099 602386907 933353309 302419957 490204652 861705579 129114005 71962334 517248109 731991193 151507791 799784241 222692531 336505862 476104568 876022880 575849719 528372720 23393026 857733520 364945485 343046962 802104886 924379312 636697397 566302455 830900821 532451713 852025942 348363370 774702949 379354660 637857115 707114444 528723931 221478364 328048906 294191804 975192521 960478484 875269107 150180137 106909828 890834829 325255895 298933834 113859525 963907457 932495524 497751425 696411892 549275270 735588976 45086042 429585312 888512534 225021252 50448837 119692415 242273793 301824331 281297371 457621243 700357255 540153797 669695768 97310848 889592159 415074405 983654355 832143925 732374143 940259429 747944984 621862953 134130218 902385841 796352961 410406375 345183339 503277190 497780328 789799805 355412267 418588704 636334857 833434944 769790464 135615513 204632281 506002294 386336485 577555314 858565709 647753609 378948443 104237219 647533991 452961192 743457361 605371388 114684321 628025768 973845686 267419211 725730435 208258357 599436091 601505324 794427506 879681601 224608068 743374759 543460077 609210949 81608625 577182806 160724744 433388330 662833721 15550419 763994668 957532189 891489748 526915613 804532964 914637287 508592822 751147693 916424232 216539316 73467158 789381440 530787410 987092063 631971909 43688863 40145268 456785285 321606525 419753831 491857247 373786164 422088390 301467218 330469547 927481628 844347294 245202073 45952412 741786790 552949628 46305076 773145701 718116191 675303566 556807421 288500323 514269199 811355542 793798828 612937938 415046016 393198161 832892022 525384133 406279902 414783899 615426982 447500317 461931294 256567687 33229636 307900525 653162647 129952352 950440010 891799399 898661535 79955775 626345973 276771574 492764686 613863318 395648928 42307790 322294347 853866379 923816782 978338821 652276208 910625788 742594042 474360424 633494220 603682888 777770252 768849423 372923560 338048925 562784349 517115382 989962618 640560640 694080623 729026138 10184202 779897660 36523667 88994668 316248467 732267294 79496224 746030478 229088627 519043959 50021310 243087470 818754739 674316449 725810408 270604516 685622104 155895104 352001685 120683744 773339247 675361354 840858127 951211099 429356384 966486686 135547548 336151657 956680528 654948109 971159554 934805451 242807595 680456648 776201143 841384143 837217662 457064156 391608754 278588900 521033348 250255605 901563852 505913155 214566628 832998240 185813122 227889705 597258540 509354670 652105415 149693139 810701498 926843438 165770037 47229193 217153568 954638945 632441183 496326833 895045009 356204097 757520092 793128023 770621545 416944769 928931321 172218392 345726330 813815688 139838756 263488941 472444280 642891469 327112760 700964215 897123103 677650992 427308580 310043919 804082123 603246828 907698018 245120114 89460949 682329668 904460824 336089776 368392633 709171867 589333539 316940962 582476771 308786983 18505711 549791055 948324751 148975702 333958860 337113184 332793456 754856825 957613104 73378798 828784399 377535125 29940955 493239159 531109865 749418714 711584177 748978333 13869616 121716349 67060350 831915404 92031576 451227665 836895618 685678875 176288634 630155998 692161755 121748263 629394515 176055047 602180053 509415318 491944326 898290223 547672970 918855454 50838411 696916253 141061057 354499545 746621223 202417327 633438372 101776681 659756096 419489200 398497194 565470711 263247735 642910738 600323161 858285105 212026427 962562617 963660483 68420167 899638452 153656913 137208893 559076829 435812649 133388162 946018183 737703553 942620346 333612823 615327649 352401369 453412550 290943351 279169799 687947700 778495912 759142666 874652639 861153637 5313520 142889302 141503692 977142481 63908014 937147431 730891237 972062485 868449578 961516232 533005695 900572926 581193787 213035420 495914229 120435641 858940831 135926714 81222664 163439538 753564031 394788738 879883552 912657693 588366110 278242766 641750957 338889231 943573939 855878867 628095569 319405839 380431338 788483792 867353683 611348062 786475933 116601731 729848419 619314475 130884729 382811045 50438016 759043261 512923819 945394588 103565694 887718966 721723560 259249497 583098764 361971879 475336700 598712284 365354553 127480095 155356862 106236993 906519385 196720695 902245832 183300948 639280465 196946544 956968731 2547409 56028509 651704790 220755853 347786796 988241248 903775553 424251464 748622366 256345963 321547788 640681158 995820763 132378838 312010470 219727029 259343283 75058499 139541868 203377425 108643813 422208348 268439499 396190655 487118000 329456971 944551096 717089378 488201567 58555813 95637861 258410304 672831377 700513124 446823157 236820536 8184786 269196211 192368348 831339768 708067452 569948485 678714518 376361139 497648154 436411217 745303411 649646423 467764504 818372515 335894189 552160631 636462811 563234279 32329002 740249347 706323914 469031852 122733725 948694349 980114119 126733646 650824973 571510751 462673111 377834648 123293904 357278447 496263459 936708729 74885437 510412666 408593599 812735267 515412249 700798901 15799152 241991688 130748668 515788365 608647 74018456 994204878 142268631 76951575 411348472 816267690 402049825 503767177 16689028 281546874 144678910 522406816 241601472 901068991 689899293 298118004 802084602 949841187 690836291 721711794 968504549 695172123 309924752 552993738 82801910 843686800 483852976 564713136 589263163 744781568 272295634 351155064 11994679 240204992 889587775 165387995 907253568 17588618 418084367 710400064 39948902 486788344 765397043 474323910 765823398 86485152 753422038 745628331 345257608 457907615 956168923 968861950 964979299 898983668 385479731 608606725 557562491 735224483 635099978 864935132 488146752 212533098 878279270 761423654 381991451 703614278 9763532 29475653 429314599 993468972 646094457 21579421 476438350 667004122 52335643 532886198 47020258 439635097 574416427 595318352 553602751 921629484 859068567 559169302 664401123 407863354 249146480 218864430 443943714 940855891 776751896 787280371 875899800 616293231 775654531 6870913 861182753 406319852 389892485 477830013 165297231 598255490 28634584 292148082 978112964 821823472 121272755 571996210 325561835 192156922 927528648 405085483 979846495 364952611 697167332 23257575 13938350 730419013 279454282 744973087 206958021 58876942 458148776 254621994 542196900 201781583 527028188 71061152 492499610 525821839 175291570 603714757 154048309 174990118 184904413 543660190 749442393 929913570 924424914 584336328 479791368 838341109 781521252 650621131 977932774 188283934 311658112 159674361 538903958 235835883 979731098 556802180 422523766 132289446 134280353 532172141 406252670 266640848 375591897 662493460 791944395 145533837 200526774 697037206 399648091 891563205 605196460 266007745 897621105 108745862 192732749 800637876 250781257 978697462 205880006 373564836 939571255 372134108 456682458 525378308 218513106 116300036 860978228 196651080 158156863 791074366 335662163 880140058 313211991 950592053 581192533 158574366 574960313 870642831 862558389 442610932 489530107 129392054 967753154 405267388 404558003 942938338 116484380 748873317 914040758 289830867 183187007 811270799 644928655 974775590 775629679 862699307 766246843 424133562 420018365 87354194 982648218 928250580 876361186 941115006 792638283 439221004 731689130 763366169 276757292 663598329 288874127 632757481 897496881 185179052 31462140 160806656 941857899 462748555 41963823 498305041 13824491 557345642 612992549 363992714 397348235 866400238 427754568 674217682 400063448 568991460 773847179 156451831 83859129 88859805 630545453 938252161 519423445 818137066 124280381 913601351 713677269 657810886 493398833 254215570 136947600 545300198 654232647 391426009 962993320 238146273 195468179 678520696 288110841 382505810 825549327 61390342 416440584 693167489 9520535 51040770 706679110 449496580 489915649 533706282 498428622 172919165 724261554 285722648 292383731 261481122 284823389 624261702 50794469 409068263 797410593 837736745 219467850 899624211 909612802 819591946 801653816 132430535 751091041 758484924 530139561 97977565 844094902 14233725 543619121 126496903 293662233 245413571 136014322 786720291 506539000 682049309 184848928 85990280 724178924 492437173 845575041 374671051 543356750 748978260 460762819 437630978 352274260 681484667 248563198 170167309 212319966 308428032 178662943 611750279 39460730 700837433 412467493 553181133 16861211 410544627 908571076 641367452 913460412 515834320 9180203 595725209 662075632 582681429 797691403 307922765 154420121 91335333 167296221 517520394 592979680 112118177 595904130 67413631 985430429 768482861 344089395 174593108 608313134 130170331 13015090 659351710 549312967 628667601 427980798 728433834 512592846 10268972 159682394 977906071 842165119 905709514 218358411 786339690 670147581 850308237 100843793 386902582 369522450 400263867 329237086 433284928 848786107 294821082 351533113 196842754 816477812 47074140 984051629 256127403 205638734 830869000 433622942 250467794 916464409 281664697 26024232 932649485 67543913 698683248 809092593 554141369 89068507 615981729 286802476 517310089 77095292 14376741 620727866 579484501 625637432 405958454 34932071 335504510 492620190 308722572 635858373 19157961 303194693 251942902 22751488 467014728 845946099 443999458 396170294 698844688 505486602 571500614 949452608 728167383 64433139 335150184 219216842 122830948 76355458 799027090 464036557 76736275 11508221 712312767 749311971 565076557 70879491 641781224 174414239 544815951 822160202 441533152 900268827 195138727 889614637 810731680 389993348 121748538 934933561 677392294 287221429 240025046 525469568 477973042 797110711 325446024 586299861 599200389 950850518 547732957 140919396 692827729 468169815 337108000 407226274 814557549 585836842 587183157 522847765 14626863 775165745 312676458 175665866 662930411 361714216 237199157 61302806 902063779 696495668 681247100 500549367 73459344 334874693 48408210 796238236 170025131 129994364 363205383 408920162 3905440 806732859 778734141 660377859 370842007 984326573 902845334 879441306 793022611 143355633 70936079 198119629 430679211 10720311 306613703 675898535 56896348 506616492 13476947 486451084 863146770 439127681 305042582 864522300 47873120 71518656 872956248 309972974 304569777 640910745 597220444 275435619 200521704 944861631 990458091 778029608 839326893 883087431 132049089 620968524 90532628 246890331 353676747 797874142 791508821 714180119 957044610 876965250 222573836 688542444 763034188 758348709 160542412 781888439 177594921 452964932 171571861 750989283 106207533 63818406 699994040 826272133 165243084 150542915 956612294 378748994 901550745 207685552 15462559 984530482 649192475 190215534 504197430 756358537 351668147 728701866 255447541 15184521 543707739 543035379 73124426 56900414 588144024 60014333 965208301 333358771 226669223 93469323 158052576 457477407 945753986 962132637 553488654 634807667 209406732 823860623 222157656 204743227 507638440 243212615 976688939 336969317 114524805 510345185 986514267 375388062 679935099 348516361 536185391 805835501 367652235 432877782 983070262 153763095 607954798 655537221 203988675 251486654 441612740 106874719 766953960 126836148 131196237 347685636 615517773 742435127 492175909 913999982 651425623 731389901 951035477 153245183 99904195 350069279 322537118 641117740 546053559 348125683 334574894 509411443 314077239 796688570 705857021 687526982 714403241 398733220 626885850 805523540 82795204 420451228 76682662 372229625 266555280 47209002 138339111 238668852 970076856 495263323 517613126 27545494 89568679 852469468 787937580 553447542 416087282 707116132 406447801 682128182 435323279 743839452 971227317 797812139 788085375 114629362 227874738 412749110 467606695 284712068 694970331 920092896 951407796 81690879 228302978 677295553 39765083 194035394 277256140 245748759 783576700 173918888 771359575 868101561 238088379 385867473 197245848 191371303 178419181 574582675 206762004 366376800 824340524 475747897 400544471 176183703 11972430 594540634 139431526 689771331 229019994 741734519 537488993 778437153 677000807 724850881 250278923 316666469 640548779 723878803 92909150 279521577 516774410 457824338 341551948 768880996 470505926 692761032 289547042 576413863 973063555 388007845 598650050 298894243 210854554 917756215 244038614 783696044 598755429 399766628 847079561 495526808 454648538 399994360 507470631 60966656 828103441 285104390 283749191 711704935 151804630 714871958 79436273 300796855 393635054 689712305 199243769 26567230 628541956 393056464 771251650 495726928 648373806 67441458 353175573 264108168 150903791 606036084 246794114 850938352 911856415 715810168 873627928 272200138 832716557 21329127 673679242 6145534 884944868 483706307 614285271 302004677 339005736 398925389 121464614 530225397 211704059 660536351 262222826 464506433 560432316 525529482 444638775 738309630 571041615 839810690 494566447 305768825 140377260 795483252 812648477 126244974 721560856 378083693 460569815 210945018 986544147 533008128 648133243 191669737 365365490 628291696 10284838 708606787 351049704 98786742 49227832 76062195 749640815 950293955 700760428 289635091 406635602 585216747 853767135 784359752 606029699 231255912 755121949 545885188 576437156 428240702 867008444 37362509 608687246 360688710 414174875 970267431 119580728 907858841 431448985 499542128 479079162 904979116 575215996 589176650 599280718 244649966 121264199 924678787 627749944 641232543 203270678 48806955 460459286 126847395 177096986 615902641 253875048 566931715 772237029 372621996 725177716 910642063 276122479 749845116 247975295 892579454 676717233 654893236 333775776 552795744 362907090 337328479 827208520 985932494 1069612 493150479 827102339 300717760 317389870 806969693 154992813 222150940 130585637 269854274 171180470 53947364 868255907 471476438 623208931 565646178 988053145 838001932 656081849 490118034 672426752 964638641 400811002 123856212 65033437 819944537 942646657 833455058 594462837 344273354 360741396 340617736 272964830 427244560 427820698 797480550 155815196 167199446 810380057 334392755 466182212 444456939 552446482 69020625 854478985 456675450 555301846 948287549 580097838 974296428 738899428 548546445 151754606 871515783 318806069 706190953 698444104 437813211 54505656 772113363 259609117 72301631 434410693 634964263 154367594 42807603 997990038 952036097 632958622 810921308 246984027 671688388 657673332 982922619 114655594 438813163 518421833 744645520 8942309 12680902 875823735 432053382 73956223 251834156 828417562 182073010 845280848 819872329 663274371 280794647 606322669 162784372 844315088 33092140 170321128 797219313 134550810 908434072 319052905 318688543 566407285 306881154 342278997 480070815 640419022 507904247 734545266 291015598 291076992 373375002 187775091 179516604 441683987 293332938 791395077 713010459 801274925 166552715 474377629 129532723 748025598 951480977 41927943 909929024 994401678 253726244 662501656 564659792 819860080 14342685 804446028 912579806 589455741 114463170 720888416 883614676 733090865 79092331 76668967 245736912 619455703 679644572 943351410 808274077 293369424 761454251 264225007 134351583 520155721 861587296 283281212 47894194 444244095 580865549 310438480 570393463 542447927 131709207 906640147 786519828 749699069 863973742 451604712 421373276 826468846 473763575 410701774 278329182 986597583 18914900 191280196 868490790 203107328 425157178 677963292 638613397 746282860 443952048 587827792 509086594 543881235 716728932 468002277 96273724 130937910 466977184 876267612 993394201 981967882 465043023 798312974 336091541 170485653 441138034 660199867 474960989 216285669 599862530 352836113 77487604 811504161 34173536 974144242 626434365 554318846 737106569 913884132 630499628 355782087 181503529 207597380 210497222 326578493 336026239 469088958 414442918 7366813 434365494 757693698 525566989 577474506 547663490 258977315 812219805 930643510 642141085 609567007 193946428 785147467 719259157 378144633 293245106 171515378 987854148 942455744 512076307 262161617 61150932 666891677 383535562 810898086 119380139 425709392 568467876 376597358 269125657 504715857 518855817 828651352 337187374 832175549 606439662 303365940 325008685 417317235 865543739 429597014 165987270 800600159 871521083 699183307 285569664 539665354 29817113 775543252 32541057 428248364 536851807 148776930 159184832 451082957 639795822 717812689 535329362 454713282 91410271 629156911 282435478 255600523 23745244 396132492 866152890 714232040 88666993 648311817 786124657 503714652 93999449 695469686 115551531 675888304 554633517 588380067 557870167 553063256 226655557 649257037 539093686 628312044 819916658 343844101 148723720 279237771 103886558 478764336 723872486 374158943 856982785 330751092 61613283 762068396 679079565 302978435 179509834 147296784 411384405 498215113 609240809 440149586 78841691 783920029 389783938 454292705 677969777 285070019 107794829 866346433 366995371 889957030 36718140 353057446 827129209 861111013 458688746 124323075 276889213 602524650 835692323 196689734 890818905 157937162 366084860 384099320 665991523 985103593 248222696 628402169 463441122 497865979 465805477 553003378 837022143 484963649 868323027 348334551 245234694 948957099 611318715 318850982 72939950 977932204 753505706 959595974 633646759 475451590 987920050 640909689 837288497 336915378 379779954 886795500 413804331 784115763 231261280 967043741 284860016 221735697 796647363 822897738 799130810 896996300 744500569 808552560 8430846 78777116 751480870 434369419 914283447 186049074 712736380 853005327 357723928 413554610 561869944 210354657 117762031 400377977 178271011 11539088 87846436 764842226 792586864 6717016 349996494 871653670 750054081 683055989 231692810 654144614 714942126 126250903 786485341 287985009 781984780 340046894 903542430 502831070 87296251 139413093 479746435 984825344 58743898 640241952 963042343 290584837 502305576 680782204 879681850 521971656 9848089 374570786 352370429 576439525 713975536 977168843 427052655 118707403 674125005 511008680 285310308 22173194 635704265 251840774 733609366 668583003 332731712 501990385 370100137 335012675 122980609 657592822 45463839 718784592 636180098 570917302 987401795 757529459 418652893 802778306 865855100 821538931 874697150 194892647 343689183 377263070 101567956 786156775 51194840 204036988 965492054 343583514 515288973 927238495 34541434 239173668 587525347 990927350 448515920 834906800 928365610 693148980 345332878 190836779 275638609 43323306 90921397 733055990 87781669 893483438 575766867 199002502 561973509 241671125 980474612 412183554 980620417 671378022 475431317 465635451 424627236 34285616 117677014 360974598 798706479 695564650 440780898 451186374 902464424 296142088 539418209 532428659 944739051 61805641 881887152 408200407 691229596 740050528 129522738 236565679 801663241 438503433 877582080 398257936 409138548 626746280 118123343 159770935 631750262 922903696 299502342 596722453 138355772 720253421 244628542 32675448 631994421 457558985 587199262 900115602 422253649 905621459 183621416 500586747 881959103 829274006 359074724 709029676 524696792 730512972 162110167 82203005 151228554 558224291 639394801 688554195 825270061 441919183 620346035 267122637 839466802 920983064 1037052 515794412 364519545 392105082 252125966 706401088 562376445 677561310 192033381 197294440 427326911 965287997 421481992 779584571 677650158 825103168 245026029 123274266 638174853 714806845 927374676 32412742 585278092 805883737 792330759 390570530 505661683 40762840 192193288 274993267 965364112 724358578 809583942 476908570 670283305 791439365 847813901 75758168 251252605 265825043 246489643 917293074 804505979 270532046 373485142 921177067 366175438 625488675 392512963 359447417 596006649 326915848 903190460 825286830 759922808 514372253 936478066 121971392 253054356 982195415 743343832 637845473 898205039 783150829 544619056 284678636 499359403 690675266 843337215 654778947 791297343 820451418 932248439 883312530 967763081 84745616 427800412 958561915 964711518 273172097 748261018 972179649 948765688 959495655 822002842 461100702 216895865 393881745 973711938 642751734 822747452 659794335 90792618 684584982 728633020 37220853 818886425 759783060 267243390 963809689 565833625 645134172 846673684 386000614 873759585 619799510 839883345 334579863 689320584 589060544 639557034 605516280 476725073 680041855 735851851 79246613 57040983 879396065 99105074 626984884 560869286 897416658 614151145 33830125 760418537 507040677 402915922 668516554 156176172 569348164 924621894 442728249 888314850 307723908 928084579 817334166 927279146 996638130 394560721 597244749 534478305 277011258 317953384 579178068 324690600 586365899 961759660 242182870 522332177 897372849 33843675 511886102 763656454 102009229 391032126 70327374 867079654 196921848 248680592 635885559 95844434 499101964 871401236 764278680 419621018 810730483 900045429 722883397 433929449 792429948 272394520 949025144 74954793 744767654 406733398 613559226 57627293 729340629 532108553 3352764 569282689 387776257 242266831 628731706 793458057 188804177 861987785 797846705 26566630 971088538 934264147 912526798 8094584 193401167 485980602 14970780 308946668 243880395 30324259 235166689 151054912 561604919 964469976 171726604 307641449 820872543 492290416 999649201 163472149 382116312 134854155 522293154 698463017 888049630 46709380 924070265 433466871 578984355 185699704 567365333 523276042 881849536 568659418 263130668 130771185 747658885 941897 868228632 305185224 631519050 733057089 42934182 258865030 826265604 587758268 265431571 431853361 56576765 679494586 8317349 362870000 909602298 862432004 682823449 986582400 143548457 35987782 513188530 821336167 181498321 875022331 328659 498636762 570577244 605243290 56042786 626757230 545510802 33541502 603666218 32649974 258538033 805625690 689250221 957880852 84218926 89072177 713738948 729017774 407835118 19727718 978245950 327941092 448009132 234664997 813930294 673157267 115732358 75172171 165850467 459961876 409549889 736670373 724960278 935534048 77739939 602273400 172180160 707069175 552677486 910000577 630434560 548332294 615164880 276514318 272895966 878558072 74376831 961654868 569609579 806263335 703637357 574142641 531338356 894486937 512638441 666633779 160398771 533818829 836520077 846108938 81570763 996923077 767329120 542172105 243879875 491935738 846715638 893264909 494604436 41015810 726248762 785531255 98441606 719575057 448319694 722190131 964276475 768989244 628525244 863140993 461034739 757052387 408761504 244829588 343047387 256771603 630840277 853886769 729220621 96654798 215719229 772393152 120020062 581956965 53051031 655737852 459077517 345221315 550625513 115048508 643168817 999206340 308032555 949114128 657255817 905470693 481071400 706758588 883462831 290946632 412874043 310064763 553116742 984881954 800172119 419307116 810127028 210198746 303019398 38458231 289223162 865432091 518198642 215855153 79771474 424180559 922246665 98237295 146401718 664139091 502897930 363534582 441827895 443290937 505865921 857706773 833269983 117715713 583986601 512185678 855697536 490787981 324935491 706531882 397730080 205797689 454486486 506138712 716739221 930154679 481033592 553310400 511054738 193712463 637642872 136917722 255508566 677387837 195436987 236086134 258533077 79491847 535250094 691295973 538992383 452242042 641728074 693187040 645321472 281664408 331396534 282104622 166810593 430961111 139548316 457510054 794927889 982253863 475544738 930037966 957274766 482575281 431002463 302734685 526631681 308869101 900548037 503500384 522185450 357917794 944365791 52681587 713141691 301469855 447684397 859522318 294983146 427359546 64591342 492606359 419912085 328045352 233044412 854263902 920639717 85264793 646458951 986435785 475665892 28321007 922883091 780663249 465256924 81669091 854894347 4027155 426478257 53439199 314066848 757359296 463646420 516793651 541825932 665813838 390860739 152057525 682256623 700989560 449606318 411065775 479014250 59767205 22726140 3010246 134113481 569163024 164384877 196563455 878708699 461344373 920141688 229785817 926155004 155747952 560503540 609736027 284193041 7252365 48117154 926880861 530784118 693782191 77550297 112439647 703673273 973252890 884430146 950285377 696949336 393776763 794884269 643999781 612033298 469306805 927384949 383519252 188380012 474511621 542620306 920715450 7416370 965608767 526396766 264504741 150024191 996061627 512650295 754057933 190231066 833566842 577304859 633606072 42550885 66486717 704046474 685728893 441949922 691764547 620775991 566065090 57056264 510438305 843560802 485188897 731247067 836038182 51985749 336595637 206719338 791520080 788375973 128226269 57618996 233180151 407009791 913759922 548923262 937030070 755842120 199453879 55438552 695799283 201546903 202139917 637345868 946304728 744356644 76733755 650450625 817050172 646799822 671820527 166268312 528930118 589527807 591559492 190782410 760526132 881049451 397274734 786733237 265724157 584390983 529896250 757743010 864950002 479379689 747205555 725342791 649296363 269414356 37056999 578584161 32549236 24722154 46309614 313918601 580273012 159755258 480978536 112499003 463204963 307634694 313628759 474534931 351086547 948616892 241606292 689113871 982668615 645189481 297177762 784668870 894993761 777574735 567835938 741751619 958194848 756737733 618439098 152323750 139667888 621020495 22726685 136672901 630108540 661102929 568513529 714194503 722909523 245909383 32044388 148774317 198617371 649654567 56405303 350180169 664053494 220512411 132288119 330267023 898263710 891869738 285418677 275786088 995636636 532615714 617966185 717326404 374837015 66307971 989905428 291369157 632894493 852040634 113378535 783318683 114054876 765899287 440599364 651621214 218752798 550907744 732469801 935369631 64475025 629312213 668002247 839043082 199863687 842910073 215738270 846352516 717149553 481746257 226946048 138361078 512722552 668867895 797036933 938552920 881382035 496387990 422612905 616621345 140027494 610232298 857058948 536400366 375999500 759507298 694175162 657052287 346777500 129617109 647387900 71729863 29630688 491816505 795071706 675861693 239067544 675999585 377614167 676162914 650030489 598958653 811987533 101038511 225962027 918109541 348516118 660295085 889049821 616810025 816633391 176109425 12075164 585151057 160416342 330551635 698710577 953677196 444889364 372146261 40561882 462781380 337136602 800411256 791643415 373780605 849366092 420180796 741048370 924534591 92539887 781823267 248906125 979026647 25482913 63347055 902986147 249315226 391310185 338906871 92153451 714064301 61864288 275902688 758758928 346486738 771132025 303311108 316556454 837376291 804407773 696079523 825338485 907116698 700359571 925896095 580504238 272452328 275500406 230069319 858432059 630925700 228427081 449963772 10343197 588964292 232055157 595633347 783305130 892153185 818529408 204175841 537440677 517951168 110699315 782313161 728208571 196580331 904810942 291093825 990260451 88630349 69414637 912016557 141783132 174230900 842380347 411889367 536573584 431050063 136193685 526704587 159676723 755390519 64748485 383042209 26032778 524224464 799277296 634484661 494680468 81486688 693558648 867158314 157885878 8920804 52112993 368012545 529667233 140459624 727782401 151121996 948214678 38380055 250603342 271720546 691638115 574065530 759614668 949989249 290312262 945749713 839664107 178993220 137400022 885533450 110042686 803197595 856941260 52813119 917698568 393593504 830986673 314834559 386144838 637700967 26067856 684805703 284152908 46276449 779543825 900810304 767127769 919385335 782194512 757323659 708523836 663604653 963996728 348480889 576953719 882412254 833728945 505239243 812176085 362709492 823970989 165287639 161981073 34985495 720727800 426183176 23412661 449545521 34842341 240619571 24151869 578831643 29790619 421551514 381513589 23159765 573521947 63549374 571928479 226413491 491558079 759238184 771354015 209604773 192423635 840138172 825488038 533204693 105400240 60805564 579351042 691557380 972606754 460273740 385079749 478547394 738106641 43363237 971803676 253757349 489279144 589234803 807641019 574680791 174807913 449293297 76790311 837522696 307844230 585375831 151482006 590862639 208847489 261989335 203825662 369021740 481301255 507857410 876137303 922158257 901006120 11998746 724112248 480701162 541033405 945042925 894509852 176936905 896163164 59868678 124380525 963543099 270196573 712275372 121864323 823343658 558956978 377708380 299468396 124274190 155990466 478985456 256131658 978199933 540380685 124181530 224606192 349006966 698197854 345608296 701832519 57189887 513906664 319511705 211624528 756442367 529469298 150426714 21313230 638291102 989991773 527135378 869389818 192969879 864949267 543273645 547032307 79020265 330395712 587022587 249795929 596763948 934192793 950597217 379520435 492567299 886963312 273714554 798097959 504302692 255120395 633189996 300689111 121078603 274924883 537251839 60609864 399619508 223693207 63359078 848164165 526620963 749999729 963964854 914697157 676932622 292240699 335044579 247643046 940367244 158431770 730490475 779923627 403071986 917318310 484579192 995203462 497271333 470840559 165812559 742750275 104066957 389602818 341688922 711430634 625878492 478753834 477643863 89730906 109132586 403580169 815633096 192019811 982477116 443068172 174607036 812939551 848815248 129851457 118779770 167659581 430071645 224122349 975584911 376101894 51121347 847164694 626932219 443810919 29816509 833144174 472310654 427634765 470925891 571578151 692290657 549861997 341172632 581518199 266216675 927608109 27341627 713520483 949842571 561127918 858269745 187243156 202065970 554867109 796093811 741885413 430336129 611477325 524306451 160600849 782417668 725602792 422718434 640052677 896370203 297647010 677661474 759999842 333238749 284364100 276380437 675227111 661971760 66125604 962747958 310772388 875953141 333422918 194368050 981338848 998265873 588449607 488525677 281359002 867060772 416273906 919601522 319227876 355471747 524854311 513724933 390902197 448564220 521320535 984614322 529422532 904641375 442675603 250900494 169830958 77359502 868348443 407034969 182033941 405292063 332842902 362397664 908688610 204690246 951782323 751375901 593437797 981112817 308078650 648481154 557656622 503599543 237545464 164624547 986776888 491266426 283974472 732774538 949273823 342901013 100524118 83099697 23606433 627440583 258789896 407202798 562499818 488797458 712191212 411543603 918075973 202624067 469973218 935121742 157126949 582557343 358017765 117803388 141986951 43760495 820525818 749147126 394068953 755009513 373123638 242660699 676382856 169515002 70083757 646364438 902285421 411448492 578337560 421298597 492199446 804124714 528249440 664862988 55434998 442289061 101358122 932451336 329068484 288727032 608385630 171742157 732617092 823124035 906381339 267060339 673226791 103619834 421270256 347393674 383197779 633868997 538284353 303821294 121386659 380460319 534706067 864956422 940267333 934052010 233807160 989987754 884292662 862084192 788913957 368867474 212939163 64933553 796314426 876251712 549974460 154934599 442350031 113636639 107691245 544963485 68191709 853127625 382281038 469861464 18279561 338377976 559268926 364750656 950943546 912068862 806874302 817451930 216726740 317347448 251123893 514057426 205158287 127774974 523098909 372746834 797491464 89614745 557118494 355684746 376747119 831159653 677560375 732166930 928662070 878508160 602706434 405772492 126538019 238267118 803779318 387978091 223204626 601032998 170420516 268556841 129085421 347847802 866891270 51436919 845008764 515169507 879501914 672419478 696408276 893073188 461417790 739752113 967989257 6134181 653526929 424980354 394701617 27669262 34747405 665860636 164042682 872256394 671619968 19206968 208752950 73341934 370106489 106365568 12992606 114693425 529485324 487132930 276664852 837910839 757658325 111578185 275058327 485023708 366079412 151576494 783355835 299422482 76573664 387318805 701188841 70854811 484322068 265881545 51996378 480752397 85750796 198569970 345710919 407338668 503360589 3262780 997742492 388895929 755277912 799825539 519626964 783320928 406981955 356011429 394347654 910882756 608082989 552285324 965292629 584791950 22522617 646318985 627863487 805590891 110620228 803155629 959520727 726141821 883683136 381124519 269892860 214700944 494293259 294954309 161739068 688942427 488725960 112477094 323823966 642259201 627517681 514596813 38723682 115724075 303158537 491278366 828176582 239973727 693692450 185725585 573616987 379995128 779294645 81658605 76657109 201617049 269905463 497494005 954766904 144779588 352445386 541271129 434373098 799323166 381920596 493444826 540500446 619278009 621024148 934849727 584767680 91798871 655921016 187762538 853131146 905163710 505979309 315534998 668747529 165460685 501929982 269286008 287729783 535840611 626277056 804877292 850037006 246319645 150324449 345925452 654288114 465814966 399959486 299099774 800600755 711584201 971449282 65613187 44524442 61122045 486973648 842980104 804611953 644560266 334693684 869441735 281450039 799018534 848808010 73861156 318370749 476064178 131608191 521791170 127441504 455800444 31800649 69487596 35654404 352009868 934060408 264786562 954739715 321963502 724452308 22620927 261236682 958473268 860932040 364982316 346377649 732226889 463450718 392934254 572798109 54545930 859317017 885910689 690660910 138354815 126404788 870601432 220764074 514793046 942699828 80565959 589169317 553416450 597200708 493266717 410910028 409410439 346610196 959221645 821539731 40973856 48874897 674651537 260937592 499394383 11535992 395644114 570117425 756031093 63162391 476981505 223956432 208252710 62791745 661586448 457387944 339197602 688797910 92034569 788257186 154844532 503063900 60389586 250125347 239779523 18489103 259394092 602475917 356259733 354360049 928442847 507993206 645751608 874456519 797140448 47200385 176730347 699378259 736205153 149309040 97814947 347401111 173572555 718793333 896286405 506983535 489375080 263062206 143980643 880022889 498193902 661350850 647810773 686314454 495720248 748302993 550923263 641337121 1574783 117045053 691657868 159217326 602919393 988106820 710041244 255609579 78909983 130478854 505255033 232648527 215657785 714407632 678572930 646017944 211772216 837273383 409804146 11128091 475555458 238240514 514293049 632316300 277166008 138029006 886744137 590798329 660956116 683439925 313063558 119746892 680975901 967288733 2533385 584169840 291482949 504784249 381193997 555465478 259842312 542340373 214248884 537867383 195629262 615245649 186542028 581277245 928232471 777776073 614490217 326223626 896129386 724720827 41870699 6106456 444011535 874093528 504703499 727052921 889574237 823107706 530084376 132099498 735722490 824781750 389598078 496819883 565697168 986743965 757857926 383991730 228395857 944918581 363653048 348078397 451351277 564939157 112288463 492079095 160868839 34680225 635207155 849254611 286979061 130666517 141904689 481100626 190332758 855662960 789489386 554308152 599081637 950437029 980005835 447994057 433271926 92318744 883821443 603259715 395057336 192710198 440594122 465393226 10873826 575899057 198898156 391614863 555223023 450564032 662708296 163803996 281145905 523475399 354256775 999592348 212174279 779635461 109999129 341651284 907536563 334939693 160141829 288398327 436656545 580937636 963956625 668750370 748935737 76801761 999961254 819030855 148646735 251863944 707457204 576476769 284127631 191442094 895836843 958126173 513166664 398616631 458696948 839378034 373381700 662978765 377942732 861596530 415148498 19712613 369586781 348281318 901752257 828063026 286375570 140514072 196720577 912925405 877205309 700957363 356256379 477277768 53479893 137847945 762260562 779145398 773343186 467682375 320670758 607392305 406497957 851571044 382490593 367053044 16351419 457242232 164861198 822716177 64314853 75482204 161988352 85946367 926797946 125710298 639115639 172101752 207726894 297544843 530259671 612398936 625570347 4687828 693437078 747838525 48139969 565770186 615664551 894519084 994581690 650188933 475297634 581832352 490527548 826349826 442995540 687310304 307663629 480580953 287651390 711569410 209274502 907505800 203242511 166994776 629726263 323120518 559763402 370368623 616212463 610830287 249647478 113385068 139500496 642308941 616764278 935189295 210020354 703881687 210947408 42333803 486989529 304038994 658884101 143899827 293685545 492470152 232192686 986590696 638317864 987410788 249015239 462468568 741961387 761816996 522377585 997543629 745831589 681695837 501307793 876388925 999435144 608255973 47207760 259552670 548195076 735770770 820040272 774059732 956055755 724922433 465956664 7230701 158775065 667264874 595863678 986584377 977713023 439441928 291907170 599547529 351102030 554611783 737492056 878114433 360509729 668593452 820149761 867587253 536117267 477060812 631694158 915110384 846399508 403034070 426982239 804556198 804097928 460920023 731209963 623753906 666839933 657515648 255295127 820258221 308586449 532573986 319438285 425077002 355900415 297451419 500002534 61308625 711315852 843656965 31510208 919184724 48521815 230610789 636713930 831869804 886231166 747544281 709249809 427113874 416605059 791911877 46698251 227902688 442278693 90907539 216501841 610944336 715173235 273662898 969991879 424310571 149694216 8448415 145693404 494797339 573447662 72994734 776243013 96021265 564961861 689274731 215494775 883998698 603134943 748135849 826384988 180652545 484382229 67807370 33109283 878332986 868982441 433130766 883915374 159186983 755958188 942035333 365059643 893029262 495373450 567244479 820695829 273561225 561092306 727044948 625552334 958420823 262507059 82193994 881076721 543091209 335222524 396127760 494835167 556778926 547408041 743855393 469769603 326210820 170651357 508522006 711819612 78291021 453544592 98105106 561844866 587331751 820820925 867245247 874637795 67299013 224847019 137705379 641022785 130461251 841459311 291195922 404202091 946194744 489778948 400385650 836468586 166110312 625272399 128196738 608243250 123023767 763376901 665697344 208238881 282789070 678532201 630440490 220088317 395723366 402895731 321840455 216556402 46467854 721344545 802000426 738612993 100326115 609397681 172754755 782673907 601965041 641672714 20025418 870033560 763123492 121203209 803917659 878614936 8008606 37865777 923355889 168592248 345860968 654125718 883599286 307755618 970984423 211909758 379863236 564437381 727520948 321461618 378357599 509101178 93323814 615422263 816777218 169625770 95174461 182777416 296563654 777820399 62567070 795946737 581826252 506351523 312521221 12577687 226858677 777619392 766350070 897037743 847140492 881970825 718915503 565252097 383740890 682278382 971265869 543706056 103176524 685086358 739311265 996355774 178105945 426311037 154813039 393613261 758711755 364819582 209512966 970859310 828052500 725475173 111991955 761263511 653032730 903529777 822814616 344699237 671931541 273991237 559773130 784936491 118097770 240086481 847039155 521762178 669649148 685764410 41877570 744973919 327587903 727419833 730036776 598136004 707320324 614472756 20457085 275168770 720774639 239063989 825584384 4391156 960627899 663585790 204802714 235340700 659351463 447630251 215096159 139601456 11958473 468018192 224724709 820311756 163444446 646536790 924027950 178652135 601324838 101905295 301287629 513837778 668997456 689936489 126824800 488585221 820277302 9369189 920675172 153269625 13606430 438635059 772742512 758930222 923477594 888909544 702783275 17029948 763782675 692292929 787134592 199005788 48195901 271960990 687576366 737150376 735601989 502737067 973836625 937940588 549873211 73365864 314760353 189368399 726280976 873030650 936315405 482976018 291629451 543688963 715509793 356040800 191654108 223436952 752230906 894633156 869356149 420279294 174075154 277519916 287781826 257981636 605466375 44713224 805024324 965714793 776119932 484150387 823826330 728625275 388985972 859746812 981260603 187829402 659153948 714154904 37159159 298687695 8488412 861350272 255032112 866891590 588844776 883518347 222697071 629466505 719732249 950076781 387883629 713183354 67545849 35865044 704630707 849624761 810657548 663912111 168440988 435807641 383134980 623892988 897626443 677893299 228888520 847479614 888853083 31117154 47551582 75572846 367519063 936996213 292913658 709368239 856076831 8684434 925352871 65756623 315495137 862427854 862678162 851611258 722331551 310026936 198139188 560279861 219671754 478532888 721802404 895101978 291251284 83078228 447999204 138576711 521268896 716670026 827253849 568127346 200503770 957024446 24929762 188804875 793074878 518593645 873906760 318233593 225566409 225403700 880217324 131740051 108226384 160512724 341604622 859951633 125674611 125806388 328579436 37651342 44818775 209584244 289135175 64014399 783788376 741536503 905228815 703559878 633427196 666423745 488498850 685159045 303661387 283164577 156010909 872867016 58909564 663848159 450855211 890991342 96101585 229221601 38036160 346914530 900931244 956731250 898331269 424491524 736403206 840806069 382987326 918420901 834766464 800449571 712635374 453224782 669849051 583759782 770503621 547784198 995240655 256677794 897775218 204806477 944818875 90742120 94545733 991674691 849126844 29478670 596918414 175239042 86587734 103887176 865912907 461141328 827507529 606671529 992689261 309934024 894789534 879782296 413252965 972040314 683015279 921205883 801833118 184092780 913031225 829959392 777922706 88767035 395135555 471722885 545173234 805078338 755642079 933255549 15508481 720479769 900454627 681023857 432171105 990490850 141489798 253600954 242202502 781955547 246062300 893026754 855817926 32761305 416041482 925424539 942944210 528621559 513456132 999404219 512116880 495709794 597050972 570403500 624414066 222720880 201588596 949153418 568391710 472871371 195788630 575092915 968852266 496399179 852392622 961334948 927113096 764574346 619363467 427531843 331514941 564112774 531722295 137874292 244286996 156774344 979050800 257227459 363009084 453839827 787301261 491928443 610886942 142503896 114022536 519249376 918136200 392680091 178533641 772888411 256462094 852916839 921546833 282219239 244789432 706501878 206649982 259893181 901479647 427824354 371689701 954071984 369222053 72579801 297505638 251204789 312057480 394092369 777650353 662418677 579731336 381482320 799431464 999984752 7670445 955190698 378018995 185100842 514625440 515076117 152394498 190430164 779641939 355625357 49746153 858219791 319310338 860693075 869984647 495497981 128788584 665544675 749039882 473304310 868980671 98075893 384885835 817625574 78284653 962023256 551311101 110485384 386729197 430545525 141235873 501552823 303624046 797725171 178341551 357462770 514882574 915322715 305635146 147754171 692877025 538456462 300689332 661926322 952217985 199887454 436704160 980111308 117070142 762858215 555137907 386232126 844938120 54071669 224743059 348572911 424880686 107042057 132413127 411844663 154641480 741244525 119463500 965050120 167578870 697170368 447631103 263085648 879060322 13280451 240865254 582318392 149440420 216148395 630061840 280193669 424374834 114088785 858274612 706768812 24064310 956241181 246457601 555999458 876605281 313490740 849218852 42234273 368671614 706972829 934588663 919435415 25491899 98618203 924675751 622636428 548432121 747137792 542679094 845752537 381314541 391321765 862746979 620117665 821574208 229588536 644043855 75256993 168024137 244380013 15832980 88811998 405002796 58672567 983865796 336226716 924175391 499187994 868318245 629501921 249989306 282006299 908347190 262340618 80358055 87839497 230186398 421367577 702870935 18491014 347734034 118539593 326156214 805842712 178363296 482549862 311280493 851410615 553805605 982265251 512743326 59891255 560807279 955160850 789416704 634491446 899659994 324143448 694920054 257988779 737040198 934159665 474833922 950501849 9001555 427192481 404395719 732106230 630435535 622347337 543299319 306834649 591868900 425814167 22301111 816485217 295220399 926187844 222905554 279430109 44846711 72678155 126456918 983419452 805953751 969517013 571710900 51924187 459865949 965736424 649415396 150436576 996863799 125373003 506432096 138973326 768494006 356020590 691981914 460061539 141706235 616028673 653567560 171096036 247861579 995252278 292364600 761422583 314438674 878259589 3630571 888526410 712776737 445022280 345265221 342102742 826863972 580339520 681823847 354827231 268816245 242551698 327144838 927092389 293423604 740419787 762834039 209547971 201296828 52112092 379838857 330655809 295243297 629863038 735739749 646236629 510978986 98715885 678594991 567534823 816965038 584817954 775050725 683358909 179463345 788204878 476304295 248814123 528074099 857467196 121057173 194197001 203139640 235845603 431607646 778767448 846018903 211816291 152043503 636031133 872078916 107930676 901426722 427950213 704632218 33266037 187106130 704505576 126431617 856007306 395366179 308275633 787646859 380756647 626447507 59884973 194077471 782601429 700375436 662729020 689720134 763766317 231269954 326858486 423919156 741660349 932965663 1018614 247232306 421953103 23481528 217427910 736330302 124243706 460184294 884896274 437380475 981808747 454076267 464150643 423750699 374512278 967739349 981779506 102471110 564096029 878522085 109293324 800661704 842658567 785440556 317784355 482341376 986641339 902155405 356356618 63331103 767334258 49194020 115806664 203035162 448112643 922009631 786676845 697184556 507262860 201488224 663043162 958608664 891986694 149344786 387875401 967689683 87116193 876629480 5272869 95517282 355221873 578136976 316364661 744120291 802639671 443661094 891285088 516917767 843024719 166903995 150924907 606500584 131756660 139343771 744758238 500256638 833894473 965913694 590089018 763679672 151924661 863033259 970146729 941979229 640254587 277853926 666612409 58890817 536684238 921553707 552519615 951659501 309218568 567021041 420474463 271083647 100753839 987711260 304276050 727301496 986309723 851901258 438601191 414593008 270033328 449591225 11049385 901426830 391457054 771129345 826794681 207229994 230792395 385902561 21106638 411049864 299681975 206911309 500596803 242964789 54019510 632505227 753827980 674739651 837436013 910834689 614280433 626310529 707757920 638848520 946763353 567755217 922902723 154312954 945671802 622628359 643768309 294565991 883790455 152877007 465618057 904867538 313270444 468203937 279311656 801949342 309091101 930617333 658071706 630767165 39014998 984310525 342398321 501915015 88016859 773414856 165803947 986217516 340899228 361920644 835266119 519529325 523071969 318167730 484639720 935049582 484274221 88736087 528885360 310189077 737810484 339759049 335757828 7888233 915626460 116205995 771582357 237405396 307995428 410927288 390114478 655312158 633264405 953662554 522306243 247254068 625723720 134912752 988683818 863038469 971790428 861184122 305109238 246358360 161077066 755464384 527149515 385331382 576299159 496968043 29106307 356797685 154230584 785129124 159306731 599440544 585050006 631258375 497270467 722305186 75962786 776429848 796421033 346491982 831184443 381496479 637653091 780223409 569910714 401407600 543823386 946485517 562324653 15892115 727516909 948224864 925627808 100852369 77448134 181965575 275048404 983713707 569573073 442899034 28358342 524590656 857561532 885127573 156722821 777333242 884778173 385644473 862468570 844809172 559824333 923829850 821307794 256391862 605495236 328182528 450699285 610898915 15759442 791333904 940342382 162738180 840189352 457364414 452890371 609149219 512269949 782990226 663246901 954251472 57817523 658031974 130540555 517206882 980241615 330531694 27831559 604390404 565781507 2079639 993955856 91327632 422172750 90247108 658692493 125285083 740649675 266342488 670897535 122187079 448937411 977115114 212248950 839035895 235559425 968071993 924737496 995254084 360524131 335800655 928243957 93891097 652892390 89337278 649049257 637898418 157574863 707624445 651585577 747627400 504709266 553041288 585492513 755264127 944014118 395549548 635764046 163328514 373457976 795001664 474877508 741029455 246882729 537306625 865210396 780253164 592979867 481697115 739051757 965892718 527457640 803656911 325198222 199459385 907308100 938258942 196850956 974049723 167711710 223827626 535730391 566673565 235358370 113326593 755153350 162516586 673929600 91211227 150974617 983464104 457014886 344049179 654347157 816997035 493988629 387263527 609283062 476655837 962713489 432939697 759580134 71116803 106319717 888742361 852402334 421669510 973899133 80908155 248897029 674379760 915221898 76700699 730874847 211870855 695395799 605588384 563810062 363454691 975431241 836493669 515094167 606101303 956921423 989646836 400358027 697351864 134054337 239414468 218033193 432607081 52804230 14612974 803145457 413716686 792985422 550620193 992174466 100900740 18245917 377916314 412275345 984528510 229736359 631202346 905206933 595121071 406899810 907624992 201969903 953975881 492832926 745484011 36052053 92984568 509836929 102113263 413751625 647251857 49606279 382378542 505774331 465315606 911230612 208182873 867046497 248219555 299394104 318300762 441387484 303784713 910159567 118144619 566705727 931363216 215101436 574316447 870732176 253802013 837273556 307950496 796394652 379462717 619231957 834631657 528276872 405176282 532394702 252553682 977481046 889973169 563815623 56298594 667989429 93989686 3162645 116679297 356791910 209112176 922478435 408890653 563172442 777737068 664616894 150310382 287397464 326342711 84213221 11669080 170912810 925306787 870529704 992278827 342052693 657705069 507834679 281055988 570416476 944528219 255955328 830399298 582081647 444478746 445291322 493038129 394664554 154039639 336158564 202980501 751591058 988594594 113667139 725251890 145114950 969587983 142709258 434639413 528241709 111743684 545227776 559893749 439991240 451027173 445795365 871770264 892582911 45691511 455571625 411209552 889541873 635886311 753014999 569156171 929030034 15980175 680352542 262475261 875441842 251946700 80734401 969568219 135653917 431810232 329026008 337433148 609989697 800234395 585206010 959895888 3860493 93821606 840342663 851968835 455199350 508517948 8629984 369334409 558164847 634799515 692058557 693483947 440932435 569256854 471705276 458844065 989566853 968193583 719918920 439399049 658504915 148097829 796707876 477156369 598515010 676244071 132157011 527829586 555199905 951439184 674136178 342946536 444069566 824351465 329066185 887998810 865255640 197815058 173053843 305180482 951443322 335810056 349513311 251311821 820396697 839925327 708969249 137095459 264024127 90362006 633857332 633143107 397415905 621478827 935722604 991176963 726576593 201841667 413221390 620521145 144899341 338917063 8277212 259992214 237184606 396510881 460854000 347180741 904299291 131144348 191703488 998083101 418010857 801538164 416527521 315931198 717793347 471224458 886025863 279103189 217700931 794309867 489781537 683846482 391779028 111518537 986810349 100387800 759208955 416146240 558521981 375840844 48720793 854566276 181193470 151981726 57914580 31364607 598599567 763004029 96507524 139323004 519753178 710201575 858899923 376447137 502813657 877308614 954162112 366196088 906256854 576251422 358474186 325665247 727749564 990521084 776078585 978435712 584957495 576783187 760845988 203849707 349798668 543017769 26580540 64778349 909133271 561853153 176848352 138510211 651755122 697083400 966103079 619381809 936905160 671926054 133957753 451813734 3767200 932617255 507387136 384132423 927547522 398425881 938503396 54684500 160242970 624382030 123813787 802742891 362769433 468299104 919785700 908316671 301837287 985408612 367794810 591718147 926545149 194852082 375478131 222251930 328392750 634793111 77137015 137848038 899455884 898595669 468550147 559017274 443471717 79124803 832179889 207304629 354760013 964123926 871012474 422246723 435500991 735725792 478410947 148111989 617571513 539709440 475186552 554702186 55325428 217158211 151893059 11945017 380986443 772133361 515054468 467985885 294453394 342776447 929098904 650082141 894406999 229394082 590506336 298623574 324679690 524857526 714327230 438712234 829652921 658738942 762689466 902625567 916523939 25008927 903929793 160598054 33141073 207310577 962018403 498790108 491422704 791229380 614690014 934257041 244646241 440831961 725739010 885609117 667903565 140423200 358754187 920414640 349817317 395468740 691416103 501639006 725969234 839977742 234144627 401312530 649461275 95428144 632873025 740664978 859264263 908665734 500120159 949699223 873251462 77843311 925844292 869224598 484193005 16647543 664130943 545420203 556162524 618867546 843858853 788707332 220244015 554533085 530433664 960312362 234041512 371326474 877604815 684500023 669862891 58409249 881325067 945008042 487958884 158229573 86920048 285184889 546908439 437718041 593486752 942599697 213584747 600114772 457892726 116170708 241711081 458498491 962712560 788675407 825457022 302605870 718217172 336116086 824793655 136579562 723444067 455920430 30988408 219949529 925984246 719945249 486663072 637561109 658864454 629838838 529022112 894781768 613328124 142256288 44585645 210248336 680269749 538959128 172853412 527978026 220907437 738691284 380076185 905124208 757558598 665131301 470228682 68901613 282007106 347178463 197585754 998404047 620819360 572730533 731293783 629786164 654362785 633410480 925907196 693628871 788833775 161821822 449875695 982885746 920178009 52890796 729210991 686362237 634538859 898609102 653724470 235127508 344091761 784709087 108523628 800752175 735258212 972795776 454550751 39138708 417674235 58963058 443489731 323817565 119993791 30688074 914378921 833025062 318831341 21499504 688446633 341601170 715610563 74698842 590856847 332846598 173072699 171561586 233906015 892718266 65156308 854554863 24439701 24744739 951549606 956499277 275526606 936642234 520634968 529839479 699119385 322776403 632098237 408833400 467717664 437315961 923019010 469183728 254640497 159964310 521408139 112774836 221461198 402442578 525411300 863289036 456560172 972777968 731888159 174887367 374360305 185086280 720300045 486610417 282660478 151093191 142628643 690869844 880108014 925691881 546280046 427825665 81312646 923945105 233929886 425933607 841059188 34282453 268169833 564381067 287733017 389123244 674968508 668522418 464032330 932582440 176417418 850853783 605356362 855755883 715222638 535173978 373864223 68623114 11103149 385389493 532671115 517155706 345319444 90626380 824502116 816829740 51318477 813104797 605502499 414715 911293820 932480841 592927541 250961523 452231689 891435891 576315346 248384819 285783178 326471224 719691543 297207826 719239925 783723021 827675252 625735908 393103308 219460919 583426594 638471186 497646539 280755492 598407683 204612770 785688569 808350531 303220453 518485184 955414184 824074354 93021557 646038991 471548180 804132621 537999488 60891502 388398112 73022671 952759593 460000644 50117313 491361911 320146198 229557637 6094600 10850924 100131471 715521750 569126985 912046596 445390780 189308734 277153723 607205699 342065633 701544952 397269932 921086055 796754215 944602535 909146097 830400316 124361807 505122901 362061138 551366342 826165911 573547432 395898606 552409080 851509969 295283210 847619564 325195403 62901374 542280263 933645801 103270094 75137424 494346848 384995720 960820867 763590271 157889662 391618907 702991115 576946468 47419366 663756586 696584029 544197556 196628283 260060246 152533401 358497961 902320955 980752274 174494706 164947250 758180712 251378446 67267270 770717969 303712251 999289984 237034113 238157229 854328267 166858305 357672366 900074511 827262252 118872919 426749888 60426747 584811255 51192873 844830715 761124170 316870401 269459167 431861891 4628950 231843434 254011162 986951143 371004642 430427610 642772235 438122112 332703836 572860621 968633490 810530220 618708646 743931066 569464813 1053038 176777271 267793695 903204287 214008493 484624478 427277290 563245116 334484797 231563463 756359674 996035682 923324823 939567387 781772265 139028761 262667525 394049459 806595718 190937321 935305228 474848890 389599742 776990567 842457211 883817674 148573007 905739704 675841831 451416420 45766150 698713156 780215882 523076786 519005671 815473647 433542880 607439755 886929802 852744419 217450919 520757199 165208506 834908529 40435096 791993398 171594242 482037764 175347514 736547550 899738797 359486321 475666312 987352081 14055510 565435719 413381243 662559009 988659603 717871716 575232996 131931639 239186991 147127944 963003771 519898585 183814129 665999423 17862244 643698669 894251206 484707314 339453327 424546340 297861547 617446460 939395038 697741491 792369678 334127123 128989905 648664624 490892665 324203514 606239575 490009862 233102806 566560180 259381714 646136485 451182607 522544913 457352992 43903085 731535096 958146650 656766206 568982038 334108009 939296182 505583787 967424208 231323091 451236824 371582827 121711634 652772078 735631166 466519654 32012163 237583066 855527507 566659326 64159148 998365508 952026526 887642068 972288990 941564543 592177304 525087404 267999247 273858503 778484132 979514378 525977425 657548183 315524104 295852327 733943028 561495576 280708891 886817937 298276077 542897925 901438998 821109185 564466939 821628356 463823547 135927012 566417814 284201287 204026193 813818856 509402083 925700332 449213605 633153156 983511658 50739398 926317848 344959641 676865119 352379681 437501622 632190500 562099960 751839678 974086076 737295032 118517983 762385623 731807402 277358868 722008990 390822583 962074577 139204387 475998501 348833925 434757587 641672475 125204425 700452333 622042185 215668149 884388160 408837203 916430523 812948357 203756831 649097995 525000564 965546779 656420559 132545278 344353335 976373399 943037243 426529748 590828382 980874550 188224588 327707561 442732264 545478224 171448799 156287361 55683806 41280493 775223453 145888432 897888331 431804660 909968848 301004046 589732053 273669759 979727592 968632091 659924724 256442300 505342039 251007533 455240589 219957328 263113137 855978473 547455832 227874770 518633549 97451099 143226559 974179932 197055902 444768369 387839888 489999373 749786235 751897422 977112764 42313248 218918755 285956295 100761061 823382001 20920174 513305477 318566711 6486877 620208278 160049156 437377736 76280631 342108873 527574178 342231867 256953450 972226742 710416860 792651918 198759928 513459007 34622386 279827014 388426450 128624476 247657480 396030441 817685380 591844115 348375147 399242093 411455580 428436577 127423171 501753731 267471932 642583851 861685906 1193099 445395909 591160531 109365956 196911481 147977097 431209651 650105376 959540933 157418595 623981499 773606908 926464028 452733391 845091012 881721031 690969290 773403086 584200996 347838068 584714125 460832295 23860502 530859997 186675354 974163983 424632373 197997274 765412711 252060261 485396023 626396192 283555477 646579696 536397608 905057510 752347348 652214360 667476641 344815066 385792849 121911484 365092841 568552732 852759024 541048601 834034572 108497589 516956276 952451759 878462585 717648606 171105072 921685004 575756371 90463264 882912422 668273239 860994601 392374590 884467954 852683575 723132200 415098258 725687089 562053528 872201588 83621336 104316328 164536250 758117139 641925980 760943636 239283829 501890283 425599191 864641583 10312454 101630601 628259912 279033659 654781968 871205295 365694659 350593062 776601660 130019250 402219818 992022461 360923703 603097052 250565426 834795064 423413701 174608369 419391312 649307004 56242148 548800438 167156726 810930313 84449943 929222035 535543683 628192915 404944373 941810038 288972213 710562056 398185334 539652821 885451680 758282156 347834676 134127463 575962724 811527583 473868565 706715854 801426665 487132250 805801029 4615834 200436535 749391380 208320321 622086836 986465782 966827572 913319592 363356520 983424904 305329043 644245949 502867053 600195972 575400823 906480392 831821872 113697217 460963688 320769287 518580102 627178580 615963593 912400816 218234802 123018477 32993543 724214415 944427621 669209861 500144529 278885704 233384647 212646128 2876771 524751033 38938754 73984982 443667909 397327348 288480509 406274380 361252870 151554995 15182752 8216759 52435851 592583315 939816188 838668480 805024371 987800961 561312306 844701182 791172846 255140775 896312210 329138943 557878855 305678398 201354622 340783552 148848505 286601232 329877764 293690676 180543378 778722290 218174688 580221712 21339812 20045239 281768549 560639648 243155484 734021388 565089485 627832998 117941827 342537920 383365397 73988803 758249421 67248972 733527270 302283145 342833044 451065803 259505131 231317642 565936896 937473074 104690049 949528234 493963261 398543488 702966835 511365527 114958929 858973816 363156835 572718269 728173639 737892190 317607768 906892049 43914281 115337873 703561658 747145994 704023312 161702889 935633631 871622031 712250766 716931122 793037068 274730327 211083150 287459680 119263306 188949423 29639814 15813086 877569526 608453454 796097235 171492855 719990665 633946054 344464254 316744674 446603300 973225623 545022051 918103495 20526337 154499076 919851853 539475686 754887966 677353111 684016369 578612046 658115740 845094430 731266243 775028024 786795119 188115334 760817652 548664954 569531249 971672379 541162541 322984553 685099143 10229025 348884415 591548650 542449483 60125104 246988560 325473782 260717151 233179278 158837620 14767949 518909346 316159877 545616834 400778668 831981077 369833633 32766289 677285332 55526246 440313244 367491908 552258278 475859799 721311503 367741760 75097956 858206991 19720085 78776482 317707605 937971276 312257060 467606847 967234417 372241781 974906096 859875267 993765738 21084442 807424577 693477519 716270215 620517846 189625198 171054298 642984562 268807358 585047822 553209735 930864486 219547305 489372784 759467229 18876274 209148501 155964830 148862274 281064116 495739910 236919921 800109604 349661920 69877791 993991225 254071408 45821581 244671441 202909578 300955020 689023742 331880117 277915453 338263766 35094936 897713630 394415485 91815163 38382141 176522689 830372408 866187891 995480985 318214192 924549094 164454000 166953858 688480258 361986579 831388032 223794540 88610337 379932396 524834786 451821079 720439707 648118168 212817087 761668186 249058441 599827237 302827900 438725407 489745371 924259416 98750190 396196640 842233708 316389007 852400391 545195633 21505509 147591616 651756298 724120599 257033428 151158169 898890111 662601684 755921843 349293127 630038973 290239233 87844543 62762675 222903916 344581944 564106444 639697984 816033097 177915848 75223958 758014845 72990220 616564130 167453976 532419322 537949097 948493705 287205952 347030439 375062727 69341949 302052773 37697274 590730472 413231208 191310327 120496408 431053803 288295040 34795647 17865094 409628089 501504490 952252380 541833217 578869491 336288403 386974986 638880865 999298617 265692246 849559649 688708183 560155755 262539873 238502926 51174039 897651974 919857109 93930965 794242798 107125514 841579475 677680806 284355121 383259846 539708086 197388988 908517143 236777463 298045510 2551185 521749848 258931399 440245413 754140910 237804802 736415006 284968518 419721909 65766317 386791631 787927229 789240091 995146844 642208566 600953331 371774865 333301979 841121371 940477324 724790126 60666631 310543734 117040297 453197804 65298131 939579614 109631771 497256111 771274432 854403112 763217026 322275545 192671044 545672309 498077668 415759150 367857696 870836134 489314026 967847561 406499817 532064902 10438831 814750713 84837842 948233629 738610677 843743360 516094116 847424330 171093768 672850156 470504628 488185734 657142840 630166832 890749609 759376337 51083009 254255311 146088990 541381133 271838235 296344237 721525134 687286640 167120931 739638574 197407880 130161747 485993503 977738100 844143412 278534526 469090775 283749066 930816831 822480637 650534622 531417075 450036953 145725235 378716803 465948152 141432488 791545460 845872384 713260252 538731544 106591518 907752810 39179402 609088404 75347804 792573212 842109913 191149582 604628205 41696170 246254075 257472974 248117353 344383789 279260469 100753369 655312208 981348281 110219517 141808212 905660086 725626429 622771278 532525062 761600075 808894148 589700696 574837123 406929126 996031857 811260375 345817065 634453661 421875528 74530646 154931833 366084058 207346634 456301681 214013038 969167409 633511406 161416817 914308624 911260925 697495732 518578608 457394816 88122872 458562892 28638066 430350243 417812110 555865912 204448150 504785663 637372123 668952122 472674356 898625692 817522403 702498226 591666147 984035748 681257967 463344196 328383629 704894054 176553487 467706753 745786768 862487694 576835793 807125170 663142704 25328461 511253367 847164030 427729162 710362664 785370850 611233219 305031696 868765485 475375835 754919809 91124062 656871975 232191854 542292372 561584829 535132761 952765356 319617002 709023628 36174142 940772026 794521865 889768094 669186554 970423163 752466281 38817856 479268055 584480563 968619365 702294962 138184209 168569202 365273339 800646439 106764598 807243294 334894317 644155497 713922186 957162009 49660679 48313734 873185811 956554938 642601884 596281662 237346901 826055758 381689162 255511633 620598096 634928248 599593828 920409899 636302020 319201573 932266029 174969602 444199422 68619288 586618720 572715304 530506101 578286464 405298300 226532536 394337088 815405655 446325103 224506754 633921777 478764447 215230430 887220111 593413649 54917763 771419604 981955300 395291798 724046133 862247311 592995644 565886740 255580929 504060468 504367830 86043688 130355597 909615412 165893600 507138432 547738692 357801866 647077707 735186760 733113992 920819077 501942135 465568233 258306985 211677067 805059614 990885358 155537972 159710442 766806310 477729551 81176887 72840105 698233130 340346010 338596734 505252690 257033890 652754572 723390626 970389399 340793143 646835197 704989959 635044921 808620062 700938010 154024733 184490638 364010843 815954006 376021573 819840146 915862911 487913127 177697851 559593628 268752886 134616561 68042699 703611001 168835400 727434238 576113312 866599933 247156129 187697487 521644023 52313184 51154922 152722803 871601409 442093057 105358303 383238257 686155329 6828581 862931624 865289457 975884848 947744559 809576524 139530546 805511204 935614874 682546191 134598650 763482857 787460466 836291853 176600415 530048498 72877300 417775025 938939028 437796017 563614470 829831752 280147559 420340634 295803975 135342119 54515212 4972980 667236172 243247591 387473610 455430702 244075716 704798214 998016168 852107018 804698592 221092442 678455928 595275727 911388920 887521090 73228231 581549081 44012899 823579504 595073660 893181205 409475159 904649708 703677856 296310467 172470958 810334572 388834401 160469301 719897550 184176715 476155406 114691895 508340790 734506872 841091318 818156400 580382001 767334293 281375643 218498986 826962615 868125293 122413939 402478074 622055247 919688555 991754740 375473677 677305868 246601142 231902686 551406548 42272204 200080344 745288733 391191959 277136955 66425716 700773136 469719582 70357740 890832293 982321559 87140970 724258935 524585743 600716399 499525499 947569207 186870174 496302206 817150644 115966647 17418738 531082244 249237947 938146448 892557640 671697481 168998330 439442041 248995768 304455409 764977680 276518573 383230253 892726831 689615275 77380809 570468765 672773966 430594090 663422809 56165646 768954023 439785201 897062923 818489109 905743309 695540917 899505401 74614848 818889366 983006861 612307222 753201108 941323158 647803654 887474553 436005863 916881851 244267736 409549287 585113344 13430400 470518585 255260144 852201290 845000071 854162034 171733490 151952340 60644284 680291102 757920884 835447423 233638217 961789228 635877439 152851359 527092887 165205294 659202200 235160623 824363216 342238700 463867919 183473945 982590359 821112344 478999266 365149404 190749499 824494087 858681462 679217019 795339114 171923533 710365432 702211685 428038618 253229867 216281601 341549686 492925888 838945071 961189289 82934370 645131925 21823439 835925745 681522500 556494282 448375425 843125691 935289425 832297580 976566164 988727782 487291067 403472242 473415704 744560472 48593749 501976222 869209194 208996468 499428271 364298741 88411751 390383172 744766682 53589699 163426736 939208647 782409292 135164529 165697692 754518341 189913120 375317792 971812289 575642662 19452877 859505259 940860332 537602501 385778657 998696180 424607310 734129648 560575716 254506063 928346569 524389426 157576455 289722364 885746232 237248450 414856141 411949666 693291339 162721371 38883141 857330868 20516562 125150841 755715868 697880683 576739955 754049118 420838726 188633337 27613682 250178469 154338254 435461162 607012348 376021017 855695891 371311914 341193806 965948377 671155124 634284046 518518793 780935292 243215015 585861086 295421999 700801602 399820595 980008021 831370399 467245751 973136944 675973140 878929846 99434930 419711498 797754034 850156609 477584922 720789052 225594509 759763844 892069981 19620271 309042197 196320919 600907949 578375832 367590560 842915738 33905759 415541961 489210291 463360477 147446367 254444704 105702738 876584850 866442905 854936080 881075695 941816089 49947226 257540471 130630512 205916628 835889223 999856091 740337054 371151336 87218644 309016109 666099813 538054326 107750683 36703166 940422758 990330461 676532703 364374630 768954452 137756528 495828572 68124696 557834470 693122991 281542958 488460475 946368873 697932208 127095837 990498596 854587613 538141464 848617041 600178325 109031573 900276817 289058406 496351650 482242689 64839346 277152254 521971827 288927436 720123998 441405094 124099633 87636000 617806419 369999603 732134621 373915156 351230246 269535449 908333748 791384415 707588769 347012476 41789540 612444611 828943289 428557503 531491097 588780631 697830445 164701 852477876 666234435 490007426 858233656 772750760 766125702 921621085 302743219 171624482 409686041 688350703 553433824 726940927 943234435 642972618 604797855 664771113 384810948 29310879 764961744 156405565 222805847 423691015 387519719 432748972 74050080 628678133 336452798 478591665 405179551 729889582 267520008 280745191 336322933 737967043 299850013 177026001 413384883 519988082 664857629 394078998 956794040 340367182 718049891 571597882 304487588 366671982 961528216 313161871 845089565 54398726 397814666 879193356 211103739 711787125 992597360 654873477 367708887 777188261 936876176 775316347 78391411 539189196 814735012 825828227 405530948 544208315 113065602 412689851 563399986 200024842 379686718 107789281 140556167 53942821 762603101 444954340 607224372 892369394 921154501 188722572 221625661 488047437 769479742 82709930 537898044 542411836 40119422 353263165 99926312 276450397 84500574 566642334 323216440 170604443 796997295 723882229 69180205 918693662 417518658 71393325 750660986 769202730 722926226 449469823 521014624 920358713 19725605 570460969 484172704 453711628 751707873 779544675 417388336 247803869 643546377 147893083 499952593 48795603 103543387 658092905 31511219 298244382 803094773 867978362 277453384 338880893 694613824 764161049 284700646 337955322 210290798 643597817 393504259 987680190 409544322 310334605 552922586 219969266 501055784 549729251 738744464 198599509 871013491 25881703 621135729 48371784 48068118 671896365 276919693 733348640 704357527 284504364 340524713 945684339 342077757 159143991 983360781 968262812 625407911 51483577 458365295 577573563 103308669 316186647 864765011 47631171 147422000 584490846 814863747 862598465 688428260 267685661 879179215 29209833 9003501 787756518 465689283 988260003 350363143 653913062 741247550 105977776 236071090 228132784 490276583 27502159 496157080 221166736 612926593 203570043 725209930 627840198 836754760 936474971 854301394 948471267 422164223 334297228 445364608 86278652 213280518 340860633 109615354 767852270 533288939 122478770 849137196 292645685 323629836 786946299 414002002 690981859 657914226 617946022 603197399 827995844 544541473 348381753 102876732 122032132 795787505 594968468 9209994 968349278 539590419 443624758 103277862 943299098 587687489 598409686 686349486 892486462 750242682 980099779 282446048 573289652 672398189 394113308 803717544 483382872 698987823 112269263 859844817 705873895 277453185 745659056 300990530 958242310 587141197 285528629 105564887 979831416 782976837 15276342 750879192 22341813 635240981 32031570 642076334 273042154 940888067 37466978 252854637 563274317 681858687 442961729 749502695 462592331 889750365 833932308 274429631 324621546 469428513 389774466 483318579 713392720 305062259 698238105 101533717 872465803 740337491 129739611 211305875 842409049 713868936 538309507 356767901 246480633 814903101 561253424 148817465 169231215 272184481 419657237 397552013 466095315 800318342 732117864 821292637 542983073 596942440 429668554 382240536 591679270 913770188 737394131 295602591 620218689 481961744 166984267 545903208 318269722 996427077 475722834 456684585 848035740 996051201 277583127 40520858 362045303 143742407 86758853 72959347 371226771 723430111 764139354 95721829 327111458 171906693 674542009 912468136 702458098 379897058 51249117 997667793 542526883 881337773 372383758 936171051 702960949 897900938 568199605 372984946 934785142 478849619 831172124 384023823 207587066 201641461 420463593 465748452 746268408 110748853 47995727 540304826 950467780 415247227 187505595 799373368 496454561 986000689 898304351 965700769 353101406 448011260 635288756 407321761 776629016 227013773 773569883 327220849 913078008 286130658 625157620 993400989 246554863 460878445 235257300 192397036 961898379 990600519 688105430 758471484 326816665 55730836 509146831 456007579 250660131 177005650 862925273 838881928 646103153 261052185 965492382 127997055 481190875 396439203 788302418 504101866 498283280 627866933 578027661 542453347 29082934 327981479 730770134 666418221 606880279 64596522 977359654 415408452 96824155 562934693 455584730 591664893 848851899 925891032 745003420 680080232 364608425 1075552 707302114 521588163 965163162 121663903 347118591 596496301 729644174 953018818 64697258 327362523 16626158 478773474 906639298 450659886 842465939 585679485 869244259 356851498 802075700 335644269 159309947 686417972 406313822 171168516 932397583 12545222 962451023 272060129 282525311 393502085 484311947 4994377 90284009 1346654 101244591 220002541 606563547 544244211 534050747 490885997 189479736 750897951 790735010 786825397 212630677 178521965 882520234 706398235 260931638 999281269 830909319 357800461 250940779 230363594 332267630 388060874 349217980 582999346 324678470 73583654 337521690 94426292 513007863 129325278 702129868 919109894 25736107 987393325 89097568 683517140 149968023 582480696 779209047 363086359 9450656 794111448 411327111 263994137 271144542 825327515 735151318 298916772 940280844 706490304 637406808 916180234 428999453 35789605 58465422 819522075 987260476 687015029 129175327 337236661 778388560 632289687 656305301 774335696 651499690 13177057 16430957 466814351 674140990 970293173 157758458 806042997 109571482 971356014 570622659 183009403 766856643 875875719 357418724 716808370 895078643 797827713 311871312 177771982 459089842 694833097 218308359 189658964 429040480 260272087 863168964 724004082 812139307 612676188 516106208 287611541 43340187 532013410 108041881 115955644 562678932 984203291 841434679 772710097 361049055 563766246 692142576 897197155 537073839 640800548 591592043 944180911 398530766 547873609 172336584 73676910 736888835 187854804 55408398 448883535 751913224 786518017 711450021 536655457 455175118 729949329 440960928 604964988 478854667 898327496 543276807 420615713 699064099 428463573 29193877 613810267 858955304 667223993 727187617 891277806 622081243 427018099 559335640 996395619 850542714 612881848 7011783 699881311 624092118 458246613 655838630 292434877 742547973 110330224 514327200 404616122 702115211 699437562 403771181 589085368 7028669 116717036 844287918 103287430 694331207 510663476 746401885 649742859 594026840 429104522 898632525 82421559 707802222 863145329 784645774 881433758 877538830 751396084 539373013 651160102 294995184 603604183 749360115 962600889 228442860 500590726 477666601 67564658 959015994 515018585 594755763 749721017 973391085 931894098 214530994 225004447 434394794 790107373 481255715 544670749 491825092 468035589 361303706 668985186 6741415 915511467 287462550 863988732 262018801 187861528 556769576 771554751 361228376 245816387 699511605 148905620 764182461 207720305 403063930 205553231 944724470 540613097 453318812 676892998 246911395 382604822 606906601 491740817 303983436 840818531 240061857 830280853 660460505 667405364 972354634 462505017 61065507 527174028 196713852 132972400 494990179 31557947 649911200 579651767 766173609 347010377 611858515 860977956 469993323 76712251 346866389 263495990 45122040 23002168 22877863 567756615 164246700 153319352 141979404 58733686 589200757 425997349 680601227 568148365 109946466 274494074 69791367 470668663 578536661 331001175 544881084 201915568 485635018 625476886 523373728 255309528 839076061 658822728 217175226 365637413 186312147 527213162 201917601 503324298 954685925 70603223 378254289 380705354 785392367 441875626 614935703 642308767 643419283 155218660 882116316 788026152 823039884 353681292 473386545 432496375 668848970 457074104 849696744 838655711 354058145 189887128 542378067 981206704 231620940 987346300 259572735 680072793 854819708 794809534 375178499 464215128 681102813 931236360 246701097 341773455 282184765 716947508 322077835 92597563 221914269 109644312 108697996 200752848 252743962 545408725 401621352 353039652 546420662 664580375 219388216 990008464 387848235 639053386 586043570 338486966 874352500 724935749 683632524 579841061 436799269 787871059 322850946 146083798 670458710 350465785 139791682 474261166 830066805 684950999 762949573 113825660 151185681 780130639 452342490 396113447 476084517 828718430 517366741 96177517 410078778 432204283 568611784 96717901 168501237 891351993 491597827 941415786 763998601 843331579 837504581 431668949 692566341 131450587 398285130 697690808 190327245 577347821 191362615 418210969 946815803 530092210 265235173 37933251 320690959 346356597 962013268 930127349 302357778 558333246 166537147 11170333 408087094 320025257 388804132 137756907 641170350 558286720 272125602 456764727 527861529 181240689 832804149 926750721 823740917 926595748 510809081 347326427 552030703 65032111 547644664 671506081 306836633 901804422 486340515 522826195 334586834 26552059 252019781 863626353 537364173 716498817 586980163 64897849 954183202 458110180 381338971 354171530 696661741 624721498 485210236 520176805 71919025 834805326 955655387 747540588 361680060 628642410 73361390 295927381 222024320 944124889 648774493 543190974 839956649 516540442 482191139 959055071 351337158 278041443 658424563 692740658 145383188 328754241 623552387 110366075 927237231 913335668 671500647 23997134 66688248 122845028 458499667 891687802 66142505 524336389 654547100 3632628 75056041 721983062 555675212 775015734 775733607 888706227 684738863 450524232 183819096 874412789 765151261 719815771 481788262 765405596 318798794 628399837 848931220 373323709 617891540 893023143 437848581 471704992 701890593 304309573 842485000 359417407 620463982 35741430 911394903 60284456 557926240 54131481 263198512 207961684 899767509 423452906 848947343 634130308 363980008 623265914 961121750 711385680 331633555 144210984 75251592 403884184 888486740 573324233 581528319 577607937 120071276 534016821 204291738 33974567 443007578 289187926 938916165 580686632 813635018 69102238 391757995 424472640 30647236 493850758 861741321 834290779 913569738 476735103 711556202 782781499 132049077 374258603 214370140 6460314 936449086 553834357 661731697 507529414 966793451 217176337 170176182 403842834 144889082 130340722 371736328 83748987 809625302 128087365 852720850 159982885 554339261 644359400 630452999 231305130 602379043 172945838 96297222 647882859 448526254 354319376 869046676 513928471 811227468 14975337 456648404 299033149 791962071 320648193 272520025 693369479 922435909 643804613 936984710 409409817 92737195 993709264 958162822 430999740 114627153 911864585 298907141 565818643 712220273 366994323 25711545 746404181 700714534 985951288 372185772 182841995 540824176 712439624 887311325 653115182 228566915 224619592 647180818 597438651 844599324 608982386 518100712 617350905 858680829 673262054 893837755 379407070 579943353 542253488 995303833 380283875 489822600 928955181 817162273 536448841 630478956 74816545 628087656 195705059 850968308 624901700 929343089 807374160 281906472 440912942 765083538 510406362 963389510 937327073 668314388 409949388 442618673 86323659 274576225 93026942 681231564 349937026 885878624 453355823 227927394 660113995 241769001 180249617 316053186 43301472 468778514 415666949 938147834 676093057 782461583 130012347 990108494 819003670 900267484 689895269 883042472 76757727 238704161 504388124 861503093 876437175 402067580 356380445 271164409 695579746 691766536 393308070 919833264 858497905 438433369 788562685 49352482 714282503 617869095 400938290 674467798 252744765 395619861 454947805 774231921 241075141 88311656 999652267 256865863 283566392 851872417 938433421 360041765 915658288 98740583 142546315 749520026 488760097 117479862 309765287 39369295 89064540 342628968 815851365 812336820 711322058 733986948 469869831 407690193 511745465 226965181 325533806 769822264 105676247 1261184 507331748 530121025 516296151 944485570 808493217 467553880 170836817 567776030 554700306 375377061 616172491 424145184 311060165 651992342 436094660 754223382 378453160 275241700 220241944 945047313 390364433 946216575 896096768 952820471 957271106 333229671 97143375 984687783 241787547 820398806 83468293 834236659 115539056 872963615 794233751 721352151 20661605 763442736 831118809 742019723 343269850 96621259 930536690 861099917 34082590 476436582 766667976 737467813 325204832 387259386 505606782 454472150 474250929 597714318 835144917 902557494 797492163 193049993 5289049 461199270 272129156 756820428 865392265 343663447 916145378 639258886 470695467 785086869 143628640 665829904 409579637 689397016 34726030 166096410 106853741 249212163 822725033 309128643 287638312 761136810 505624456 346080031 74445559 856566161 851132925 80283067 366829688 467516900 795270503 307761050 822061931 481957121 830395177 40385216 551001732 10029751 406811439 620071710 905018979 9720980 137364253 235319793 74860582 266474429 607315704 570059606 859596280 496984370 999296648 445447287 945876229 800127101 483582774 828874811 927523436 666015960 938288777 268171002 839881270 614702740 51832720 830835608 523567567 391192588 430132887 657393484 387302079 23163066 327114281 93671117 769964650 702687664 278283227 173605556 808787913 661527398 615910709 292629882 886963514 819438805 504083056 276950248 325707473 344666784 697160024 640654070 124864604 792856406 472541972 702410091 779274123 928756028 869784070 392146733 274574954 860242296 345672453 320393707 618938353 816594238 24702158 679061317 312216634 94031214 663174632 479470852 905242031 618462351 381504380 466162962 674953957 151798518 854444134 521849988 539618737 903458478 384615371 627434925 115144051 994849075 812782666 851564280 141749033 788355208 898830913 58728918 281530570 495499782 802695549 448874744 402596024 998164783 475244070 364164487 693324502 897613774 759443080 669799395 810654925 187941471 939449175 711828517 465631442 769261305 963142048 544056193 380369454 581604739 663272939 641427380 677959275 163011850 480271838 280592006 981017305 898411317 79372726 448276123 655821747 242929440 50462575 331584255 528958950 36545970 716261298 644931040 442461046 146707822 618716642 271419047 988600318 479853873 469538922 535052055 926289581 564058720 688071786 230207273 928817425 68897199 71989238 503686028 716162830 395344181 659926728 64827868 188891209 372990875 624632673 558829814 285677281 315126419 275337421 560268982 179540322 280486492 532033340 581034783 494581674 783114077 506263495 214282220 234707838 209696728 607997654 926676001 427250886 135589276 657512273 207274192 962279989 273774668 6769887 565416745 557371805 659509504 239579618 203020842 979941166 398673909 324453466 968879107 343527450 552885849 395804640 979878558 560542394 301609259 155194282 265511383 175386524 712854988 977642135 989475027 499401963 636815253 827209 540021219 685025989 218166369 913400266 405118651 388358082 945692826 613818402 88952371 111928364 443904915 602930323 506147121 733437867 235213662 733815889 428925129 355786414 451352266 429346428 435824899 180669875 133007456 237393144 310759735 814746273 420136977 995598712 78186521 457427824 308648758 515866971 834475580 984723939 496663788 117359730 861960331 845920325 169799508 349799866 935542386 972582321 715111670 83739297 486334751 270968627 130027393 225913302 360315881 7788752 158987672 232285544 649153599 91395370 358755087 913350917 542224879 636248515 731591284 47136476 858783144 537314240 334915660 93317422 164706258 486846706 993646470 395646339 620254409 386823079 529024718 369295261 292582513 1524923 59097646 737463244 926564091 522996714 270950145 856114775 136119199 787200499 393189851 100825872 910383160 410820304 850066298 743900382 869825329 208838467 983915540 228832147 683058014 310356164 915250326 116460447 363706135 295133553 750363245 13750322 94366186 90093276 96050653 689767777 565817199 898850066 293023252 58630797 883018840 268313203 127484381 961950089 544050041 678643214 11271973 468127981 419699450 560678735 195233867 389665101 193970222 789199934 994095761 188458869 131108893 335036064 144652472 818906224 609616454 173621503 903176592 305511017 196739806 676367225 802368721 160754496 678240849 941300914 239744389 783868708 583048023 349501326 246453162 142300925 945055359 397571799 810115059 453514796 255994069 848267431 735564346 678833788 353392898 842734916 860595624 282989163 386162800 697090116 948377991 565502732 877771522 508520040 106778076 32599332 54473770 189563071 643498814 675433706 324282844 192256121 638614299 951934076 469510190 177264841 74565498 163996668 244187117 586479595 886604341 879742822 897840075 601189664 300785502 582391230 371898472 601863122 986342582 959535221 93103545 991271899 670291122 581497086 58187845 850285227 619928084 437275031 896569081 446078676 807376361 121321524 626310875 218201354 293318923 696909499 936900827 934882462 353530584 590264328 717070208 856543581 194748597 579612078 825721209 689591928 235904776 569879568 172722339 579771735 527280238 704014511 855283784 369101682 676684002 443310942 197941872 92253717 479274619 796433412 361467486 217258215 207684714 494950360 730309574 8404523 192939394 184415225 378745661 771968341 681442014 62857477 46285271 300156304 59030068 187300531 127258258 957420625 361727269 703567719 262666979 7033339 378321860 233249662 125313355 469115744 744343982 966676782 541306047 942559251 682218812 372531229 232197500 454344477 391313138 34954642 562728658 220500067 678203723 627716885 950766652 798759286 900161495 588406223 434275919 152271460 69828452 250601294 165956754 945704797 455734217 537871181 137475758 287604753 982040261 12300331 474467236 569421204 101824762 31609405 746462121 311656424 572248540 913420218 966590413 100221772 748641715 933200670 586871581 892140669 847448085 702128766 882960186 829562791 387311269 753053863 399750973 832009052 737624153 679125254 508432434 162419255 998625699 679920665 586857627 445548801 947410302 704896272 898068196 172729237 917202076 978735495 71814892 836537183 263874174 125606682 228201587 959842560 602951953 625244715 178297824 451644340 193766188 713471385 149582360 108073392 797015715 842089907 925805125 151656155 977413056 214889853 431317897 676630886 75747595 361300207 957684135 288409117 249235480 499141923 567423523 998597704 448855494 137072794 401602721 938721933 877822827 551837052 540997799 211816531 344602083 697552148 223322849 437336962 192679739 577023785 331488758 410852804 927256626 739694831 656043780 344212931 202365287 563748766 533534748 563053332 176782961 829421099 417709062 703368223 807547155 575816338 360391203 905913051 935821709 469638347 194124376 660816082 237582070 69179214 861195620 958198438 825961439 347759188 898861651 460215610 440435505 666033358 791306546 802650337 734398463 980554719 765520442 725511337 377059499 716625066 754522736 485588431 711322055 771478740 456882903 753303839 472341126 125037052 613243950 304161874 984308961 344333167 173053284 660290642 849247250 179867117 896932509 329591976 179770641 225462454 414362533 629477682 400455089 273039827 743296527 92800496 141705690 360653621 905499790 631974755 258011956 847653820 280429672 27787512 537837946 659961027 507187923 90526777 934285961 354377746 297162490 784233672 713740065 867093833 924766081 656847125 694407610 979999622 78715768 828270051 484562690 851211289 226783297 141888818 761845242 674855831 355956321 643420931 984270644 255135070 218362771 432520433 749185897 105874431 868637279 815591907 391074391 543448127 431323938 24536970 571029266 356417442 912421688 514777693 42364228 560869184 725863389 654589892 418655214 412379249 191082360 763120978 797205511 444738441 641209510 845500306 442249187 976624204 668638633 532552832 988087519 954512351 608135747 877596571 320340708 119153086 300820799 11093300 557854920 308689459 348198880 727647441 45713479 19504823 827643345 645328669 203970779 205185391 706600284 203582189 672701775 246582445 736212702 414522725 699506671 239839653 385926729 817058093 846783113 984258342 923172488 455341669 782112626 488395730 164008243 84987744 577899844 250767068 659526813 688010935 668128817 171504072 136004473 322018942 884285786 280666867 480550416 324510223 78918619 971347883 602183393 427231841 281280575 409043577 393284393 31589739 235965321 85565992 951785977 817290969 242830829 184129648 355808855 554034097 734476732 476341575 294775677 217099300 676722209 216866658 909117234 492924440 580669550 79569542 823108642 168533212 929267120 490228485 219454592 481970233 609890961 315595259 223354214 918362606 142422581 262352480 220671248 270995123 451513252 383808419 418806673 1621694 387613958 279891827 8161839 273632847 484039622 100021785 819997090 361723891 899239039 674222180 714287251 84590840 295525181 467926440 894681970 760431571 322892758 763841143 192316034 169628718 74384125 280000153 292748625 575240681 615268789 404401815 375788249 229910757 494015291 93422370 670434956 154379261 758356395 378569499 546813359 371805357 298032544 373520557 945598642 97051399 77875633 694359964 792549735 79965359 886104151 148162480 356487376 510849525 319788271 56812199 802702368 704716599 617203945 586327265 240504768 931816112 278947812 274057661 416345883 395139290 598030186 518950190 823810812 627087127 599638894 268195523 184321600 685916717 400506146 602060574 329066756 979723908 108219742 220995780 884369477 564294230 27444929 297066231 145604509 488258344 118582426 67514895 839510845 572950200 558110499 550675142 920930804 512370905 777112205 922394897 807796922 326680062 366149839 480860288 747292381 795193991 981165653 876915123 345723337 44783177 171539694 239336143 940148931 531769808 773139036 754475990 181763876 177903432 232666320 924757433 555158182 136188053 159203631 377116660 529020371 360263102 107790578 72668388 779981057 611408736 62431629 269457287 124796509 99324951 602582727 84104551 542888469 168688094 691648782 375386149 53020322 21199649 674442730 371279951 970613228 103817675 787287684 979654256 132488256 607875939 405940387 258617773 7831641 19955473 576591461 995103777 243208079 706431352 948394185 579602883 375194786 934261058 959917718 553742492 81833847 240893436 834185348 378688900 962933956 434397118 588012621 364286047 470168457 548148570 634368373 114139839 333584468 341638327 21753696 158390468 252431125 701071709 405471808 679442743 726706411 482878241 579497269 399758964 555610942 853217716 927677296 510745582 499006117 465784224 523044017 923069956 735781063 72440808 141571075 554482521 39848962 791686404 97120066 748176778 817500755 614660282 841672632 733933931 925142844 851708283 565628052 52509929 347901409 313866116 748052728 353332570 621587021 757234402 523035684 721139645 332156550 862024224 145446511 602836982 251736992 539972498 686527681 587127183 325836300 968055211 419744564 842303617 753840462 832551914 611963592 470529552 180391771 249876253 527945289 752316887 322811252 796894671 740961212 788589321 328585805 218923947 289037486 452790282 460223212 82930693 858994338 914223660 724716007 227816393 701696874 131500056 813246122 581935259 433545154 184987631 401817937 494879947 150017444 703243062 210122331 576196426 319745335 696583277 795766749 861556378 336190295 985014500 71748352 497927608 799220701 630620553 344742684 44143859 545143691 463486792 531906679 143192296 852072075 250600637 612681197 620364564 758220827 624373510 98489988 535711620 128129048 528754459 364650946 497987525 996582799 726341710 668846439 92720621 945380144 12195621 827998830 904429231 522717352 782280846 568776488 421611309 663744798 131396653 894700606 531092950 948337192 467819224 918715040 130279826 564098092 72584078 892125179 278202093 923263283 303949533 531822888 719327714 382999126 861157832 725636022 130575106 370618357 970141772 129914336 166031884 264766241 318395072 45659074 785646529 451005167 408684209 762290760 718732629 662058490 879178581 993688447 812143194 936563412 768042986 871427830 457714166 195620488 341691102 48041038 494539401 862611548 531772212 817476947 339749018 13400708 450898861 50605620 12667033 704735732 164988216 282162347 955761115 281405215 937057549 228009985 874227147 704673512 920792448 976519457 605698686 971971878 988786024 637618103 281216311 38920020 207464929 640891040 886134271 632350675 719421105 888103546 484394514 731250981 552665563 705697987 679721947 192179290 101266902 914459370 839324476 259242581 305941884 831377010 15948382 216387010 608172205 677934492 738806757 384851143 849720004 54440618 548859931 948249515 574734915 587102687 639014002 233278508 633344394 24605869 850630870 46587058 873260242 941806660 209616729 632043708 227110622 224331344 441206958 680436742 241558064 96213230 878403717 478199420 968220551 73510075 571536409 922194392 603372305 188227657 130239269 493930489 400243688 912714790 63986743 933726194 87972189 132010420 674274208 750573920 208945861 872380203 348492166 401218574 249678797 843033092 286169492 871223364 939545971 623436766 455102259 88200991 762565072 507574057 352038406 510797031 805830269 986520468 651203946 888998145 404600597 198326926 647095482 52232546 530946041 797008329 566462327 843005673 964296612 860066916 851393844 646541957 463993266 517770684 750331296 500068758 391189598 639925017 948782495 917055257 587097263 991444008 704124403 922755070 940326527 851606438 115103836 656313506 90226458 13832443 62982323 630481320 208158588 291840862 47820090 589625891 663667278 452760608 212138620 364155773 862347719 53059218 817218582 597388463 145597214 654465314 697541870 58605508 646831082 321168552 726470455 318033761 790734026 952114154 520175031 721573977 963487179 281378476 297394185 526312087 257740164 954665294 49019881 880605654 507603266 455914118 16832291 125397815 794315112 752691459 807479650 340531492 795664174 226216741 825017652 679833051 906022519 132586590 592739012 46413853 704419098 165612782 349659773 385291608 241551119 624296828 187660151 899280402 149338002 718979853 330307038 433909862 236827907 81025212 978726476 983663950 939505604 796778094 891468557 141933929 346697953 366477300 763307905 445771707 206791175 538391747 998120945 545842356 586469608 185724214 978606334 896063111 626872676 425031526 412330640 351928250 249839214 749365044 221957599 314240906 199606115 122506129 792053906 434290372 966690993 837199835 733603914 117565571 874217764 684869170 214701741 454305841 965020974 450240335 939082770 150804935 188260280 274237915 772448141 690722922 189460907 808148215 458868589 307417485 400215407 341070056 725106425 779991923 739467880 161058999 377700822 415106723 75955733 554596996 994819048 222203684 813657223 856419206 608868608 807631451 313188735 197275333 915954430 267234778 796851276 19771283 395865181 204866366 714570249 813437132 18899364 348871414 446576632 323713161 325542531 33639695 42316414 182696248 314596885 231079327 903143763 300702171 63317513 467882065 300174536 38303427 337941568 452617517 949847692 790675329 331917027 904079477 685898998 187461619 904370231 593307514 201828398 104529047 842460935 60949511 556610230 337718225 220194041 216871756 220910842 906981756 240989982 767234456 511771512 953317352 351287761 288172197 724004794 335211644 7613167 4650420 576880758 5427993 516129155 582611627 868757624 490993268 942400680 967218934 570281301 853775549 619243574 346914003 445215523 904639349 916269981 964067721 582639684 611898342 629070326 651234481 231017283 56868189 427017856 845638264 532352210 782999710 484020821 3039618 80393226 381833239 545458993 162802810 399020822 83083412 444990307 889542029 59945732 334894255 187124150 537815981 893717743 587197701 25028973 993443314 69748896 619066274 479106296 258795313 872816016 25088077 943565509 419259911 767994300 847820666 853977583 515053039 68991968 842742568 810821290 342381768 822301053 407960419 503514057 676919794 425096521 459717132 990928820 429871236 199612134 32594193 100915944 232416295 618447079 311658662 391688298 437872057 562974128 94227643 648759651 754530476 927803215 247945315 572426920 20576008 323234401 721985341 757986101 738568626 18406808 492268604 438989291 885190124 154850587 33926586 71015317 71177669 999147025 994058728 786400902 32954991 367812458 865047727 124804139 364643653 141203500 361812807 475146775 682015879 380129764 831141646 924700291 845245942 695538673 9263513 501418427 461164702 246663228 932421718 881526111 707231765 409074929 439896608 551415003 597312833 277140588 106582450 425117909 415054259 382009370 885056615 663894085 654360239 904223713 163484184 301758220 34455333 571258643 453976952 517848046 600710350 755640605 951311311 389670753 561161933 394458338 902373732 26057889 386602758 823542812 135198732 596398069 301776605 580359248 32450191 497318874 759520871 75364327 187139123 447502893 132708308 924203525 673553638 36014335 957304304 556935581 732989925 288802171 726668684 247378959 920878415 512753260 119625859 129056232 635300591 756695298 949303235 842823464 680561719 28554564 679032876 684255095 330018220 977221646 956574206 238621553 85966712 307972539 830149743 76096498 591485777 870107015 406275165 228313833 396534179 506008029 643436735 390817431 186330882 837750211 52383301 911381517 560881814 661877553 665198140 916980179 620059566 967691991 522402837 567892820 124621807 908705663 938342069 357736016 966937148 374299045 913406316 285797401 438624521 581719952 703038923 554956082 851980208 701609872 914279201 832371033 576489662 602188718 760703712 803002346 549546783 21197114 881834841 702834787 80106187 294989476 920582844 409526858 229153851 119087223 898403288 510572292 636489555 639505902 35645207 222616034 758997179 622536465 264082471 590678813 867322330 854755846 421480714 350086473 613057631 804780887 73843315 225949209 157844459 886940941 876415914 115425286 874531447 901218149 841023824 133940921 571677283 878124082 525417367 307847961 859952911 771747872 102716824 578070469 552128480 730433147 415068842 563919194 315263882 624332973 91231146 127783693 440920360 215034408 263458878 349618906 596734245 15401957 914114531 107643463 232232133 919329074 439973887 478208956 566901076 471982845 125919529 766207263 172523220 96960829 321951723 779162904 164475544 905710171 56148082 879534501 430876436 775154844 293324894 695504155 451039158 573338588 355806692 216274802 162992013 306830440 774576655 724962905 475072511 9779923 646429119 304471584 867070419 986964654 28872510 70096213 576483129 670871641 671843195 468921947 769501738 882795625 622834998 346850743 576404745 517394380 113976351 504737042 182467551 588636987 225966308 507236273 112797330 676480045 595301533 541174628 925025046 52858989 290423371 418998371 963205038 864252414 261063305 989945190 116833026 13312640 534362911 15882143 810350373 976920546 331389579 807845781 334142494 456873119 863700031 288856452 215513497 572318827 88493168 605349347 287349163 741677612 559948424 983373592 365519252 952807258 465109728 749979509 522138047 731914591 35069339 484730876 277038835 568334394 251142308 664476570 853744068 572593354 486026073 222274537 589599328 58090992 382645688 281334572 595829908 531177295 832977730 28894637 986541584 870109506 676115654 101946966 615457054 48241612 746971057 573717242 69580361 303897610 693072124 482192507 981414529 755094434 758364881 575239490 88539000 358873226 254978618 563221369 225556502 442109796 658258619 596951679 721470144 797427160 176758311 830894911 215907784 139196968 108386434 361863719 928273317 866544259 563357391 641674174 298467057 254098273 886938953 44610175 606194448 19120683 275870561 955715115 9994171 966516369 439487977 169943547 51968123 823186057 274625671 366090790 701488255 602172334 575316324 687511871 859212415 110889338 271442839 782903663 8187133 153585803 212591318 304923972 838143644 591954755 793997567 736494796 400540123 696663344 410880144 834024065 983639505 679170803 374860573 561245963 66604538 47708937 235992676 199561111 299259560 530647811 888420265 895016147 520470916 72545706 173905680 23517331 971594794 702917849 563641338 835162421 990874317 876442736 464251347 416052319 996763740 724121949 767097333 572889059 136172634 352337341 498919705 767147649 968982816 330782398 888313440 749220986 115321635 934416612 708787297 891751698 500507432 67596862 270080811 804310680 411420451 468983019 990300531 111060941 999048063 39142508 70950270 935672813 611893997 784860339 213684420 958055438 501739857 289812504 31693648 321876019 440883141 922499468 822089487 220890446 172786248 921776618 204766688 900482638 278725068 433257477 73778653 188948126 555574423 74563377 839731025 382329110 106769261 808416728 465606218 805170583 815059143 908495030 669822779 800806183 956985764 567468520 120883793 190444760 313629155 582925466 909186897 760940777 47772550 246048957 726727625 56526159 195697621 918871650 872145876 957603647 692537665 535193541 841723911 274894454 923259911 75468613 327781291 503387995 56586522 403644100 518706119 92612576 954238813 532367628 450588598 854333 652467995 692482418 85054039 701215414 867789067 255268858 881492929 245470165 616164850 804816197 198617734 899893222 540893330 970218480 489273022 942867663 624203750 173908014 112404631 786027163 98591515 809878379 674654768 86630798 663503707 686207985 302439002 640266603 404433974 319227984 772366697 602162535 240531551 64738645 377183110 654600030 429804988 343125801 183353403 965629940 57560201 660513067 423183526 318108506 483497662 60751078 560738037 78548936 10735461 45754050 517867859 583815156 855002603 893015551 63025423 485717426 942830578 646811557 683833444 872963602 635118939 903648729 951691967 753656742 567006723 186131082 818145489 392475498 71391578 976246427 40806487 896289194 196243944 622381574 356263101 229238868 692332012 611659074 423753944 953962374 539431660 368151825 539523880 145236956 404178998 695921630 343617306 515551973 294387893 453417232 331244231 578568282 803225588 203623645 42837175 440930942 823099705 584840853 272293028 589068045 881107337 574992346 375563401 58554806 435734163 620375634 717319891 452260480 660692665 429966774 61962792 793521645 196604105 354119563 976705018 716816945 216738085 570264477 85072224 957408778 687250995 482286528 147913039 683838104 861841692 919701990 908970467 87807058 428076683 2865220 73055319 702445568 274889642 862860397 604385703 631967023 700476274 424704824 973909430 695578479 94037190 149923955 790136581 519037771 734044548 433316705 990554268 224712659 354584098 591770832 598677945 227343276 18281963 821644962 506840046 319821291 362269351 103885300 565525575 62995859 380712016 211091910 775168503 486497869 730803267 459189806 212302280 979966234 710855517 28202418 80923534 703132833 60715698 903303550 455361390 30643581 61905292 892763984 932948573 553701856 597530670 569913081 830285569 444793232 154780265 120395483 293832815 714807356 489641344 836774336 698363472 48822735 480550608 160099427 56157706 693398740 76454941 294516470 361821430 937746873 205450500 222972283 153040376 870844113 272162305 739225770 661351109 95623031 7003415 792005415 38781399 204914951 480029134 528984999 470434557 680715409 888034875 638978181 293932251 800756444 98570204 64869398 750660243 264337850 881251471 171416405 913762312 670861415 905933720 617382944 292992971 608817313 473329882 148328835 512694288 549014864 263536898 855469474 870375901 724976139 247413368 854436674 740212359 764009200 784034199 84737708 897511202 549563388 242774425 562128236 546847532 841128103 155146438 533523482 385970668 488830823 652686178 846479363 337704452 278448662 297768801 181672770 179300473 24377365 28081714 390787506 453438068 635420807 655349602 433726259 677322685 736947176 1914927 736698859 198375453 400034723 789817916 492098340 400236624 865976150 82670271 99485437 388006602 288273965 409857372 901830118 703825896 735588294 213641163 206034782 85451 384280496 87711440 315837956 696874130 765549673 373345863 763058887 117316440 408210814 708377292 4063490 379070422 115783792 764435369 530974169 867305018 502030563 519134735 774167229 651074378 964643524 325007556 749351565 799899021 588988124 478564348 751121225 276109766 718359892 589772594 488527306 256862169 176420317 499650684 753445013 390689236 209114691 61421111 516414864 782869633 574961335 309752898 451552454 767752761 764227043 378452367 846988196 784854808 808586451 852364689 517431785 328921922 136288730 402634307 512701734 790414111 516817762 122976561 742681297 307705361 59337562 640137336 517779215 381935955 391555704 333438109 164055202 596234135 721204469 513847796 670892573 144761051 416131604 860904962 791531773 230332357 705114736 640601306 815214376 70592717 708909606 805879457 653344642 351746304 510824656 584898195 245478833 571450381 998463464 892814490 129594536 913168424 641915607 556436290 632829609 959446445 567109419 73275207 63938328 997915927 801227761 21140562 795521271 404480759 500330388 488705067 301931220 25459648 324670201 663078335 91568730 371308182 291155599 433507326 831087697 305490158 473465157 205021737 301044888 881406583 656489237 363998400 50394873 453710227 378984115 621908459 410943595 427302280 690681370 330579039 313777027 903096661 748767909 811704010 880113880 813077283 814219598 409919269 670418418 63796477 486663247 876085473 625390350 269064212 873279380 350275487 257479889 529184410 954984966 803523102 391131782 528188234 691864824 893322537 719826607 974333951 120792593 886681837 47259800 350017936 933166204 198645924 982998806 617012638 621248105 268622698 669808887 263879850 623334167 271922130 795206743 248157307 804019877 962601062 957572762 678155520 390479601 701305222 535115341 614642659 525489330 907367941 933754456 159170987 457425393 749704921 554602220 179685767 185196405 177736705 13060508 963023955 836793180 783452501 470760075 424255084 89198698 979523618 651701321 308523673 859485580 523176007 567827528 395555120 662996069 688142536 181009929 724630284 27600194 512349535 48179284 225300481 308277989 588819682 954667074 994117004 314351694 963200331 208363925 391596878 331398118 288265242 777815885 491560258 901620236 333913112 981663189 947053963 276289938 723837128 36628643 333827299 707399584 315479089 258073702 942324156 2146051 159399482 205540615 219688531 654837778 769336146 809280220 362137022 611894581 176606346 943134663 173529063 694886669 785068756 983165944 573125138 80064540 626248141 945634203 584736468 109380741 378028718 646497703 211874102 614532856 695180498 636648043 773115596 81976193 830918619 456382390 173688551 556852277 984405264 731505752 821612355 445401061 949896237 724761814 80748051 567694212 534108202 689270406 182786227 685826736 64353339 225648590 671992560 746410307 81173865 507280873 266911812 977033431 529900205 562523628 21491495 905067733 13401752 414921472 574618980 383481793 662663847 468031247 974189862 901998422 441395231 169311839 888957997 858496700 173576230 599936834 285792515 171097296 329993629 547122956 561973261 637805669 308291197 969526472 32300227 29233009 506880890 175354203 872799965 178260919 370923457 922871522 379588553 900586357 391601628 811784236 198951307 385102006 576161715 797452181 474829717 47532577 922317749 51602764 679584529 580719743 982539488 922134501 395682840 423606313 567443597 157278477 646849415 647798304 412666446 274292725 436870099 117909652 112181422 523591992 880870055 40940326 87513617 906987080 289094271 57370793 194003770 741290090 349996517 544361056 351843812 394078157 93563388 148768942 302896478 23447290 81791341 846238220 192378795 945283699 802521546 536714104 213755835 774049650 929356022 22742296 913459785 586719147 285881966 483903397 718211724 611027319 514600450 293029425 186203192 49218351 17772111 370115515 871925778 960386318 137674266 709886426 663180695 106024071 747055036 731949155 761572647 672389112 40132052 370544626 277287889 849999318 829171627 626909486 222041061 946905842 966072020 39493767 117760763 366712840 903520389 652247499 163033153 52150055 683070973 598099855 305134744 275475606 711319139 195548642 754567590 570957921 290560939 97361882 448785965 422701602 582109334 639708217 987464184 289480776 295408797 229106883 862074516 685862667 834459850 203383725 99370143 941512690 857883150 757506746 606545299 143621523 580871380 683584516 442160340 236204645 360166466 705634711 173937723 858338420 632419437 568920830 711076312 465559389 45325176 871166610 51240304 995065082 170505511 519329982 626950205 656796925 687249744 863805395 731071154 43431443 592694343 660067580 729800852 523379376 105730829 383945198 255919156 605480441 262261605 935269459 592272161 215959066 297786068 226794194 41124745 5780654 717388895 604886885 143286773 991342373 81559901 748766105 768976113 941942791 853126855 646992995 299784670 120582866 50649984 587448412 435981809 847418808 544440944 534366800 724296264 437578699 962487669 972947854 932472105 982671165 319566856 583779169 109342217 473613433 219692449 552666836 19027128 242862150 573012556 574210357 124312196 999933833 462955486 189766123 213404826 73806204 964913383 585672196 209548147 587719794 330395264 556287453 862594396 83911414 276563411 785058081 119223380 864604893 668000878 524243491 891939783 575006981 378581326 507681858 679620499 867215863 554972610 689319269 710305185 715568650 902964904 74212000 698296430 709554093 639648459 175719454 743996419 960995535 542589054 946321542 153924267 509023131 7438127 782273359 456297332 29912185 403456889 484653529 965194534 783023345 489741843 907152589 409304394 269922650 176562260 452367259 27204458 488286632 872753045 949849487 553200914 248727300 949809319 911719542 452320616 694200519 816790797 413647858 309207032 68682925 857496460 981592010 979477405 925381463 799809116 533429079 44494043 689552915 424958505 511579440 410927763 162832054 711611694 838050722 772322880 782219963 779936631 909039505 98893602 485633201 835550290 360450346 549671389 530005502 30540656 25183740 525102420 663194009 975345723 232024592 137379946 875050246 795244901 951869076 623023750 304499638 666851545 586723241 317805582 268716395 739202990 930784052 95154820 106929347 663937189 278677895 549754296 606400165 430619099 108948284 286229188 882055750 889529676 404035569 736726767 458803540 126302613 224067270 918686423 858105802 789309458 592072083 128936639 723824488 132479872 64638400 357429227 968351374 933148819 781630141 685423830 145766196 775397936 980926283 430076028 220790954 936548467 108835807 823998548 538886183 551158069 331762692 916978787 320630024 783651337 475254098 318072130 854743467 50985562 973961550 235834865 854824342 862195636 114696483 695669096 861666658 488507663 305752002 221106112 126141534 287899512 233148614 169239203 880335897 779928405 736032260 716068783 376105800 595334123 690601298 850236125 619298348 914089764 867206595 454533695 388298121 266200038 696070346 732595130 544406922 449171839 573169634 912511451 863188527 122638336 248076171 89506902 942245287 441065306 346738120 396749054 875084734 931978105 129423262 733752484 183246050 616566615 290310678 657179268 417844770 925501821 617535169 811456034 793447600 717299425 154100788 659423946 779480104 128867729 362843406 14380335 765851848 391508924 70029189 693806949 849110962 83994444 454243500 114696135 476746086 947448655 344008814 541243168 537768855 584846847 48115517 208749280 328792897 252577386 308035035 32531128 923767235 640379525 767724024 661190428 606197341 209157081 271058991 250166992 101450822 34734490 865217634 670044741 723011238 283126698 389618667 6243295 777403698 981779806 35156502 468864656 937856972 252650710 215726054 396021853 923496062 953885199 994334407 354680114 149629188 818829393 655491263 630258305 831751208 778497681 417177634 893764696 678719514 148045436 261409757 636867560 88628294 415058551 157106681 226266297 918605240 276469167 848675552 788041838 666090113 730946457 26847408 449540462 90018740 157971841 83579503 670633336 908027793 961709702 151576066 365116539 433857916 10648345 812993025 842738637 363975893 953476090 734807732 925832829 562960678 290639302 166383002 801477473 565734821 139160750 758006248 395243935 115439484 794980182 854976478 392517573 158070942 513516207 682625133 91910265 71121800 411293331 601532822 68574123 865250020 788197970 164440911 524675280 595264663 6809058 419760759 29504135 79248876 49310985 101444265 103354219 670979496 459244135 238019082 875799003 805810900 284521077 6638792 289310373 600185076 725982472 463319504 20617115 495003812 305277133 639532076 729421 831618602 842690523 912695140 603509405 361631607 24473362 181014796 927319862 375037062 563117376 211766906 225867822 769082658 181930803 177012362 946402140 563679035 537466582 454174650 84945052 275490273 533397545 130248363 538568013 822509282 92720522 804509547 263482436 985616017 76421816 693462623 889997121 677333161 809272302 398320516 541002325 235864305 529820591 979793311 578632889 903994614 296193915 311360436 480458591 870108960 953661439 409637137 999536626 236234334 927836020 290475973 890228849 113633175 308643056 726831680 206784177 706271107 178132420 58189113 125673704 750764462 437561955 888375701 354681904 637057716 530611413 877584948 654841529 229752532 647157546 176363053 315718388 338237868 15409442 82291188 182661382 934177581 666667793 571853011 33079477 181550753 659488719 650693498 739606813 843593028 687866457 691275613 287688819 232398182 60452747 277966144 835828183 997542999 447515649 335018615 695431912 968803137 799657832 564596211 867312292 994659819 795749676 825118417 293222013 273315224 535615436 399972471 332409414 67393084 125193293 783508429 760513989 999427809 958902505 718710008 659848661 336582262 929071994 288243376 177347652 171589794 427563777 982412374 194838073 409770845 300420472 43904332 729777820 35101566 870020962 661394027 756147765 860828061 266936210 535879035 82931473 800498187 957448525 572045629 93146240 814169402 69773022 834702363 448960642 393842168 192926449 580242445 593408940 651907626 383303240 277427624 472289677 112850039 824094404 544191276 834646300 857655870 147945146 747419730 532464445 994851072 285115690 869901486 822397844 993168421 691124556 823626057 133495787 963581499 396814982 901873080 115009657 51327341 433453433 625553460 432946342 351641744 510718262 599551742 180249036 153578815 585888556 337203778 131449560 623015805 857452752 37370802 678541928 555225520 134314199 14471113 152294242 28626289 424585868 810597530 199403867 703418742 76434126 906874699 730130728 947338728 160144533 130972769 218006290 137168579 789976620 834086561 463342314 96881397 37951490 622569767 658549444 998837645 264122738 460539036 453448312 348002162 185044052 492679099 891985730 8393213 34928876 859777645 244410859 501426444 498432463 842471617 692675298 657439459 228296116 926654845 464042977 34833356 54188127 828614962 37312721 850532124 737104481 675258288 628389141 667955218 955911590 588128800 297787295 274922260 927730371 28904051 791392127 121784954 62758839 275153287 454587927 663354543 544965459 187267589 779736496 477091572 546320121 624197602 283473851 561479234 872669267 455778219 847643058 513727794 866603551 572360758 551293881 731681115 542134073 365255769 74895972 742310129 598883249 332038526 851395451 720394599 632471479 439473284 518599870 681192934 933563309 241239 613050293 256211152 855471055 510655423 126416681 33235702 276897257 537887308 355123997 395495556 861464908 198042967 512196739 255844471 735552388 614665172 603362028 640841140 794743485 204637375 138859645 978533927 8672205 699529679 231874364 22143604 589134808 330861746 43511278 741630435 579184385 295796091 248515320 548935970 660234625 52238180 628591104 6972967 928897525 415813787 465928093 523191253 477177908 504258864 921686733 943807608 597907374 84882145 617470957 219179872 257680906 184747552 511745737 792322463 409844300 744938066 166681099 936103437 136561451 520499132 981468295 177956343 276690948 883430408 985247398 216217597 769084023 39472049 653151605 328936108 466182102 350407313 469462344 166000185 408601807 224666732 898585784 239422193 418674110 963659096 42385856 891662661 743575416 975445686 630668461 87813663 168171249 655379724 171904985 792212521 887715328 546871622 7991477 773298121 468082735 14895266 250454296 39883601 99604045 699246538 981465283 736154098 127571127 245684817 344177106 977145718 731455568 646346621 761400208 92562572 497890719 469919006 945803842 452968424 133374390 719315760 360301644 707918330 704277553 566600134 678488706 280981558 250148515 753159632 91408931 243765266 820875885 896255846 49323765 159008269 416447061 27999310 444727418 869620036 492773202 407189727 760686680 291399861 35582490 492060263 946751869 724804316 723530502 477466774 180141563 467813150 333649133 884195624 544522578 472739624 460963693 530473952 818999872 236584687 933393177 964697035 906867401 686716121 302353778 405326130 91749987 103811968 995999082 328102745 32002657 502778220 422203400 131621883 524448942 573784947 34785557 181042841 619204672 211851989 608650365 23689322 373775018 367130828 586726591 193656745 877793381 815239734 178705533 212458293 733012673 346449340 289662803 677347901 369785834 792888308 680913908 729587765 880898892 686775049 845801835 464136168 70498828 936484437 317764963 811787087 636655131 765891550 391984560 36467976 100396310 349567867 730272106 823137737 481221032 120402641 724143481 486333112 947016559 91449757 484380102 620487210 570607228 90926755 90994782 720840337 10567901 516689975 506075547 379473230 306009095 506149152 987779430 470437264 278765321 544390174 981045526 469739943 644847463 344596267 627552385 137419110 306426389 697155235 515199088 876226077 7731989 408141251 768584430 947098144 411228231 975496704 729126643 299029106 205673420 279402815 752075587 166488891 452113804 971431124 792463790 6044469 660007795 614648612 208492507 309200965 722072298 538531795 228420880 113927258 813523152 272564645 933329474 654763139 808215592 196066500 15934703 567022872 55041260 431190946 743720734 862985171 489520617 89581320 389095829 879825590 544045954 955151459 347371792 714625234 33059654 433309140 176273552 444661828 121742137 702172352 728266706 26273652 258137183 162034338 990436249 484550140 831896921 876630714 262359218 547214231 98570687 912524209 406137605 876929293 721121400 469449815 150948391 155365339 342391332 547111977 498484680 401815402 870693458 655547357 520879409 911344342 98171702 354892347 358103817 295872928 435261791 822027028 977100483 643461609 196164379 513429473 612044293 686391244 925158571 445007643 36696962 574879340 335375719 785919770 346676572 219161771 182960667 645566730 173244548 858383733 966246996 109197707 791879183 417325391 47579878 280963962 237054966 885217549 8299318 345171940 279121190 821269867 936603183 924922348 661407323 998878809 697440082 31541412 282804363 202427909 183497527 994379593 159823755 298414170 168766310 928190412 770523356 700644670 444999075 949384245 174941657 161311826 151683663 747832610 395737644 148765327 369569498 19275223 999542379 929080369 656114678 644208381 732425304 774103375 932783213 594648634 618395881 118446591 868815740 732576975 72078036 14557585 567269469 695390868 566153346 607105169 605606777 770229444 723902232 631454076 137122629 961702232 244422732 818162697 448606466 918993266 610607236 533595552 796638795 491835095 510040502 349158382 568941870 817768423 792026034 60923714 474304714 957484225 141935219 143754740 836349434 246033627 421845880 847677985 179128815 618963794 151820919 750956430 968317722 91773759 328152564 707714981 146388243 192663407 991783901 857502176 169090180 47402264 896419410 628524621 701968274 929872575 926671109 919993871 459098871 817449472 574935960 990255078 738570040 60633990 858720761 921222014 674226296 333364362 758933355 96032648 88887572 888224366 611375624 976929062 325640043 822561527 156814442 43027869 976485967 157626130 320570870 588919526 886838883 936440777 922786777 16459964 828269368 646917998 706352669 507927578 682980945 265018411 695980298 899396004 114797312 563691612 553597908 844793033 206807148 532628794 965600915 57100302 318612906 727180421 117904772 251233924 312499772 626844349 431272992 306255445 733593400 63689474 365916467 114724946 846547948 561678259 128793605 380422155 91648380 981224450 484932480 491643647 198199660 745552825 483760952 547804988 917054948 599407258 20150946 968486644 595040325 820689390 854083521 171667174 815377755 189254695 775763835 108675438 821848953 410093573 639796254 392494389 574450203 545734459 673465230 461905168 477669099 886627904 21222007 559117424 923165497 225936091 18076670 116181038 961431055 106933364 429938482 472069527 436080879 343724991 707123100 299574015 570679612 58726064 36291575 359133879 64572747 344912818 614268429 344270344 979259933 693447880 701611002 26088663 591958056 456701264 573449411 241823453 323893403 298840388 739242904 105327762 920627569 238030687 529288017 694079910 495573772 573193445 149317162 50875380 576210408 438500784 610340453 513857027 363526689 451591102 765814384 981743988 446828773 460501810 284210868 352856353 18928902 924971923 318222868 896325836 926362507 132024277 278036534 405003876 558704274 750835133 339728292 462322449 827869158 917921557 413034218 999995108 75840569 270757244 810961972 949005979 830948902 783389916 225902626 380242606 506629897 915266415 505400444 652149044 193438702 20734614 582533416 212808256 67354918 93925615 997086386 961829092 748905231 694944604 266670842 537558695 157790679 168900643 339834012 407407555 265827516 33086517 714773172 932012453 120685116 875156429 794471741 542958228 797193242 930360893 581825554 802104309 475404484 893397120 539263058 104420768 120495322 392622438 133122943 196424353 223308589 724153338 496133408 338725342 874245408 577589481 525600950 261901564 305897555 828262938 812997835 763691253 360855018 769648087 123302919 103395702 982284364 902466973 511597929 371478145 888089062 594215744 690469816 158045910 688796051 660808501 402676520 764636795 995058509 126929912 681902172 398223648 345748661 572617879 509087288 999821687 637755245 156869872 988343927 736923803 454696204 315960289 886443958 847852971 248666615 302345049 684560993 972177299 604909399 251052806 345374981 402867134 826668668 707841982 429082438 341058550 123940016 22783928 692503822 84479027 633943479 797647203 495519500 6819140 784870358 180054459 469799867 82199518 993765752 869777021 747314529 63185438 460446855 441146925 29107002 744887053 180040049 646988430 307707203 932727041 816078579 891164495 909691917 51218759 185765173 614461580 997073825 810293 542084164 573697858 680005382 699464773 25636336 114948032 858876547 507308098 886890928 66363953 145391758 2938805 996597092 524253113 801961285 222368962 598893934 332203143 394681655 263959853 941819162 124492609 731230941 874521248 125962826 706520120 898768204 815741847 696597491 120959319 484034628 919455415 391255406 458844979 573793029 983585169 177667328 697328882 427462271 585825624 546859453 621318330 976871340 827654033 204291166 612665472 740607584 387445544 164406152 573729084 521108816 664033657 708864014 376621809 104506956 961268435 803201446 916036321 215850555 813678245 994175000 391522474 509911434 464217831 533505114 194677208 151849984 637631713 76000563 438480394 406242577 374856356 146694504 927587898 898707045 206625099 830291079 800425983 98924348 6335839 50042103 285055265 385914912 199731993 855971678 966332090 881654119 869951242 708204576 364444972 297352307 798082594 877392104 933708132 582134583 285920157 724337164 710895486 514925331 649790396 88236119 749308532 821019700 890319492 776571030 827689617 290360038 963847893 613900897 847900585 322931802 724091798 922285938 453894587 940674177 534059718 639273256 297124151 347129035 711526384 433309559 31183531 225722393 641874317 476204277 184699303 183647084 447679704 64610328 36021985 113056418 606166362 614452961 866244450 539782897 733442283 238511887 286334667 429028819 360631537 469781619 18702322 366417041 714365526 459442865 483921398 438131549 179849331 15771116 979245040 887514796 50852269 851282286 313169374 690953331 281582730 382256982 825740931 239555378 75368908 757834435 706845803 58126622 115419611 495058211 954393546 984165536 193370657 194486844 4753417 747062900 133287485 165837567 122818158 912887147 157590478 223991865 170695092 285440535 45780106 721689012 141799682 261998327 800942858 777997399 744236268 566982489 201964274 226257716 457653775 713210795 208238199 959286670 27118481 205479964 362554871 985751535 312500306 393853754 532633092 941152549 579644628 962205651 784101461 802534884 799280838 542137851 72349072 961222045 280908229 666604396 456722458 618807411 815832127 146043310 388222874 410552280 259224574 678146904 232506904 878238543 261413951 566640616 740583134 417998047 990403979 976434054 271880648 216222856 416642675 875154604 72673071 144522126 402495305 156295184 357054267 929167870 801676456 510517212 613605033 176434149 518497144 295248316 96199738 758718213 418465550 580884576 265350167 13539592 120404223 508949846 616114999 113690486 427145716 697938449 568565998 261197216 473502810 613612416 590559192 169949766 535878196 42871123 21959098 906379872 847988999 419502240 671421718 972378739 764697740 908540314 447336084 955904642 98880647 518779831 264247710 603797059 420690524 609859537 134077596 426135431 934867013 669685896 799447350 298215958 876282168 456166746 638384907 947832759 243961456 306237264 701857043 708623287 608433912 268935674 669012665 770540666 774740576 726464545 357941070 64379738 901108291 204856778 878969153 186864510 622290417 856494989 984203159 784100610 345758975 935916830 444041072 480434096 187149446 775289677 261508422 402481590 155116129 212369864 818601320 31832079 614809629 29739045 377545256 347149757 20089204 551755591 215473797 778861253 842034502 549403707 645431466 190115167 800650995 75269545 581070756 691007523 295877764 155330729 188649081 383045415 478094732 118790027 521724005 736582306 119672687 210563800 275067948 103495600 351735417 117729846 335990649 392665913 279862961 67265784 80297391 958425330 245607609 791588959 577638665 914145832 155502141 760977668 804227893 277778173 623902495 713405242 871031186 287997954 397101406 766680914 4244221 57454816 928658069 636181354 106817479 137238063 153815376 758620787 993973431 49189815 83133959 420664592 773691801 242464917 620739824 316352366 475445832 274515058 844237421 431039983 796880327 978795984 271908330 650066000 37352141 200521719 928156327 657096209 826732898 374384371 627174230 244694443 736705974 684722745 492014593 707646199 551970228 561109545 156694842 81768700 500057864 165275166 895417211 219706596 562734391 262509128 603612458 950785571 198419197 814569612 983602123 135806081 220445465 605942244 179134936 611066581 863463980 390277425 363707616 63168520 945471475 751557219 226093077 481439991 377412898 190438550 893405488 141647446 396627816 438176587 427435252 938195060 453130682 690538896 768764281 403949850 701935391 225524366 305720146 915312793 294787307 289338024 482801682 704797501 253625201 756108002 990898183 666210278 200673929 866942874 494265895 764447683 540815825 482488628 963303651 863887916 637408641 670188835 669850716 287287461 347828250 939983562 908765134 164632522 454769274 551409848 101440417 110894978 383816271 983317240 286405677 75536712 492306185 982497849 255628737 636044682 552314596 932668365 407590223 183948712 789074028 722547269 750982834 947009134 123672252 718086505 818090880 924827560 647078708 106335039 407567250 821772171 606810847 263232736 57826215 354925969 356188705 534699243 176068902 902177696 101688902 464575826 457662491 324545415 942046375 417817694 8977029 738318580 54117339 988739128 445171280 806777004 478496511 614237625 433498931 593251219 123960806 302738661 535206312 504506327 394114954 350409861 277456709 872571497 968535374 33533339 827480741 871035485 990043026 484930080 591095773 2785235 543833928 887112907 590287224 575395306 2239858 841736513 887606701 132558207 612305574 171616058 48139608 210568236 588188947 629599726 596016359 45886408 738296144 770336546 574586866 657670367 398742422 749233789 239445445 327059673 664025361 861535041 736855003 739772464 43563570 597477171 25739569 578909238 543974707 775667093 875168843 290509968 83884028 799192449 523551357 293143940 279124821 154672411 153276729 380132622 4657102 382574896 881162811 444136578 871717887 637813590 991242290 788436293 926454511 879458909 243203396 861395257 9778077 692146647 886435947 996091548 621626177 3087577 809516017 51046105 567828101 630130288 823309763 875566259 530111176 368071356 696612367 661264947 160087359 249672276 257576040 570685073 402637354 951529985 892923975 931786318 436225411 610684578 275301367 662160348 335536588 637716931 919669972 921722015 570936989 260321217 845922022 909696091 665348883 334085541 491108261 31253114 168093455 890439352 182369873 769179773 356888474 728030962 589254090 589440227 610065082 868049140 437085474 984926703 866417933 122528515 841407767 985781329 710278557 371766707 600431490 433194690 190854476 94202858 293074641 957026565 605775731 535355221 997644462 747337453 444249060 971803730 952081204 407916003 655122357 568428839 166427802 616574990 599248660 707115759 453742222 845854767 578308388 75171601 452073706 627944343 119604257 31604950 774859497 435022620 320204673 830162723 873984170 567659203 167673859 385383291 365025757 633538681 651269400 886482941 394177009 16346944 760859122 872088984 714683186 754507954 596868092 91345552 574275623 501828080 839004603 933344394 372349948 393356570 40980107 66733614 995740123 598223444 259500251 505827614 446997989 4680434 686119345 176838072 557035632 324861128 950949823 531011429 762134149 656056777 698340227 472454490 549978973 741833126 137760215 944264780 562643317 630894809 309869604 744352377 597051027 396842975 324202625 81673564 322558573 203124752 558626790 862592019 564945724 940875712 807295329 311290036 193528388 788267033 150112613 945884744 14911289 901385411 615448425 340178669 566490636 697657021 964219729 60423578 310845185 955885418 466069793 348199470 911041687 547883057 737558029 226850970 755499178 405154839 343021855 473069180 704525741 928399400 731647067 404577481 377266016 779756589 146026554 567953138 834423827 214702416 643661486 904586570 499487163 235977460 988733122 776886092 527134731 604902855 511325809 269473694 792777743 29203931 98143312 874226733 47759855 556540301 569777982 741146943 142984668 379323251 645628977 277688120 115491570 177476715 67065173 906893588 776305875 743925631 867136058 232258579 692944159 373522815 910640572 694327283 742123003 842771715 765041410 114431935 494787327 206536441 279220876 530663132 340394320 582097602 111913217 548810813 981726075 604724592 318354085 194362298 299559330 730747575 439339440 502471577 706334571 890631782 712687782 403666775 78805377 474769704 129429006 749640849 47520119 314498999 826203886 437588726 458165110 31384791 769513229 857670672 450823947 154328363 465684065 842027007 954918061 974857945 984392401 237442333 435210570 142787873 474739827 70954879 967239385 809709673 787678017 607704904 578850905 983852487 704359716 20417787 533179140 800446694 98486420 159615331 588946099 708379761 679615177 490335061 486110051 784887721 129981199 757448665 335745299 998563913 393883348 349340347 304040016 433646111 982234293 710371299 860872171 878033260 684427857 8750887 352174152 426953153 192603145 700492269 823245768 328689576 740846295 372177021 215022389 772033072 546935860 689960414 556369335 403177353 273358239 607691574 916270354 20539341 906007054 148973018 10643088 484678853 502507315 652841720 569782003 375291994 732984497 317654245 287605941 64702578 448896408 50458715 399121869 281636581 951838314 928188992 763378785 386669186 628433675 14615158 774371771 345683123 262335446 617983513 99387277 736740760 245690813 583569504 629699536 658172526 439799856 114676430 374803965 653486999 202968245 400709175 10182253 53752338 941313217 655654564 971849592 176563669 835158966 487135612 678359610 65380892 53013676 688866931 680232170 109559111 548863590 257133570 849936770 877866218 320523194 874352555 580525377 354588850 432137714 865222052 765060950 818460475 974176055 436914887 959530339 354234729 101810336 365784394 145900888 284753461 378470611 312391005 399610883 54422680 754641884 442351895 417526129 266115272 440962596 480075095 812400738 819628940 809145860 63104710 329091982 144611678 843196500 885569089 353308217 251027459 147455148 526613432 393026918 73065531 784786285 26967065 217474335 434907977 244745646 466767054 954835522 588540345 710011202 926835609 984291166 617948594 941302888 948139358 46089708 400088064 14439502 708052943 448864251 802727617 486033877 728644368 855667441 929625731 283116112 710661534 286765419 403339697 564641212 903530299 232964845 652154759 872635228 971363298 912924777 933080258 281756319 406667372 996124659 429289294 890232092 910466514 633326144 773478455 163447895 588836619 175631402 264193350 737318319 481830535 662335268 254934253 163135561 181422493 347208644 795764579 907703401 362688346 909926571 319091995 4976954 177371356 762645815 222625469 141355186 247592425 319434552 291527227 839563141 169164483 384646673 732795299 994878951 121939312 7503574 45650079 10395191 676651783 552721341 474465078 707506841 496561347 874650779 610016989 91099842 133114131 413203267 605226153 531744648 348886824 421499018 170117091 619313290 219645515 85911450 209871063 139259257 895746242 547626776 292871897 715284352 234189715 895708124 269862342 879884053 630519715 746831447 392168811 318590207 554867414 563473359 490352437 611002227 590365353 253207634 553698248 276837987 657639809 910060046 834397981 799317490 220834207 477242128 944742657 522810948 613147457 194716161 956288001 415257592 157651484 772287424 997798524 409187970 13323250 662859082 10506969 465834611 423788646 143856000 159256933 632735705 72227855 700170738 789205149 565906211 618940385 131532691 303755585 674570633 519544999 215638356 94752802 879920357 608595526 766185332 41360756 563817228 134833076 576325985 694215624 8868993 509520375 270439703 303827791 256164007 728819290 998760811 501722656 489585794 909184180 170474921 402510618 476096297 565723115 930293059 521457711 446274954 95551531 173902134 619781986 774778663 910897269 128138412 615408400 229076945 638302223 100119882 710033829 743474394 102412429 978120316 317200148 346557392 500793481 252052866 769839381 763639843 956033341 10332758 35933474 741647912 822812270 903413276 334057267 672551524 216136182 663133872 746577776 54594480 97603233 406703099 668832891 236679583 47016849 695312874 212794111 269666677 324512636 461125025 679903729 513823397 470981314 975157834 571559297 535847891 833695666 912856124 383493625 948469 144075327 797802014 394239653 182029920 130460504 41096324 523380945 919970224 599591249 584860226 495227741 788861404 784918965 828990652 932808199 711603464 942596207 889984100 836072054 67728318 590341275 932395752 790647759 768360353 465481774 772500196 39522544 893541183 448697378 919002410 192285675 923889877 911160816 645879208 59693737 410489746 150260602 92775975 529646502 860684866 432547220 502225252 904544692 520264054 432525930 581491703 185716216 722917412 753471183 584352165 512739569 345817028 821010350 313836274 230703356 297302959 550517155 206489376 681454060 258480715 852350021 292260130 278394623 420653071 821576418 33168194 632523412 374542758 194305024 780240232 71940073 309841770 449268612 671483214 626901303 144499551 883958950 651165323 179480379 280530123 678153658 161833512 607647720 296417784 513223479 13830784 4769836 800614998 784225717 169550286 130821199 699508136 656470147 692385505 925131895 526995170 92229446 187437737 546601172 66631069 874658592 878252257 411336168 743247100 339367987 822766282 113894719 486082731 874524692 426650109 698290561 328104582 792560846 826126455 476555467 384105512 427652024 840500857 215261167 901535602 848177979 752014169 237372420 914418410 178373877 26696438 560755063 951760917 443116083 663012851 612462418 681903629 49809295 763493156 634120106 140881871 41534178 945441070 587226121 722863443 733552071 118520476 112293662 81252004 256021304 359783738 497689067 493434525 629969476 28685257 438758660 716827581 289440393 384217915 605205978 899196985 274346832 170407034 256716389 711783430 181571482 757199794 937568656 461628300 568236296 822927447 956317039 540782540 910558668 596741897 185861182 114426404 860370343 862875409 250436100 776026658 726107463 40702881 915669284 327177402 307596188 603061200 306777423 243272380 181919787 70158519 912627775 738760139 20951001 33451195 664822026 898929947 644669940 480834529 405146202 387931512 691264303 489726572 549462645 482588200 417000727 539478572 157341454 615795217 886943042 467746387 152430742 33203062 559076140 914923589 106388970 219347157 419164964 684307297 242935776 535572881 287467656 965559247 837322717 138249748 262323111 469617063 705760446 100637108 772213243 617278468 467844570 417615419 543378458 513775415 801069650 602078344 974437039 633147486 100195738 419265278 755556176 397124464 453463748 114182943 710109712 596653958 607992517 360443215 855466838 723688779 388817101 442427679 776778153 590152479 388602548 644651127 589858804 430715097 163407451 530122889 867236655 732106402 818691302 3968696 485919714 235650122 875795557 12342446 286264014 395936765 943645544 356367213 709435472 382452510 643199886 931949344 785195662 945330111 736045678 243281123 868721232 953515143 765666210 625135438 659839175 469644349 617224942 847514999 70197381 939964316 572643113 576383594 980481434 998439939 648917851 597645744 254039063 329975781 686573799 681246419 292343710 404357084 70256083 110059235 555335305 872992836 924936036 559316313 7578882 372686851 328337243 121882996 93740140 134199344 810001444 566142025 691858348 952997249 56801003 558504477 530272507 881518611 999941760 872197996 632395057 22140123 624479645 847404284 897698018 829736700 532741017 683121132 69385321 61824064 811482108 519252009 177645213 30865437 52670259 475884707 417345140 132507085 833110757 795329827 615654565 588691059 796592492 207358558 691377984 731106276 504544653 142622864 140058489 652779320 890199186 526762346 441296781 646165168 701902635 701049822 716414204 987927566 568158254 792528817 448534274 837254536 600061253 552218947 14021805 710406546 788757732 682262879 308276401 613655806 891980188 57925340 18381272 795110657 830212276 392993128 469209131 229670838 554918988 112041761 727552742 52896576 868747829 280055173 726554856 33640575 586289751 523212013 955922152 184430536 499720489 149354619 344753027 458768700 647686808 462409588 873498251 532354953 110819504 665494927 527479179 862459057 839319744 56961588 117046202 464162465 715130878 148229233 43177221 631997422 841178785 19838466 550292656 740468551 126273838 694425718 404007736 283317720 492663249 704054084 171851753 621831639 453250206 103282014 26332999 110684628 395403828 402509557 846375348 104347574 718846342 1717359 223989843 806297047 898269674 764134237 113798408 327846118 328137215 641479054 712575280 983351499 804311783 360076288 101679391 257735292 723192330 539152036 116060860 485172719 321819382 440971146 99532346 499918171 284860120 873699994 434354436 939259925 837920386 254730462 316843033 156838133 834151411 3251250 754339058 695451476 384663791 929016977 877056012 980172989 229688456 31314228 314393107 550927530 645901425 21101272 681193577 237521133 167845973 804215972 513355638 496029288 71691270 40731508 208217253 400590793 777544091 109311757 993040590 791381304 107651024 280451510 222729701 545093443 13138987 32559512 171987874 744984817 407876812 411511919 863437530 40505537 657235575 832954078 278133689 97263096 46378289 117839875 383881212 818312188 411532229 249876291 637994838 189338980 147027857 646018803 387608364 947316901 491132188 976547708 98540668 498823588 796702828 952499911 592295050 17715262 471578962 104492270 2206271 999601424 930648769 742093619 890196926 229029838 107662392 877312001 361132516 147998377 884398768 280729483 62001564 937214925 777642596 328902833 889082543 858326310 336081796 434820460 903502708 216517028 151708529 714280296 704274208 242134178 977166934 942072759 573923503 602302412 245475637 252343809 724232074 345510954 457005889 723755484 272857353 887680150 51923272 953262520 152861710 345422271 797767668 828470321 764766340 332144199 391782615 565946008 394765842 764744732 914928606 836156197 129934586 82503908 681897726 629097909 242498920 577489185 22948131 437021534 76116371 654877246 112243599 436021052 756178062 605970713 954332672 348251369 945580418 445668658 431394694 980406858 383863542 773830266 338638824 491030973 328133657 735836586 543764853 809648968 324851142 469539824 967761618 546217420 550957105 153045004 412252935 215979058 38218361 685259499 470715137 436674786 284506046 79045176 390165422 299548653 796399323 108632634 558613442 786702330 733479266 163620826 722865743 386856903 44498629 993629907 155703851 284343619 9935280 311301726 58064425 965318358 461557017 341565320 719681177 369971084 456055079 738077682 994323227 628210356 494084062 148601312 954059610 560508986 566251561 501021133 472863532 348510920 641951960 888990046 725354274 686677854 12558113 600202794 653109499 411531816 412369429 628181418 408212007 953537736 487304080 127545006 202307464 19469333 640092619 701092215 745659325 840529387 369136305 816768241 662381506 302048941 814713321 902073462 891528747 398646460 670077403 556885502 846608536 136630620 201075928 345315661 604582829 625658876 186897848 926350386 491028244 601237614 327209409 129549757 519621025 658686262 309044321 306890754 901400885 383435210 574739818 68429641 129343597 780379776 597014483 533722147 395500025 230357010 249034198 149731806 738476137 647722979 879222103 201801732 515770829 761209509 472514516 428768391 880478283 444141596 742317235 116195992 406170751 777191605 693089284 20976851 932468947 485529943 540407861 687947398 218982637 875559804 140962121 393375906 242200602 428169037 239949221 30156722 250348170 244282530 422784964 18872908 634178451 574698911 183084217 723988057 490174697 19857243 745746725 837475947 503107822 369347148 931392036 587731510 328884180 916467279 748884012 399728637 755099097 118742970 947942194 949739543 881835934 172144940 568698321 56065556 710054879 168886326 809871051 593079324 858640290 965951719 620606688 935547095 147179677 545851001 483126414 134249707 593783354 448616179 680996 395808545 390149190 171991229 712608940 484269541 640135284 160148302 742871160 161964026 830704175 508454691 549037433 351025256 290236440 573167872 70344258 206314088 273942125 181613648 893711257 62355950 401816554 653137343 550009952 229199942 524753657 558556626 517854189 111801771 570942217 389256247 459869893 542571402 380655052 311476151 555623113 662537276 310954806 23472057 537136057 381347793 276438794 40055761 813128175 779491621 662104027 948944177 755838029 206615920 804145143 866898798 333347258 6959138 573478230 121733994 283932991 7646241 764622520 294140563 680646654 45813065 305906481 718329762 996099219 495778275 679174887 415237901 655217443 660753296 925982745 784114706 246977255 962858693 435259740 526621288 21759930 972508468 992878001 787601680 124491802 339886087 370750058 369486436 962502824 663732995 450117092 503034301 647577636 552626754 400119701 357840777 173994782 619481090 118155808 424556203 853217771 275743746 5990032 859140482 953769013 822190735 314740659 109567953 820868058 552602463 258449939 786327556 852442302 877174932 305048740 309422150 126938629 81839648 926070585 588645035 942125793 891519961 55808110 715294298 62269363 826332397 330153166 649754764 619750525 480611872 670321562 146586024 350659041 889603452 599327285 211422314 497703876 722079937 873751186 911597456 466797264 821918270 530546014 89480351 83533460 6323204 1991899 963387628 578778573 730408130 744030787 279785836 256597600 581540625 769680928 416167648 890723352 72591373 121497905 628177630 931078189 281558843 636626650 227366482 378427528 428993480 102646929 878837479 841630018 710611540 534114536 664567131 819074216 926828679 61246015 105028275 960791203 149090412 248429630 358922230 922143945 557722539 263369206 424392023 748538168 345238276 889412064 840964252 325252237 94766797 183439899 772784392 621003038 916910099 137460971 446208186 103151441 486082537 792789347 296654470 433136997 847069407 427762542 3486692 832813442 250968145 478496108 762431495 2950224 598018294 692564106 359713480 43731116 325797312 67015779 935285279 41359063 507817230 115393044 749190007 552572464 899379767 54177399 580240562 299020420 748896187 270056046 172826956 537742513 880347332 954536418 767904058 552676864 621750711 302056192 145700356 557850815 366954271 724171156 854614139 135775761 681430592 867297331 373123145 369435789 256657292 156339363 895729665 49626451 681825202 314841509 720492518 23284354 268873832 819104069 476127200 650569226 46385389 921098718 386394287 361167119 58116229 774257873 292950447 168651747 129503111 465401008 918299452 152901361 790208550 57650741 208386553 430541471 412298635 185777963 77001005 530953765 398354867 928609538 609899648 694416935 681618638 391777208 366691179 416514152 647624549 933345619 385176461 574064115 335044058 584352191 332744242 412700611 757711640 589267624 117811000 279898324 41468469 96752061 907972543 286957731 431341723 845599279 607225470 385343650 333969572 815913567 738879152 492220967 763294843 150592368 274357153 794597936 890192787 645246125 859701049 414569583 966404531 270661103 656476313 977564306 817838816 420718975 450175530 751239685 858646714 5325020 758534085 321422299 280976463 801624751 772946648 145962493 414750099 892344443 657445452 462005252 111111881 91294528 149716997 309610949 241425234 942169267 495323363 265939278 789578595 557272590 27026136 475608845 716087451 71229143 465139495 739062397 668115044 927054439 43715065 869594402 785817838 263663007 104935958 235350907 224519447 204334649 815685622 909737721 870122178 584468200 673257702 931580436 210451255 61515800 114633123 151876132 270320127 707823979 76443306 339643365 481732994 540695219 462374594 779347275 387950942 153176597 350487770 887903905 224508229 680280537 755657592 970661896 885164516 253776458 615885572 407828661 652914495 902903190 385435325 668598770 139037831 514234929 976473535 399303889 106782184 851707224 443039373 24030595 593618562 862775856 45705917 643663560 207093799 41369727 529335125 201018073 909373764 513779256 848548384 313738814 265618888 49041649 307795144 843407468 931616431 455032217 826263932 30702511 439811431 804775697 200368779 8918358 790051192 514989328 103668049 55563438 376175860 741365898 18621481 4592509 646390952 315929253 500772645 193271199 445626583 59975737 632652415 729491473 309314242 916484186 575375232 553981221 999450418 955641708 966711171 275680302 585838794 332711162 944820792 921723999 51247311 174159988 376024488 536064810 204394354 376341250 464693901 299723937 650981055 950113997 870378578 285015795 743280861 531433615 857928246 934352413 356887415 953011002 228829221 568026830 59534733 241679170 471831598 134582480 752801638 906716882 813928521 449783900 666774292 173129956 500283764 210983371 614164737 690326258 910891546 391946835 390621677 806576990 772694906 813730378 138806172 37651110 231038583 999911973 197887805 664313846 73833307 870259398 436586445 534975597 311061442 323690968 191398176 643326201 109314747 923874014 961179914 450527295 342955546 427822760 785944478 849455633 746722060 326029124 98494851 965213714 681569111 150659597 575859358 499696801 671416379 598145137 30834742 83467000 737334829 917027003 230070226 580722702 628520024 395484701 929283238 113028907 466095477 85751321 367547638 961866389 351301135 181113889 576120980 599868212 803240144 761666686 266877992 450677666 644848855 82244850 626493339 733484712 897723700 17970436 3242662 616543540 891629308 791971981 840175976 643057990 636576165 640610511 223564406 138748313 771040187 297547309 147683027 974223097 839422743 67868394 662566370 779605468 48501815 987156845 338112074 974490397 370156700 632970103 963773411 700094032 43206506 603585798 708284790 459419661 156843037 956688632 721718028 110530280 853415801 373404594 598982728 958569099 987870398 426694283 182068786 857850387 448653901 361820994 309169416 804162626 917786529 149692137 257083599 829839818 190383771 859682476 994943500 848648370 398931033 193100755 203215955 626992175 809970227 96398492 669036705 587494514 417226918 924964624 942273868 204198114 824876307 820425006 525595846 40636764 609975622 489866453 325308741 399215622 54911576 195470000 818306334 673871546 730508680 879297812 170858965 164530117 738467621 972202957 555141099 201298505 168985502 727953974 893860316 134876111 694192669 83701806 397139997 872659205 706472773 890695960 53389948 825821887 649426594 184176521 724194871 105310986 347712431 227385391 772587581 21023059 293311671 166797993 244133194 602285596 814287670 771616978 493967331 101305374 982799081 573194856 251391418 703408918 141765133 718652316 270519854 411370248 756775909 379165616 728389061 578967525 716013503 249875654 464365875 397481724 665587099 815880797 860526786 152377105 839291596 77001264 81193235 100774104 984443087 223897888 561394827 578014808 30246382 132256566 584965310 387828292 404389012 472739774 531842270 863465726 181385709 903739145 492033698 358906247 715118913 126366701 303447744 152806854 397376716 194036719 809970554 745436837 257038435 810629139 557434272 20791595 795473838 848419009 800473111 648220909 396839715 887862532 759775010 123376550 290546074 497100382 854267402 664794173 410649678 762842576 187821837 446790269 223539531 716486214 437625858 562261303 38010412 519901931 780359995 917474706 539637218 943423916 243879948 439880066 884581572 556359005 177599381 850342425 220749025 585241425 881695699 238550573 992460503 395242932 192605805 249066589 741536570 344923790 253224427 111866729 853656173 59875564 757245550 470546517 892793844 364521431 502342784 754221136 204856309 839132107 336802150 643642282 640515780 940510340 168072132 956756014 940026156 967664879 231053103 991850102 101787082 573939067 873064695 766688767 298998272 903242103 915463755 973731508 532841031 771358887 357603588 772602058 518210866 575181678 108163010 823553228 271837172 706181540 821368762 30459347 797375800 178356752 395105315 637561012 540069028 19526758 119452045 619818332 956661376 373346176 204216127 660179202 134959266 337169325 414972456 284263688 522867282 412500849 263054685 698046404 665549640 956376044 700507660 504995540 426016559 315803747 235281498 759548302 124433814 462062831 449567767 676823267 853795572 548725188 848111884 111849378 491890129 944390748 174782685 433334416 182295946 311937188 8374529 895016660 102332541 519518008 187697306 44954501 419616135 682568463 276681070 309009745 927671817 536201134 463092127 908918429 407581736 926358344 663835361 943295044 229568432 247517545 986435529 858347990 12696390 805600774 28812071 150412624 404983568 331188704 921549914 354451994 441397082 682341228 738831291 516082707 333301142 719477490 95967662 103067310 256790346 45039073 354548944 294037110 230150370 40883142 832031149 162440596 246679515 641064922 808572369 856226953 635624357 772571497 227881376 945316740 833550234 612359363 455619221 533336699 430626526 765473337 435541710 663708897 227446163 349379541 562358029 878246578 644175143 187863925 255381232 706996744 350734829 200803768 425032147 570554139 277981980 953961375 799511387 40107416 199335554 155360856 888868502 338337425 789419129 487032579 207617029 453488498 555183539 202026867 316073242 968564564 904807272 14709500 323520869 696470884 225712493 617577826 319619632 760564175 459812714 859333608 567323125 201466433 451300256 566871645 405249371 888016435 231963964 464732750 901730815 700695908 870467241 823332405 388081184 13244339 550267920 470467739 389011659 153266996 173736487 788856490 841797382 508852484 575338896 811234618 923652808 565992859 470730240 161115332 865574078 192370459 548979204 594494246 7533496 14942570 916008733 46787106 373080925 490524038 586805881 368465848 237475821 227669610 831140127 857679945 946067726 995239442 334809621 613017301 164619714 411407270 257430830 70946781 635050386 247367485 32415527 456689167 542057734 152676970 857569722 873465432 955869469 800097637 524446570 470558578 926371194 486821166 405179708 88513022 712703770 733874034 861760269 792219894 308277007 346576051 693107322 905667905 357391991 754237823 390880844 953786969 90097901 653807285 112918551 747084100 945980323 424530625 539964417 324148697 901179437 511020426 263544593 775408746 535877724 85069232 438212698 848750467 776000627 82195159 156229773 560746517 944210489 413564098 400931186 918541690 708834966 812024959 813858305 233678735 858111652 464345940 616734303 300938310 585379650 228803367 723352125 498995459 940401088 115857609 36137352 42890646 863128415 895500578 516341123 115836304 950307128 377447896 636754247 877096152 107643220 773364862 229427987 858215004 565482906 496027361 563665859 203159505 343630784 65708249 902679900 893442232 73908048 326705939 465134579 6164699 731472570 997189025 819181186 674417927 85398918 302878690 296217306 141743535 792665491 594284456 104114465 868393014 771741715 911634702 382873865 736731712 851507432 539596266 703765382 765313936 784972082 990645850 817092289 994032426 143343660 300326384 996965409 769738238 261933318 344126475 663918912 39140396 341253269 465305803 567472710 809773468 631851570 676745787 57689092 957788234 943440966 569059448 748490435 681254769 476910351 558946758 271267704 42837986 618712956 888460227 154635187 256543052 265763742 373017377 452882167 567306368 764611825 564446118 281428914 281926146 962815224 347893390 823128464 420611281 297933524 439737025 37559187 203552299 380811636 520162422 407412402 211517430 243637664 163054633 176902886 230604937 229772839 479532151 461442137 636995986 731807558 87542981 849939462 748442994 162516705 728612330 119290347 393051998 868804815 753436445 25654025 380802708 795651010 586769850 770397100 253466895 74564297 412511242 832651786 783153713 329797868 184402250 394759447 807619307 175670839 700417591 191492469 957736595 634714788 162207099 787624224 782382154 997533692 227118407 361665078 394361563 496054806 299515306 412235730 712557133 92804867 577010782 20746058 533438215 650105850 785775753 719338337 220113419 261581189 765755135 347878971 708458967 150048 892479136 346279974 759620137 211595735 499909945 277550293 536925764 786860995 894145650 820234319 647513806 419111580 91888708 494047309 258460328 593069763 964091280 78607177 471047544 551832578 634377055 453560670 697114245 472505708 188652544 629592404 731902397 897023946 877838246 84321377 14081666 969131530 822344103 516156561 357608113 964036100 14533234 108325112 454058088 663836570 225568547 357533666 613644874 736505811 373661526 567827447 251239258 21184881 107215872 592028581 181809666 885481511 420521279 672272441 731697560 898307078 881651970 213638292 460274683 871587982 442728836 981757753 822911698 200829019 634233063 586577520 378973636 512668058 650551427 274106416 859632883 602320959 618786570 321309426 436944534 338798769 213881518 980479865 831691955 28706223 110873474 868813438 414172700 651809890 736851252 544885623 516876770 367061821 624637048 51824263 745571986 769106551 740668612 805075803 846407515 572745469 493402925 12396446 781838982 938666002 530190570 456349688 544507716 159907120 581143287 509957464 885496385 461849998 943228308 626373720 747013718 102997156 719900344 364298696 106880955 217765579 836177304 257435520 616738624 911166400 705594146 426179041 701673265 171109317 79845001 77243103 120230010 895435981 365551984 442451789 228389006 441692102 665996599 778692272 976090534 439860517 810561138 494960431 976577454 394238643 135179045 791302832 105150539 789440217 974687970 18448185 510132114 549038333 861615132 468772437 723973952 220820332 712587168 1869406 405355086 936424482 972544148 198384727 549245097 298785535 777307199 717727917 527160036 13689819 15414057 801642098 755109292 869143604 265823653 878316589 799097699 814816503 200085263 273784915 733648130 607451081 333746947 432831239 507129534 130574647 642730753 320037388 644770775 836841842 252340680 263984112 762645845 268959927 499044328 561716455 567396837 597334772 317022309 494912169 279950817 193370277 487117725 417195330 359370576 561817537 333574900 944652381 859983598 655693115 271750490 331626092 71186361 559498545 98007132 299038897 273024737 262528920 872396176 957227355 159804276 530416071 951989820 658256854 560770994 152611192 298436883 112048928 309579355 883172504 200745835 909566857 81852492 261687232 935388850 993847472 343779480 492464705 252161288 715677154 548642627 571571140 307290236 215520724 960875382 768793231 682192222 790731766 223563190 974810362 364097188 566454627 984025655 7786119 37270888 354037829 125832432 874499909 14147046 488493628 526454722 404710849 1982210 422879565 393889875 493838100 280668655 397556511 586853332 161487916 732477737 219202441 559230251 970665907 103557851 19078330 34786575 813047508 836013352 326462848 99127757 421149316 954416884 97106160 653662109 653179303 661118861 430260778 459375029 492415168 267992470 377341686 803238688 738862479 245846516 527516190 384329605 264226202 790072624 735537484 968090237 366502287 626330151 284168448 261048945 496982070 67873397 874867911 193882623 387383154 439963420 695018910 45687197 139374174 857851850 741866714 424946004 487072591 219898671 95181419 705605848 97033174 792049650 778586420 780240453 772652572 958232907 257895913 995762001 832371751 335397423 111683055 197040154 651853312 219326305 884838116 286871822 918552080 339046556 690871273 81479510 338985061 994473721 330646466 572481520 627068393 109210368 517739520 694780621 87895042 917067802 495142300 760684005 642834688 169186135 392280822 987632300 712621548 186692392 411885264 344555996 964676643 899570720 340336171 299662550 835142996 461712965 439953981 256948896 899937304 51423003 790740758 484764121 722777048 778892572 770822224 299455270 421073708 913422094 964102610 909706157 355582905 109430292 965952189 2259515 200828284 662552282 778913972 626020140 821126585 717919371 162537941 896282520 350994586 671019765 612908479 971282975 702283421 932111940 865225067 590917020 179201369 455887145 605294641 613578143 925753501 703074420 840742547 188951212 801238060 958355089 134098930 234397672 167456435 317533714 952527309 561514138 847492358 558069285 743228341 131898887 577270319 766370863 24127609 786182172 756426544 457989695 175348386 839887385 717364604 45230062 810117548 527979081 768503840 93625074 845205249 764861996 96660088 256975380 135658475 47383373 828710423 527325490 987604017 242237796 750664698 467241067 742354590 191456327 293968204 608237746 56770839 926651634 928089006 512356982 785625666 643285436 80736553 129458822 496350313 378862748 167557206 774399470 41068024 345492623 206944757 882366080 813347734 655820934 724659047 13798690 924046144 210658348 360705366 12079482 213591190 653959873 969437999 574515907 293227079 536763361 383576667 76221501 265555406 830234251 421227131 822618400 717197118 302343809 938080205 163994229 630026600 812858305 414607233 406410761 125269418 859967210 264324095 700801706 621969110 612234925 279706893 662872607 375550515 907000038 7999904 119367337 565823813 359682030 450275329 916115074 771026582 167708358 30896305 105455599 539773518 512691036 777515043 599326841 491464020 206286001 547095452 852757133 502070585 389669117 204894048 459124119 80339864 735229461 380979458 312267132 257730151 440684405 413726623 656539840 920545010 274262939 102963447 535317900 478028376 855580207 595949652 55246398 30526428 949914827 76176651 634569778 2477102 1467594 371290257 441610238 104169379 757884939 59422816 132916561 65894057 422725590 16563363 887242405 578293171 861466265 178622673 5419283 352187209 902578119 51595561 619090544 726362700 47887867 745235105 671516162 800370322 59584811 122739398 6666771 596541961 479014228 566660599 408879359 582597303 80247075 97164231 346976670 762201938 897604155 147916610 93465635 127724922 244274870 769106184 804631886 340971831 371988571 3449452 698868398 95478896 994100776 678646142 695858171 788572586 830133147 415716066 415295844 472016243 353466409 811035926 345636661 91705113 428014841 964027233 426751424 945908902 491300930 675160205 417092647 45557493 28136559 792373075 680649136 339717400 246804122 942162444 687423182 725465710 629553266 793882340 963940637 519842517 421964406 585953724 419846709 370556818 73987296 997805009 993863339 708977981 84121220 844534884 280630856 944568649 764143457 440497134 296150577 731311313 902925381 398367632 398394028 403309334 360351525 555146656 573027398 258946645 123283822 854298848 287411517 404699291 817145981 9676939 943658214 11962437 70466770 573546381 985705377 228341956 401282607 935796095 366720143 566046687 366401345 296650990 578647782 162712008 39131418 587753193 337848971 748327462 987471531 361306675 947741876 442802259 307219907 875290227 701648864 860030009 231090485 613483414 944672856 765712558 364434621 194387059 56400289 480299977 809350885 379236195 502803111 949011487 754185602 432825332 773878366 949320208 789049877 971899146 642235342 968906909 212655767 941071707 803816716 225587461 43095626 823321446 721278679 165280680 458366736 454631099 250948421 889989621 678602545 150917068 909487068 300703409 109011215 941897989 226748080 278632487 719510501 491882080 165835617 419292065 320504021 294194361 720745011 110113641 868825625 280737805 292684260 677452965 182144718 89854791 33897979 4107038 730417528 631141966 341263577 247695248 897773201 796033482 243493960 999816341 164329566 175062139 44117432 607109116 387399101 660948261 243785258 536495182 485840415 777087127 313499174 445003789 119988628 866426186 591771285 511362964 283407697 547557542 873837036 563205057 439391747 905499536 49438115 430921960 685811699 102799389 673723918 823948524 22286187 5014875 998969521 821590420 603138830 328048818 495824200 964298698 97413306 884547559 259539807 893827294 556401906 441125115 365668979 961622355 140836709 624842833 66632788 524737834 360559032 740862676 251688398 344742600 218099997 541308955 296663288 342000983 384745086 545485094 392066405 450307309 784721096 899807216 853142504 893514496 459423298 78138026 563257976 816761568 737290090 466655726 479901331 74386851 442575993 20232893 116919311 279365521 591662195 929743174 763152399 383434893 164113302 612204134 498648885 606770448 118954113 100040054 723243810 58936122 674117994 956768964 184427258 513457061 34643838 874681607 90412371 36065487 150075034 558333423 428163473 998135888 226913881 771487976 84994604 815037611 311054345 623589924 386368868 920057793 41806969 982533147 222365449 148692283 177860831 670584240 822921294 19196436 505901329 375332227 616265068 490106971 12390542 800787383 959051625 343253288 929078627 419039369 481603318 242251769 396587363 86221937 359811702 762253072 38894076 198875430 159475832 952096635 119963609 784811031 797469626 927375898 469701514 53066019 880320214 570584195 929329632 694489511 516442793 506647507 199611380 481712970 693802736 133562774 56693432 10187233 429184824 816252360 117889832 105924913 427747705 692624723 27996483 764786809 332664028 436367308 174144423 228228757 360421484 113836287 857066627 42016527 340388889 132166642 452454069 969879056 546233733 518626081 322642510 18772946 529342149 112740321 516287757 246573029 83895909 398446932 111561648 460595835 721591970 832937409 709421473 822039619 224081284 46288880 723303923 785095389 789699491 337783404 412354915 895699288 404964313 889413950 47220777 443867766 166533236 884755960 340326973 59552474 615644214 837702624 281962806 938130110 288587142 818813877 114593052 375414555 886892924 124533054 180477422 70333700 496913077 363610011 940120341 977748028 78056924 607203695 523915839 946599165 20326887 116963468 53247743 813653653 703212265 553721159 342224822 648533042 884078520 361338168 348279764 234430660 410066126 832216008 680368673 752470816 465675049 333487059 948958871 392303342 217909611 92312899 546446742 811724296 969553683 995849635 240829712 706796873 906419716 648159453 809384798 381579225 112715096 157263275 578704571 930994179 504207348 972324918 778212135 641234110 512269266 48397511 942901870 789652512 796700864 789210441 370638169 481958590 427911084 699694819 480801435 795639234 420938629 591194197 896861299 43693812 275972136 416453138 277327807 38078735 69099795 446812285 92876080 63900887 647082894 252351742 598928863 338171705 60374970 663254162 228108986 470546616 918338284 956184714 594163430 383876866 592254125 291235055 366208600 696104520 503166866 550995918 324346849 407930216 198249695 474935721 537859446 396842675 314716760 686415401 713540285 767591362 130083305 650334570 635021767 981162437 893868906 919184745 157291259 296323090 160810110 871763942 982990145 421249557 995543337 420319552 798408894 490899072 727902776 325104843 203207120 898686061 554340427 439915923 354321884 777757621 432447629 51348993 938601951 366259504 4866273 377887544 402752756 568513205 748804766 618349111 740025895 369686810 47428675 763424596 714936748 592932409 128044094 803024704 759644993 939666843 601372162 374484041 334164739 879410889 589469968 868135553 255227153 245420679 824237441 638639774 282150704 769083746 777240533 205493760 487769641 251211362 516835014 960023525 944650221 790913622 867894454 204563147 972741697 772485170 541888394 530606498 40860604 305078546 12721809 572867522 311133722 544653677 274443085 660918090 440278084 550614484 339142042 71392858 864099253 477631609 217781641 64469822 667623181 820942492 905842960 402339806 879730167 376037615 945274528 497617204 779961605 917777686 632021453 798918888 387584931 496422268 132895342 25503345 687993052 771124325 542142542 20729472 301030467 625821253 531796901 454212906 885802074 865999768 429892543 992063904 460937561 473166982 445759700 149286377 674370387 882680957 299873404 596292116 303420473 379935853 528838195 22679220 837850608 155145889 753943579 763703475 48419526 700543822 541291879 891676692 957327561 855714333 375518819 393549129 951842622 546184100 831445046 954664279 100263205 450550741 147976360 313718966 659685091 387745130 606886011 2699660 405941910 953183951 223249521 438244810 960864766 807165770 265360943 507202730 55546228 418097637 352637078 486350699 774199639 924940709 150994822 237413439 946675156 787303165 981217849 166720012 363842191 330675283 945090096 474207004 816570537 295474427 938873557 338337779 340529356 343857875 625727704 223520286 361390966 731400835 877894830 779152204 783700682 870915301 433205177 833355322 724895013 102218612 4201509 579371211 361180847 487027087 77965636 435544754 413041576 328184258 759814025 100690172 155924247 328872397 783101902 273390826 83991147 125643585 635941300 195824177 328809297 701908681 662564333 507830046 791647060 114922610 418503013 984246314 466284473 424015038 757689581 448048391 751011865 104492519 453125108 428596435 724469401 29848369 633447398 400700367 859955899 948678782 642179768 867476409 676185642 46635866 509509239 10249119 248169720 869692961 677105659 327641460 967642822 939289963 291155812 414883469 187624412 7590176 533002010 937650235 584651126 716352908 180983264 692042818 448308117 299027977 505418790 190723945 707365000 541256801 643725553 315248300 560443388 539686072 299025983 430106027 169362820 182744589 684656717 711978279 623651763 797234139 815404316 225751965 707386004 376254057 88122616 391977150 858570129 325157468 331456687 244685283 394824133 412011527 891639246 477826288 459987410 987959134 977513748 97686196 296343000 700066758 502602272 188978662 484628190 545831654 704902789 834744326 832278193 47708623 194780660 935051014 896435503 969932214 299507107 158016073 800856965 576537386 803567003 96795247 997857647 882092572 308374719 710010643 789368376 807954355 21516594 342561838 203621395 329849002 826904664 977330611 778049618 500600812 497800158 372909498 610932356 73887937 701926235 369753002 399049435 346159079 359227817 126201229 601678931 825902885 56540049 751678353 635008848 534997533 604623809 566031060 780806796 806850271 259427530 569332146 394183658 824015275 418857940 865629511 244007571 124484619 686954247 770287009 150633416 118461516 414026717 795396083 874687837 459036302 10366371 203261987 232761783 210435608 815625918 88383786 204890368 672515030 550513308 539841831 254158015 481432561 212934798 956634720 103076563 901352843 574989774 52333138 341988075 5647896 45995645 655245689 237654409 820913974 770636321 324688956 223200053 925580576 205825073 693218854 745127033 376322024 124076374 267736179 816479888 886603633 258744063 312755696 615136632 307187944 785826780 973157601 347890724 362559587 246934933 101088227 716079544 391686820 989148528 246803999 34992974 705320445 942584800 92229216 204436331 403373475 728777587 416050295 256355038 264110061 583475613 21082564 210506309 411672651 218599741 952783942 630388167 106675038 239376759 745213610 718499479 122787133 427004033 894031377 304952460 980334934 930605571 845544785 371014767 615440686 639996061 473295401 537669525 236884873 585848330 465545304 400823420 864530490 466647684 983943198 738059483 213457453 366678174 500872092 762064968 970903226 134370386 685669511 803922747 209741442 501099528 652028781 970170519 168543119 4995134 218752430 188416302 425723568 877250787 24160479 581692498 755152505 517738031 41390439 137941002 70313169 343225200 101104901 540257351 356380691 191554474 98491368 654089230 867444466 477614398 68212977 676709385 474881892 254427001 433087440 461034340 417845841 629449036 752781232 762121954 578848572 520260940 810534603 822774387 199014021 771292379 410115305 187408703 939883464 819389348 294976048 44322993 299124877 635305101 954966511 573926023 838544663 540895436 756869096 582567657 713972314 646742508 389332567 900083363 184276233 309415917 930271991 391318077 619937288 8278510 590065615 618305105 561052857 241018093 194132361 564963728 424395664 80215306 714135746 292029122 252221044 216234440 867146344 888725606 623240455 799227003 242512726 844432156 905631250 567685449 657376985 558710816 514255848 541398715 650790396 821269857 192049529 326337030 806345882 134793629 846660620 904328861 324155562 575129619 329392121 993789365 876927476 833005806 583063286 130345065 868989652 789209384 704437997 636710659 799785712 37844199 166912113 819793165 168028543 432372467 729878984 301596955 146153244 128826328 75595471 912080659 107094362 982198488 74475711 998994878 177171223 13246246 107853126 979551910 556896677 851647355 173760820 79498843 244309607 992749109 416833606 304972502 993813892 101542880 430921507 134567076 156550890 779879865 352297564 9880841 446355567 389379102 995304245 469934381 81055248 773797063 152037226 987471985 67637697 671502284 205687450 590920020 942294772 315990076 451617857 356055740 186234784 473331269 120007629 712087976 540176362 28461961 836175791 779944791 919229833 677005488 863978693 752813755 535593672 367829472 445572706 138707177 50059707 776853319 421947436 426884315 319987486 753769803 646124684 766193222 43358633 44604801 752475926 510404469 385177405 3863833 327427462 431321906 670431839 988524808 242053115 396379872 901613171 109025626 831169814 916699192 354230355 558375282 182222348 2578667 715842076 324404527 114469227 210752835 463362692 107222641 548451493 224609094 234999352 864378382 163779762 293780845 470462930 497463713 167949766 269769166 896056145 808618277 215917542 629063873 788953656 195576815 654503344 833805850 54749256 328514469 665327427 712252915 43588639 779986109 258156529 646012041 159079830 725612004 94122055 958756501 768213287 118091961 929931465 239326107 594466666 656351465 320153108 196897583 652579602 463561755 543297872 116573475 286244796 287228949 996196356 128726191 145659009 780090903 332030652 78896442 878494782 140436997 984463690 342324177 381693967 582015950 61714156 800548683 505023058 185332875 36987776 204278119 493739299 950314908 392451504 694386087 859982616 993824233 182677653 977093254 949136203 767565272 9161395 991636112 946017682 469492065 509378887 987515917 195041637 50826688 423523717 755933462 86288740 257051745 90821047 498825187 204572534 937908465 968685921 542742614 317551651 662648272 570762091 120141883 458184613 931139973 702512507 868416558 891334252 28333543 989366967 470275926 87534376 170471949 521876861 189517712 865066512 85040613 602928810 176294305 415974452 189379949 545193218 728815961 396940676 912938908 11378914 834706997 450289935 820965347 341824105 917046752 674332985 949165779 672610208 522413875 676723270 125199035 225415145 300342392 628756864 444922543 221223159 366220585 842654987 430132578 400876828 5342592 454778172 773711981 774320487 822862018 190721820 404860922 104657402 137330678 636985917 831898819 531491853 402385029 793216832 375128420 350947924 28245166 77496596 36434011 525296103 539828491 855864395 542973716 468095513 400318076 869874755 541836414 139346615 741991143 834861890 30327846 369428230 356809166 559857003 196101947 958209628 124336989 408637414 763141798 710083607 256576640 187508818 3632096 623252958 808493886 474518165 396862199 421122892 110269669 77070792 460263414 578010085 733739146 939139976 853170890 644462837 317553830 367159801 412043865 755167171 589175799 614674590 496997859 121580202 207014833 7660970 346230787 505289753 362747291 426234403 577032895 654109328 958597918 720581993 826735543 533020195 322111409 452924702 162900718 819598885 25116347 80536413 937690654 783701115 108417631 176037390 513538691 948559679 756460322 264406998 640229101 914879760 379094198 620199775 906320800 168258457 177473874 178281166 688354991 855147676 391008791 703271885 462336897 878212318 521704120 147869939 380821254 361921238 776502386 954136735 495504763 182921863 190681939 564619176 227140817 362948489 8199648 188658170 556858918 426013679 203062433 788379907 226683215 949012278 870336295 105319329 482414018 98584378 478118982 798791345 838948014 306547003 578592303 353468354 31077527 828500207 524861159 581917588 422031222 258471185 481224061 344377882 436762342 367364192 887581163 490983787 904691796 730281842 122115529 630489049 712023117 949889513 86898960 772333172 114372327 679671923 792985127 878196389 457814869 220304292 835867278 328331360 83314787 840215022 401603555 776154750 840483041 928215945 147164866 92892810 152684023 536163289 883143028 293747620 254265859 320011653 220965964 174780005 659637890 800560481 507525653 590907249 755471507 116341259 455276580 503080900 219093111 130616938 629855894 365680965 629412850 250273904 844988020 257120489 946051525 185973262 618868812 83329882 450878003 727094681 662934232 872042114 997775018 110950222 590385123 616919296 150239054 51612730 380522913 14314624 45549012 753339745 547855259 507776266 864533712 605636941 716581016 314114116 350893360 292913441 504219534 61550199 924291237 477949072 162398868 730881687 293348576 525948961 307915641 894554770 426219532 668107119 810460508 873399391 136672531 31504866 865768061 884435947 462938334 234576227 936728759 748186015 628983065 971672368 621347559 241287588 123188218 25165897 665630174 467704645 33524647 671326276 474598425 763686264 879621707 953000233 833696865 115615102 901140479 173238566 374191654 64524119 367964089 349617880 914305452 716915781 282930763 144758230 347009497 988706149 126486140 818626044 292493346 200513887 228852373 382052762 973424499 896087541 870503882 33674270 409740496 975097328 931412289 88311223 117164465 11913447 136539355 644526259 681471784 923040617 862186678 510709854 213262520 647853755 960725485 413618106 568080626 534427232 557706766 738473381 39386498 275358829 561216642 792546248 527031459 119858539 808419336 648285779 890471671 155290510 646475971 107019675 90912874 785192170 176712328 721469820 172815972 56211788 241277905 655941080 923409183 133239072 571930551 58959311 459185155 469829943 755849693 362438100 400936526 196586593 997930858 946640644 906721689 203189172 618465438 471620111 838712335 56356777 894277028 442305881 971665575 928711707 355112589 26886565 409406032 727127980 939586821 3758980 938903149 733960688 535199429 975929348 979958074 607913181 125636313 694322768 845344964 261329893 251283080 354609421 308125192 826922655 610486790 54713825 974079404 892447101 568757630 443476165 607008981 947772689 710355612 397952762 449408381 107649722 514261120 322856952 429825866 518280580 425083101 243511930 583942254 77078226 978042602 669728422 987949557 253404510 669206473 895954867 282779098 798273062 731312936 200770405 756017154 104083264 911084491 58633313 558038339 394577528 775151926 754100039 508163337 315849797 866187799 21954392 675657407 520144334 499608506 192066907 995124553 48463297 134775843 40870550 128837462 615579837 798814293 158072739 396345570 546157313 113306626 261469520 852352420 346978769 65675738 793293747 926917892 838946406 967900401 610056203 981324649 487682090 338396026 352937919 796186544 259040510 811149886 375675181 932642930 344114258 756335415 678709293 987478213 552010632 19031853 55342013 198530405 136172001 338036643 455466180 951627602 722156729 705996571 99176584 40341309 815467362 425977493 195587810 839387957 833111579 808475612 874314483 802137924 619358797 969525036 694706309 278684851 840947231 442187936 429448076 706117036 396913331 716161118 181832599 182015052 964140496 625294458 25000046 776633223 444971927 686071083 954194466 942180374 210060223 68783214 6651894 13535187 470919332 224530307 231437370 77066336 590933756 317060277 126317542 94291241 45327069 513484470 441955071 220392018 582244367 276605475 114728708 163769794 763957430 452530730 394660357 619891821 74223835 33887071 117950499 152426084 262767556 870159629 682682855 215115594 669192176 852693945 997583629 928731871 872315953 757068746 384439073 561187783 813101289 917545145 136619251 443215001 657163705 762065024 695936605 421049571 278197450 679484772 370200978 534965941 425646648 218189832 578098470 833461507 699224417 383522742 72958872 826716873 883907420 887851186 141739804 669117580 836103939 32999349 74457098 543340738 125790651 890899451 681690737 558175586 338546673 651441890 453077868 595146119 46654325 651261063 649785334 325519128 670522794 84632402 461120919 969098638 110314847 604832368 393727218 143843396 893360598 299661154 729250477 248532711 303886667 155390593 127262343 705937716 236167045 4900354 573946200 68929950 214259826 870382200 551772923 255710671 278659169 592954046 445022625 361014185 989636178 164653809 8058659 772717205 195289419 174247859 303003518 3255778 52660523 538894401 356499102 1985064 897270794 422686915 640565962 716560458 676695563 492629148 5428231 475070119 815654894 516041557 330944881 466361673 406436674 626475277 389415119 96774623 474707868 601784394 288922245 803402295 903107904 514672511 236163882 405644241 661810607 243990886 913604439 946471362 842549111 618261100 799929050 549458181 18002563 248511222 901589164 188461615 837174164 639273018 192317047 933480295 996023284 208581788 237002306 746850325 971368485 144522765 990867897 673109797 433690285 355529566 835158533 941007099 415356211 504342156 752657263 977374042 156821569 510071660 534044208 557427619 66748611 747781148 327976642 656243348 740927670 725492462 979100727 648290421 136331631 536616573 299928322 596254721 635510050 988312991 668870295 450480381 135503421 811449460 889713275 900042352 492945043 546079123 841845698 340002529 582791609 273930375 696740065 384624216 902541141 148335832 847309902 97217816 590324976 660363166 494805733 221649262 890043746 194321915 119544353 441558502 855822635 942437837 297954770 896058987 2192402 557585544 638580269 699045032 708869641 285092373 530546655 404136184 515466866 692680001 502967739 464413234 138063811 540364916 100083218 412218286 86632598 428544293 753562627 13967925 980603531 88233172 859007488 35998724 205278509 540389998 108202100 216682593 704153168 896813191 494245328 755919973 253968123 102226166 926837010 702916149 546031786 161443446 633398866 705624161 656058867 810218306 507196143 806108477 713381434 155091614 254544172 15223964 912329322 576230847 925033502 417089353 359316155 893850348 792947203 149132716 542265117 975689150 555532308 22979722 323236747 178588907 864422012 334323497 724316442 214767337 266358172 183672515 321615632 192259350 362607287 150683768 496309414 297718699 221277542 384211524 897323465 659605583 252514987 269774459 845879607 641099394 547780678 172593183 805922429 329062423 302826946 126127359 127749896 181544523 195454260 804371389 483329321 522566221 372680788 94547925 970882854 320693923 816331012 168907458 646658381 320936647 316778749 593639075 575612236 863092561 703795387 855520072 185623103 111594000 174868881 857905283 418904487 444851759 808689700 123720829 386557538 823180069 958155652 803680856 59292190 472358741 563018786 693660834 639024354 169121156 655799770 673213422 885341889 975848670 405329401 520114518 376731833 260547755 905146901 367367555 417428837 600225163 441709500 279751883 881505608 946052932 448812073 121946514 40914053 84054680 574067089 634404254 799357216 627005151 369957104 312106840 529436693 226615613 73583403 937633203 671486323 343832939 12819006 181125111 12597892 30346311 864695157 497746851 545713492 215186901 812799932 446380360 441164059 512279970 776282681 613422991 526901177 973641869 900468474 971181864 697812728 260049796 571302790 398750521 212196604 570948087 925405880 785963243 47503844 644261170 584406522 426649179 674415812 254833176 827456617 664187761 644468513 437409772 55592945 575850833 43487531 443600538 673659204 393210352 171963144 238627849 593303137 654817676 62685488 648388682 64721304 567467459 928557303 230133573 665852759 165682636 857837438 944403629 188826650 374685616 577991283 858391138 410985563 264475846 652794051 354941276 321404717 132946077 339447869 401891356 110891176 951520669 64835045 67194217 816758432 206910492 883216357 785476505 886370668 585914855 833999001 781784865 418997698 634940541 916390020 876469506 655285981 918968861 193379755 183447435 806968369 912976542 154887252 964885289 14066065 368745941 565556929 299871679 107923803 607321901 780419370 266737973 387543570 130226952 391560957 167157106 584120964 346008465 123602230 50564855 105557563 123834996 406150185 733386515 538247337 518184372 736206665 307717178 30026872 655102370 751057334 215212118 541023194 301027348 615876474 988173460 378392561 331369080 49335375 777647205 21127606 884415662 722886513 278364389 566071958 356678892 345437850 542526707 905400661 280676931 939644866 334917509 672433002 770863842 270941711 819389485 353457031 328998875 383718227 222187479 760369973 725168440 164831556 664064950 344479907 631864776 948863120 252704373 446915953 908486965 901433263 648999187 923364706 854861780 928054138 83414182 697594003 796604470 441577745 4092149 49005281 316907034 525352220 420901093 382958275 273240157 173611493 545626746 221959795 629165439 762926590 165540115 603286790 290328659 185040569 983398590 733276718 222289067 581717542 120570345 503389204 326700277 816790672 859781303 385720198 362821940 88748027 887615103 4740960 173718488 213594407 648223869 906036026 317863849 806265159 145292744 245859306 143438250 674456982 793300042 425775548 379779477 942384250 521989239 471470266 988558732 832959008 263197674 984818748 740265766 908515733 609766826 139577171 425243914 502451191 899001558 503072132 876870666 689972495 508124800 314436546 578651014 3346936 474837419 176104858 310298164 389819963 45140449 168394992 852416276 533788269 681146966 55626695 921480138 840163046 484246185 342452389 426025074 850002354 873625407 753838334 409401832 629406928 595550185 759960015 992301750 694418126 6476184 358029408 973148023 843961878 983620970 849908634 285296431 277238287 721770750 321418997 589684926 628644472 99117304 732945356 678456687 493988108 109043300 327094838 375911421 928849598 830624230 445769181 25601606 65842273 781314741 88327714 179567286 804716330 773606376 626037367 129912273 618532358 417713021 644641312 693140351 220418878 742094813 744900601 496167256 329994537 864825863 681833421 354314603 840017555 126448709 57699980 587643389 267963859 990373733 373347267 787880316 226803580 882101500 634452817 987998663 35859194 406806549 721770358 453163053 27146038 267459662 711956144 878634298 546992282 188573782 483889559 620815685 575142383 569359711 758249238 383798588 252051052 874937903 455714537 529955917 425344948 422493844 355506521 313920162 338186286 345051894 163668516 667892481 553984138 282434480 848963650 552368076 398376958 664486361 428424288 70544579 225315877 490479612 67137157 294888217 364387202 301801265 460229982 570920792 633004713 204138278 560482622 967214168 965072223 676554882 447160397 39474381 271593783 570596637 930633401 20931558 736261767 635988763 432510059 343838614 416903385 21981355 691088198 478486560 405971466 588255509 43022260 268972791 12632785 47999846 355722665 55813999 971384162 656206960 135118929 206934953 987333212 54026113 697041578 676630778 488310575 700104525 499265914 684345062 271304923 728806234 794012844 222772300 692478470 585445743 880066458 92720074 211951945 233571289 69513631 929734959 806911465 847406643 430332210 56646324 938346435 530931505 509376006 431693464 775606482 680177631 49907450 64556674 150922157 527193111 405194374 200156079 317472853 828870499 463362363 370720097 690479569 227966469 711977171 797306238 259068341 871533634 714811515 247953940 340645646 222247818 365651387 593797225 315523573 662703561 473686699 58526573 186994443 294692284 426341879 884450471 15649769 955189356 397231405 843082965 872640811 494101864 999569707 259855104 450225162 255918238 457276908 102038075 808418383 933034232 845670733 690151585 853924558 825206003 289647835 843207056 850912081 271777259 209966446 204663772 898441544 134491756 96140621 446816475 101936385 490332977 67575794 919656274 818098815 954637963 867541739 501992486 609520544 734073293 310139632 168384454 349364985 559043772 211886124 962130265 192748615 785543588 43243868 175502053 870778911 542331613 419095599 792449202 66253951 530437762 625634704 107502765 175890152 546174596 466132061 58057471 35660971 88264848 426693557 182430359 935284228 424682236 96989996 181714434 929373542 679722139 248967059 304807388 166017498 579295727 760792141 154642510 215910334 545470563 268675512 641625416 379965065 234409696 113672607 234854565 983867968 805038463 309687438 604067590 963939693 903038475 522643929 671302125 518422547 386909004 601263489 40973084 795310543 600565804 817945026 715115244 471707679 991235721 62658360 320095993 650960786 518811517 306239562 651838101 421447273 816857324 681921972 89450498 833977805 776685131 485890608 904978051 155978516 141070562 909365064 57283011 83935313 20085499 570736309 185193931 262448790 694392403 15241901 30921752 39897934 374177941 662526628 366004070 262212974 847889073 698349485 968884197 663843195 982154272 72581566 272579186 911720769 626290643 9598916 943250580 822477440 640563667 701881480 73631268 480926885 686640204 64824679 712300092 326717913 384642748 659439193 969435618 565222658 528982159 447029168 548234159 319337385 401275628 824608153 250282495 545093734 803318782 287375599 76043744 473871945 766409355 882998729 157436228 629533054 603527416 304828582 997434637 365683446 244282521 167263347 325360907 161651652 157074275 27906019 44244694 237576433 87155891 858870194 605639165 614842843 828910602 99849774 412264868 723720818 214222947 645646237 296598523 159910039 764097699 601601558 570790086 569603630 170751235 971361517 640148978 260260641 382775090 575882911 784358946 53518755 444393712 533380133 255575540 511161813 886211022 839975817 61697560 132454601 603618649 285998456 907897291 822457561 21425796 538630934 450299801 580005328 503321898 603480658 467067406 611554923 705166212 48652053 829459529 387153496 241014175 297199258 823876689 854753439 931487629 391233223 271458258 64174231 724479805 562190358 453741929 168655840 880186089 845547383 176673380 310241849 291950802 47056141 800781264 917447356 805195918 51143580 693509508 410200701 14955874 179613452 291697555 770289700 986878324 768066197 722100155 238198271 271401521 726730014 749965331 783769305 797545932 65597791 126311905 807115997 945912731 245676930 372612722 145746325 8999940 768890880 429578554 257622081 574370716 174053805 662724312 611789466 217557860 676183198 100560825 377194467 641801376 936905784 497875200 593299392 296144606 857706043 749690217 386286392 300733522 741798289 892417601 299955444 239966415 125818025 956597852 242213777 911886617 810288888 368371983 780587201 512719801 383524733 851862036 375704040 824761094 386532120 725684591 393584443 787838708 416924096 46911489 749285488 630709103 114614934 141560093 771402822 133962222 478863582 207733517 194919186 430935836 410944683 902682624 617282887 30805914 108867647 17741913 31704013 47029783 495975200 296303458 330852528 914924896 43393104 582300028 90261607 382625099 425304244 477779664 111821585 189504622 374661795 269296936 673721281 655529083 115879979 380993518 374431752 378488584 560862738 179208331 371943333 745201160 867018530 697473959 402664136 387472698 803690451 890034882 404751649 727868335 106048800 954302268 141775176 4033583 231710183 953501581 617436145 881549855 138969615 722095434 585101434 776823423 951200563 19275871 671218268 782204582 340777317 728170696 220946547 395205196 865092872 532778104 198095037 410163147 319885355 988620916 736953801 794113059 122047973 18720595 868026530 669094149 55807257 274393980 783317332 486155430 211502883 217724807 960228388 189366741 200831392 175506790 848448062 996320412 960911536 16578305 504582534 751240562 285452226 183693729 242175626 960536746 974414266 426310249 951490269 827091022 336068460 703811199 571832299 566388937 452888380 250292735 459728939 895538046 501975547 138734414 103140038 546485683 309027862 23741691 96964404 931412641 658934889 272330733 280109677 74596305 970031370 684635930 604065194 187013446 672517646 98401979 754655519 621300147 963160486 485048903 469550692 387852142 998789738 643374934 17235130 14506440 861864244 114246118 722830178 433232210 600956929 275716899 21951610 606374007 799049162 287263938 57836156 889919179 907529326 767049816 553890477 648431981 323670021 855274345 417903008 507929223 249958758 426640334 581693050 898880791 63120722 178249769 87973387 341341752 956902000 288391414 222863431 217887582 421581873 926821106 739054394 221413536 18503015 172709886 48623528 644991035 805920283 783601675 364742100 780821750 661112942 410564709 409217292 68734194 172468343 615565158 668517228 746238943 108495483 484240260 430913904 59361555 404836291 742232951 203507471 197162379 933779897 716091220 183750639 271432907 556183056 417059443 551326319 875684112 344593860 11834657 769911586 940413851 240115720 990015041 103696557 541597085 14323463 947494945 523944744 170799246 98353941 426289311 853924503 990879137 718882717 641069891 950933085 954866238 242134924 731880606 147696255 487200985 742145018 884787982 615137011 637343940 264925470 111123974 81003281 490463894 588652739 972268228 575988674 233504987 203401591 410425627 147897997 729599971 72443795 200618159 410017384 424063099 950848913 710059967 925117884 623850847 676474312 407742552 124861540 745126343 851316676 416357817 143093190 323185427 521380085 700509299 50829045 785510893 480682604 692205011 731361711 804119589 538298540 419313556 289398157 978780600 43171158 518271757 638733403 474711697 136553208 152671682 893528047 172807180 684870373 870021084 391393688 114458768 894386388 32995389 240790466 361548057 219940795 6270606 115403605 870838553 182268485 189147517 946249145 197527479 178229252 730139300 465382491 267547432 630111518 712528065 748524040 929472354 686647656 677614057 953185932 423478611 215736558 37827950 983854998 413864150 977897695 804600128 185173878 920587143 268962006 444086821 310644613 75526298 444896267 271278040 466649066 267801781 38987220 899275000 570392261 575798874 136488894 462086629 380014800 684109854 753824441 692174892 234009367 271206505 470288549 421953061 89288040 698086285 646080889 102154597 371421178 650858132 67447796 175442091 185138189 343936233 834372494 677937256 51851434 241601388 712489893 790001608 750790673 654505449 498086038 848977732 637905163 121787627 213420470 418994592 172639347 374547599 669508109 23613329 963046876 720364675 72613261 136276766 918722791 49427580 586618717 862659492 971386808 66052317 607712538 996461096 852530848 169092652 358462969 724238243 569350851 778069624 913065140 388626278 830646068 909126211 904479420 22959472 497740119 768964198 198860268 524320607 570471443 970830583 360317049 928314287 883045851 843611158 40520213 542499400 697740106 913965851 478085788 746336454 512207369 411778892 49721459 306191767 200487325 70495381 95770523 48585632 692070771 735285869 880005446 571382308 340477497 241953805 275923228 739263207 884787155 649810949 770401736 906320461 823978924 967518013 295137424 410310531 408071994 392087189 884244086 326761681 69413339 749960675 423754691 512231814 198243039 59936140 613025524 151992471 56672408 198415241 386147793 171015897 211556475 536772141 483232399 490261125 767799371 808276438 739375322 881073346 921350194 244379659 679586721 434511928 525822021 601133695 429968279 497171472 470437569 964262722 58308654 428187633 468142660 522038756 96208123 284537025 552957909 789459599 63703324 276468609 887379952 809149838 680959598 225269244 609457266 559797026 831452901 642898467 313453883 102282265 194978863 704672695 794500766 453124939 584087850 105858271 455990887 544760397 825446937 284272163 163029413 899761476 327220656 686788759 689748263 987604263 291662846 346155170 334710545 743740757 300316304 593778486 51386935 563976827 723601907 987830767 629111370 394455317 250040341 446957941 825953583 816795031 85534187 145449702 831509899 135548490 427383682 625433610 116941214 925798639 693592233 684956577 879016380 370068777 19649611 440363698 408838019 940856181 303078484 731223143 623413091 414550608 515871899 584977315 883552984 473581163 875908454 234811027 574335345 719878244 136023218 38179927 274702572 847643384 844369666 206553281 837098105 896129985 760377195 767861100 26038427 128596484 642289295 517656985 735303537 654080461 292404645 701886197 275950179 580758033 83057301 13092799 269834490 350348504 36609159 448436448 88406852 513096679 728544012 801630635 460289568 831530917 199310945 344463633 901006385 672951808 234977145 122248526 256595408 481762650 357314655 79006752 955747278 15497310 954795465 549163057 267366215 166590342 831979040 936700137 355618375 938980000 213776296 432021850 496960805 211843756 795152754 468307575 288621391 992920433 461525926 112223502 803726034 70046436 249683220 170636061 852041262 626885424 856860566 370608700 997426890 290702537 781701325 423777453 692005520 587012510 778971927 435378905 877610253 209240527 45168664 263434655 198450800 246672787 762865143 37345391 199298125 979645075 451114196 100536737 968192704 630770698 329011975 929770792 602774651 811595639 857822507 810314750 547433592 337159445 307255364 138421509 274706980 361592020 995199620 157808317 177070776 695656042 277382791 927913568 58781839 635172297 715946980 909171269 822862090 255700592 525210087 73725392 524680233 175641669 476301337 413187777 427971015 328930100 910276099 963031024 587462456 288541560 836162362 800079030 641200145 533317775 220460348 598628307 172525581 721447435 350450554 356103481 170467525 310387701 305762796 443391615 226350479 556429321 370214830 728465853 194524504 229100743 339163324 929554254 904891872 855115657 501967745 759652322 617282667 345689333 924154505 234224663 677567180 863019267 62286802 917470219 493486822 556094349 702705007 709798114 619573922 739842086 252504007 186685298 723751770 780762481 448103991 888773797 941784051 817553670 513768293 262690146 121299175 626074982 64265053 241235287 791767599 994893295 648050260 653730225 3032870 400284686 726326592 100749611 883987611 745944308 633599159 504090015 273941762 778567357 13719351 643320130 917636942 429412746 836980178 791707706 983248275 583034060 769895448 363328211 829491675 638549407 648214136 161358221 326416274 171466361 996006563 920151595 95816629 161497108 802702763 688846770 416647421 863810041 89976101 859530744 335995043 657345244 67933759 35412724 528873706 856879048 13460456 152679704 146789103 154257290 431913984 648219096 761943521 314761600 111696846 863192123 467180917 908148920 336394674 523488640 529671985 664219266 938027505 978167940 840695858 68315399 363592067 239557416 245266637 331647091 933115528 418711634 498472667 863005445 732371418 625379076 393420490 140612605 865967815 90284975 539106641 5963689 467633226 936349925 368694022 76788906 288948572 22894808 399256489 512491294 405193195 574824219 596081949 600052470 693384336 301120870 39397163 828986735 980977321 436893381 459085026 761717732 600441960 711872527 608477835 73572070 538630452 255270274 992439178 953394711 994502468 474984828 551128697 611695041 587025123 645194720 227911877 601572055 343181356 410224691 647876168 794965078 270009154 524189390 198388053 17362894 87526827 521082213 900534341 402840207 951517163 94181639 446933101 536764733 435709956 374045020 338462037 564583653 303489471 755863918 192517011 736770413 957808572 116470573 966910320 256385718 801833059 317532332 479796436 862277774 469071564 968301343 183393447 21021545 760363032 134516909 556765336 467993298 432199731 903511505 446273890 338483203 308890813 639752017 747414384 141037498 168234256 82851335 195329147 983406919 8468720 514444721 517964034 742209933 27813705 328598332 897092762 64703428 200697465 265235885 341460190 773840444 643931406 258404443 505031542 428115050 12836314 441459801 600458547 106249892 485843529 361957558 359772222 333540512 105616120 193692310 66296480 269496036 40435789 813995070 611984502 885191018 767444780 584880296 772680256 873727698 743004868 728143836 458969425 92224017 675820695 39115405 858871164 299234819 603002188 481165248 107740055 555982973 802623725 370466412 169829247 439459212 401390227 326120605 194034563 759321265 874366416 567745207 793955637 332119672 942059783 613772040 869660696 836417774 165904374 969587500 898789788 942569573 970987798 380890440 630024992 543360598 46653302 380019000 893861481 969013813 238672618 841444339 949216052 272496726 86406242 264931581 510357961 413564410 921884417 762338305 145872485 396431884 509026753 902524819 654490722 842094471 630268014 184997007 787010742 719141860 827241987 185746479 377729964 938476702 264813374 14042622 956215033 549820076 424794204 636966962 253644430 618160806 136897460 44769200 677927123 459729075 212750724 973336973 537702631 874465846 495411848 414014060 483089868 494678896 569207935 661309679 499299858 519193349 589143635 258027150 106863739 501775533 980748717 673466069 576188365 510099162 882478824 692376339 755489542 55913124 416509260 456692292 984856399 321652096 315609256 685034597 485996298 928450837 19029764 425957052 849968487 841193086 518526929 91776991 818750364 821379921 27732509 336566207 172239033 546459754 680741801 24339057 380107261 661235006 107587534 190674613 976881947 666500020 631746922 734461000 202056394 89967671 52312912 86454836 419054948 606036206 274692013 786630640 143329611 320917196 291877877 911654824 883640951 572492349 590542776 356033280 341859379 987946871 629301257 194486568 809032893 627020347 906269878 471356823 500645366 751851028 783659562 997723064 96636382 751996464 116470139 473902606 251679876 785229776 246340390 321691473 713963219 79342143 366707752 75797458 636883038 441597921 304317564 738618689 461585984 53844981 550033981 204362385 607467552 983066205 194408779 625610638 230343110 769773479 99456364 354049651 784993812 599013593 175581146 792654204 976931671 254139686 156867387 418136856 102987700 148841244 265883179 395261598 970407917 628337329 546612419 334262197 939146049 700978648 467681291 993962955 961456592 612242923 126423619 135329263 421907897 982267131 354775008 400572479 739926972 671852543 842525034 417310637 541223823 426727443 365428624 128042176 873875272 816329630 846045547 533986916 558893823 803971244 897280990 345179962 64198037 960947831 461937766 100073285 547060734 446746341 906300134 672146817 490174454 430994401 357971812 410990042 874571227 832274019 910754691 109713569 291049280 688341352 730136586 10442920 796063013 71411047 153838589 789192011 83975676 554577344 714594977 51370563 867121634 451717867 51408899 417843085 319436678 839670422 813091228 202756054 766308472 670934106 617138045 558853916 101648332 532688367 475172600 89469081 768484016 866450401 687682481 253456565 270793585 393000952 384278376 493538712 795245802 437187168 286271938 274162653 638028054 730193134 86971011 472917334 777661617 192582043 684866083 164973611 22677746 735097677 210419045 645234173 407117628 385192802 714305324 208271723 239204250 670027824 812974097 896207836 777888280 741497122 147330280 48192445 538225314 381810891 841032400 629153569 651628580 319796265 416813834 958434283 166386751 771488581 738007568 815372767 991112711 272740212 596392858 751228796 571733941 132244488 524375791 91807849 733636819 320882098 153548414 848858487 515093615 114425613 75258758 496913105 947195631 841818682 584615313 476464629 219331993 952917253 652698199 170812086 630397413 8985997 239164305 487292778 97662987 384716643 248718245 434903297 743886310 551530016 278971896 761794736 85154130 457607898 660783669 240802780 651349049 963847844 593510349 849905413 382038519 975645511 777642176 141751466 568774655 369463594 121101460 694581153 110894522 221886765 918617062 591744705 653509786 229991822 799570055 463232979 752503824 356396799 458571766 219822608 923247052 911589972 584010134 284093675 490901837 617284276 300630555 687756867 89411187 448666605 4642249 731133423 702692819 698267326 37833766 860749423 734275712 216747164 300712318 46283215 991865370 906749998 588274105 415220443 917298988 140148060 519904922 947346849 462285457 749934659 704293941 788409571 285664533 72847103 194388262 98976169 371034741 856429288 577755824 171326790 2156900 270020508 747128118 28428446 986955431 404250450 551025170 577927893 370771522 180345146 344035418 370105417 175258992 714546658 223058988 792582455 253205494 95750265 477222211 504199613 89768542 45245904 400159498 574719535 597612257 863614966 500485506 929891816 25894180 924806468 962640737 635423628 563817002 78751010 15664120 900191824 666531487 613774532 118208256 219790220 843229195 858849839 263588763 723195111 649635255 423012482 410105709 158476034 590964782 521798431 14720702 268520765 944803197 318269090 778059650 964125538 861664026 130910020 857289765 662148254 422655790 418920294 782952057 324607072 330389992 383723791 45485404 843740341 171862896 404052493 34173421 907233004 658663192 280952968 105023683 490902801 251881239 141303427 893195780 461490818 440288889 151649429 364527313 39024042 471823215 531556119 731765033 714625490 353074292 126791792 47432945 389688469 414347457 420738195 950569884 839889854 998095582 544167634 781589579 76538481 921351229 750072892 904889273 711138461 712377850 919994941 796932146 594245375 720191478 762971 658915237 579272180 464771112 535993796 676355429 748913101 431203672 381451290 432269690 939273827 768942109 845008500 218511626 929871136 576922652 878075227 837376110 138020189 99315333 337799661 592027603 247052105 68630040 288574263 909715632 240501438 210879308 52162375 627590004 936353164 899947858 367355338 13117654 441144523 444755485 720385935 404127760 439613558 700145834 757745370 988371737 22048759 161684298 179765866 750478178 632449613 499586929 526176642 284636965 505856701 42175014 844735657 701484867 896755548 770572401 814928587 444336368 344969769 2343637 409085510 402898276 179754964 58000952 449755879 912256846 458807639 150428392 912737340 354889122 308981941 655629048 699978460 375444715 267688028 531735681 330770124 694901057 151519050 302160425 847001979 444488210 618164962 982783232 43408062 413773665 288539816 526218978 81551496 379589204 248550875 446914506 229257241 319833957 267107299 471245743 59405992 238015091 209257584 408776172 803411123 498571119 65362024 312219751 771217882 336639532 572913873 909429117 620496043 832685045 480018580 716359944 13928369 205572002 59515991 411393143 673372387 332449869 471412760 270439731 366521388 896410429 948830958 352605489 44144991 518249257 902966239 782164599 329090485 756998416 749584225 209098371 297357227 115428827 795593463 178631420 24429627 301452205 686936035 174328444 670521248 352719995 677276131 770698254 692978791 581277162 267302216 193855795 278918605 51355999 854753521 358086440 517133671 8057107 708617441 447093578 387740200 896183554 145471546 223077400 50169444 869651431 132629196 632501240 582896513 184128827 517688806 248562259 653663840 352339172 321519498 793926203 245085584 329287083 386133365 667358414 400455216 506204537 702157037 504554377 47652952 155906369 244833608 819662630 407022927 115062816 822943947 256556136 716784235 850426527 510064525 922703637 85910160 960169265 46376100 330552540 941966746 740277738 158205369 605614366 893651108 435994010 298050686 715525116 256101028 764963623 153476298 572066907 574232295 393117564 211731947 166187665 158776642 793663951 78657732 223912070 521400731 65994084 943722496 451289714 679528887 58874465 30930255 626304950 391914983 88221122 666654830 773842864 539734484 646937326 693417746 975835425 971764492 382076755 479085532 157783973 497922433 646034581 146810986 524702679 523945228 19733566 722357530 67405544 605093183 52545897 94798296 700176912 114526144 243850305 164633073 842605963 146610124 369595544 448923783 496004310 356867130 437422943 428740370 568373112 83436883 238290777 201391314 834923423 373636448 602092547 635218022 970574934 633053113 745785684 622405525 258659386 188287137 308077617 481596840 501380604 42573126 707374965 349586130 550975871 258486685 408961663 949805945 521090459 248316290 814970042 672303574 507179379 422664015 658840263 934806100 351291562 204627270 573877233 209730534 878349899 863386718 814848335 816495876 492101152 110527356 966575131 152755916 718610590 846533354 961856295 167770448 833355125 118020230 520749316 263420350 971109381 642989335 852322734 330445352 598432688 788776163 602745408 877525694 368658369 931310953 378566070 545916600 11582665 89954523 845512089 641268055 829604196 453960737 332587069 34730868 615599841 588354574 990687937 190489512 217051259 503824151 451918064 583643603 753838910 49361622 134008820 837031996 825532158 577837912 955884209 500280310 322627662 466759308 822158002 139578138 89763198 955713070 295910762 66615628 185354062 262423679 305327889 84679388 514736139 588926514 540555418 482240523 921860891 86095304 581298308 34841876 653071914 911613204 536418945 980384426 217730778 310004912 366951510 796059528 69225889 28217862 722697647 962193246 552479175 7045813 240791206 79559056 690399288 256133403 712993250 192195175 72139765 464418555 938084958 322172930 319492276 13035290 194175849 857036827 509421452 823158894 602031659 81078676 963356175 733721964 114039978 818796033 748963605 261245123 48855564 332855358 540928952 506799614 339728849 264170753 900605213 908488203 852921416 368113317 793347552 647190761 881743289 924983393 447668777 442348170 120994092 789671555 436464378 386066254 26108496 350031782 126006407 994009866 767315649 972822637 152683360 848445794 109568959 390841389 274985712 365262993 665800430 530229957 987259089 856814925 253792563 781757039 830559032 362783287 419148231 164242 155681741 126349957 338223964 84962613 74435166 983600887 346881932 44753064 52631757 538593603 259213219 226981603 413097216 131018578 413361562 533928264 898801263 499700702 681311196 342790090 657760212 97964624 951827698 852917676 53308524 999129175 685421815 428121539 521827766 329010574 653634445 971553594 11275336 726973577 457280629 741199005 468506892 36384429 560046980 175474784 602795693 493664979 967286821 88872963 212934109 503340638 529295201 116268305 16369534 672413401 978649530 129014868 863647465 338465817 784501026 988593795 82579090 164006638 451736319 25176005 596047529 631607520 776429028 554159324 594978283 444956880 775700059 387693613 36956170 605452453 129814812 225469658 729223805 332099949 35384262 266472530 604320291 23898065 769120317 685609806 594182261 799315302 522263813 218176867 222959164 605769297 191457471 531822507 601538353 369187145 365035198 280318337 8788091 400532567 541861755 704699614 278447455 123932609 743221768 163320610 31895285 495111043 491518470 823438007 610832074 683523058 132694374 32065603 812866548 433090610 305027984 32354006 989743714 837228266 306832926 147242349 374162545 324676619 518696676 614189086 640545302 463505218 114456039 321611873 288148632 95305480 419835068 290346686 134900485 231451619 168970790 749563209 742828363 18974121 271030025 855193007 115467782 93815504 348268480 787256437 106707000 743658196 62838790 782582711 710226777 229061340 136741006 878177987 799925021 231431354 453793625 547352314 586946353 5709235 935015670 377792586 691959254 554394255 162422878 381069727 13497147 31495145 76093912 589051311 207405640 783152580 490447284 96652223 214506 281106394 619569564 273283451 162027915 58325681 804344820 358399545 361010084 871662244 36466049 24576239 593361409 599741793 426747560 641450568 966128304 862281701 353946817 174132712 849617144 704158811 73065154 869496792 227068146 482295438 344301543 986804180 631080847 127324234 748886584 890467537 77003364 358111365 132438645 690847299 351597901 395879814 48890615 16454211 975537657 709220216 245558370 675558165 356994691 958045733 875444925 282727633 854685799 58780020 608448336 226606374 493218386 968200382 757529976 509413675 466964649 295008064 60362309 291025743 850164652 120100802 616776385 905777673 440246268 215927808 481350415 697304689 39036669 86098286 582447385 925351387 36181400 77986924 385352700 977303439 982273600 623119102 341515797 845999400 468506724 848741994 427023000 510687906 70789616 185755110 548940200 368701870 37190873 628047546 870994388 146886107 523976641 285523327 676614400 461822900 247860208 760137319 661077337 489944900 607788892 103321940 425215084 687919897 408898928 865182343 769233885 743064919 862922717 385370664 60977102 477845993 402436331 250563312 29996842 388579342 241026651 559825576 366140597 524362560 993319989 535206200 762823241 415223273 770302372 42078335 731218743 759406603 862653932 964563466 888643836 949598774 908533411 982116034 50657723 859348717 131655400 394623184 210618513 594956554 721520052 342648279 842632812 763925238 500612317 919682320 892659444 641378019 290890122 274139691 278172562 358099596 667605809 928540368 883351634 406246020 899615968 816316792 33244124 60157299 903459183 207187289 85340418 417639345 712749024 60941342 734026086 691026721 687322021 674155791 276915335 630724157 260608755 947798054 801450015 732303667 663853539 338044404 799674202 878906003 869664592 639123191 619509590 42764118 58474672 726966991 115810734 520030874 724824912 331569447 973878216 778735705 956667871 194500867 713152398 180210007 747987963 805242255 959782438 678739078 497639885 522570672 353968494 297909239 585058201 450104299 884976312 29085190 553328335 30102523 542768200 218803634 189759145 772187789 682559171 384786933 129864402 790064759 355194191 205739039 844823345 748664139 579295984 17655339 564529891 636969635 385708911 611385402 730367439 643207904 487024944 164581351 724943622 744296818 596596435 170129635 305879668 29272978 628306992 705964085 860296149 100633752 821454522 347911729 729126064 151209706 121772384 21759576 906617025 400335979 464725114 366331720 150400577 287686367 695908373 513514685 190196068 395978402 467838635 287826454 193004049 784598661 762395905 534536709 948706146 313197573 109183107 736792936 387401864 786364629 231465354 669037147 193568206 461692059 76177662 953653252 158546943 66101494 777682522 64265369 309352764 738769010 840321626 317445812 456351569 538271856 328013372 682156006 710473965 227810079 15620932 273875836 848156839 555924684 40671181 857716300 231047238 670244695 873303165 28655971 270667542 778440790 16900081 456865133 113516800 961664130 518696268 285469318 111974911 505727759 885257542 648971723 135039017 639283211 951211296 868362881 130911147 42434174 894834471 973204885 770951106 47329647 544501625 817926105 574666698 404314027 765863261 197413336 979102586 67169904 567693658 661268438 998029294 64565962 78494971 427862045 461731113 255003646 193539373 279948641 677167196 945699414 603979768 31856851 588600410 734500126 904230384 122633368 577951858 509146368 571583530 989868295 169455406 550396463 47299233 609281236 438243793 896321818 549120036 88404615 994603932 588012163 883445535 711640763 666861684 586174587 551383356 425762403 673920619 818815981 61011405 735923613 42852406 343326671 384699354 738484586 956831773 675407662 402346451 718280044 474379509 969123599 722373913 148997639 503394266 367494424 596596700 10912693 286885653 268795179 332299716 41436229 575779983 89011040 425963797 97596180 956434463 475310701 309622283 154282117 803104016 273579521 622346995 939629960 249395879 252017423 110023248 670225653 236162493 328346116 727527964 317180602 91897142 665760242 865129596 123683943 3018085 942456910 101309497 873679780 603139379 291153793 493894463 262907375 426653322 213570779 442432577 623922495 781139858 507470225 9626570 459311709 433850029 38492419 273407655 419322909 208154426 821837006 457747503 872959027 376469185 826413512 80007689 924888155 703042621 855317322 841913719 965515572 734106653 404392058 250210820 323249872 899733721 364018452 312222645 743379606 305242684 592601526 350655971 762416729 849462559 511306856 30593220 718041382 967617410 615399173 617947547 124135828 282198713 447672219 735681605 352456391 334692921 208987735 269029196 291520175 22707481 78228293 405735498 27962868 132437733 639448710 530433187 547975598 678717937 724195227 670244875 239559694 305705517 916659196 111500082 849573973 215343403 731252248 818317437 203300230 932923067 173314147 475256380 652670902 181306566 951663908 83072897 498381566 277615725 26995406 402899160 544368802 61403517 918171465 120795167 272415167 43359042 999422355 484417648 290391598 100606632 280246701 887075121 358504169 473366585 353266367 949633312 504805466 722599598 835829753 954694264 905209982 632043316 149844996 326994636 309093991 752099670 608808332 550979071 152629832 559131483 781615737 965719018 648180496 481720170 918599988 153576275 421320475 332693475 23770512 783405356 735362999 592154267 580980865 140536298 9192421 317425184 168465119 566654610 30239862 472998813 117182804 92222270 3916164 771477941 777370607 433155950 512492897 556214032 862180789 48804355 846205240 942312956 953190853 103766181 740510269 273340121 319660503 8727512 671333788 279519352 869700401 76022406 510235511 745330416 89310838 891231797 726400423 282474361 866280206 147840942 621135538 915523166 379486210 526891813 543739111 633409150 640098423 184989242 714837324 459157488 293409461 185593514 202578212 656395867 825700287 860242604 47525974 83575167 864946765 493608065 415930807 95070135 162492709 789768577 561004300 369559347 824991840 311070062 75332393 925257461 731942861 743441306 281895096 898967211 490098842 616145983 360531514 909838122 599221350 884675071 424514484 840914065 653519523 20107078 292265795 697426645 573156468 150888607 773188596 308866234 958336854 223558795 466602395 127296278 330182516 741649724 946293021 194157275 853574336 673437763 717498898 792816467 489296920 713746718 725265038 966563903 841224076 232932781 616780813 841931073 560953057 900406466 716802707 621746237 654707848 622910980 584817039 195797240 45640540 944186229 736152096 422884405 849041181 67758639 141996363 794267124 665334723 631670554 670883616 247628060 570983587 822018805 190009122 131548845 130855545 385546950 932255407 244288101 770900073 777156114 444667810 293128152 879969511 238220920 225821645 37823690 45726693 903958273 533199536 122635634 202946963 451975857 211382249 337041757 809605491 986460197 463396592 298141651 676646436 700209073 974378340 950292177 102806877 765124878 335438952 553164718 966505821 958968779 265574041 803454755 798238711 966119791 256219758 590019557 336134567 111879390 790489680 200814392 587496640 57098295 161066159 751046580 837060098 796909120 371207196 727557358 825287146 720897883 751416702 265602393 337201165 161120568 299841982 414004337 936632583 364691851 325825357 483896550 967282022 336013491 756665837 910693513 117458855 486505088 141816652 101942611 288263953 219635827 283924615 603972313 48428546 482528698 808144099 827580621 910468179 381332154 7005845 595581843 80869379 552612614 785028533 497866142 872451360 339770290 944499630 277256274 913235538 298363306 881370042 150896660 719014994 655027563 452625353 709924996 831515047 713678873 906888865 989416053 374695521 520310835 692102605 768741223 61489281 606752443 509922822 122215847 202325217 811346835 205913619 88772419 175724277 527173009 707651375 309750371 104060882 132657384 919779325 245444108 369228162 915625829 982485135 28480436 934359915 972150292 37134177 195188127 271155630 201957850 221744980 58782875 968809574 222206413 899334616 761550162 117323498 622447485 901350893 216363971 671581299 179921427 734482729 581536213 248250069 445636597 82546893 210439712 828237090 75618879 112431117 716018458 511300305 496682705 318830022 7648089 829920325 142535516 694556056 641247944 439684495 722377450 457203705 441257755 199134670 470870345 944372572 424200807 23103517 262930497 223817860 754315405 308468941 960894070 621419844 439426478 870253345 538169730 421147472 685075169 253139655 947182194 649987140 623146870 617440633 131876732 68047984 627498746 81155511 490643393 843542619 443297268 525394815 864304655 829769578 183429206 146147114 362024075 203560494 300120365 196291500 963893637 197302867 534208041 513206753 775396287 891694275 231956520 875601539 380295097 390229852 304876682 741246417 183051781 508067971 851011933 423352182 659014284 722752155 936161722 577706812 480836945 876789684 317686879 757219829 795878705 629469749 334505209 9063264 938322137 714212675 914900611 82535515 840797548 329607533 748692636 217987427 231721018 434281064 467169893 528129494 306940851 386403923 586135013 519800247 302636420 357769424 875224139 999094793 248137415 596809000 80907165 223975769 68341790 345914812 263412330 981427880 499013496 700180029 420383933 376755909 523205083 552163958 143352066 278100132 583896266 716269350 422627136 934365243 312783955 715762994 339594573 83394099 863038970 57919959 558440678 70554050 2422552 760793402 835066556 642777997 943774785 170812588 516834018 237508452 690961078 284699194 639038116 708528233 153334604 128136741 378115588 553868226 547154223 639604646 240137178 463616003 608628898 110576797 3219384 610317146 77265777 60488348 616123515 934269832 113506880 819709960 308253988 974010926 306363046 794392787 781683241 507982420 256654690 706731261 391815780 652407821 222217995 53799221 401828270 104218861 295389382 430866578 93163295 291086445 188322209 214769980 270853918 826446251 421169119 43724141 897581873 547413331 993447248 5075603 31263474 944872228 419797352 881405 658946147 555791327 252791830 438668229 445738394 920631064 848373486 395269745 859498105 411460934 50372153 395214900 291608064 62452452 421902010 906773045 689791862 885066703 866702562 682279552 798399081 487132240 891489252 596178406 745487090 361516839 562937987 953699980 516527745 803410929 996881353 220535897 954480937 486892423 281314267 550654149 722151601 514169575 988909914 332409184 13741060 270489481 901872939 799693154 495151927 158433169 245625320 485902900 201064920 419935758 947292689 633340421 700650092 179294890 295555642 258414835 612568385 915992119 585398786 170992502 473941911 586675363 710771989 447756138 867742065 809793102 816065938 803871961 664220244 344616823 763903417 873661108 173465285 783673877 551040456 959145749 235262089 775359002 192304836 102313791 457409435 902765184 473600466 97304740 683608672 235265591 776536005 294232902 773197833 885976909 353318093 249463454 62746676 9474257 619310306 730887384 725596281 988150295 721800024 108226373 692048104 332166754 910534717 914456800 818281781 77119193 869785190 851285482 825028823 941453613 713642285 174527498 39471198 662208721 486798916 247443130 823166944 44334675 736934709 684106299 77268754 664391880 261289583 287931570 760866068 32724995 902391198 398555951 767734203 281571119 703248940 432445403 200006921 476009109 495810430 96616725 516568557 562287675 649447932 757983346 319228093 768265952 589898504 280904975 976840616 182503208 824406396 119984769 843160947 400446855 733883999 117306596 826795235 875956195 478601459 857947508 151032524 763451067 969304222 713446396 19408329 578954220 432979455 808508103 399904716 32441982 312554416 547502927 254156326 544008785 563765717 578316905 990367004 120542391 132914999 488019610 171848382 499292469 992574488 188870980 896421360 191777987 226998234 566156102 29326873 360745002 763062641 205780589 108010207 789540240 188997575 597733076 852483300 640693304 691604316 285499471 675189367 838461288 78875425 902801757 947795268 324534311 956660980 206113108 16231985 354759763 489999194 500339269 587901121 803537260 465308028 349350962 621703710 201075374 893821019 132061523 275523997 222265491 790339203 368658795 47164683 458156954 189679479 383991218 671276516 781042320 852487016 374000844 48708965 703040171 252033036 113652086 925879661 257454866 172512896 724189473 244308428 750508409 994833327 271542915 742987063 854255933 438083632 851043181 713668856 651091541 340441941 486846930 317784263 332234306 658284302 796071309 994170945 231805409 826753640 241853809 594481272 532849869 273294437 656329875 780821161 402792422 763776142 26758677 449324643 341958745 302705223 406934506 640579472 950779412 48400631 875396509 878596485 941425183 110129021 86122094 253339475 474964763 631638066 853996550 471945895 714503043 307154676 680686364 123534951 187849782 626975768 866161197 253429876 538485236 328108099 348264130 66384755 654264410 550475982 669986762 964121515 736009263 684814535 837873122 583997574 871731528 33842115 740621461 103968066 484273417 597208612 759978530 524291885 917901767 107031281 33242897 717153518 433168290 821438298 680824797 870581523 732921990 826390909 771411345 646616334 566357575 252135305 493468149 285036085 747269744 996283662 680506274 601946726 833184180 310938710 839014939 42608036 230921898 843687172 413274603 292478370 213408777 710449169 945090050 991960415 910498100 820027754 122814411 13979765 799841179 885508560 445283901 829802807 143359916 564224777 166879575 354165195 962735806 339863774 958599450 344008315 86299027 73253795 347704259 309702424 990077352 413418807 848370578 802558054 815482825 942024958 605935904 776080014 866608184 49467062 927550461 121825736 542883492 59742385 459077035 803361347 737834224 244930577 875902915 847319453 756869750 64977809 591181760 425943905 141424615 475100736 249163224 131615824 969117018 637418814 485759842 347937999 401120941 359736900 125469491 705768129 297480160 898387238 900384535 341944582 405691092 315649811 70142366 29523611 268390209 361126446 584816391 44872643 998620963 551519607 831832224 601415742 647978871 702090793 200066740 668684872 753795092 618109552 916960776 589844676 283015744 279156853 557277743 453883050 920396793 948459977 127962691 748944119 177880019 102344236 265087854 175552385 560956674 493252530 478609422 444013407 790416169 442863346 509540556 618368949 10402732 385147563 126900918 336924048 843126214 154501401 239939695 141030865 620132739 55796374 255785880 633640081 324789632 918639606 706286098 285784813 596921587 337983452 159932846 741070833 45445140 704233736 368431002 565943731 808983528 855530633 850957228 479276352 956835711 279439950 223504514 98425604 504812503 8782082 787990630 14695440 493777212 133618571 721965159 524395775 415485007 678667773 70181325 536522567 166956957 438504096 45820565 978060368 74918827 534958753 995684040 39743115 825530436 76413398 439307052 377752586 818421397 143434962 531518851 79038967 675996623 676932588 524966520 523029405 244982658 166510194 652579817 831668224 995848001 669746652 808868789 987547695 626435862 740891484 957874580 344604842 588137493 639982814 928560385 938545515 885802711 722625810 484201363 293662157 542285803 106901315 643770531 534251749 899756710 590457251 301397323 245627337 631500890 593276917 199986661 717572053 410645336 485990595 707449501 287096190 548581072 642250057 747253004 474494335 142618090 833290488 821610769 93675035 636426225 152697044 461258563 426556051 121305722 13047368 819508018 360747192 8024950 381545707 885048501 418725224 36650153 99199037 265631104 944774950 559820659 599025566 488145898 724619426 500273220 788343952 432528240 327336911 36476056 907644454 488377636 220454656 928307810 661178478 556130192 431949765 999507818 572333311 282529556 729135926 4138778 783779820 479692774 90694936 144222134 156808353 554130818 672506037 938189416 766153140 498937118 12862326 391579809 655104684 363154956 551944422 820929868 852532575 188986762 136121196 590028338 547739889 139525009 377447476 959944712 14401113 496156244 80918618 914832183 157243388 196494567 548799505 562031036 123449733 690002090 160306831 13584390 919469684 231955173 315328875 100336446 772151670 980117233 394597434 304464822 722594776 42457902 549101646 327829337 668833436 391829929 296562790 343867609 771663284 37171342 529079483 593744546 560841523 428465922 124330891 111818816 132866092 261485955 769262213 806649813 857287511 644406644 941585733 503410306 604146140 979223825 423732238 839524522 24902243 899742993 115491688 997480564 495739383 704659722 386907959 485345927 705446009 820883194 952421947 865512469 619559227 808673092 210965510 445591838 600936261 24580518 798778586 636564960 174376364 455880907 672097363 32786563 79529280 243029834 547375648 147797294 527743458 287527132 249721184 515812207 674212908 322187404 903449499 102136824 711640557 376801151 219252092 565592755 5659695 921983585 763528415 879426127 678220172 680341714 281724004 17817096 751966169 745363303 63841222 259328233 10704406 654844097 520898525 96932477 286774946 417126240 631876011 308032179 224110132 563020510 64087368 725632525 797938672 479852707 187265252 416295842 596803775 516462448 596824778 837328528 385465817 196329487 938789460 855316169 517887522 497924530 11260850 182625581 857643181 568224467 188402027 308438217 884020763 455199157 26611226 795581885 651516170 690575048 737279126 113924113 996709020 217642765 942110546 159701263 96683115 311381881 433931612 857508530 458953754 383595674 153487243 305238080 415582621 51919717 519424416 722700385 416642178 111479603 620487151 867168290 163698178 606279035 954049833 345626836 902307845 443658899 217065482 44190803 187158330 221218853 425046401 115582465 560689420 245510705 913407040 829036624 649212770 977651628 901805977 794034628 749448345 743302378 522070999 656704634 1206001 613236798 343672346 608510921 325111442 507708601 8741345 898069 123432032 386863803 440599942 763248931 74346487 653931873 455211630 532115479 195091554 970436911 447477874 280436792 460783914 584799276 856645259 655915661 777467293 312277866 286527031 593418344 219460524 207017070 580330611 247408722 75161936 421457633 786594623 940245947 810048375 355098202 53054949 226658179 790666368 232183295 638409350 542990490 577301723 131643995 278783246 44612544 920868587 49600289 493153550 436101281 806319717 85096965 591571517 917223862 754785958 227123050 58405766 945833851 963770223 734060838 448368997 341261553 845886071 61137269 391834539 256299783 895243096 856432225 630739509 247735663 265975380 446921971 589379590 394599193 71825522 180945523 458971377 517897405 983421752 168191279 616458670 339986245 370979053 792360645 438746516 303882840 183968439 345185617 983010071 685168720 459355945 556336209 791467062 369255889 479592248 11030393 111835380 990751510 905548906 808948524 970263144 954824552 644876498 258338436 4906715 649347801 907629668 711724342 404941213 263139657 681021117 849211707 300568537 305027493 833247676 73727705 781439853 44939250 365135237 495147771 106506734 447909675 424756254 607515091 467013901 358087697 909252523 239002293 181536040 156156172 620030046 344914999 683628473 645567113 438451060 595674342 863524711 804981309 548615641 273615837 131814320 358523742 122189306 188856192 535202073 200455029 675960067 631162205 289795222 89370101 41668487 482823412 243556629 418770721 695715929 529422086 867597440 948129321 446669461 816780588 790387716 778494987 245130642 178875417 131195812 654449150 519864085 173537308 101421371 481516922 423046006 825537921 308095277 557626471 171951007 49173050 978333268 755093298 774707051 244027277 790011184 315791822 765185817 947827849 577486775 314336475 551620751 598006116 678550991 842349121 120269378 678197256 912733170 25950036 678384461 28687288 663161071 603200168 303563278 905961263 433507260 284713969 683198318 921471264 179788626 600522858 812336666 844895219 660597540 840156383 520939585 728001889 574672043 972141453 623602360 912643052 566981803 384300990 783982584 867425359 385964903 303540832 962988184 825503727 463902543 817795403 756305460 481984569 830293435 442169336 73726209 864979896 549001996 650144900 530292937 880908853 26333155 18173604 102947647 330738062 550954272 812628631 490693876 828113506 841020826 488822796 412878715 977249190 580130024 12765397 382480692 194224394 792614428 913457958 363086724 455216786 207310505 921480258 762606924 591636717 115317413 795939868 247332525 362844710 156981230 609207582 104764787 17267708 67241111 577430777 948454125 789573765 433780601 750916376 953972201 483587642 992411473 430312001 904962135 136857958 793021904 413946752 644730450 244121525 596978645 748591405 672183034 497313239 245753574 303161216 63776079 960984312 173953145 976886147 277431627 390147273 760421051 514111894 176986954 565595272 469611406 608760765 554190709 178889227 366540562 166852167 891625777 985756595 200584786 828991789 629989472 757254461 130961462 322181633 463088250 869404719 885595306 19932738 80210582 223927326 12645500 842632964 252646427 108298985 671393698 112596581 674650224 884263442 731672655 926238288 381438713 778365069 183952527 956981219 55937859 938225951 862599354 173007489 583350028 598266737 833951986 270477624 330289619 245836086 634614910 318355518 278031457 826291756 250329878 71152828 417333442 887845078 180247948 721743588 409001330 679143914 879909113 169772801 968898059 577820277 808738556 841718581 165691296 768784012 128757370 680895214 336333597 293950469 896349067 914007831 64110511 132067263 418303762 755264309 359895721 802661477 353654411 195535356 567187551 444138289 859303260 679817163 355291194 627657641 334766752 398495333 492611695 592127709 607319915 301389740 445583451 991528595 701282003 825114178 197810151 368216713 834372170 114430381 618101732 684345070 193729244 788063935 177743279 610448994 863424789 210033017 752544983 767474109 562404243 986293610 933066609 94050842 371620179 187614622 403226709 65522444 621205625 653541497 814647361 238201459 517528652 180706279 921264532 613355463 556888255 908340518 19715220 864244852 175991591 336419789 836431437 966475846 88087342 810473576 64461375 634608844 21018925 501886538 260650474 495355538 398792023 882872307 596944917 931457321 520727965 948407017 92415549 101260264 920184759 761591279 28069450 738677792 177792103 543655552 468275758 366397158 841184819 601961972 325184210 182230481 292284329 387502571 625367461 714284570 447451290 361726888 1169512 100767007 734834428 648047137 36078468 910132296 378379687 197250915 821616436 91431680 450686409 35541722 406510677 283524847 237740308 222084576 794939957 666791245 867262144 608132049 603416149 377723771 630955953 485859956 278360006 759003024 464645988 456509157 430991367 398548461 123560097 962538891 915699425 157502511 355331186 551924991 781486360 707295306 116470534 374631460 964832678 323310814 654322975 594525126 309160958 188137539 912046456 79830849 73706592 881495872 435022731 246383291 449826570 330732711 724053351 26750419 664105018 370661068 674399425 445243627 859872339 209629375 530256907 459769391 549663001 535078882 958152987 398506256 122713408 329910048 847352750 815026229 12324698 859277886 78373383 762295267 419484659 238152009 919455255 182279896 44263598 575654551 757836460 78362251 930285188 56406025 428264045 558001529 880648069 831353660 174229213 270440683 630650605 58825108 169449644 606816846 512201539 854854464 131077697 598694771 994260529 807497092 712300978 95787747 895036438 825645322 190238261 60613790 856043532 971602225 84327872 979014720 148733867 49787653 30457332 95642633 792436589 618846673 968389909 792259412 936596332 817960022 657844616 815008250 583574389 985483759 959584743 173621159 282339868 531305563 611142034 979987454 70949399 806348911 843930741 168721909 596337108 573895987 479401835 468283388 853345068 572526975 406085854 675074064 219798956 267742884 816627829 441691284 726981942 784746307 85800257 735626291 795075428 439976168 394614610 704204613 157389472 988033893 872690256 116141180 513858708 226563663 207036160 651739861 748532914 610774478 730809255 528011391 276429616 257220518 798596761 636689253 263585056 655324637 991077470 669286592 183960578 998280188 346822422 569411774 758952007 295548720 661802855 240897532 101972747 635849818 288530403 881520631 118873274 446145359 405787600 895021350 460504957 35536736 110875060 636236936 374897595 148297673 14138436 559579743 986299975 38244737 289453745 573718689 968500000 226186080 190753255 893650338 479999901 34958138 498864671 309473792 582508989 279715963 710942419 605559889 662052915 984690314 351916272 55697818 754356346 149874342 365396730 420399512 804814930 614903020 243318434 552081242 894240867 126702524 435555308 960946300 436565685 476809494 906426854 523954059 812820686 147586036 196015462 397991961 569437338 307272104 985309329 60535262 46774376 77292692 113684543 762110241 247285688 733706926 420920132 809185655 205211699 67739281 870579668 341102404 585550799 177099877 56282055 645071950 321466351 176102343 168875203 431568943 485612863 216725269 129299448 540852090 279354346 829157032 568463862 718176581 835034517 710589114 369500254 362916381 936216855 696897485 420532180 829587589 674192182 721355796 584813033 269120574 165359325 606216141 913039750 81533753 630934228 403976827 388676321 198223790 318360770 192487005 3583132 211862756 539717349 905894681 922235272 374019960 988876857 19779473 529767434 495913283 118349777 155626151 165238986 956627678 269060654 179821286 778287124 283448028 835126768 201508867 223292731 558536743 799441538 886342356 213189610 903506782 52215685 794347770 26623915 17043965 937779624 714047739 976507710 783950647 865523286 69278188 159755641 128830168 706917702 878136878 912813691 868692772 819732694 701124274 760686710 852573998 309720850 43224430 561861377 622922642 572716509 774833688 472135561 88753446 604069844 185502296 132974727 116859001 901270759 232074872 786556548 682366108 422791332 658783977 928267440 479082547 685899380 216522717 32968659 917573552 566155830 229212627 659497658 740056150 327221719 939781000 859931763 385130162 153190541 642660495 793719345 331241842 519345184 996949578 991666923 342001099 508962805 32806388 171267647 708417835 968431090 42015503 778732562 410060025 864367674 598880681 867958268 329795153 835853482 56522394 723916603 129580561 574636310 341433397 282907978 458993259 681050649 385951040 763428298 38785169 977799123 431225808 487253547 841696087 928204661 834928478 552658920 615647934 494150375 223341127 979985540 686166295 905209385 581146875 280858477 239307350 448260649 722512419 484798903 306972050 785314423 974720096 626911150 529289257 642039886 130732620 352639352 454876642 799636452 765842167 398694729 434500423 184620353 902000144 187239672 172682843 963431331 601431031 315943846 337371825 521969130 700976286 882299560 186099372 662495579 113745917 402729789 672397326 81779654 222673635 889752260 76942816 73294997 170738638 982298626 284264446 258088986 868761987 439869265 619055981 391014971 31748143 423162748 804783417 638146943 844960949 564614988 826582519 235232708 218973749 338341450 206369410 64285459 206521038 440250578 537886760 849303302 939446132 190703968 253676795 3799222 917829475 380851246 409254534 453703615 977278321 16970484 521211387 668390014 643848101 889931412 962946782 426529549 114537833 822538590 317441698 685698742 248276396 112922195 106606918 522548669 412198785 882694517 555394117 984793493 376087901 678737545 106657393 769369801 653702160 817878959 810152040 433884877 116609364 641560552 151758469 527041965 925917830 411006376 646286105 96490581 590809142 824664337 25872896 235257734 542384422 733799424 365752693 399834526 855112562 673564823 261843579 276383877 845714915 812941176 480425456 576404399 85882618 606001987 791286976 100556480 241760824 759957827 592556581 770909762 63175453 112423576 163552651 873361278 328626205 848490217 194984301 82167729 485175301 221827190 728308691 215533351 815416671 517331267 364822740 66266021 851236833 724517806 284177535 459001968 64659085 698561309 969499895 857158737 556999329 223569406 740462185 440360903 454606524 783171866 142667954 699578375 912011250 432043145 740688085 893520613 293402489 418996141 669232967 166034565 833628435 430673790 816020773 525008364 267214842 62714366 905366394 673772681 513286316 663493314 361399092 456495470 706069028 974729054 646243831 564106123 778184951 208111189 608261536 88016641 55893385 51802970 363458203 806673564 999178914 146690020 271473764 682817199 207633668 718853673 72929532 218515304 331938615 583596425 368299281 767179735 950761784 764156232 560495068 511983423 280405309 712509139 341486409 54803339 431310662 138920825 516998803 948650428 655173486 421494615 897805746 920736602 517837363 801367909 447538706 230537665 772708693 188577788 894153395 334017265 902304093 499123381 810829731 983284086 891430441 428987447 442029791 23539136 688286293 786630425 186859699 106538085 492859332 503980647 555980540 217420026 515174826 634429705 970663178 620660609 546489591 795974006 115760125 222940574 719516916 303665585 806830623 401508609 760358298 908717830 47022363 658809625 247305072 569957649 637735655 924357026 966503773 34462544 499034257 566342990 485193852 699551003 115380049 93129746 384791686 706869854 995607490 980064174 340961215 630651455 921570506 78132797 636328601 573435851 886216977 103031957 602123603 86565169 476506431 934756327 20066449 853154874 106216321 507993893 235678692 781023882 388655417 276677771 376997112 44863508 324822055 928895056 88526092 462559767 158305148 184930767 109856984 311811922 979296576 688926285 890279527 613906162 122824191 459624268 643909069 714435071 546599410 84681873 148881078 986554310 765090383 647455349 996159565 541579785 718590899 966527209 649549824 715775458 976488807 137915097 984379451 342970522 430940176 647406663 389486672 387920784 815163411 626504024 903543914 999792010 728059653 925808699 661479858 488791638 416288660 85351994 931410597 642511985 425860381 689783148 937890231 253717384 285187300 589282792 991540339 573461224 665281184 700549461 242115075 232013620 862952350 548394928 846112633 303213344 755002728 138010110 268684003 681643245 530641732 89159397 304401260 632806363 540667046 965235854 728863922 865850906 300166140 815739231 779311336 38793531 309923593 531178018 374959208 812947790 32451904 550555957 829949393 549869654 512037601 339602988 184883052 305741069 245700321 235405541 153956298 418527713 118038455 167799371 723343175 591708399 182881641 784201348 860821661 477505441 293582337 636305279 904899715 188856982 602348272 545115225 848573531 776397195 118731904 245250947 944752539 915289727 79789828 498715343 688175450 338187209 735728787 224875166 804177242 961195790 75655963 562889941 758089250 112023850 478738489 486544272 925329076 900859229 355602155 878188337 292273843 905230126 625997928 707832386 964146165 607729987 758609541 489737019 995509760 67607952 307309605 530520447 53075610 497694465 150616525 85258852 724295544 114422061 693502435 242505211 597209949 964460172 505656916 356061063 892488508 374940909 134488420 383963028 559456185 737483904 859686950 140280703 687572682 93648025 111305344 160489710 964730141 80727932 869615118 701393931 790517394 183286551 32341945 767116247 267474900 810609563 121598985 390428483 206873811 830968202 610989130 717214959 351155857 302251869 123431688 965320542 490935644 654860696 639713698 145919283 266522301 587542631 270938266 573134596 587270761 556957393 646367939 154092685 172359054 291663849 388742112 994885776 215150669 531724151 395652823 65189651 598780398 197858711 807322315 188000088 237221445 334495913 96324646 956905333 603445545 475054319 892770779 497690947 58360447 420802255 98156059 294898047 73250433 223536931 9310959 252395649 877364416 411286307 521100373 896636231 500948186 580359906 914819523 163323400 52230870 798621155 626163519 568398060 802084558 760070062 391186980 237425444 855615104 142875484 654763241 449638851 255552485 456842010 913052605 351804643 482327394 997523254 744204072 463007140 190990516 852642669 882883639 593311413 11623317 885552807 854111446 898253498 8507383 463458157 35656031 325140544 333677181 259718638 792586317 946734808 686163104 116052216 79625829 233747870 558738378 426350971 325185974 599729524 968734075 33756089 130746185 394134506 597447868 436437701 53221504 703310112 562347704 837679060 723832909 729756610 734414341 31082232 162296021 405650174 878134174 449448936 34740935 636421308 837887333 941679343 414877784 740754404 667186433 193467382 944989080 325034020 252049025 521854303 367685659 721319615 666131345 491729915 77675478 936605493 940046744 217912036 435815838 236197910 830528963 114770028 254851903 41912663 77364416 760353458 259728618 332800214 381219040 217244065 279086056 382260798 380799626 169577760 608015024 841431267 157896494 311331237 154332983 134986659 43147963 287699931 575704739 950253152 194272052 173667016 366155458 84311807 456169346 640732454 402953915 708830734 340501780 937266818 929347032 256858018 277422119 914575913 176887968 503771893 294741575 887231078 720254390 798947941 215248167 569285016 295483888 96544867 594306751 936716913 823852995 923300776 406170807 591957183 794390231 244933858 310114527 976090842 131508743 334693912 428290346 618874020 361037904 416945858 141014100 134776686 198846391 737361871 909605276 173914410 763926038 360913811 343960826 481823148 602120676 344011406 534687720 742237065 246817641 541341644 50798486 738385398 292151729 82183626 118231138 350127243 760090409 61288111 894536092 343261277 328840223 706698661 627528335 697990190 649798021 509938809 195909563 843995286 995938292 72610130 918184473 827318250 122227553 275057426 546031226 670746681 951634231 729402495 34213241 712999164 958495600 121695183 997276440 996879907 562005890 63323893 988873489 548087971 115189429 178077483 436943047 413427938 150731615 749316018 113698036 829605785 843232850 79348669 22500438 269492712 133524395 411504027 171632434 887949868 871723253 221343232 934289855 825077542 399478619 504001191 754478792 359977003 146194571 553091553 105765053 451357370 557109721 178705405 918309128 799737271 46188284 375261834 92979575 545282226 749024113 472946551 410566861 320573252 837462511 350182199 669900160 285070467 954462827 781812005 21632135 140512713 263933036 552769430 579328091 640356856 805624729 245910259 652689365 885667242 505739681 658937957 155204057 917468031 641238327 816251105 919484030 254912330 423485581 533502198 309927266 768201531 45520225 718699353 342011242 91596463 157066307 879110155 390205949 451813402 385304045 954057322 501148075 55843237 89809292 214392065 157225204 826963957 399911496 842023222 84990900 282823882 478780332 76304112 60285648 599039670 217264714 40077069 772916714 456681778 923492429 430410361 118550620 823154590 965378307 405508386 946300077 968910224 596571228 841035402 293332382 753348293 915111104 778710212 428533980 601430234 737284146 999570611 767358868 91753967 65934753 921662778 946386699 499295263 366374122 258837486 799861555 709481886 680063152 627037767 252506435 746370223 120178620 540555236 190599176 477647119 957538578 184283276 14844018 340928646 173664746 943637602 858879416 646076597 993162590 507507789 268997151 419641952 382153672 795461010 682362249 887426118 999283470 746676752 71782105 415868025 43054062 42421566 134443535 636033647 596043799 387278058 426729094 171401202 779673151 504813372 341081669 420991445 426030891 577187353 299885039 699008582 523618947 819765875 585357769 464476963 158407687 605524467 327254298 935879439 167999040 848830614 120783796 705784446 140087850 241599384 410015338 439351806 634659663 250420255 153404944 922187244 343217316 537650974 978743674 84189425 884736005 457758912 628409308 182623929 876850247 743680600 779972129 467891270 645084648 179237521 668007711 614003526 101091248 570084320 474923843 593516759 364628787 766724511 918623929 388283997 482578243 966452060 224011964 353961911 521892953 937694980 156327757 785294496 229482159 787031574 613320106 266410540 986796796 324307632 918399630 393897532 878493433 877233831 708888088 63511059 387183066 271247476 744563288 533218912 893821968 868802985 760197770 383667365 992331706 775313021 375131162 474677702 823221468 753824461 893811542 284115254 936047149 502160005 133002248 167295170 685858892 14284615 868326279 310432469 229734289 982486121 719216025 973909620 142867321 407186556 147025630 168474274 122036379 357721517 657316851 626106532 318795063 312578073 621502670 984105927 203020181 458842138 901840583 884810884 535638931 765604562 720437915 703732795 410729944 998866066 787330701 501101574 548587538 462354230 53362685 146520086 409588817 50648550 199482627 187852183 126603859 953240340 83195158 688420548 925549228 119175783 19256779 123361612 285252909 305288026 703174448 562127012 487676840 741155446 160153890 455050022 897092840 639336870 730590967 255228747 840577516 855595020 836130321 434390653 939429904 374064761 618288830 549089184 216496335 855793385 258308706 71695066 451673403 783284075 248196270 483815547 22594108 870504804 504100145 955823216 929530488 879233827 913808464 411496943 100457902 274063989 274880822 801155731 881285391 973581671 569672815 860860704 117735764 815552797 4248708 994321635 488844697 270610412 148444341 16716189 705541895 576061481 803160212 311151031 870036043 328823188 483759671 827771449 870173825 74719469 308364963 827769514 175286914 852708903 725469063 859658232 279235801 663278123 911792762 341610356 26083615 39399615 851298104 918507830 822876248 646523771 904013462 135587247 446331378 453768004 147916150 844964078 218174048 165061425 934105752 92441401 98441399 167391775 775241615 69734940 673821452 211844994 952641004 3103280 75297976 600863964 571505114 751455781 536438048 423143622 81004603 779948932 208987169 785853988 483124060 503789366 821900954 676560095 399512909 631181032 655146453 526754263 695128667 234400128 776410250 482656303 476431486 318361058 671478163 559802110 731057864 284037640 546531622 164045471 931112401 473146189 528882178 835433624 371904600 416968229 463910342 117976218 628093951 700597437 436383510 184374690 65267637 219592544 254275550 342769474 154427080 240609424 660477243 989826964 87460160 670790319 94878494 516566040 156592477 739221130 155416309 549289857 105690782 935838484 381851741 268719860 686306381 610493777 412072225 642314435 258528935 666527912 129692389 272969811 397243 609188295 601888623 22179088 956699768 934720159 870394285 304205783 775495745 115499528 988320183 87387266 279953765 397907977 245216465 33142931 138076855 939804323 417810503 655493865 187057443 41262269 921498285 281064798 591324358 336783085 512230332 394448212 490602572 34422054 969915895 322105851 357179974 464684099 345519822 708536785 132115651 212760355 261242785 148773992 474896826 123660930 58584336 631261042 890195040 396567258 146332371 426057539 819250913 269760171 636182186 109708330 842509346 480281150 806504788 256777163 639470672 682824708 819525574 656552523 939684985 744696602 152389518 750737802 789493602 490172414 315638908 806728959 372032060 152240551 644388555 708447329 440086645 587939219 910860049 54642998 808635394 956761307 987514630 749647620 780700006 314382646 14169539 157938473 912778667 277556376 736862295 834436794 839798824 474074000 837771247 19896458 694788800 10284787 418253370 492279745 515612924 150873421 845196006 993922456 628939557 588864200 496783488 744594244 869434149 16746611 715239390 164548542 491475532 234539757 162929949 60409951 486979156 634243844 997078715 471561970 734267210 754855547 318509891 265224260 343181956 564699457 663976144 573331873 375121853 667857952 393850641 749566721 200859923 470414549 70873048 484353503 383995364 750782022 82222039 588977458 454852417 899901289 408200137 496167671 541205376 770091741 663387503 229495383 539810246 493915600 809906078 740883691 233926819 799507134 191500813 633325405 885898163 489056813 573585272 285873919 879455795 839036064 191369424 546934207 651450633 13460932 787217361 86821885 253013713 996407282 558685148 296542130 85337036 897932626 730530338 265929844 154488646 976089316 612617382 61003671 865273746 6297969 921999551 394765574 542475353 866106879 294983506 15467579 554364582 800428211 102592950 677901894 80061946 66564403 96505365 314110607 858272042 838823461 99277024 252209156 358626232 293925745 262256957 686812874 260417527 96138779 28152797 229919256 801773964 252661113 354118334 215877473 511091947 171621465 516217393 68352296 196105238 458108032 458277150 247467872 427913020 479988356 816903668 555322446 483903490 81819948 362654318 318996344 997763017 463842384 881189228 139588089 983390496 136046237 561259350 471875731 6988275 313446721 19624850 407483706 981791762 297443629 737716452 435298873 841226075 124938085 545250097 702027972 732518745 17955666 491946835 902793531 62363236 672275021 403084201 689548211 456763140 593639160 626543134 405962243 734981944 365170762 70508168 868278458 154434026 511416795 385289765 129656164 284320778 980168668 105189984 329492213 809182628 96921203 806521525 532138137 967941547 628302392 685255772 907576481 678715858 311188895 284429295 258951375 818687321 185185722 409513321 415237213 733707921 18159164 759822228 139611636 409543617 287718996 588539333 745413419 750709829 336786830 351344476 517581135 245601333 855783009 945130217 790314830 108961928 952383691 827220564 518122678 387140537 52202874 736208813 266427089 41983183 214870011 118720502 189663611 372756029 805802142 673241378 858834047 255135861 63235866 567314797 520995844 657336004 984384451 77531885 347806286 355449028 938689925 978976743 77686803 772624404 905883914 174074544 833626812 308734589 999501204 658524275 672216237 542342130 758149101 619222939 209996564 296145037 434019912 406570365 57619303 746989604 320865910 15238750 982182121 584379258 514629872 955953468 744287213 706465188 830785429 421753281 235279355 610219767 579926079 501770670 465120744 818124138 798635854 954310518 318470467 758214289 886381998 857496506 462492913 423552583 631805757 15685717 431710055 761915602 933372265 1514852 899904116 936156891 764046981 525428407 133857043 183893202 93267506 291205814 739441730 349337112 248412204 75897824 672909800 525178797 29811646 674031970 729542695 254023140 338400904 282730844 1334650 674265579 92432440 51842835 364774913 466527890 262389169 324772872 312652616 597742820 119040164 962085867 230472824 873059247 527060748 497743740 28077324 164128776 825700402 551187811 522688338 120618265 980691200 771300159 995325238 622386306 402240988 660706660 122436539 660819084 88046558 865068777 259519102 960242861 422818110 832945946 714559546 18314713 166023485 935403952 155027452 410527923 225228534 200774367 556337619 466434591 557217769 948106506 983959245 529937118 252297205 268931574 450245334 588601682 491348234 991705110 161168046 155458107 681497849 309617302 350538102 624197637 122105711 152311304 871625854 23742116 657895452 298447860 604129934 64694344 709759239 220120150 181010585 303490798 539044017 951919774 569587290 485777541 932186910 63754541 73452004 820053022 402898165 912852410 458500543 29703796 831998177 357278911 791372789 462304826 307104605 145854984 987090635 752281620 733040592 276526790 76789091 684359725 513551762 789672196 438939604 252729985 357150070 969914350 681447114 538721585 369318459 834647325 625435066 867440922 597219267 585536023 302999327 31420343 171596891 105202551 753619441 432124096 401117327 309650165 317182581 472390955 568536986 170778478 92352032 896876092 535693925 889674028 785691713 163978839 587829021 198098499 782087172 340025034 242645399 918767998 649408694 854988494 100472506 792938905 281467150 138603514 433491040 391110591 991144942 448141056 33271413 132094176 328665314 283350219 383753136 895579079 815298506 866932459 961501024 377640844 555326397 804576286 666986170 44334942 48168538 266786919 217394345 465295903 4304777 210590897 176437053 943069351 493173184 927907596 968169166 994825524 238485573 792541808 656062480 285212792 244246785 269454089 637397595 782391937 554485020 110385544 868990081 251295211 999822352 804194828 447980549 509182297 823117643 201372304 715651946 741905006 495268332 949077192 776283311 237097359 983682831 482971346 107836067 856183374 171629151 689488666 938165380 958473210 31764538 800323733 973334457 216147936 303862962 653517117 568046786 374901057 142419191 671980778 435877934 444259420 696097064 180381570 773719378 666056546 217888419 607281231 504133754 643222506 668876535 778724002 734811759 178832043 363061459 459667828 438885706 612933370 544145893 628279547 292416153 437576380 173545164 826206275 530523768 149304866 419929459 942251459 263237008 309793205 703745542 761669453 504753601 821173288 934541368 869774596 468296368 919019333 682551122 626426124 237489506 180801264 483173728 735670777 182755843 188655419 348640914 713268669 453963939 620265374 618411378 184978976 90059915 997566250 401651674 326509352 424177715 98100485 707807457 642651785 886269203 30010096 724421365 573149915 197407770 536892043 433480995 163490412 587871500 159882352 907771012 672028688 733413588 957467137 63488279 640670298 376524321 450065304 965325675 900991987 818779063 297986193 261925948 448447568 673900836 70192022 883621704 790452370 414964799 33437434 668241849 170179420 196351748 339735887 892250967 627001035 834015053 106180410 540514428 595449584 218238796 700254323 881273809 715742636 213150172 187498957 109357093 975731375 923570881 53408786 574897056 323439808 394408152 312007542 267798470 974201111 860645422 870795481 739940428 474256224 83433392 955621846 745827395 201902356 65787909 939479001 491040546 341856772 159083804 613841387 980085550 599056522 182332196 928939661 114301922 935432281 311060264 619078675 198256057 170226837 977111380 605910151 578472716 242455140 296039577 3278068 189838982 301696814 15291249 635160512 718404438 526677731 463799580 391613929 199054973 204322718 811028298 232475957 63287464 463873306 705333972 302304012 170242922 464151647 949065177 670297280 637905291 963165733 83119820 486850513 822725855 328788509 797470360 393214709 569611023 29528398 37742093 909364094 307472101 221059038 430926279 659349680 84335540 825376316 908938776 666248200 207528193 996557218 876908381 103040505 828936266 895242390 146120355 456868049 529261608 682436158 451487189 165283854 162059582 805053712 806746989 54135097 814051045 350263005 38088621 510047827 502324137 972771346 961163306 524431148 459375804 319908766 358470546 541899015 512865342 496388765 697746821 690058922 171504182 404672451 852765512 327278777 898465161 169070231 535546909 818139902 905475721 332378911 429966794 54650416 835074489 846665872 623063290 580644069 501328247 235669806 317007110 202257769 813070687 967676037 964995497 570628300 637633955 546242481 410232435 157087795 444273305 406713452 624010511 673818864 233541056 398716405 89403882 228448283 367385859 134493162 169592993 931643592 146495476 323147905 719210977 962196375 918594578 767562615 335561013 508722569 51248126 319796854 873857096 95453249 625377699 478071760 727533533 306267808 841352695 629250109 263329195 502840118 333612317 77490154 804423948 386189491 935147545 122020943 479878488 811638429 12510311 528645920 214756783 454478268 351331675 150457105 523998623 521149029 813188770 869059827 577752833 241133977 433902120 229730317 83881893 743210420 175811686 943095586 109128156 758523073 169428683 370271034 694272946 515266064 719337239 144345433 686914481 102180429 795866195 78386583 114917750 105891602 591208296 987754172 260756088 641356528 954310200 225820059 902619248 533345861 666077914 30184873 162668218 664140403 31282693 538158006 918780834 50632064 743461761 497545758 292013708 517307467 797239812 976394298 62128628 64464084 258726421 351592670 965342746 812970627 129334092 943948434 813289388 339411667 724945196 23355730 33955307 606124191 351549938 867763102 904329225 341740379 773291528 249204168 443694149 654880708 281684662 201520281 861330198 431245628 783427236 264630091 78439605 382450043 280487760 895489068 100293608 989725116 322417025 584503542 566125438 934406297 816693597 56449542 16150872 744991372 964312476 325595259 161253352 2657702 911887841 429674316 34218336 15958598 58420027 235949851 897156288 153732172 441895910 353940037 233897099 723585355 584107084 945316005 480444512 720996767 830281230 309238816 877157069 981934030 92981391 263789966 36802011 527296152 771876788 873947510 881325439 144155775 889912261 328937689 203404117 772902571 217797154 884286584 387268282 644136910 111136172 551438724 729110233 389716234 194124850 274865214 609372985 486269437 274183602 670275583 36257961 816630253 929270789 688363173 162725552 880364901 480649437 321593571 511904 650566350 459850611 721102280 847066394 504944519 239858255 727396117 306338044 737444568 807419177 768001163 731730318 295187346 497049085 491572182 467550181 724740571 581733538 1354778 311417662 908664743 12354766 8141289 839665046 475720100 482778599 913662182 816728717 365945969 769139145 278684800 818191134 21245264 556149973 297507655 153870091 357606244 203475315 34722384 131297063 954253057 681594628 756647554 960088859 47648431 307883474 671521503 771309039 290126805 84411510 212235801 893665948 381123356 741705631 772192335 949169460 212860055 24163788 116016415 621011363 925915414 487922968 370630900 657328622 117173322 804982053 94243606 869220877 186847318 562355797 941519171 833615031 580143870 197175414 101686736 270911475 72204449 616101399 818372230 96043040 415783454 370068305 97893977 94605040 847627154 919751857 565540776 871621054 530649676 678414629 652749855 989442486 996549324 788918351 773254876 668583663 50316637 356344251 589962724 47685504 141829746 112323777 577664419 979081801 199282286 361231171 685538579 710130756 593368404 214045788 195319431 271634063 430081977 819878563 613485374 753573920 494307631 863980604 900693652 377397386 551059801 292819431 105301545 923946581 933441438 561009015 375561793 951307478 464218334 831014290 833366361 757330464 613421743 777195692 324821412 549503126 908289106 381907647 428382114 431547828 244254101 575464774 104718432 611375113 101378069 128748407 629093660 249302966 514349244 467611152 777320295 878727145 301656229 81931418 373461894 599013580 475508003 138415033 708715221 549415462 481019374 517478316 413395308 731034698 760375551 644406229 670232435 102001463 553135928 917421308 414421620 343537308 161570648 93008664 298672135 659040753 450438393 698809827 645136838 401318152 460440059 655186306 609305773 511010540 131286306 573145905 856775202 31433032 741808666 746182988 349553772 122411806 215602750 411434003 220626540 201677402 752724952 446578998 723608194 429195309 203590163 817388356 447539907 448307846 462285461 875141759 633501941 22750581 432364372 949308351 895905634 696475230 916391962 765014815 462049018 498534370 528820356 516671356 117659387 225790108 267223046 552654681 237120886 178035789 344078531 709196648 168542449 868288987 241365860 133685067 422379370 716421233 528078365 532883834 625878660 114238335 53426468 718517129 363432351 628507048 525872006 116417993 964398471 761068612 650223029 158305831 536688066 445878174 810724710 22031876 502894990 774050212 469456078 211534654 146627820 433576404 917373404 174766707 838963112 999964392 946231502 928562783 752674692 423430070 259033520 885417744 990077345 401505844 883281119 828455523 6600382 82160379 616415260 722087650 680969845 552304734 804965031 413873171 850975525 486956926 965780975 312691123 163515952 454664210 597709210 968602268 722302043 691413776 978643266 461614156 441449496 715968023 362185537 561543160 456124234 836596785 282118816 280720903 776494889 22677835 935048189 661025761 43487813 516821474 590635443 246697220 602317346 802476225 384120313 402319054 357523078 974402334 777132539 357392952 932439402 831193241 116761188 628965034 403775354 90466406 712740233 267282006 128608953 646473784 18158779 593738003 577216347 758909300 252610343 608319148 613302073 479629902 181288403 340982115 80923497 284674400 201071300 363403254 122516248 470443721 86625734 462482932 517559316 364788893 549195922 175159707 184885128 76074575 506617553 707957641 502259685 42155909 688146247 635844056 820056774 502491049 898277807 361062489 349538757 470474721 741878630 105674476 566626959 263684378 630967430 619177028 970761823 703221406 812687606 865668246 266340536 100517873 433809943 790160637 476095033 945627245 179723907 184395695 573256679 549957045 325883748 174208542 822880626 622443754 85111065 347152736 150841074 837652656 854170210 169444737 794215457 247410878 522128872 325792025 440157663 785620708 846523733 951574569 605233850 139461620 164760861 624531437 621002684 81159581 93752633 966257864 572744038 238011468 259944300 976971434 997552683 352227001 245796715 628934858 781319889 708482849 66675215 588227350 888734559 316013094 418440147 633601582 120620846 518992251 288047327 383997497 887603526 193863227 771414885 729797552 192074836 941470228 843190196 189854040 751275636 304036615 542903361 254965861 24395751 501425391 129142876 411467398 564221890 241758314 933605512 614023655 850285714 997432119 731857053 890802331 897100671 495070511 531010043 455626058 249484475 645903478 834463773 227335960 266714858 630202584 577486188 655091226 461456403 615981591 677585748 413129399 261527162 78476193 969968751 445455681 869014544 808961955 272354715 220033309 876180201 39064340 950311033 681766861 240607798 948376940 829933580 253682011 361270906 338376261 331958284 951635393 681961387 685163473 676962518 651498073 70889662 301973261 467763616 780758740 531934350 987967482 109611018 257301797 799688061 3763894 357674503 568338092 447641015 557858791 14929235 922428386 391348953 536265635 949042798 648498614 610405773 412361453 421549538 346723212 126342791 97776862 87325211 820128177 130032404 831261732 413628229 18366095 557980052 414890311 987043052 702372946 699641147 295334582 102719634 858345097 266722569 377325359 238194098 506421487 144786629 398747780 753666605 825633436 18901888 242322345 287949256 564757364 986906543 72778365 960057595 207102876 72315621 195954514 456107154 267688710 758238881 76016397 499157502 64234994 14364933 444208152 526400451 741430207 625431687 415306067 225427745 393331984 169614932 53543732 70053067 443438743 938613096 307011047 425805165 779836075 211200014 595690153 911396685 751259639 101372132 714428066 257993649 777301532 265790500 41550368 796222490 52899589 361838051 597992607 460899508 160085416 798342084 909017058 226147415 346926942 428550111 600372175 228614596 745820185 855524329 851250844 803424540 184016370 64343762 171028408 817884312 978881974 983776082 437449102 440094834 820943890 427023197 184700229 647923118 819068299 495403121 605482837 227953423 288956708 769038102 5271481 771602236 803273892 112346694 28147493 625932134 141243737 401888834 911348376 674161682 186534274 535831449 48355718 60508124 826990265 59361397 451373069 924387580 356496777 12251935 86601097 798464704 160828824 590559212 250055447 973015081 350285883 402242199 46671702 781100134 491695867 523156952 319108859 816570010 545189659 75081732 634807015 365160732 879169655 828218005 749034582 265843637 700827312 555812378 798439860 204302692 737460572 966305823 263437773 218640284 894810908 920832379 647011701 105303062 707618315 886112471 465215414 79272244 230776768 652252053 774326207 895379673 464016331 940909744 773973908 533461748 125636430 798862581 865678500 948187489 684045883 575722160 252435606 961900527 3121075 27366750 986557215 830986349 499437 485071398 91296421 194247223 171223095 378651791 809113813 673684703 676074145 592105114 535261755 148304305 707221197 348459875 232164567 187334109 864673300 269313481 344914981 105266139 238426959 37100116 661954009 10327156 913892899 597537873 759632142 624090037 117393974 695238286 847116656 567766938 126133237 940045115 29290202 902117207 360176684 253519684 709346055 319481221 627197698 275762880 764669226 530889806 851253586 227823101 314175079 727726035 394584463 263190290 53924249 599135003 351067574 690215659 344040892 973161695 288319347 55251102 53179577 7423635 216629707 828722641 739013209 309058007 45859411 420478462 834325441 227165570 939523656 312525428 105834741 297530272 997276821 762671562 742005698 289870038 186833113 114929420 177668728 90644121 602370894 645270004 713979610 249477248 836734666 332012025 653808637 835606952 906419298 789285202 801307447 788646745 145061424 887552093 215970871 91858062 756474104 239729860 403929311 827469298 251445502 378513854 106414210 148951300 515471727 377207954 983046014 838958909 955835051 125321524 210216811 233830497 509993154 425308124 963281224 43501775 669520574 524005048 711573259 142005172 980574446 836431016 134973995 421925664 463162912 485360011 902136785 752572180 503638223 385963483 950713290 613087867 478949950 354775408 835927495 363368614 446590898 976873680 399189785 488513794 418032940 75832983 928613905 733720956 637550068 176543112 939574846 700341468 273417830 137442324 64104554 284841204 243993864 156520960 264642561 800335206 767951686 410831930 255205261 889278626 371491312 536077549 220655536 175435298 494334426 133339669 102655135 332155349 252004430 967750171 197707654 566823475 669617517 280429182 276271424 775562628 955328754 102145269 828919189 295305492 772119927 852167911 313825332 926472749 926542615 273799702 740934622 914855467 796696958 767765867 77510980 954504680 575952733 985289745 74290755 4133404 678530865 603841655 430525588 864779275 788877427 442625402 822854120 306758186 107291361 251806945 974427527 547049441 773267539 522502698 514344565 20712442 376003280 165206376 275990890 191366502 755515462 183288394 619531937 710219974 136170988 785451661 809102740 82595919 418979421 148741000 680270556 152560868 711900566 286657705 924247941 454081668 958517097 66665602 219499247 387109859 645986913 64827970 734131374 321617954 233266828 63586379 474371978 750490437 265718510 197590203 159914850 642674246 451088667 370892749 312783725 697807417 468870628 453345248 760991156 793700034 333417414 297625279 194645238 313486304 282656440 178499028 16710637 245899134 210162859 390503048 425335191 374237214 207800047 902761520 535121298 414412814 944435961 807461501 587785629 732953066 702089607 154179541 378748205 33709907 964206496 952798286 814641163 796684655 855683968 185309472 420496870 111449808 525100242 173265210 972868081 405437099 779087502 960712114 930473327 196024267 470886972 963296474 425943618 269510574 980172778 900599463 969456654 830640676 79102002 649207377 173231503 754646398 581520584 338596803 453666421 705654653 632213865 740055499 256532460 644467717 800113247 578048532 211369106 926958826 137498157 162126276 645549660 105345443 684769316 799215182 483521024 403059457 318014718 852199227 883186089 218685888 517891081 983430133 958042355 11814272 767877610 312584319 484243926 45618850 899160525 615934751 139828378 314456874 407485607 258664833 590308038 5681861 445219083 593431152 373797253 950905364 384209189 548836957 228292660 996109646 269002969 249711737 163959169 536199043 56341929 865093330 329562070 907107578 54487811 9252481 579420155 240939481 937363241 94696366 765942107 297290005 353783954 549341123 454576223 789294876 80714951 910223200 212486102 422863659 174367276 440097755 706044449 871578956 712644862 758383346 654534529 832894105 324930150 975641756 573168101 917419963 733451183 932847179 625831910 759553204 676424903 855622734 986810896 872345810 148036972 395835442 800634077 831725607 331183433 965093219 662604946 128262607 247551941 233397359 144455163 893176927 165228463 45164287 538547475 876900848 806275091 879437939 387723840 179141284 318861866 80312875 133247061 67546146 95010476 748218542 659225022 40817797 669771140 252960614 428246372 195340635 795333145 493409257 32239593 664962786 418027138 524099728 294966839 244774952 59318573 580540190 712897305 872991281 823884350 942436558 790261934 374225443 245706447 19517297 529281686 520400340 204433988 476887552 675832949 445992641 54138415 769250285 573614521 764775139 157353324 775191944 879972402 700115783 413947553 103224252 468617731 10301965 269065868 604698161 283081061 764243065 137835999 728979247 802773787 278815019 421262072 227020853 529282532 351260951 183083165 124134191 689069709 439788591 407596201 305045543 794377520 27670122 417596337 980626348 812159694 198580134 758835187 869148070 388182785 4038137 816964305 863078525 367703243 452787400 224791020 892342529 373846680 196662698 932363404 482285745 917224021 383733066 60340952 370982300 764259703 953928320 697938688 107961681 302158732 438782070 390828741 712156705 119705285 432695782 810519755 675778700 769813967 532629570 859958124 110023945 863423220 257031818 961987698 644252217 853942128 666098256 888685150 371155007 74832686 379671217 326146609 389110901 302295406 652744307 880785201 19641066 457735671 453813022 985435494 569799665 612469863 537657249 379710606 761387622 530564640 693365264 823188834 372975084 393963811 51834480 396855415 404103594 20794578 481125065 669610419 479540064 297472766 850790191 383497428 342314185 662702159 793474251 7689707 389769532 219322888 48120951 151079001 846421890 208913404 962913208 482186179 723599864 984733510 276351202 571745944 756323596 821088250 559373272 2915534 857490139 450182838 302992001 105405248 952440827 972799700 272787783 729318481 909723147 802596492 883693997 291694166 590949592 861604578 462792471 847068903 383424141 918586275 87163956 685791352 508045466 451334289 369994264 81331255 71642779 173611816 213797248 415303288 365508126 337100626 568612758 634574902 967251803 504239699 647262912 477566510 583565903 936235787 695733177 648936472 571792101 261710122 183732751 32550061 198485738 911710440 545159522 836186900 252326827 286874093 208981717 962569397 267257946 631786190 816886917 130752656 476509382 907268432 786104818 897682293 12084505 158685485 593173843 306959539 595375601 390322951 199423995 767322996 391425494 676547580 862379038 871770051 333747028 476231858 642270694 904319979 194915760 598558873 873920070 536043185 362434142 952559042 103529889 721579001 585617283 776711055 89797971 983788215 775656274 955011795 815819354 874501490 926903631 223457813 151197126 446994475 343774180 845139811 386579075 160468244 222620143 741501052 144867654 634348758 911030382 969691905 769816203 927482273 564708997 591884023 827591942 974135703 79071182 59962971 894921744 851005300 256982469 895234935 898045359 897906663 432077993 404007527 891763827 749108293 623585906 216218972 49339147 142780716 337455021 318810598 957551081 592517029 519699235 203079021 201189325 148482917 944345798 711491026 83721451 920557063 345835050 822726836 326527229 443101331 475800380 954968363 796682997 932136135 290485182 172719721 697877776 849177105 80467345 528573532 779093830 23398249 179353980 822402042 922505955 777380170 224990130 762226703 696122792 887118976 12323384 759350248 432187856 75438857 915949158 689517452 7631474 698323838 996871291 128192463 560241630 511275870 518929297 21117928 299229593 203046992 647703501 658074284 88505832 690803426 702425391 962704962 67636477 217021945 827424901 386627977 628143603 135704421 571738960 781731852 291526554 516917352 260648001 493113707 710696786 690397704 461497925 746382458 15153412 45389026 416097401 151302612 835644407 650330063 316109933 330547393 571838684 482349111 473314545 964371426 581907738 846338007 907835834 859194220 838916903 764338459 992040286 759019798 926091484 31473225 843313809 948001394 197529966 453072454 705458954 478622095 226535598 971161637 255346689 94841449 879177196 784279482 166136192 628838166 482663425 416099236 664546890 761017061 864624408 265655690 670194846 587364534 213074499 929591457 678631932 195833820 459012363 117009219 8541477 46713837 961975070 460885072 873305857 519233655 469012442 848648842 21354092 538697508 896512998 934798480 360154407 204211359 302430950 841318947 851867553 180110584 406257519 432560667 897622932 457153491 758367086 79854540 13028799 46110348 497284394 159474604 21653157 398348850 162133036 128804113 872408634 548034404 302285803 105000438 185989159 953782589 26807684 744519394 712906735 931501674 905803618 364802339 67818175 117428704 11134167 955739816 991447363 247779613 267565390 986530560 4804671 21061424 215783118 319984191 388011085 46860930 672452426 388886843 182143419 32655346 747281425 783553719 845689265 474669966 712837451 347599716 45380086 480689724 995485264 789550363 528651053 855108221 785075924 560724231 294442284 580243494 956180454 553346584 734099799 520741345 530814920 98607778 412204604 841307778 223398247 840825773 91678002 482048366 540903300 840731307 142884725 728022829 892407515 920663657 536649945 560707897 332242421 528538468 426978608 996878056 681944903 372517188 177010193 908300362 683314673 139506266 466808942 864195849 930699637 776510676 818707989 902699081 294522695 606169971 776598008 945942257 65611518 80762101 821527000 808012109 373763846 471664535 174993055 297131207 513727451 843956944 738726810 935114390 630500644 120193518 652876999 248057905 401655388 933416089 811348297 161919046 481230602 686404331 624626705 105321529 251567679 725325888 757177670 126222652 574390886 252639051 66313519 442967340 615586320 304815876 246948343 742216548 838959579 958185774 124307449 397103410 689754865 31326282 978000759 402290466 27902682 899464358 79217603 256168685 525023442 692591332 136481510 660361315 767178209 456888048 992786323 29773327 926350185 143975471 709998164 774276620 593798465 110654340 576889823 725548616 329143059 858331966 507020204 534114980 570224605 160091223 719086457 469413126 97388195 145051181 507215765 126347612 331851498 498151254 556224883 170115126 377673603 308431685 519297998 399938695 269295499 774919334 255100880 223753547 327298610 516927234 535914491 888175568 370350189 927167241 437570362 575995215 588619808 41909351 939608132 423900894 126666271 233540013 732600187 284303025 49895292 918705265 297203827 779149791 852401846 257020322 953522985 849588623 922861440 866933563 553176903 498987302 97115320 75022970 331945872 329653522 488635683 344284088 397849608 743466182 275459821 928090421 453628365 707867439 520995778 108868260 641953316 461351007 963134270 657433666 27488569 780227294 234190414 206699546 887040686 50892977 298307028 813964033 477744358 544447092 815555727 33754532 327654112 121723530 977171015 809914399 61256087 598854160 530334756 541223754 898410701 854206658 407307476 79105860 940345188 259856729 59325830 449961520 806793358 815254709 510977340 902338511 739567963 794912704 388473124 34066517 362278482 721054682 983950462 766388547 578664267 36094435 406988448 204626832 238404024 585822729 773206788 152679930 949600296 885016476 360682426 333667027 566543749 773786893 373739718 3920154 149468147 504020371 833151305 732974227 465668840 268780552 875753480 435879669 256129154 469452798 689489161 324975424 553995244 999332622 471030238 116512047 291711953 114948866 173830220 885568379 285828217 535738885 197264693 428074285 474739773 793003717 122880901 22161288 887888433 232298866 793737376 951637855 761236250 165750247 329598228 861350049 593440725 428861976 473291926 797445190 879984179 633613694 549812509 194727098 673511694 833613710 40661313 489799490 143671123 959649781 681582599 281564313 612064654 19092395 256191444 764438205 702021087 964860979 695916527 987905325 276549880 485255963 847377750 18937150 257375841 327729303 570320065 437445419 30590308 507078135 413377448 62780471 792019950 271737497 228780461 514262183 41886590 769160212 788138903 658342103 664374125 991975621 377360246 937578328 845052170 841951107 602964994 483114336 227034971 185690506 104770729 798485058 240309853 269498580 892186994 32324376 805275867 670225850 92246667 44758181 815377976 742770499 934727944 967490155 392241182 510486446 568849395 710368345 678118672 360401626 205258944 18845089 768513768 110348886 810379677 741321809 78828470 236229017 582013381 651501472 981021043 318161782 875945395 895073471 10915144 409500569 672515534 862289492 415508912 168323848 634931075 477636265 724940601 713431607 481412566 111168152 114658638 502817435 150534622 405502178 241253517 696049900 921802822 330278364 439545070 499273137 167569282 104578992 84544268 975262291 929991513 232280357 775171628 1043874 905728540 990222325 570215555 156200640 575217573 230690878 712028883 939225518 393030826 562129955 396582190 636252109 736828607 550122888 466472277 163858833 65080783 38856926 769924874 190028181 718883894 815728002 194616827 509191189 21455195 972696321 476925788 93649132 767175525 436542708 455231634 63643172 662805946 830410576 279815638 989532870 61874907 468971296 203071836 833021701 265244271 106682360 604093971 446410534 59865253 953832990 696785305 595535795 476523069 390840514 150925182 419458419 192310537 724658636 180767638 86202369 153528422 341914792 432157841 491740656 761455026 64814444 328018152 654180275 366322435 793244530 784195397 170599612 424700330 98785855 747663868 96666419 852161758 266257202 329340506 862453512 213328785 448760006 825461934 201023518 310634787 473393500 100487588 608800894 434684235 748462919 53692786 314521250 613802769 386407460 161959889 311279041 292795710 752615379 653333452 934642290 510209761 148319447 182506158 238361878 262118780 128030133 352943653 25001099 613814685 6530414 420199946 515611926 722493199 512638813 180134793 673520603 578383870 393429029 598094789 912123063 74449760 654654905 905019176 106487794 942971512 268870966 566891968 75345997 235339845 968912403 446322497 935083581 684620157 238702009 964075604 178897657 243366509 78681301 771314494 403999678 147540257 418176509 994690748 580478636 707765279 453533558 313676606 131667814 57175229 371036734 609287816 498725315 590324346 87687474 2571564 748075903 853089603 406894423 492109058 782581697 759132550 797553444 452636365 66314220 748117371 137275845 3874796 124075418 435044654 260231687 860392174 841241228 858471496 579861063 62992785 253121643 60092563 543079783 580230650 955399572 247962558 541819936 758168876 335334343 736200646 540567100 260495245 161004970 213665493 999728435 434901514 528114888 168722315 336507752 612914330 286057805 85219597 981165760 759556291 245757711 154856910 343653082 390972978 143363590 247620749 186531703 270458135 987414771 734452876 26975754 919328495 526971788 82010101 235550941 980734267 201899162 866925226 238021703 793590926 421494191 632022615 264616197 424629852 775444058 797165619 824129481 926868969 29779738 782205687 685717410 342733376 689177809 548755459 439424435 773166346 855997821 376830910 263718380 600097843 863825198 424524861 624022869 910614594 796276395 369932368 681678162 40401024 140376411 540920142 784993159 386440856 947890508 337263150 745140460 169759310 2817912 246308148 412606045 167882008 921065586 703365933 84204260 482750160 809197944 255247975 627720330 225797889 199690503 174503329 532059076 808768682 891384247 169703974 107821127 13772564 912608398 39941519 409962706 584453793 661533068 216495334 119924128 487196783 815820354 971227629 156813406 686112931 398057159 634735334 697357716 659358264 684395735 334244043 624878919 529460461 913420632 730720621 717035424 676555482 325107665 453686110 192171497 767508363 739699264 736855376 197415885 714141954 67276178 535719187 47090150 650051117 623538430 290457454 910138959 150655383 903108276 714066365 397900348 152204173 32894563 704845875 460506911 483372646 522853517 959500996 359553574 143287330 480153532 956656654 180988556 57728894 1941767 460315348 903719256 968705923 909867718 923060665 859105826 430776383 261985005 535544623 491451665 963705427 116218617 942207949 418847971 9791860 439060475 713178005 459597236 625924225 749394985 181535262 811481912 387617792 931454430 533943021 761850479 526121232 804767816 564271869 996441254 796797526 420204175 659074619 532905529 463853822 762774423 732646554 805684087 857239703 805723401 661742738 685803434 59012972 950655901 505620621 195600151 616379025 322654090 6752124 518049460 971153310 291376514 473573866 138094668 54484854 972826553 693969052 309177878 462695048 495302215 106808946 478885603 191734926 381190370 998580152 764071165 453737148 853640596 866313442 910021280 177243802 509488341 812042666 205532139 210491217 125169061 223263981 82176412 422803629 368521740 61043941 980174559 605211918 668224574 229341700 693051062 62795607 532806322 5128185 143674777 772204741 241802760 557645227 634923044 326452241 399432958 69129720 470739191 260203593 445821834 676861425 94450172 733124544 932629649 193501265 776687827 813500749 838553928 997785972 790717009 61506150 323056424 527450393 813798195 359388997 104790325 447404767 464725817 200270888 620166708 888047529 847351715 375173733 929340006 214176664 963152596 542826264 609037894 327785654 152700048 44178016 993242988 444688454 750630158 946464484 739871173 56408135 243541384 297230838 725950137 40625068 445623208 796311968 676047752 338839987 782365978 960674797 236700863 689037285 844178209 49215688 818510522 956319585 455271829 383434844 30097242 545341002 148092325 323554578 479479536 289356957 218740855 737046280 949375809 650727527 288550564 450559809 680128003 536618162 65894066 181093935 344986071 615319149 974816591 458782022 487592522 710676440 155857668 953208669 620944170 793073073 763311743 805260284 47973777 529590224 311376082 723899662 127914426 617912549 599643904 862839829 594258931 599561587 608820351 796065478 86478256 287677241 77661592 674914646 55486399 434098939 654769810 592808071 695247916 171017455 85029673 793695611 167330141 795940660 79929349 771812007 145273680 754877642 412649855 773709219 65471358 249339706 154989052 344923707 213386252 521641218 102774255 252653016 440912939 446099560 270432444 356464939 972247146 273584133 813163584 338020020 927847367 229989649 562440392 934745603 690916393 263592888 973343540 742585653 358900356 552020683 809546842 426876608 810409816 41629082 772544217 797272541 190511532 288303577 757344579 510475975 532952027 676054003 891351831 851778551 973194720 970840799 876967750 243812071 534130044 596021276 222954615 330796230 892805090 121903311 553998659 753996405 515327761 689160749 690890600 540491212 151607739 117558931 249470228 537381738 446859578 340089971 412432535 396031342 106108985 925650747 6290781 388733489 662677154 335775099 327705131 549312746 55342263 973071125 930848901 502071141 442912267 651493342 504482916 633563385 389251255 45097924 647534807 745204454 21818954 812599923 616722305 722788699 720501697 251043584 896795555 341281454 220537628 293478696 600533411 980054968 459208905 48326412 105666808 903965128 482771946 158461071 119808288 298387391 559097687 677462555 143710645 279810032 262173940 448735434 936471713 498027945 814687808 278160696 986517563 719488009 722597901 17308039 730514038 518689416 17483252 684646822 796856893 473044175 426725199 899930549 366146263 750528427 827429355 259884963 781273004 938637862 598419281 221632238 948153346 210931137 318091337 1341994 386665082 673237725 282629620 613881905 340148483 844154007 475635643 542474478 123811624 389737954 491928480 282600304 865467686 654945622 966748435 606035274 897208376 460177568 296799831 411474977 929181179 853630509 677497912 32401538 165493128 233799005 456610707 42121541 903045809 831929220 226918004 656951442 532192991 949272066 212569996 882134147 180653030 39628699 826050852 895756014 172676875 850254688 490065534 120029909 298307264 106823195 134255659 987833993 123847673 737594212 962612 90974044 620807199 684285621 276352719 680702542 680846651 568040692 537130745 621772506 576144861 500483143 696001367 661151107 741395963 38101503 932618833 241835622 368027200 616919364 929680983 171085980 821019665 858127032 186367933 901721172 545699508 315950050 260002229 431230889 372373371 635301060 848595512 44698186 900209728 855918732 872698728 675534671 473353639 780148294 39950702 511250161 601756011 672057032 15807738 155405073 225825389 51474264 974294291 510180362 983315785 457461869 223688997 371584608 474869673 432697557 786997913 604448500 355102225 245154678 287791237 176297274 347601473 400833650 970081135 76252719 170592847 523823375 866540012 427187192 368983427 96170070 366945675 977401224 50575942 266336268 371104170 100335352 540882930 812887605 835038092 886473666 853670914 626093636 977348312 973866236 857669051 768053306 343070073 196324880 768883749 683292759 115912858 761437592 414420947 648905708 48951952 84098520 347395394 397575636 28206271 691720159 140031611 220662734 500194603 541799288 298803603 36965633 133328743 987185842 824510842 884695328 871409915 535180730 204576338 890811088 23096013 781960270 249047135 618292935 376369595 143458854 54849024 443691473 181382377 705895257 19845726 534663403 997730194 508596257 588470882 234649859 701060025 724674602 134717975 802874531 511826810 703491321 989393568 537722756 461602169 746888054 327762686 624655079 173710080 663641453 913322990 594712409 856511607 121509084 163187323 27857277 656357545 397510636 14969530 595803262 83383059 493855335 491969577 351875004 173282711 923332495 998523699 157294774 540888152 917490718 444524836 634337546 37162785 842046525 247075136 138768939 186678271 467523813 506518990 553424850 338095920 223013624 42980372 10557056 725811447 980504837 157207172 648522253 851103963 938385715 897854781 231498878 92182803 482859219 559480165 337514087 112654260 966267504 109977208 382016768 212952250 383353044 437260541 811349759 286185897 886712251 15882228 855656822 993485282 1786128 816500199 192095056 856720431 790626343 597362478 322419412 860633666 353983255 348123474 372965591 376685089 436687679 248113896 276591006 195679792 302739045 961215759 830583798 183887465 477946671 52475539 319756912 454136484 290346880 514370316 206839694 732324766 475364083 637381235 150964072 220015371 170766486 225843864 469269093 443599830 820144473 478767391 465406046 399332418 533027864 151809644 341875267 679739676 865911979 440841473 378222301 955222495 39814904 105015468 773975297 12898793 502539909 569863982 659941434 83357104 34625041 412965371 188626478 774315967 448288059 412799166 58051627 616511709 180907998 614251485 567133628 933202707 672196111 685594691 701177030 987232805 309400619 552236389 402094806 151752707 715602485 690502865 635553105 792019542 489383218 446012738 210294988 768850233 255725092 234137253 293905384 819403358 256432697 872530755 932801522 908930020 84080966 510152506 705574301 919759497 715164552 850012747 708593576 524962012 419613721 636996200 97619797 1679221 640373646 697288445 988023126 430851717 142564595 31342610 170667979 358708510 127593332 532885034 526075000 478172907 680125725 883792535 837952361 358115498 394351211 559457423 523284609 527052476 582912440 735756874 40482250 284088807 326185720 281672425 105409693 152749058 863730144 263812138 416490494 115115666 53872258 82844913 72208620 258791296 23522508 934140580 649734673 905581702 369926662 718744494 994139967 575311646 180809407 247087012 923293913 948729190 630713109 645102834 303102757 383654347 510495005 185188848 667530575 837166490 835283704 728402500 710250048 867270504 262822393 768951357 500641199 743067583 596610930 72690021 338160176 644070974 630464529 564153315 41330585 360599743 621008151 869885234 172758020 14267551 520260843 604163678 538747152 260349349 924730516 56071671 314014580 475139415 209851686 478084231 280970896 349388309 436943963 423066294 684323975 776090741 466363858 688475396 422828294 306627788 944209756 440506127 832712952 308278402 707654173 612282351 118771018 452600221 675872659 282264029 542646890 968491998 355439206 360859646 436396520 537980272 779795912 956610065 332472329 23346338 652563011 945490065 47683409 61622818 862334519 755285054 700506306 340109245 113801191 992008130 117013297 908627911 164475495 748943705 285241901 546185586 10956858 569383674 820077898 625596067 102268215 248481143 920710165 439449046 301957520 268148373 424387017 958827222 814326041 445947054 206813741 16164283 191268916 886320046 627556043 855450581 709078316 353079901 207717605 958705537 210619845 127809431 921518598 682338077 811955456 492075221 320710002 523322291 122430244 102953059 561842960 319478154 741999114 637372618 380076828 87153322 271136004 192490122 450472571 137421273 640161876 122909469 378403797 930736408 342259451 226450588 889731412 77301792 720078198 505980140 526649018 211276642 966767259 21942199 981661403 920606474 727164778 930866675 877248690 228845802 59488950 646136005 234508393 665872950 936127488 624255186 849917646 742054422 205243722 62438327 414380642 88747017 742697564 579554632 337985150 375040900 915802306 182564321 329256781 216309402 938122500 381945562 257152071 138487925 191982177 320796472 238940799 730703748 181673338 943843477 753396909 37336027 434862876 791667976 264534229 578323267 271008927 327206453 780338808 11015128 284095570 729517143 40570897 166361429 719959015 971833315 608276724 460880139 641364841 515549682 924150124 298802326 411960665 286152402 975666943 16918662 229767352 991495783 829845352 249362427 611308146 704064267 246989527 511774011 988748566 418803190 707161539 556500959 844627407 372943642 148282102 347902170 744709964 806964112 803791471 477180257 91180284 177436787 382462032 741767360 913371000 616823308 718501176 880593198 131955107 2590160 482043902 71519621 958785225 393015206 928151739 795824517 126067467 261229691 558622574 318596214 243492975 821756159 227698725 630248982 838125549 369737664 864490941 975781737 112884093 787864197 927511384 362536246 650128673 723320653 612453782 15350626 219705511 277475453 114045560 783094347 862941948 763564773 402375223 454830283 436200484 374774440 701240007 129230256 62292892 189199495 953816838 801806244 642204128 499018003 870070585 253786507 269472762 956884653 709600516 882524490 344279739 191319452 230004770 503794562 394456456 285060743 406778000 67269848 307005612 238489646 243255281 193636863 654912796 676793957 419993264 593551473 852803986 895987734 122218894 992497274 836412306 54133976 845143233 646682726 797652875 856259105 677706795 995281686 889980933 459325611 685650857 146342311 371117063 591085937 184354767 31791953 156090507 452384095 853173720 972734677 826370893 803673450 931507252 453339528 224939453 747716500 515499241 657569842 282967647 952866276 813964887 424426495 898800445 310237072 124535889 755320330 584094902 711823287 536790001 873952301 970010263 65929532 573320535 642025523 986298093 419452727 266944860 967697357 61490221 620616966 224568338 984522542 27891120 666006091 526717492 179861335 188250771 41191018 106731884 175242601 384024475 974865752 541232629 992991727 552534790 121940933 660799047 495309344 691803033 614340270 747134650 551876520 141786115 809845744 324945637 670126344 734705212 318604039 449425008 701245679 156456344 25112190 324870092 757515314 259597540 58208732 958947670 977659619 339868860 571498186 181322034 206694710 100524587 826745983 841383082 59252863 147995687 127829337 852617805 837530095 398046847 3826080 198333522 477626425 119254596 944297598 263916786 340324611 567345626 308584571 56182268 666263900 789829271 623212238 107040110 932066859 119162737 649600047 153187673 576376273 733252904 347151580 929370214 810254160 378059557 895748248 882687292 761963144 961841218 283988408 905433036 724013294 116130736 334349593 317870782 503399904 753025850 161609271 784534897 591771879 717857107 429842846 313883997 345691166 503240166 706774791 209318023 290512222 35989624 49852792 745742605 538118024 274269967 979327370 83534867 93872641 886291561 800634962 311260849 712053792 703159790 605949089 220479722 660380037 275765605 243337161 908386193 317895198 986837180 299590373 35198329 175118046 495774907 79898264 360515090 865318212 626195268 404307902 24500558 812133123 858353293 843207700 982111515 665496288 728115785 832038567 520950420 863276034 711702913 66508128 911375658 897887481 418369520 557821873 796824819 731975694 275664907 967708413 90018241 189232663 685733041 86277619 115165998 783854858 824743474 264533686 657786366 763671318 394549569 575053238 152893909 912351609 73139835 754893019 163911752 424124109 249639655 2914050 468089984 482868163 683679905 658050204 719853389 897591983 526983561 131856081 478829535 137843916 932278742 956745186 384806154 289560670 763381642 162371358 693852194 818431931 300245068 756928992 900444536 173483599 729099125 712666826 2628476 315554971 439323793 731784113 400702966 298841908 838752593 777799965 680011373 838044221 287943465 522233189 167344892 433028517 604313794 764595959 100064970 794045815 488851636 398639300 226899963 263600997 652614891 664043988 959714925 839697433 994842230 232786935 269858450 275197535 949354809 25572222 242095840 682314626 378387196 497759837 614862516 344832905 916477071 634164439 227028422 204800416 695511824 605234625 38405294 503300041 165939545 758682908 267677209 590866667 264047658 389894315 55272423 800310295 343073844 353029078 589918353 330093955 590474347 520496545 698584925 306949601 954389646 661069995 536416560 629789089 931645301 608036107 153086119 298355710 426130701 644256509 283892245 737798998 73692796 830125779 650683890 266898392 214655416 383369515 256911557 619995664 503092430 951376769 690451779 680145946 27946912 21770853 240241620 421119181 968086993 728517543 385279567 872235784 226821917 620302889 115291826 283362887 906846687 446663609 130470595 903154237 185336367 25610646 342926897 90945955 312301425 528200827 339716032 629671828 673625944 99166399 959102265 722970764 613981550 215506753 16189486 517558885 607845625 258931808 829493754 591585895 338158404 513116380 246301815 8665104 454257675 830840014 270087535 624957355 296202746 972225875 531330821 268896941 377890121 718949317 878628871 387647406 170328007 775806874 259077004 306438956 267862299 389628506 317097286 298038403 203914173 85666076 314815124 410791936 125890572 995585519 519625851 618200057 579461634 146387838 489450754 322289831 894221437 465799146 22895187 929061909 928479604 741979833 7965720 824364818 419689544 5504595 930669445 154063804 58396546 383419951 248194885 124655934 184117633 195364576 34420202 431231616 128138388 426897051 602751646 443072886 241731137 564714809 488180494 638807502 466400248 193170831 960080287 386849244 845104121 483543807 487916302 821532233 180805932 17282931 528179147 301687861 39690730 524319673 159092235 349307768 869957122 65088867 352542256 637254551 893124390 770733137 525851184 79678713 644372677 301368892 3062746 255061972 706785328 501053518 355901727 404125707 17672391 494642303 875976288 531199935 767525859 643487495 259500008 492828191 676048723 660179674 197683050 162479974 97558559 620805666 473010141 165495712 470401347 547601025 607350436 564931520 483406766 312458768 610491786 172391950 649073583 811469439 805600143 70462300 411178117 600506210 477861662 356697960 130452622 375345061 471028419 555151143 265411833 947512460 803319358 357457125 180932851 395687184 931675860 86732460 750818690 516969799 568224297 759474593 270177473 880437068 843689602 672028717 283803426 76255261 953168805 167703182 315366958 111472835 313716601 777573564 955000720 863616942 975148213 457606480 461000963 22464702 466729832 548679174 441480198 120466772 773676999 951405270 921418338 905138274 802313122 957335208 273295107 115150806 395973239 413817435 342339940 115328585 668253158 626770852 35173446 386246969 782006304 182488604 291471359 87685338 644842441 328441047 568463769 237934933 206668832 513035047 490572058 746445654 128806572 48694831 746823696 182862930 121148452 410181149 930176749 483304772 306912195 895279703 145912834 381967431 774653984 12425388 146147111 625285172 897209798 907320446 191634167 11556319 11040913 740724361 23824649 922216604 887439529 23771713 641619104 270327834 215376581 746656990 831626464 568091315 357315528 779650428 182101427 724480618 729690978 914081940 635899210 678489541 251981108 385467078 403486428 815968393 475085460 495327472 820511200 161713239 837705435 93580092 96833628 446295177 811927878 634656409 675623626 875298740 136752111 141177884 975681666 978900855 940287886 384553660 367784303 708172240 294345093 596245272 965700156 72165883 411275982 362562912 904152306 516190248 621622141 573031822 208832196 100199421 258572390 880085215 88560665 424634556 315761974 309577358 33445059 630298434 611096806 959907056 594625624 751704487 163043131 64877706 528818006 760075829 854607659 108035301 949743574 91937897 694739776 206961903 236435076 73918815 214071777 351335163 904825654 688890839 508857323 76197854 667407106 656467166 24189043 421686575 185506953 377178360 202662281 335561306 915880963 539387816 32403168 280384476 713815480 868764624 906199806 338046143 130837651 929614091 258695535 40527617 800955211 534649475 767770172 819449114 223264467 438633940 684029012 279520158 181734563 591093565 407876640 972821106 253370558 333810843 773402047 183187497 816292992 509046983 832984649 878508119 351613986 311402527 322140837 853692512 846096090 954228741 459031510 941091154 244879999 721433003 745805727 881269698 970965855 463535880 896647413 972333910 103788112 492482658 368512106 208027978 332434744 624457500 158079246 232781086 844454857 713288462 530106862 31840673 592639282 340255019 350334526 515295074 145077280 61665932 885387174 44456671 581821690 833832496 360408891 3152889 443685310 170951774 494965850 951364362 193639759 233674787 684949034 926812633 553020729 928012419 656774382 731289614 785577969 976982774 68395065 425456683 604350447 445099714 954379626 930966961 978732188 906869677 233077578 875533950 948333980 967175960 559086594 750915042 973617203 247287830 941423913 418932330 229867580 20319775 335307797 942150196 28694207 126470245 496942963 739846299 16176299 221586515 250285932 981173128 331471606 933510771 370212729 899025291 94349 379519703 380013425 782160072 120507535 868978058 615148620 182326705 712571338 566042276 883271140 829830374 343644334 615674195 923168059 356227870 500117303 617500281 59587208 906054406 768882598 307290059 275527117 365773573 461960092 458117971 241149354 365998077 315387845 282721961 299687813 66775886 675117222 229911647 192448532 432989987 950269559 304230414 61735428 831382753 88796682 153979796 339095356 83432211 546182930 409296164 976475459 653300417 627875736 982565352 182764380 835039151 540066710 456155411 708638286 693754330 469354732 464329044 670668682 53636916 709568778 352524537 541399765 292057314 674481507 849067521 715280074 25278903 519359847 985263916 567741877 654096104 25345254 909862060 767560188 916984850 427135972 203440414 94809243 538335835 983376487 145797038 869814339 334614933 789204458 162500799 881022950 979408207 682406593 200674775 160226187 859717091 188375044 60668478 111809576 587693464 108659932 489752166 331274854 227118613 879098099 469278131 554497629 990382111 932454098 526630276 960754283 256286481 993325259 451625192 164020494 560955599 509909908 23078544 756773533 518072968 446481842 586873059 625407139 508330912 112674178 578640170 634497254 585373841 195099757 17695970 459086493 192349951 916574688 116931356 415739279 391974205 179714165 770171531 84296262 820833654 125567069 174807624 8559054 965068614 521998951 362287634 440195123 586225664 951911269 867082983 236544508 3926853 718899074 902360541 658357822 389560305 26667768 459525255 148388160 338575960 96344845 774313415 669642644 949561537 161402533 232463467 998214104 745926281 22960600 382355934 521754815 323269176 38698513 300344826 624846495 172986320 239044185 152232189 179948224 450702642 160246693 767570248 336077503 918157068 757259720 162844481 469848489 52575161 757469449 321353 219674448 483383849 423082281 870627486 753084834 811428929 613724642 216890644 644792487 403472468 278128886 733369370 436013115 565432800 561530263 156839967 198871731 284931609 901004350 915681478 867335577 48032097 536006769 380701964 76572688 988439111 181369510 734053346 968684775 594257628 438475712 803139701 872200067 916583341 331709933 650847868 618073144 692976581 699622820 483574823 89537627 273560656 740958992 262190540 566994771 104129149 103107892 400910993 482855622 836340637 675849490 634651469 684889047 878435054 991607486 899404771 573656810 709983429 671472366 822796742 27135751 96184410 574808336 902380434 436867905 133131122 38257510 986761318 432705341 973409715 868748809 645796481 733729688 95933107 229133790 832463717 251374125 505484505 118125663 287909841 825609292 711480057 126594806 480248824 430211845 849420785 485428637 662224537 480056796 148386123 240797615 749088726 626464017 830088356 906564315 965039739 192858991 446843005 907848619 734772558 867007813 518904879 637225799 949904734 829675047 41507529 72600373 445389722 546397981 319115515 414551948 74071840 896701679 105871840 498485036 775972349 940694764 459143718 501366027 817986093 272261780 381711994 958396674 956451234 776049349 202323972 721936086 787047927 741238472 157874907 61656023 588181024 194441287 195403651 682860596 1298731 994783879 275713068 399983979 880295367 166618208 982235493 457169835 630955917 388588342 272412070 527847917 467014348 959442191 92233215 54908719 16264165 881365815 730292518 514630733 992419301 172944845 624298506 133600272 790355887 822136265 952334093 812530679 141238653 648232460 156695371 33062642 742862862 750595989 101484216 765950113 4528049 701001419 68085558 876068464 910296288 818282424 65340191 1105462 377386289 583783359 748342230 48302633 814107915 357753529 792976473 428586410 55935688 379345254 17352509 984490110 21827423 105310058 12193425 703746189 573766910 249321745 159870063 360836661 92411645 339352192 625785875 213015216 556998820 895039321 847873221 382584779 663213262 393321898 810861419 584048872 54126069 814100807 181272242 676536414 793823983 55456754 668832811 855781671 33433511 571809303 897467488 911411655 26853507 918516610 442873987 847518304 130227203 516796903 509501042 968955196 582397825 311058565 550273967 822399914 592273850 484343924 315153817 781955456 367677587 155549767 462037054 599041580 34544615 987961957 946670616 624668127 115520554 143309080 907492848 999802621 194159809 992339517 234416709 289475600 401618024 997526266 757998617 279088536 260386245 296246156 411311568 836512283 537192255 423080989 443756784 320979987 215842371 11789604 477337972 177897784 620644543 662169140 214915671 527945536 866964716 993704818 802199230 805238779 467311276 176767938 692517697 926159025 871631949 661128125 248104233 237441068 392825448 633201027 121533491 985131668 295056168 914065110 833751529 802173209 964310024 108331022 732399437 460225292 779265407 591029592 542951817 264159354 215984688 65514210 440774080 455473783 974196012 150007226 52780853 996214169 526649051 911210546 229817432 612719310 495406238 917123245 820453737 292993941 783734877 908636781 897882595 660607247 990503989 727381486 24055533 89793373 107229389 69333630 172326423 279966475 953830168 290178518 199428697 152157870 331785964 385585353 199780960 795022419 890115506 215272005 38559818 555426503 40203427 517850594 389500490 54002510 467048068 416751875 461296700 280212731 119502629 544728450 742460539 569293393 173327665 920823722 725441788 588434380 136118802 572211403 618003664 462937965 262294427 59014008 590989214 274961899 569647425 189809839 431565471 858651106 690935130 321887886 72809258 721193579 688370779 405052010 310163956 485120040 449335621 900931160 900085376 937759211 751512415 640367811 591271885 150529895 789577100 337039069 767082446 448135376 512787534 53291973 535299670 889385862 434811998 551336180 328545672 454877710 880440041 488928633 167435077 884793553 712203023 374765028 81650420 388900574 473066696 376846324 493725301 630151393 57832383 741106107 131325417 554856848 72212428 369366255 68527358 703644341 262158036 570967903 984922064 378913258 254072323 70851778 301517243 107114584 659028054 326817670 341937666 916595694 573816321 5475924 163139750 984721762 370729840 436570708 219071973 834843651 997201055 182811690 319391506 651001743 740708839 789632016 677907725 837344865 216688851 408995812 830179021 7277952 361125931 141117856 841884861 523238494 350085358 741828610 906824715 634653926 756807190 370069980 376433388 178965803 935203025 162017003 411728447 291527660 405256218 622428287 912811455 892479762 559018251 133852666 311898082 325753689 242433201 404937513 768774005 466814429 873176961 71632812 615155313 292427125 139046358 891075560 67445431 458495485 130370768 708893268 274531877 440096917 880534496 507500253 519985167 977208825 213182284 750651958 715974578 889607232 350632911 903512696 496317306 938085863 987060931 924583632 458308137 531224702 213737914 24209762 825318303 966888113 780319727 476332718 216858607 715830390 389923697 543308135 564237630 678639042 726725893 326528209 560385617 824909036 140619465 434190981 101430217 701295934 389590773 770075941 127165110 325709666 430097601 637606665 414305528 720061049 989181212 180592048 230827329 772526423 706938089 15459952 80959910 518159043 297634877 616114260 667947844 708015086 841257546 283354462 741962888 201668776 885280644 386956432 257463442 248933832 722906016 677990051 606300584 230787793 450243430 575202382 526610229 315576090 727333035 644421724 632495100 872566706 504441971 825961992 724640763 753323655 205038351 935721107 348386675 242965697 146178452 936402106 385192147 101449095 258544936 898503161 494504740 210612338 379351275 16238662 738885027 756546679 650519466 304275649 423338636 629708694 884145174 354879213 561939253 930759094 621852326 449505919 895464288 444706732 336423546 770436444 71265595 795339319 993373027 965812480 426704901 76881103 981847654 713681444 376627377 16435034 32724192 321029386 553324244 473321797 196811493 349963215 665269967 64394576 838979663 964195756 586478824 383266457 303578387 118977738 244481357 487583160 655521881 10923968 868103685 387444593 303833679 992792020 176550734 907757576 377661187 525370356 975762255 575326637 360047449 635138569 287383844 583124718 734002857 675675714 566512851 55598783 855350284 843300931 439398852 88138859 856609848 990598326 837448293 963020280 554494031 614346207 172573447 914697625 686029924 632417066 808826112 59457369 246332856 168861900 170745454 142864387 849691400 243437851 558445210 590236908 878552484 869191535 755396528 395729838 930205759 905678724 464428825 374251481 675620603 405260494 594559297 463947911 855109562 129331632 968846321 63232332 529685183 40783983 983692730 557899082 192662492 479878695 675886991 939549663 990838998 521301838 70820943 682973167 393709492 64973796 572912304 110306202 120520213 912836362 884153553 638204725 145126562 162900498 777213152 821442153 724500269 885029656 197900573 482394523 738159008 643637245 336189583 64425035 184576862 728914945 237587775 161438406 591979576 28836416 541760011 953263240 207699852 672559668 744588040 444093882 654928969 617781652 289035720 687925910 279851304 947439087 778618300 238173052 579854846 603666427 783462860 381632346 367494835 387266187 675938550 416404697 32749626 953428137 665765384 870607 252174871 795921198 492953498 799909184 570291318 147817348 685126021 585617259 705630335 967621550 341233061 825601876 373604416 360546862 530087371 442509672 16640860 826062110 939645709 63298222 562876380 636376589 499943516 150278286 323402161 705910776 704338966 782395488 868388004 163495509 984076925 927501087 702212065 125803363 388251002 379762882 511708142 554786314 972499873 767829516 874547305 993549603 490465499 932994755 408576342 67226350 549302348 731717675 461275702 829374492 878624066 231658212 884834235 963475292 283571609 502928331 244393412 783044676 815382199 430837068 622718689 436136958 832007339 555655620 953426951 625703028 694861878 609471184 568733431 580486880 751869739 213440857 858411465 164053938 320058341 524848685 801754944 143968615 489009254 820910588 365142696 319502762 466991423 391126650 67188473 447125236 858778074 192631239 462947077 430509825 407923538 331714359 344667723 134983793 734257405 63646028 173737556 170010052 241362599 95316745 154947716 270999815 562913620 313464884 478405435 32578498 841355945 513950098 333072691 495473000 902623137 687614874 785517072 602951410 50667774 295440283 492532463 366235957 92434636 982662196 3251912 152142365 355144379 578512754 767982462 345500957 511199559 250555767 774260948 867135452 346139683 207592655 458837457 17786508 386189942 472497289 88774030 939169627 441961330 614521714 606205735 435247140 241027773 213671744 94864423 975154657 567254983 135257462 431616206 270651337 774455557 931572371 111676810 569143280 597010841 466454237 956782503 816202608 105020583 703842139 886444450 449524761 148427513 411228119 608614434 568941723 661384499 553535135 543788 177154334 717556491 584315959 60123512 431921289 616666980 434742070 29982531 276618642 75500131 931670447 95034887 509230579 934788344 582244360 726733660 590990594 3127131 377396854 292282115 74456350 116676430 626087925 168503775 440157490 429147594 76772517 289782994 8009738 445476364 743986632 434531343 603621071 530363261 317642728 139598088 167637229 995894803 475462593 358763147 865241432 403312109 116396636 783730793 120699458 118578270 605662157 848168647 176952360 792191090 590276348 360991926 871924194 477919651 107177361 774335395 758818362 570750685 74693572 709968513 54895299 861900328 452752441 634711512 643469537 729501511 757874715 532344565 992316454 343088372 976145937 567507907 104754092 167803257 660250618 692380005 171841518 818495420 305596092 398227374 289485070 220140004 619205309 798736643 753355034 555597917 512469520 229172213 611440260 996592903 875181163 421518906 479252619 59558968 92199481 41190020 254095576 154017183 48107833 820524195 462198178 22902752 608961689 416445038 567681447 597682924 251984897 172389770 379523919 757902998 68835003 867714984 965196966 801583795 639768919 957985959 821969728 853117136 609510412 920581095 254292544 152699045 611505995 642671953 289274734 384889955 915275020 519485579 346836078 788007546 868569478 696854153 468006301 365132907 340938860 557276731 198301304 842121723 761845404 619226262 136130178 38504534 730316339 116079549 13326880 514284942 248629369 989522671 28551773 940956513 204372940 184180631 427209519 971676856 156675384 628944053 810099055 967069765 766183431 207929691 107773263 537023882 771514481 973568985 794615444 415412391 710287378 916203700 731869281 240166523 492235249 715535694 806776915 871860503 194074672 369470920 276018193 986023471 432496525 224935922 123206564 620890824 709732245 119464008 467737215 123898118 660123221 656275824 847919035 354673994 182562806 137106565 117858334 857011905 14314224 299640066 27023447 327506580 337790406 707473930 983464577 150530188 283886965 973512105 456592907 835209271 663613118 844729338 970432313 69402967 380629165 631648677 111299286 358137747 71389379 826279307 525949320 550831329 468249522 488331143 927316188 390368124 113222358 606395432 944564459 645064522 131314746 450991043 258197499 84610023 230752074 994071660 362914308 106085551 218601666 964901372 376184225 278949118 157239099 306591771 656655504 999973151 764188255 303700222 919904801 983893581 801254477 849458098 516914787 689451201 120253831 593444178 539618655 745259428 76787801 130692106 775604906 659895924 654674815 497959 12698369 841325532 833695676 474754992 910962379 146078092 207304282 437313079 4953669 920600544 835905040 856949650 675950655 736534567 405311324 578145083 76439078 190952402 298707418 189702465 181699005 220268415 402824098 516535375 18115325 60939156 44937482 777738663 831081631 974100853 978968986 266576392 338460521 167138280 879920302 42171794 196632144 341951121 685952131 754767277 95938613 883978969 316865298 520091906 140642034 267708255 152058670 368792192 352755290 320309046 204589831 81560374 610363769 79938161 697674737 146882428 285219362 316736023 328628311 745505213 601133751 227587476 915280191 542170411 759830823 435611632 773591144 840669801 285556058 163518619 381195064 952396224 749663743 990837275 775715103 699030305 24404351 119462476 240619192 576595790 978716102 13793609 437980418 784878904 218756489 128349852 104453353 939100918 287726032 277651101 984197864 175404458 231649773 202537824 725822420 546678901 267249245 21471182 352347673 462916618 960827753 952927175 518600768 147233652 30215440 642192784 643644452 871481926 264428496 447743274 22070196 752779068 233865304 706377912 397301118 398990519 82040447 202238142 941989055 119684881 470432682 406578515 427795840 544280022 66833813 262122723 692280171 821586700 546545125 562339869 871338814 775777780 321215010 479519668 211031393 745252196 172431300 583668692 396848591 422104791 409004692 780633310 355555762 403468403 334849448 283658137 125526160 840014929 355089307 206225574 477602970 429189672 19666532 149119212 552984184 633180710 698958215 865891877 846068704 319021234 934700387 768194202 917545625 899675525 674704764 902576657 100801285 572248632 474553968 306118645 619356950 548580658 44723086 805458073 291333495 324685965 291484286 724429767 231450778 149776856 847723324 956436400 935475114 926188315 417700485 53208834 790545542 663535654 548470119 126410816 327328515 575090073 656026754 349332756 775782496 363859905 132744167 103282446 225502005 740135804 54995884 308239977 303939356 835280808 324306030 636689014 640332998 268670104 252444353 841671012 933911244 575906058 33590829 322852461 386867585 988063330 159579675 267239784 317540337 695871121 784621314 337509771 276153020 321086986 912889791 410018926 35799205 639545224 491365893 588337507 459442545 582082019 79547384 358153236 788850077 674031346 926112175 316456139 688488231 199639015 399370890 83378716 173995768 518398945 514130918 796425488 624853353 416301940 488302029 585280236 500149501 934031196 218269534 301208804 784224802 546623161 565482469 887222170 511754363 787139871 847983266 332097355 45035993 385650851 927227253 502839155 876320456 463123293 54596802 381633798 408652990 459775371 762589300 246956648 106175915 209851838 343473530 449871314 319414801 728407484 64742969 33465039 189054558 11960564 472625122 779298770 279401610 467824522 338431814 161322368 122029105 315785105 971647531 269535088 338496258 481222314 604938152 202567608 295667915 656951508 883217059 269306034 102742804 240205115 929419416 705557976 580946182 995219380 732875027 603202664 479393491 308277520 3378958 188335858 294412162 526114699 842615550 101552270 96254311 674936371 630765330 93655029 352393059 247944874 458816872 623774374 229079739 230491647 530846681 232007950 416571625 579197732 458867460 146557056 646699954 221115340 620564018 580361965 154121498 854008675 948044325 657613925 439707918 772673191 888689784 766511129 447114782 303772116 221094970 502622176 531197343 980683996 584417691 123986096 139678041 355919227 674511199 880238161 286779829 111513185 320355597 620990855 767351388 252071931 491441403 653759634 936592066 794005544 40147244 576854773 694514577 69590855 12365801 508639978 908145608 778125457 265528402 814319157 718130957 350052588 737741646 416231630 988458976 682599464 10594186 610403404 450472721 672360278 94821312 599816846 125425056 358678964 450970641 934530208 842867861 139681040 93447448 406960900 729273525 172395813 26210928 753712117 830990605 344562111 146832104 257169055 864804504 572202956 814802136 737109679 471553315 796373586 881933291 466645504 671163294 591580697 366566359 133998440 163246901 502738404 632721454 162781722 926259432 560612901 959611846 68841369 338735926 78498365 754394779 467661570 327032598 376850097 388475261 377911361 368450528 186320719 726933680 191356362 245633042 374595814 384945803 471136827 634680492 490715513 880766198 814673994 829204959 533489298 728379262 460336928 612750081 857745039 492835763 795317121 2180262 421869515 660675184 785372166 909581706 480018539 692877992 430513063 472707569 130294000 63548896 956618114 586592629 385136752 358565953 597229541 85198344 552730730 237325154 44788477 784173505 849497139 500908046 611865542 979027382 69025861 313180927 801277589 828314381 305634685 905120539 809958105 250496328 732834921 287130195 844997807 708296220 478766401 388042749 825645073 572709528 275873067 694670032 54996547 188406860 446881241 392765290 433727427 240775818 898857282 599597094 23261314 138680343 212652327 674099047 142084270 397859034 898972936 483452295 343580710 769392713 849647138 561301395 558220428 844576151 117007546 635098916 565946858 506803763 672130252 718975369 622995401 669865862 782787252 827359478 307957876 795145692 400996902 820955089 513232232 737623697 347582214 329548020 853065726 711407659 686654718 500083027 150306768 282940815 787265753 976536970 776481194 304802071 238064983 265978605 779776918 57677548 32814203 199152853 23680450 719642367 130922224 60567512 770497463 117575239 555319122 579225678 690493470 420646976 822674991 143710985 344755941 809334020 857297242 196033681 1607087 695513840 634097387 707455915 576837053 347536810 250621193 394135621 738490317 340114508 524688933 300579290 823647627 733572347 115487030 90868812 261640575 316719954 117754500 375299436 175174439 867300039 176892282 69327423 816587135 689154725 347884838 240664051 542178245 37457418 766595893 481465140 768433773 411292184 835516765 807414109 646381797 965398841 337324325 813194502 91739982 309364136 221888544 787056180 732642571 34512671 893948254 90919489 21356505 767435029 372674026 461389164 50922389 673704566 350912462 178918126 712928520 471119218 473399252 577637316 47631730 197156674 811539537 399903247 223343264 561563652 192984093 870628894 345892214 673289437 637421231 118978465 189035972 650933793 130198820 595904210 740572340 4760269 658337084 983635400 813115079 465276124 759431969 562550621 973632471 920060445 926163123 54108796 541897761 409725262 693404437 143436727 372733014 494501325 870054052 200717880 805194763 751870063 524272082 157707642 497971295 977938090 830992286 458144368 793138747 390745684 274945880 886042861 972299409 65193248 896771205 391738178 790969685 623200691 39655246 989733658 213269461 765060276 891215843 361473354 658372917 138098539 235183643 58285834 956341706 223972737 450222585 147584761 410440141 387069886 160324610 517302718 127402164 674271416 927044455 438350545 517739198 527861675 964192027 265782557 50626410 96912364 386510089 117612815 163582911 8203636 239587300 17082629 880060813 306940227 818752279 267838815 6727572 527084798 996930165 292218280 947644806 914096568 153459087 871911101 806037519 94251759 356790614 646550958 486691760 730610523 912707727 57486249 655803894 974678841 147899178 782546320 855765849 715623073 683337846 607840615 322057419 722559795 443326958 822936452 466514762 447427789 410399855 102366003 570988969 23682370 687606935 367190277 63514894 176774320 100272210 850943293 626808748 721257647 802581941 251405156 642069050 765827144 503003558 957329946 44712824 28112108 404494813 692652113 189603211 66376423 529773652 39049258 477560782 302553139 283055156 622453094 361262052 131958213 80290524 817868757 120134510 674258321 978086499 590255072 846209806 662790402 439310307 253780805 933391865 679962106 682922544 636783791 845078854 874238925 992357368 144015351 687250037 600658287 758304111 60936673 122420458 181931449 286210130 576065405 100621037 620322046 743043953 152464931 688886392 69194744 514707774 950282919 794022449 503232050 692530576 600944355 184604981 264820313 719227086 394426355 761362012 154066618 427279909 959962415 183003130 139704142 352533139 661242956 39133301 25177237 72435699 581507824 393975253 231317425 69595077 624188710 279031652 314682661 257333168 497257798 987013298 699536067 57418910 700245068 365632890 335391371 616029759 968004578 333352814 189533206 554993902 576771501 381642334 561795648 150205730 506662660 846973612 944148772 753135734 165621341 18553449 521535898 442990002 525572472 630375239 536936821 479843612 316638478 188908427 217023016 552626605 230735632 648400429 365170593 295272664 755199673 837818440 595653458 223621905 870087192 483524388 583949463 341521460 362043498 146949946 673379821 731344011 776452969 491683622 271052008 780859497 683746675 330171258 592984010 446850032 680478195 367018345 156019698 156297726 929379483 562675632 331845600 406407601 453645203 135128990 773974991 508800344 570006875 214649798 887312707 744497239 966689497 862849234 852696255 619204153 725422838 356444760 476282550 827099742 241498210 229027996 52017514 281343134 257819654 650066203 539568621 224007752 287073402 52473248 697259661 262436685 615445782 650291389 803409172 255892571 806257956 742844037 747663015 414027534 749806349 428565626 851879045 371865527 41736878 6771200 531775720 664299438 99114230 713901255 311474017 150366895 723308727 725918820 130697760 213133725 43941380 49741551 121098321 73702672 194152447 943594531 615916950 412609224 953819002 719136382 181649288 31355553 123213617 260417642 804177417 298244604 177997199 700499342 96783417 1255884 653683424 34840822 894600562 136486078 711084631 880335618 400780642 239488463 778322793 841446177 8443575 710845503 991261370 308814315 616526826 492839758 949267900 726049451 120039523 547474913 669317790 623994850 396462703 568721732 881524932 831364325 46092002 341968216 983777234 648428105 897257726 593819260 191400497 485950295 482967794 731861573 34536043 903105089 645513487 978613679 532833064 122656883 283869504 223053915 140676530 705408224 777641283 150529620 726076776 753670156 242075196 909054956 327108833 564424497 78603313 115164056 217031465 124799005 717903793 696313548 272114310 143171091 780901581 356652404 312446415 104827613 97058594 60182484 118734538 379948922 191481862 319200658 920092368 748062473 419409215 867341119 888054131 662364898 101169068 636398086 98049696 65650235 113147777 679574207 711547049 712873654 527530033 191151264 23087074 742607307 420271513 800735257 20033010 499121172 980804021 831867434 65970952 508639296 94942896 23735340 223195055 862358451 588724063 558231788 38510712 96277338 239627985 142049843 308179695 952633341 510182981 137586523 84368416 47832030 64540037 306859535 273660792 222968006 368045010 28379255 673492181 468882805 789322021 381947726 471920363 426529457 336967119 318471879 158858974 703312516 308328000 536961801 228679104 857300565 900371572 612120283 914741134 265040137 834032428 295548944 657558809 734403288 743274746 36501708 956429147 250410391 588285156 746430146 408984091 652876872 408012163 230736841 906974421 942930859 349037835 76930283 611344925 689976241 365005651 817497140 285822328 504625602 983734328 336604078 595937197 240880909 965905144 658380948 501543825 67136916 559130575 982762301 179283935 652439649 292957136 72002350 527400163 877496199 575868628 473097926 214119107 659561041 707436072 443617589 11802247 928356882 857209319 570810766 383552157 496315792 981017214 611813633 681926910 998417363 31551032 747395442 49453309 705279319 425224276 839900252 583510601 361603313 919004433 505162199 48366434 638873093 538393233 315375345 665390643 979137428 508109177 629929995 903845614 120598948 454140539 323023781 907088023 609957107 695086408 578324796 942251688 125203610 111210825 899417113 630136083 272594892 95458123 455076246 391501991 424680296 789165387 897889276 438068666 572123055 496028576 251523437 500194341 881204804 258067910 885743397 992684504 841485915 270318366 102639730 979864236 671406801 729501498 420268766 383701805 842784519 325461407 848020854 163184226 82937563 804701103 57973493 881838812 867889598 200872408 110367835 728579621 557672364 230320673 761189694 201653032 579961807 326023194 395068080 988110657 50208425 754238342 562329751 176435493 486099237 46745936 476899276 57986693 595626746 311274889 736986838 787143831 44390965 102289394 675601617 243784434 431283050 27787648 692388656 90691065 542405204 7444826 533710104 766832275 771250077 496639680 432230147 74614836 127287693 310056935 64716491 445119382 463140120 303131883 382506071 960149819 20215832 238612498 892562412 733644282 211511881 494390205 337755785 886328258 212259059 719563023 147407137 643792736 104241386 29493871 354245470 780318560 452315261 642695268 605582479 327524839 645982483 811578185 301095280 574709042 317863926 890780151 260829530 334474923 635137989 852827832 889550147 355301254 313643093 534097141 481822681 338742950 86352670 963908896 104469461 483034527 528183787 612408870 247908907 449109302 282514098 610942644 428242313 334597257 331087831 313335555 899717844 166210742 293982200 186272931 486902059 273422436 935549640 964093348 507289573 12513064 250672533 548122772 565615455 538421211 558006348 539577794 605582007 899849499 894308534 560396863 833360496 886551565 987904407 487403871 63421185 43109535 157256007 232679011 850282846 550050126 610922359 301502839 250338704 728515320 219903812 554900292 92690159 467802337 835363701 190089118 420675880 841859534 313373692 326998641 810630362 170704553 414119498 673222853 128112929 806777277 234597102 222575136 852541767 267538618 746617356 212841904 926978304 271361488 339499110 647874813 569494494 906998745 972231957 867631787 582680837 622655361 831555636 589573883 96244022 12716355 48002511 675209281 798321273 550189677 299148323 453644919 686723868 90070197 892983225 939615478 270570723 126987924 799096600 988812067 663241389 864040198 786401997 537595739 763156352 362700294 634743684 795192820 815679287 767197641 913641717 327733054 506134817 674731838 35323278 788430034 585497082 903146551 778272393 62123145 978611707 499188077 30934258 981530589 548811540 135255383 983407753 320201188 423635682 934039735 511877026 676269426 364945288 215513583 242490203 666377303 615058100 936318095 490260682 458227069 216588123 295170650 393310473 726540571 976898801 942190627 625128939 497581372 255539129 182095292 39790384 477588614 326375199 899352186 528105930 498430705 968788925 952342139 493418639 352343968 334235999 558304685 321010139 591100687 256002327 5047305 93342560 174850149 287010110 552023765 606621935 108000618 296017145 427087608 415225216 502878793 739401961 151682358 161758527 524309062 637643172 302227003 852777474 724760188 612455900 457907297 608160964 561778746 977660689 299783251 653935048 147149599 293864355 796882659 338634727 871539909 307458078 662166032 96487255 110353680 909799735 195298348 518244203 597963432 364972659 551340092 236528320 359765939 997235267 819862099 142226447 644286309 274978037 388248731 228128984 572804594 370100429 123825546 571603252 431781104 957480111 667043055 528811602 83453354 730117589 557452327 679919362 42401309 643589405 457753287 249790687 270047455 635106095 499417167 844868955 194244663 120719711 214510284 878162622 525671212 694560664 394407448 782294316 165593423 856576427 432060100 98589218 384372586 223073934 786417532 338459058 99296472 932276894 483721651 79612265 31466820 275066304 130174807 833941692 510881437 579673237 38015470 878367179 713568299 353051413 993769904 671450028 369659846 138364492 207534669 915455212 485114288 309733876 415779560 807530742 4158872 917733904 704953015 219823935 42483919 308280932 720062370 248437731 379015205 496139896 281486762 399964794 743961367 46107979 382413424 871733948 67810418 927329528 274407525 906571634 751474182 950771409 454505602 158727803 569348477 734814530 527592483 444810048 684848087 831021772 419632016 447511382 760459638 277409624 12846374 249897370 283717605 168564356 682412930 431198857 401578066 997300736 992351698 796616143 852332971 469116967 485768491 46082795 160863647 442495565 671688378 468048350 636389067 925497657 408794101 870479668 381878652 236442185 167981526 490425625 137875770 963012748 506656001 537070453 638486141 169048380 998759063 986029727 518829830 21772700 148079317 855537208 726260723 887556855 216022360 621175932 802622927 864128012 246519506 519590834 204139075 196664808 779278415 615802095 385125301 999163898 730701987 998037606 191679817 553977343 994752165 670870752 842317421 350756259 123730813 943073583 955884263 683254155 445276999 575315548 31615940 689121494 839497890 574939223 669332980 577147526 649176959 873837536 493882603 382722668 535059260 35122788 758731919 335801833 676249294 776097884 601626628 539005300 726234544 38698422 283348378 746344141 249520776 378396123 112924125 180926176 525913765 380676435 318641427 851393478 634464972 107627344 47739252 474152578 252142606 400838577 342672260 331090162 624266390 900402797 660280683 847360608 733789080 624207214 143685106 114603667 888169654 62260550 108811138 469156458 354546879 683411548 456048472 784016936 586915855 197836706 292869667 356703449 865597270 824637125 927652396 51919040 326123491 155959759 917433225 26472005 640282428 661011501 364196432 939694596 356677988 198248717 763444832 71776128 26814659 886866412 16119506 962595847 197661853 815954257 460795680 950173614 722868442 420671079 131126952 159091005 431591439 204880171 658058131 982455807 257309280 565183135 290178447 605145442 647569376 94266732 982550059 197164937 226677899 29056553 349074846 211343869 370229692 788137756 750193508 248387767 576119254 895673265 29309229 264077698 716226761 555230616 704199826 969051246 410580851 216004594 525362988 253541845 13275039 607970556 630294335 822162886 339020987 460350851 75963291 127726379 470996522 370010602 893077929 170893002 947438343 156878124 535062529 482563474 723061081 778853317 587513845 175763272 879780929 936433886 350398904 815295769 428850346 183859730 582974924 177272439 764987654 522123882 630635398 469026345 318764613 124363608 112714166 963613357 773531149 23261209 13729379 739688498 703510650 58025657 701215374 991369225 110108261 412324863 548406757 945114573 944101732 326535380 190382872 414904399 851717919 257738090 649638836 626332381 568767123 777663456 261111723 450135446 26799942 741140237 768945589 985602523 713365631 88554252 35510408 256138704 798066251 586624317 217632063 402672862 872367834 74005159 956179142 915326379 814992418 171614128 479000052 967506912 871630699 499197312 200982241 826332821 438743367 555371049 161716130 419830510 880291611 496926724 324174575 129890155 548666725 261028661 238627306 740109461 435793739 466324140 249636382 314626786 763012174 49373032 112407404 516253462 269294841 633458378 691461828 27886077 260900886 880599626 777415499 974078893 366938895 726193236 151693236 133150923 455996434 991331013 900269536 152516853 3126501 349879636 313834359 847650830 122637395 534779330 163132270 253828149 472816569 8613083 114500383 171882238 430272863 287497375 954737626 802957007 328880798 843257634 20338534 983484387 911670060 187627564 617529192 687310419 478081275 331919300 902146404 367963979 11897863 933472171 990179263 85147190 820507596 802937305 753912906 211192593 43286220 574258070 550679988 879760948 695067709 626885357 596966178 652651501 542996902 66143178 395667346 364943556 260400736 668091596 991813119 227265821 211418722 455858266 589076168 821363227 824376712 374369992 345638098 934837300 112798402 662153954 231957356 492052473 324426349 711195110 200551629 368224906 23674126 37314436 125963989 361309884 554272729 747001626 776256842 412879403 395517747 345881697 850722301 857603434 435282605 577223390 572788811 376057125 453912398 868952680 170974014 121529681 24079673 303561539 73200601 219303242 714288159 773092946 270654060 258665208 815509206 704418502 897222136 189923389 332871354 441831349 520850154 920845521 240352587 888894322 99541351 738782291 646912002 155443616 254034288 660081814 472220021 454534792 896351547 476987072 406027492 231361747 764687094 32042140 542348276 281627329 899749574 677404266 665447627 594172895 339925296 480890180 931931492 545292128 540782145 860831236 778042120 461063979 514113326 131425074 757692102 523319230 173088825 294727783 400605227 414679743 144274991 394346712 787913572 983888488 697397450 13313958 307692244 977668979 604840296 70805499 201232881 785467049 14181 32596627 67624586 254103126 242075617 305917828 774662608 577071285 9142186 393102825 346254393 44367527 451201096 773442210 46574309 937881638 552694340 316231759 515776042 635772805 602205612 575117212 339557373 466863619 951094604 249386724 69201359 513906122 754408413 453576824 233362529 512827699 434526 905384278 868160312 48031481 930788261 453477159 333878728 222478539 889348766 427108524 855402944 547071287 616942524 574880443 530474559 698177291 821303609 901954144 22482866 365415935 205310947 397583700 254682956 882629434 143488728 17705662 253129612 162496288 339021788 274135953 139962074 766628584 320776707 912121895 770224476 647484167 705898212 870569209 657599306 370641937 386889843 420768004 478874730 565533074 500937562 293357230 851234687 16954101 818476088 817152795 659000416 644453249 590871343 743507025 646797447 18622933 767286132 122347049 242775857 961999600 191853897 794738387 661235773 230320655 204369026 308356623 14918768 995919576 743129718 59215387 239717670 886652129 504288003 411424111 138098591 330262802 654350050 309762145 944439121 717296945 488774625 395837780 343131205 423719544 208908872 133627465 979177244 819627013 361885522 850712039 958149035 196282915 437673846 736253295 78342363 545081046 871558749 566337337 877976234 916991417 687089849 450227761 788492539 561529207 587494343 705538173 322851630 661455503 737191788 20246908 260867379 421286612 101333456 705714059 836927033 461864317 907738276 250196127 892758281 972809671 723568705 3478324 504676276 752569988 922494816 624250551 258684043 788490426 609203732 542986349 377832912 350773880 605158758 261139564 675966335 186992566 913953049 312799481 980236581 693502683 598926543 39480639 598665461 360844685 245306144 585634100 387717969 576991830 290838378 501574479 237360394 416163588 617424364 960006017 619189571 974059683 717730607 563116201 28615991 860896477 690258661 554485883 461024091 368587106 386800640 272782901 864408517 639880668 149046210 839269651 398992873 451572885 690228799 764496948 498459728 248689839 392784605 75277168 219842920 924796609 674430933 181440997 242876877 923861063 532635233 245740125 216016981 60774024 926703651 521702416 178056805 907558995 374795737 868022690 575017633 596275282 732040889 31176152 17776791 365074977 916569387 760022339 737460142 591027349 777919595 437555980 76230417 826108353 198726631 437201716 791239392 904010670 197609922 54411217 773633564 412187465 796122445 836851467 543327204 303331657 476235983 663046400 627859789 226896777 584014198 898191406 472249012 236517168 273087130 937165159 889475777 952469698 404839131 116760720 18407026 435453539 2066255 699418254 537580550 569957496 45814781 343703667 750448857 344911679 664967880 631726752 669529405 989534913 601186508 706984811 389288400 173103540 187992947 706564603 656831826 375004117 956120977 135081026 186415884 320016831 710303212 719193435 43493115 388705423 346630540 803815828 896165131 218464071 609449565 668451348 414229633 367272178 7077992 707006371 564190034 745890856 535409751 160332234 894022370 758208477 771386136 523670075 471304305 516948292 361082726 833093056 288813530 369900676 849246852 288735832 150965292 98851126 694433863 304636466 347588221 555388057 304522435 810142115 709884596 92713721 450461958 963653984 439606379 692937058 266747120 36937905 756342666 932858852 946766071 577353930 620589370 409070355 180436255 186859186 290821051 816294577 184611383 248409388 825963664 597675118 959217104 21116394 435884776 539446795 953342867 913162572 166486552 586512946 4295475 39150337 996046233 274494955 209629487 926306519 527039393 857747452 829839987 169948293 636589380 909567891 261246328 785275088 265303217 418206178 499109382 287489912 637590813 122146332 845379065 620636785 458222586 337841715 122856239 353733503 223486688 129578435 865652092 378955742 604081905 777429513 535104900 137601290 458899591 122482150 137393021 786624453 777569319 894463500 75587642 531806400 185296414 634866867 312014883 414060147 918651847 456123219 569785987 122127124 876130765 668555689 666255791 50667308 952334608 189324022 551654655 578560640 661224033 220078192 349659510 83056149 394690296 189750858 407996333 632308920 485438738 275196845 428176338 463595756 26501731 311463781 147713693 425965003 567232653 137071071 647834490 746946724 959907807 94260903 873684917 598714486 998096658 654261028 355894880 755246941 811929209 843508667 25405407 542254841 982673178 308540098 946402941 996318012 634008596 12829077 736994768 323246102 359996752 83828074 69841914 469282575 969431505 89241556 687074155 996813731 651054375 361590655 372015596 243838707 716453689 772429833 3242554 78723698 672949049 213079339 46611401 737904835 270972194 181700977 346372379 943056313 524452276 41129753 711023558 546387918 295102887 752571420 837100131 697783404 501564721 547217844 194002261 633488148 383369677 317306167 895095175 147688175 199471943 480141590 91193213 224314256 386011730 864666563 749361745 413762135 277984554 367788366 249893375 287175126 563782802 817394986 176404492 660649362 297782880 109564041 808277083 847980117 884588333 921763048 405577056 78615394 430792944 552232260 449476132 976422274 411085808 773315702 532778509 457301918 162105260 73702026 947796749 684377729 520405660 2714489 799013107 205507799 46620555 852857263 114551180 571550557 93454219 141941502 805855057 314016320 56529907 391417654 801305179 364331889 538186659 63646072 358102906 849632665 923924929 752422167 381818848 54811076 881827208 157279776 994035383 989395801 774132591 269770782 96125456 674964290 133942132 919236246 249567419 708696675 370798707 301602923 120615198 493260446 254976459 255214930 930234828 388247215 751119636 625266 521820905 888569749 407864313 294028137 780909645 235882254 227687757 241834831 653210392 957762442 560002760 151309224 491169116 717054376 611304582 530135597 792464832 296278602 327759323 256876018 401308146 531542506 716464501 559747935 94291231 786258179 86752590 679110717 283843566 497587038 775905175 196770057 853276629 304047696 926818498 744775156 602408713 161859016 819765922 674138538 503706158 413372665 444426103 793753194 338643567 16819011 554889527 792819140 657956210 812170361 792466675 446775741 475311308 108591111 367077299 251185745 848291017 27514668 974425662 343209439 606698009 336058310 421661433 727362311 161819792 711803118 705415915 944034736 397339150 781587357 286798004 117581645 147967432 141785783 277640163 835122232 701595374 830697005 303606504 913367438 10983609 633556130 75757015 772163102 281477865 96776637 171551333 527197311 122305929 478744117 309908696 18674661 161014052 123808145 581341005 194312244 98274447 916448100 357645438 96777332 153767169 42378099 559664411 568137166 457751278 67998542 24260868 312444713 150883813 348736745 881893772 99582919 970372307 731489797 712578839 193652012 485224775 563741716 522920527 621588257 580224773 945648283 141315857 756793727 702093314 11938674 925662314 198056146 454533540 718821049 333896615 355441639 286262249 641664428 34337874 615832742 308435568 596380501 125920614 974852030 46279235 691082199 605391501 275313691 267582347 820899800 755489666 616295058 970662695 442618161 712526148 750346002 231684115 887468830 428993362 268037244 990586058 405265200 517951955 565569062 389181283 555703128 616727668 558204932 194066188 75769133 705358057 712987209 303861631 408435084 73287546 44156110 147092947 747079752 352300557 791373477 700242449 788977040 474318571 214869428 747611068 291090882 148971240 717897518 509165900 56350739 463255598 368442634 642147138 521077418 9851730 986746139 790983194 63752318 401926409 171352535 28719260 599614863 368966254 950743448 190782116 593244532 611969355 802920547 459450060 743447104 577571921 965384772 675862612 801903967 41572675 666117610 959752602 966203342 950661013 566788142 822287209 324573318 663919839 58584880 684767875 719379863 850823419 102743587 981873957 747594226 427285912 49508189 758890948 715736026 157067010 84941952 274841609 3195430 276771803 893652062 258974572 196053304 883654767 916251680 457326028 221523254 501994856 933220926 762402703 563791914 6624821 56030854 864122504 67223845 885286802 332184748 901167243 352319714 58282817 759497870 854882012 662657927 891627727 114186006 280104117 845643283 86834999 468827256 826633302 948459375 600177629 195136371 930942831 565957567 72462055 512831853 52007508 626409635 439200835 525018582 261591958 341609282 138138095 931721912 474956605 295184763 601500387 313039407 248098862 898564770 871424868 610960632 618597906 888877991 454486955 146395506 813771499 977641296 540989477 317591012 884636666 600474385 443763337 940516508 170116286 654534114 511028599 826513121 41098548 44652195 772712304 127413363 294148573 762328701 725202168 233081766 299244011 854635157 829022945 72182726 417119192 544752057 400391606 555367881 439926520 81298132 28929991 254281912 204461412 724476580 696422208 584510428 278145376 556411642 469062851 745198675 169977517 308418399 595628746 728160076 788339782 621377692 795653805 220448829 839776963 308760038 957760650 676608579 409448973 740634823 533756935 691503599 469656277 615555508 605752715 323996501 308316057 542027535 196245796 949540662 350677578 126048291 381989014 622260289 780399080 507661772 550407742 411036720 53317428 632072740 354080562 175817502 132466550 932481167 14892748 164357941 382508934 564883286 156314773 372664098 212821127 544587466 554044905 968820819 436151726 498361703 443969130 666691153 438731350 907406485 554767805 783226152 671299265 568311045 333325853 63467080 269468850 190371422 405848550 277442186 248658367 175910304 408764158 219915584 143755772 575509688 779439291 626989871 193885668 722086905 154907223 96063516 716508001 481829165 742637265 620810886 488532252 250207190 34219013 379969367 894557894 739534583 938446938 475278654 117809131 174964313 12290523 112844332 56239331 665042389 954235241 449705364 341208431 935932982 456104737 880305220 404749485 379199198 865525844 645484403 572917361 167770683 357489400 307516993 921911026 416996295 263860529 873322218 238345277 251326510 388051087 948621858 748796544 480382796 802682817 677228239 590315286 413906874 272180211 168163084 835908222 934309864 851529976 899279162 289135486 541947795 187131734 83673983 9118116 203782421 319930518 929076001 555410751 129290311 877705025 403756821 234131289 994200988 866599194 902206919 286022738 465908953 250412175 312379246 425376320 47224727 738223196 846476938 650870203 600162217 624622950 881149096 485211499 295596485 623667680 434226507 186787289 598047974 741868427 120821613 115865051 421616557 948457570 825131375 472261144 572870660 442567042 674531223 907081532 65180690 309605403 317303832 148718384 505247445 912844173 316385320 45482059 698585721 103063703 770229566 176031624 894054023 130592100 181348666 794195902 331751013 960273604 933153668 527320860 480184504 346447482 588102914 544331024 68673216 89271733 51006059 487280413 631329725 552288959 667781591 323991597 495071458 134671553 357443082 455136780 992983683 524617960 888944713 304825399 762673985 704393887 108883936 377307313 928682551 238866021 799147278 585453336 607229751 530423083 658029548 290616762 108312033 681331912 447067110 846102351 729572231 873944126 269979997 603275943 743999306 969332902 418717794 667398682 178921115 515845475 847462163 427828663 545824534 45704259 644903902 731172526 837959407 215610620 576505969 77819086 918629094 252408588 110021508 924203275 72874525 111238112 566587001 896969630 322533254 769904003 671510521 90524263 423403050 763661499 764703654 568090738 360146830 216391987 85883010 506698523 5492685 316039001 622318857 901028590 281664170 393904258 453099699 771785930 509729351 27040824 418407845 341921561 939810316 426335849 336927358 185054059 96776163 395887306 380116744 774155776 233794451 463909313 468926549 377078319 538919388 198589228 886774551 422810454 706493342 258768604 562243089 165632817 635858259 402313971 683270969 788614510 694057203 44013201 708616918 808416243 605173410 723078718 94829732 450252940 920762706 220718009 513481753 364829795 290777457 549075946 580401882 118041822 416832996 457681604 653088777 80142866 93791703 930103464 752426377 944441136 805610804 814131530 213972223 265910996 487111551 766735988 298525827 288323513 339558282 889690729 265785515 80997106 815299572 948349645 938395493 789334070 69356858 584505792 321551080 656642079 27163417 122594729 95765045 18843111 399763194 789480831 545225894 478616339 307938704 443770407 166764456 262715598 267286186 535939848 909166745 512261598 148787729 330435469 53877883 585732736 669314753 708633437 927586888 729721968 799912158 328762940 718878799 23066123 931165121 65529022 971788676 245985516 830426931 169615629 91294404 455429813 597260412 194465577 118563241 870726171 829413830 631128296 946875035 74627277 549610339 978601066 414821844 359233919 220046107 779137032 572115062 862085716 130499251 389478428 73397760 755879454 82815896 287452256 1988586 694275885 281180146 994604039 776980004 529589520 807706791 319268852 407254463 993587909 425678373 108252655 78625500 758424757 817874283 523982985 161482582 35051043 459370505 11485875 385445461 951565676 321849124 877834724 122679239 583394014 17478660 222671529 87074414 949938200 484157801 961205983 649974086 822019192 649459339 542833189 373913795 397912082 633377497 342400832 34422787 44651082 348967819 311427166 184955661 86485533 748675056 536173974 881266342 233896478 83423163 869897708 193065949 968070169 937809911 60359477 912660461 740998809 585108199 673768252 159639890 360635735 775276185 695485376 231208801 372388078 620400862 723434139 476925065 432650253 949933159 749640915 866934040 809559627 346582525 738996388 110013236 653696392 781600965 598460672 690622331 620125259 392545092 311195869 419052571 429567951 296767664 285380226 12351712 851730142 870581442 716103706 175380329 804061493 927355163 255572941 700203230 922223556 13641660 225574637 773106829 139443714 646664185 115194041 672586707 846549357 880363598 836543790 167101135 846787735 357147067 213374859 566157232 613770999 377556271 253943111 978327630 183689122 143414860 241478288 330066 386597148 525564405 411952721 730845420 173544550 566297795 80989701 582210308 325614601 932486748 795623364 545195083 937526417 22524954 301924759 564112941 231754354 431575407 26212132 416973985 309324309 297087392 240946320 82260983 141864544 225887438 16639583 440514656 644959918 354874245 819101243 522210211 206706250 545759547 684588591 733989080 717608407 384212268 617478066 706789765 306685222 560651308 498482696 916201768 680644313 766636752 852089127 704055335 287508643 952997194 800327723 991879219 73243314 955465795 948721868 608596221 917671990 269846070 182109742 450124750 250501833 945579934 304731427 718954723 86094634 109463941 532940166 372299037 543926185 647058043 693790819 803241844 317655327 169139328 141224797 255076774 379858767 571998820 227556741 218829845 336800207 140772058 815197783 999968764 767000599 654921089 544816995 76899641 670360520 252118610 933978475 511140108 798751825 873865859 558626681 498690569 226041140 63289504 21120084 89975820 440666469 269884309 928234149 447495915 200439632 895273963 94879794 905322937 40938983 762386642 729715659 47722268 828079875 51803246 253693862 408677505 63100242 514015731 433690558 903436470 569721842 970297426 918893058 141671262 895327172 648437347 197188529 293056182 620227137 581963213 16787779 140188295 87913256 473331789 867906853 120351704 897960623 180453241 665947048 428442582 725479102 347599941 580849108 630059823 895762217 175852135 204761018 368647671 86717219 106703500 469721025 738885263 184782393 540207084 291589382 382107794 815457290 394924957 172834154 898036179 119459653 10720114 895615610 19435787 388778072 233257048 544487438 988447759 247815860 605619583 499840377 714267705 734104784 183748101 28863712 924798884 585993502 336749961 405459659 736334119 350191276 205207732 189140088 741238572 186609720 779371872 12424627 661342584 172631026 677014856 577775189 414008813 865830924 496416147 426834429 230425310 659357195 719785192 99074364 855240783 12845126 725941581 995106777 25813013 103345531 147073217 158449246 860773374 747836164 460710464 579327682 424972601 544225520 14316393 831683504 154060484 980787310 74646912 640396862 41514641 782227411 650064836 453877043 623242308 911276469 20270433 468189386 114280583 469926153 394092759 578076580 162634731 169784625 961177969 854596101 645711001 744745010 456834027 195114515 502125333 784743604 318842311 751071635 679370711 868029474 133003364 876491590 433921293 304919044 878738937 387988749 863135474 586561363 55981140 704848161 124281320 710480148 353499061 883541296 129595653 375427631 479893549 856531026 747977802 864890929 101271034 268776948 620594571 634116821 806509027 352102511 150352505 98446365 193949317 26166987 761958891 731379653 552816032 795569747 725619167 504521626 193402055 89900410 353648092 842043285 875366640 856391927 358347651 426172950 478649301 640614684 972949602 582773015 689834447 22336907 880854495 742343565 834952116 359821554 901808288 426753411 650821736 536431667 177223972 208926904 969735153 858226248 356607043 414795089 236326240 331724305 915472425 223171687 27763502 461435311 172207505 532682427 701856159 810908678 671308016 473892553 413538462 245503430 369459002 115668623 969209719 989574501 775476894 846564848 846466152 564836541 405417775 75330759 872308871 320321419 322696136 231254161 633589492 924512934 617470001 724844087 56088445 447809282 162025396 236323961 963773458 889698333 980360941 452953115 932442944 918259749 249910470 269458165 658364882 646652973 633256832 324252471 796262606 410900846 540517101 986866316 696937320 781928195 832081888 555537884 102837220 874584788 425403021 997405791 506487582 532327080 927347016 85335763 573861646 465711007 533725625 652257879 502922266 347200294 881892452 235567302 421283239 611750090 544346177 57384416 826031129 923898507 325445828 759183141 84355211 15771530 789284439 509046815 428391508 775176825 885036820 969193946 605150259 497875006 30613684 140708275 177662554 616439073 518794728 20374888 740432193 792595981 25578780 361071916 225655391 315701536 727761116 53635214 749796924 658411908 816479497 37113815 995726168 743189440 969921539 39380868 852995135 494391360 557419411 373146984 133328953 759570161 670895094 777638699 429142452 675446393 507984697 741537444 91209876 603409189 271694324 275722698 543190755 747502087 510400942 340530369 575427224 531406217 517914702 789672753 936605362 958271675 16545019 799874859 658846970 733004372 609638331 937867004 942913524 524437913 92735773 776940793 501264462 825303741 634285740 825049940 614896405 782977750 342557522 365589419 749915652 737808613 349568812 397265129 473445560 460609961 675671345 364752276 482724228 394449805 54672730 519312255 149480694 282194005 946562393 739730521 575266775 4028142 985793030 638413027 454556194 305853698 277229283 793361236 597980470 274260646 405611703 648614969 696824757 505463464 531190335 933135184 710028842 718165140 85458625 362779929 295508565 497883290 756200966 374041136 163366034 652731137 843341875 236806933 607276660 280423477 759514149 158076788 114566422 821448978 216895787 977190250 964774659 174433694 229625690 459515353 282267374 411406612 376516916 328863247 793518205 108018902 264240135 963192332 470751086 71799740 626989008 647696728 283319609 187449994 906579346 673583080 11866461 814046342 160036875 967528127 673706505 459478947 236107891 772600712 581238063 116897571 330611047 730649927 538358449 12988658 180714658 351418227 657485949 14639280 594969564 34807452 674840470 184198556 680852621 291213935 37735091 330104019 766790906 934658153 574912036 114798085 986473123 318059999 530260758 876273719 185629573 209145043 330955495 742022255 162345638 600466445 978038698 503028582 31685497 405634470 910949404 651065678 312549920 483968079 849396802 996807139 336615849 88385325 38325961 216028372 712456876 763411670 279450863 384446760 900921436 497772782 188814834 8397796 443575903 645646471 670279198 69191051 295758496 687305297 583430960 208960873 906792065 423965659 389842488 679325493 411055384 641447226 627047364 117322518 985474124 224086379 835508958 102048540 181484877 448482107 975087937 93702283 810207899 207414054 111515201 470126889 35685284 864617550 547974374 498481261 202125915 671264061 231560299 576717594 629576272 665567972 765518963 180734011 661856838 750771179 730541596 592674021 232980783 469737319 497878896 948723804 862873034 21341850 245017678 976214938 615198750 518256863 46434817 739645050 136781286 219137263 375727484 722849125 170093763 362608425 180448725 186241357 912167936 192215333 386165697 201934948 882124162 373466787 76510229 166493167 611998158 37888409 247123644 726970801 562120166 803991894 158108198 748912764 267816178 269672953 211842280 751601759 337937313 559542679 142692804 892823070 208928852 505679861 213561881 567833508 931455224 710744476 905789485 952829497 556354099 445683771 356029867 483732224 416479916 161478072 138258584 625444446 234510623 505307379 920712017 139281692 890726361 187105794 22083128 948819410 548086715 877273840 279959999 788747052 956657927 921288151 528282896 381866240 785668980 652503955 525418369 339836785 321883838 970159552 183391483 78053605 132162972 526560860 740145980 359781132 939314994 63547732 991013464 877601149 531998528 165302154 18116404 278097425 452872551 16618458 437184401 113331733 608020267 599898172 850496428 933364333 686267663 671361949 996665203 388314825 266879442 383172487 991826715 707276248 275695172 143118920 921765881 431438323 919945617 666870405 149338939 578926108 399034639 395717006 819925946 982646592 892556489 948698120 484992841 562383286 611098059 278431217 270035240 599323136 691928665 508469772 139946447 557579423 58398245 384065839 803481553 813557145 819223918 852602397 257860794 55195507 778482740 806465815 662916827 600637377 362790361 104483818 554000027 167360979 109873159 550753420 837816074 933886099 895047313 589638157 977714334 60945674 713530907 199284149 246755584 971244869 520258033 754987530 262928947 679223126 173747393 384522333 356193334 777829359 256839129 980236367 772857863 4346982 494856377 449209927 513389801 285108617 624158676 463389287 759673302 541815074 691001886 134680639 276604749 227534159 645876784 204674236 876788962 806126750 405258724 564515319 217047671 861415332 196905481 880442253 767242329 407891626 149577340 850178740 868407367 115997104 748672965 2955134 965534154 193694342 565046952 737112511 639674504 342429982 120661663 777850018 404416733 59990746 772823558 275903301 606133839 870874530 262507311 437882801 973696533 979777971 164786853 307107684 231223225 296293547 1761140 434228997 637439917 981959496 477074282 384781273 385405431 623890210 77014931 954527474 703026776 328418906 775727764 668676155 230147071 991153047 441428343 232876370 431323200 777203246 37487563 612901964 459733005 562569259 827664285 610292947 245039079 530549759 241350481 369674025 851987764 799214395 964026223 981186637 997009387 16615528 125585096 238061796 551191155 798668566 680188047 502335625 173320152 681551769 39694382 394875030 907893004 952570730 12774671 51616660 942119207 749799057 920373499 315616891 602459950 976131255 219259503 521853507 572511211 436638812 847976812 80983645 319419874 704458625 76261206 184922027 995829861 733327393 240392240 15126726 493321138 609039033 764896782 35023937 843735778 208775363 961176803 174864294 463592448 166763492 590045825 17203135 322156199 123988428 820812496 545793423 445852473 695593567 365276287 551776307 481070555 739699523 412757748 865094811 508409524 275652334 766002900 274596183 878966715 320364628 262683138 315917208 391873113 484365022 673208818 822431232 390004389 210047272 114747486 293012215 221553943 740251101 561249100 375350480 350408735 298949424 697344296 216186045 330365762 42055454 258077253 239117363 646459123 23679726 367282411 561698441 399225048 187421628 610846449 908562869 697657961 499587617 675393136 657541389 83627095 624886068 92251870 529422845 538600254 417707135 233988382 475524424 935128472 560501825 149102530 516585343 107056540 712231175 530588111 468320249 380848234 378179925 501395348 548787358 770150507 285100872 848173123 658544379 257424881 923106805 2110819 820832391 543193336 806350805 867004611 328109237 915462207 895631924 566173105 149582118 958074861 587362586 712630764 889963805 524624527 818817479 321591 379377027 786591935 475976142 990647167 709109107 199097975 311417850 268633581 974987403 771561399 982582315 64467784 953091653 830377299 470325000 791372780 993396978 196194880 26911990 957268396 857614567 486230570 480308076 512087786 277059416 150683475 549401330 665535752 818620511 66346121 687722675 146067143 638772882 164047055 584151014 716044902 705720043 376073599 798014089 519141349 767819990 401673318 307825331 609759217 709034917 550301421 617454030 651106971 135723483 291042637 424353138 549840971 388574905 476142205 839971244 791635272 730327350 860698483 205210323 965941816 555992099 444238278 285818118 318715337 491286469 599502748 628671542 455497047 837498696 32282299 28373996 751168701 768309468 658796901 587545501 915003776 733765962 743934847 412734087 643407785 757146567 809785547 930438370 844021962 390139132 42336375 571446220 285880396 173719590 693452609 355372829 807915017 517864306 586292606 349011141 54045370 444331387 792724832 555863277 163572639 557486093 392294513 381361268 668668607 473865332 516935628 5122473 600448295 621290210 263850381 827426804 273089338 823755031 28602898 462284640 941255284 161050739 501842946 284937047 804705391 877901676 778173254 944700372 762996750 140023363 581377328 878698730 731020220 129364577 942477684 519081789 22101531 331722874 437047340 888439280 877050717 721600150 35291736 986885142 932572374 760098925 278432248 59388244 710115209 234693027 4524106 465395458 887126764 667468977 695215211 250105691 959816145 561856452 590823036 987163985 966082301 261904910 93065941 312099634 286000488 30022380 725073397 458945039 920430483 870395125 577642653 177461761 172474802 9037141 429682455 603809846 94822634 37997607 282044400 103399419 992483778 271229938 115149616 981091027 563405227 553871619 541444278 346063073 234463965 63476342 664277209 925649484 754354550 772685962 581029052 844562792 917090498 615851501 196473561 971191695 912412636 745860835 690410440 486368077 73647011 431310151 706273791 58630013 876974406 628456792 898223356 252102685 272877818 184653956 725385010 161185061 669454720 878810514 154804719 815892762 66311592 740780785 458040170 16767660 618755965 710870240 679582286 472962396 502698445 365477376 130458160 547993734 679782077 662911080 766047433 673973543 211740088 915986053 788285637 706532086 202161715 308246706 470043267 687850216 596642685 882350387 704118608 855115376 108635412 768884920 320178943 407109489 334313646 43041360 944727848 81329618 758875435 969634615 196369960 73606239 766564339 147697844 32067036 75808789 109263860 536830262 356678955 620222414 17271990 49903800 741754475 696606746 603218651 573373082 784060913 638408648 688397596 771854168 732041216 876338228 911519102 700294612 555997113 589462690 799483364 952383401 593894498 626097765 916689904 320316712 820651895 613603931 966186087 527800719 123549779 722119987 252529775 947405540 313199653 799410115 857109503 504766561 308494381 714420090 954378999 780785206 65395 681700467 352044317 390566526 994737857 319429293 280065356 770153262 735464438 277868772 783222308 280343406 709476582 952297930 354861229 352293820 120467800 996057134 812064105 321196661 272418824 470844202 572274128 386676077 627981671 345644333 561261918 14529337 890954533 789282827 731731768 407659909 727096511 189757555 972076285 663620830 304878030 6602415 768516362 91619938 355784297 907186590 470888760 800064225 541980909 850151914 76481768 732026906 387939528 260748279 103715163 258521234 238494413 723760675 885302857 322321106 143614197 982782997 290474896 91232601 164137662 603989222 475029894 337449105 677881087 10873428 240892536 517232709 100262224 453781626 250530785 87599452 607075980 628480663 54979845 278067293 622068297 267196749 641884279 223282882 559786731 718911484 512763512 858094660 36611975 828521905 906141466 793284842 252240044 273340444 464330838 137807149 22828843 667278806 560996238 4943930 293808216 851215896 407722630 125998124 331629623 283262216 562960695 144277556 676059351 25980811 569833771 144438072 915293559 853389016 314397908 914353619 378612996 954314052 150279318 912309930 779157776 51169541 998652502 10459694 674883678 56273459 744584029 749972510 807965574 228640058 896517508 571738756 39652095 753918332 334059730 282629782 902569459 534271817 409797968 221970557 913654076 97238777 501120926 397859357 976997318 726997247 839334639 907726093 990583629 483013070 751631368 388172036 244384376 654997729 815445613 915164315 532372604 67780458 986021433 941917655 365405707 571184935 342219512 50057001 378473598 399365605 392276256 538810425 750875469 433476544 639692628 33308096 407242171 206385006 863380021 385770644 339009338 860800360 718151306 680847970 663668816 147392815 443345611 684644987 353175179 965545770 335443799 614998901 894690614 257255706 304886506 469199947 461551976 353797644 420808405 164796595 768557092 833747980 816915949 809700054 212774591 576872176 483029603 443654012 378551468 351252735 613267340 311446826 351633033 150658775 560976141 500831768 268044341 460261254 220841149 444834588 575137567 707214351 807246767 494925348 544360791 165982507 561465883 91488114 539942186 258346844 657593221 389092346 572551150 88632546 303705550 991551409 852546801 857781291 145984286 747451278 943686212 333315939 499480403 488053948 664626938 229788097 496486330 985802754 244886861 588443244 618823633 698627189 180639982 324532302 975249791 292294147 101065884 747773434 358596976 463745972 175801367 228258163 366303781 907164649 924586715 895664284 487832541 78575399 219816091 682235716 246075535 69770851 111518032 759535716 773551701 285693588 634373363 827042239 193449458 561587232 790335373 493748863 286873277 20059982 774893830 515718090 312786140 824675658 393024299 897538743 584695714 614050105 822561174 735029024 575325469 296848953 193914662 174556518 202311924 260122760 468695206 874030474 41635225 250730428 47497050 203614066 814583311 379723848 503636899 330716892 806161316 708242590 70288441 413783778 500281103 423502951 343844356 598413813 308643769 954353047 703790561 840162128 26333264 423703424 102236048 125718373 684621776 549402012 310843223 638354332 557751727 605399948 266343094 621859053 392362784 451150922 718894560 564279820 389633170 12829942 465264395 923246006 53102224 863693942 71113944 488830530 509222015 418142723 107905861 326702425 997224649 863656267 645310942 602573183 543808817 641150400 807787199 65190106 800196076 251616320 394738207 141882605 142684293 509773095 571857072 378715705 24684895 664178053 752813852 660711323 233176741 572798150 494145666 566451082 792426785 351053517 875147931 8951384 83242841 70967630 602467507 514330435 238050309 562684096 905017815 925140086 881456220 315778498 306133046 142638782 634407797 895025276 257297900 691854121 104647416 400069760 997846096 855495624 377317009 64862146 847584380 803220423 432285324 754955832 24412996 496928707 104543071 115896562 916551567 202807029 293952504 144971232 542784571 975742532 224918416 448667111 620511667 912725349 676351871 362522664 30550866 528172759 881964575 188050653 637880836 494037541 803791823 488537331 614792822 393862898 295535172 560925847 687081157 584126319 288978838 886442919 447202341 204724508 498974439 579094462 480602783 881578680 193841879 54907195 168750235 666755618 989829263 26335072 303634002 243813805 311110151 341035394 511606020 152532676 15025388 820930443 767405216 932717591 530463847 756838787 895447117 948384945 686977205 148592220 536661572 404788176 319627806 299983229 444019362 692319724 984151403 92763552 48742425 233928555 533393483 991685761 216725083 34941017 253910848 166066377 985047247 502189891 541466071 438052513 526874358 378429926 359040679 979617119 545145763 915655530 197416949 359608391 404605800 683894812 583350947 68178141 389202800 455338474 698730228 211033097 749266730 694899933 904111625 181910499 52835971 366243962 536840920 812586201 649434350 894664627 903940968 765113779 153860009 535923818 351705687 137903230 479994455 297190845 871980645 90727285 949539526 787327038 959479043 343188179 167883546 843203506 494568781 591322043 314017146 59149560 300302085 560885211 813223033 72066941 319861461 589838807 566951780 191848376 880695142 666960940 653935019 544409168 134500165 526531660 364122139 758613703 125625234 597363421 713836489 353614678 901361286 572903678 637195154 800346061 490383792 658739773 964922881 938519669 674481732 110662964 598195019 548300905 320436856 284329955 597140432 399605277 343358793 778916055 43202184 846668329 526323896 393148118 516887176 638125960 356000538 22113485 337251017 509604816 763723616 389260565 156187058 771544785 398847727 197411189 443633361 685040112 385106173 908131293 877263429 957247683 785561166 865096993 970756699 34260358 163733833 525136356 940587991 204613412 924118083 166566434 42589509 249629005 936787146 570635123 24330915 338832510 825182832 489580141 670279096 457637017 111072411 254628753 532422393 667676437 271253000 39823716 90452228 311550808 652357033 433348664 345196172 234390624 714608245 391335344 674430977 679417209 441795863 628071606 379256718 483258010 267785990 422972842 430379467 541161653 771065874 890827230 604824282 262039099 468524161 257779385 565399530 633970274 683602724 691266820 562468451 28252895 331996528 87193806 785535863 394108621 614700968 999927165 530096038 464750183 427487126 87123070 856174865 556815346 929681424 899482389 940090784 671989799 781413402 311942532 58273006 551502779 371073448 531047473 735230836 449024508 296980795 874988390 739890775 340886407 620713504 136396512 592686165 871197786 642378528 662545397 885873237 393042710 399021851 817986003 473402100 550455836 687539828 667335082 541036667 444476999 147047225 938508503 387858893 98512164 144423650 730092997 198059881 665089780 97893259 719725672 325225370 888641501 680133614 25811018 102290747 543742886 838266853 416112557 61812294 9700901 816823347 363080261 940812482 398332344 731676197 172856089 229111786 71748494 742235122 461895194 262266326 864215829 511931997 336499459 939942795 932249199 791007801 271370337 90886631 53151633 75021887 598711036 3288372 373725906 163777659 719776221 773164549 63639072 348124993 922581146 544868058 96709688 31489353 435868849 420536273 904150992 563034249 378877027 515088758 378295470 905224193 385611504 589627345 56331677 700098805 226045082 250124904 924666385 492474119 922268893 898417397 669406512 609618947 913282427 163753141 12430419 364753761 281135426 364677120 937284844 568162629 969291215 120933283 561030296 77222322 65966477 231218095 828010331 175536052 376707865 635465533 328109 902473055 929120890 417395566 34166142 71766870 568310376 657622133 441105200 479587115 114749721 368888510 969752328 688034249 748194687 23787620 871987261 923604329 305436806 678494125 90802137 592082621 206795375 836299332 757646324 798930063 19634836 934766544 757363329 807804614 912630938 551467947 239871170 811773427 942443923 902085641 835609889 339295517 926708714 312755833 26385327 116850089 197318998 408634181 38081582 55826819 756558223 773756244 733431024 827193178 708509354 509615599 968745298 985710438 82571322 815683887 71676822 376040868 423065473 788974414 860153118 389588716 283667667 728367080 405864945 956670610 459980965 130477300 750860062 365603589 524252183 656185291 745391770 51987909 316204632 334609747 509930921 133353561 308638315 209390542 570232698 183239699 857941647 100166070 913820346 431126340 647497764 966613128 602499622 525920226 225215411 753402104 369863912 969599378 523242006 616020337 8625475 182586392 876229554 284547591 726084687 108598795 404486209 102864292 705266519 379812655 800421000 638341288 966835042 531675788 886789494 778926164 859953749 876224637 857762033 138937496 344896528 776903418 27913586 765277139 615630682 876194573 787820063 1151366 875837293 627662224 210459846 175799322 287890801 14385353 380216710 552492448 5505045 82150668 500738191 907358691 592948094 405982167 630262338 988007544 479374365 73110864 894075788 149367276 138956100 664479398 305080612 312365196 976873363 25030307 423030361 527523561 86676062 342804355 418845670 77756912 161719626 80053659 31806183 536141929 104092166 647055902 303160513 469970242 422996605 998410346 803986558 43510481 214708190 645059522 703641550 866474131 464410820 695693671 439191016 449357124 931517495 909534781 396722519 641549941 346038713 143948707 601171854 351128442 712051884 203517676 195834730 92824302 202444390 545641582 127688641 209453406 794945045 466208804 176111591 489905756 911315921 338984587 981948989 113957262 391039380 131530270 612357724 665544849 343218157 979901727 100175378 925019519 890019721 462138331 473388157 621654644 5872000 583815838 898708818 768643744 641491367 678852249 792151774 313568053 746084481 10799821 611225075 487367354 412373283 452261587 985413067 170859752 896762621 52662058 5562479 425475820 9944754 524987690 721544761 102668943 577119769 911100595 570547697 256277842 725279219 390392200 435202395 660503340 123182689 461119360 489247558 486723453 779654886 564390916 798158742 676041501 799357899 531292552 713182590 839737457 355856209 633489019 274739747 173589752 124608276 748867416 978875635 540329762 197759541 744648773 330246279 724796459 587648350 170068099 794285170 910313284 819612011 860773999 309492392 43488412 209205582 675440739 413366538 279909643 493893071 394138736 855396696 763303348 506147680 294068672 970367148 239399519 335480888 365705057 190632804 23264366 118108491 542880644 832106746 285491817 371406918 818167546 324086057 935169973 254185831 855684448 223327201 358602546 966785256 101466849 131175497 200800966 36214227 255302672 849431860 686096937 829009063 440510273 670534174 451647955 785608946 573459714 475948735 495782316 902938190 274025765 49410335 225603940 321503503 367599252 869479191 121515709 171988428 932759825 440550846 25701651 217431934 700194600 472723971 126285891 122948891 344090524 903206448 746576805 798258994 463732414 895045614 598593195 468893612 811264102 706692034 508318461 692993211 89718794 863914753 892721505 183661132 969056933 845552403 441981986 258828703 773592746 646264946 361789309 380399616 874119742 985839285 823305691 942345432 800964596 548252821 350457302 287470055 258406183 63838083 680760714 301239575 361179991 852956394 623438825 648530240 818301586 841865383 959548498 212189757 324523997 145342069 465099285 803492866 701006461 437037778 217059668 382320040 840342121 778381054 895850095 546416345 906565086 147096087 482140546 738296268 108984659 503230378 781111537 329639365 532198704 4464074 395661657 805009131 458986293 869847533 643001532 399187086 817142064 298363977 866170415 612050743 110583579 500191934 656556846 725304430 949119926 156042304 408415021 483423467 331010424 251481595 416589587 142010220 878912555 453693136 818105997 214114832 242614852 645530688 682407751 181610831 166679227 632079988 77002499 140086140 33915928 399965675 817226729 269269362 229465101 28426459 721527006 294207098 343087955 539996237 833993217 540919672 228599659 155949238 618816894 41282119 330984555 131878467 927708438 947388515 840573457 923915401 557098335 293977277 659852510 873230297 287924408 140891307 37261921 766307051 683450857 233188668 76396125 17493837 60917788 151521660 899686260 930189034 555292047 734005144 531844448 811952716 834836159 975457403 336295964 603143666 900203358 422497762 75420318 939516474 885675236 501010554 100473634 845176309 407746525 819634460 303447903 60061616 344688832 358347616 779444282 371230723 186695049 844246161 512031814 592827563 110524326 146303298 286601108 525950662 862978846 456778967 820933684 788625447 107194187 169082492 27337093 392616668 866651665 301746738 605992353 343737692 191996151 222170353 799549125 737799235 980688312 72851033 595322058 70897576 619144895 633919869 301146514 44985299 6050384 682272063 783054591 895944603 685591971 254466376 729213867 788521621 702856793 386472752 475444292 576597725 298554163 578602987 448787665 148920259 405482487 547769280 805962051 546943196 20739676 943929044 186317287 598698395 224983125 260265187 602146202 407694322 533580159 961612480 477836984 141042762 386265851 758969587 995262124 485485329 80459375 684777091 700769320 756948718 139514699 205865227 229381507 415499133 982897544 289430272 794254541 166920833 426914578 277898223 9620005 644096573 725419554 337100484 464064088 889110794 939781010 42086673 848174278 370025168 583021189 428075585 242812856 252506251 734759981 615394457 335456654 968891289 899406607 994721909 360882601 328391664 75179659 619805482 175898414 334360650 548492576 269000644 204093011 947666412 748135197 656957858 957524943 414145503 405713416 566566512 403450043 850069344 968046744 120334165 915257861 231901485 100662132 332591943 652527357 589111271 841362951 295735510 774452579 649170050 379180898 909761049 698514012 140110257 503442592 337574278 777085559 787410179 909873139 946014570 985333098 959440943 975618434 196232291 515182362 522822248 934146956 697526712 238726482 566093493 12672401 336506015 477140721 60342329 855842733 164426068 621729512 79470402 642728176 115377996 343931439 42576528 346854289 779266180 975190297 378557408 90426957 55447664 369409478 728848500 898831295 691292090 458307679 148039243 932766177 508401628 626547274 217206157 193437672 929470099 540096074 251158214 811392821 669011802 165677893 368240936 398104860 411005529 208173884 354177354 344821575 99283755 624835329 561657274 705501695 672641788 69710100 201379877 107303050 679631512 836256084 433354684 494771817 917390802 627642829 482536301 172938998 115165022 241984056 783607579 478642636 380989600 637199793 520354703 302623750 305794029 910552786 991722553 440757669 178207266 287884303 817027865 894358098 123802405 681465318 540227427 513360737 796754629 550682484 297807231 242596104 871500978 193660153 199489202 146039558 529082371 837727318 287307828 196535111 325645462 901908808 373463564 559976046 86509015 44082791 186450893 860113835 899071839 714943444 790011569 660571391 305413205 322066187 967267771 815577706 219085756 743795150 706464479 916728970 186617532 385004451 477483308 79531471 31813987 311064022 882782113 548041420 884548239 729165547 595240246 192926485 458117652 825271161 774480897 986324809 282107148 471658559 464482806 489269064 587944428 940807640 556616292 727514536 372377800 95959140 796525890 64760234 19869713 883168208 65581115 683835896 868572274 686424352 835289843 419884710 54317718 341598424 817486671 549767325 416544737 174018908 548362987 602914102 559691175 814169206 935207387 618773022 949347104 761693660 287097129 473705110 711516 755525431 245973677 236897106 181576494 297040549 19791701 893348682 389431351 22868573 553469226 411941666 108999096 544937614 794216452 30219998 538505563 251784138 729882508 515717883 348550347 443367953 15525884 100204572 477124018 24521412 73102681 176726193 998696861 651212681 860886976 886981991 540825888 307095209 790911812 193015140 985780462 770780014 374816682 829564231 550714402 513366834 37754262 715919665 232865168 272196535 469766048 346251377 66986109 950475892 542359913 885704924 151196087 203946695 892113484 22558132 155587495 767721967 206698403 424911736 719518422 194250088 663041052 292054589 33501906 423918451 616844937 434819451 753110436 424592195 884205770 819349390 541398364 387902572 792751886 226955145 806614150 931715806 914430504 375473179 334046102 426212309 481085528 527071886 549133511 296734825 922966864 576707690 912551385 133288825 851574114 61132105 514968236 96703269 270257904 721453390 992709505 341579969 428372529 649327844 598778690 212555129 317090579 576310074 655442480 402289923 601576160 231637208 599982938 293685340 663987425 288389683 900320427 392529181 763245140 674869634 335700518 986082047 49781514 471117904 937307263 603661000 885925448 55568810 256170456 798867146 548586175 72368484 474176759 523491764 718748016 915943421 999783623 261152366 510861050 753099090 435328833 31567794 365783242 828105911 771446328 320996101 963451985 531748127 376949697 964819682 481080263 852837839 418478255 762855425 882126935 112491335 534516588 422271009 387045267 26586517 664030108 10139110 687314812 397330570 873280739 490533680 237375163 832811245 358047152 348122265 291155969 622699952 827446637 388387324 809519431 818810468 692669342 820827388 880263679 71442088 855919474 233155487 972209410 196069328 974673955 43652826 931475433 446073556 995670936 305775222 795748443 31062088 713878041 918815210 688788525 901294838 820426131 260140044 520751777 738115441 216422452 832982750 791078790 312825599 304991004 207898876 497958151 535784533 80609909 187086657 476936744 925314176 697335427 966659268 372848355 300979864 632737505 409116352 527192765 137690942 708724089 808823379 775305333 830282513 564544383 864283973 580385606 158002458 62938308 29862963 59534160 244783320 6761054 378218621 821816736 90654583 186185507 157818044 345660966 129980460 631898073 221798689 108396517 349862754 403346218 388986690 139193422 568184254 222566766 852679784 976510779 263998926 228846307 594085483 42701434 173986820 431775983 977777373 745722462 959449868 163154991 53358319 490753236 354451686 542001055 9576062 379532933 305162846 989853613 398725071 724480925 808651761 129102581 112754029 5932696 320312713 468711254 36847351 393951408 966154416 523204838 282110113 34616026 368496235 974328855 510422241 147035544 658538816 299978483 599314692 915700374 999610130 52248585 274547393 522329147 451991516 469751535 660670971 938286553 895289824 55636438 760356946 556779652 723019150 232257113 973400226 62754299 959155964 738435117 669797386 70601917 235239343 934855343 369828480 779689732 694526083 421153887 24868974 800565712 605173211 155656679 493256901 938964599 10964366 658266023 226811924 235764434 808858105 870670523 284946250 937854174 399233369 916793683 370011562 234970269 948591070 453565811 200844443 312268108 905504702 283701201 639180102 127146313 339931385 207849876 485187008 370286082 707109278 516975707 867827600 237968843 483307594 184841572 278032239 199017002 181488601 214871257 60038419 376640192 376837953 405689550 356288951 336305369 973895120 968912943 333235856 850930259 825948322 725160737 90181865 671846655 467053173 665908707 667574617 208380966 521549183 505863229 656515361 459426610 984507539 731687980 466419368 166103996 672544632 438371264 305372462 710368960 777698985 327232425 754876972 743507936 610932280 306942186 856924520 161971686 394801282 713885226 190044946 682422722 818272437 646371578 141932764 535629475 336767725 767239248 675474008 106760838 164707044 603600153 374542427 597456088 366910134 393834696 795520084 297737243 423297698 266401721 810398045 820727530 784965982 862812372 373205440 779118463 811503624 829337145 224834537 298010354 105640114 561452535 168282447 112578934 838969099 624283252 798817201 574746871 304684945 615707779 178932170 763592537 705272195 988124635 994510309 744846467 891576210 985253001 688650116 204251379 45906939 22590705 637446270 340841547 764319850 924384354 51866700 58625777 717842671 733467647 515401871 298584282 744421573 347863458 165903072 628159109 403378120 662459046 904303845 286036886 446501197 38367277 999993971 930463173 64210395 908296646 636853408 277549793 387919852 899404481 288958985 15551766 613638452 423019875 382444426 773809207 328081378 733961831 413825509 441441244 971005876 952693420 799569091 838188885 66785058 685888786 621793425 561197216 580680349 445273927 548612969 617878486 822097677 255704864 246438855 298459580 213566952 34159698 840211518 86820221 86343123 471673298 333509568 244352918 929563087 264794799 596340298 663527522 21654985 204444607 611138729 316059668 862671798 179782498 502487862 984704976 623661725 789823440 363339452 295758723 646250835 29686750 526743199 995546458 300767092 402660584 114220301 496785886 99050178 543375986 270379060 697145647 443393645 242662678 18379904 884809216 510296786 422961016 449443718 558022282 731187421 708615432 196994715 52272130 647453135 490971496 171227763 523205951 760237938 600307569 604502997 784862086 425213748 387406541 580593010 916615944 271184798 755715482 132051134 848863806 94795289 134792798 486042611 628065871 574391872 880737411 238749271 773196098 866200838 991636030 271160797 174165034 523632523 426737994 831701869 502635329 60205951 670465905 381367692 352470528 45182699 925191034 24854241 89349962 271801855 57648690 769468206 406572304 446692243 158170421 884780870 647176824 351341436 603737713 477614381 342858971 825393983 525729327 705050218 446452290 468790470 619725384 370200562 894593318 311218238 438389548 385715110 650702781 44119754 697008358 442108797 909889184 195021602 667441689 592741639 812033709 321588225 350086632 270716010 393680942 493241509 801281436 830505750 756073264 964343566 183239785 790936097 52198763 329202127 573613168 421654445 72377269 864417013 584315405 727353018 88615414 782302218 836125003 254512298 151016121 975317806 624331509 710402632 126969076 894884109 599818305 93659569 990714414 245827360 18461304 494585752 879729988 758055148 534934291 10416268 979563807 507153169 733096603 389492379 644594603 246035346 647471630 735917326 748359669 530735138 40852654 802459879 615285226 369985187 298984759 536122440 903313146 794766650 874347309 74378083 287875079 809393243 760051619 831438626 70203638 702864105 450016701 58742323 947799436 857358888 613404591 477822339 846196189 453656177 809594051 626790696 555310312 118805244 21950575 686500801 635164743 497310492 243230768 303076107 546614341 881750230 295939249 534546560 890888668 27154131 903555914 741367461 683032999 577408195 742902521 56332427 53295947 94142129 946543978 313798902 759558670 69365319 911434463 915873064 936830563 933278866 299062183 860951805 741530665 4173139 878968056 725308982 222120289 278335741 377491012 80671381 906599500 197689613 364121016 680086681 620205627 293474556 751379910 478775720 140605168 341419218 616457626 526201515 831957202 650632206 713773561 377533989 959748001 404524778 335822574 214728848 8244160 322867196 337947839 1288884 430515461 832986540 800881963 931710756 352394886 97522896 17371986 528135671 890712150 814670116 49914708 214671397 35164369 265017518 985302670 934060997 254864079 497411163 304770392 214006617 630198892 456231336 101646798 493045746 982985515 144044630 198630859 617045289 240159951 621656755 255865412 375885710 947221855 648998546 880031420 116599869 623985217 223893723 828807351 245876055 577667796 712004694 410717379 67214479 873599729 427932652 490672629 227222946 961573112 938693350 189133099 830657225 913835418 317811516 222500449 300623081 661405813 215268417 345910289 204761343 285952925 832410932 350994749 696787054 226379767 5323019 206288490 313869631 650936885 930181292 878647432 229607015 802697196 289464097 431518840 995874448 410269334 495365251 293262486 554258933 61520841 989395771 342896896 247728149 168924952 891208904 854027624 125329198 428660828 947404473 889768434 399431322 685008409 155168538 672815864 36938173 41130088 883362146 328019322 863529364 67724228 736581359 663769457 239530747 852105756 250067597 670500931 100778755 578510743 796520636 856923333 799497705 852153311 741376748 993306676 115548001 311945746 531575212 762845733 184240489 212924114 943091496 52674655 44292639 204328392 138838788 799311418 392312574 893345267 123337418 888828449 239444241 959081672 503865088 988351750 745427604 383712573 286786681 829009955 117050355 187114699 977589915 359774367 984945775 535005779 107650046 560872802 794475907 103701019 603582522 444288855 94021958 640472378 684160272 788099873 512865872 275155790 35038497 864841869 445455047 360434166 729131698 558176087 880310309 344663662 441063245 766005898 684758635 680047083 207565940 605537175 445632828 888817296 698325116 548302019 381138862 37552938 472670292 146265023 130062915 591136068 908043846 346149546 963554427 21027359 509356025 389175956 128018948 176054002 81759621 82547421 583946089 964908807 119037520 741776408 80456346 664324523 738844620 195428235 91331969 849184772 912021718 466284743 930347678 189261234 341209131 663688167 293207840 845163020 515934079 185386396 476005889 954561053 155196781 899352888 307555257 40747004 136365110 475555276 973527003 202544079 354812375 428296419 69638092 66176549 503253423 118732869 119978887 163199603 552648474 860883550 237461295 987918898 725382200 477436918 825109814 518557613 708934827 517242904 160036838 645228820 450584471 348864680 416988212 98686189 142672793 182424054 597469923 847937156 496631232 890757253 615574775 801078715 57172365 792949258 832429507 894238514 6827755 278040260 221996677 784955616 101775133 657756062 61349069 769190610 995373553 487328369 629621659 34909425 636078128 93211256 433119112 85222154 946583965 683614862 612679385 509760851 964898304 980895445 257964064 808254585 647154198 177638218 257825488 849172139 560119376 637652007 777943816 542596896 435948841 434276086 956680953 845238218 388862833 555418269 392667684 661802788 868608083 520140991 112152882 565427244 79921077 439412361 432982663 264936023 90137024 319486378 726769388 201450582 996965308 658036199 580270080 886857681 862661139 698168100 525544401 35221290 760245076 526449073 792384290 647613901 308470366 157377815 458188612 526735933 798329572 273241768 719826192 375927493 430693721 723685365 695888102 952203559 444356641 237195395 145890161 554014784 72050890 188324881 774706276 122801308 870872549 644887746 981782252 205787580 716791362 215086399 772775131 638950957 772447540 770138374 650128152 392701121 538111496 740139289 674968087 526378193 452543959 68779880 635333463 25224582 684236547 859892150 916246584 377168556 366351304 200355608 758632570 379830313 412614428 370646707 991310823 50680010 361755822 290039669 551748416 369255268 592373619 560540591 131234938 900247882 988226207 762911718 373461085 784644373 190362768 857789606 137173654 391785896 898255838 913191867 525190243 662874857 312423463 265011596 837360935 860811580 885048099 363281942 776353504 842272123 273756644 169124352 927422140 747660482 739057689 229071406 401819636 397898589 275652870 49987677 509908217 24815772 826471955 847198568 491638544 330143365 932023517 13614528 500553024 965785089 736791102 146425422 679790196 303390980 272173115 222256298 77119503 640173601 564128086 57002614 98958373 395290236 153061069 135396534 630093473 898697749 820696125 438047986 223940394 913192597 828667479 920758689 108890976 123450994 953474748 794595375 981683922 891614714 881468656 872738524 752332753 739746299 168492916 670248834 352038864 201979481 740603180 808900360 376215905 431898308 189097299 980781954 66931618 811552042 445006014 29085628 211691816 670285085 607952369 315119831 521550263 408539482 332795997 237846256 430844004 938736123 580550503 213309758 647722286 282657431 152188116 990332599 495369 337841186 216353710 215456261 221274388 119463146 109961857 485631610 482728575 127233580 967934066 277063978 595295692 579966051 602273543 794741759 401696767 579938794 228220939 767932460 951952768 216503555 705218214 767306031 601825152 727625627 229280887 58817456 133440611 94494709 182677783 287085894 84701565 276644332 575633952 762670418 908494967 763893543 321255148 931118055 935928577 812671285 75585644 424395263 977367471 136867320 835019764 273433115 998853742 209910623 537463668 97876697 18501965 215492065 473558590 929589101 302282209 881491761 646331261 897052838 91611854 506274930 486661448 993487312 341934952 289212844 329768545 447463472 169684168 474022367 600212214 638789435 262002706 563075369 566197937 737029979 713390205 923151541 699239231 204328541 730701320 796829110 856416750 509104838 40631404 953546393 731955882 949460785 386656718 47865413 54252002 863649217 793446604 914577925 851238110 807093833 546357998 556664441 16075521 791690344 967325477 922998490 865667084 562070507 47768430 354919972 386216742 358072008 295050984 222232541 860961443 345596131 483207618 790108 465987523 760157618 851124085 435164939 635607550 590193441 421003367 298674349 503940753 487752208 403471302 352814793 258847102 192085129 789946214 331763769 601195288 255520309 386222983 905859691 833433638 924714800 988630339 920369390 284868730 751438671 67796243 479558527 656865236 51026913 668968514 781357568 589771703 363891781 512394165 762919102 576021130 848074404 698084009 504235128 321797978 765001303 138507477 300236917 742744781 372189727 565777080 674544058 114446360 198067981 627461233 892361105 336150752 574211917 913840358 299089279 217183647 955787441 867194978 469935464 766006455 629003969 506302892 590605466 185796910 267498192 469408896 661022259 382599694 411392988 8127061 925796024 813937952 651457726 338841324 954779242 138332099 860539385 272819458 123402318 369552687 340303666 157620892 2166709 498003741 7754781 229083842 194895451 484195900 812140024 854684227 270172758 71211526 215363256 177628059 588624165 271174832 8462253 52110412 396747480 443664551 606073818 473237817 682464286 233463281 196046883 924910285 392678381 571735725 467346795 114296115 184357237 979596737 457317521 414836735 239917021 898371008 75751863 173057948 231845348 7635390 143733068 208268318 480036366 685856272 834840449 236066280 66472756 442653481 156516987 247266563 565396290 954156335 83944642 898544217 578659957 714465773 356741312 290228293 833884799 660003716 832052399 533616919 316890087 168439436 595412546 892266779 518268517 396765100 531567680 395360345 200220319 667311474 951136093 990386516 979014262 891274435 921525842 243800486 626980990 950762352 67234686 21039168 366678911 769015979 721710118 682243000 947662429 202337388 632963788 999274957 40178502 952370406 547913068 727207139 971637572 19465275 558839288 919846577 569203487 939101811 461122826 313646445 249251286 767119458 955283328 655979136 132442375 974685792 355648483 503491368 410347633 902990640 110809924 23898739 67731624 792987493 216887098 616953512 593356608 704172689 490043272 891926724 130463570 226193828 976118111 525828778 128630434 322400607 489372462 856961765 877899007 629035898 563267196 605251840 740063950 801428914 190628241 791735198 446568600 966884125 218556195 636467982 439505378 55234569 881487610 506239876 36281199 193562621 757821814 145178517 191212237 260883717 556376988 717513010 510873506 475143929 312122872 558208227 31264898 506236482 816037878 639202508 595653656 377802671 320340941 166621094 776687728 630183129 616975759 255910576 739437574 394011014 789737792 498452303 137563820 276564655 486686434 324439392 237579511 283543611 620556289 20722428 389756136 240078694 943991950 385292513 328479631 489956350 235679661 699256015 840527577 26066542 395764839 809698735 65496221 510353462 161929465 409384518 616522097 563895891 590080220 15872366 449630799 111319586 609247036 763941985 690308893 810550831 167718111 439899029 798071576 960942330 675722653 305600094 3044708 293296008 230463209 774402369 37858898 195236302 804841560 505397819 986975357 194969440 129253490 18656805 644944767 607768680 760266017 643136596 746069417 303083914 899303997 223893975 452000194 977456720 887722891 792431226 118031491 780842811 673557289 484296243 331724198 983246248 599536780 815864186 314698585 782039300 327245840 942544774 859043483 840602019 689073171 415092607 799191240 513591724 784341493 75455649 902727091 820506316 980408555 940332298 49385449 933952547 759739979 273230406 390129811 317151768 693847752 930280237 356795852 816308561 226875140 784275949 211507280 828114313 763689006 877658517 632111113 71968467 220345728 670246062 915962441 503281295 369787805 965576717 769064711 899367006 111342476 705746178 316385606 415796628 1472908 551413280 741406334 251045597 35090341 445670103 531597531 874497210 769613225 491771667 387043989 867731484 113181006 335966768 270840004 383611846 183149127 189219635 282917395 819053922 516556440 966875691 823640171 991204559 753318839 906864401 479330676 882653539 203388421 737598892 364858198 152870824 300362024 853513971 678336697 540821402 638215960 909412701 896893246 804095513 165260117 215159413 682081207 260835923 349537567 273445999 893117100 400081353 84875206 604014807 827240402 412847686 364654945 617110398 544242899 750895363 203332451 605007242 181922214 83634283 768089932 831827772 308853393 137487992 887623405 580934745 297122280 915264954 810151751 397627627 249020591 460087995 938365231 204341513 434185790 926520040 825022071 3973042 667200396 880665861 89135589 889860040 476847761 805022413 555101095 284144428 233503093 211969028 781090904 608091125 777609108 256490843 954787829 578729786 380621183 706514422 5911275 922157481 655767993 84689917 959078091 631064236 596158422 724506363 257910571 123411614 362185561 817390553 509822832 69458772 51016783 430045765 904727251 588201104 900289530 426830440 851896975 735633983 672570702 978895632 750438072 86942225 907784750 362219865 890357621 441324847 476993644 140632666 845987024 665534736 507498459 172401377 261924511 716799800 885266599 179905448 286296540 822041152 148862315 796039605 348614838 579953124 726754602 186916520 549802725 637415963 203019589 782081890 746012030 948331329 15656744 666349407 344999711 404836685 802074586 934093884 300349765 594552672 344797127 721431351 746346734 484356803 524679958 111622618 138999857 793740031 374654004 268381937 29903659 363881509 722422912 847431191 469764384 289916016 498917008 276501412 591266183 859731259 605315466 80060753 231325799 839047790 963493391 904814753 237857821 474945257 235013696 53972579 950550744 195078734 52610304 401093669 502429595 337469297 743656723 452559216 315239793 651732099 883585990 608688592 671081973 413787704 659901393 955493030 871877105 135231151 954951611 379837177 632696216 838486323 259212081 70793771 425876492 148549609 545558696 614110471 168488954 357705999 207893005 429803252 469800774 274664371 59879817 684958200 506293296 254284762 723416132 459114569 1423538 444012568 632928636 99590916 469241578 709704361 274986729 325742923 469169716 868500997 427476703 543280936 972651340 334947527 331725526 369849585 358076725 81657954 60394521 478634075 392388893 656112080 813295698 782828287 459311883 505648943 972429070 696564426 112336988 127818670 682024655 277366871 51814780 125778200 713603798 175482737 22847351 988335956 820892494 840731491 211628418 690229167 989080727 596804746 593712570 608066639 961510038 490396986 567263242 569795550 984001249 830691983 825673329 935983339 908876982 724536160 817352571 350884936 102944967 381865288 841813299 749769203 678342112 6270220 29492490 199828092 55958340 327049458 171715210 793079988 501513799 508023627 377200398 809991157 50578137 630330245 65859611 935088111 307486902 669340683 112230999 44079405 122476658 179274959 925567697 752698402 900466 414745438 377978141 942913107 878842900 457466595 875489502 735163927 134174805 792685559 198947527 521869384 346248731 311375566 340004940 251067255 166428765 284507299 702521983 49104365 987810106 858767641 92172223 114502099 696239606 969421181 720392371 306662570 860840001 299882529 923493210 181757052 680465786 298480204 659496269 411417550 495824425 32186669 869499267 399851375 139058061 176408933 69338314 821079736 410197770 92631773 692429247 10215202 331694550 767671752 865034902 31712081 927245394 462903058 368032283 778881367 594080738 667986749 351097774 40430233 244822756 256527947 15030867 849974559 343815456 892453028 251743598 447346526 961481709 389986702 911231399 653799488 614115524 193859074 493490069 656236814 391454308 64719430 102049547 698129083 985686230 957059200 53534144 567622764 397380696 454427517 633568821 242843620 15421391 620468772 327454800 83403155 831783425 915067258 547396434 941855007 668125095 698126806 110709575 853195341 651902065 512725311 907009225 749098089 617903679 681535169 163698200 908704083 329250452 212204238 565627764 517210353 441014051 258612247 613083879 594388114 33065781 818119791 859103433 649463848 806263788 832178883 226283598 386463420 346653884 172879139 148169361 700733387 587659398 927370719 745998157 957029879 960245787 167444644 493741150 909503483 479216048 844572135 797202898 424895957 601643010 783565747 640264310 570246170 715881807 270672523 376536259 923530917 313403717 540302048 820387678 984161916 203133275 258709699 358623678 340094055 113183214 582092960 192809434 957434473 333807414 33456792 648804372 199099716 461633334 850115676 304685422 529778105 699009390 33892239 864066529 520696200 823550485 922860721 955467550 972153687 655219273 391402382 957602350 578796290 27858323 83243585 715575291 678065509 938492130 724144408 324626511 171909995 985742726 303883930 322425897 642262393 905885411 857300939 943581223 881896122 400064198 910861132 466335349 749041983 229160777 550489003 909885087 412189092 805532943 330969533 508683145 147044113 406193140 365442802 601761154 594630989 709144467 100833824 195596706 367922029 858936489 113405282 390050329 282752095 609220637 34101052 840321716 585797629 413786692 956385478 377126854 18983539 502955424 297485232 392628377 417561795 54256555 389412901 69516090 257802426 394582476 942983294 149177368 807521072 187812593 64253922 198781389 677371964 352864647 984044026 89347812 823772938 266230087 944417942 747625562 264671155 564030560 884908510 152772293 616210987 274781031 17099519 742923227 57038733 370086065 19695818 103006639 889967494 336469327 516275304 452230404 630240104 688853373 619770466 973422891 714811676 328571442 399026320 275656712 843827483 289519142 44591445 842244394 375529991 996797374 939669535 497522571 974770060 294566291 220662783 484943685 58255868 568020058 174210162 395237665 530830336 543038499 471855246 337730762 786647224 271298382 14682006 646529602 407884899 9023855 134000496 795759415 85854206 60314233 253602677 664362557 881005440 742359082 398079623 648070452 211613675 26358189 82307436 816934336 869646330 138331130 973715567 863218769 60260604 902152180 993247789 113360794 147288000 408618973 116265758 479885681 725445091 124320828 158576366 809076684 462246990 54707904 107434838 417838309 435197632 959076236 858514999 616820857 54444501 438992224 502174220 600714152 407287403 374586252 19212661 335426015 721995326 822431583 728776900 649365168 181261075 619670597 552712509 152523195 939954131 854928720 858237386 463351094 969898163 789695854 233888398 543866714 523856204 846028520 730213840 126455092 248781794 703754721 204231429 266112867 130484194 130792577 809320135 174913603 154100434 13983501 738756424 325680053 993852198 458543763 437459965 65010965 652687556 69122148 581026971 986338946 291883047 555857011 646266443 335027461 442865807 410651220 263183993 827944636 643161205 376984378 323432795 580291034 503783662 663289510 721960386 55587924 53705142 573323248 574939322 761105259 272338276 602895021 194673087 599764788 151391612 395682193 498240742 141944055 649107685 235519261 133962807 704632829 198798708 202960217 986505303 262752798 188248492 23127682 883800994 270194387 925636689 88605718 282270820 547923526 20343034 214235635 935537324 717264651 259403423 94567948 753195545 821630687 651544835 461820658 65290924 188361257 402054646 382850123 607602526 361957480 715680196 959040992 282452731 788302846 35977300 733201590 129578899 742592239 680368581 979052102 808243620 191580661 918951652 757332389 194517347 181611955 65028875 816377698 622301827 588975163 475183197 360226317 31446480 528839918 747404644 908432799 327261212 390198738 400989308 57549429 152808657 799775558 367268940 817058742 258435866 821142426 588554203 111122611 657488793 479314066 603274361 890217069 158816142 596368523 380793853 48440275 939757119 25586345 274020873 812062924 158863174 669781002 987823825 386536510 825471742 49318353 146967854 467478685 999610256 128414948 697813172 347641747 692784932 663871670 360682842 917498958 472668006 784466350 949197835 952566341 279103368 620532487 595339209 740243738 109337470 309350305 457812397 967316856 620344502 488452999 618699469 783832571 763008359 989416273 322395639 766947387 602953056 775977562 683410830 198501041 898993094 111894785 448419099 423373171 132091092 616622541 680621451 657360481 201430567 275831678 199425337 304799894 457062822 724198836 967854648 780233606 798803045 414449666 532624064 805860694 288732817 922769195 101575529 459816721 112017581 984397834 404647670 677183993 807753265 576066604 139061674 978806130 84257461 514358962 504455467 123210969 593698309 131823969 992044957 199377984 686891285 900396547 481434594 798253179 186998691 618416717 714259399 421112040 656349266 837732462 17250387 776330982 772549324 80691565 523696981 140299341 751407397 257885922 594168258 504829967 22422388 353088798 858284287 393391708 412313390 511241197 235918351 678059127 561031888 227602158 300752145 341820884 410737346 379299590 948230582 1033785 184586624 504700124 466743657 592519740 798739054 273327643 903128467 903179571 176056597 438986766 302689161 677401950 649793677 797692921 81234927 493677652 695564240 776184485 879682244 362245108 132972606 426993611 43839704 28717843 747143272 783612156 874065926 948224463 921246890 59486865 297743211 639768154 603820782 934868801 358189084 501201612 831506268 831439626 279834044 500584243 339338546 56378766 340726750 438368761 114558483 683855134 990219524 345682473 829919762 671043461 851569807 199817784 717272877 219117938 457626982 771476008 897995885 166371324 107388391 976112668 585394135 912129917 495287929 248896687 443753329 832754038 973398683 103227207 418911109 51970782 534648910 577135595 776905776 301436927 547329174 926020089 470617191 108911721 381495022 747516490 520265501 87608978 581128681 485787482 272735347 597250111 911069015 116626000 807583053 4215806 52428185 195400771 79729144 390890822 776728576 156792800 195447961 196646114 620437786 18215956 993648462 223470918 565039202 967952332 429865286 662521770 997886160 138696019 21592823 10386157 602440313 906400550 257691717 735148493 615445832 490066047 851999196 552027851 798793409 624311562 975609707 612774775 482488517 321764355 822866485 298207783 308307275 98198810 36059852 141166790 468670547 644874580 313437537 808363945 533336893 45950932 376313351 410975261 489156126 171643784 493903167 65628261 597589969 473412342 769547556 78080081 491553689 79298236 950896335 219757335 434680356 565648910 696315778 554067432 36094541 828094322 474722695 631627588 721864515 662328337 858062125 460315822 433486421 854790658 509704200 963117357 182330894 93280028 16914028 195242140 63382274 685252148 82448977 821818493 858250706 626461668 141082318 981569650 814230268 838206030 877297991 427822703 13698174 103875097 884634286 124067244 467006871 923780448 365550890 598028039 81785020 329626886 176893895 836757737 781852992 908424198 377189867 597903180 538459194 172403774 890011312 488002877 41261205 882355430 569148889 668868684 167534570 8859133 657445271 8599486 694390936 716719169 317585465 21873209 963698659 209815990 249818422 327226386 593693488 743991852 470819678 556465935 651758392 639593424 423765287 65800089 466821390 460309273 360671370 618751026 449811440 377181352 278253056 781354587 655462726 413699156 64394563 64141079 474143616 32725509 227068257 751239600 718806412 976867904 805400317 476173031 770926452 47412421 173594252 72313996 288421859 139158179 69228440 931916589 139509687 195299402 207268547 687693070 561964343 905740964 928731824 938010792 126504236 767675273 771559478 771032242 430575367 644384755 686511570 415589144 479202451 544291262 912426712 935672185 32600487 710291478 843403812 240220188 149397825 806326124 749170915 452048965 512584082 349620882 319000734 192609082 248773469 532308845 323508679 210508156 828495221 915523383 954961883 129851095 600792539 231178481 818978922 806085917 231481764 322661537 524166727 723053088 535673060 623666444 834891201 430115324 29539749 377699445 29752848 285228168 788572670 35087983 846826465 118012408 169698275 834702050 307383345 235661737 412773345 215786035 34427996 922785078 52811408 528432759 706992706 254607294 197192912 215733439 451306094 422669864 430852500 320395380 841416353 450056685 635084270 883310225 777301248 522292408 652254070 377555858 873500895 369396253 388858724 519656999 219923000 320183478 551414266 828084959 319986249 739500346 401369083 320317229 274590168 624445087 521863668 797336661 179108892 708710640 155557167 956658239 210765349 553665349 855163012 224672890 996211372 807336106 346648698 313032557 466618931 470338070 419284676 257654210 16490636 814987534 253428391 401191875 755987260 572373933 269430713 494156481 84000548 470344297 67385722 542574124 88386517 849897120 554284984 614054772 728035224 968720300 976254658 977518288 7000630 660082806 392239298 84372137 988542877 122679590 97694025 579237583 686846242 716582406 130386342 390459261 102105533 972109920 897097831 347666729 906105606 359672665 653693219 650965127 683313975 458227780 248364954 729306107 142585972 948822464 157626617 983856399 308638270 429188735 817011756 796123680 546107202 683689151 575411672 236754166 71799414 894984334 558595648 950257226 940041902 9911329 605302710 17320313 757300368 351189863 22292929 178473084 772803841 585233740 724424751 41722611 610958749 428397004 97040428 715236933 945965486 517187059 989151944 841323243 584586039 461800086 311383500 505892299 771956089 867822086 579016736 965153106 924329667 375056023 672791927 160896040 417998153 783065528 525113458 319125192 302213492 513289586 159649637 174085688 926567213 789632200 790261077 378554100 585465161 636962949 892464927 385037177 132960311 5871199 817558564 332688441 222176023 630755518 563770851 633813034 206295164 432389565 946031658 450342613 235727471 458010319 343165246 621772091 343384912 755175104 388958527 622792790 210753423 975101551 301294628 72616888 725385639 127417271 301967718 345208856 259930974 463379545 248363853 606352391 354973257 546631635 517113769 741589033 741886266 335655889 667463914 52094323 578751668 100720963 206680396 82802833 599877947 455727393 71935768 921681211 372393325 595364371 930536680 687023570 272658754 988878020 952210610 531966370 702832968 160579923 453289606 268327248 432717533 725422630 789054863 157695358 421867603 41355373 331274304 405649153 100362553 188041326 812172831 505883127 522116535 202197779 410074328 79463474 119559565 889392884 744438735 734962598 43333877 229790146 859181457 506765926 702724285 651242551 895607077 860292402 609544211 916006332 454371570 833803376 960191968 18255877 341380328 880421780 721782535 471857089 456333558 679631274 950197766 210746812 138898064 409052316 502865041 296285917 249247589 288867845 673970983 560335915 294965920 736181410 154237615 361408718 412687200 850881029 693219277 162465773 276174370 608451281 839493184 793889875 415965106 381390041 845202553 41052144 274326030 136368120 644933679 129567223 340969718 188429239 978780803 434543016 335336232 661711640 169813504 633724692 369078724 311231345 413638961 550391949 962653520 767577698 585222126 199761298 246571254 894548700 580529612 961240651 975936486 104805736 938769212 633880031 279395458 607195593 551053991 406073104 937771144 29977453 851041487 742825958 578618111 772460738 306838764 984314974 153075749 146500730 974110774 120528897 670374682 715019442 378368748 740185583 808340545 470486771 745992595 228259805 159103921 734229461 720541124 234709317 138332755 971722170 413104658 368278540 592197128 821548739 188603569 929892571 129373814 73003353 658984665 208227766 342986516 908691934 356143709 610966819 627055741 46947756 753661557 992982004 27693165 573233514 390143766 277062683 962637966 241505570 769608997 723742865 128146272 930488183 591419745 564031917 864818815 651404694 435359725 834675501 156078625 113860041 651793714 37460767 620614905 929952351 686256158 534266706 79263839 935816970 879579775 747751742 769229506 369735109 660247188 427307180 118710352 860205805 969245373 643147547 371683014 127218169 228261967 391882265 103178434 14601035 671633396 265977709 404313917 954592045 535146007 349497368 9375005 451793544 608434794 103060873 805870523 330292880 291643150 560502554 161852468 729431983 30922506 496913949 581622934 777022533 870443246 551451792 118410055 189460060 309803571 997549062 195102130 977941220 143851802 812201926 129334896 133952822 442173423 36424907 936117122 215227718 345094376 221373031 947457134 756233964 15847529 602945324 862119375 659342147 81584138 94948364 278951108 591660475 711376012 358111666 279198753 382140650 832542815 713845054 530405367 729013754 427439778 826089448 422216497 469537603 927403879 384708842 844374524 799662689 734448509 40202930 955039604 323750855 827852130 89440052 150659275 292516765 943959542 282247912 815560210 718568029 881105127 155417903 423290489 358794206 791914202 575643461 842954671 672904205 415046259 533897594 758582471 246716723 49204137 311718058 670689523 627986058 625009262 2315908 770403073 150087400 688322656 45162661 15385668 544349427 92669998 977675708 595099321 320554046 447614 31067189 951813399 705390551 506797340 182095788 172381190 621811406 771564026 348708654 63058569 559218898 952302152 170128266 659002976 5838030 798533396 293667078 551578089 254006004 445614971 279048611 529855455 739764594 219989797 762037162 423091882 413151083 638580258 803882445 652655071 693702244 661083265 163607496 587430159 617821409 715306507 193441205 560725591 321880396 731244650 28831216 339757357 694502331 492948631 338522194 710843055 505575451 837182585 576962442 355045110 653850706 542014435 192362081 310217006 716770739 245425506 828598513 908076588 476328140 434942870 618753777 21139653 243083920 159919816 605940996 260025210 299936814 774500768 156933118 972610518 623434534 735543618 303364933 702542018 748842966 58890127 115722479 919972153 105824483 417039539 69543606 93953877 422286432 246778885 121419627 91231351 894459465 142608567 813590276 216308316 864565237 523945567 541435759 611116160 898475427 645504250 149821095 39083243 317642225 41745171 429822595 507274616 75525490 405554011 822970065 58065892 841392773 128785726 255807374 220419735 159186970 498342393 860780466 336698559 491449157 554774440 134099417 903220957 54037114 134080465 335204781 432550653 134654954 55955561 972380778 464032096 539971685 121289974 473168006 175041987 623171779 243396839 187307737 716264454 422546533 814963228 643189961 929101144 590802509 170267530 511244653 628456081 848021731 121936564 751827146 778554008 717720647 937512290 446197517 169272654 927025580 935900466 520249640 754329435 502029458 346452723 680323197 438544508 245284686 837253051 886775030 672083402 989280073 10569564 94276189 590160690 376981204 374531018 658646930 528819696 188366215 785760079 593131392 536915846 992504320 649095384 762266263 346836395 491240140 493275821 879922919 518284108 38876585 105428387 521077057 226248820 131256577 515161350 810513393 427700268 569237015 159918121 279736705 887582871 876755863 852869958 389992920 52500411 803251344 138617789 938890791 102838483 584294879 380826111 963156824 68449404 185005489 715482574 464465083 605346731 86671306 71424159 321173020 985011105 76859117 80769761 407339885 976069058 534317577 457656915 143517831 814716414 326632810 335039469 232220823 98263056 97978742 664212669 95187285 630731754 301892282 58863388 437760475 149168452 577384805 79541670 156757294 147243939 62326027 520522327 267782286 334189966 133903281 20963312 635668981 929577428 47417267 91114461 704703453 674334219 769555912 561251342 965260846 313213357 321402935 741505485 62508683 879900507 625483617 84789917 432870133 94474464 729089868 375624166 685986887 499064455 237884738 746968808 649792239 345367180 154987176 261561964 834993987 295592973 131036483 163804831 875910903 358875258 275942444 808545980 920106848 316956694 11018020 188162345 71746850 870677252 260506350 868503228 286098647 908555748 194356813 615561946 856926409 435602614 446684675 86568155 492986099 63145068 820838720 274956355 694320502 305560119 73391050 125270348 475372966 803012980 329509512 161988833 108919495 50984219 261310091 609821818 982188835 622163435 159995236 415904246 960042937 707253272 125549324 190732252 998811118 508691799 666714030 168088591 52191729 96567424 539571133 771055300 139180185 908896642 851047281 794103404 441743353 480910982 536939385 471473839 214633105 785056045 256719673 643307950 763646681 779950173 772939774 800287571 917672928 299230199 768030477 585420499 597391407 167577696 39985915 182992305 77510802 876238255 609083120 27048260 895860966 280168513 133348655 789660324 660919039 635588449 568090880 387526579 387528964 427485256 4179328 944551845 893158245 532787286 718553991 52008460 138937497 983246183 970891037 157641878 774360489 106072118 989574965 425585826 301742172 177665357 257159233 701636171 725386371 757828510 944396711 930132451 175249820 97890159 840991182 312300970 344280094 129898373 331338451 838596642 665708124 274465759 951031310 478669718 823304452 797368634 479005844 751741488 629685728 30015236 799593240 382599449 67486693 294115653 22394679 715129603 883196495 519780367 3695435 923672757 235463146 139428650 360122301 463584709 611690231 515840041 127062307 685399476 712249400 663574345 695957360 907627868 147096502 88259560 12607210 450265602 940898303 820524077 259332296 74154302 881532150 735535433 530339264 660629697 933864834 519946929 552371265 965201942 695297375 417344378 614791925 556110933 252716001 321515835 291171233 545980826 538003994 20876606 329829200 406228733 417738688 447771151 547073438 921612313 902074775 575282817 780462503 527004583 247015704 254598494 970320914 540735017 987750249 17566281 601133460 777662427 986063625 385191013 153751096 909685886 991783844 748349292 350525402 50022581 196064304 403094462 612729047 301007237 406425882 315523090 160190903 837908985 154751330 138791229 509082327 55997902 428215321 121294617 638143905 348283794 935674768 573151640 350096361 360792337 931219307 918073514 301667813 557378049 996468441 315926446 535705304 373876742 491026209 560277975 762668888 83630688 375442238 560884599 67734281 726577334 161884435 466533101 828074531 87085397 738766004 750069143 459070175 476831500 69576529 479677667 907023508 243378169 895595010 438645324 667043302 425735503 173473132 26118152 506394049 740535088 990390070 421814708 966310357 352331847 375952665 703575774 888734098 237005413 187052121 714663585 630884266 780830650 276550513 991984546 131363861 967465265 873596984 357837454 691989855 484397806 188669768 261291025 391098429 849686267 672716237 711416952 467939482 971232920 271142744 941338250 60123626 641545001 786043694 717332655 41858175 181504474 925770974 217523687 411611365 314387344 658942658 368716333 990930760 115515944 248290876 615748498 344811484 471811522 509509292 655015048 216095098 962476516 480391111 879939234 16817385 612346230 323205623 519726120 459268318 205035055 16302610 128287034 554111082 912697161 412923515 127948714 118838917 688778457 527308668 862455604 112779576 641189330 330463378 473928413 631962315 378596923 967442135 244149124 674515734 874906694 262036213 809530493 301694916 395143029 64663021 475661828 697934920 394953879 445304242 643132305 91118046 474256387 672344658 500924578 330060837 60682149 349005765 758419687 770720195 483950529 239546792 471756403 973218234 796119823 476183517 139108179 776248072 255323685 41049807 181238262 177866926 465972449 953608364 195215361 844286308 11101003 206655721 342596055 612849447 538279275 855653954 359592686 362492507 257344577 215946985 442138156 48124827 52992933 260600587 854609958 498578747 206659493 970574827 287267035 918996566 596343764 552572589 524553879 964936025 477916880 961569292 648163349 937384322 957662948 556593287 893367157 289929744 333215394 401984938 884820990 354795308 910425559 787924677 120543430 744139568 552786592 468110282 965781514 86113165 148179564 507529159 598941494 494767120 402626009 636415116 545060884 653555191 458954748 402442793 156256584 760395843 496621703 521846122 962349565 514672251 342641257 709241356 349323634 676158775 637677801 347454919 512728809 869817803 458399067 835919202 652644137 568304870 310912578 372704693 881885106 92158752 569186493 557713019 764240477 772931967 322858068 583960592 755952881 33831764 550068514 691856894 963912752 297194275 844559587 26670324 350326626 847414275 419818836 959289049 850023218 556077585 419056074 618312609 667793988 195034329 640584288 847613647 981417623 438164414 325063199 877760923 230311255 947019829 300292171 192705104 606875131 88634143 249208605 810709554 789329069 595952668 835715259 406191568 692321141 46331180 726482777 970587306 953435422 587174762 17666350 719483743 889200392 574409597 460980651 428942181 814351036 665154022 204930029 197731298 909940729 691859218 837630848 422576880 271271457 341778197 496792832 819148864 279048411 560709655 872958803 191005202 687952618 206014155 9778069 679031991 90141112 298098239 746673821 894974442 344394547 756985843 150804533 249978963 630107604 591734002 787926351 290197169 204043452 43657511 857672035 5641561 949581652 200594131 735685002 980892137 360373525 199740455 568615310 506311794 621512896 466831773 477700109 496850895 763766709 216468835 182976666 105015672 322827489 761406039 858560217 611862736 743146576 10837124 684277965 507523712 763088351 628855613 243137112 989157437 551083804 898170052 125373501 219426068 875085117 113693636 893322353 131286860 659305868 325571667 299501971 331117353 513514578 777775542 733602312 72532890 747963215 84271325 274435452 152658377 83532957 11517656 961037561 288912272 359866105 19362009 375208335 286920622 105058518 181592989 544249552 567371278 51014618 995082828 886877321 705231348 357340280 536190935 703347593 478219185 147550896 191199179 898701134 998538806 553445738 452598409 516669487 452948173 804949044 631839433 500226353 610066195 820880144 874953502 759617748 16126049 202311088 91859968 369354806 889878574 522212286 612375636 715526455 13129537 607308391 558551512 328835020 438840428 557697069 933061990 155303304 465733998 247165499 116315798 215824769 797869016 921668393 210532742 897892869 931888322 443644237 250020721 389529665 390875747 987302373 72843399 945970450 831387307 359282984 809122827 90575995 378242238 394851530 443414736 990587221 224105135 227547434 502967717 705911950 13269704 298719863 189606596 458759117 582294830 558142999 990054650 915518917 871683368 1377031 274289657 837995453 301362331 764136602 434248035 363649050 230301298 107661340 811766177 823693394 538353844 194399989 621867102 180643685 806388537 43711940 117609102 534248826 92729636 963394144 258902986 826588513 383711980 760747753 51980505 71694973 765288636 394891650 707766064 212150361 914657403 830710527 606466697 201813102 302336252 414269493 229433498 130123782 623424825 182742517 348161032 566155282 533034740 715231190 106093693 273617661 597674309 80774300 629821010 168824914 966701109 373804593 470319330 278901154 742264674 257959046 602327989 696292386 432385264 475706000 144644739 606150829 309048149 579464731 664213265 399165628 323939767 258841245 786337312 740621563 329480902 646696765 803537691 927959523 477557793 650436563 727020821 180875636 408835120 964900015 780500934 422547621 885310167 776633267 195775728 154342976 747855476 239841645 762136539 867399501 6705748 339979657 64905882 942677217 793828827 770458446 47663083 44896528 336960613 631022113 775567708 821244750 674680244 959648537 3066369 737136403 592607894 9795619 236112964 34958878 459601856 885773341 101042368 450546090 222910539 549905959 103884363 116084887 877983064 886465787 196658071 34719676 665902602 848129448 481313264 280906052 264345529 831977985 984197791 775824128 663113124 289626761 950641005 272664690 33064639 710640025 206101188 509856579 481336841 669613311 896011333 643420473 24078783 670239877 58772756 787161031 589500596 206172260 489666416 648486801 138260897 890641072 896603696 663806713 364534965 785123584 827680321 162085465 522260862 534863079 958819848 16283553 809205918 403459931 337079248 25919810 597963448 313506776 168324453 846521207 285307850 478002188 175895546 565342224 59884652 94006781 807624049 774902008 122846236 664245064 254588730 581244645 656498916 286572143 455076271 569968335 643170070 410494093 625039069 408682252 355965736 876561666 761673184 641576244 637611248 303418902 231349635 343543053 441108004 351090874 781674275 780882528 986224187 904974493 897795757 680596052 966736764 892112485 602985510 943497517 596472219 202456471 876374638 3719686 127537717 431696562 55384687 209482325 981193391 169584194 177162893 757226121 843836257 256318230 212823055 106443736 463319269 624950177 688652588 446476807 679178482 976813928 152778416 970018143 279377397 423947425 652553640 693550474 223331391 270234700 705993963 401070210 649253237 900777221 366856444 244482513 548266615 776226035 55671496 961164820 695952085 831914467 720178594 463521839 548624711 314621383 561587554 220487649 781075970 539256225 607362549 129190247 623189316 413178567 98846639 415366838 532686187 353219932 372162560 924327780 714426676 451167049 261701808 105639088 489229548 760654016 496757483 812837835 646275757 216531547 340617915 179559910 984506027 439775324 246509154 357696091 575937668 860644497 333088684 870438127 826873675 474075254 792014637 855687621 200979777 251410100 762496093 871468661 292823755 435413174 440407094 797867051 153347475 32541087 698774506 825774594 874526431 755783765 998653869 616739634 889710068 557712259 106840261 460083982 525892180 752057102 280421958 667860081 667055823 516513911 41577774 949559450 769516628 543456611 901025345 10960644 116047370 287566595 851299615 870153071 298382841 878535041 935411230 49875813 929461456 559608159 443842240 422414341 569347720 22224095 555202209 614094791 367916340 381167676 362054431 264638207 666144035 728855324 3035327 711066946 182270342 954316965 174312709 602234427 781512891 678593228 207038742 573045634 190911389 750568704 265209796 525738635 775875974 536485377 567649480 525067026 416609961 733096573 744578479 116777076 939141611 376135289 724573920 564748097 877434542 20643146 906869159 624832960 679418952 219574897 320683642 549960112 467391720 226235555 256161090 96373190 567364737 627233687 421937197 586889398 525152861 858355829 5021772 766224074 725616677 602994570 866547475 195677773 959227163 542514294 707878004 116944045 186348602 668078491 182674463 324999708 757883045 974371921 301540955 614540048 483766260 345336349 511084732 211828127 362287527 300130906 160235378 888527722 61147553 922774732 38985551 394409299 799684684 153165342 472861132 598376429 448817955 519365973 402484508 546077007 924278159 640939386 949207354 714190359 134335785 846456104 243037230 992339156 972963938 914575029 506572987 258294002 355265166 754678245 18135419 178551894 81617473 163900639 53604622 964370333 414586824 767175595 13042315 902057892 790233919 962831600 872883636 829926861 37513801 387669494 890437555 108252038 948594166 917850367 63189341 355366132 366827715 277549247 900537286 151115857 312784658 778200845 957410707 520880714 321663223 747695180 442273105 880146973 435814191 567488205 430125164 535476150 252861165 191853780 511258561 632224455 467914574 480032004 620918434 812582991 351204422 436307693 669363343 79300755 359926115 374492963 20113935 796040383 456981270 832659298 701326416 153018565 72700271 924825748 135039188 965264742 498617663 667485650 642573027 35208085 281787590 740251575 952083906 508822913 599453435 73143116 43642939 710242176 812776823 467606455 332107928 288371416 354354246 891083552 344528114 971502293 442499070 729578615 327860077 554939434 376868194 3559032 242527537 328672900 11157342 652170884 393160600 907597614 639147413 428472462 923932788 744880457 96667640 27264613 146163464 211208736 262945330 588055289 741481975 773086736 1684252 922229404 936525196 482112729 966071434 336570564 677139320 183952815 477851820 933800783 177347979 572623727 996119987 537981005 397917067 345962125 550302205 343611119 125533045 382151400 251007973 240437518 656271521 325226114 937564509 255467464 669525159 264420291 767616056 887256241 55237811 884194904 944089376 729558267 231362048 416467109 160330221 76179406 47164107 251253700 235866508 727335187 98353432 15189276 331545085 77714181 184826179 77951926 475587369 757015550 215964928 680219783 441573684 413743606 155003041 575839052 463728356 530308484 551149780 348172882 988625453 864493228 51183453 952506393 983135549 220041224 223613834 817358488 252045115 966773120 442851936 362854683 847528328 420193840 786329340 21676722 301468633 447917068 457676464 247650894 98650500 426868380 989897993 734802208 517992245 467451745 509134057 62996532 158262191 374167740 646264169 511422966 420998858 843658708 199187343 120501390 237149807 900404457 675457168 569965831 221672008 761960585 605737742 261525340 947618966 946300653 746382102 629579515 831675547 589081491 63495183 89099547 247085071 517675353 241927962 947277706 599576556 35145636 964173710 693539769 674945055 668003208 35175731 893542425 643610587 96357998 870009060 439472765 22035107 99760795 826085357 384365096 641159356 650849672 772844390 211146731 108970517 982305033 552795333 299062423 66078714 473482954 333893597 10739780 960292629 342812331 220381054 192592159 420338184 627468141 948318581 217034280 179580459 884632629 242140554 899318780 992011379 308313812 634188393 940173835 967386974 677235797 591221649 525887017 387512230 401104144 799322491 890421963 894578492 963483490 135746070 835413204 89300889 252953787 653588354 199899248 460711777 933056410 323528881 204947905 290191218 597922111 886140220 140673711 439039314 203608855 86082506 917369273 48963632 55277514 976425838 711205229 863528283 72764847 356194296 43437202 444157565 200063422 928705185 702247709 581912185 491862961 806557061 409251683 475656744 763623322 325907181 544475082 390992141 245751114 770139931 860152335 214517701 73681825 344893805 803266958 861539303 53745334 316075556 876066218 853356593 496232451 907018827 764282508 112532291 712233465 353174358 453665824 425063806 526748652 465345817 708932346 32524682 662270406 660921838 581235182 616673725 49012021 695207141 719406032 712637269 635487230 987554756 369870253 570821685 390578942 618279556 488174235 573112546 204377218 226981729 341379674 255290193 930891041 237950454 715101801 96076960 318471960 360019109 975710865 849892953 217187941 779779481 973703800 15437825 323870255 918709109 97651403 473573728 746442859 325201819 920598617 711501362 954212356 753778866 403393462 274763383 374115304 989212749 332778110 917449831 115976111 401139962 553350333 729524320 336198434 557167411 152174443 251567116 818085583 318889235 400137222 694185146 347873360 667038648 909444647 687075337 643274409 851143954 608532829 248904934 299181590 857050691 726410967 975765956 488407192 821508736 301470483 626093546 326224545 921051897 651863013 816464424 348516520 177280063 472420372 695405598 365893824 641548251 512503259 646850138 587163074 302425536 593152380 308838633 743471535 603611030 626958907 170761062 244457255 105953094 789231906 464886696 160638571 781745341 263248989 442252368 167872830 619657096 776761797 574434477 651657388 333852456 573038949 214290045 763483557 525925543 780505348 218252811 73964606 683672334 556230976 596075865 877171460 61144934 981084391 335459437 571953863 462149044 495869822 225109020 644781838 905934213 13542738 175961944 29660204 281967986 59693192 127074402 904545786 775170158 755308788 659255022 933844894 263212832 745625475 830745340 32910873 375135669 738128499 967618243 649276050 346753383 177888249 13109587 963167096 771411224 865139911 490022614 668097250 774859110 131950936 623847060 678711266 661867208 575890169 111809012 664654331 194638232 43002736 653985630 499108278 246060654 521750915 628745310 477802764 754321382 848072834 346589929 412479565 403712343 769244500 823109158 678539757 196869330 65338388 644718717 331173799 404552017 332944380 922455254 718693991 985894655 647200051 69058234 782233981 590004814 156811216 147135644 79450788 587701747 986258657 864456547 764261977 235473096 343810195 773725703 911502012 559453196 584402666 615507681 915033919 844840066 376606664 818445779 830861219 124978604 34360084 142932578 892862249 376108847 772622814 914476403 447749393 351340616 555781720 782563424 10789406 790282324 74385659 524994757 697592764 563633639 261355422 709422654 909893680 184315871 140125620 72389157 730803110 838413277 541651644 606087941 121027697 141276568 194845034 901900962 422441314 572988084 441761829 1153728 691373604 252389429 395431176 947390316 275835293 793345234 241085691 605645442 183014245 192019274 68766732 12479240 445867331 331850837 770668993 486532553 734608188 354083956 538751456 671147747 241947730 524621582 605354423 258955151 496130748 989575776 547887735 295396802 512257417 856901379 405302719 761746963 293614821 716254410 541316667 568965673 399574292 736040259 792071197 798096103 456038021 954977591 666979603 543396772 199657683 972432876 70858172 993768357 432638133 802197646 77449926 472995830 866909461 661362827 617835011 258258117 144332452 382972859 463397504 287471728 481430750 263037346 199840733 414745150 269635515 350140677 463759174 751139654 343447220 401099900 149184279 242053745 474866487 874325155 219659586 939761897 954813755 653970329 86720961 915057643 434726380 217355597 546007857 210736051 653847176 890527198 40318186 675310481 12985913 267917957 390671796 420949878 353572568 439846412 424509132 916049909 62338071 90483147 694777882 35185211 174718494 379683017 214473472 81053369 430412975 867079777 404205576 573211820 882958511 731750018 373548025 314655687 175942038 664185476 876132630 864636466 578963744 543864124 214998615 493196926 385449237 505827286 86404227 93891775 347278223 341899244 169641710 248342874 728457392 89096910 64611449 521520507 217795554 486960622 65434192 526611362 971143242 421045908 356323780 761092243 593570885 995422773 504516601 607673923 872825601 582087772 654291122 262513663 969842989 727330533 841415036 389940821 798290875 477839223 458293506 121465499 198742769 229934504 142510939 658639919 152240451 545193545 190531306 626444465 99986539 548410815 939975782 487510278 445509332 566495929 483746204 271114690 642633424 56961057 574583793 136919649 162862665 643030063 377470325 354749184 154613546 629643899 804992832 623214807 921244794 724235470 401970768 778345352 654888640 595158280 711188023 277623950 485939525 960499462 94673980 372461922 312834630 506852085 623619927 954930855 106818429 940812596 238971862 69577439 152688759 156333329 852263619 962486515 318833478 922643184 244706251 656525039 745450105 87322426 673603576 528305794 822867916 568119191 366454650 601691744 5626122 901758733 977888276 141613983 894896459 285136636 499856707 764872658 589340950 930754953 57261259 235013963 544479611 105825536 702197091 383313498 85694744 413214075 636307363 422929876 944396243 144126161 184953899 768820552 57229243 619354949 714241252 830853434 247667172 13556515 564002521 545074570 833520145 535362757 612873849 908487158 942243082 641050915 539508276 580837126 249371307 209726651 982017388 872297471 53296183 792326032 997690666 146435357 622673554 1408006 445433562 914182583 938046586 243685187 823940314 813983796 100089397 588597611 825335364 404528071 218072474 892038440 972220231 127948131 854324192 980425017 970745022 320917527 237583889 975171102 319403234 896318356 462476431 934375086 562218826 6116899 820689481 625132348 135036164 317530204 38741206 906962413 169337908 418550067 773118602 704975962 489998729 776924077 102963418 842465543 706214781 459255556 691449902 276980575 307171108 851678736 736200006 110399903 189205334 227424876 143824656 710096236 124244121 944463386 856564732 365712669 763244416 396288465 857021298 566660370 676981591 696758345 35866753 509515314 354983007 717463721 489688396 911365650 692687846 494027273 177696851 487837786 572285158 849034901 607320685 863806616 314157145 295240905 443167547 767841601 664969939 505033677 516187684 759729878 505770979 118499300 620967903 899588724 433439056 575226074 590645777 165769960 249696579 194704719 631538573 269234447 439300406 82181018 612239030 184735837 570169942 688676055 694188597 167306784 94927069 581708860 423079309 681993178 691319278 397570562 424867768 455289489 786334395 543571159 494830654 501939244 462921473 72506165 687575780 511573025 136102899 109957025 863608717 534178447 868726843 797903405 215801571 695558410 158092653 821369776 949356335 821891296 329311957 968216059 861448918 55177307 5874007 285386661 39429056 206624669 185367236 272386810 150192853 594885873 884197471 81030814 686442948 118994683 9737349 397729803 766499715 831654176 357452576 374074845 66172044 489287566 983350137 337912444 47502090 467028241 357257649 796916861 256252534 255475886 178855736 110574545 601227608 932117249 203081170 996738192 693254041 97413184 492446789 390346717 254360527 417326722 700752326 223998607 135243696 967338253 484485582 189338729 915592834 233976133 623832818 171568240 372493769 175149296 355917205 354590713 203064878 396531503 405039608 397415243 773257567 299256248 251464364 993791959 177226903 371226579 931584720 608211810 378411265 202394864 124847575 604912421 578987499 84969355 451845750 562168025 444035 495316279 194563869 911965637 609430441 858167068 307878893 688588287 151840165 399869646 132996156 221432257 655093454 264036156 175796551 969613728 532781985 591705400 716140726 194508846 213869104 621186801 86722951 634156348 964249296 667959098 815231094 312926456 203533538 962874351 516943213 966754446 95130441 483515941 575605873 32951918 293118850 486991339 502405479 109273929 274882919 312681048 903335131 97476212 748451350 190504199 336561426 119436522 830927450 530417761 733752610 772255246 120257996 678807965 389282382 141095204 360586467 886792485 515603468 287735876 96871711 367214414 320344203 735869050 174095762 190032981 704535547 235250639 420207184 754769546 814629290 128108372 786233476 811393587 692788102 236158980 696925774 877898125 393661243 983083057 713644704 953513309 961764922 784241711 725024398 974018568 162092447 825727845 320226106 568804731 981451923 393569993 708775769 238388752 482332630 175813473 686792427 419756385 84621264 808803505 193649603 770774441 771563070 100304777 345189434 692816804 368966236 752285181 68153604 345233184 537521737 364377707 334261349 856550799 858039019 694806908 538111018 582334191 819383158 129661211 276460686 755289776 15780616 143775799 586502918 664067627 705916061 570962953 452057657 954715648 505664085 922763465 671624479 940961831 663892455 723096796 477878182 279024938 375015737 110352141 389778158 614164798 171442777 189201020 238018456 326567033 819110903 413405682 518078897 267490303 698160854 714597987 668777158 152515980 354514304 211244337 129579382 825297313 778016647 388192489 403799040 959334559 607267147 857455681 26071340 356011940 107554003 809941069 952899441 449024341 204976183 450156416 999617308 403725979 453156032 975702448 880355841 644149020 459765725 888778944 717672584 413738177 240280201 672705175 720287323 812623402 865939452 110211786 25852248 456765731 98239358 59430956 112745248 418263082 291536651 138183453 639151908 161639502 168553691 680453397 266668962 829888808 56820233 464818272 269535490 132611919 669855984 72649945 666501445 115117313 531341603 556247522 731588742 56980247 94585698 299431649 401775760 716773932 795013704 14655993 933592195 102899144 9067261 623875918 137041755 637242458 472453342 132830500 938080093 97640191 162184320 421125360 97460409 76129134 933747179 696226426 508309923 987847520 959201117 462265122 502788697 403982442 842925199 616057358 622885774 287050430 144599775 579551176 7595176 237765687 69632336 310845230 157457314 399793836 69117342 236090374 141659868 670671830 737339407 242107786 392494272 594485609 163850509 185958513 872607020 80401093 457758906 791070849 591019163 877819591 239500071 614376349 453219066 512219679 374396081 592433177 483471347 103981948 793011965 520613767 424675536 956187724 270858189 656792609 445648082 664088361 296930619 877329074 371818441 466653961 596827472 504365074 270345218 635628238 153090639 426656371 817134608 426429824 671379887 852447265 186614566 266666590 541041398 664565942 54763464 448051652 427090229 953492833 537683128 714491733 186999380 651830481 357391969 611967112 464391882 705301018 193145442 732494440 466584856 429194439 740052227 178436333 355140603 685764660 865921799 334070348 312836665 248293412 316934360 802872980 86881653 786358398 715705852 133202682 903234032 366042849 752079691 228277148 411821599 698122242 455537732 751774116 384787586 435578148 573944599 593971994 704378637 107948779 69569363 970126172 655668640 418829364 980821218 704757450 619825948 273089030 902920416 597957057 718416482 417643818 631879658 438713306 176546169 533499329 100616806 890966357 885842251 711884856 712444964 497989876 639265578 880835991 1668649 567366423 508273387 150957614 453585841 828216095 845218755 556399983 609903535 23661411 179623762 824170884 165601155 97693658 655799736 73989070 388092416 238968182 767437904 107106374 665686495 588163314 963994780 283262527 574470986 71286749 393105037 714424866 460113262 442517640 32397132 735807821 818772324 175227937 977298413 776340884 666514277 127959536 573037420 174968632 768712493 911888410 162249855 414435917 495186511 373227595 206190099 515345707 71987709 115911574 517625222 41476621 134293561 880911557 191857294 336166977 94184585 151579075 88725619 641543766 627049891 35908528 639164447 121167419 318807547 322026799 620225289 137667469 661184212 787175404 586877368 681672819 405021476 253998258 848778284 689146940 194741441 396088756 628099208 487918922 418876848 351684100 945239542 71202549 643673882 99625100 131761949 569709583 738808254 172161274 150466649 604564666 919261911 288055995 786947365 773288607 163885737 592823615 206047338 967496695 556101802 528647339 749893480 676902936 427704703 16516717 110999307 932112915 935436816 772121055 7738042 103194377 710720435 649793006 260487383 992804838 753061442 143709200 32470875 539545703 221430447 708775301 970431247 424305561 262555944 630673396 610427514 911482591 834766689 729617805 452218693 51314113 868298065 916409752 509706646 168562259 348106079 606807337 358979434 597891575 833200193 8744573 75737440 630527796 609312389 433174269 799472643 501102502 291792199 274917439 288227338 112862808 734234550 677052273 238243916 710690771 857413477 262340793 128230655 738124222 580836249 492343769 959421105 832357248 94022903 375592197 83396753 17359665 599512268 64370878 853959270 520650445 947608995 842740956 932351640 216976572 819102174 83759751 857140932 675488133 615791770 159927373 409163516 38156301 204051028 357231327 371737816 478503270 218904137 971302817 802420655 464891841 495438330 427794103 122674406 53865884 527514362 62820578 158211653 429129154 956140062 423489872 658806892 223005673 333204896 819475435 959707531 430116696 382164912 950290093 626451272 824640199 872343995 718964312 237138472 521071280 368732056 625788926 787637658 848517388 398641635 116908613 201885273 602543870 584858756 344069620 359340378 688976389 860145572 385738898 711162608 230722646 121319108 966953212 772948661 911761447 978845108 227935101 515172702 818878730 991251823 418191413 913116117 788944727 25041242 36781093 868733145 715180748 640895771 689736676 334437481 699647781 338971777 621305389 300950509 201863324 968335861 85346132 510177262 147995468 990748245 319238641 381364639 841037301 349118636 242991093 342510634 542378738 40442345 129033335 32465112 661914361 694593480 922758135 328050492 254273502 855382571 464859140 625662095 218744941 718197875 299454452 265575437 699750662 92106542 770990668 184180517 831663978 395488977 585688763 664604059 264906619 866344824 430931221 792523912 353444838 538431260 285222919 385672859 42374444 41417369 23149518 262449688 211200971 752391017 322241919 5518241 694475788 932979079 145938587 515607871 410546266 145018724 478651460 815442133 609187053 541618176 147890849 936828246 446753086 163893991 994431773 347464455 441526072 516137302 266219913 840178451 785397230 149917410 601146363 760415574 605586584 887874808 346667601 32655387 377689005 711729784 411043555 607073171 422000395 928280268 414753395 403034980 412343735 969762378 359954902 276795551 536600402 313653983 223753514 848557479 449792753 882808889 339260126 596164847 191176861 713393902 610131527 952883356 110028826 342890034 946048225 981940144 597920440 978837582 174984297 969486697 297639130 552792628 394593980 181663125 240056399 765008542 295419554 350592817 586530416 745198356 425704079 38787182 684082451 623265204 78251837 645821267 351318133 305883663 329274726 958364032 280449231 510109901 839864682 283839535 246701844 167955595 480279253 492929483 245676158 162143255 290447201 666519157 605590730 189322829 515345874 24831841 463541304 509281048 33404891 234800607 731426710 224574649 295774880 930592571 221644236 358469484 793120331 977906971 336211341 383065328 567314182 411559108 297921917 514820520 293285568 80745021 487430364 51139080 586596653 198724432 968904137 551133862 493464312 901284284 805818491 454051214 593112820 533272226 542763945 904997067 530106794 23434170 101453164 966021830 952243762 438017286 718203797 185876033 965252205 392374636 590179765 465514481 962191585 712915375 61754444 18270169 436413817 8104665 947872727 72417509 512621870 365629743 446428512 939113541 567163918 587374433 580372251 558919041 648005900 150883865 858337969 896072052 41714436 430537341 72753145 51990648 336779345 290561142 945394669 43421935 383846296 205672906 295441155 879644890 297309482 848340709 665844237 126802974 395237847 360574986 418459600 736602932 899825331 880786055 320472203 607095547 288871660 669902305 558868514 72267180 538864588 366201356 488944457 842597332 879870077 208834710 198020044 165214459 68068758 532082115 587153402 601060911 998504324 415582653 460657960 441235444 39316341 773412183 656215164 554553066 449914987 94968100 338187870 12477114 157547087 101531353 107091886 432628402 832402377 235285437 753255008 57500340 264367310 985081517 401426898 561412778 642690746 397361490 588768260 45194057 608104975 613403368 313814169 5970906 582743928 252149001 839842688 140182742 126868537 609155416 432903844 689231601 732936003 602525561 406888629 502575156 220915923 147083841 198856838 992660899 763071867 757392708 487164110 249146496 326642028 898515527 722221174 979949136 435018404 840421723 658148097 776108016 249631209 435332892 445814365 120114354 90226368 588786639 304487578 763563872 811452251 948511974 521323769 432797530 76203878 715666477 140401782 335858297 453251866 643826441 472078761 543231866 579726842 657455965 587818918 874220292 990345428 547018573 943708274 299708498 815484779 210181827 897385572 994413894 901534540 813335450 607308069 957481044 830545741 916635125 889266491 702660881 407626801 418918776 925249384 35823014 903932214 595206192 893341976 283224128 225461846 939966671 77488686 567313039 951525750 584697913 935681073 589045927 124610946 730323691 634328417 952756435 981529952 583153632 585098391 283756344 382318349 881838521 240808191 585599185 895886552 697764088 898133708 889200763 308011629 30662331 71377387 402641352 386035848 718742728 517119182 393259292 387027834 230324455 455422739 951595518 622672354 687568410 417853468 221416852 976849491 110476775 65034863 242563935 692202776 419480547 762369695 829828367 803138269 101757186 91766275 18584467 986399772 713719014 168455133 926845581 745193852 790050859 496611133 686888248 650645239 3768088 584705022 898338683 681368791 592668198 248197709 48878752 834431756 605956645 239586430 73975560 700166867 892312893 952030548 266193485 466403746 639553900 780670042 987520223 822351700 176635902 492983019 745003340 230425301 442696334 754820542 48807210 940304078 87189012 531636381 632974352 943856216 735131196 339908924 494215934 98027316 194307089 826018256 896959469 858123715 59824862 542909361 682427028 635124386 519317070 156707751 179476386 360901615 697474937 590040401 854716894 127891306 316075632 293428142 788394624 140802955 247962386 545442399 285868876 656290848 155757125 54427055 559166937 229628044 448989525 239314625 853261909 885951029 291010536 956842810 99322993 715986885 893257302 48570773 429144703 699041671 896743227 763867281 340285554 245172784 477096633 195820921 549783015 869286474 705860595 831619724 31310973 240887752 6445662 384520619 228263390 225975406 322186840 201731052 118813933 919868901 286571342 993160534 59884997 337689210 334632132 747548277 291634986 296946051 827607098 469055619 885810445 250410124 291387367 902737109 916283581 800648376 2905800 817487186 168430266 684836779 969077427 153675247 396381061 500933406 59083378 824456388 134671862 472300763 755225188 699166595 104162244 515160241 432691999 898038630 865986021 481603508 87995222 344987795 66705374 883095566 916576602 704009543 771896782 742785102 227167212 761053267 756267796 90533549 630093553 172988920 156822603 148888180 985720218 705712538 934928117 144655926 782425274 573350702 37587378 338004055 996422664 731874670 729195007 842047820 445002157 373748274 18410026 857835189 271849834 251703727 716847049 404136576 219789096 544467198 408431567 184941445 221058515 761406689 881909580 797894407 193733276 957530191 484748383 445904154 418601914 355941398 26568672 952766273 925925767 693652148 2075657 143042011 949840580 826369841 617540800 610402861 990965234 496966164 886398151 172604268 352288198 534655930 648381568 893202207 282605033 238118928 937243044 6041462 157355091 349444390 78328032 234626631 79651257 497403157 820001235 304831915 240017410 662967605 106636998 868710471 553620342 562135718 574860786 462336312 37107999 785695284 767605311 651959237 578264447 226306066 542659112 463661401 773849788 227769989 987958766 999795034 340767709 43716364 105610434 498096534 961178204 886598217 817414434 516638392 899281147 542264839 414000147 447287324 611444858 728224778 374490200 546323499 843125764 483357887 822468293 367740199 665941622 990358815 287882939 740372059 329946160 928427621 582811661 337060525 231428427 692177383 73101178 893570352 264805061 713894271 258004332 389689133 30259287 125488765 993807652 806836221 596633470 951987177 949676667 816895672 732228921 258806296 310653286 899161091 2366778 956418080 969303634 23112820 400058389 437330233 431927418 46313271 142595419 165343227 37803165 424507044 176281294 618276801 868890140 128157430 66118672 895743302 65596569 561826183 120931218 996645571 906818878 531570347 330589650 573542654 865033905 860755754 283634637 793172485 350831790 78360611 302157943 417123426 305036140 426943071 218573248 692729214 20553515 36258837 164501518 964874170 729685352 808923805 280104982 549177475 977568551 643981184 743067243 282761678 444102611 584493408 288424387 956620189 156238063 422167087 625541404 510568549 635124158 953817739 465165129 68689592 982674670 726152414 972251958 269241087 455065447 326070263 372239863 599325477 272802593 576386041 522490742 358209600 435426060 638890247 224237156 283493355 244322674 814780635 277965073 442625793 865283086 563483404 436651946 618890666 219351968 512140474 955760815 372652583 777467727 100262259 332112818 516931629 335539652 943337752 869503106 231658583 254016532 353573392 816145716 155092251 30513443 872823843 80225655 996464550 316083761 815715650 204188526 56555728 245842227 798750440 936773180 945250315 572972127 471022107 69816982 232115737 651204812 84606583 265499811 428605336 378413336 748746079 304811320 556761315 635885133 124595067 169748971 558407413 943844594 363606984 826968436 958436188 209897986 354709644 839486275 391152519 685182501 641467411 11137394 818077795 603418117 44714370 476548889 607415152 180130053 858243063 715714665 501997044 522431862 327066383 380743099 240865203 5223581 857943828 445500464 34600616 639523288 264544639 593291218 899386649 854135495 34975259 826781955 509843089 907628471 692281706 556947703 611393907 995506233 909981659 300987964 103043648 602345631 315578566 629562148 560500091 309453316 598163397 427334063 729514916 340965149 211553023 666566771 497059646 957869329 16418691 542446410 523851529 294844565 597459190 824191972 814574047 472069372 287944309 417490890 518584495 779378187 215725779 263651029 381921167 631644198 956004535 718180471 438923698 754033397 64549001 71580314 584701044 304713392 230330571 458005338 931876777 639593604 372098179 62784214 399302691 131451527 354184050 183022208 674267725 43285607 346927638 750404096 823945366 746087987 814962742 805421019 517179816 560643951 702663055 762503058 171269853 385113695 379326952 88226682 44007598 844734236 992230309 561565542 110397982 522060690 191852835 334636905 99229017 732754102 407451099 165916691 36846847 881297071 451536914 860644834 440604388 832668825 847400634 914300762 465446034 479529763 781633316 464502996 333236352 80940886 57455074 837038514 408268560 969704422 878025757 312651382 941939542 905820372 269124913 277865 262446267 650538420 265069319 817953705 991702553 1360456 907224138 982060979 851598434 483941737 520447691 581326025 569167749 527208339 283347437 116578433 655326368 636041645 898186246 378779780 841960258 277072041 822060398 187885718 48907568 11100987 189362006 194652295 537961862 193627010 931973998 211183525 122398404 298074783 712590670 239228495 636464140 946764167 673198157 302972161 443421755 839007365 825180261 426648956 34688112 490853498 501321983 432984693 745172970 775614461 450239802 662121597 652603027 755877719 161831291 994795493 739069361 440507392 55944235 685980815 939519101 105391954 927742545 478203823 797615366 615244080 790908765 344622573 312108181 412339141 998078853 503182622 877578638 602710599 677856255 820564320 714200101 290762163 332903087 107298679 677095235 959016306 142441543 926945545 424990060 289266220 427646352 816362686 885947472 139895980 112513792 788638091 387897929 38907032 731933324 112138332 470494896 860415849 737093332 873474302 294077849 367279427 33008594 275555734 406735130 348381323 773484641 798428713 36114190 661194068 995529343 878616011 936953374 76335951 767746915 510906738 632325964 779519463 309137551 978004339 885268108 416464722 448957997 190428245 629102972 274831425 95669153 161705505 770244038 500774470 589334433 689571585 143756563 889717202 715031500 570504447 331137019 949952650 274853444 223678130 932830800 256389299 569212033 25150644 318359033 214240367 184005659 429485284 612264621 892360449 202368854 899817438 592379937 916658012 417849051 603770485 643537452 336611947 529224084 445348870 312967435 317844027 814305219 17410018 970885873 611930606 297472492 88882091 768949168 504780849 969425310 909097302 292895689 156782559 23534520 622215945 47863309 698946044 733512480 170632854 906824717 500006469 300657764 387213457 844132543 902780563 204330849 470406094 324369338 146794599 230686525 682858454 431976347 931979420 543953310 230723845 250232361 490245693 835385078 115713716 474882575 550091408 895058952 97706640 549343460 755514958 909299810 146957793 591332896 433365861 88398219 247942633 716300404 719510342 248603983 968960281 599479937 387490677 137155477 47640176 10085100 2383787 797642512 339458622 792943764 211140834 61357017 126864954 477163722 739398560 435198222 206884914 730090950 394598414 840667540 581793314 485714820 113532913 11301532 169659214 816918823 100489985 623217604 824379578 561394356 48326065 245884109 30665942 578934826 445821017 306909094 508594086 739416878 128151585 840481292 181166508 990900114 173979789 256987275 160620442 506302574 607823296 563885003 583790137 354758839 701908118 659311124 300199445 906741885 499447190 26468745 869482444 55440128 36794726 827925495 617900459 198398988 786290058 418093912 128606933 101888715 318242461 761288410 840113495 894739093 422315650 207627578 928146365 689651820 801729368 566696573 545857428 112509085 733547446 419821712 869429563 146773615 73338039 391066083 420555912 372340773 442884593 491371933 890033259 693696341 786918944 679903416 126826806 858220583 518908290 296652028 909370006 776916927 408218236 9143050 613309771 206006063 338826041 794986569 373096693 105411712 613680111 581014680 618250357 447570428 687090427 409030785 274962297 899326210 297209818 143459120 347327897 450614849 266944301 63429838 683251929 119222197 434685815 473588331 760661933 231941321 715368970 955244962 14934155 220291014 692855918 108987408 635008514 829240818 561683868 257613358 417197527 115567343 172617395 8034132 291563621 649470076 631104887 720352688 320664073 195957175 786679326 406849066 587528634 900333028 706176908 437980244 136743090 941935378 81802148 538162004 74946721 534931657 341496365 933986031 212517757 444631897 710568272 602621429 949438183 193281383 31531134 345006862 350083345 243614266 249485756 581405665 732250057 193607618 898273738 620582268 826367774 118636780 630298074 253056307 105133657 489594410 503482713 686721765 838428826 525911690 349544904 463205631 3983197 478635057 656572764 428467343 943306761 986846098 624256588 740258869 867963930 759811459 141033361 891156078 760865711 575789913 974292581 727112272 446298331 807482658 275863423 405510863 1179751 755921506 492025433 396329771 196456804 644457779 458037156 751236532 232677601 866042873 781922944 103470653 686786193 291218475 524559824 182366833 762037919 76761334 516454497 113940479 578200538 382101474 439567296 418316679 226358358 296611279 648561528 484766691 214342544 316412498 315036776 995803111 786602230 904095656 450543306 508354056 216770526 368279579 99841048 434425526 600629116 809891078 234978480 339156630 33322700 472720922 970875564 97981855 93642497 495154380 734089882 865865158 491413974 170583409 86498512 164397937 920121537 175536654 394710114 500469634 678099196 194962396 635827818 979860460 974486619 799432220 646537940 213376029 40967618 472230129 145335949 789751735 712334468 11482246 84568834 418106650 221927287 960846369 221267217 780826558 479027572 674050137 657460769 996582590 825221393 535897064 103889351 933701251 650177815 541926075 13696552 106343869 540894726 314819602 12897407 250640847 138945164 212122955 452054761 538556913 769990757 163358049 731975364 554035923 67109558 408613939 677783143 586433770 519661016 439981978 913993191 249491713 918573108 411456094 878632157 632176518 759842416 234101823 221725234 407267525 158427767 242469040 655270992 674133835 365229316 375165768 78636138 365827582 869555008 368413128 417003897 40265097 216931378 195982209 365809085 102633432 854674849 606043902 120862497 60407102 559035789 526896357 826779719 333819536 110728862 91300143 708986176 205102500 792239131 59804095 190843008 840048551 3540327 235768743 13174254 737035727 894201115 431060014 303388984 931770328 46540038 556120588 964881649 905253074 12801685 69284332 752618509 147530288 453422887 576837916 483168303 104314965 663519563 286080009 243436833 919482232 985269792 98254684 470801265 374505115 862282654 411003484 494633434 482092270 398473954 351245198 858186854 632123909 529916141 381403194 595399474 721510726 259316810 993983846 758280779 569880743 614344019 951748633 317489817 893446032 202242358 445685179 673973327 786968374 300312838 16217502 816457818 315266682 157745712 156145547 442925632 668662747 6682713 347342922 794469810 187404772 317775607 808551924 797446268 80391310 806504738 734400122 68742312 906485499 898112307 27169798 332904828 731113914 644683203 464353107 294363240 759175419 768357618 624511319 620999291 973838484 770850998 643559629 839208252 264265855 829172305 58889908 492408984 976396291 305137022 980920807 36779191 207378406 152413804 949400946 31169062 987435822 817087577 607692102 360494487 597022712 226166384 799411540 762011252 77464438 344096317 940738953 359403895 818931938 376299281 512007371 373531203 725823525 346964839 105928165 253561892 123625094 608691737 222853537 82827934 210381103 542358081 305304002 912708298 350723059 434079940 323713109 79871094 44891289 744980906 13758872 683579095 74430213 222326070 785824889 376681081 916884713 107229441 45373440 979390209 647636075 285489400 384054974 155331294 123667381 640453913 890745279 970839702 692385238 326859388 716197227 476010744 411245900 431900 342940701 457259406 79958121 394042136 978366329 634103266 918070316 317659371 417475670 453196333 576988694 145239747 543022191 923022332 433991213 209717625 444329085 457092908 159431961 710026281 987050040 917452087 449084885 894998255 798757542 984093034 401944781 362753169 586874118 686816549 239651354 257209930 387727050 73998357 341483209 68609819 993558040 253086304 472576618 762272586 465955091 824093145 165628578 282139369 616932128 837059168 683854283 93210723 548511255 453499461 468948992 957102079 227767689 51371556 410800110 884796713 979352968 573752055 230242925 532971283 250555892 714989967 134675071 285316102 725157470 293323869 865226865 832486572 753607290 386486365 614274110 288202344 818623633 943140682 215101441 499464349 891696857 927697107 867615820 900890570 78439022 402474212 992323612 606299173 920015275 590977555 23620356 759826341 413648440 427673450 186981648 577004332 650596574 259379475 585088850 697081288 975755429 653733902 132296010 164378109 828642608 322646860 941883322 561901870 99126855 872931979 189224542 96653877 952757049 372740431 335530227 413938863 992770941 117139071 289179992 995034123 810285829 329434631 987041687 326400120 69444860 315885951 634325777 384736134 960788071 972797673 600253081 174291414 520216601 816751154 709136841 977182509 793188713 21073758 526339067 947757596 859972987 670722386 49686707 399846803 568095360 621305265 238763122 364223919 610756922 138459348 321631442 784008715 931161896 43030182 545292404 820024504 580158400 863512036 85283229 598142479 869427666 453488798 564113771 56655769 886376008 68059160 17774886 954206621 962691865 432647437 133319690 280163706 94465848 161921579 394787864 857276685 958853278 660423965 628693028 354887385 428206475 222147790 623268229 296336153 916711475 101840939 891083062 655531700 52876158 11332466 785575604 702026395 557377013 624797299 976269064 165074243 434437003 491171472 20925254 357809229 319179756 332712800 433226105 628901415 380630315 870865589 590267513 612107079 801791298 726325851 492193786 466805695 97514485 294251488 901998358 918837037 86622726 694559190 201883900 695528801 36682364 566529077 704917848 277779592 359599600 990741824 843328509 250546811 406669980 22851598 203764036 290350628 303742462 708169214 655109137 773720663 169302329 33556403 808690495 226769165 972726021 230709527 34726588 364986418 221788616 132971298 421169320 868240769 841203661 916943902 77821620 571010304 620199528 902989881 18527183 312907520 275863935 831449559 854340223 372484158 524710967 907351545 692539419 992401877 406420968 595981061 734431087 646076693 247926646 349837126 930410795 371629072 36461293 565419922 536181283 551264356 391311219 478346796 308622417 811918077 990592537 588186417 596391310 700340529 176738230 504165988 50091153 172670676 400646506 826184996 163680 919956927 335092943 695355815 952129661 804862628 888775063 802314572 883725056 293010465 102376544 42362012 608858218 769617636 561198201 631552259 530970396 992972900 46978579 518401575 509296970 485365056 622566205 892681034 221743787 854203510 222538428 227097256 109727249 716750059 688391720 760129545 561907602 66338108 534388617 836978892 589902053 969858653 813348221 562878257 597294871 187989234 220825382 372505924 657961459 896750396 483792861 774222751 804592981 265484156 280943725 858903277 637640366 399328634 998636665 235185023 380195306 465726223 431820203 418225611 133862473 793463560 380108376 661403159 981768246 649831333 149711328 748795443 987155934 882826537 446305431 798657738 98864800 994543161 856681685 315201056 772000157 980407647 54871511 35446701 314580870 686678944 37752096 689831338 259743789 454366310 951889817 554827893 399183177 372315854 578347868 960206773 706383347 988672551 909593623 879062939 618936826 454368521 37470412 857682101 914312400 266343711 300591392 796440651 248715047 68432762 111741636 542862852 632343922 568053618 369647225 676143261 235769937 837314872 938554361 853974773 364867649 283100130 821407149 536336821 910898164 803463726 339870061 509173558 79780241 73859135 165231261 469512215 4272293 496625185 698018047 61629587 300358182 841702056 922876271 160842641 559032233 518154157 377322629 92839162 966343969 784545950 957906593 363143204 204767746 999785949 108981149 591822684 42174319 774769935 919144255 776166888 487115923 793471694 931465004 937595143 567568735 745344831 193693079 986512540 743938556 43274004 507231220 119553553 393195815 13334505 690731149 221588891 138241202 851701476 810012431 797053381 294114798 274043058 868664800 21569162 436077283 183287313 700358828 487337040 337332385 972595664 942413750 223286332 229441044 139324378 632063133 690286227 356350213 187076220 521416075 611235035 698671815 243178417 39728693 921881686 404716114 834893154 307867644 771213913 608642979 786703225 67191516 277970535 740290401 113561263 628047994 107614746 358989324 726577912 891742846 175721512 917524574 525898568 32123240 223470289 684538591 29205199 879217771 628641547 326767209 662657508 555841774 359172373 149162637 577156468 997323262 624209586 39808601 203440941 86354957 851686984 506822979 437306846 798079614 164130757 314619312 447168329 274762451 461727226 533531782 833758914 704298068 623588778 343013191 402740714 347829582 581561043 363332856 381423498 378098302 826713994 505984173 71386932 153683915 357029387 184078080 7072079 63768692 645109548 477733710 677960336 281653732 34240611 812064066 774110543 985035200 956385476 641190815 47994064 310683789 359939825 918166802 369303552 302463597 525721526 532636515 204075680 342633096 352882149 444740854 43037350 579656774 920426974 768205789 976279928 230843715 612686888 554829480 210408204 824239252 67415934 938133402 24350011 670303084 1340682 854367136 739656969 177519835 688384286 779402473 866510159 476178118 388439589 946496199 296082921 512080478 471979273 923115106 50822758 984925746 105621096 77329379 134282022 974566669 984891554 533442315 319024813 777562183 217793710 696870853 737111208 192672008 374038778 232937960 404166587 317776685 809479604 591237041 946088416 881075437 909025707 810881332 918622626 569704867 760136930 714862213 16102944 326007021 315471142 583045468 511135715 308697827 240124026 43793309 602719937 975550524 891250265 365634185 373836967 84042400 542603951 729558168 266651068 418009195 481900128 495370044 164397910 118510532 736579848 612181798 241270612 884798382 725613492 29913997 152110382 346230892 626380465 630423149 283457424 745463439 322288424 334576205 250168409 101345665 633048229 901697014 736196690 844749324 399739532 335854065 362278646 521668234 811633663 674007893 701639405 650945941 783783057 409697207 388843212 493479467 396751344 992894400 749788439 51045038 457001903 859603247 131558482 150431379 660517034 926244596 337532889 981722847 686203281 423019524 377103519 467989462 739984342 687404449 441634404 48304901 672412508 132586697 534358133 424728477 210996120 800180973 864902250 505188301 890312802 323642329 892793322 489781362 661170672 369675272 658713837 508617728 651791703 515621200 879909859 676541201 931219246 72695365 122743922 842400714 381965426 602992721 334648166 789010535 804171450 650573333 318576564 491096524 718795273 228118619 209181361 373428307 602881922 523159099 228012456 552535439 610673652 659289446 91316908 401759234 264917220 398907490 730478451 323070195 2507994 374520641 802072784 738736720 244499076 173218872 14491467 29704586 463768840 282557937 568083835 191892820 136328089 272953424 662714922 130730549 794113383 317282363 944531383 666972330 575119081 826754367 653648503 669192387 276381061 156624722 934831904 258934268 488374017 398435596 873037168 797455933 789714612 180126603 340692294 659147164 329765840 702579875 808524505 631743692 704461689 525919838 901105569 236318754 488849110 331015458 8719294 232452973 118026278 753365088 481625891 418832022 756240784 70670276 255254803 297600290 716154413 95923003 882670078 551674113 173457463 40022395 643179546 936088758 448745107 703994191 781712130 328921567 775196201 410277624 196846389 735248138 762208800 956988053 907754527 501165936 494655966 25525582 560400578 457357415 394586909 833250821 44427182 438720015 3982981 837219844 550269717 688972167 148201487 537718836 985407059 971155019 491625202 585030025 468968733 990079689 798798824 35187140 321032463 579975092 825845890 839347767 137797034 400834393 916030963 118780081 143435367 925010085 471371042 936094983 743647966 239064464 934486305 723406427 378684458 831006064 779848121 225921036 109085424 684968777 710059225 958645950 919561105 906782105 689070901 29930859 53152118 139916195 466806264 192239227 293388798 243753186 671384138 463296995 879823729 121396486 431756391 281164436 872076774 291000203 841233463 563879432 803897411 515648224 287359247 514365454 203051644 65679014 433786244 547752819 186635135 3139046 121632462 730575677 341679685 459406523 984570809 618689416 513156652 367807600 718883315 532771201 848263111 214698168 299899981 259636859 850893785 433677590 923522267 347961860 620705371 963761131 792252305 573754123 938702112 875412403 363678703 562625200 96963657 974403306 506751755 119129787 797650142 331286988 528338909 540852102 315363573 633257108 809036627 236227592 345169985 323823888 675806336 453219044 394232450 892425116 797033183 10801150 410985333 175396329 997622889 511256266 898978757 593313432 685897635 605190041 134622732 524117381 1294888 733040753 308756438 202131122 671943180 466862452 655954631 521113636 473197578 417061000 753674429 883076517 923239568 959285969 33033320 945812285 240093081 11582225 212044701 217546580 397565024 767832640 838739381 342696123 959319765 195370487 297289299 3305813 154536849 193695825 4282523 251544505 933095866 112193173 813425339 278579453 479728474 827127190 927165902 661120819 591927094 116092600 878772368 591946864 743305225 15637125 446960231 335626161 437386141 793184582 622483236 980796114 136745310 135258489 486774544 143712666 818361115 90375588 983563655 187759592 916070203 288915020 477296991 598778032 928127348 484105912 208783674 320160135 876156036 225331981 584841778 844389621 850276575 474128384 30173226 311039997 21046034 133177080 3998339 984566730 301032190 387337611 655912438 508242256 157809892 721770291 146049396 758753399 449598654 65149907 765088472 997100514 692154176 904074661 105556849 803263583 859114454 333111282 13201219 561823416 846349708 167624352 95118482 432516912 570746239 778430219 285259662 426993820 583577788 440913940 213706089 127421587 554174066 199771365 608481004 435183512 990554965 208185237 889408690 471582316 233213249 542274119 238235053 622999175 443449094 385042913 984013448 98647230 217739739 607190222 844158284 119562153 697225356 464570153 970667130 511663746 505554701 508857211 165094930 189710064 215221694 746986248 81200247 40766751 692524023 734471609 339625664 141349168 907061865 163245888 410372242 102587145 240004690 684774390 950797172 137100250 733017654 639570907 119983220 723249425 86126660 140961928 656367583 245519140 751996369 99097301 192090546 821933107 315186649 752799781 448278864 722498264 899433042 824628389 705604627 589593947 656263885 428214124 838199039 826625961 416776989 830951060 178658309 501362285 818752578 766434706 659741926 54387871 899047066 427577478 467049170 906212614 400094340 148790149 641566384 647275175 281561929 280899581 54846075 904209677 769048448 908287808 137877271 271187448 166487365 553470513 296852520 25964411 333174446 358701430 863003286 335361666 325664581 6968492 398315886 605315511 453387175 499605794 38098610 666234154 828688258 798769932 988920502 296046717 684854912 420622884 471176711 235427920 188717259 308624822 841585616 789265567 343410248 478722470 498896080 36662965 325739384 904594577 447036417 309735205 601689354 477108663 835895087 664390934 741228169 656398449 93600282 430119872 504464375 554369149 318536255 14124498 462920832 319800885 820894403 978270773 21967756 783846942 273896472 662832408 607127037 276203178 583289322 308954078 710538032 418364182 855054916 686770233 368554112 572851280 391883645 141649104 933457062 350915556 561021867 973166809 319402033 440792009 62128283 145549460 602188215 925799029 438529191 720570098 594183144 265779413 812513765 391778100 936817445 903655259 872681518 702362965 952738023 931673179 348259314 428471704 98152451 323648533 363952071 167238469 324518651 636615182 210661347 472266354 916600982 191919937 721407499 112196239 540647808 969054226 37378656 407196425 60523222 126302358 704087632 792347372 607298925 727899796 469571267 539011441 450134999 283553941 107168429 904978024 380710802 950903673 23883161 692776017 521940548 276510941 399167868 992937106 330516709 459165192 60152296 131155697 4719487 823697869 827611002 458502363 165544415 228350472 276858738 403864870 63949800 567974675 487814990 963832501 939880172 975617539 702179267 394873205 753901469 9362992 208122769 529035444 433169635 659114435 219795136 469688403 696726872 921480102 4483998 589273467 284182526 518599840 756280814 319024741 557131863 510361398 385271967 747096696 142857475 875389182 378913635 207987562 242217489 41972821 626492016 943653143 462671439 214337999 339816219 857722883 480044485 510989783 948442573 513538589 152604820 186100260 619935358 495337407 975863441 904478026 296812265 407241927 754414135 188620170 941734799 4710428 866659540 983970640 916776604 571653646 519232480 372967968 2862436 834984841 52037395 846467186 745546400 825576722 639289645 591868338 676922488 350960062 427621462 44077442 446370435 501350323 553648327 920414788 518396380 296901889 679665526 274856752 908003999 19396883 763463923 275685932 227198592 998409513 673685498 703980600 40149667 308927858 622977040 927673008 572920040 746307807 695235920 251522607 375700183 353380561 650557879 28698100 820564909 452653984 730111062 723308616 762381573 131842940 579708951 553169103 286085427 812131286 21277826 105845852 591953507 782350017 454960413 643150925 475409973 270215220 569658803 749450011 523129162 517925061 667125164 385152002 486615566 777512932 424442606 32483127 952686447 171875199 311624785 720325244 942607474 950935019 787952319 177647356 595812320 278316161 523675466 105239401 613528274 993171472 979350844 42437027 327854707 793582500 674718867 177906208 768869947 609120411 356863307 809278770 147773574 120955911 768171774 271027711 313500523 240459074 987991163 198400475 751433430 180522514 250472099 78071352 271775693 167790471 101037962 522045084 706626186 405866379 900755663 829776012 545983633 354107477 215722076 325791174 850618564 602799471 674742701 388722479 446078893 397185197 713458218 997769286 371650876 570768184 935107706 288644509 559308626 612188378 662279049 14503373 840607349 67849588 471812694 383108935 746153660 383677943 185549322 984359828 270445292 214996000 88753106 408015916 602509587 636742813 997068733 372736047 391419014 479595897 514272460 111726477 633874673 438960275 410588009 356364418 337199747 418299319 615870686 628563051 528853414 835891002 232603618 348543172 342255031 377444005 102298295 470294662 185237243 719635402 245151825 147577071 72303008 163803734 515152758 61775928 47946855 69875271 952278017 671602821 95403976 802760546 488941513 978218633 869112547 179320345 728507206 925993677 534418544 247632764 213565244 353325130 907340064 800825637 448607614 128452937 903518832 90262483 579922412 452673086 22899527 930548731 219185060 296191239 770859647 505830191 549378900 717246564 78702289 623466489 113321379 281444492 258090150 732166608 618002434 760019612 630681602 945330196 984908974 5177365 675131047 750857981 168828823 396950904 644493276 236950451 896446496 324707022 965780094 820304101 55877811 836453235 496955040 908925436 40963920 241029117 758631753 800916228 781452175 772087796 484908209 916661518 299710926 712233512 95453976 886577415 942114638 924774974 385062602 782013422 261596021 789648269 794317600 510638476 93598580 913485204 941825889 203670064 495041235 658293583 96378726 582239525 936333008 298496782 641695943 74678784 36682451 601593520 259246676 75745335 119014184 848864491 877758510 256006927 577282154 917143617 915425418 680064501 578210044 332003751 588248307 295760429 977269093 217175672 321805069 753086106 568614223 56521196 411238181 980565070 431936034 17227525 911019234 822577336 200121315 733727199 368937859 682350415 181524843 734097452 12165549 512502772 810154144 656504937 85709130 774286467 141354173 508881867 674747606 569236254 137663646 428195460 629178951 86591827 447577831 650839634 490445893 227514831 463970508 573050811 217577082 636339990 901122552 879030167 726323460 197545939 104548095 911505748 183128514 174003011 278052924 280193635 96737598 93164254 946564021 457517122 977749246 570482045 854479508 161393605 524697982 368125032 805888292 38410663 598502152 928757003 28857482 168957735 350864889 470815426 227358124 233787398 415676051 654578632 274223494 122525807 127226671 902999727 564621146 691291673 921566323 588028189 205295375 908288050 655777052 756082339 330492795 987255607 149019324 130884216 455539197 645988668 144980000 78968777 91470161 91145466 649144518 655999076 833823889 165696009 231895153 727516749 500542638 886865779 415834977 251416335 542840705 243172030 19267958 286952733 626970936 380469762 860313302 575114972 576271910 414179338 257943948 553132579 972976447 495621424 576502098 649447855 245048852 263806053 457225883 81419204 388892329 800052345 955224553 543256120 827255964 532414991 14381832 869567057 693294150 533854114 631026986 156688471 157908745 390159472 442236152 302678315 4612248 243496610 240898803 190815446 162392779 514532210 730718956 188154291 869422733 313661667 417111282 818921548 175126210 909943776 448552378 62905632 509195137 80696803 60605368 397376567 738712456 991036609 938899050 553677240 498749674 325893515 718150751 287584376 449370545 460454557 613353794 488351241 650404087 945036248 260149094 124123435 520338897 480434217 736292933 383778767 291720839 253858512 430529559 728097674 387301963 693685621 528082535 624520986 305889602 948548870 447509711 143087851 982418739 343131483 926391910 618681700 671407834 359802962 669088232 475019547 422522903 716112445 166041460 698418836 951621859 157669349 738978113 605179605 545979774 113620803 693525158 906481685 251584027 52358525 108641033 76354240 412362205 471003865 750821189 373984854 349137716 609728616 775288526 746147828 245542148 682739153 765455216 230443559 518293462 825391422 27690327 544984204 823379249 281341764 767755271 63647233 233136151 433632106 101543813 9330620 863959239 55834677 547111196 212075356 803572426 895283463 266292640 331957672 450486516 704206618 163799904 15856526 382669021 922014252 927448795 208094953 118158234 748631963 181210737 684995344 521562973 579042795 630359155 41796027 770907633 370995652 276303328 494955843 310066936 812676566 151497760 522725985 938499592 516428529 154005365 178816224 643687936 768465980 457613096 479036945 42516974 655321121 566360419 800937917 304902930 312994481 992344541 38326085 540307019 921470956 165151501 937218882 324343885 979576044 346562715 205352827 470878515 572104337 708962024 560595600 369509007 382569858 4634087 403068275 851249204 993435837 580423660 699044662 699916038 988351470 59701775 404526189 879465317 585364870 613889472 777453683 538367031 38576458 200651667 275766350 776339685 946712883 110784768 510001306 786905736 639652875 70593910 403288129 553337999 805072622 193886169 407126530 681014586 831328625 153534689 96627398 325968945 487486809 678434036 189551922 392430071 224458949 63015827 327378057 677846919 698397559 913845800 710363687 925644793 757127448 125801749 664152228 337092809 648880608 799294480 891790560 409007141 682981030 889889039 958008025 19512231 680675696 504967597 67668425 973908184 522199771 53939799 438821924 840193928 510237777 220256464 28398371 425578946 905957851 549023373 593671131 712488402 804062808 510814733 149825166 165844490 807164683 243023203 626552427 156063013 424328498 998459590 934940003 767144340 151793319 159593033 967567414 274481916 611869592 350973240 382295621 934204131 825870842 883206687 569899844 266493282 343541984 618854891 725949436 890462816 203467976 431276001 754396087 777797987 609451352 189082702 770999898 837646434 842897328 896599567 190206047 616161772 387935028 7397726 949800743 797922135 95882212 665897368 297610567 652510951 746094620 175052208 519082915 165349819 944629220 283056821 210918727 142141649 418824674 145325822 908789492 55950709 515803473 815946337 159868934 214874789 223873513 511648391 819455359 907548556 886575428 690286369 413770937 865673289 724976772 541354136 154056478 32276243 181297689 98612088 147272413 804985145 764611144 276354333 562188754 521186360 956024891 896254946 38418992 734833412 73371495 826407930 690948197 623667172 391886311 517669210 882694154 882103369 6932398 617696947 704315908 424836972 618145880 894896597 177620705 789339692 818739727 956382293 102027025 187325738 218244196 388107671 632756834 48091587 271065069 717676730 109544375 62527770 730424549 548446387 191426540 193959773 8051120 853003183 108192772 751114533 397698041 21431609 803765692 180374966 259279831 315614794 57142962 766507432 181895979 827180663 931036612 257599941 298930140 948307150 182600849 273313185 530711580 894295700 387568941 991573143 154435196 237990154 866646583 412521308 649288571 778999975 999229546 759815569 880445956 842105214 508502697 257435952 514807317 574622906 352580891 256915889 915911843 591864153 672277394 24133081 223771400 160794496 125426779 948082247 191196422 803454112 727679125 96537315 326844291 426029894 879582541 941108213 552770390 115527729 563470579 23097112 990812596 435575666 885613262 363972443 282357285 738066513 958219193 351036612 574777959 401838296 906502712 563135370 151153587 663061336 503286813 475013218 425406378 7520599 58946517 457155938 114878346 583840638 15295883 351586917 189747028 616240059 879072199 329568168 5967579 238773698 290417424 638333202 595714920 871148983 471176444 25982621 771428609 433641670 537315059 167431269 426137353 139505578 629323123 318680218 212802179 656348673 508233768 192530158 236449802 576120044 833995216 522748682 35975539 723911043 63423815 369847867 746611913 611732897 930575633 417390749 662138896 655282384 194836548 80396184 229785237 59803937 921158841 704966774 89645437 863639524 857126670 851085233 894609793 967220634 675637336 69697065 844616791 461504141 174075086 38063943 891706898 909771628 730562449 125966614 578763283 719816691 795228263 332467218 487634265 528027722 312353477 833374072 139062833 528321312 350211356 351911856 490307297 543868098 933212003 637281777 794584319 765642326 722281444 892641881 627189005 874427225 156458169 433293222 760594720 162569529 590524564 498947735 454779132 117208943 473947839 740294973 362480607 160814139 326041122 871730559 729149346 917129610 182735570 109208063 171190127 987538089 896525144 525262154 492350385 790855889 58445214 57050517 781370647 401123240 491282588 75170993 292090990 651842716 77941316 736556242 257746126 982815235 365897748 813959421 184038628 493003459 588035176 467728226 9835650 181075178 409032276 833618827 816106894 996335985 106077032 355236026 938548725 198160927 895456629 235184041 629595122 772584911 556547636 217596985 437008941 488852480 867077357 671610691 910739772 706257211 975554024 924492223 203985763 109417657 377144961 280264487 933514828 59228649 673998127 911246937 687440984 612197314 412027982 55037983 388203265 146732193 197355846 934770229 945482972 868697494 795539776 320882280 845487989 169261999 955124694 239946683 517222200 697696400 92607159 641744367 147100976 870328540 23817997 73632150 387333582 383203620 281668498 945579942 13548023 900696260 508579913 735354085 710617060 679647637 363497744 695149025 658623324 195624774 29108424 776145716 634546839 902530169 291270171 979605663 946464049 691953651 985478714 727905958 447876994 505773722 733225479 334257196 389925462 978837716 78414561 103627667 708893446 217611036 850742576 889295370 999419925 460821931 996547685 992178044 899346129 820750030 639733736 656812790 995987774 993712655 524101165 505911976 289136310 742020507 493815490 631284920 258311062 107110858 876922078 136091789 382562904 797344999 8267564 2348835 117118563 164035139 484898702 361420964 335510763 62641664 780814295 770115189 448732603 398780669 690559601 392084380 415470347 646467217 329086477 945973926 249448922 391905475 877187341 356430019 432064188 879507117 653551306 181783213 795662273 763523142 938996285 123157751 156744439 280688237 445261625 339640277 127601397 721282033 436743380 957652197 661189508 704170566 443559148 359093224 624350307 813717795 275486668 93014755 840775706 447439698 377788415 244817761 525827240 839558632 531996360 310606714 125962320 647956975 794372483 173660455 782921209 996431558 714084295 248474670 614873519 64192700 80121960 596858355 272927425 50507210 161465360 146490905 615566992 840439538 876462197 236916452 277717830 933079410 367419071 630386181 988280056 585417893 438120747 677870813 348473353 832073441 86185894 209967315 180359536 911139898 80239230 978987980 802056753 749397964 705394680 816019580 393435436 484381590 388191964 708738923 119202865 247541599 670738490 590180626 937672949 446714828 352203951 949806913 128480130 645662140 96257333 195240623 843997123 588784899 170241878 264583320 309823740 948726265 766360432 952265258 850251050 287270022 993596807 287087597 716993548 695630204 205147272 12107033 748307115 297692698 513960359 462666371 114444717 679824016 672386544 438297330 778193282 986861301 325356179 390042644 950198985 663017701 806303852 406007401 171374911 586456021 180973517 319133795 37443363 284948713 627397274 406286192 789817178 858490731 89556220 812540896 807926469 698749857 57573950 707914374 832210549 904751945 42855563 224253176 774147082 556449099 952320059 506148657 262647038 483632246 378045208 199763179 107102686 185613178 134053478 99175564 583155960 918480788 647060664 183116229 509430538 509238875 494419835 22608615 346280598 865172253 678975623 152164748 667061798 807635007 411434119 63261084 17997652 664941287 742186480 221240621 386765533 236034550 582409993 246680332 441130696 700268154 651884146 812244725 130912631 988807678 852903602 586000867 764076364 875420648 405664395 611268332 78821087 549133312 603683962 879022180 104824027 74379057 108862459 909808859 98256167 719559645 896420080 578044015 259620535 953685119 987485999 305043933 279669125 84443214 691130586 762529333 880234775 117338807 533572059 339825358 865045977 748772718 519825802 240417365 165939260 30199074 58618150 708719087 143874682 875132791 316805125 699501027 829899041 227340904 208799439 732094774 621586955 921081741 327455744 795926300 541115430 223388455 643362151 98432364 716155684 500064000 448998751 17250952 763959995 899737098 951780845 161438776 916547945 124888187 682906898 498375757 888345615 298513972 747918453 806048655 740716957 235767251 108730866 267882618 111258089 971687228 604325017 857118198 669150388 469381801 737582757 556280245 86300245 307014551 850669872 476429186 959856018 154588029 770366678 796975382 221613947 235779065 950918314 246675753 424779080 88897020 672182535 683698170 911450052 859378344 164425316 757598913 713222603 534598260 901888093 556487663 871507195 790563417 64080612 492479918 744659390 101125290 197979643 712093310 704866010 775605525 997822367 397716907 140800746 384673150 638936751 964934465 467663204 333013263 123959570 230623104 668682022 299144280 898983566 12050303 417384566 800815247 832420067 415996572 816791981 457238941 230037055 744829634 672968620 951899993 149917101 333572219 585007793 998771134 37765078 15450472 703892611 774397704 342717458 776966798 885054087 357266647 828361180 523411328 89303065 987345756 986054294 4141433 204211394 575473943 127892154 93318052 592673203 495116891 61195244 791495991 254363906 993317085 735553802 60062136 146827042 721261516 168441997 815699439 268952589 557103380 646372265 48776401 345696052 242568806 401198701 27658890 56351557 761643484 386029270 114070671 158920923 459674706 867470594 489751891 912765895 250398494 811399683 932741553 61283660 398769814 640335201 472742022 595561724 73496638 129255845 613996233 486161377 25919922 414764886 577733461 332740134 457215565 647912659 437870086 158115595 203702807 202472421 200748751 782587577 737910605 777428695 984617097 496554442 278321953 463193460 772267354 221049200 12462672 316009849 561436925 170582675 428111177 734231517 297820312 797297667 814121786 522059347 329104042 868225887 400070016 570398842 879867239 291540504 385248385 448246996 41086482 695090465 968239797 516487937 678656743 587555319 333439825 326234667 546325631 912349446 188192065 896292128 854929980 193691476 426295320 96025933 175565746 429316969 85684590 344511234 281092168 698669776 306887392 51913370 547052363 258237742 474231957 853324461 908470633 24934470 642679745 837443545 391483814 109794163 608474948 658716774 836551269 566110103 766775009 970519887 820993734 192284424 155029125 435496826 514825081 384193236 915022334 969521901 578075748 616768894 173934304 927137858 25980693 599511176 110302094 127910369 863088259 487954162 683516637 632247919 429823405 895044356 403396296 94672078 679741777 367943260 616857550 924933936 275692315 890431485 284890897 832105397 95182398 468360759 315091562 877618708 272944861 98621758 441066606 522633571 57208008 977192220 605915180 95964066 818699424 147485580 624204454 700197772 720002654 336119291 392516005 926620383 682319525 222314625 254860663 5348073 691584248 857125009 927869753 644756909 785447220 558240666 513572204 918792153 915054295 377884067 768875824 380951930 713758067 775764636 36785993 25502496 942773653 829949754 593404736 66020464 959462926 825619061 524250800 47794003 957746249 188781029 878209217 683911987 355135855 348740625 402030037 490324095 859472991 84671608 833405581 521033282 977968294 204243598 938725299 848396689 53556860 220346309 518100822 804086434 213414361 736225436 933476508 722810156 520348028 539161803 479788335 381035469 372449769 24786735 327115699 965403930 327742601 963974397 315348282 452827726 932920594 250056112 114347508 166428739 660584562 215977533 598600330 218622443 484058402 890071205 146265389 50468436 394954636 969632709 531631664 863932800 619285857 605819311 535196876 758856546 115532717 4183913 860207084 521306816 842462669 479928448 54292850 961772698 87998500 249079667 191356522 685556286 715166210 583878387 800725889 380817886 61620815 699117122 319315778 337421729 934246386 959720863 170820581 419340627 947193586 838984334 690723644 997051761 479742032 473572789 413997997 814339163 609437046 729121528 849664499 75242281 88459486 236423737 242422594 700179760 69754854 698019802 667711786 540948947 148916432 267187067 873987989 264612733 389994829 220548955 307706992 673649630 393043393 291719858 468697382 105443965 697590216 978894921 102355841 202999629 737435121 355191303 662852424 806834140 285241444 239919553 115998283 250130350 472237020 377956291 345315165 447383662 779548399 642594799 157540567 76774644 599782241 592471270 266243650 921907698 250357734 375652039 623703890 207111286 683887337 91743935 987991056 497254560 460303974 480102159 496050467 41579750 25224935 581332072 475776907 593291374 964074779 468197419 796484580 916896047 466212591 162553282 853669647 996579519 138434456 721829920 148738726 380136163 233643610 955507662 800914605 975885353 307934112 200383126 83466600 51285727 423296428 962448124 55202670 655437576 609913069 683618211 98368828 222972262 756831000 652707024 736075160 812046643 652774215 195981687 840998963 512326587 93901260 508117520 839765244 151992330 77216424 398144950 727978684 144338143 50432884 610239115 898602131 452663779 648470127 401355729 256483386 166387761 434288501 752301392 237498155 905713296 971700483 142407078 943927051 819192489 274177583 406599250 125031657 387398389 923419698 405890711 841061072 872932252 118824366 56418265 72093628 760585757 515547597 368482912 489393195 985468592 518360723 10818419 106974868 484452867 729104594 966636073 718004662 665901455 164930041 374183449 809690905 644044126 601483863 419117980 812901987 335306957 915387668 244417829 987886737 447401919 16242704 598284973 519106394 991952431 91968329 960837847 974426687 773852498 502031540 421340400 371718244 834664303 143371299 969570593 433089042 112598963 981329688 720618039 431300043 845542992 202261535 280302936 76533186 396587110 465686777 33746238 937073829 19179367 698940666 775750037 146030341 47104199 437325197 351965619 736856389 711108686 62045027 269651775 306114762 258957100 6599541 565222485 478227421 994546102 828025008 619083147 234092101 158670577 144665011 612088081 977220498 982775838 948923879 375711054 101861462 943016942 433752411 754201031 264119620 949430834 124310431 60888365 646622316 847070191 714520627 553223483 974567663 400357053 976464359 393984558 986554237 407134356 226729509 676685888 942448736 645530721 911602864 506252547 394029653 375566046 699010811 640776406 367630067 614354815 396255972 752464462 385961141 456482840 250472126 150131698 427501274 458364745 721330435 384047742 864207745 946728543 200594848 430026261 565728459 29884631 619448102 660265695 549695181 195117024 97859685 77195554 324514478 933436290 845754195 569345460 926306432 359665765 586712674 524042341 840084937 888924589 812795808 491732664 274771214 33084364 497227487 892897836 110957689 910591742 510928931 586541249 117608386 517661482 967481709 84901035 563872907 830943961 781674444 929569399 1827997 250004244 399214469 404239429 598128740 9326146 636729812 599795216 378955623 951255888 401521994 289143034 792850507 222341692 206078575 799167994 429477029 701962207 912807412 258425365 711870430 815768285 655617682 625026939 323739204 496751866 278869162 882596965 150771106 819708073 637012854 685926103 649041143 504727850 362830427 496502300 637063589 414481374 112003462 832543801 317625718 575976726 73788398 909725142 103395 730422393 648276275 617275542 556291528 576613985 774529410 175736432 498957587 516073766 976157250 977882307 741660015 579387999 681472343 311080573 60301115 700559453 835496472 646130721 748647413 983109507 399175832 52671544 724252440 442475588 904289935 949510961 467138875 945526656 766316155 148492442 984663542 891146645 967598532 594003523 742266508 29325620 869520161 195685699 788709402 596508450 230064655 992085470 306032177 511510440 291064993 297682272 183260035 864883754 739312866 293119770 566016416 295087610 102016794 147147260 551545149 89039184 349216884 36370278 800191325 507272209 431753766 142961250 721707665 656613633 760362404 764576142 468426107 97148476 289424379 368607015 582746781 958651523 606494253 288864953 748243028 85106244 263293595 584365274 214748033 936229661 180625784 57283811 703803449 108594747 149263177 168031596 50907562 219927561 241678557 589585914 909661447 384958564 391482128 726628215 985285893 474990056 875748446 649869766 150529695 964463079 691033574 555747136 162074308 826406916 969472416 49300205 177168330 58136621 505437107 545193675 445301731 190620350 185665384 822437321 227316570 374955190 667829878 651923451 180416286 900820968 603718178 977564410 699630479 534575965 672392748 310906184 421062231 413232236 721649630 499999594 293882125 900188330 649889140 251372448 311438548 827673485 742189191 509261090 53449724 337582376 10998968 662988875 876598534 995315388 438910869 185623355 581757537 980267530 532610215 660490538 880408099 755348528 377084086 256452143 764280371 484465393 193137948 279274769 54940270 767869846 221267600 547842470 353992118 667455943 615763479 218454123 205075384 220582049 635925711 121824082 477389562 377879164 4486173 617852815 671608458 479931942 404696192 290101760 460050951 130166368 203540609 133198826 371189908 141800275 730578034 203151292 14681336 582889897 488783997 83517380 613760197 417650712 476183677 635857568 551853214 793140646 397423035 214744228 985304841 985912078 666013483 735613614 789414090 895993471 221469655 85956817 355691912 710286560 151121767 396196418 136691822 498745641 356686547 212423845 60186276 539844542 645929682 925592292 854580214 433275973 931082439 832856128 709992669 614202015 744223769 536096202 436605485 414683006 914986957 10116981 261442663 564323172 882862108 614218556 9506358 428056414 743677455 653054836 196369445 871801623 991988628 37869319 257202004 374722006 654209116 805390145 738387758 294480100 371522423 712755286 125088981 598643852 335235735 886545385 987657032 37864969 459795051 994907075 717153259 634603136 426839672 117960245 408264918 314342328 542705909 501946109 337705755 619344862 540684776 647976976 74568357 281597207 552803355 325710752 811998953 825223920 506273707 644839428 159163286 669040377 671596834 492268405 351020531 737865397 882401978 965475572 847667976 978719511 811392439 460074110 334759255 598431922 649647116 851621732 222496560 423854802 849885981 468264390 969720220 312399358 33443271 433763340 195107381 746766809 583338701 86982743 504717871 16547560 722612820 662000050 991978521 84093114 802411503 620980426 143451923 667257510 620136485 572830574 943899695 929004612 55451625 469179516 951972297 28799454 802616451 198604562 672282656 28449544 474170993 659479955 812201617 421888878 957484978 55464083 999353641 71254633 670405387 384990617 580838819 410137909 167649397 394988882 66463303 613260387 443386279 370551415 541131907 130978460 370013874 536253148 159208946 115129746 567664175 251918359 252607799 145899848 362451051 185159771 466971658 917891464 518078359 412469753 551328393 690691344 986098107 403608610 387795828 249825733 104146323 245521981 999760056 961346934 38366662 672313332 145340421 921241872 774216815 554865254 80058812 196258812 753190502 654298484 279705611 5352465 547550897 516247948 152493415 499025642 808793156 995695731 406852922 510219156 889191304 995529786 403784185 112036071 819370097 395607403 18709897 188777880 768370447 605245667 674972773 50245942 156736871 350341253 652149501 775190776 750238066 758971644 132272848 21034528 320582182 11734050 609993815 930776527 578241339 939965732 322197461 185624267 15251393 436509298 409966418 22313143 270932162 560826999 173145363 11113548 591170634 75660671 435830031 730478721 785067721 237363167 254545671 736228894 788697533 444239723 853662031 728387180 858539782 425767456 531416488 756120758 291899266 201587485 796870006 185448890 526963377 300426475 375701728 157795120 278089391 494259787 483941573 891371297 731415512 310193456 961855408 551334475 849207692 494773821 430021331 429147637 580747884 625031629 944344540 761477046 91407272 130984815 110873330 615140849 900287511 18144159 175431045 719826137 977743865 424501725 413551472 503210607 162130472 737165623 214459938 544437292 309971566 492597958 191051508 414189233 588960325 315484104 680038273 524969863 423531174 169318913 429669616 998407963 687076504 468602053 880779614 159552031 398580386 112786657 196179510 469763483 406063810 977676864 543976029 752192302 855041061 53381968 813680588 626432430 628901583 318501695 112675343 506730948 637943806 1671174 277828685 988479157 388956161 725187977 9893990 408746634 857649640 390773062 628942073 205592633 800328718 33017315 241987397 121771580 299389080 500604171 472106578 420438592 867316353 425606939 684176601 463118738 561082712 406246013 484278591 5812287 9242458 713913506 249643164 111795144 804081784 99697818 545390793 764203820 884142182 547977273 652890057 773705006 637699263 465761373 155987512 317216193 282287412 655794454 9722649 323700533 570254376 688944562 998643152 82962797 112309899 702266609 151933028 48987622 331781958 803775453 975010833 92392663 65446603 17969091 720987034 713993376 567001880 5384053 446212736 81210676 21364754 166712291 314750428 913152566 613588456 913742529 189080385 391104680 963353931 478042728 377771413 82274733 405439177 311174830 458823608 364488055 286338351 110915346 725711838 282249803 269205836 945974418 48559070 513809565 51334594 837543762 464682088 157229773 558818026 733429433 159155241 590585334 523217298 45145689 280163009 131542525 764514105 391929715 555975184 634714636 358298538 401552598 954508568 478736619 252247290 514712726 430563127 394922691 838460117 530983268 55339539 227777418 790397711 707938283 184184264 510701237 568772577 43891206 891327811 155611844 506957825 760437825 324719879 1254060 274384592 113773515 27581231 888083922 798067264 140512608 176075776 196974066 839662789 632636941 719292288 403037010 804938201 613718477 950238894 776419597 494886655 258220636 260901981 191275178 270171104 32971677 449112010 690359202 355111467 560854974 899991715 512732987 809826703 940068196 305303343 838298475 619759068 559118679 247252001 711285015 650476750 859288979 219578306 916197096 876266740 502696715 908970971 952694144 489608350 491176671 371994625 52242 686359915 259967859 616981385 942350743 466005837 216422936 41924072 324367706 307861222 305836790 519909435 552219516 519412792 63619304 161945820 945241543 130923508 74610475 659157151 611859756 996282644 909284199 88686647 755099892 305237459 402179804 678736090 214571753 152822200 284654329 705720199 775781635 304487668 724987471 200174525 657805304 554220742 847917311 98867222 575341064 412188296 355127842 308270228 962021071 434652154 589645425 806919992 634228114 257282243 697843146 915733611 909159414 795637055 618239558 105766038 999396220 760115763 812469325 680418284 34972388 978478807 851472745 326991199 518793742 273568812 839961153 122744823 384264436 361963521 613225443 74044109 241019003 41418607 455626148 360729590 30097334 812116968 469590115 609841975 770911071 756303203 1695772 308225113 313187447 203516201 278355734 667199514 301835779 802868595 581137021 646625170 158863589 496630991 644080372 270700272 148117932 49013391 91552453 681149139 966586746 469152633 421969365 284604082 217082790 237046428 26836621 188476555 511587670 781618973 634937764 127356292 526704247 387126608 895864358 880871302 462457146 650864672 918477135 989604957 645839030 903361907 780326277 278181190 985647435 543707802 898439738 867384379 124250879 132372525 604203021 72017646 330699008 356195834 799453643 5611701 986453636 246671452 663573031 185285073 256720703 725670550 367228305 772347704 292945237 765169409 656523995 608251151 155494361 155073214 9347762 464463760 537997095 447608916 349144559 129568537 114948525 920807537 627691185 549847721 539897894 386768751 585637290 808457893 839740660 280224020 59832227 305814364 620323000 531441677 947657124 478085909 216964451 769147034 14076384 920540588 167324271 838859869 404269480 316769820 593944085 213564690 281159445 795440953 647693356 494952519 19479228 643886832 869535805 711854830 516705801 524573010 288012794 723026840 396974132 978498906 75693866 203274414 47184583 522413891 636909303 437331183 630697670 51371978 609950871 808764056 530578230 268453007 189346946 527295885 797896051 318935358 713125004 414944400 67739439 636346248 893168769 738900550 504049064 486937140 854355318 323211379 749041179 982936754 65965948 820673652 666229691 893212539 754892605 170502568 297605970 24621363 577715181 590483545 643287626 650034833 185012749 239118848 54041662 449854051 830366029 33053123 619260817 484724685 733170898 431773777 690400087 737587316 124611316 61801484 279031921 20542524 498559601 44780344 193575371 526471966 870481790 793988506 566848 667290231 90313639 154953861 737585681 468139106 918281898 994364980 84830711 26327045 285990696 94568015 805340017 823477806 386782660 218070109 534971751 446975909 62850562 870857216 769210225 530368172 267481530 27724346 447784828 199083761 330824629 165186121 271980855 353559389 778426808 398251542 926904883 80482569 630779412 745636032 577712349 392754935 700459067 681826497 693362710 495233173 941082123 101579423 858543197 97134768 800815012 423132185 580282235 347150720 336825921 177936325 817783748 602487074 878856826 673290271 635482745 2023098 907337649 234027561 352180094 680718838 197962840 93941919 59106037 591329598 441783555 707786299 7373693 916828533 660102314 538799627 916571702 731043273 18625590 138469473 416422472 750424749 54652606 409977433 389744614 221833678 893851203 646313477 997898088 684649756 621771866 698927711 494436039 738685256 381984060 494847969 9885251 753069869 370376146 301027178 993129702 177471089 86461288 424899033 125279949 422112026 22254790 829721067 236674120 741187920 485959919 932320875 684575113 176727729 581829720 11835276 137463071 115541817 431079145 906931182 180432325 444195196 759659565 330783431 543209329 221418180 85240633 933388728 376781576 693394428 210307681 770883731 298769530 978503071 4961078 656315427 676844788 627083604 393813027 430881429 770050416 834803297 606571376 637770351 488300514 463455954 335802144 990786385 119907228 442171412 804459430 177615320 129416090 913615734 307800070 663029559 123039658 469068375 601342190 182925493 767149825 788150181 769288723 314992436 191837204 289519499 301324805 543646986 888939984 906772333 788642719 544134426 857685233 857454363 483079999 514511422 606367463 354378311 267154692 858756396 718604594 412271563 152706654 613437100 729942886 499558105 195165738 159406325 113197147 19277020 9521210 607909120 106666921 644800697 223981163 16630938 355214067 764094048 514974583 967921934 723270557 150362285 949672113 402817673 19900933 301591095 733761163 815499087 677250114 659369781 417730385 820155840 340616434 747447192 395571894 483241831 699191610 611305232 438470125 840496775 946692074 372252640 166278353 469642978 224605079 567147677 420146113 608353682 243652867 249866383 738218089 573686063 322240638 711726510 20534294 982615713 261568515 290888083 177467755 753150333 699298225 590547103 639806762 45796673 666060150 116514763 223328795 591010451 84878066 766557041 4577708 650624453 127203448 274982421 328029146 373382199 379116602 716687637 881832302 111944200 22423747 30122751 958945249 803984201 603886184 74332324 21079448 838728671 787771030 897276783 58005572 876170803 664465031 677041622 492390989 259215069 941233109 500348484 257049630 434185410 759302884 210428704 221227942 899251684 386153755 644570063 680129904 901782200 518015807 868743888 721892346 475105311 584376651 565844015 966261603 573770484 144173199 900026630 245720847 792550463 846831121 966632585 978703423 823550929 304455959 79843126 520488918 798788488 255242183 481110976 862584999 201564861 681905697 798968191 90129229 912959317 843284471 571303357 199859222 416901505 172819950 908612432 531425306 262822826 802013929 859493968 305440501 208980382 621922277 289110566 525197260 244915714 340418661 39037749 776418453 425747100 367739872 13017314 290517373 807707581 998531205 311479991 745570390 199599254 886211656 618694830 986970294 37961065 365706804 738461248 765239125 175089260 673399323 213850466 85976610 839210454 246228473 662959325 846013968 268148990 273403436 730043625 755902428 120360981 575970448 946441283 318012546 861907419 637008571 627841974 578437055 635024462 970091747 222432758 151097902 386512613 196537031 578844796 441452600 393152592 777596136 534253726 434455632 982840141 893359296 596208184 688443260 852985557 278410486 240815448 597212489 949728939 932981385 536799777 786712578 913034221 725465417 589060671 948354939 489565198 714850859 414178199 629856007 468836355 759735653 437886155 620040645 104728912 315321894 474170317 158013935 1507856 778604289 590397362 325913731 590856045 671198760 400754232 282509534 564148733 350951537 611364037 699901172 812783886 175460867 733864231 342852548 36240045 658675142 306686398 41490893 467658626 316580411 46200790 969999720 328110830 753878867 392367157 946725762 779733204 981442286 585900124 310907968 770592560 606790424 40768310 549120470 363259525 548841828 152880619 745002540 60462911 365894515 708916624 771792365 628668788 64321083 427072972 75641880 578452287 102010289 198005433 783019206 620376880 769148491 124012295 648664870 511433050 732626965 379273096 969743752 441628575 620505300 472917660 573694640 231951797 24911484 127606214 324240431 329665856 384702860 25663610 429775921 130738640 817488105 695409844 959709237 780424276 799718826 369997216 52355014 932912759 583147996 240412492 580911842 934938292 688911591 752490802 193783111 241646532 895194862 550023513 590593646 173499355 67773353 762023620 574257089 525841960 633914302 948548255 778487017 834295456 652865959 50107677 765544763 194846631 62866610 567937883 274592170 64444626 353283092 924535755 368243762 284667596 522257892 996294245 225054847 569846466 85391801 855537087 67612828 457222223 797911083 51833474 204730713 206300382 681850756 836617033 738442496 398771066 194964880 407978214 262938881 432571291 7574358 55698830 812318720 609936016 925585645 879845575 581385771 48674840 124140580 374558963 569082059 806418434 484635082 671408960 217560400 910616507 833027321 78322678 210377608 918282008 144099455 770618806 330107546 323257706 165355690 217679911 24946132 437297539 830916285 795017166 945895279 217472093 956922362 927458094 663412876 589626777 550421630 571719628 209586921 626876746 3756824 981046768 956861758 993372138 549676035 555558899 708830426 248510933 142337121 4418915 609883635 16170863 685972489 656186353 940069320 925069358 626529853 287995739 822047729 795847582 64376238 335211165 981185224 284409460 257055109 590899502 851428976 119829434 216415600 716809335 368695985 827110866 933061526 738851052 251983653 824935778 689921100 332129464 677999650 989278491 853902392 125986842 788036112 961447511 222904099 145868450 279444424 610173795 158469077 529622161 114679370 510026712 506673788 439558131 950902727 425888644 26546424 718943326 546971306 816525934 689051374 45188793 972122616 932098258 212306648 973045780 684129827 481359248 183603577 209118585 524979851 61309142 812114405 547324739 818536761 156286010 821320264 555847275 66506563 799352375 35096085 822788374 643772183 379377415 11379810 496728457 465537962 70025921 691877295 185367587 610884111 712203302 34101027 107285177 478105687 806342602 311169634 880872082 228854778 377150092 819003450 486732693 776087925 930479708 703666158 133650494 544829585 219150469 667303202 823719460 493868025 616862973 129533605 773577511 365160860 196096134 406238809 178713651 505381812 582365027 235156964 487632851 157328293 200397075 422850122 955577567 686314969 729144205 742270634 886253946 516938474 234930534 861939991 52162655 214290102 944856322 951569892 864278025 660638444 351005628 78966761 419953426 225602522 510107677 18642888 244828998 553774810 143175439 341042551 304384121 36003467 414772913 742935433 557503337 618771508 591103768 282159381 538489465 231632840 817487292 26262822 902397510 293109465 624475248 66118603 11175945 375459393 750171723 387262150 228261774 984663006 943676992 54493353 77351483 780615765 120917751 414986278 713632891 837115293 937874889 380470446 662240589 696956703 791082270 691168498 200423305 101725758 846416744 353920972 433440764 106739020 899875175 771495075 678342009 708837084 156255040 260779208 771140769 309278414 984269253 473748727 525362232 199338445 257098894 195892880 912152597 803573846 677317452 70265177 40785863 473449995 262714645 552801935 958865603 623510084 687958004 529233200 721159385 920818296 507514975 763848862 220881244 913198255 57933018 804548574 390968124 598958173 246283097 256184436 311273763 128721890 511290204 924478553 606399565 21214661 38192745 841458032 962285116 279115808 891471363 82689767 534909377 253196268 946003142 478432612 344119390 283454082 341327540 157500858 256890298 815693301 540815096 282916383 422399115 153808635 643325405 424200387 303550257 786779817 105517942 237545207 421922549 655579060 383483717 906622160 352172331 191760838 422473347 677311081 764069805 548610670 112166097 908523240 64464907 954467084 507009330 720729679 824640967 49903569 818100800 407668303 669080346 11650573 61586040 554928494 657998417 135836331 271114254 776432631 551197107 649226373 180098765 72345487 266550614 816018649 217847329 193613260 467201325 663438751 405112928 755382121 204003842 199138344 863588187 802311111 283016235 527624502 344552294 273819322 994027971 47235083 586276906 613164515 217188491 276086806 163937729 940010636 877424553 748845445 212000175 792607841 658657870 583712495 865083063 234482513 376454736 285727767 445487950 947350075 758164808 453436508 965963012 38320673 549024465 89436907 713203702 417773519 9999401 563923321 951738263 708972012 32892782 966253706 644001996 323174275 318487671 312785860 719500377 406087851 238913299 266995281 599308406 755411427 13753888 732212607 962267974 312309905 270715386 184381909 802654049 228079810 106104212 681953955 774814545 159284461 794431537 439882926 574585204 168530950 788314348 684025353 783975241 60680992 762682986 309601138 571779510 457772913 419385592 516385564 471348007 382894761 200238927 260315446 547954778 777074522 474957164 112102860 138927566 554930400 766405936 180225609 812918841 499355574 465662871 135366989 379351245 560021648 50619214 986519682 848080735 807345634 532364529 212536682 560365584 153994693 996016891 504202846 88816210 451349976 436366476 478981568 240053573 859566309 496532415 931911983 186592673 891247678 495708076 422610883 229341731 98301760 801040890 398641483 765908095 600856226 127195415 649902360 122691269 494500513 418398896 548246271 754646303 568614636 209005040 204642845 189498445 483838459 33329810 547450336 408975260 140203538 417540316 548815896 628720270 40590283 296851787 768142634 322941570 696392424 998923345 442616923 744607194 775262359 529365608 729016106 856836221 825342249 864897312 370964926 700593474 773571363 120138587 345944779 511521341 48115326 988980620 730215089 429436116 230503435 870324770 390624285 178101263 421703494 892936145 431600894 669839507 789129692 197808162 875731010 973410056 855543059 959512110 732133698 473458597 591520624 893352015 430829821 35353861 531722544 315019782 640298027 582643749 701273965 217206963 768150702 442172038 525557186 556109313 902566505 716044747 148435336 524258411 788032827 670034156 569614288 247994523 341550871 672878316 972126610 579279605 768075802 106169025 467073623 784548778 996820339 38521377 209812601 236043883 344514505 456478363 383722020 179265907 434579093 166623981 220040236 581359826 46540150 272594565 846434914 281156774 466177044 713234660 841237040 853107733 843660972 990604615 447389915 341747259 154521217 552830510 340808418 533511131 245251222 460620921 859525040 31589966 174713925 718324312 680696102 961980127 977341710 137390408 947064129 490937131 743286819 345094917 889428446 879186699 160051961 496236738 657590305 605795563 838850399 202199137 763117360 62476637 501630329 711355677 536328592 584395362 517099729 244834228 190610514 437727306 352284572 22585297 588283406 608269566 63516204 412330704 859054561 851992366 292392543 154439794 846129921 573875616 443466001 80298046 622962821 723490347 415641060 691868157 706607900 840687963 286856472 216912812 740999675 305690579 660707444 965716100 134653866 520147641 795536435 27578748 263291753 596851110 975673556 493782601 71741803 46339807 63164686 138885506 355308653 403199671 972094605 475047481 269087634 185333824 231516935 725935251 923482323 746697626 231716808 752553014 286240125 727865770 45468897 655262161 451014460 494661348 659288065 760132870 256865542 349232484 211296772 57672053 943282469 963220856 163625815 194907340 53679912 547194169 232031496 602431175 506757396 79583775 110835420 626349155 938588093 589574882 931851637 167706294 746287685 414338517 970930421 188941994 788624116 52699587 935172406 416992087 301034523 691338581 123236352 858778292 109792737 741859527 998159846 953942283 663051014 307108124 966278618 940489636 668850477 619610672 35996897 489630814 772305794 47074545 696239667 904730209 463642744 789663132 774970653 750775074 767417162 914679831 565943537 75154420 109830650 825240127 341059578 761517733 113140361 945189159 262167354 454364149 522332109 336341934 225739450 328152949 317300729 88460914 325243502 250832714 897127665 216607304 368762208 902212237 939306324 173632946 96103829 643059729 990153958 176954602 194576540 48723236 652420658 15555964 841399944 735112797 746923549 792112229 522536271 352341048 256613708 974375317 35731891 213482157 227315415 726999517 311423721 791434208 587008494 46011837 362049861 503262597 430505538 872837086 217520599 32992110 714248520 145500293 301256680 514807733 230265514 490946554 836005544 149497454 414846554 443958527 645242766 241425328 207140002 953533036 478653797 507795636 187137658 263673134 977810486 576791368 769447382 73454624 294243292 995397307 732865086 418497705 894520967 323510195 263980964 341579706 336213111 981524532 547248103 103869234 155591472 627090848 966852624 923140311 277052168 124032123 881605425 334586835 757853159 861473568 202269861 377104265 203432942 169283433 13246252 596522145 467403777 209524164 558612902 505807885 376516908 658288328 302285330 137838041 564240259 193155669 823630623 627390035 537313676 505913310 353058225 903782418 655657839 650619439 696251854 4524320 11329549 699391162 168122068 797779448 231992856 613598559 639027723 954144192 70974460 515831709 54851017 607009043 263527865 574021705 997667115 276082931 605502016 37474696 813253264 240405594 681375563 824779967 31230421 554125211 430412334 352625228 350248407 573259727 656970157 896649384 388873826 725624276 203709512 717322675 376898811 469146428 998971458 168470358 24942980 853308536 369292091 77919526 999301914 397630895 264572639 273632598 343635158 739281839 414204682 620013101 258896458 669513071 347501538 377759679 101291203 237959428 958328583 317707312 535146841 977695512 350029188 968275993 923053984 622983125 533842054 501198683 927749076 603405554 246367011 249272406 858213501 455915381 191651838 42436553 620343933 542868262 376736760 658430872 458775513 236304108 736884091 916028819 577050916 435676546 589151560 598294431 34493851 352825424 14161588 30125357 781730431 190953424 528539027 185897918 971454999 166703413 479233485 36712078 990503883 957278292 780566049 93594793 445595746 349699815 82549637 616210048 690940963 242969806 219483660 719799641 939067868 238589833 702797283 996698820 314543171 762275997 951273142 303898980 947312502 715344906 144019364 342515698 827233898 542606019 655557780 272225097 353683655 54595743 963069510 191324710 138691923 173513257 842059224 338542638 631049922 485805561 231344641 405072694 265311866 461007141 90733366 474873801 940058551 990555650 481576390 728838164 947438830 78226167 441855087 199112609 161785077 10502088 231269399 419053555 79151363 671959384 404627745 121153335 391056816 327234088 625750909 490310131 280317418 759385218 368961134 921272141 305012366 484394902 205310884 96017149 287222925 829785881 616440044 620982986 299102612 883199957 94633202 393631965 512808898 411632675 581631771 36137816 296100951 121992188 750912825 225142927 635138882 881755733 608477182 736404973 256273100 267347930 495157629 638506727 449698494 690445595 215678046 992220731 249612423 796681989 13257401 445949741 250690455 896058880 807053496 578550188 849637796 92584528 929272545 416546590 361882149 424397012 815207207 198544845 496918905 243493651 230177303 308948797 999977773 688765972 32028930 818489520 433544271 736709920 22862541 990275100 843739188 670622833 80883375 742462959 321678827 946830869 793626421 973709979 61393053 451136194 85172051 931162994 769723051 756098944 423860477 976557370 895403562 51019819 79163382 272854336 778451771 710589869 879855852 890845012 708125042 148215686 362195099 542331765 175417702 237942725 252320248 136356142 317182723 364726908 102479213 388208261 22250557 93582107 614586496 420723720 32089206 39353193 700036248 63599157 169214101 455550585 88173181 946719467 434088076 637092918 218263418 936431002 354769169 487889500 899036857 778953849 201921042 967893973 178192248 527101231 446300425 602164769 56700222 740265532 273243906 601977976 333788870 669594109 290573874 770005939 512134909 939690526 484652048 278064206 321043021 549913431 515203945 465445769 526739638 224420739 703441317 637524201 299655445 189774363 147754255 552574253 272113911 151720761 523553818 247504930 965908033 169220020 128290863 381376160 357107694 740845212 841733398 384245262 647933102 733641473 884588451 296374395 669591487 49301612 998971158 757466201 477741223 989463681 208405172 717740370 798251587 968661725 961143345 630871021 569677332 428502053 762354786 45159634 95213154 788868142 586430408 31950983 590754395 650372567 394931005 67084744 59781594 430226018 701900731 128820871 196823033 983841978 415749562 311509426 374094816 97367445 937841614 725288486 58965257 470231215 218140673 958736420 361214833 213858571 446223771 434888493 564860977 815904851 84204302 496658782 726522993 155568751 351282033 276990585 977347631 470187271 688937994 679228973 460588568 29963875 137454971 619295632 555684487 749759165 841322229 950762479 507240407 380084087 513586170 738154026 379182758 720920378 851896749 696521680 405002660 354755007 258010174 752732850 21366470 912174140 128780617 513878437 676061451 245460702 870074191 49798982 632905301 308519873 118763318 262169819 578092090 610476509 150355339 289490177 299708551 902270436 649133720 23419749 192894646 829517953 556847081 158795469 438800685 279965257 18993162 962278528 509387861 393099145 867486455 974910445 192353588 347673316 681913712 773755560 901896304 520458259 572703068 461531407 707674661 686384629 738776502 464182882 236699491 335441547 500758796 421689068 766749966 200524597 900723531 428051720 648184730 808748083 988142407 621646619 936502147 293689268 94745157 837273076 822902780 747645558 264486100 846626802 401759563 105583701 392575257 546489319 563024493 653953318 892948358 135201090 847626727 746039952 815108170 129742410 699031229 393596665 381762740 478440709 692342904 711481861 483375685 653014895 875888038 577624395 512524637 367797992 470228181 377382650 101372738 160159131 440500411 665346201 548821390 449148581 231000744 975305642 978098326 758519124 547356304 387214701 475432464 508500072 191218129 913591286 484853851 864466243 266965232 985350030 305797641 21396423 661258362 804973257 340318848 862892702 32591045 577342680 117991865 503784380 158880171 101625408 14469790 756297614 289617046 52868013 721109125 642400611 750476849 150552493 447514585 820909663 567651978 355178543 390420160 690082802 906577855 867699137 803938503 256367006 84000355 68748141 734297910 503388042 529127250 349862750 973267303 499493679 210419252 132025198 640582998 82286243 432409177 697722110 331299427 793542575 579195079 269241982 229793287 290105979 109654678 111394642 972677360 797825055 577682591 753768735 824667190 922895569 316529491 56519609 87869187 221339631 765209708 172800711 961238397 961935531 236563122 377672652 608606695 496531009 208949625 259259578 20614708 390194076 552661864 252104513 50537163 666371158 575105012 355723480 761276062 69940837 70141825 828779451 208788341 41497175 61783544 880524763 211688360 236822502 580091517 782405265 133395590 622706616 596857679 314368469 52990827 302153190 815901928 48862436 813100375 999165779 158687058 743579171 666056942 728924276 652232730 657533339 360755026 419633351 561420347 721273854 913890458 401804753 509318263 82511670 742533985 415642741 955811709 601701516 413998120 162476988 591314935 387517775 260317724 52070504 392228275 57733004 231258999 833675348 551304563 838232527 636911737 965697951 280544031 359133521 186214999 396439885 405995594 555024062 374419970 77787441 827510696 501179824 820542061 853250075 181850645 637926330 932456927 921043779 339327185 963675901 861580332 52724110 661701121 682138936 497243233 410347216 871886947 705878429 338003808 268282129 446008486 643477461 187151802 122243457 323075263 145811479 878187640 124926174 952734278 129850117 353137414 600879203 145862926 602333061 464795401 231094486 227413452 82323570 131180510 71361277 4762415 590306586 742271299 558119501 852760588 367580086 634791573 555275907 262545205 489038874 185326351 788735141 372065588 1431326 1200776 215683541 894659739 703265510 393361213 621618593 944826459 790512514 387777105 404030319 117261677 302252049 59896555 215575082 640308542 169092132 818747677 44184463 720394466 599956637 266001868 461769064 931175980 889518559 460871382 749506763 459481356 375985757 734077959 276424395 680604975 669722148 651088625 428543252 796371038 771342774 707390012 216233188 892755058 627483716 709338299 9435836 755031672 577215207 235123153 271256709 301776638 951504932 388841116 817920968 227060515 966757827 721246061 228077174 212619046 831105025 450064900 697193720 768643757 309850547 688561036 929774624 146621350 154700075 529779193 191063172 882709219 348673847 465723936 638855110 70958357 879119497 90692045 770388228 933552295 945752150 988880849 884002278 296052363 53023665 241053270 620169698 614387856 42679138 864046430 128929069 534741552 849274944 483388097 223891284 676768272 431309888 605265161 24910322 367559562 32437002 62725035 463791643 922446230 425103502 742416009 89678290 26490810 547251694 983380087 153795332 766460781 297975524 589780072 625979010 618801651 22921180 551221460 896831566 252283622 111891122 249615830 503630772 327794699 660289043 80507158 696668113 21032792 735321372 890632235 954097016 597594878 939841507 114341865 896538448 662824387 822108967 223049862 673814096 108653241 478427269 274210411 438255442 910655727 11861810 532539602 103897061 366185660 858311878 75372531 355932041 792770673 141278810 316614715 689818238 537389948 996873678 534652997 769785189 295664453 871296024 653530052 93396770 623719293 579517 577574184 457052306 206257967 170448171 388279818 323724203 272624929 245965043 836071885 192947421 212275830 446882091 457248932 111416202 204542122 829702199 843809478 861936317 477659869 9017591 782779868 305158198 299897592 866729269 811227477 673561742 761408093 800215143 57116188 977763073 483779862 853420611 818824836 810667782 778656505 915943867 450850850 112637048 715196040 998346300 436778521 564152071 973475601 130762211 238053643 841750488 216593283 32372295 822049 782634350 374469949 201840681 806610468 658803031 969284904 173362972 193066279 932278900 230160763 227626694 90467410 535839538 575931836 237980243 274292710 553661781 673662216 722952403 216416800 517369412 433671374 357760857 849072033 920809052 505151521 370565800 69277113 440642060 586616460 840153525 385470149 647283469 450165985 599861682 402148391 6930119 239962391 376010278 915026738 657822281 460189902 881986425 405101412 711016005 285318185 771795578 602300703 44245437 411106605 905844990 678627233 891140470 620953604 533116516 845732168 306145073 563233134 62296504 451045201 583418474 920988869 803792390 308708219 797586461 504173952 821661144 597200992 695241618 450815169 599938328 659592671 857752868 736835513 361187697 919890843 319554997 973929179 341833559 932585119 976784862 378466168 331994474 140367946 582042022 139369028 322775635 242252709 273206473 969609452 288076146 389572259 313711256 694355694 895277211 708887551 888141716 460886090 147524886 532983452 343467219 634922014 462469836 645372058 701253845 284902653 946846720 365488991 307850343 838423762 848286192 714050508 954044535 249808327 252147135 111429727 872806252 79693296 706439044 391960777 846650148 801154612 821624494 562885725 686239343 809909611 394710584 516739111 627627608 87863173 579294408 36121472 542298448 679428095 372153000 427779328 911998678 632541536 456969201 853816316 336707045 209143784 463773842 817169908 126246647 857556861 615776805 585924655 637322786 410925553 64756137 137555905 297098408 169745391 670081009 745488082 837671019 399170411 371602344 201154238 951984139 852467321 873048507 400083083 902805224 767137956 612248953 327994880 699289163 382736592 11802143 277685570 282884157 409352544 201995439 478842430 513588923 740251148 30366120 705066662 957605882 928986475 816640451 676206299 89821748 620617686 391100956 345231748 386301439 480581731 867692872 630890294 385906772 216924876 916077941 827125882 252018740 77143107 272446111 765952400 193014460 844688047 77457703 830284591 996750847 471377904 409222845 410245652 802512550 297905611 238228059 852290704 650409182 325521765 741929327 41865443 509039373 113438012 429012340 544369501 629393447 240728335 1039043 50784043 360433398 119708695 867817575 222492324 803774559 781523599 383902248 769407513 646924871 18499925 142840882 230452187 76550531 285626110 98306133 509042248 181789689 979661462 449316801 84834778 939369192 745876636 768659356 304351223 208840664 699402328 488778589 576400610 763568841 844599825 198829369 678901140 103081867 340464547 173053602 259262724 741068319 552954269 775727406 372506254 962826903 704198699 145486897 424017608 247475245 750684184 902870327 508456216 854679040 177264780 970587535 262092621 628009377 416359555 58583558 388431898 12398844 176839109 41880147 741351833 587624299 772827201 911338193 723984719 142680382 592558888 734602991 939685837 198996902 493888349 221803257 410022141 824389366 702276298 460099115 608368919 516043591 681550225 803885905 712625022 126065816 884645121 822066034 69826771 514673991 746797082 955994275 387347170 698953711 789345152 861547146 86275295 187451222 797239346 271245955 55258703 658838293 260427018 524625207 262878910 606853306 820771603 826332102 986879183 289817848 220854554 660960770 827022391 569179032 273093785 575663381 727868413 594313757 823152496 16583279 916382755 442939747 98322367 975818911 8893195 170606599 551861733 438182807 295732243 984637611 966738297 134347784 711029175 939469881 51534008 638072722 617826798 425265360 494034160 872951537 219494473 890122366 286270141 519395667 526985927 84460041 878483308 870226373 197891994 176143169 836922491 623106300 753835460 317427157 935534600 436326906 289300706 802161452 163476365 952975097 86782960 277783699 317488080 691686499 576107521 236421138 931904787 734727375 988989229 602692324 316994958 903521024 607553930 555753991 963449032 435357322 809155714 969631759 295371599 602903300 891369139 56858704 530115086 796436744 7657601 677976881 252940958 265806458 399421665 578320575 755160407 4795731 188307296 954859366 974352521 776817623 648316304 62732554 320894264 105623258 199250814 440387451 817733804 182905730 272277047 651190859 589770303 245643892 428376295 837859487 26477092 247355438 160840452 783659203 802463976 321703205 982950293 857312806 550921524 457693509 785802367 863539446 861724360 982512666 477664057 393593029 606126412 126847683 546267485 380286869 631401500 74445320 812463831 76710244 546169172 186054417 616325341 310474160 212519636 771551514 63323901 534752831 56442799 62045962 468987975 307761893 359265731 227798658 507998049 631565224 236647379 632832447 613047229 575739815 110614518 300243663 56228 85813290 216550775 790410102 724404785 940771947 277370515 454256084 335172512 364527535 509009493 422462259 114995842 81704294 516616446 782458352 665343125 945515978 144872583 224580274 683986126 410022943 229480470 879985695 894586697 793105891 322285650 333665534 834386360 649678196 828440400 28303598 380519683 730501512 138763808 218821442 663154628 324870314 361693995 347268077 886727386 49028211 892568582 249111295 153075640 324124332 40684484 773467766 11670675 597412646 226398553 915362047 650917218 82528212 969346510 747187525 73843837 99729624 441951639 444835392 211283720 377917108 12327699 982547994 308744958 976515976 692875223 613489185 786675444 749046506 23387453 560953428 435467433 334659472 116854433 159641229 295900577 124382724 256068243 473210273 590024203 544935099 846106017 427465496 644327849 550751068 293708159 210003755 707691597 282741343 792758557 853284010 471677095 869334107 311613943 476221416 349174259 77993828 801558831 729810350 228096792 926211253 408761182 188453355 585105399 84653992 179114343 812887175 609105606 132098928 718898690 439374301 285184271 480762829 731111391 864527963 68181567 486879264 920899814 477414604 240506824 248457143 45936448 404632995 746264446 142721792 347525734 543075477 265063553 876424689 184638919 685287309 449705208 325857869 176200852 147500212 482165278 758134632 145814454 340456659 975251946 777181429 713681684 707704795 516862215 9156861 510793477 391030479 466530323 808060435 826974946 103103215 390323690 725850867 836570185 261950775 307524127 263916570 620272105 368936415 999430196 431237721 519667558 106151421 930854803 272106426 152876849 342315325 290027023 828519369 403663064 211160967 929932543 81467647 482355230 258563543 234813672 22282180 632311204 80749521 935404918 947038258 573916214 717344307 310399895 87430991 603338086 768793278 595361299 413064334 570578198 698416650 387593341 586105803 469812279 493762571 748325857 238531661 173291931 569687649 29465219 510366871 824351617 411514153 889736886 443577923 758740132 733681060 235173456 221868128 214523545 792987111 522444113 572903725 264148016 898691523 67022988 133280414 825310779 766958457 928141709 374743406 270584835 771424231 707263525 802948103 772155465 633154342 749340378 750391082 423604633 829544312 96381335 863964389 295279023 596296895 325745001 57350844 542722457 523902756 633464281 357503488 220614790 544106129 469279394 325751191 190757939 175074968 393673066 202060694 198051624 498555335 585166582 922292978 355550862 341621515 177324317 437956858 969906210 431882909 753137944 584844786 250974240 92228296 238691653 158131421 748339718 525699152 53285072 990940667 993241552 418418007 923300336 62829871 906777004 114303793 236826368 354424777 38879337 103872588 625502235 213887350 213852363 991313314 203217042 528691021 757574322 850723129 138438894 703930736 876956649 509614601 896302210 401082089 66721378 402826610 805018132 181457160 687721616 467761388 223970384 108348395 153639759 828156005 81237457 345920483 772781290 962210257 953328624 641344483 654278015 95995830 679886757 77876835 14325363 397117479 53662922 422894443 223482159 123920959 825479594 551591255 436906593 60392746 250749441 424978068 718479557 708250663 10715251 182538510 665536111 35773254 944991042 801256462 170230135 599846025 290462900 822440761 162835943 361127551 826493954 560906006 809210058 961670774 819807112 553226398 634825400 945460873 568718357 346812058 137135251 634075409 365404766 871635493 94111568 308472216 217116331 384057900 350519962 176793339 473753476 678963556 691389869 306168810 223677254 788748068 870338403 483032889 502662444 547673682 597041345 122202007 625743570 21525026 633285477 983977304 381892707 215770219 180979274 548222501 762594551 744485975 342569982 224690737 505345655 783855985 903453928 943035486 956586298 697024010 119402077 177341862 441788485 560694014 494114524 375669353 769591808 859296067 316671305 607736960 781839920 114239572 78365125 187189896 745170599 89708940 141999661 293816641 496572025 625201303 570987086 597642781 21448051 672380121 354121479 818088729 403567794 623276732 654649587 72110435 773568938 500200460 389803905 985121235 995824065 350616372 883057131 494343744 642780701 884130647 256490551 384044406 910436465 460444589 311037469 367818320 740132765 52641013 316051338 38364429 710893439 683862385 645182326 55338960 227114438 127688472 565928544 720637029 398413686 156396418 81806122 626900431 466881696 5368176 434664563 42315989 554238021 8545688 914528154 651548185 629961115 594084279 235894010 239628728 934346884 172539829 306763372 824821290 167727010 420824374 566843402 836300899 670890256 793551361 791357906 420506082 591685034 704747853 771020199 629117546 48171356 298411596 538090561 37591838 851190638 637500945 152279765 433197954 898623472 81820558 98472831 527381158 158370376 728006255 929555679 241836638 551030399 505547893 941863910 515136042 337895051 156439677 979324 955557993 261001707 973644714 835124955 525716671 299453749 501450582 976107841 946843892 3264914 631948485 299896808 730791 766830397 877537720 833799834 560135740 88530181 763771434 619985233 358728546 483379224 289666298 299284321 991651749 665300879 431172985 258253585 508979632 74221168 946962591 211480462 850716630 408608131 187137645 771440397 781215386 240526008 957779946 875929304 464521745 46344522 125213611 612103993 18255884 578744227 623303934 237658839 873547970 622536362 727999943 375724529 911080068 517597199 253252555 229983052 332316541 513058296 170127575 207276465 145833312 555454008 332406413 922324418 935383911 188769685 94777648 523612049 231195543 211151487 134441847 998173515 826878939 672114271 773261139 284645132 789957209 160219039 883893233 388902240 584479818 613908053 148089953 907095104 316310301 732901267 698189496 912949867 445899220 863548525 340236938 437993326 547239652 283865655 767472165 700134041 556791043 613607351 638591925 281689217 766297078 299826573 232503673 510895633 280524233 787003772 961907966 496227854 96557947 593948878 646582404 839650803 933004310 205591074 609522657 129903625 693802221 40052727 607290597 742554679 872815557 664460 461939764 631923487 20568265 608041775 762854682 81579286 61662573 242203589 18936782 87227559 154027603 84018278 8048796 44425565 656591351 102846259 924775544 952470361 828811597 557479878 971615808 76720633 351610113 523552895 965963022 114529007 803421305 538366184 411786355 797006188 783782277 653997793 79911253 210182493 434666630 576418788 208973740 509690427 685202403 764691764 420061761 169569054 120458422 380575099 140340394 179817681 407864103 61666912 703577675 410325551 364190502 210706882 450232963 829146865 369549145 591095600 94220634 930178666 972464821 374333867 964427546 385210488 77315446 863911722 196479879 535516047 240024610 528526840 429797798 351012236 595825106 608269783 982459385 198263503 55936589 735031432 145148514 511408886 68355145 886412661 559926942 690259403 311172750 724796661 130228499 739479106 282194058 993261911 378224475 958322522 626893923 742411030 631402794 199634423 919969346 724908704 604003768 907993974 635153103 160871663 654488652 15854588 741557125 989448279 503853466 729097511 54893681 457221856 986980895 27040017 707763784 697006605 399518799 438969273 101313050 591299937 537071003 471401748 432768725 104130086 515951332 962590884 262053062 431685215 37070375 912459908 154417935 991088662 859600716 384265055 348646653 347322249 152564390 517564177 780758233 929144689 198026576 264620699 805350006 812037316 540915624 982783565 908179394 745705095 459373875 273400448 60548337 205256403 951845493 377500126 434325382 971680374 362552550 318289868 7055190 878597099 679462749 247479588 49019156 853400549 801344501 769320413 510340879 833292410 715504027 301939950 828745948 221412342 637614902 270944587 995045007 537695723 76644471 480517328 985860293 697441051 560853866 428130617 561909283 667258816 401504864 121585627 343697060 319885953 213566801 313117352 821200016 497712676 730888314 878987386 779123905 679436216 668689565 949536273 960290312 996077518 312078604 643740697 124231907 820607142 306871486 906508880 153157725 884853511 554574078 942152924 701676033 440067336 827550450 976280254 736658901 525213256 558249653 156859922 962747375 37824849 405080603 529394011 378798584 726751911 156510843 89712366 728475073 319046106 541976301 534798313 299833325 103383895 744354198 442420068 452569215 854408722 519176532 680210786 437794660 64790950 825066796 122830642 546027433 738269819 910802563 766271800 176327101 29437887 515727765 787240389 67692055 463779336 155079690 997435123 311995354 248682337 255861004 486438826 379881131 955224967 91450407 470579735 110687006 471684321 365642144 746139314 167255072 629607767 837608568 257157008 443537036 913395656 233648410 771753760 41581894 668339298 133460260 612834611 981811440 510243083 681874768 552631090 535417895 231630846 348713678 858433462 795694345 870012702 3252029 253513143 795038066 863030486 503434317 183525010 388247595 540649310 408597219 516927036 814150709 628530690 747226135 536887987 510163408 451144741 408833531 41428129 143539797 180547765 378650192 957100062 935641497 127382422 596186224 658918489 844720523 367420265 663306313 592722240 560224206 530994687 404804021 368318887 410300038 673241791 316443098 305851728 554089059 120843592 159830327 487158607 820733092 825147824 830913901 511855848 356333854 324034540 840438216 800939136 491154360 311690711 432822446 354980822 477816277 460464416 734861599 748504679 873746670 223579472 937679507 867969214 165572465 713185791 31756729 385750651 937211479 647544434 109843390 123499202 703121983 48611284 236871592 435503988 1468386 962740975 575719970 391905579 901280643 335747768 506608418 155845852 750865410 242181298 942472427 142740534 579252723 124728755 278543902 551598331 621748134 284259667 286836771 24245498 928883363 792693084 75528410 317345255 368127306 293363263 871198153 699226550 411314896 360805675 298341634 649393545 487663648 483879163 622360274 767942216 319222012 65801680 647375108 212494796 981683137 915705488 823096406 300735758 786816243 407019393 673428845 826864623 566214118 628412628 692209189 318615308 571988916 605617283 512767076 265884769 940161425 544215225 267023101 293947724 395764048 627806196 756402839 206063482 542559099 402780448 217160909 295709973 572910760 259452405 902494934 585202956 692722431 956827702 222381857 659984849 433624988 525203018 612471130 769534672 909003094 398490827 456616187 101650579 799134073 339020816 144227957 379109052 216015132 700028921 930192818 415626933 734035980 242674296 38496712 990417579 174215365 638438520 333363930 25545813 975589913 46142995 882567958 575709546 492987999 394062065 166756804 244709508 493708951 360660251 48735003 855676402 131198297 963569542 215308369 239720268 679388664 17693288 973465865 21958262 361485344 984661661 749239459 148236562 893141399 127232073 139119076 243376532 113179555 390292739 547513871 332060177 906438551 944319741 556449291 933148931 765168024 514690143 685509485 520489258 788078785 92631384 293190618 38220114 504838340 796793528 883790388 509012241 425008853 734122826 260881470 675950289 671250096 434396301 883805388 214788026 293587922 334390703 70961696 828816786 58612618 311790050 961704263 997930526 786782477 562874273 65088710 378121479 801656453 649096590 881383335 960918421 432035568 733959653 143395437 762071455 564669827 105033967 360103636 562495100 891284776 448849483 907159321 382432003 452769700 906202417 238511502 354494996 755548835 747873355 49611857 795409028 810196191 622838905 653271933 188538139 214344231 49322709 907798140 301575038 264993548 168190207 37845223 487343811 454519919 137974536 814178228 945282386 317152788 28417161 985627194 793726328 36213691 694587465 892340407 565205495 240966935 889549701 548588256 293634078 398408490 531946934 965759709 50925912 852416120 164029400 78008752 519691295 80163327 677759045 889165032 944387280 369803103 200188407 827124400 366767472 331575177 995995257 320649425 47358001 271320302 456441123 1634344 777723422 986080259 251197466 827901291 349635173 947180766 900132500 606759321 302578278 752577813 128482205 179006902 763913306 512632191 757275255 677101131 726755463 633991316 362227390 421686950 954045886 654590226 71963118 641018101 909860823 730469606 265900832 185994232 165682636 390578741 30639415 673301927 821326889 53741597 721805590 603029632 909409686 114956310 704444441 975405690 204680193 476472050 511312886 195160376 463852779 423373541 716572751 500511946 416179939 347259533 651429829 690104245 537894420 603096367 654895048 191845752 639179919 469410242 86030777 558591469 640359955 729123780 715887818 51981256 893150084 248683601 384239790 860299583 432343531 868629227 23691903 380180800 166835512 837534830 460128286 536640219 436223235 855438450 876022298 359263049 75190732 588206504 52112304 976254979 233628874 708525885 283728274 365152417 600098648 200854042 88779623 151633157 616438013 662402249 873546704 770714440 18963434 359437784 929452276 789006705 475199000 195116613 224092664 729883037 594832826 849725042 318084317 559349982 656578731 824423709 654043728 692419520 532866008 16523109 295845767 942238600 40301046 629532840 269130478 794919427 611042733 938316803 562121477 423525428 489936945 977002525 855008361 498860641 998629663 872103628 564864068 239040688 959207081 88600290 560092647 273523975 966962856 332174190 578824025 646725865 397167146 346330977 37548385 176844181 532781630 535273998 390047281 308796133 424279852 188127370 568869947 905665944 346635273 157047838 713307438 712289998 206567018 269599608 915451930 246191102 657190586 928308178 225247796 356680131 551818354 737805365 831411914 60854503 544273395 337585319 964472649 836023609 647945951 103603978 184532836 285027469 784795556 977545076 798177273 437899863 698185697 676831434 862461119 732733085 897438405 594334326 254302232 752366057 986551936 684465813 335261442 49477475 702724758 999319097 266289962 328526430 993415052 170701797 412632449 747553999 908488592 80690429 799405248 543604507 892380721 116219818 38549450 462851277 106370091 663679259 110116977 546919296 888302700 856402143 168081977 238842417 18216378 523556967 632235921 669277936 897122314 44895072 848857639 791216446 288454517 984172860 302581645 724900392 338065138 497252307 138557220 890287884 499915284 816616644 534649193 376743158 301844589 626594101 538761765 702191080 324254941 997555565 602087074 391033676 71566727 928119909 797769992 576048966 924031165 921358093 889837669 47677586 436482248 992765301 492561129 838043565 145255298 467691676 976959140 821373789 20393463 350446925 414990408 12178990 182401735 255200144 990201198 94654343 76191009 670942824 633456358 438521737 26224134 420362345 808365407 496934591 807592113 786254690 830631001 557804194 312970988 280083362 395838317 757299709 102029636 394857541 988662519 497059209 920173325 946620682 967831943 370902234 982421894 83051436 270972033 350120210 516065004 598168107 901870388 778377957 541804870 965326229 881204201 455002355 103912357 462479612 261324392 534191704 634704655 955588912 632318249 504019158 185250495 603255327 615882546 84470833 704342091 698470663 224936927 787351815 194825612 53133301 458865747 919635739 825786441 206344141 781900210 22595801 788972568 384126940 539859028 943478170 42535617 933021736 338786638 136796069 306547344 709997386 394452808 676004494 372327003 763488961 645994184 549768396 230912782 351383758 584307898 811417521 374650871 442851726 551408784 127319007 922633552 93965353 327776716 64816516 584182639 593685987 620287801 169745622 511099980 99032028 700549929 144848447 409049981 758265354 565740774 522102747 37895238 954074097 608528644 923263838 758803347 335131950 935781293 152934359 305865971 653461728 996835055 705364100 808386952 839872350 35783045 416587566 822647351 303528271 242830462 343035972 371773684 668283155 329289371 148940777 570125098 865824811 707080626 812735150 312508472 620898349 548202399 590278333 992658618 288020855 622315213 679354960 287738582 72335274 535709279 61382997 112633523 836305677 307065411 648096150 277024521 822479240 475775326 481196490 958131277 862935820 612784847 765969621 560291425 220782935 744312061 933478370 892784769 433957524 283789730 477444230 474582667 921343033 875553606 42030762 445154753 60913536 607516665 9775090 557944406 952185234 37281006 294279473 129389038 6577121 209261812 407400826 621876013 265867457 424839504 261354289 315157303 648813794 245428294 680170811 621598144 978178782 189394344 572035099 594555877 870707644 635868433 183557801 300493344 494719398 852496260 579882136 360241556 158809413 829499942 457383139 18055679 739025053 983198530 941584506 344285931 594357641 615463530 916314814 45980842 314734343 319042920 981357138 55128734 848591076 283224082 505470182 574379266 920012743 127754432 345162527 897898741 707649152 73662552 219716046 749319268 200159520 892558321 562797369 914023613 799283844 850323267 620734543 624354954 846239524 941165502 544508471 356696772 160656004 55480794 820507450 697210540 331595853 344275556 391730377 667325216 24824774 701865726 545555915 759572998 317910636 748586792 169094122 999008383 802947367 922441919 2423297 112417768 900612136 479532359 271505608 437708020 317107484 97881644 903108843 198589869 107174440 803044410 528454312 848588773 662131982 507423733 39262525 783320456 96803275 923775921 381285562 621968119 631007447 262637871 15578140 764394472 990055524 56465526 177417371 920394720 380081304 394956971 633392854 813251519 540971695 984732326 25226567 217627787 988078324 661809288 558198084 775197671 211978632 623889057 174672838 423008085 353463572 981313329 945932342 869617335 424554041 836723066 585611403 442102796 35840302 113215160 78797335 410754003 689391017 816176869 799518962 350921373 848468150 618564111 407606014 656645631 41032588 994138776 978327984 19387166 879511131 499061072 327363338 898943103 346596979 201328235 910592886 907795852 457768963 317745042 303802336 727892939 577482312 227113650 444355482 32601851 208555644 77165926 987289661 105729074 929095621 436738979 291042616 213602494 993828286 539921156 878395243 741431478 909319748 126473077 426574338 984597541 203339253 653773961 608841398 591129390 258203992 278582536 854629128 680924860 617473324 352146402 950391398 253711372 653444100 36182751 230491634 796420639 948665147 907023839 491347969 345172287 334515882 503641673 378576075 375662403 503233981 852644951 982496149 463774035 481183768 390476006 626527382 476815361 213751855 449204777 742432253 211428942 732246181 299404417 803257763 840700297 668587444 819061 178198557 534247255 836651730 843261270 877325921 709065733 424236772 592049725 797295443 918458748 886994525 547368309 672333539 171218917 22833753 855019259 123726234 92299683 326480090 570334755 467997699 715453896 32953269 241930284 614436406 702462826 998071903 845998070 706692535 146002113 596367467 216890300 102033542 232946475 298288096 277437039 873683141 909216587 383446068 893003239 65855513 746736665 27295245 440638480 585976024 743525204 262006007 968154526 969243203 543138719 878693496 211973988 655895318 768924769 101386998 500253704 412840884 848186906 572334693 976559528 534981957 847390865 302332869 32851180 534224578 898924966 769799436 432810039 161638997 580112343 369354433 218839553 770153849 563161219 372904914 890593922 766443342 220824092 426003069 944575881 190270856 967320283 990811692 851069232 825891105 48614182 760069899 363339090 386585391 426602929 630800480 966793891 504967141 476632824 433926410 402596273 219880429 76644946 166977454 886381033 906043104 247176578 285650548 373156514 480961797 560778601 190729359 154030949 543930532 501236604 979514263 534439022 569111562 301686396 80164726 232084277 406636110 410798534 104244093 197131792 356499504 304262793 135583976 178793367 821093542 484238757 558194165 651478991 540458779 582173141 43664900 482690401 654887101 250003988 49415632 863875248 385020787 882461971 98098470 78396191 254623785 138024348 8697210 412215634 119691306 243859922 840913333 479777989 192640982 950320065 561311530 705100400 772593303 888461378 195934174 158929855 332992309 939528279 654994268 803587126 59459480 149878570 340303989 130011820 205686269 564663438 257133287 740090092 520275454 296747896 787277860 643859020 309409015 102302126 921799834 33023449 408886132 617409232 866144758 270488470 336911026 726406403 643307349 559247628 990868719 247733473 179673949 724802873 257906820 853235756 262974624 109696953 963420452 174332575 609037451 943698214 218650567 563905785 290620700 728952843 428464664 939143182 339567848 92175836 611897303 753764754 358426992 942918739 512650065 64029447 120980952 628353613 175615460 386404497 941988316 456668994 255598386 21375173 309004646 200862182 218133336 70510305 468372155 322523947 891104260 337056359 105760778 293683831 835415953 621219135 573112453 462091254 138681759 916352044 733075663 22128302 809279098 969886054 451242392 315657350 274017283 953363004 307380965 865088238 272365315 878610911 511051740 544384954 920966167 140587344 677460748 1294994 208782548 165732588 689447718 320038879 351398764 990175977 387092072 440332164 760152668 494638188 141334923 661790171 533121894 133203469 757391916 683235312 297174474 737030512 537937780 710032863 915246946 4398003 244100008 20775782 559850950 338790687 571775152 406977768 80494791 809714170 41998409 98333026 368735979 396277422 50715324 629251951 60235167 419328633 441876823 721065183 995289447 921280255 567565205 924605058 427706781 633258660 13842934 997813853 716184133 219981424 8714571 788740944 859901446 877148480 650599274 630429776 693812379 460750382 437278948 350453365 275974851 810695993 21733380 758848992 86960425 45026292 786129421 422424322 944563804 972157335 429325528 357508723 744316644 918040724 476871963 543775985 472278991 977764936 21124012 51566338 241223571 628160477 737015398 822703311 974846176 632801739 199395615 42750348 8332081 41395300 598966209 214371684 862526982 383801834 427893568 259845245 632571750 972243154 932493208 587244994 103446005 323125941 566989679 395663073 624225041 395492258 900625960 93617665 234668858 782761416 746222248 722666841 40932879 621976672 84284618 148399234 303940118 149362197 269542048 535503580 311909959 645200541 318385144 631605685 733240679 98830027 537333652 97329259 25981492 88169449 711208808 862765199 528750887 978115004 546885387 280866358 140644375 13446726 375132485 920217386 342458818 94625739 358741556 773436631 826033715 124601906 616141964 108522898 883512321 29458492 268885659 970714415 870209479 932289392 26931590 270072775 345077188 990789781 684544914 454464871 294071956 960079509 18292997 570578306 738344441 395064877 509810170 568046126 525380857 428473047 15466217 747945069 304379486 817566425 319647145 537980582 804156513 213569858 718752743 204338987 358556703 653678067 273980332 230907417 688227856 466402034 229688911 480906390 707667680 241774657 343801922 32524939 678055318 145754606 636932295 724474517 558343500 315681765 385319529 549067601 45564025 762442889 913170969 334818965 536737149 507597220 655550422 44190000 922628110 993411419 383960806 457339570 165425080 396202840 34132960 339830523 429275704 999275629 495773769 755801974 214566973 630358692 466719915 472949961 388234449 266896673 357835263 201575355 454458518 186880131 716085363 946291332 547494717 704924393 588745795 144243266 894257389 246478128 368686461 571943249 985465433 808267809 745837157 896714809 918525603 220007865 231528298 543845531 843469306 534836372 500826548 681626909 415602721 721070818 586778733 355812666 421153395 982262703 600495512 284496016 574056018 372825242 505510418 242286979 462647125 618618230 818331284 743690537 897512413 758174433 917238253 362795377 757048317 307888360 340801736 236118954 113138410 493037035 141015158 673385574 656332600 666333098 840948197 485845163 614185788 743779187 231264503 418316535 812942025 976661324 705779758 31267834 917759275 978951908 862560281 604492196 940669660 247973925 81695185 308192113 469483926 184980982 680315119 34063980 864556977 401324477 286495526 722795374 361521134 289747216 633319528 767328171 866308880 101244941 792237680 25157999 522950101 166709578 91598685 46414132 398703052 957274049 587579438 104471414 143776133 943333103 402544910 879724753 188625896 982981303 259105742 532443304 726211746 211591846 233090985 768104703 393622124 488508889 638431278 867258003 543428359 377479320 700509224 928542963 581358818 855494656 342652987 514126840 972908259 130475964 265421299 824149705 318065358 53877496 631723009 419450160 358286147 429059724 946127685 925120340 877480475 503173700 929914831 791528806 236701178 77932924 227860509 947013995 463464842 581512319 193754827 94105519 848859054 202186161 236561437 428808719 137497139 818549838 850754603 947027917 794346518 970261100 172847231 315405603 211122145 674664487 308268483 301333348 193463509 735678342 420059402 539384331 216736754 867116341 603579623 576426571 416241151 740502025 518593492 423141058 797410286 319694714 219339926 851017103 668573944 222750442 71968764 346918492 81116297 618337308 64244038 626998950 997198676 929336407 136628058 349909094 990202123 633585472 372595316 756269270 341608550 304260829 993237842 860110781 975143351 509902205 104514371 985161855 452341657 89222630 481392908 97748443 362936881 147750099 148105194 713911152 906456089 506352438 759802732 659316874 378079642 237094314 924174817 575489833 456576707 917137682 551140840 681534816 368411253 66982974 692786519 399744318 482300850 31264793 296391491 771867846 542944823 355100284 893162610 416392086 597001338 338534596 989444640 308552025 753398284 772150189 967749525 453709064 485951313 222931027 280580427 399049416 643867107 144915239 621554393 264137193 477717224 770078554 570091097 490756054 254038021 225377767 994069437 121463726 237190036 395036548 676444035 553486915 137129883 213622675 239208852 892525310 590879198 578843894 942413828 385883078 958105186 774929155 699834428 216898627 50762235 775350345 98193699 825186134 991120332 730210066 350673224 427679531 494376024 922706986 653749462 323332230 752047166 839468766 136527352 911631668 885971843 512389199 134945223 75608569 812221775 654510755 796375412 935021398 270782311 264924472 641641939 842312366 248081270 267752301 18307101 240979130 213602914 120113746 990719868 783472846 835931065 144058300 61668946 95263472 707324346 376658135 285078501 60523770 832314806 322019259 618789346 688009534 131003872 305062374 845121606 569474508 381362978 493844057 454856134 574536504 30918522 542391655 220176089 376333314 976385932 217277634 631933009 545005632 239634301 341117580 887914429 23791628 522633698 754349472 404097157 630608058 478339896 599694831 20990336 833198792 503438657 891474135 47620035 288890525 476207288 962306971 410609517 451072614 344876461 1155983 133100324 598891224 461653655 682674915 446512313 530120604 226223597 670141529 930175285 585236823 770868408 715783117 25480331 709842636 182525111 593734113 886412100 757366458 296083270 198311817 27309449 437259797 71963794 326917541 436707760 390742809 244279153 443687942 607929426 566601207 593803656 198188890 112724548 362739872 424526992 761423509 89125731 416345833 763661523 846297488 682042862 796884177 305527986 882343968 103261208 596805387 992037427 781410712 697456999 888317161 97970817 6306020 771339320 804730001 113716538 452058545 126899965 320166882 597834096 315992949 413198169 652208101 683774035 360959667 454993069 757167116 846591080 286352250 229377195 622349146 216007934 20746907 232240787 896864462 343013524 741824641 602642932 461977106 56395746 503488449 536954489 59766293 942193447 801210785 115596798 976091824 985255680 524106418 268577899 951316420 819271550 783684968 377506975 705055678 778822161 927144063 614387097 682128115 325556295 142738122 106861285 815603239 750604926 161162747 772814263 472033908 223168941 189148957 272670091 378973749 862405089 692049140 665927927 44877928 787515641 29538414 582475276 59857062 76124899 427635525 202451583 553911829 726667431 117299295 616534790 375200757 418833935 858532027 603634260 30649169 1839866 667720031 313883553 908242878 660353257 71729468 875011231 36897430 920864203 699933972 857973063 930540557 549273300 212454491 549421772 997711863 814412624 461486540 565737255 409700032 912864323 392055811 55780584 563113611 785199578 222248857 656400406 128482511 886208395 172834576 693878948 517595318 64522805 499940814 30369128 947058438 308251442 769909566 931123288 457364328 736936648 278982963 605877139 522237561 578249660 263966053 312916463 918972566 504435185 344471937 610964340 781850173 636236419 107775713 11405657 772971272 232337818 971314521 268958447 661008557 281843543 511247417 607255582 106844440 17727045 138190070 316616829 758452778 481627381 420354581 144919677 486463208 850583333 95081456 710795521 914326185 345961645 618036982 902554205 943937890 819702515 986920409 205653149 744603162 943370513 939555482 380825742 215395371 273117837 977523809 230175296 437439840 903556470 986007453 802694822 89503290 41059844 120720094 361296070 801506312 725368788 558699704 71438164 994202475 879654599 510141391 627764754 317818899 729131691 236500116 551919363 495380460 279199912 900339753 333697949 800215282 901130526 430119823 593236937 379752872 664430498 583326028 718444910 485181355 33525520 240680103 403940298 999832030 822874810 566189413 239945403 617625207 113137919 918950406 673501310 197269259 180616091 593850091 205259404 738557799 333828050 628176958 351536209 135606608 579662947 560388285 988539514 641059208 105491412 227516210 162490168 45578691 759985798 206738665 767433544 205954019 123526750 479721491 367094207 323417850 949244158 323507687 666016078 69644104 640262449 724572525 533155806 901080461 153067533 360300913 569942504 61621105 393446895 464228140 458378940 847420267 416795619 744209544 690401975 846750818 187261876 845959355 378976051 779989010 750322658 283736590 617715583 237216617 840644558 513224936 973553767 957063755 696674402 812734807 718911609 464345901 564739946 949143761 276492138 430256243 144655129 197127062 834016482 174682517 48031381 743068245 356774236 953630363 245189145 22459996 342400278 122931121 148350521 946756600 254376204 831309241 495878805 977042248 54785968 168495619 118191386 84114712 213089928 306025040 398054720 359103882 991215450 554069241 276527356 369656940 918540762 411990746 60406865 287765629 763592739 39650658 780207863 289762109 367557756 188283797 535876413 285902771 622228888 418890454 96920445 929934176 356540648 551143063 922782784 226491652 605145158 576612969 979191087 344835896 876962888 592372751 467690385 904448857 629469639 842899594 857692945 890474184 84584464 303382151 990168999 332925879 784626397 930089276 196338976 691833360 597384528 704000936 983972997 921866670 653880396 345385697 645863822 626195173 753885120 957245605 205878366 965168134 946096537 842156052 47117682 76438260 329447194 922951921 914068138 400829989 630405457 52251629 351234768 102507213 715025932 859667236 768397133 177519180 997710733 301944635 505983642 213777065 207562425 962771667 399191343 915022076 70560250 244151367 218717347 372243847 691621382 427870294 876349255 231482246 174653019 670676947 374941021 684757076 380688810 295464225 258916866 38663237 615531075 446404438 216419169 479922432 91561376 932947552 533713814 42014088 770905265 967933630 143980525 802836993 240202366 978896761 206482134 380452522 793863310 762521146 395529995 987954948 907891306 578324793 996958700 175392991 128117619 14557259 959141707 428329551 943476609 845360092 585359929 835154497 208878981 861113589 847758370 666496248 54298230 156137040 738311665 191203053 264345716 161953417 918548238 409674665 940687333 86834635 525777937 500376089 204991969 574850611 101055947 610968409 879957836 616135789 186744995 144662977 170169846 991332044 805265804 28141009 534248764 368763085 566765983 592018486 428898284 506836842 518632102 756867131 114471270 335762648 891595505 168465026 521101278 32947564 953899039 205940349 521601334 154641484 322589589 6459874 787311997 950114154 413169929 875530222 275019721 869628050 382567603 62523807 358793484 732761098 585995721 753839904 856094949 915836203 393336274 855992792 576230053 809648265 426610678 316503842 265707598 561005690 181855677 451916545 276235576 402056889 586510310 417917718 550971688 739876498 699385900 204408822 740702842 325892191 415557485 599977461 708316602 814168514 695088805 899152011 331842979 691919958 681841195 424435967 150323404 184883925 261653678 287019948 105428741 488693874 464130443 537604728 964826701 750756150 593601558 255694832 989544473 449516920 70548483 846966518 645420520 813288902 846193932 224816541 161946518 691603743 101075043 738192017 253058945 613117981 240506898 638906027 845152076 102406559 55116329 205682739 255450945 480827288 905741726 124984475 204821916 626936627 511998911 361690505 384797581 129273178 130005815 315245805 250521156 477964749 411716887 801414338 639323626 203035376 42776802 716968692 297553554 898473723 547477496 164752725 746693122 654650363 391397326 71737190 585808259 57988107 294461144 3454632 860059823 351217698 995920805 419971523 166433461 60583770 469816660 747799384 578365989 517679302 620688962 902510745 495538922 89712706 968042942 114886258 669985643 770363746 318645290 117975267 481834055 292491521 751174987 158041079 814216613 66658161 560946430 416891158 478758861 188129791 359890407 121733047 168497434 910917623 661738248 665686291 129801579 686903230 75276127 916065996 935530099 359762096 766196142 100953801 247254496 845070998 455497840 669404031 327781331 418165992 330865225 747792534 706747460 210491800 632840647 483440865 730879792 239575073 747006032 35226604 744167569 16311010 132793016 33172419 474833917 49031551 410396939 20097803 436335905 764301541 185369708 87733178 827105376 453123459 133879530 869919974 818047338 205000904 831562948 302711375 812806028 340102164 731774653 97787028 985408752 669609992 197272233 928778042 378758037 517945866 683870837 849595448 997707597 249559789 681649031 694799961 45137040 1731685 395482810 114374170 927929586 130222801 747084703 997842308 919277972 464326673 846043861 897256748 574901300 830238111 964631726 706197696 971711012 409392160 793435694 84201121 193892962 976415824 520166032 353875456 520831702 5874457 353059854 721067264 925922858 72356713 726595597 459691725 603133434 86448644 896699381 857136209 953872361 558846646 739141628 636287253 219286743 100089300 407428055 416109037 547944277 158668168 710549391 202656831 640153623 530444256 273798873 861536478 250700945 891351340 946650497 596324159 675417379 603445075 535547234 45961845 592801486 206305275 903340442 786305860 67240430 496637877 256169884 460870255 678073284 989087534 186517943 608391083 264253360 139225605 231324251 204892318 782080670 447621785 693195664 363738454 840262054 25016838 474157733 906415943 649323648 233210830 146989599 730223249 744289563 550347448 688632369 187859367 582989917 240997090 822391502 477720379 131826745 753500254 663812117 162747033 642875851 283515297 73650447 434609202 512438153 423548971 570759662 477693629 540511546 928302268 9824072 552490356 668708676 870209264 45913115 22486508 798442094 39753923 608294700 982955212 427755834 276399292 743319293 75885694 211751954 917791518 498830503 494320872 894450482 323634222 397870058 109439938 235367793 515067183 773047820 463400537 586614303 506985662 13084488 299365293 508606337 609485416 932768192 754340541 153424599 668625911 587164701 245388338 148759398 969778626 309588926 920462054 72864275 934104101 203202750 98475847 167958030 767216303 291547985 773412549 31917683 292708869 431378310 5978401 856073713 724737368 952794880 3953618 676112701 275120927 83073257 83190441 718760224 631964334 359895395 744740370 861175016 210005685 716920841 151176177 666542511 386960168 783976596 697328323 28656625 859917247 188353420 800140603 714586789 531276335 996517916 280799733 542338148 17809602 768969209 588887106 613027256 674594248 469146929 538104691 519670043 70850362 123697020 479213577 129557166 136382213 535139988 351749636 697328121 339621329 216550893 879118202 636441183 485725721 936034932 463681828 192455135 165636911 763745273 344243033 596483345 91928662 640472141 374043345 119112479 744616127 9685081 158740650 838266218 920836290 793276474 613890440 847207793 417312249 889965264 563653399 915330240 856840559 765037277 789168678 21532509 157989909 221986907 925598377 564428229 419714604 649752 563828925 815687394 664332074 865531156 276140865 7946273 538798636 634932062 491820166 398428585 468986871 889824687 657859167 733570672 979417951 913385027 925418576 708151781 69728977 30271493 85419819 677516557 330156828 684172993 825312856 177034221 144040857 559731885 645925983 6959642 96699335 690181341 133852810 168322692 325781197 256759413 573577405 424347495 805718146 784064802 486109931 586010751 839831226 497900354 308472998 226797513 502939357 288536435 94512781 460798477 111445436 274889089 297078429 582226948 645161965 733633936 377115359 274059234 83658227 959261398 369534648 705804901 981521316 92566225 138305915 674211051 169691214 366653395 271142248 112330146 54471528 818975909 18204102 158805350 979984119 541308546 653638099 961374049 696504941 382770813 637265739 97207196 534621410 11829529 131771246 869584572 862312716 167288239 175494493 613864925 906603234 322326842 799730585 181080823 359789068 53787064 762139611 45306625 193894718 96325555 845426526 634104303 660050548 173184623 106228904 870651619 781344678 669352305 698109671 878344310 875193880 226493234 202842369 209352494 750427899 984012401 203410156 253553956 851421131 866513928 160416102 750450747 348366360 649202181 907462670 394018165 644416899 520880766 234491010 808408469 480950791 106695622 915817971 703720185 836907504 895763836 431644380 871534589 750317809 939917037 53100591 417120804 175909193 211117453 461612252 571711659 609897420 701493412 508666454 866798459 959092305 32199116 5216801 981864142 231616322 884157788 856584644 14299715 339881054 976682331 171116663 715051101 175383996 993347150 594956474 838315630 694564517 936125294 514763313 722127755 747323703 257480544 471676701 236912582 851518472 237331927 364383870 117167099 487352396 660336575 72926901 961271005 733445472 926916549 973096728 260577257 625358946 344776369 252182763 406298390 954571507 751658791 867619347 711615327 431642047 307601284 300697093 984716400 82184284 347030224 752612566 284893285 300261976 481233140 358544385 113260406 935988704 38638955 286998745 905413441 409397499 530511804 759654436 131776615 714370765 491211612 394849033 165244811 810224415 188934933 761914957 301826662 192159843 587578806 990663909 342813448 874902907 394339562 310389836 447054652 495018583 129753298 202005327 196246698 995509501 454141585 862137824 815007827 867631317 22510811 873757038 374962380 815875690 722548682 671639008 182755880 549323529 705285932 797632762 688843318 461589293 17752850 371675109 651467631 6315836 637197152 868330187 426618296 659423744 612150404 989613055 735946167 738069279 6726236 376967205 710573003 22561228 332304237 62494585 579310149 784055640 214638299 56934259 955359545 10058746 893734022 699962230 557266797 504843014 750781523 714511332 130893571 913414582 930195636 657330739 450324600 792397752 572068094 515851369 2363768 514462935 955987436 264610301 637776716 416653575 259434105 157969145 797764517 691406303 505577956 540524632 762593256 475445585 89845973 458880190 109300655 262489353 198579816 135799406 516948438 623361542 577980781 166734434 533472322 519328435 706219657 783526126 716641830 69364031 742300376 607159322 778446318 197676734 346374273 816223596 455294978 189162309 804967462 30538097 896334870 647104099 412338789 697961112 511468515 897290696 334068655 810818141 215601218 20931320 500674391 473140338 81340896 554013534 891399120 84934242 160560763 696242609 214441133 638236385 441791920 148525115 583352683 574003528 609362793 268664961 914675254 311017464 764057676 534924598 861641542 648453857 887603241 323254718 637655620 401819634 82542497 787527752 887988508 238211983 786640404 680888597 435324536 431922810 552076789 61017662 255502063 271899020 906582126 669511072 190323501 729180092 739601414 735817501 140710893 129339078 368690459 327025151 374881174 233727209 24257224 577197637 284097857 838399591 440843662 151747406 725559832 541193087 417623745 111188841 175279659 871153976 411953867 16895694 751960970 917714273 584762565 628593692 359101074 887473836 370138778 858241465 504620737 58397158 272328570 673777579 374087815 964399123 988949852 713763899 218589399 849517579 547195429 198682706 377692736 765419660 72911212 69386601 894650847 84327181 463143411 656464737 408861326 334406338 940116262 892374583 241484059 620553417 208706250 178857864 953120519 115298035 406789356 917643023 267740974 120375372 97967043 720119537 241506143 149681833 727840792 641900490 657867924 988085424 656882754 532148114 89402819 500397015 797826005 894275382 113180190 316550709 624593369 263591985 11224215 956363643 877475195 24247483 937495382 602345551 281984527 452763809 740939374 157044235 657789849 113869430 609922008 856742471 722515611 54570128 623935924 923150213 623805859 911358517 57492056 187010964 792257738 236582178 140733726 752485570 99936587 139026396 690611401 494988341 670230227 935757015 869192872 434166514 564056883 538416341 990968423 116531672 346992125 746140662 665809673 982680971 261682871 519143931 954195801 412622925 914425307 406897255 916268420 365545441 483689811 668650899 589559300 669571981 542081767 191591075 419480254 701957542 850085729 643275246 142434656 907352947 339167595 401985034 107547247 261995384 645983196 670441982 216251658 760551707 196067978 317692211 713456609 940902900 311468055 595641832 387155535 891122231 457063012 423343197 624282357 659450142 604784992 503798933 441219438 500471673 723984573 714601087 464904202 985794006 288288993 538617240 941650099 732846662 500307382 181697262 249105457 558545529 899366399 290090577 69986996 701301959 417053185 416080210 331556902 435725332 329817810 33265185 420083169 686968252 307080213 641474868 45803836 447740416 89996118 422578205 775090535 331438506 543523901 322558278 802116097 906597183 370862995 517963265 77035138 877973083 553463870 761868287 996946648 557790554 400681679 168642274 662106065 482578029 222334706 194184740 230948089 378045373 674936681 877069278 266604881 90573363 292934755 501909283 63355486 472077475 470932060 941879145 693745488 31714305 240883900 880425618 482908640 106562595 271389202 779262865 132102763 502888578 33651836 971938911 138947591 536654345 371732796 924642232 406949065 294801943 395819503 621646055 264386190 650988950 579836112 820023933 315113311 865574469 842283880 448719994 913194911 530853 902871044 814315178 207255467 879138046 509535048 443910387 632950925 660372918 47670809 570093465 676644804 370958024 801656740 889482965 554635599 548621526 628190349 773391556 711695875 53310625 724846133 691975991 131649386 309428196 264467614 975038908 74209345 116055500 278098472 762400056 391182382 98647013 667388122 113557054 927817241 206170041 978283517 848610579 404604775 222330319 355843673 334843979 868212493 644992088 1223042 814569449 903184270 326227433 854908233 729240478 465605881 434950287 825932450 466039225 996903432 442842731 196602536 507659550 631656986 120078341 463384345 548696399 388468414 450771655 783021056 243609974 314369360 529860171 310593394 20791695 654629261 762293444 478580326 738202699 404049180 978184824 459319431 855786629 265322120 11883492 457579620 314821596 688290059 524397645 555774662 498760362 210006462 691930504 163783068 714819326 742835713 602333087 125443404 475659039 62491807 905701489 928250535 715157121 288621838 798637707 573166051 943496043 359339688 716254333 457159499 538347284 817931415 948214324 725220645 937777894 722147848 471790861 298465797 444170045 632829075 747492173 162294356 932563880 987068272 832939347 709355095 695717631 80888817 524397317 456872249 673121382 478164104 773045542 156789801 837325840 874875196 988602006 915339562 200672756 808822655 837784892 571827619 200045529 51163679 857013167 259231073 176017375 291591019 929630794 74742010 276470357 664533535 461764410 362266843 35389798 134831489 539872800 712562225 82106664 188653927 508164864 709330523 309440466 537496658 933361924 408525097 22841005 170624117 918113011 363126438 583981902 855444455 661634474 714068579 921695656 493906970 890110733 71350015 764912027 775966744 612687825 161276799 10927427 590263382 679660099 543560585 381047806 346353803 109872663 11542130 421556805 20686762 443246884 461693133 607403606 348581649 877779297 723933187 304796587 673626475 666361375 808466744 285150700 939746288 315960008 426532990 488462901 319138749 805401190 779984233 966273433 612717927 509935770 37470189 159985967 324690203 267638233 169484757 279512617 741790453 408618286 56624771 31221601 592013577 817694388 262740483 191628223 853788761 376941020 833894786 969536644 770401543 477645627 390588086 925021403 499351470 807940278 560707561 573834904 4689468 395493203 446176793 809583490 632982218 104609084 947917997 754397874 331814241 127610006 110216065 122167904 457258339 833691224 742956510 560746325 565061911 625303770 995034411 388299167 330288652 910431654 243431284 946183385 677984940 296711732 746008503 513995414 669013630 145980647 812857051 59000351 787009205 465686880 252341882 358097562 902763859 463666453 724051931 681495263 797121400 328883498 132980716 365771838 629832320 414148728 218702046 687549487 501319802 420125305 73435213 678459986 861874266 683971360 938216231 262836231 906125334 994592705 549620508 787815171 590167921 208406810 166128924 329292319 281633092 100517495 481747175 91253146 781073195 817746834 343593882 211957444 193459193 218149471 198918343 545940797 772418256 831706131 701173680 588711520 290544280 455357903 5923289 764537892 135377015 237154832 345893831 436293245 536116809 695312147 221822498 955704062 420404743 860839828 188239882 696695807 278820169 567159437 809208532 236635979 766388451 847385920 173439596 190812924 754216171 460892153 880687304 225018193 46028401 353835304 868902564 108916352 408498272 123536495 634698784 95969495 609291077 824626635 87749334 828785825 292230965 901732222 815896862 598056299 365591803 138090590 479272461 333158938 661994831 141927388 359704076 811227667 824839465 817665603 792682500 767987311 509142188 190471028 886836474 430973288 871765246 67368968 3160507 117687593 706755413 108609745 173646012 525164527 976217381 270149167 600010103 493904010 336406185 110185929 141240231 589807687 365716052 565481285 37151837 103994647 960234346 960463244 196180897 913548953 318093736 388527706 954759114 61153145 450397733 293473217 6631177 43936456 157130488 595348846 751968368 995851558 308675121 581606908 77875253 513500938 640582772 347904837 26178089 696161783 115454624 517952614 76802690 891074438 467804036 523788141 886534573 455329542 526429686 911455809 113210614 900068711 855418665 146305373 648007044 482967274 21874410 6599278 358785866 782754063 835477036 270295114 399172995 830493516 732682199 931085406 637972475 499854630 408967071 237432903 647979402 108096447 390074150 917205099 42635832 535603249 653348363 319380866 434809270 159458927 709593719 65972321 159045440 203472227 900086650 536135704 128417975 909594639 661494226 278902244 15597672 587404892 219001688 666370127 442484549 136559232 208478385 642485734 694953491 849875707 238672688 717808821 230247452 985914955 180163009 944431086 430102134 388507809 91089904 412943997 529770007 771640001 10293563 275542339 393001196 702554146 570124804 89923393 500099343 855209434 251645763 803578861 792098811 621241503 570500473 496498757 510482498 193483816 259334423 300982510 293130238 710241912 130147211 349353201 635862070 706608563 430498891 67236257 308849323 995552318 77041770 30823295 413720972 555425185 157548159 807385787 788290224 127951556 913772735 59326656 397333870 963579009 926386977 955263819 585433147 16010117 810343358 565127397 364487585 28955926 135626289 240213645 618998439 392220894 285816084 577135188 59581435 902089250 279728830 695899743 418597649 513887024 678578967 926960895 160583035 847380212 970313486 177426668 280352044 221090436 435424522 847785899 169005140 582280949 961693563 229509170 111954542 637578209 417353741 911800739 389882653 795461485 564761426 5045492 642966660 196773067 956026777 893655203 847299328 683685984 714084466 2030857 980075988 700378636 141337599 489240251 717052481 820538743 762205714 429655504 272692676 133432128 971465487 354012381 235608243 941370467 713375385 6044918 576839085 728837275 643610928 52516591 51124504 517185700 883685283 168428871 871534185 752399195 911216650 724506676 18266248 157137489 92875629 915528894 981305523 931166186 889554057 530944440 803878017 472908799 972015368 953533972 420637454 37950399 868988293 562621792 272667824 742344752 447350052 858367394 850353453 671954393 566493957 604735788 811408440 483921082 367338994 121037688 979663078 595798661 191521927 666211524 526762671 181559731 466872343 821323899 36427419 532020059 754214563 238148443 587064949 880931640 172515146 840685779 262624617 444711131 660084612 28604599 905322702 744834212 766773581 454087762 551977175 692415244 857374281 411550169 986379358 358671975 23969292 864880530 93753343 895012391 48656760 350250578 797977213 122153225 784622166 651031414 353289468 599511898 9350577 356835204 617578694 772286271 984640105 941116998 940952201 147353350 78047643 145158940 386754367 352975077 279764626 757025414 207270420 910175881 840536137 308027301 886585827 370308294 955344559 679884383 393423939 30637407 242788858 700143115 149141147 84854304 541433400 914962982 248820050 974334092 515921006 670062717 573940609 291351128 557547907 525403387 678887385 459023279 498195569 297178191 648042733 952609100 254990552 89423615 668261298 798706941 59801369 623439262 61714850 268238154 46136757 213235140 938424802 975124229 103404204 192659229 92504001 979780499 70458597 571248930 910292965 876410878 672552729 991787549 641485408 483583384 361735735 558868825 636225273 487532142 409472214 596994527 673228268 38690159 173500295 453625234 133154745 637015817 327389381 21329190 554086211 394745369 537417936 720794796 269880881 1951168 477747237 102517917 787891939 809443950 122391115 393986804 732872017 242050800 663454222 87473232 47242294 645945071 504750573 889918365 786338273 816656972 702320149 34773084 863547780 484129540 794344954 562144450 700007654 52878600 963574466 261265955 494024657 708396808 98136044 641793821 571652972 756683643 167239780 396187843 376421992 744839871 127731044 216644348 339903184 587151854 286069889 18030585 603062712 949737324 841581154 959514018 825773847 729085462 960438868 477120337 429645845 306720104 451705825 48244176 144853843 28560489 798212883 772708181 140546342 353425082 309841989 802507085 498230742 383229980 272170082 940924181 669805104 623264711 651408084 583979076 928612569 823604336 839386346 508315347 165111952 202998863 70379042 84834897 628308796 623451553 59524218 412753777 598302358 826242228 365329675 74706575 567913533 998678913 990199499 870447777 800045789 824419214 471958678 216696916 984485817 63980073 801736330 508340004 157870533 956586714 872033122 117894269 824342354 823154308 427220166 266106508 655322125 97738923 8681098 737519109 245291215 218209629 725074075 645585072 37484533 133066887 207782152 200101618 644003819 166052484 518731023 630736086 122034825 660075996 231176061 742813667 193374209 418115761 6479221 127605001 827680507 560462354 147231879 406567478 264066982 519792415 47935198 664271552 692158447 854400178 665080424 628552467 524515882 175157214 879386160 153098096 561201090 525591222 961347851 931026781 662547120 819786542 427404187 455938993 704845156 570410291 161523267 805472296 833773318 379349291 317728117 290714884 839017495 626661455 742659677 31181793 227774753 394195668 162885594 706467793 524819442 408368296 700334575 475532346 483375688 57179620 950054347 328001767 563447020 229682952 796628013 82780190 629127349 391363749 284120403 939420984 202035076 609096032 134865389 257603028 245214028 382732909 914786227 918727751 803641868 310344194 75752776 749722508 118274091 546737824 745223348 915156638 468215306 844015364 163619042 718422990 274194232 792359356 546351055 971226368 78921677 995933273 532917332 579162603 431343677 692630427 796975248 189199327 918573101 927318352 32086822 665350286 535569575 759488706 574024061 106078894 669923146 593918201 987001394 986461477 644434886 412934173 357438608 191053717 534526990 973817604 380479188 435277489 604235771 492656677 81338588 657893050 601511373 350552089 671875074 388610942 108907621 123046850 807658308 703981110 615464101 853046015 286825693 274864460 314187869 368108209 269467388 289493450 900301173 697212802 473886367 436657738 473296087 348427793 718514439 17315717 736340423 212489533 17474684 721252271 379005157 686841147 797827702 741952254 140752727 96434085 751393399 872820903 16673550 892533379 187664839 482746495 779552691 390812560 99992689 531093407 716190632 134951886 660852402 332541097 564537556 693027139 644095782 588909680 179329088 471656215 206045004 968673861 829923844 162719670 447677272 377991960 18794709 548483674 386867159 557962931 308989166 667101135 927130008 404094438 136453730 263329104 576140939 130166060 508304586 791643081 457732508 550194425 842079547 795061335 42696858 554195855 34773070 375259786 336062515 762116992 656666459 492823027 33143805 2290228 378924582 150713922 878015514 618696720 884087746 630480037 53596448 175212135 105396149 555204714 992291049 75604152 532074946 272431832 385904387 551917614 841206838 723085731 863774271 698066393 310557000 848760508 222872463 575270517 344297429 402350947 796234896 570994548 339976253 313379703 205879098 353558981 232718321 436654972 607568900 829447039 617690493 415459125 980336609 499663156 413178642 789015754 541676664 44644832 916504532 922014389 770051533 898289657 906953304 29377711 18483504 190747944 544569765 850164898 575244549 141353105 102925028 416405484 889232473 662039488 508380825 336463429 925326823 648704839 387369402 360410206 55093308 671432026 831192262 505077246 130461111 705749933 34004629 243735493 588120694 422304670 503870732 770162126 366509282 739477113 674464874 552420223 695065488 457851515 766836941 682812224 859598634 96453762 511645215 289993109 614843718 425541375 401854832 214125218 5963917 25458956 171285881 320717257 348705148 80798769 611340856 919263469 88688980 893456772 537205329 31379756 672107772 549173082 956035524 541292530 484451868 242117259 626256770 16538214 126369308 456911474 396204135 554733852 953350785 951655454 699011594 534454482 990883087 891437025 173109491 430474150 829075091 610906890 807418096 981275940 964134864 881857112 263128874 767366556 862287555 327415832 443744354 393835659 71018843 790260761 609970097 826349673 191363759 647945584 241371555 219157264 354269001 107227901 916205104 593117092 986947162 333528694 461693418 666864117 388883580 933659073 65611141 611116026 479494756 467158543 128346438 68792095 806433006 883869380 321291123 942564127 211482551 99580375 289262572 717045258 716478159 895168283 338701975 246100282 861533017 169357382 638884956 883751227 780349285 641098639 992794915 711801693 263147967 400084574 507287147 349620670 395876594 456149037 319126357 61969664 151137639 58571997 152020689 872197913 344933488 552916811 407582261 211831665 772075106 813617858 685749053 264295248 176822196 366186979 624523285 569492835 428738730 868109009 530464203 899471146 331611843 258149117 10816432 838880854 739399745 603420522 981484840 758693596 300250684 714446233 789972899 232753713 314381469 609109498 349805000 788706946 31722129 6286198 170414970 863935308 283980550 475862784 295688771 228461119 623146426 413274612 171240822 531410641 946405426 310967421 956905563 162566380 439864859 872535207 275656436 783450539 457289978 222572079 753571360 780693428 776941564 613247467 237284917 389686134 727403629 540454317 813347876 48047705 166827889 656969294 963971606 12079814 757915269 958376757 843956501 700397221 224300054 483206042 662608172 666973451 334131668 370992873 834142882 199321904 209951884 80223440 246825301 476036345 398905008 920384495 345331204 968747124 959914116 622617975 585750483 77387693 902532001 483874715 507576626 957297572 632054102 429130753 281489452 215628617 401359045 617519664 233389375 682007321 132697929 213740736 950416640 935677792 723025610 685695157 3334414 293881256 795768340 114853891 124570517 853131795 364456066 364555563 213075596 626737632 223900799 783584828 167376979 953758593 985750831 791494064 881897458 399934015 245294234 820818581 636024181 403952746 56286431 143871 35812657 657123586 189646583 881133379 986901519 532763769 43743837 735544560 164562078 615270609 718112195 855651547 674686123 464869195 978349791 390959523 478202087 632704015 593725059 824827799 23567288 595809774 147401081 655162069 700380445 634748905 237375051 562049033 341668182 217079328 119186778 890358250 14054424 766521773 48510580 507067279 83322157 12317889 427803867 578809992 270480076 653588017 524181193 495920674 310505907 6967692 16495001 957915445 56760023 509118957 585086447 949544049 743183428 242224453 933240938 83527936 568956211 698399871 117965457 273156993 898690606 382987822 248928269 960419171 714172644 457089302 996409395 81520909 498698942 368845623 587600983 73965172 907379221 420518977 634134665 915599056 972938416 121762814 195041281 507636718 903065725 975430534 460346442 217288375 557911542 655746394 882315459 583837159 963163841 822762108 212770174 774827469 277084522 448141961 212503519 806046497 272377283 832513371 635124116 224353703 409042737 113776948 766402738 787362550 922637900 329714638 381235295 98061269 99217554 907744114 32974690 997372649 791448610 401917318 286351830 826227392 142409498 432146187 253231603 110433705 752538451 39057165 20381873 115959831 129895790 661977977 156881995 465717253 381974708 921416830 783995020 995138612 787231578 854808429 236310156 114594690 151951196 983527814 289689390 272495940 685531893 602392642 675579949 492792378 30547882 899172903 870858998 148906043 950836235 163472401 717246529 630759899 117168580 474324705 635420146 179667362 963944016 597808866 46783259 297609645 453866115 117636271 931950402 588173669 936872748 574710648 594817955 202204699 626217292 58343133 516970425 913869534 53593748 589183173 551394092 213854990 234929866 389560072 787412591 740130515 934978528 619718326 634506050 364142441 504728815 919429412 526702930 478613805 956810762 164972934 624755889 813195478 929242178 257060454 266110006 865434891 853214749 640451427 110219229 198281505 763820862 207894165 853308566 604190678 307651400 232768329 452643146 712696730 685275114 697968944 267899327 447392286 110937792 114085133 850246891 576748362 923123164 831137815 99557074 938105406 524969206 93875490 417382621 738551761 644892370 54686013 772943790 689115136 590971088 551315198 307765578 8492891 163473830 264316614 905481162 8532918 767306214 436260797 392699672 597182857 626983496 682073594 216712350 694726971 660518439 53623606 538688598 184507544 883987054 30201507 969860271 642349207 895076216 586946165 281899473 752697554 920294373 1697626 367542822 721986689 821389121 18145623 37804832 38179741 279624641 882438781 488026006 705858515 342585783 22016758 861243513 540521522 601155488 122815648 784566409 979862541 53936800 459558721 125497378 320235175 239301866 765259294 772679047 603289788 872052913 656701826 879086914 111371144 866784463 240968556 132635942 171207054 616250037 122498527 6311127 727421008 390234360 521930626 653452594 445844035 74446053 90813897 595017897 441624277 104553087 73674449 350203726 276549257 825889656 650124941 262705852 505032657 355350571 881728926 557488602 270391795 285029717 34984887 691210532 632493816 996033666 106231656 504595338 428905183 125814389 966932516 452438691 876726477 367459603 261485632 424214795 580739659 947653697 780784870 773229035 59944887 822545913 76286689 208634343 553801016 356053467 998732263 862956828 84624973 152673776 105622032 944082384 733321337 310340449 19916154 535473024 170221091 289770695 532519974 110246780 483804079 357174849 362957732 288444123 533190173 757839271 39473457 966240237 498787284 226110464 876954139 474618278 22636644 206402890 739622033 728305947 87223788 739954647 612171040 268286378 751287961 721109903 562580614 23546576 651465811 529920421 34472487 143564447 520184298 141469471 949239539 876823579 918240896 567671478 967838234 269869981 466693885 335062999 164091279 571511308 943858829 731332601 315414614 577430068 633929864 842659598 847490937 658289712 677632206 95248945 229200742 493379014 990249734 215165447 506210466 310583161 794876234 324364899 380440723 883308303 455790549 711147650 71721642 96873460 30868977 913141487 253200705 192825393 294544491 9311897 877252065 94457303 88424673 269035372 659618974 952568836 965084868 312208411 976848709 497097166 508136724 225023235 30911492 181643892 510348184 343696990 824033357 564695023 11610216 251074801 442316811 562381002 937923626 51606378 474627362 902250909 532430408 285110108 143110236 915716608 599642461 366810366 487983211 442340989 793228801 497748945 364945500 394672326 49072972 738729812 683683273 989038106 227441274 356610401 883579391 928099916 370168721 231020216 644478258 790626952 29089938 299304549 228584578 51612372 668274998 707114861 234188143 761845227 705611269 358300529 643372732 616069017 716170887 541897927 519780764 427746213 309344616 476674569 569219544 395764237 822780772 117138835 61131758 732739292 292217617 138322203 67647022 198402017 390452393 545504801 808357723 996124443 129872061 200780611 346866204 546311247 7596503 491063888 183421846 157179434 659697447 699998856 112334928 561968461 957338829 211131441 101169135 684844479 348318575 388080526 99062489 229008782 745091974 864744867 991041869 986945505 778886221 830483745 794689042 297611509 494241313 369168749 253750992 899498779 720020089 573562098 348840487 965526593 680016481 40957662 78409322 87940607 389139149 786228571 360062654 271434183 585923545 953854800 21991805 335961543 944664593 269848387 881909630 669098481 435278969 731969756 965533249 566219004 385858137 184233388 976983888 382642490 507659693 633423579 215856536 30937775 208198611 986587737 425871135 919016211 731841822 922778364 112825373 48793601 789111681 712464518 258155416 501753743 612386222 657545899 476210380 735391047 330132324 646942380 435881548 624300003 187659865 996777757 320878513 37179985 549645514 768404399 358036035 724587943 701511979 484369561 737146301 838320445 794400867 576860957 655958330 455183551 450582918 468078989 204499767 279987111 852923532 676497646 588116475 183462463 194463242 681776690 505087383 761477531 102732976 150140869 337468964 52553066 958688188 488633263 262282391 156405573 226918629 104488759 711343107 927397313 74825870 993866436 605228347 141945571 172631872 722017339 709714237 795153722 186067227 252780783 347107683 758914841 931555355 271907416 687471009 426921455 972601410 794858085 636787602 341766401 223952581 482808318 287332231 864417340 605525131 805469011 161360997 375238738 95444684 57978400 592984421 781187036 199440533 859402569 814761007 315707822 983614418 730692408 13790123 523658713 43221950 807341997 378528760 484281603 892066913 172206281 393583713 58776096 536453531 659887498 880349526 787240871 434004661 635304222 293779891 755239318 350444346 100997410 822139475 565103088 95755129 680239180 894677004 89570811 488263463 23485238 677483233 505454495 622898342 745825592 759926839 544068449 243284799 817013445 362863620 839162438 186829201 550037496 539169388 330089639 479673816 732073636 288663211 196763864 802998715 239134084 804936477 546197384 67287350 40177016 213456431 365821279 710767910 510641372 72373921 737894016 817338436 642939736 268975471 990373644 145875310 843862598 359937958 348601184 754615737 151900580 319574909 163245614 177900344 117431100 890296411 427357899 211386178 81822017 508492693 695691746 983519079 502141460 960798357 216498833 595021635 427773030 695694401 543084029 728473468 165964785 682382205 654987830 616959362 554262453 884303080 38133596 332699979 736503451 481656282 584855355 855976961 620555342 670375797 869707734 878865389 100073681 302476824 330751267 759727042 792284364 42740059 2507800 857114687 471951988 522618202 267012122 652463025 303214921 681092129 235089237 673143402 659060019 896879110 320673246 967391857 264375356 729026314 661414539 379549382 167449084 571344554 656077494 53419522 492999162 39697903 925536835 514501295 279693042 243332890 415730166 392224100 217941682 186551370 691438116 721756660 143147108 115946665 568428979 42283360 747492536 398641298 615043752 427809797 750362976 604703723 133240723 142463429 746572992 452200968 113497060 707703070 457325010 609778413 403181465 852225421 940696195 417914051 849995395 222230397 101287412 841475062 310454179 204199867 235820344 21169534 907352863 739005299 547247604 483736433 532667328 854174223 351978079 584179533 188850473 245483251 642118884 215733027 572907995 658441949 714150967 180103088 538524072 412188571 603620374 736771935 122413334 534210222 918138495 179673012 951400969 704229616 44906956 941408631 236448777 832198439 914853010 397552999 953873053 28272313 496959269 80870853 629541468 807169925 289764699 131325197 616484695 96465646 850716078 882525817 857535586 651955342 863802139 156527169 956361994 460317206 847680049 640575539 317263990 195081146 81559691 664966052 840286204 497656131 936752513 290600447 218092913 857126892 632554690 101139019 385920349 666161432 734851312 185879239 477387039 200768276 868305769 81623057 902283433 729487754 475688985 112195070 922612080 867167196 812446779 40629940 856587904 719534066 28764638 55039825 127879152 367727664 59936073 359009747 287820813 647474445 526511150 851615100 305560535 760716141 109642748 977402722 627407952 214132554 688375087 984170974 299404011 236494564 153054225 611309525 871463676 416489767 294948416 459567444 827238419 435210626 407015582 439132474 95228376 164823309 877728755 810760019 879642744 534858456 934185015 864376961 419425927 636426 352758347 160740085 572599668 831171762 832202547 874426148 322765922 363361420 325857421 796488174 851830005 223879380 444234809 737755809 138535797 961187019 528269840 965169078 351818420 965018915 629535147 448692698 625949647 618108826 20424495 8968151 314547211 823387755 412402922 134314786 662767135 415237308 214948476 599123967 521431581 513633708 285672956 335004161 115151282 974579004 338403256 826474424 393056865 101746420 474661930 936023158 979071037 26428515 888103880 343574767 985045308 519635353 233841657 295510578 142570277 474257798 324644032 53200128 157408718 732809996 321408626 268179568 515855552 790893952 297742318 971930232 121832163 227351881 87376043 526628653 313062049 115194343 703155937 853104789 806070975 889443316 565263074 284574221 854883416 561085976 708644900 169993873 588256894 613873309 665003681 34386452 405253 601433191 335854393 212570256 820121391 817746868 478759526 708658594 427346754 133401074 588029990 909897087 154741137 157753233 491968213 40311452 154794134 372515589 276712552 189235197 475062475 701666613 464147961 491247586 963678863 228918060 25853573 121506178 133047855 407525405 613562889 673452016 653600964 232355968 437510585 298085156 206026425 127024579 509676326 246800987 590938067 418155830 229603605 842555727 81064120 322239757 434268022 189774202 134796897 292422701 710263416 95885924 356340143 164262872 468461411 249272153 266733852 887658403 127998606 856744007 433594341 970904361 660548072 96049574 354911688 686480994 920296139 387938226 644982370 738943479 129729589 232682800 364825553 174550103 37361731 101922155 983167817 838312058 458284852 135786608 658037478 55399605 487409721 430586215 478650594 825141053 307189785 173449141 345832688 643644036 994914544 235873663 421539849 270209913 615225883 362904476 825888970 134134744 806787206 831639745 434228851 563260559 88682607 523995514 504227927 485127252 594899499 499096987 298418830 439588659 454874581 596717468 310946403 58017512 203243350 814460225 475479814 464754688 862245130 337280151 466920400 454217790 164005161 350863803 721052673 712947393 102995946 995370373 771723776 156709456 227208632 689019048 67169754 366145183 327756371 778277058 244512761 741559116 769073226 128746488 582549184 641313849 91061994 109126854 981171148 707030680 478617113 840648691 397182201 778211159 153146130 358646950 425566711 263894246 198466405 315368207 768376374 434955290 22107305 719833886 403331459 64912601 625642419 764030385 946051107 832696103 101965039 503503963 744483933 464395951 921651506 650397932 756096623 359432109 925083164 695073089 540567234 360576650 620694739 860000667 335868498 87238426 695373684 973715439 207333196 742091717 365523251 862119857 433720307 864095903 249054675 708445630 723953126 539239189 50346514 99364132 483384218 383351385 746854731 24638514 590319355 603356310 666248112 761661173 61807601 19479596 372918300 429208491 214601516 333203937 680055008 96093370 643059252 681409074 621178062 250135396 394221231 388112709 718943621 365381886 673309608 452358505 419903589 651220251 22488440 373662691 54442994 919534995 22156776 875402559 871269900 820344488 608940948 56355419 905877655 586744107 745171395 341325804 1383974 912208363 252049797 438451070 646683837 192394915 894632891 601176991 761803753 543589049 747164743 611139584 543337479 286680359 16675309 379597163 491797242 670397483 131312984 963790500 261491862 218068045 189610502 162921982 698113124 347813761 548138325 571929316 714856415 767309759 788899409 806743329 512261476 176679576 236444176 80770969 482467564 100579117 263057744 604701090 759542637 726546892 893720458 481746873 727996071 439156620 534583219 213864919 308495552 974871168 394028940 242277555 246984990 432007236 887784909 802506248 438335217 496158379 100993288 699597842 67398093 130505186 192188751 618306284 299207929 46907054 15260796 948521661 611620060 115111669 933597720 303074849 95184532 980909919 213446104 198013863 835184085 151583432 694165332 820407348 280663672 58073239 105659538 580656842 861241784 177850428 55396120 408982141 985501936 79447381 795381312 496442269 43149899 877930472 578840716 747297126 689121747 683189989 812414874 543309901 780301950 626113985 816635985 825344649 218118973 472473159 306922006 42400013 800987361 951177632 682058365 416312956 862145899 796641189 953339279 565348547 912979374 732377203 514558609 306878868 932293245 157674977 836232925 668188620 870030966 293393942 735399353 413392152 942538492 765402233 493725813 685598345 116734529 904882843 565400150 46835919 73529130 173062640 574640263 497638044 729566788 244284696 451521903 549317102 510488570 245017294 912228273 69749704 415707449 141766940 317761599 316167787 77175173 223242828 792674534 617995478 203185832 903754811 386054100 603749230 251793637 896648531 707169469 260093625 873749648 554953845 22740463 553192956 458159776 955967826 60918243 789862541 124090868 71550999 719271088 664553395 613695470 582568349 618671277 882202148 80792740 927726807 794956940 667983491 786794691 156073134 388953561 291134880 409777134 628272983 149285753 255126146 911017027 414443611 258989247 505502386 633898400 694693815 566970319 603113024 44632162 100435513 379332000 261092308 870703430 977072361 755845318 335456134 123850926 976144057 69399888 215788434 53375817 536213710 805336676 492225376 443389455 437480086 713174738 683619466 700173895 821045006 431052966 916794483 856721643 181909649 330031471 551970022 990094620 711961857 144701114 131385218 630323974 921699760 303211253 964283297 535729492 530022654 838463870 533693846 486052938 450194529 847337167 682961119 273375950 229766357 774124905 932180132 900843885 420048413 920116569 782694017 516949659 521778880 207175207 226425989 485155454 227854413 861308681 635941701 643213380 928700879 603448516 254680719 644202111 912732220 259421289 782861980 398591924 117151941 515779578 998428451 658759427 541100206 736749783 345906349 833867853 20796910 379632061 990866657 982372475 308924467 607037446 982596848 844116881 454820586 480333128 328072661 617291560 753209735 208202588 997778944 142039631 489360452 164114351 836865049 333676300 24603049 787538316 489059849 496682089 721469281 628221380 464019396 588986398 171552007 481309701 679361398 513255318 334444721 400784828 528259917 933587092 157164032 310268663 362035358 178591833 983733896 591304779 160055084 607123289 230106834 672466553 572818336 697097536 546149578 753649318 364298115 802772998 244643867 7576238 860159302 448255468 897048042 66446843 885149207 314551709 142615724 978154160 346581416 163348027 952953556 360424705 728737419 777588725 897580287 114328194 302982851 541014972 186443558 259543318 996697166 849454499 314991534 534227159 421722310 908917981 215902927 882835836 897888590 140775542 756138953 965385574 592073339 762263560 762028329 51090817 2415130 559197058 945281321 455962082 210388899 154445034 940241565 937359742 806699995 699429426 406103994 591262049 127689040 762835982 158403208 76410700 395951456 630707883 270394808 772776041 695660872 966641662 350573767 935626516 929961082 167131764 478869876 568248152 134852185 559463787 901220638 97301028 837565899 21729463 104856888 789152580 978416953 481020350 242511646 541933205 388955053 799331811 33523625 364739167 79980353 455439162 921761510 826211411 786756190 83015613 83065620 740873662 883633573 686508821 682630604 354645885 762274036 804522528 797639647 125528625 392708447 528465010 531096881 914197617 241077512 965010123 277471655 773518535 147792990 53788903 954739643 48617246 940058516 178519199 594753258 581576044 563727920 859244620 576745976 744017067 429153580 536364399 806596188 448672354 601778040 677794101 787955107 801550248 52964725 858423515 643699982 635625474 29265380 163880998 434088438 719763260 47648129 896949588 367842198 532902996 252602592 257337070 180139215 802991474 20814141 545057222 240183507 165371668 850556788 573905421 328803222 195801779 981957327 718106149 361259448 852739130 154418993 754418881 2292255 84663608 916973697 899908875 563969395 871375899 731261606 869033231 776498264 534107856 231062487 501484663 433098018 997811670 486143707 501778956 74143930 369108143 48854373 168202962 81013515 416271108 166696593 3451885 910010197 809560655 777061280 756207959 232203739 500044705 240073580 743648112 524554714 572738852 371582801 673367011 480265195 462593430 623929514 514025603 237130417 909708124 296977646 571472650 35991056 996198745 463784426 93809406 557369719 20807680 93901307 118342890 685921002 947119575 379388058 537589740 348671096 779955062 965017601 818202858 153417698 215974597 168377807 652300470 777382592 901860129 418076963 555032236 885699953 272641621 124899375 923714446 954361715 936390036 148774516 609496645 802017050 24679258 750562773 80087742 1280354 448811425 325091693 981727715 806550783 3961034 316730516 832033663 437611034 796751647 628772574 900345085 61825442 604734958 512412350 424246866 112251017 548004377 222935747 310014379 38568973 252836174 341297622 970757530 341363405 221749028 628545383 845187597 977777963 863519392 721104031 752309796 717341732 945542352 376049763 73714555 845232145 720213942 962275394 423843611 833621862 885771784 522228723 736724098 995952091 240274047 138527779 632416451 818182275 680935405 99773731 711556751 705955937 179124348 700907835 860713678 234298106 42463801 608163926 499936884 145296424 656802790 468273866 495225407 225031549 459053927 588256343 825392918 710436547 900860748 732006782 737634522 20144654 205574602 582546303 791176134 650843670 729899847 992128423 537832757 2636361 334697657 102569681 583940757 974812752 934009766 286845485 598424907 187369758 373960948 434451408 379553612 982356439 874824002 34286227 392658555 713076241 289556951 587363577 933165444 258244689 462805654 981588379 325395693 175114682 129662 784986271 982154932 145839847 760079562 208661594 412329997 670721383 647902807 942094424 81872823 358175378 502167793 553951122 341259453 570877580 917653906 89063973 129844446 683620293 179702309 234451896 345710889 612117793 311486688 109714658 175928180 112998400 469533565 632086822 964799721 8074588 710610744 995034925 665351605 353374385 354005184 183256766 322091716 802292142 783309061 354046233 214794451 734655404 694810970 338525924 255744421 264346170 20464289 252740740 900676366 6916020 170050823 898055548 451165505 317487988 412037903 668334255 217824251 543917872 336277812 498618577 24079510 985374840 193007087 487565388 49109200 797371202 72395269 951321553 357124062 70405807 598391273 464145356 659712484 490312804 680090829 394946053 433534569 898894556 459349507 579742429 87048709 869087463 553959085 385310132 691353572 909735349 349324374 126275340 889303768 883208447 874508936 715529424 738918550 248397095 18948358 367958592 225513849 58334031 815661542 508485566 832506481 185488124 561404810 79977044 760673666 912882780 506237898 209401151 206651556 753729037 67015162 888842298 762339715 233599179 122117312 166610768 274553243 165575523 763702384 735422833 53600066 337609307 313430143 322912505 129946705 679855163 186361292 168827127 939985305 379400107 441104243 365830754 421038067 57144582 754879687 282077403 623664986 160501876 58589433 600202672 901619658 326704308 879159890 681066346 685219384 748167486 80188990 435715928 33948570 929697798 983730021 160189851 132924786 791247209 87943126 359377596 689100371 529815019 306863510 547494199 855222091 47684868 175145032 134983880 228508532 656326688 209141316 917208622 22655071 942824500 305983084 913234019 233557383 910369697 655559264 31669967 392830138 733812894 918939123 891053046 266333039 428506483 791167809 514203006 239774484 159570021 152466868 834058713 620713752 127778606 879293428 996737861 85336266 947856000 674991546 954859269 547699953 265759581 858996530 208148145 690783233 739447505 766930006 632133617 547474345 387538556 867599956 673363081 380654822 356304541 720325501 771452296 195766841 209022043 645933798 224721599 943718149 593163345 687953978 349896878 69234944 339256086 716865468 259704468 211593396 515078561 73877494 483099707 182745238 756933573 950935312 710593950 873379567 196753063 454437127 935710547 315829728 978524864 722812986 141578558 649087101 797129239 804722729 623939508 244022206 181471770 870751758 566219619 373313727 334680067 260591375 326692162 278864969 411243767 209681980 11033907 279045409 199663193 619777164 944932928 860753200 644729640 761116797 872948353 508337255 483625975 263666114 260762532 897877020 686191781 459856584 560113429 398876090 514196712 585425174 352313484 108289748 662757988 754940356 842535003 818137605 12812333 943574996 523858277 709308676 449672015 718491550 855730533 24904757 339339138 738071661 32245376 933085106 388832099 893846523 35190283 695782929 897142223 938726121 200549500 56930643 486711282 806444762 481929510 711867770 58803428 322168471 487502190 971830116 860587756 472846908 355801976 276153607 87961429 710707824 706586078 126752683 961128745 61279598 184235630 108978578 190001199 23323493 691658994 412843546 436186788 467511715 211020219 796555803 101046764 261840546 422586817 355965118 857462277 900543199 87690049 964627680 912535822 866250728 743669168 635529213 34584551 773636604 102128424 256060512 244501797 609802945 597466854 918497367 21825345 726930948 480296832 276782923 437628198 330332112 261684648 414684669 533974886 614186153 491229329 567675982 230169230 247933937 997359848 836237152 613543761 629373158 236394118 13314800 934962064 278572913 470595867 812634898 251663429 178426575 80186816 613421826 940378034 625037500 67532367 548035346 530616509 893124388 693177591 288067690 896403933 825205891 333346400 198691413 333589211 588245670 264081437 560629500 792926343 295547870 74850178 499617300 338655380 899608453 882246017 71091068 249927706 639654914 728416497 668306493 576725996 811753852 492943634 1741927 270044167 28381473 995422353 732135149 347299530 152496783 425578558 124552829 736058872 541672823 681855294 357523330 261004464 478150196 920740931 697068414 864109985 885369831 692226234 832823714 216025055 187287127 565035704 157236490 752953718 980760512 340105765 945028541 309662379 52180517 736125869 720471637 204423741 317477586 101761115 234550678 73606953 608034086 436740001 549074344 796953139 58483703 459603986 859981262 797846351 788634636 133989809 339481843 738728578 896325063 925731698 542302277 515911140 828051013 863309877 655349373 423831955 708496336 156022549 497029622 105480021 472988288 358124964 101670191 608251579 421947844 86660587 410720647 157603824 770035622 280302240 625737724 3234965 568382356 492136716 573566413 383097591 779459565 122018191 154668659 881562431 983622335 515154791 328544898 785342119 63275816 934798978 684400293 157224887 447934841 328139419 617166236 700331606 718789359 812476837 246005901 888830856 560723024 717289782 424972408 514979657 293891108 992403315 766097939 335543965 259970610 861742050 646315332 307844587 168581123 622207775 563009467 272326855 732618066 450987062 438449255 729498507 191119246 902827791 372385709 224878660 248423011 604410521 287143578 203997711 147093904 26247535 536842619 521774232 522040819 457617103 603498606 27988344 275347155 957785269 599276895 803474755 573745694 146286587 453587051 693896871 421766243 986160971 814720574 79089701 716665503 591546215 436907024 553317506 125392957 718262240 384340863 148283637 946015778 575912744 750121809 565050657 451096507 592875558 513501699 771309268 528992973 342313669 419014146 117047506 161487581 547696622 318867279 668212153 68771456 622978630 444721980 181431883 754181773 478568292 229236411 685118107 247474943 636407513 105176472 949982702 455126696 999566254 474668799 780364208 107201672 421380834 654862335 959310351 473082447 833179611 567709139 420185437 298792638 104024807 431612613 566072391 641417695 847532017 186873141 253081732 207025426 874220905 106305324 110280806 856998693 601355435 382947783 860837051 234821611 904571316 133706539 769892658 555042228 367494269 613579185 579662822 663066537 70424099 298539778 2783984 122774303 443926875 235323497 741372895 236578001 958437787 162896428 789634705 117954123 682523935 682462572 854553779 716716874 922999105 967735115 787279885 909288333 980726844 998230869 780874831 587267565 650544276 616054587 456033526 912023118 376698299 179650058 418705531 438398472 457363431 526505312 652934354 52750632 987440015 465512718 218829292 470026099 300165520 191822929 993123344 63295714 760282456 86714286 597924722 657011414 163629972 590732311 78049163 993226546 191426720 388714875 202526555 411173707 874808308 470914514 408036164 269812622 33468681 519041290 749103284 529533843 464473829 684095418 461604606 832088081 930352131 148966849 351716499 353916786 92873882 409297437 640867134 613116855 880755434 613653189 133535480 133717865 594512185 864664816 334025155 638441295 736258758 804186677 824726951 345882022 72771505 51793419 465712279 76686264 732905998 452586929 252423067 114856926 512832809 710717561 528976056 170192151 135765233 302785943 453077198 854124358 487853811 895731390 988433503 719303443 730476319 393200187 930932263 481770543 294659354 266089383 139366611 487982164 799385513 257298527 593799083 747594309 284410341 43381816 239133874 405371941 341928261 142323115 104701848 325622745 403640700 120429371 522101354 53197660 550531942 372979529 660624022 883246240 271588166 60157068 391875351 30101040 196558852 577402526 729241079 721938051 235041698 449147680 868699370 952696480 76866464 943102116 814001173 470999426 404820428 399387727 911778244 335610703 121460609 77533875 751105060 871635668 285344453 490085306 169466587 576012866 33140518 788598740 515004124 852112726 583179790 271669108 715178171 506368538 267706832 684610979 215667386 549920749 526919165 123935534 743695889 757460032 922803148 612439541 699371550 182819842 708397925 367958559 224756121 377440195 449621788 328641210 253207256 448323803 448679412 554932697 236766967 16011965 199672656 704190282 279477068 532813074 288234913 339140689 235262295 480952745 302781585 360652939 317063955 267269565 565790932 582390186 105272719 326710429 189314694 52580351 352978296 364619711 841886938 652573431 318798740 883549331 851510546 822726572 240568892 738477957 33327844 988042773 905111381 49904646 488924602 974050266 434372501 920901539 566057187 845186400 191684198 684989767 947682974 329836405 730877348 623496539 968918527 512773879 804834529 180286060 357933982 44005144 120669899 480713957 714740129 727157017 660099346 192930726 135429779 373024402 529399676 383221661 867929626 161142129 915625603 313253538 212451081 551862426 251952144 578052735 712343946 763234594 217630822 802152937 137752131 798719185 71208305 165945804 979502379 558256977 81064994 81511020 900190442 547479442 688664973 295793968 643995409 136781946 636285411 397526362 662349481 60457757 279337266 641350668 718307969 939996310 686101775 523456522 113585167 472385184 164304562 647144860 324458473 279954017 738612690 931230181 870497666 822410079 516720186 754968045 343718219 1066298 810464892 511742758 936872874 792307790 508938879 777744361 542130643 580856266 478166939 297915704 443176640 328797695 148602456 767392173 203664902 394214086 712605725 183649695 253676756 958553090 90938787 135650372 481675212 670154588 616028895 946730295 638074365 198443233 315404565 119099997 870811145 525992040 302713158 962771312 177339624 861558793 810113230 397346676 795746632 672472214 652962392 821483978 793910894 157844144 318524290 111106416 225195867 344788799 501451550 489043324 651372119 35825114 560563015 803082492 814156088 115125057 178171729 748701511 167568266 883833071 162323351 875029992 650791684 506780114 223241325 858467258 268480089 934825865 83272054 4054973 755987840 431545422 971709110 646952153 188826193 391668045 618103572 779300395 128144401 48654142 274310193 988454587 452834192 258204197 612354844 655362649 661451825 399173343 575729211 994663035 582530720 930998736 171122592 67311511 807894827 363825879 514473600 167686101 638913495 144856164 958544767 529670054 819485946 224511774 209530716 1477639 181895255 8419956 656010966 948888026 705300629 844330986 970774173 674566292 57158699 269642106 484762862 239545376 926212138 925314941 678968512 513491044 964873831 917254349 24703361 734057018 750422069 630938939 559468528 471949162 352421233 508591392 565161069 733052504 908415371 247499834 72768325 528647794 42311153 16868597 561088193 622766906 915120537 21721286 876714040 648541949 32222237 412400412 930004287 306401248 698438345 877019163 257165620 382878068 719887987 319980115 897936538 392756995 870514803 84552910 358062638 809589681 983668779 788793834 559020122 287648928 443478850 395624026 638235734 614945865 471555467 437308723 50267060 872738613 168297319 204561609 896939922 944446579 247483616 36111173 420850031 160041354 906962132 781330541 747801473 429133589 755266528 196008639 380201761 329697633 872043255 345144012 816816756 20447929 98019239 503860827 393514593 380062931 952730314 496831225 129892853 789465226 491104309 14352822 402897040 316690295 319248962 167889986 893798840 609227346 747811099 760057176 133627413 861338796 747486403 305947880 736862323 286862012 486173909 286300096 699424513 45705796 657583461 276298204 263115169 562748468 32667065 166475447 17817154 935743523 729747942 744454061 49034009 768643780 97203581 792185107 8546700 232369383 237057581 843913602 74437741 701145376 969611267 446409575 161600252 799837206 960848814 619956112 704123320 497932655 709680492 610052454 827711716 508095613 681972088 701945731 844737766 230159540 238615105 553502045 47375361 120778247 3578212 900244834 503459159 653559810 776851363 93540495 138816216 227389469 220129305 570105703 917325173 594200787 763307855 807592140 112954264 414712244 183695481 815933762 97899635 464768509 84291812 245362351 659806345 610635337 562934495 641302797 176965933 818321477 735912751 479417770 68314636 163776775 133728110 393516591 730571560 119398612 383266123 77441737 657136608 250733057 47610596 152049237 791872645 846147988 687946697 439331705 288028304 193299006 983313819 126740852 191462859 50088639 335873163 357806638 16146345 402348009 983351071 175353437 190868794 963259621 188089584 980860673 473014500 865910875 728959810 427044481 111519447 794104958 811196147 774431641 77143272 75986027 124085760 951531090 529617824 431306530 470685975 694263190 288503075 928059608 401972274 244770115 358941380 41546259 227015231 586184798 69948506 847267415 768703076 684080150 308727714 260420511 17523591 244670487 202035641 79123887 479807876 596244731 103708417 633641031 569087326 236629579 226878262 279156220 488999694 898200717 291005538 840363773 251781368 838396771 982570015 517204370 745678775 37817555 244474220 341981957 597063721 718375760 8914861 88994907 143384234 310058509 895042105 355126143 275816774 847198753 135020459 624832728 918760283 773782661 531028652 135194390 831244991 897269565 262900337 889858720 586081466 966404991 278031616 250367176 582947749 900330715 695428967 321991362 278423847 173564893 745962389 945993267 265640293 77132840 387323582 284756506 771436070 862388515 333919292 367376454 873476492 954746816 928337673 701641168 472557538 859329334 105484983 100327359 93244750 500948623 466726021 221934516 958238169 233436017 348481098 527127136 299587662 928288081 690399590 201746000 560257794 513415596 426239263 462926199 636061221 509730990 43575542 36282351 166529095 649153405 724042282 508988014 967662306 140293018 834100406 474062732 883812116 365391493 176908781 505720528 829294759 147118238 73147255 489699774 988082584 463360281 694589007 268977249 793711922 631918864 432943957 210393390 810784389 703109834 189449162 119850468 640838108 334039296 472083051 482233302 657163855 876807565 709342468 543408069 223242228 605707774 295576152 959534184 714547081 885330369 455879438 755382026 452644027 360068304 36616660 942229759 707884583 227262189 331784287 514484206 555351740 787282899 543195498 213754885 200803431 933861325 338385318 751122886 409051219 516438151 585601245 519756036 626601551 975851982 85116903 283500146 879155894 165765367 228533789 532820929 540318208 449437487 408151891 584823045 234416592 794553961 287969376 981592689 658270343 301657746 850126321 524371507 283121043 102358835 719693457 48086094 915961027 167298195 124759975 134840704 622596395 697181341 759113337 741854951 892396309 223318492 656647618 156846837 606789379 230835743 13359429 204214827 706630182 484408990 686299473 17393756 293324733 25011138 365731382 751514514 362225871 749648171 726955142 100257124 136037102 281786761 489689507 443663219 972958739 698606802 401729827 295517699 221862062 931291525 618467095 918440001 496980941 11038408 85395631 246743929 560920777 15623565 160467755 742530878 343566490 436881155 724512604 963713168 232107224 328992698 236616505 640442226 535058116 814177444 603135320 701848199 794572602 776148430 292396351 679552234 177334321 292945293 410842409 557024590 683269907 203668904 299916887 422577347 745259308 846394995 22503925 591737183 343162333 594265426 12397975 785807234 940323677 155789271 410354537 46147 713784345 205389432 158407615 4465472 132674944 745017301 340082144 824086367 831679414 789521308 505274370 168108651 122613412 75058991 403897270 56812927 454497480 718766907 175064585 739944276 289962719 503781410 400492933 735842045 538567263 324540817 983377571 938849329 345713948 685589010 295868296 660371426 296069458 209839421 659422709 945782006 463204512 794613620 449034110 908914197 316709841 886838140 148972381 794210875 164873280 272057764 576288959 709437837 938926130 296736625 436417850 107746612 970320036 587748334 142307057 920342495 913994778 232215717 652530216 786252715 945513146 43698476 719251778 124710122 938592199 682504483 238668664 266109607 902021731 356755500 530901281 956565145 140699644 377296044 126848190 980238785 914616019 895002759 443511029 2454308 221969511 513066677 325467404 793628470 177156614 640275034 690678994 143542981 912217552 833976442 245843620 804083964 196880638 335908754 930703628 939101213 343713520 699254913 101815207 612633566 248121249 414438083 570917535 923776596 61001927 640578892 769412586 482453 546661308 825361326 30072704 979732628 651507059 771767696 114927335 887574040 726276566 423009880 200981837 221446632 520220269 716577192 256314834 97929107 939567462 374481359 670589004 281339519 997614571 425084591 751979200 805746267 375718609 194565143 2451705 646929413 503147551 237950087 79121883 369235458 276827767 162377743 993312165 368624172 232359257 198460841 948370498 86506723 545106368 136473642 95113849 766417560 222095374 703604540 204431057 230008820 335800217 89522315 107913802 30531808 519940317 589333836 874300073 447327869 137426378 843925877 939060688 405227164 991259836 720460424 855507412 375009777 996371625 27283830 342044345 741870142 885344113 519968266 886105798 827667159 514783616 722697547 805212966 137156429 369146064 985698157 664412009 389027823 227289414 167977860 798360852 959801960 421132426 789574663 374543003 839200559 184219737 584486899 607934555 19662605 547744583 954105515 789274399 597943931 317413961 767923554 511801789 247964727 132953900 232858884 280924779 517517244 289722515 147561680 545955057 553693846 508610858 493691441 482959880 617055556 305283019 924483014 272337500 324380384 20662752 196475208 133454962 66051348 111070651 293695034 309473906 638174477 29167876 903370066 618041546 58653508 177914946 10560497 807826249 703909609 301440842 316513316 137790346 432571866 800497632 479890776 259931256 792695295 443879165 801295884 627768152 256136677 774314133 498181514 439162265 926028068 272277070 729908862 438454652 792959763 524135670 996326524 388799337 584119607 520882769 156224048 725114134 240246215 713760433 752084501 885025731 95994429 697912628 253220 165371495 740083961 864189550 628697043 655419695 108960112 90135090 494114747 105220897 851282424 394179498 125059533 916752436 911505776 202245323 337083290 371759747 63495097 319109326 636176504 937126609 416578899 682261179 779855984 884535054 966691131 616133947 981278310 96599220 251137104 602584200 441332329 731425477 263322926 465387308 981653215 463791710 8589847 759136426 398356609 71402957 198912016 727969970 626188209 702878805 580726670 825597764 695786591 233941968 71857361 875754666 670953742 866303232 476924869 507295003 444302184 10416425 851606938 476393584 79555148 300003552 71452788 232850843 116938414 41507964 112668651 748878152 2702722 769208740 241113440 764237240 6257696 618850960 436090746 618096766 29574451 980429300 986031390 76223099 758151071 50940498 333472025 212374089 613099689 655552246 708244062 520371648 498188737 584430248 774821319 902243337 232802262 889233577 916124353 159888998 678031932 660571343 744328732 304803218 41847623 177045711 103074445 473914330 147225994 654771174 357934919 592174312 163406229 176800198 597712616 561680114 717041105 193286554 640810346 304788256 352627846 890794244 578742261 200487798 509646690 368174287 522038217 40031768 12037752 262003638 540872705 326196270 227060838 651582587 436332721 383836056 829999399 749380601 687344309 505031499 884767434 748563132 980694073 137595523 406193161 51677013 52429097 268812614 513184191 627917875 74488044 692283988 127765256 155272323 939699288 38178386 54085468 77003286 494662003 87408214 875826662 658628133 923100527 965239977 259164595 62926700 694698127 132735866 480831052 165039586 234405503 484533088 120114670 788812282 680780232 753813324 426030590 767518900 732709657 925966000 771304442 6537550 556818764 123253855 814698078 967404926 277577709 908472661 760261466 243420536 741009118 324934892 793191641 637159611 982033331 354381245 421516285 591027102 727924057 931721025 344814837 420191013 6747752 394031811 125904580 719106499 51199984 65571810 828366527 704398879 124461393 313815073 229090434 746586063 480451157 818719677 489506249 272043680 384631137 382801399 333010828 699505769 61936300 680068705 808562746 21418120 195552374 855767971 25705289 427798546 290144329 243116610 311510107 709513971 698733785 837227693 594634913 829617430 362686100 141046559 146751676 611984623 695230869 447795053 979322593 609623590 105184939 349682700 3862884 125148439 308398889 71531893 811997215 464810657 871214813 957774584 757844806 88680745 960274477 341955003 776906032 276285257 888853972 732450120 102305934 404849722 48136544 451043563 865658732 60134051 384475632 358290309 610119977 564940990 88525255 72681360 627519587 770814836 674159404 939476232 992500089 159812213 79562810 356413076 553922718 682339194 880606752 375580317 348682069 530587282 242545614 444098037 812157645 23150317 405344052 553984277 930946452 233723450 389413348 344385903 88335664 732471499 96409756 248949438 191480260 742794111 856112922 136795011 22608260 261394523 482632957 336805008 935692445 88506228 21443660 773551386 433966554 486480465 89813973 446427697 107405655 524919073 865985711 935526151 21805026 159916111 971868796 448846295 553987749 507974306 390415417 528466125 983396784 299752192 519983932 394894799 940063107 443742382 624280116 692759234 824156508 725409522 726976135 678396206 635051720 523127876 329416063 903317036 820392055 819866833 912579131 257545000 492095991 397505905 905033426 127070719 421718004 268595972 80935938 752156656 721522316 857374225 996063321 192359709 78635832 763665008 357909671 752022450 766215534 94916711 953681695 816984630 678463366 970133047 259079936 806948799 380954393 663895283 336759210 820172411 433052194 120400891 511568000 179393257 1311027 815537758 371458924 480755495 506659958 971258551 690632202 856453603 457050698 548146034 660238786 169171430 600870650 400812636 439518723 900909976 268047432 928664354 178490560 362135312 989079193 277438206 739085471 57714796 193308499 907052169 717458242 587628638 527588077 816071530 846805122 294706771 855588131 406614708 661208037 830299172 988258242 89600784 847827500 629326949 763883312 583934247 238567822 973464458 400313104 996023418 338604910 534523181 374627190 304467568 58813407 338397086 894845418 123420509 461088361 41312302 498006865 678304764 35021672 853900149 509757238 483005087 709054597 322496989 66087085 32363247 295847711 350715641 242394663 32090425 329404061 75900652 260506189 835516233 864057769 147336404 874987983 748386685 998229188 532014370 792793098 746741905 109309898 927277205 131181546 909014941 461328805 265436154 105138014 557616160 79938762 168747871 903436780 970462554 124723622 824345407 723111654 129331797 143714076 333269521 177909007 969357452 183158916 24295507 293500179 33329776 157831806 117773479 196803757 277411411 935214118 185646083 975390233 197927754 827952400 369723891 703365138 50637092 273715198 169072326 557363237 281653154 895878430 58683247 840529779 278549257 553086336 551826505 380324292 520620226 918938219 352616217 486345683 355066491 956257409 750734631 799432434 115810788 755340025 564397693 889820110 328771726 878953492 219950186 774774248 845530459 769426492 546181949 745909594 530087641 484280486 928347980 941020548 220469382 149358505 820537548 233457752 626623259 446691847 920108765 326118232 59508140 104569532 861605925 487093140 204794431 12028853 220354497 301233528 108508023 346990919 803278558 241470522 697033615 48259577 324758796 793361037 42411430 248039469 537114513 946136648 408618852 357513735 389356797 846668425 372502074 721371720 983295512 639490781 93853711 861370263 427271691 488576022 137914110 35480104 383672626 781343432 824030181 3953947 188680284 680102768 305583165 269612838 635526702 86017426 387234225 248360796 533158170 793966319 612351314 741055711 560381579 791988591 400735367 575853562 921247187 799672857 268985855 292653113 537406207 65683530 935633658 921109000 252851489 356962646 135256340 125476841 416503767 891917128 39805297 847165566 537058210 277928746 576675336 614325386 202423365 321108613 371932777 233780940 301119714 525574710 685446287 107173877 799366477 854248 383618541 123852647 82960368 490253885 165496455 924546870 370051471 340524127 365128607 769385203 660644456 949555157 350544509 280070389 832981505 666892588 78050214 573947450 680307810 353335963 434343909 219699930 919295683 987267839 935747367 468310795 321448058 991680423 164824322 83192757 853956734 211843502 402227933 827612892 805594954 832432283 167415975 682612528 436538744 602571883 387546604 973788300 729306705 56016668 198467663 876992289 542181280 180051423 793775296 177494214 575257965 408573837 298700662 933355145 375555854 319964654 171713846 442987886 697003282 893658445 26811623 704442824 871033003 252351186 525130462 632046956 448106415 819929091 687480406 226620478 494777747 10796298 498377371 813995881 392278091 793154515 310986759 879577802 898491662 65398738 310454829 571899754 529687604 689011147 279946720 53450363 280396599 530676941 326985188 443914912 459732316 831016161 196438683 610689874 644860406 505729760 158467340 421418773 313200342 951908727 505764247 670294843 832563895 742824774 686236931 66263545 830517183 933632748 884791193 735466036 534970033 969419080 667607941 757679639 989753279 760472613 8460027 243607262 486331889 172549350 220898313 67692116 382352378 470071014 207051079 835864891 887339870 322629391 270023182 321096655 664529641 190635426 496623359 722219439 312928758 122131455 492542256 36267582 394556125 7476609 719439716 296083766 324157055 843197570 361548026 773312989 787655611 926325945 578692190 913669975 77287243 303259145 396963796 848681873 907953531 601995722 228107230 883109082 785638331 65663961 563424007 311502166 785151114 317260735 445465075 50513380 742033949 516266629 879524170 702307268 632483424 821085968 95162782 273005970 508856748 437358946 602409329 933164114 425299898 405875270 865188909 924805400 46368960 914794053 764637799 736550633 302646836 831040680 858521155 389317724 117120143 925334649 882602743 454529463 695989998 347144762 229847944 539300482 988290255 610331774 930335945 686004455 143056249 405358301 366417082 789273112 627112557 592713113 434984978 210079328 617468518 157127651 141001770 575056886 97013343 943712231 289559270 684456616 314725074 919303201 933182364 7004629 947508116 277764685 155551957 430020576 656098564 682496837 852678471 619795380 198492833 375225293 704981589 260563515 1279861 619490197 847970908 863979877 816042089 626647304 67230041 778090346 203645012 830586166 685323997 266936498 26407432 657851387 282680292 506172966 866471642 703527444 85214162 902528125 217855501 682452175 82998877 378814388 900268228 636269310 189375869 933629789 74139322 791794770 318281279 457869770 337165061 56276485 292986864 966812812 189251761 333206905 105175474 558911335 684802166 724647551 54192687 796873667 390337001 769922874 863854719 764016144 930966614 287980925 120123673 936054852 637823827 218225906 665008196 607780389 891255033 411694473 434247842 760537456 163080455 560644653 900175356 877013907 651223635 449169485 101859777 748196313 540131894 521187233 638511204 113549788 538040057 773671767 753003996 364848354 406210776 317648941 930306847 235497994 57177226 539553954 84620591 702282272 807832979 200544247 803770519 574800989 89640628 25598571 759867417 57415960 512733044 580477199 476859248 374110894 770055991 905943393 606085662 797755523 628378969 507254367 871528762 501382498 725885596 635505652 516574219 857838586 38038823 661585608 467582691 66892895 209116507 137370708 302002190 993805402 369666925 204829954 793593177 307081016 527073124 297223095 244468054 896416269 229899444 439418991 348642212 170622341 52332538 63116176 110679734 779997927 145481139 102911479 737354425 310629560 380865298 876531037 612524460 311131758 893182177 361747733 678239142 680401678 860430959 471786479 825081198 743446851 458176154 290495050 207146634 895258365 30071547 203077802 672579386 207934379 40132341 419168073 698818671 219932715 21492816 216170703 386520249 227981165 664446381 970973800 604614108 112564704 761651384 532947874 842522026 480699156 551168018 420203505 529179665 375522501 302736498 484688403 435994322 185468670 401922659 767429865 772604000 8722693 1802641 405202776 22037298 563233492 717067531 851256123 768981112 638641176 69511217 473151574 108659700 789671966 789219134 900652404 931020803 427223605 422733225 844876503 539058657 238130037 519087734 585099896 185916288 34493351 99631803 253836268 252572520 580471735 289553552 785843903 56062977 430592311 953943249 494251426 655373717 809897052 121581130 318875250 578724082 668575586 937526048 634796057 257121243 380983470 583750515 713761435 25075003 495986158 530303151 481548445 203475878 647864028 171898406 473222603 721347502 300212554 832543123 349251597 647060469 857338096 512894424 543308412 539167422 894090411 635376948 414619312 449879459 577517657 205471954 946279033 580223137 230780509 313422725 967403775 531123184 566227621 694930814 400234650 331770563 913970685 563147534 158933208 568123833 151183145 974212383 846069084 472637421 87419108 415450944 265505021 793779459 400481842 497186598 779639810 417460430 744926059 348149652 415381207 634454154 944402652 641700302 953985891 282012168 512098667 710446311 477751083 132352550 829352548 333624928 48706127 510752875 652074082 530131094 804635926 699073785 148994008 988013252 347407038 606855238 305460965 15623544 583773054 90134459 282931127 118465696 872708170 796673018 745016457 273326447 427949003 651563826 446260032 801895386 501861722 952684357 620376208 656838441 33949175 936800870 426059778 726303029 351868427 909979645 397476025 920570346 610737848 516203926 782903848 822789566 58196799 306615569 689803971 816661528 785969952 122119769 84367994 287898244 622330804 744157723 278453119 959385580 624089442 844142682 158363513 134801125 266403892 527530208 421366513 26208138 948591578 795675452 318659121 306549485 656121048 376698489 178558006 165023678 992246400 797504467 190044009 526598424 137724746 848924005 945509851 811830785 62701343 272631064 541874660 83039144 666258574 144199606 56524350 295729852 454219099 474380805 433411723 734086115 905216942 109678353 580988135 406216502 682713206 768419167 928668928 260063313 794710796 438039259 538865673 52959564 877945560 335857634 500452246 362831814 681621616 598753796 386650167 755727028 314337114 518159907 383158469 267952958 961032650 233713020 667159676 412123332 475101514 626000007 574854122 695957227 811150304 763687256 72147876 414313642 620946045 38277138 352990534 960098382 840599055 157863637 916553663 619356698 397899607 250876643 772823719 912315940 206856260 859384546 479631518 888333721 681196531 749683760 43551288 654032296 335016939 801045856 897278176 134325514 789912827 896272797 705163214 696567118 492750248 367911852 793604239 988885622 570419792 413839972 715475363 627039329 555898763 147382151 535022543 19035936 82502731 857027329 170947643 110846401 507853511 806871959 212926110 208355307 291049544 360583382 343529727 158904639 842902412 383814294 176224392 30577678 564259146 176156934 702779173 670628810 964595102 6589868 458115924 365333063 175298647 872811297 18178237 98042316 74939895 399024389 837129082 271721858 59568371 341744812 396983925 93493756 847466645 331974309 249690413 693166301 743809038 278311904 993495504 617163495 277691549 890659658 65586818 609110832 267294632 625895528 412498869 339141541 358601477 919868977 930664927 900086912 760537544 648234641 97122448 172563126 331696346 337789017 706411771 103729975 101645085 286277244 604127908 150953578 693023360 679496139 184064880 224740413 325507900 135436183 226147667 561086517 582388501 299507340 554036908 373948598 611644835 191242417 96808572 373757976 801376204 383667518 833705055 589170113 351217378 796011832 795931777 686405937 27880819 665920632 383756661 145575263 686581291 301187815 280870836 503465630 210915460 594042232 967598732 841295520 500508809 890126062 821247012 919538688 740434121 777559857 107955829 552402632 386537998 576473446 665679902 297768507 434888151 488696430 522100681 104054365 548285438 663707966 109508462 129046074 392075782 767735112 899318653 153579157 184114275 4532945 256806144 469239667 604385737 172016722 794112598 72582490 379944893 924721685 644964511 148573698 642827185 2904113 374294514 272035942 123560138 948949927 753005138 116450300 33454057 567723301 2712968 517594349 598226136 201607148 465381622 578463055 637818109 888080657 650980151 99266331 317937175 977850857 382824155 664282001 714517398 65414771 97804410 255897792 321773225 252714974 213720642 817954102 504139463 479996858 972940527 984172362 690248510 979665449 782900505 362689048 284648904 749852589 86496533 74714139 99015293 651007437 917058336 484457481 983894076 752323713 475175653 137831856 652543633 5117536 301012763 796604997 662294617 896533704 372119878 171104825 21306491 733869392 215787788 94426684 742681505 116880162 623633280 6104987 318600586 49034733 584347028 599900292 527290993 411098754 156561548 626911265 170576781 726467049 420772281 509169685 779680271 401966392 176433636 864545583 568937182 615105077 173804479 880357655 122996666 665777812 322979559 163577523 53818810 453958581 138531478 685698537 339923708 345830937 552965465 243931447 287914363 421347690 395033722 484979999 533863584 737536079 577427347 711150523 674733756 786798018 555687352 783192073 283086739 672235782 444999088 862580136 724897911 300289952 80735286 386238581 295670709 575819596 682419673 157352602 770862426 8209445 118129666 248636298 630796950 854939126 321631114 327279072 260756187 697764373 26198408 116939948 438198785 716362487 904327388 917458394 619957969 905789347 15700914 364636523 695294588 889191030 208917555 234339454 739050295 821969052 126993281 949427746 755256321 631527843 590510824 676658459 27395797 356850514 260316539 450472763 983471590 322689779 912964733 31693899 659723633 981232374 592212893 707527751 678081495 223012447 665114126 219534805 886665892 721794329 922703711 27650716 492484768 629963236 849550387 424477255 468131850 103952499 693456487 65664257 633074438 765040453 675277099 198809262 870847214 480351002 909168100 326425262 559130941 479516328 117793655 419002202 171867152 317534743 292085753 811314425 599611173 463378914 155328358 801388738 744678697 915107765 787973961 435455902 459762298 849272765 731882005 428158413 267740532 863890114 775484509 841790686 706665227 216449585 31766244 397834315 951453657 666161083 560687162 330830984 180740300 114631083 348826771 468030762 65680606 664680097 467400871 241919655 181297460 946522889 209781168 269156035 611933236 818326387 978463733 8159004 440418885 33385770 282194991 512619262 606264770 269753973 654262643 570976528 889865022 267054616 965970376 895304416 384097138 803605452 806526431 922288497 469451308 663546879 480876536 304913485 639348382 452446951 114440678 327259276 300070496 462186853 330143340 550290731 784731235 534133782 2047456 489647923 138327352 350562820 967926298 84694025 595093878 542697860 822241998 949501264 991492111 163825325 190256710 73486297 798104767 317169072 189054673 58536240 784068336 270202587 766963788 610337976 975206126 913460663 621018756 508485682 528847300 558251430 937949272 562131114 518716868 324474363 696319552 246749158 361533194 873269628 466774585 228008305 146403553 513900697 250384398 958265292 300118467 444074331 152863294 745673508 19033445 313558312 670484098 394905585 978118125 548667269 963818661 89452659 122400719 311399374 943770189 627938968 938091234 442132535 110551032 751752195 160163931 871598684 6395663 790504269 31380577 42953008 830320682 103249263 352084920 563759041 34639572 252629383 796488948 760761502 404074706 512207044 739409080 957904973 616192616 959437841 413971073 939799025 896718969 807745111 699339238 882721464 494583531 937365239 328828007 288346595 338148856 991969325 757889673 767162220 687549579 310889313 462393994 456185772 35798037 902677176 637335762 87111834 47012280 615524277 789944351 301316076 63983367 527494230 106860648 842325137 250646352 64350402 678805545 983029431 478813805 159044241 512057420 457024009 61924185 923630579 679013889 479977571 378168149 686515807 373509242 961337994 721185103 650102965 517669982 300613282 599190553 575091098 617748489 618742263 348461609 498019092 805510415 320389106 890435119 231800196 567820876 142876907 75405754 476191478 343552781 838999307 996106579 296242820 794624357 264455402 654626895 158295306 179486604 853332041 409567340 981620923 378067640 273432984 902706086 249448916 867506523 482634183 812959222 909505725 652462660 21610516 604112761 714506913 581506863 617644693 338416606 426570013 516329937 51329527 91314617 256691619 350892899 5875419 183735584 62325210 159663472 179302310 938000863 472070492 224130712 107472709 846934529 191546334 887111693 934570952 739943906 925831034 376241909 241232319 180144230 475100541 582577506 200555005 609273157 637082447 725348711 80898917 671073358 419345939 716797321 167059937 424132378 658291430 590697552 880943704 695883634 733053512 700831327 362991246 166111146 243970186 236017027 826702697 714771590 38074418 551366321 786969441 797874100 858936109 293143117 420611951 203341620 78352367 735919524 821682480 775343984 562238782 531457733 64690977 404643083 315311877 147564118 204353245 275106454 573757792 684887722 977014050 42295009 545311060 20528349 487642336 208118154 717249688 391821659 109436046 841136941 445159306 428374396 602535510 451116826 542832320 315961077 60310410 495671724 781281532 751684323 899105753 936969975 851086229 344840222 43280984 64689102 854946406 305396281 378571181 924316343 964703376 614020179 132510368 132153889 37220944 9770833 928853367 311602318 514598179 256298365 544346304 442205352 524656297 806828012 648046264 321566882 99667630 658251735 978279640 554128842 176779252 448519614 444482719 954426351 186761796 960117818 86132736 423266592 595384649 645157887 310771015 706855790 407806911 342773755 271779176 970152689 17370977 829861955 402834228 55790247 869259580 592534581 331316197 372380067 55448016 463186114 772725152 114863420 859550779 432525910 880891445 681576039 89411353 763244696 58057799 757232293 358043285 905671601 438917846 932474829 739182500 72996274 26121037 799962124 240340338 518117530 609399446 803987056 592001125 743267537 721182153 234433032 893477413 47220199 606903266 596164036 233976912 23684010 88164664 120192677 764522276 160783676 879973738 334588567 808971339 112880689 968768998 205885499 407362879 933283853 109350514 757350960 652953971 385027299 104922867 830686705 238671677 571300437 932858887 65354953 848204967 378236647 99931117 251809769 730826071 413155778 448538726 84426583 611299391 169378435 144332515 705029880 212494894 510330555 6071820 400856942 981051707 776986183 860936222 309332411 507352987 478127026 974186384 291882978 432331877 372102165 605209708 144511336 632242519 771809481 830323198 705567029 529288299 792250744 326508287 554495621 819696361 575223938 556072564 626762640 2265336 486160181 605984593 495894476 919762066 783880985 411283450 663144633 865728425 664256689 859747985 397350010 334674843 926225611 502904645 152910415 305312418 220138388 203776318 751175229 836121964 520207902 466305125 538618324 804860972 392674441 299869612 648169697 328661841 693067065 82774492 99739605 795469577 600710856 877672251 997565161 431857188 666794532 880220686 835493145 442852228 410541038 446232338 40654464 113495210 540471115 393474648 281596359 238554769 728886583 674464412 269811401 74441043 421654113 243667483 982759401 43561318 487744737 880099462 424320928 905295248 441548059 203470881 264283091 981701941 818706281 323029934 295788982 216874566 994413111 702001549 613691547 800087674 90624275 627361687 875903919 564350365 831441949 196122920 258328689 925841013 122788669 700324332 876662558 720186761 237316774 345340351 351022308 143349288 497892012 206172675 913452904 140342834 685908397 983038063 688712651 298088409 937696941 416058346 564276813 506933838 15702126 76285520 587676614 215849960 379660479 870528163 884897710 925559681 4711869 852504010 417870863 141960520 623643275 792168674 237991426 319144177 122858513 175314157 168895485 8115548 930337748 557268163 962654790 493967511 152543571 115091450 620529776 452095916 915372190 436650867 517792692 117203997 950746902 185219379 33505773 461877768 145737401 941608761 852909509 192504146 270830270 425635222 456307258 416785059 37064859 439691989 31936200 326597206 870468952 166421036 792304387 92794279 5681825 879051990 982206184 556572106 809688128 392420043 675723299 703002554 237950893 331204659 642555640 779388350 705048924 60776252 776555981 818193994 728686129 516873791 947601054 355282752 322506078 360228741 887463079 241423128 10464925 263458515 301726507 494948935 219094188 914310907 423681040 215051158 407392162 764867181 34903668 556971640 684433636 352514791 779203346 729884057 614354208 251804561 393850825 638656136 606714213 672845937 388300396 208339269 4316055 80493405 613955772 116690893 930976509 477313111 596086189 644302081 6833055 409557387 301256833 569861453 980005175 418872364 448046021 854512389 321543296 257360955 384959272 560138051 582095069 853047577 757673573 419356299 49171883 749003370 183639436 44862122 854517266 193017518 245925683 631094565 919397324 312135883 818747801 17062141 138239119 638352944 948811828 116584801 953924641 8607729 954660831 46766846 439103807 859022503 387100883 234914112 172892227 691771095 619910972 325229153 720619954 205338893 682176433 855324603 814244573 825832773 45833536 976376059 322884933 107389606 726278232 505506792 875932142 194743732 322413459 562964614 920845771 861982791 641910822 974360775 228191696 573873065 618077827 746080403 666248525 960396236 289904783 988619854 189927499 726993903 674936445 757367578 733774966 68879821 55013510 814882186 799142629 504533016 325482332 685458241 135314671 558809392 855803397 871787687 489192532 352628263 108096530 212263977 280646394 82514915 35061232 255848526 329069695 574615447 772403363 463395622 10111015 216957129 715210668 351960138 508123670 958043717 586254373 265804198 16227611 590844348 224593016 63061207 23233642 475427356 206880499 775714485 411604669 54018515 252832259 714422525 383278167 991358277 420138428 490067332 463141065 871823528 687776761 303258079 946670054 239381849 869471812 934251435 103162547 925461937 775364569 341839042 485546600 89460249 906616042 658785691 850666006 822363034 315310218 71330954 706941821 404332937 439071215 338458419 850685382 597887448 288615125 830216926 46415289 532856078 998893022 178302614 327652982 405737753 106046154 228297533 740717379 432444628 93174576 317934875 253681417 504642943 693488313 717730995 916872691 680498151 111486648 257182819 677202784 117132776 475765258 217670527 420556686 158184569 407874299 784404729 41966715 207572822 435515674 844131190 390697059 1321418 283671695 472929801 216223507 463678490 343709914 958962903 869831351 340851475 885869490 717077748 547778382 248722166 308154286 795266946 346386716 550246779 366328384 463106141 116067149 478010192 904558608 358589142 591080802 487270729 852768065 70713503 170709704 646061578 874480158 294980180 554958852 525150442 40833750 818863219 668036580 595007142 643701030 619551630 547639923 158457913 683143269 65391738 49966686 294665506 637887210 233827993 71855059 932853546 615836296 569789247 246948611 493718270 972868297 683315725 646229361 870211727 441091407 416697143 776752571 207916437 37070353 169484517 800364087 370654240 353091686 848279523 484415963 722657949 682395867 167687301 370971984 323008999 278874038 240774583 546570236 575183268 162848530 658563685 18217194 150535849 174921257 17016682 859885550 858389502 832065570 400926663 833662583 707758331 488300428 445143631 302919580 908835153 534573645 271191612 793641763 254327863 596607702 14122120 711732352 499179701 420950426 697876672 735824166 904579626 320261377 758342244 968146711 278057056 43083379 607739277 445877601 15551621 165742959 754591911 69951142 109620958 509336288 592128034 743913217 887109385 956131435 803670467 815033100 735302913 737288929 91442266 403962593 740625644 907330542 977436509 562079241 825989363 667986160 744122675 845742526 100501552 346694368 410097334 255570840 341330716 243602426 850709354 759481239 290703805 973881664 135258395 280522572 414834749 615743592 75367743 543703128 548589109 449958433 362879493 392149338 784758154 398812971 893538989 234553666 928517053 745710201 538659440 662134371 660870573 29200726 441743960 365384386 970401928 597374645 95063311 787405940 87020873 354103909 260252649 2067418 786131489 731590846 876979968 75307829 220488355 333086471 748835663 269092833 441342220 381657173 968696745 224135071 650605339 407624386 649606344 315785094 955549963 274325926 519273571 925290110 475096694 677876009 325677111 340378445 434042135 668461731 596464422 579607022 869877545 735885662 416144731 900730529 305649185 447238281 644300228 927962175 404266579 275882200 164951915 461511617 338928013 769676582 402207100 737196783 880403087 244271600 736299379 880998217 204233518 940965145 56473141 863362692 984122307 210204082 779856393 177903044 408556455 542372789 935726753 880257974 158235185 825003281 901802677 114945358 53055934 766697376 391731832 473141542 27574657 549301287 29670577 239842710 291111175 500325017 386611004 522920328 34711723 989389781 332781150 62517589 407815564 866927555 97867733 509742331 856259157 277947736 716735436 473339494 66820365 241261791 376946138 820664053 815679506 736085127 452751566 387286694 53687351 46344549 627539851 829122497 944589158 820022958 659400227 78273146 992281853 863501098 970831051 200820468 734468875 656271733 164528597 948451942 816791833 832594617 147102635 639754354 820683707 36011686 305297944 623234547 430599135 626643914 529721414 860127022 132525802 961241635 607629609 689035253 237920925 756892494 434397640 74619444 127201645 468000246 670115787 142868833 766571688 789082732 583925136 798261981 61568021 803603075 913366397 837147186 368208288 573060097 305444581 868435996 685554920 267832546 481743514 872847817 611463271 931477956 670832365 945787266 887686146 880250283 683928035 965853114 118625209 849206603 625699010 158250210 959989727 648693838 633410521 530465255 973687677 900709586 97615639 318030628 898253711 533686174 574954703 536435549 820783277 963230913 784411763 290397431 197687270 117818266 703160286 690528974 923510203 196372723 858392583 916590057 107618146 307678796 163724391 413608053 871567035 335461829 953279464 231911209 181759244 954897820 148208810 388945798 529127491 942001793 636798776 434270656 789068027 632675402 127631001 564602588 621450358 646905445 486447409 613474775 273577104 516207478 172611405 769518113 202851930 814258302 681459897 172025805 278162633 33113444 535246575 163876337 683575487 614450741 361153063 51252591 981219475 939364608 495455966 421312737 945876819 568337205 305194104 97435954 754549731 55462098 6974753 147157991 538343508 190183122 342404344 102115964 30572856 588351543 900524926 377627085 731358701 789429440 163344791 996116626 502111700 47389713 586491562 661027616 261686388 12125512 803204153 959421926 439234660 780001262 549023270 16222148 944467130 629462332 255676686 115358867 429803951 822512853 557110756 162391043 151384446 143275364 474943545 823892406 503515862 913803881 976287693 853492805 716635748 752634142 825589585 829562497 841762730 665798902 887922915 191869628 404232227 662297369 864156058 817317027 252303855 385336356 433618363 819077685 332982302 88329330 360658080 349669050 988095924 420256221 780307316 850388364 311124079 404246202 452977763 671767658 917296310 710404992 657752163 70495676 369936466 637864610 867391168 163579268 762289912 681640913 998823021 312679727 6478747 634360337 297875020 251668913 794076537 93145810 144417139 523231657 632999931 18574122 836285077 466472056 63820866 759950685 618717431 641227430 286596463 775440695 85703417 758606533 704210599 111604101 616672682 9677101 977875164 607397727 181531800 336933058 464381357 324609908 213715371 704192562 246670223 487146206 302703306 283410906 328128490 843280923 569108848 804802191 755026905 267255524 99787002 261285679 854916129 29684576 914892551 313006443 223132935 720676781 138777060 415243122 858362223 705709418 599112688 15347288 432912833 310910445 879322762 931381447 912383514 698615920 366479157 486299989 537488075 621675665 275386949 762220601 140350283 586628953 480898382 62047265 689840695 644033624 295391261 403941614 53249501 502998723 345918080 963848756 39664613 539424136 715356515 124166929 212715050 317844359 938241209 674755325 338892322 63975585 309002414 237054023 337434400 152888499 969922468 839824253 726370568 324917279 6182929 222808487 872822134 778270006 326964061 402952631 289128393 150692163 831802881 531157693 609871458 886169198 853450211 495371906 272822721 383866218 56863974 566639507 410427664 545310905 430471944 517062326 27142431 567386706 193242112 296487477 628910318 102832411 476488005 770289754 797296429 194350757 93628024 338326165 480012327 660341065 342856552 577334220 1007914 974628588 147486141 754749066 924538558 280179558 986691230 427534909 352892497 446754993 820471339 377769372 659202124 643099438 88720147 795823575 646918289 918762730 240243289 862035717 566112194 803087861 981065686 412961220 5664743 113154286 339163783 603040609 471134930 909098863 306859431 669711689 89834024 766451796 487778459 81221042 727071226 938071870 352709529 858685089 344280672 414833516 471774781 783917089 534227480 243790941 601724016 679179008 435496349 534500329 941517773 643641871 509315046 758469750 82923392 17902296 535134495 698864691 124358805 550727253 502518417 179353566 796413294 764616878 733345390 833170549 57429738 237392566 975581352 230098282 308628308 837833223 504317931 81761840 113119187 971777423 109107218 659651618 261915266 741234614 737674807 52725342 792430257 33209214 355226148 653087072 274788329 333057308 897786853 215051397 283376310 906036181 910770245 748896791 532776095 58404152 326931875 67355330 602384071 566972938 309886377 580485901 929841411 789672025 262943619 805830004 412487493 613735823 393754190 591757748 710987303 319723257 437138189 526856616 366256712 438748007 771928551 345672418 110921934 432805341 442978460 711630984 879034368 670587563 368664734 945597853 944138819 854401813 676126823 462436609 360903552 682398285 244745725 272845671 494103649 314049399 387790030 308179622 646008603 114937614 953641740 168387255 938395799 857395107 605645174 431602117 156855395 647119880 177355786 264240853 601366530 632171348 527944309 956250892 597864785 535700061 315353274 243462053 534572637 155059177 711574460 58085101 468563374 672967789 906189910 985302595 832684149 792622758 261551354 605877835 541736728 31579592 353776064 372156009 545101928 510798596 590015603 699938623 354715268 284339638 374060349 877735281 996688301 970325711 860134521 152780754 321925751 153677302 650710564 591132169 724828709 468226133 713931626 89737503 769204830 758181967 969541808 413542490 110153816 793644726 913829304 410879566 48406321 548211397 78187287 89857956 891546465 712925534 623017126 357165605 645149858 647596423 33253435 401439992 409951533 96223389 791740802 465428034 406063467 441367106 813788973 683659259 995425641 420392946 469964928 968603635 442202039 155206330 30180661 568335087 64388739 5232885 256108004 431871241 280530896 392740340 663702186 495903642 602879836 947540030 292275102 788460961 440027333 458957296 970900263 807314237 589111846 191394801 294878103 200466997 232376619 243306679 554939159 553042124 349876556 759482611 995786841 118597682 686313315 838716643 753001911 781361052 677448427 620256019 875135968 891134205 862179173 170706281 470510189 809566621 781233314 265370745 508178469 416876529 308287118 508130862 442325343 987529272 75564634 726999720 42912744 624948577 998998715 306406216 417776553 88965000 80162310 654581073 736103421 863794293 791056332 545137184 666631266 543330121 653431315 450005171 830370886 442393668 683833938 436333298 424353417 811533509 760840067 583333794 651515451 364233713 278301760 216397851 75749327 102666286 390082168 555978761 926882854 280578443 494030074 729761502 670762865 822389049 698609835 693227514 358586058 849089893 179223098 631503899 801133809 619300699 137071520 947419159 302958225 387288537 663928498 54629288 983739476 24266589 591929579 612381530 729482578 900497591 874100559 249986711 904311300 650708917 524808804 58297142 517472821 417194157 771902768 911343126 465343714 603091164 964943221 468999500 235200020 959761132 400212678 835481254 614072468 683547973 932837589 72684939 308125591 598803487 216216827 816164650 622957231 449519935 660496685 571376208 565869928 596636975 564222647 910183541 142946276 97459867 885437234 260526750 888997786 488436474 171102552 290842306 755982169 282471978 434186737 626703123 84091983 281820801 797786045 727998557 675767051 814367079 272645305 507903043 101948805 6837582 677324745 972155031 142896664 689465569 160843147 153761151 142539186 918046203 187693481 233332630 524578628 954542539 819470361 612430407 235729377 166201412 171455141 517806562 857003595 224335825 993900543 670233299 680308054 706747150 962643554 26399480 254667907 520051082 617442001 20533575 965560910 750057338 73891377 135138270 587231370 720375267 971669801 815873009 530693341 703036354 738088317 40554735 552884690 783194673 394848815 511252047 112979554 568162334 624666083 446119434 745738726 120062310 896875676 133350866 598777211 62659035 81226387 642823820 156561405 290966640 92022843 967036647 567602333 133260495 97377838 214674935 505541765 98036473 460017672 298065580 249376715 257335126 560108926 384730983 218513838 104460605 380858161 792001064 532041302 730827626 413444773 93099253 325879374 97188309 9171378 444055183 621676919 995974093 726160074 721258663 294939052 37311370 764409175 931057011 766701395 942850433 747100926 256526816 213434748 700006847 524519397 558794995 719715337 823223385 482443901 514946573 818951596 123779280 710579937 146925576 265886099 618765932 524100508 187134196 644739465 748500080 494551559 122790696 620450561 846260132 460335315 294151625 228192443 354901905 737070728 681106448 446058859 463490700 223655258 361390921 501145333 361409005 932884749 3333944 84254905 643222985 253727927 352828489 607875972 959108812 65106817 79881050 355726134 664827796 909844330 194669930 742555549 246425999 840356227 823166201 511931590 688530295 151572249 787438503 220341638 971700503 637598321 710634277 86201751 420996606 528446063 204826958 538429206 765093584 440062567 395789013 544226266 153959890 652055903 340862318 816587941 139562999 320297497 564165706 791637154 165897533 24261710 127535050 877339241 618462363 174621712 444440956 29659220 812312964 57830447 882018817 19057149 575752711 118961859 568291772 679456516 362846970 551036529 107971235 604035781 874216895 710629741 309418221 804628512 994480962 415816435 905756739 476076921 985035347 291473820 532786138 370206852 572921347 411262426 323261341 951588449 489187631 807385415 215072653 435303904 996515404 677592420 905563278 54713890 909193338 955218640 775145968 524123751 132524151 490058332 563929157 860511199 526286665 148175280 458315716 756309866 204256576 935283744 895583853 802748884 730551098 449119572 292769306 817876646 980949819 967914373 459347913 98566790 185068336 464355603 586044371 516150610 13661408 965021812 543527498 549792419 465719703 487886752 985448656 645148383 577646466 732763386 877235046 854113205 505091188 659664217 406192182 82319382 245120591 729055422 944546114 792959500 713944322 792572284 878387053 360041174 695551957 168921521 604046047 107680324 508272183 664874548 900600701 714441120 587996644 358408983 69610758 107256961 872385967 664082322 547263418 500424258 39400990 891283730 494583458 780833574 531864847 518000385 373622857 996364286 472085508 130968228 927882993 524775593 275302852 163233425 304282065 787429817 14617787 454222442 831208951 361409888 87107751 431612017 334911350 381123069 561139553 511791055 759744673 933801633 499216951 316688547 630111766 942873320 651208282 786256849 669975880 68522949 71650338 370434924 123502414 609899662 594677949 354028597 393291840 581534394 650056469 823054969 245573188 408246488 335866838 479649718 733195160 436276607 829947637 269451365 655604042 421692442 838915933 637816963 593315390 485402326 480591406 986621585 493428961 346214300 193807418 801822938 31094965 742287999 729477436 967127406 944716558 259450313 300196969 767234300 730287768 822918730 145152303 477357407 421966275 572923029 298941006 921124468 787216904 228649357 49722204 300025770 509936322 296600444 605005360 664336918 83276481 744030349 890744580 755850928 362347288 266293091 610561989 999275913 734527679 787909697 11405866 573011311 178885566 966236662 449956882 203418 672488030 856642368 937588136 873942300 559015449 84874984 416161080 889160435 162735702 983289351 732154868 128907920 788212235 684650643 52584158 887360088 747712632 890982663 539537736 698111803 900465412 588840016 613065210 854305385 484505367 558786892 182629432 134032692 405864026 324100580 6909445 132840874 479731528 33405396 248934099 416199194 667773044 93481086 744399695 443292984 490829027 877052788 106303182 692309673 41606511 956220274 693613779 660314219 523669594 988773521 907315920 510619523 682780020 2483956 495196998 335748052 157113568 971372682 214701807 567131195 296846952 403432465 958431193 849540071 833896035 928002985 91095091 454130891 518030263 779795927 641397355 393941772 313291608 852755731 850027535 881046979 358715935 439400346 426784334 427974119 59783824 90658094 740190999 757451576 979449637 175099150 609727675 43791535 515367539 384292907 153368155 202943056 402357445 654510175 751272049 635228038 833834233 902154915 769664599 115119760 93616253 209464717 790746855 206120835 399505315 955238989 702773511 769475078 260887617 603418509 203738114 211656299 682134552 77123979 986023837 955686248 209113806 771162014 43772840 841821319 471080154 496539139 918222213 573723516 927310117 833280703 783859981 604168845 107037191 537052504 651802861 50116965 74117450 986648071 946447419 689551291 265944240 588347606 829109803 249949979 307525053 789924768 742019373 675179150 203102264 842575074 502399150 640958334 42376582 802293950 760952417 782340675 181244957 640568194 783019714 680111041 85044580 426953187 749076941 788652893 454559922 814621135 598425898 777594424 668580115 970742230 871889359 653992540 139382494 575597825 471849497 767805107 928638162 924708000 687243874 143101529 565857504 726776239 788495995 28340640 453111610 790929958 607409297 601159699 931458252 250790422 64670820 224004614 896718151 342225148 334206157 240414763 634346993 422955730 594889006 178628621 237242066 748784449 828519191 542682913 653398154 874334950 103850302 475793630 805379170 211986935 639021717 206439888 215423803 549554854 715251047 906750672 869278994 186098640 21092210 528797605 367627459 834411802 101700720 691454750 136301014 317512034 308713013 805023808 940655891 298397543 662086468 374029901 343899268 681489613 289090969 514139585 210176475 186380640 448500933 864063617 520771172 360769820 761627376 808402552 887571925 497681993 930507202 141477691 826320812 542146746 45796458 396612425 680840702 162188692 464164207 357904308 350569136 73464599 785364395 505421004 957855993 746389739 285997927 658372989 882462714 275940251 827557169 519355707 788352403 612023935 861802018 917119090 507345941 838647165 506349978 858500594 733783211 288285957 815040418 672301813 195589526 366347577 100736581 836647502 264037916 596886988 799255430 77026912 480957944 424467712 331182691 756660769 433727447 932759856 457644829 848618434 797837831 328682236 58376453 887340594 105312475 506747557 221442729 449503742 599417050 674649328 586056549 387603547 323446406 773341489 675635642 84797921 852734125 355601204 54924146 470989366 981725680 926263561 197391014 640576369 130859864 643448485 454832202 138453549 839023417 608034074 67365803 359312190 199497547 199653580 894399444 272408393 839083183 110701859 992603334 594173593 268354684 770684678 390712144 485239154 177032359 54608008 838677799 546381155 942787449 450929661 508015035 342142325 972246836 635654405 922567679 690136286 853282839 302018654 270630077 19003044 50692896 247620843 310380584 44719262 424844248 709557921 27667206 639055661 107311933 968317157 57338407 354109932 963727203 334326850 569047609 658605726 612692081 151726691 475342759 957389119 496716982 637400082 141811434 133588177 564184258 12016598 36817745 311070111 953079145 75087553 508767577 845000872 753135224 160555140 163382143 403812646 995061829 728697261 943656052 78274925 193667833 885291706 286664658 154100026 304689310 682986906 371735597 683052773 177611607 189468953 167866406 622768860 975676619 656327723 869936853 105454326 136136085 534951603 67548784 969730084 667232741 458701994 299109125 331532328 843194126 648675161 231191056 992586580 316537918 934101514 747865123 194571554 945930873 816183364 548663441 456076052 486596271 796970867 559457202 857885365 16060290 6553680 965093464 798290561 813446354 62961144 172251367 171550409 506559348 244153059 854014396 304764820 877087436 957046928 793506810 124083382 674673765 160564343 406203918 59861229 460875530 611018442 604282824 321585274 103498973 602596357 130546015 916523112 5410798 944550589 575175041 47211679 432068783 98390874 79836462 204955379 449105601 9196071 861248343 427410389 500408501 564937897 13170984 354593634 96361769 690205784 377391459 150410428 547164805 85468405 387202338 749370914 873747892 203835805 517232943 338225712 458508847 715132745 666008185 666049810 378315519 278311124 99508620 562836428 726661913 465631256 723724202 25759210 537781460 420978194 872164584 805323898 164737841 408288256 421572552 724887030 842855863 279012339 301764915 951526262 264495556 969122692 583721406 531957781 228519657 433508737 590604204 839284302 951379320 135773151 682533046 359141175 8489658 123670555 805920284 777756248 229966392 127574012 516318296 936429944 767448117 743481568 733673661 765083656 83899814 966298114 940757053 277367816 29757765 261329770 431728789 402397021 829294762 31937013 503393543 487919826 373835593 19668951 592517959 568982845 159280326 29584227 285823715 401396185 194846842 790964714 258480959 965349803 315508594 117865220 191158704 558311101 710804190 300859672 714678391 590998217 653040511 381552945 771925468 329135340 3639586 141362493 647314920 692498778 450989172 665706534 324255200 374233072 426765236 362545976 782189149 448520604 172012977 518079061 41979137 167646590 128575442 158250179 958976989 714883541 773773015 23289862 262505918 804425913 56389399 175770562 940639519 475796626 349669624 206660808 590304804 313149098 511023987 75185568 153362146 391580826 100576312 107239375 899999919 13235521 442926385 24116632 297053414 114970052 291046802 428395344 547287429 691986513 597728365 594653184 814315691 777872653 177531656 766212912 810927677 324314421 43240161 154756768 548637561 220528486 877101667 248583494 827570047 993266465 709458742 165370175 811369858 682960613 325067968 556046445 526980819 140683099 342337001 658857097 392745113 994318900 853565041 440861994 720747856 522383000 487832053 578644245 132690738 214129723 149780024 251228000 397789596 59067893 609331654 850569492 834383210 321885967 841422275 890738181 162050489 607409945 476989465 82145634 873842703 507477821 462286085 719154140 455524561 671063160 421792089 165942031 721132047 785555074 90552965 925875462 58628829 44395016 56052141 734950827 139915185 927535499 558203873 601711102 740800397 996377849 27970640 734743184 115224992 386146126 978241346 15699813 209572767 986518232 233830004 740694593 940647116 998275072 459323448 293777323 971010937 797484692 939368348 126250932 398937845 611536947 902342969 294449598 114587959 25718435 813511914 4000271 132489968 226686217 931491103 100574824 651337739 134574703 582555929 899776332 981835746 722457771 81566186 493422127 801886321 14560111 309160878 413493381 780580926 597864760 977834931 633836346 451879639 265727174 526001340 840395800 368849904 823845540 83316163 962534222 874617145 681157601 509297618 160465764 770129254 545234575 665602792 622138701 979203927 576285890 179799461 666548220 732074860 69216032 92373206 885279715 302121975 887163566 354543047 917912584 423370179 630405327 363114471 796977147 839681687 307019151 460735825 120162061 599303586 346743577 163780384 912425522 696742656 187023857 836621859 453824025 708145928 565185711 265316318 65464229 15679901 601659291 645159993 758364746 928069924 807898300 118841476 258847685 952691975 457909310 914199760 112240555 466655445 780834111 897590206 493265931 834221739 48748217 547469538 379535249 39124504 984249269 293693091 526970112 440432012 414383782 438227172 904508647 430951242 931808525 110664193 518927565 513934248 436522787 356407916 617203558 494300182 809443334 488633535 581557967 794789911 327440890 165269507 980435522 227697279 188603318 382139439 415657355 658186428 160912369 826593805 677065899 287478341 262236885 751490008 665211807 926522323 358340287 572185077 147499657 899647348 651391659 404436175 910639232 936972795 542800092 99279668 845016532 666981504 920020696 929076051 778189260 982279766 979327781 277175123 470888007 443749114 792438394 370708109 147731517 736330317 152305927 662410993 192414785 152691201 18539893 631477472 421481140 376728058 184618394 3241304 230040280 262107860 271562219 280543648 885573675 190135474 979970871 282844453 116363404 298150409 22660487 588112457 656756597 213318827 953658983 851001767 83632667 942002160 34304391 96529573 65491316 979102096 176161265 178641159 562012402 205396028 249785549 860690842 772667862 761854401 944166100 473428940 79021674 423596832 450131129 480275624 830238457 433899734 92115287 726158440 841116237 827570644 616547548 396625842 852628265 958048495 610473796 822061749 839074624 19102526 621916123 655308519 983591500 702087282 645941217 745959789 51115357 703838594 671729133 374412558 62063036 159609848 496956724 250604591 286251676 700786060 167291769 447473554 747925038 331889186 649276710 293648973 737759354 105554159 238187172 648743330 911149640 140855863 945922996 211071607 691568074 477886564 670725678 956224846 358085531 791607942 458418613 528702276 610707252 423219396 434127309 168206905 630531540 859995249 542051710 2598566 347177144 121177242 173120753 340787090 396123506 656697155 671785250 205138436 946228233 672007954 460372709 149561026 782443146 741702724 874097577 801688840 170841643 696517670 274719257 726645213 507069065 816753366 932686788 414973682 778413206 390898380 674891309 556840942 32816296 153125746 103460628 699829727 306806888 489809069 502183116 741267007 990327788 250182854 524855398 531072126 748248952 82955710 561708930 850168753 689134026 998622029 83441122 241748904 514313476 435545643 78348689 348852111 654909083 385909716 985982548 825901432 282073415 750022145 684365001 380090116 875917322 530236333 149449242 611359750 879129286 506477006 543398431 837726727 47483306 393698878 465942685 41813490 338933119 200973281 304305307 899349859 447184648 358571366 260222815 949268197 472550764 624108600 121219347 271111145 922232682 508041977 351111765 878352192 994683546 765012445 207503087 586865496 688045124 261949724 215754563 162958695 846924756 794703994 568076857 205070147 874518563 233859551 999217264 239744225 883540273 351952826 143471870 378659879 261110853 952856856 421854443 798797043 100447497 528007197 475352567 541628138 281967362 269972008 511747405 787353448 705997565 559040875 363244416 738606372 121671022 434733036 574806658 179556355 234361373 309397515 370170796 40534346 816441524 493402482 258153068 255126389 104465208 283177472 732742076 948966044 270327038 304867195 117693581 255367359 595767449 963435481 426407959 969934749 588712909 494321999 531666498 881205252 642881664 897596489 54796950 690077132 763861102 30646988 106816623 878148383 724376659 829824043 178018095 232682370 268264716 526206081 333314215 546594551 626083584 501346280 408052178 506906927 783130040 150430218 242532603 111039886 695446585 245176697 804145182 340749109 662370670 671532814 897164649 126997307 851950983 296046349 460202196 405082672 423998634 79653881 312634404 776363961 374074640 475620311 91456998 41153014 820520916 149767256 143620650 557088289 855142430 98291516 445425546 669725743 388093964 203925348 704141500 555861228 621581484 52893986 758376788 305660206 213855709 58586542 239446307 641534177 155287242 987353155 623877312 435684203 583069284 796067555 241785695 66321240 34424571 889741165 712196248 775411264 142558850 252458244 723075088 817441177 211602360 566392604 401663126 616446101 354729617 419797448 564755393 617076184 442107255 472436132 775559132 181995785 242164319 781178444 786354854 657731874 20243436 920890175 543787008 762476059 419551200 553315725 872149886 795423216 88525710 767883213 742184325 191786756 5392764 932527331 478312686 179329987 474602300 471369013 718925805 670748138 440876288 553111074 571714332 278032400 64338388 45945316 936501849 436821048 558032706 724530508 762524119 597400817 382950897 48710233 567201822 900742912 278846039 294186083 385231210 695494192 629668814 775350549 539088963 356883462 919897707 790753402 33415205 272161768 581335957 263025455 182080703 899253444 388184886 500967304 761893511 923855828 109791100 272971681 378855095 863047714 146980627 186694226 737086642 611165665 606370835 947708786 932269402 267767036 901119356 410251523 475555767 681960581 595056371 750389983 450473505 819313201 77942778 991322693 355798019 639341666 277151699 396734033 161596335 227063079 537970754 425411635 889399782 999903633 863924256 958753882 384888804 573371153 299375370 340190952 634585426 745379673 810292648 128804355 161584654 249227011 920012410 216169318 769409384 350579007 179629732 64820092 626300877 680436970 403734353 379169244 897194330 922037734 561388536 618287249 765436587 645256576 532708357 674678783 230847854 564782799 154330449 981872677 28385497 292234360 53323568 939697176 120767349 291770645 702724019 590266694 21475378 123510521 664321830 565816858 576404304 831810399 364439635 837464550 368772530 629381957 62934313 987266812 160126911 62335890 540710740 839180809 20861361 813802900 438320132 175800526 755385156 86317025 307025939 985285714 147700480 919328546 867444668 24122191 396684018 891001320 753437521 445548772 422807565 469416832 189282038 61741730 563839938 361234879 671556788 307212854 515412881 179862184 632792296 695913731 699223474 73268124 622698822 288430333 618877183 148510215 640200803 418957852 956260930 861266098 704685238 583043120 306231479 821429636 264126773 293854460 256682314 107096644 628792483 51914373 236517218 896723967 430537531 812146331 253438944 246537251 893706694 185581388 785103420 136049828 969660696 296469321 52701769 421355261 793800240 300493912 681584676 535543055 652546838 425689210 450300774 158019304 51809607 814561803 560351912 903840854 994131990 961330331 692501564 784646613 345976504 952120927 879593701 233312300 506906544 999849732 47756952 356851269 484634321 701213690 747023844 711304026 35505560 991323631 402822482 778191763 693958943 978324113 382705600 75955694 443547405 560555363 67896836 724530691 884578493 362180226 860006096 338555845 890685457 436353276 602027156 382531823 125891216 491168538 873915834 222939126 471801720 53177215 586344061 445102232 596021002 112019727 957714681 66493423 765694028 629555403 907893065 930300528 344627631 911369959 39216269 730929635 88423778 970888768 140049247 735889545 693184044 687518679 980085775 779152041 55237986 631535454 8428353 889828771 332366993 572280253 594614666 873651294 328264607 628158573 408523071 256370672 214518268 402955126 420208888 889653667 797348789 904884309 571794431 354165681 380108682 765115179 69547485 592673430 68301526 869361833 541013062 949386983 372881680 794960445 185284651 492198130 801584987 740685624 863514528 29203162 563298471 517398638 73647378 641001976 236777458 644683439 516079410 333797234 7616393 726176524 740938715 263161832 807400612 737579518 940679199 36652937 927576494 558755844 160356902 890756936 110266269 195430685 694979619 485310345 771359968 927345951 125572313 970420965 514316091 975666862 771423774 260333756 387287093 406661888 194327703 227550845 605924914 686988926 863936222 605034334 490674139 433277084 675667146 448672875 487148393 37575305 91236696 404754513 922584745 598709647 607027745 616190278 500907860 917223171 160839822 533862543 984027088 752807698 858056093 34787076 665629280 137107122 79999000 363432850 516533082 987359949 63604612 636773290 886982829 664025917 308698752 315587713 615632280 824966779 528592992 736338564 583874623 208116277 118554406 874587413 233984774 936080416 289442677 772843831 508098089 415174059 594420040 98066456 353837810 161093057 640533960 252241260 214951896 446081013 70401507 354394479 180137366 780186586 977088928 644653779 104282215 382810983 732455595 452768487 405487495 592801395 308056839 414753813 370107949 169989692 106161136 164801535 633161173 633671427 659266829 417180149 360413371 698071977 222990904 76111518 599985018 467901877 307932645 788741423 459754305 409791154 475532307 687349955 423656283 760279511 449616166 138646913 746099829 623015079 173439576 629244547 755032045 736133149 846638709 845399772 148937781 50655569 756353405 223241197 3787071 923284327 777666140 960386667 586971159 184045407 914899367 630076051 135532662 23546833 960698032 612475005 479028669 955707235 505315433 353251351 918739394 840634086 402704631 88858366 142030800 535351144 452646528 797915078 654006381 736222303 164687453 602425167 726082516 273175237 205087399 160341977 245883655 272825480 477380022 970986294 342495646 405692796 361465686 368193122 49373355 439272669 203493801 137167708 666066301 239464112 277256076 263978264 371348664 531178619 944161085 346719472 620934352 60455622 123665592 712938061 308716627 639604492 290258726 569441543 948656048 303116378 167191443 618879867 523720377 411563115 400995702 881587557 693673036 674723003 740207107 764277054 724623708 923986856 529702931 568427276 806360239 678775032 189850741 207466210 874390404 188113272 475328991 581845632 921215926 45172584 376934814 914275406 482955377 300937508 916745808 482690947 239127549 107355402 480761025 84051550 587568327 282695979 189168255 627425004 674469899 478692251 966537936 997806683 390463496 785015503 179460008 506186419 562450601 178929130 389113299 369425485 410195656 597001026 982121714 734494938 307852464 664347325 117732060 227316019 208116561 506726297 697546335 936079214 709432857 498102433 696329606 263128393 60772888 622694253 360153796 3737635 306193719 624878725 734301964 763525221 4571735 676566547 70153436 58982247 227759468 630024713 792657105 434512708 71226482 752009739 975650944 898723416 684825230 133991954 859141532 384507653 587821488 487852956 610445061 37836649 954976234 598266036 616588404 805210030 395916254 399924002 577046870 18265372 135053572 112235891 694780697 586801035 122762808 853971001 981084964 544299182 985454635 857738303 453289462 345817518 437674679 69120739 316319800 483893789 54880056 522419291 813027852 642194124 78006693 719121182 809683849 798670187 40146825 721954860 613436786 698106563 672989714 553818059 487349673 133166912 557271985 82549333 641178580 270094955 590120254 856711472 145910398 215693249 485317903 173229982 708289002 843651600 470420342 264462176 10621875 572652122 537036222 427860777 357390784 25276345 692111301 600906707 437838050 379681504 776343041 139019346 729237452 318089739 224724605 468868264 23888729 124414212 408763423 299287057 95549276 871448725 478282286 785109 5983399 278080989 469870882 523737215 75747473 168153319 152809606 551243050 425091407 364237593 633505598 909178366 793268291 104113643 554628725 523229075 125328448 442564705 840385337 841800812 66375424 964756047 672098966 574506361 712539845 608461973 743113969 562620614 171357327 266431185 595868919 329804843 704258389 975029259 83682279 824831561 223042802 205482116 404678644 361350715 903535259 909091695 649925120 482781529 795910572 944756364 931334034 301355335 88539857 32415521 145105053 982989931 679637894 409473988 381910917 733965211 123257271 875113501 687257598 708547353 152999835 193330748 960513796 792466125 474144447 218644538 303533653 795361113 600372160 102263809 828079330 327484455 979681283 547403952 396392470 299019853 169472487 48193824 989858678 30822245 954657619 295419399 430355934 471942088 13131093 811489191 462184699 70086236 601274677 264052625 420879479 436820834 120162125 988697936 833435400 559440773 631192221 165787586 495715444 849738332 329001688 210650162 659696035 645757759 390522842 856798770 340764348 480426967 55885862 893700900 786117285 382804455 69902670 787872136 769422378 712181948 231680395 136782175 302261101 134709912 551677663 817579049 239401446 675777267 900129025 44396677 199100062 516767087 215549690 895832176 785892271 457836074 661635066 222899760 83251595 350417939 35453046 424662573 763150894 123852920 456187457 723399368 659987862 766752614 397392956 938190171 986581812 337118539 672041950 715639785 125134238 969759702 92809676 603642807 161139624 378880296 343439729 466990127 642924270 831581795 78807715 79991294 766977184 606237730 121882089 310855564 304898351 669938310 977077139 319166796 307206646 84860565 678614664 266711593 135689308 589870757 644626126 169404519 450104024 731078715 577104550 104402503 696118632 149221564 827842645 206140464 44485785 992312046 132483535 273196709 97902919 221230014 485623458 976264941 85787227 599932007 509438047 15300672 861454984 93800308 534436402 963156155 726885274 844724720 350900938 992847498 709079499 949474277 541732963 699801644 466143319 362365459 659603398 800795332 398371505 862491192 499404397 598189538 452253317 900490766 434851032 21569001 887473576 151670320 188467855 702786068 912545685 461454744 236930298 161568624 613419647 918887984 855085694 724795629 351382432 670239012 298503697 988123120 101538633 718246878 158524865 722054439 561442690 102593217 958094754 704267577 729408877 206315823 707194694 800768486 313118570 73330228 358970412 364692938 288215279 217281485 960831588 307813282 11697694 172892877 914021067 184216839 90429319 450974281 546285952 21439614 146069174 347884004 494779390 441142261 220301983 187328886 593414010 216629202 698451973 949904311 133166242 630793754 175220084 418636842 558633416 677080752 770645591 881200517 144697639 107972640 232092994 670024216 973483182 243403599 9412695 587210537 452258125 789690936 319957597 776095577 504225017 855110303 823882350 128505393 555343050 12805480 995276475 453974830 94212319 224056032 239901018 249316664 551953771 9241798 330923018 930735490 208866442 36440141 431477512 868356212 732480897 952773166 590928752 184689884 50962291 425992902 864782100 410821749 190471306 83663290 189643287 388988978 531501833 403774434 30859034 852066324 193041087 167122519 261227534 735770546 962909035 387687703 735249623 489052495 277895493 522561088 603611754 457533529 27102593 480601562 722100779 634684647 493176853 289926936 215411410 278968972 344346434 885110103 459872486 100491066 299650750 31096127 586484784 824742013 773477283 912942368 128670733 385666303 641724236 844301572 565211791 292837007 161933116 652118005 310070333 49103483 318135382 505284220 178589421 348447748 199406270 182825042 210398423 648422723 912503369 843939900 491460320 837032893 6023268 818412965 654872165 189626825 11754877 871739694 908732225 775613162 124082070 462756776 575292757 727318985 240181556 710139678 573041110 878195937 882504676 130098964 14600928 433034471 676171700 489730617 609425483 966829766 570994409 582100791 71697413 734936039 277929172 26426269 489250842 148359015 324634682 179730226 841751535 888170150 170671157 713982967 924290268 247186587 73682127 396873993 498379548 528836058 718953283 724465378 292977467 70575639 8352906 345418045 628171069 197703336 901880782 863933458 746151344 465267421 509145668 588755598 237392649 495893078 249372047 980887191 344905030 679123953 436789920 598981896 995608290 347444692 22499890 370094728 714338221 299108486 390608884 76290253 418569938 219651523 582990266 70744798 380621803 76141673 845987680 74352513 632351310 734099605 98809323 74724123 119404056 453373948 913898861 811160147 593038585 352258872 32438700 193755977 551570031 75813430 801461682 258452058 692254975 596513339 887945847 930241535 276318475 1406172 73927241 967737170 806149931 141865585 588058408 85904054 47960207 546279856 941975981 987495357 368294252 280168956 435557959 177360090 246346748 475030941 564027300 829736148 451415499 626760939 292702171 941262809 805896183 443159843 573741953 78833709 659523132 978046847 68771302 498449733 218160810 202735698 561722546 636408857 822889713 564562108 319106030 65627565 214827033 454527685 638348510 172283339 510385142 375121509 874641587 363454044 465404868 486097490 722164132 192567845 629890098 290271123 211809546 987102420 222558105 464828061 424114113 633271787 188398826 94860004 329029476 991129752 330594492 714405442 932035228 6646688 499104723 901200888 817262244 694898088 768866507 861070586 863425993 644158543 195354039 121816686 80330181 201086422 226001229 68003494 991798488 279629731 489222027 873668151 279324001 766117385 623388435 296444332 86174930 217497143 519877425 395928452 510811940 358374472 649627135 274285537 628507016 278910990 438977373 115373813 676180169 786372213 26318499 552445338 504395400 261950311 863313494 389151249 311541342 519656535 399164675 369729315 617730109 336109477 445226109 213530616 494333582 710083838 392028069 458445987 270052711 438202854 340275637 421896488 711479442 899735698 5345788 213888407 935603964 179075438 944543235 834256393 668198659 829968371 770741194 227295852 968268700 330779624 834263548 864644436 819660580 844638331 366639636 281761310 129589537 362712267 31446599 431486746 728363735 739803127 513165879 93970053 881669320 810893707 136620671 193145568 865115614 870940326 447521860 601690575 655862773 793593118 927312315 611246412 957963169 621010091 609341163 774152286 249032232 436039709 751396291 745224681 806959784 654053609 550401300 692865540 32208037 975053093 125106614 674349958 139387214 649651765 307407016 989736332 332250592 15377796 792569350 902819342 750738146 698297137 794445444 886339175 112343898 45680848 609083389 552717328 947161309 920739955 907050525 40826444 433990582 467145943 897705769 949353492 460940361 880444904 173977422 70379250 539838262 159807995 867755961 505667286 841090121 476464745 370140338 402587625 875411843 130809340 547113481 805846682 753963068 30900536 729921007 828036509 324169909 809852720 912357592 348114616 785595115 655392916 478076747 364805754 404920575 364044963 454270514 575833603 426030292 807474111 397650140 997380985 401212871 619594138 844865672 278523944 647731376 741473864 800554777 51361626 702936903 915722973 145620287 225111550 192751505 938203856 500145724 121132683 447857157 512910433 73719542 489606748 396689647 728252227 672200579 133948088 809708059 136648252 615214107 304691919 8124808 672849888 641658632 956916931 34510752 855407836 956073269 964722740 525766631 468653551 967540207 660613783 578475813 566761267 853581782 183217671 880070317 928556605 91537145 925868951 376659395 549811522 761151914 221970116 121870327 694520623 607515885 833476351 876134705 639522821 477183042 63955632 566525331 151485614 431606083 448963008 249532119 863111114 536031645 426740259 75459882 91085197 760086602 111993549 321051639 549419063 266337554 305127802 731239425 501213545 158612072 831108118 494371047 765330941 850401986 609550822 513238484 563590575 953150520 483889924 963469818 380842161 440821406 207215385 554957086 63308473 625748387 807341709 498096851 177878916 956505195 188301432 763480393 752956352 246300082 659698493 629731129 267676926 615829045 802394222 115172315 384471519 902264281 329006695 15975964 108817429 451942451 878135014 379616263 397761731 922811831 725453677 249920046 95349710 35257825 818643625 138630584 267027784 409404284 910769570 559310861 851470019 744610975 49780581 716574158 547485407 957349706 132715472 342479424 710768262 487386583 135765673 647237590 348536139 759483583 431326878 229764324 186697070 59268154 609277705 968147515 995800629 543179641 412391073 518737044 306477856 54859764 463467045 561372075 887197303 284586551 78254719 676438558 32986783 150169130 847764548 897943562 934154179 605916733 360349496 183135844 756239509 128732508 232159435 857140133 519695342 283690436 128686956 259544342 984060142 264989906 839939939 417914158 919917400 611329347 160427730 161640222 59462518 721559912 262506091 275642167 120717079 981213869 872951220 662460150 487044584 744359575 498963517 36646877 352533617 350436854 576483491 285323526 473953636 211844985 571561703 955821121 547969609 930928481 274880106 332757034 366256361 26804132 665784532 264553569 301219524 923980979 983808708 329879873 540131346 488541406 890415822 131854369 412666817 978053355 461981997 776750911 33046521 429171433 975019067 96681700 651664133 888160471 720011114 874154883 577529210 745107037 575460913 296922232 699899747 802088438 714662401 963677152 947138811 542381380 354536731 775951305 999000391 751057467 676598823 649982707 913749805 486282691 857046517 203934047 37558728 252916080 935104288 501248974 557766504 982854650 774396796 546689816 426229577 690727639 165829286 314592503 659691689 581564925 833472481 504216192 279799592 768471168 757683378 476161354 615919808 832168028 485011888 97348347 957096660 956665489 152513294 43332433 451384934 90447572 551121880 597394177 783965771 103733143 502073874 175041835 403860842 477631198 24530486 870726604 265194434 890474878 772572833 907661270 357591229 304170506 161893211 974008491 129568450 398716776 914866659 679445713 659634120 532901463 918609044 138861605 78600328 230880820 778969820 353544262 514723108 147963711 57316673 514233042 524011470 466127793 252993861 77724907 811434805 651852233 972070894 347065460 648299969 911757687 684229495 680075891 759019821 713119003 21115812 679102668 620952806 875539619 785439558 126626094 195369842 586521624 67401027 333274828 762105010 64789075 693218085 171613326 887515686 739514834 549153871 992870670 745566917 758669047 227790453 464765457 226942679 41332327 938946136 732284353 410722837 623455771 864376883 431394412 132931161 429604349 351514649 307256601 74600418 867430255 91970613 919750527 876069962 419926855 190158343 654353308 679381385 58952507 595247857 442857276 117993604 198798740 831405582 471895115 159815766 5478412 604808059 111314015 2973318 501415009 723283961 769113367 433763707 952590065 510276093 932875097 947458970 89105233 65044422 256467521 449789202 819348656 794048419 568030765 535358368 271228623 463323279 759028677 996114303 555212507 526996069 226812213 348965991 220768380 741746425 821638016 9751396 913885265 494681283 891210342 484700628 561797609 71909801 716624108 610113703 899254108 278817171 881151999 801168940 73958752 361855741 50264353 256550224 829261748 32568643 715472593 207008049 500921862 818201783 279427207 451278920 534422928 193591240 410677493 668917442 799581245 981676529 881498783 547195463 561768075 131265053 971725807 972643244 155700419 227108287 653711677 12744621 654919086 229705434 234774268 745855194 562501995 994826840 972479748 243883318 506130840 18069421 399630632 197730524 87835005 835882410 248235663 276536988 126866883 855787007 405534873 109203387 811084091 278950362 262655366 491839530 654260130 952728609 359245408 357200237 888437441 63095078 981161328 560909069 921128447 850037554 507844676 627874285 728143958 844667071 896968984 726231364 947021604 270485135 131987148 415876814 354848671 307530313 984351488 499517775 976889486 546401265 540086622 509011733 732497265 83918988 275640834 554534548 509038914 347497344 339831403 172747845 381494853 251580415 433435245 275741736 394000306 53146593 52187821 215100563 587036884 458633980 288593876 420265336 540490838 153107582 178963915 665665386 178797938 112916503 885649070 464812810 170906560 504876405 666704472 190254144 264920754 185718362 6056000 370263779 533407688 945228189 848903605 395553299 236767353 675346032 130945986 781073612 734193604 642399211 672151963 381773517 59346943 203196744 191836508 428109158 643806704 410151336 448226149 544978390 206030165 544461649 905532847 922340664 819635050 552953264 85319683 715718736 8339709 152702474 213014623 179150899 475734202 511500459 345155891 139917672 710182174 433880985 131711199 732589496 359025755 741789670 41349405 185712996 809008024 573272069 597893109 121237014 423225684 887024551 80627935 627390934 50539823 419720941 75097455 948993951 400639401 291037999 660603622 900067121 281881479 381305665 827173296 331892090 528086774 780568916 892016159 34909218 692473054 694076966 808345821 427507362 569791338 610967720 351318323 752654303 773110826 360016792 402876235 150242843 25643019 556355372 723464574 72776124 46420604 551946307 265301226 991993852 941859777 961399818 169193419 710674285 649300716 503252175 699190532 854030684 351213159 724539148 839843034 283986002 305173039 145937881 291719901 837873821 749214641 8197897 76619317 49992760 702654553 177434432 529195704 726142383 871467832 623948608 246345542 761088319 169100771 283953223 741209121 177622744 32507767 226045678 81212633 978690487 18911822 17592252 960229574 698466073 84495462 770938911 420382317 509489530 224445908 639898729 841784301 201972122 551827039 401406638 396400527 951438097 481044725 790964180 557695414 951595555 398949580 216274946 194184776 423953405 574621881 283668026 478236936 47447857 18859701 696570605 295731091 865273459 547629364 328133265 481825462 319876637 40396949 961484455 160814072 686678259 533519029 132884243 756347934 898087526 224188352 568937142 10236842 519060539 795045511 273655632 790130266 657034407 339505303 217891358 143081333 545860182 264220751 135328415 762755198 732918943 862451583 371253980 426383352 141265291 257295920 441243622 342118330 361212493 847881142 545499520 711565286 569391714 457433183 626966766 205948861 654652951 711321227 244257043 545914860 38624422 925743633 86215704 978268958 266926372 54399075 843116984 925052911 293641448 627715692 363511410 932313716 143281774 757558026 871720831 38880728 120594143 673189482 323327179 680335693 155234189 120867197 307655892 501623964 605666553 429361875 308230721 205835323 759919306 890826357 966876653 929243387 397588945 34551239 324279902 271033592 825723448 690028238 92810622 296245572 850396313 178117826 627596048 529991161 745663413 443345370 995032746 12749388 615129505 477383541 9146370 103170217 69945814 50157640 166456804 126718077 570595408 196132761 954438006 649528376 70340846 272875120 329239580 306644162 722029699 224319137 793306391 251330664 145468919 320841102 1107472 689207757 744772883 630608980 152373020 359053858 892269393 583087470 932201808 328806362 257348542 845721577 176460615 658031120 645749698 374092877 585030051 876235584 401202501 950915666 494692004 929403101 820151371 759685210 135252483 204170948 816449151 395108052 277456450 731003969 557779553 48759697 159129339 948208981 180055094 780410727 122960633 371169883 39943659 352407169 331091504 106773528 826803292 562253435 298816704 332498831 782415396 979460946 907083494 543876279 894504930 4909041 48994542 157716578 23523132 498895203 407504778 344019615 263674112 774375066 559461630 453922851 172620113 144683122 219853277 247610969 201033032 767703336 209162754 424195630 727869554 52796596 739210913 86399677 747384601 55057311 455731295 449644991 544073612 738702993 873472418 385322408 341378238 183880411 516691280 504249079 313453939 825697280 967224671 436905180 482004149 979368958 252238981 802385030 689922802 922310787 292278208 178659457 516539271 349620310 675805539 360860243 536470921 117923122 143725358 38209810 883637020 340441119 263038320 950715300 146904167 300963662 703965027 184285951 553570359 540759619 908011852 191658562 13988826 226856656 624011022 156525622 511359484 620457960 765604699 943581924 414054812 366608319 91754830 650530147 85753927 71648518 911472576 933208843 723318860 857451471 797389270 995167922 204131554 109069679 636274995 623420108 820851691 245775301 950283451 782903818 11716778 896245527 356854552 937318879 905588815 710744121 765275639 689964914 201701662 668069599 352372458 430607935 787945887 972958790 695037343 289859740 585435338 82536061 139928124 447830331 972752391 19824171 770038490 527688044 468125665 673456247 700914954 359193801 877655869 468383814 158136847 228946249 746807771 833575236 237880678 839390186 453012014 988990828 510813893 687621455 952917411 53607250 316147208 253365291 743426958 883923283 177569504 360193252 717912070 926304508 337063508 420641596 652617504 115152002 595407773 785598490 470759018 871057010 628982860 250859422 948250554 524408469 379661632 498499199 459036653 331973869 602726125 140261786 660822709 598744091 172426155 723458179 535496315 313752346 838347585 316948037 349463302 705812639 447405799 725006429 859175869 939992615 684170575 129357777 411228471 415798608 270526398 603931640 175692656 930811967 226931429 92411775 751463065 834773628 110055135 62098959 281072008 771613604 493697541 145625368 332560106 10897398 720612271 55550609 515608880 48732534 991425712 17111535 498818824 592182030 142316921 591957053 832978987 948130593 401058401 868961166 607010383 913137036 557908576 144342895 307434530 125352086 656447766 262630572 71153507 494904958 73256200 135450221 484173347 703667795 888147389 472339140 553388244 164224104 824866645 42891393 551226133 304044965 609231721 208777456 959130458 994204130 724851444 107811767 98172601 295061199 816127788 351300497 112455249 701317490 11231756 728694530 446970736 694540322 863052689 297975975 442264019 878975104 626120908 782986662 62665552 861715409 429225626 62757387 484959118 639755644 242680395 612961018 512074675 207791312 821346009 357635251 608232827 757158321 588146533 317088164 336265757 790415213 678268161 820613428 66457779 940803591 501307038 596791693 366595943 545071378 378860769 175118027 874449940 471564623 866735987 340024364 98016326 531323082 621518319 671419341 253138240 770093871 315468103 419778256 252058728 797930664 993122665 68892617 689660439 930559526 326836760 531745840 210284868 415311928 372580587 705827075 113263484 370352432 129980304 566975529 273742679 347568365 899117838 242905076 913340665 816392416 868378732 887827951 155909135 679156659 823817328 448756624 869693677 888316071 988187649 426751447 350632360 857950749 308688367 538702895 713453386 858274418 873476613 812804266 879338901 53732515 936266803 660486295 519706689 71449149 639656192 252457438 176822554 309852459 72582882 694312983 58492728 728201871 999457260 617724827 974592619 175511999 22541598 209498882 879152332 509090990 404231543 165934244 203433553 364750754 305614116 842270333 624820228 842487227 772140356 516775053 421447875 894482833 146700452 112055450 264061374 151433086 751806289 937150189 479885048 432130594 898282309 60863197 15782838 947770310 34549020 24458735 80448628 248536231 553632817 819179772 410408282 384879087 277669950 127188358 382058479 820701133 60678548 112733748 683329532 691584521 940591212 224990523 540058758 831910393 416963944 326399953 463265643 389426867 535856501 840330399 759589442 294551404 374010180 403277759 911294039 495501079 464175638 614471787 118574074 63257182 417924718 787427008 791350336 102491651 57464415 454420407 334223242 985286376 755135218 330641445 868598939 744737619 196287598 657154410 884780133 558788443 119892972 4939715 451548158 928269276 724671963 651073627 602950093 138726490 154159440 220415356 369532034 450698111 227803645 578676953 367939059 790998259 156310535 541303365 142129889 722513422 795605355 52247677 481934432 56636612 732570442 168766319 282970123 546533731 256525301 792969060 741440517 207272126 87471018 199378997 695969118 394180926 414663492 759555632 265371823 464555573 763024953 867341465 426570485 770266953 670310447 176958923 436848575 897245196 246907473 515495851 447436581 702944970 655909150 308078411 724606851 878107613 51974032 565274956 138545102 716412248 794891736 306971678 129026261 53635051 550000539 31983451 372559846 171775000 383126513 69946179 609682801 558798141 703356906 969700900 191280230 617741417 385674187 655485200 807844896 811736038 38151399 895307603 74609885 151552369 197708260 487700898 358424517 844167596 686739288 392382865 901729338 797778710 270033655 345127838 492269594 691618083 182024552 636669200 656136076 84486729 899103919 566782537 733429381 623440087 913426593 795437973 220447755 874936762 321208460 57105488 784955582 721962339 629002037 405220948 581900978 197059668 288010454 164760675 313273956 658546892 852320505 43948423 691718435 968012191 798699191 466490509 436070708 307214120 456273526 996656793 107501674 976794096 137894825 232951299 37599377 70368345 662852295 650005475 140172199 45512320 167774178 433181663 755959494 317148880 907227692 215265608 794027840 50922139 931024616 635044410 904733554 919276765 770801238 935333196 75525386 817103917 33498479 148866608 587786560 2702174 373709723 589683186 920535206 844775678 723571517 625271688 546505915 354996482 507820649 661090124 728607861 513758550 78499182 872108261 470162646 923154413 841460171 276195492 924558814 553157590 410282909 335152140 505435204 189910706 372394677 379884034 727417967 267690004 826243165 901461449 286941468 236687322 442777742 682308194 901465313 865243308 846029844 975668577 956872448 912190360 142758159 273557715 122349810 252825585 460527942 131966358 633851886 259503827 636917490 432643564 540602100 696279107 422247407 832317836 237170056 390549863 637450609 381526264 714345725 261025132 503393079 918742014 429954560 57668413 591821454 878525626 700988300 761011306 832516834 250690845 414833846 661689301 980939117 968677576 540211812 140937963 874423715 164384735 667876894 767437235 747905166 977019505 307501977 599049716 63577776 138135036 334023292 669132580 75378629 196493801 133378521 419824119 324981805 963396149 856166682 347682028 505496439 812942016 629877484 28919655 492764372 691540398 555026697 336304169 259783651 953106215 615706278 24324978 797162916 200726162 857518325 394841096 135823409 174423978 321557749 907001500 925290177 238919026 282374481 478236015 979419743 894191839 878405916 698401776 59653582 51300766 905262582 534159235 862854446 643349467 162111268 146445209 125918553 606217396 104629821 47954784 914667082 49177703 249472813 163606651 430602259 290091839 516513838 639215646 487890193 26879269 345848551 799394678 943298744 400939037 576967287 651415309 878964450 575253665 879818906 256076567 737103845 834134047 222988275 564853264 836019783 753592477 888919857 977296901 347141614 976349377 944004242 663569235 429731973 419379501 579497665 869153857 13938935 201271230 238996817 160343867 357581680 652739347 335132827 300110554 393835764 840432264 209375669 791739489 690257452 906551116 633510522 770356090 264748763 9441903 9342655 69861701 435260550 102930445 926828704 489484596 388709167 686604798 922106370 228918641 848772250 516383870 423495700 809114986 566266080 863144555 33481437 310063539 858653747 378393543 161534950 976224792 546907223 839498544 344169671 575602313 917482351 718104569 258951541 804725921 750240397 223353924 478368050 965183694 652870768 418159380 322532906 275470590 282379098 708481545 440241287 980672965 230161981 628138689 784331605 495778521 830245618 385013141 326632243 894093805 580072426 107288605 372733046 771647647 826225052 198110518 426862232 939999232 98421881 662482398 180087500 811860926 528698800 56233420 747669731 314253384 99183790 142174698 609085553 689908633 545464958 308874006 168647937 275515376 205731523 809011935 40011633 105547285 769587307 478365550 126463763 712954204 874284442 141708908 841632958 796714834 193425314 80255517 316084329 131486949 569820602 417578841 145998043 21402124 907660322 946258295 307718251 674754314 116554201 774840052 108159031 704391728 603996413 283397792 433841019 617331801 398997085 42321559 440830500 958029881 869726279 994727901 575954722 706311023 341479604 219578491 239162631 483691271 557543234 971634142 73834477 731640688 894196323 285032413 495516381 273050023 184452396 153337792 366653008 187884415 650653572 959321320 155130082 680977783 742078090 468608412 362069035 439203195 941896861 601186694 462910348 945429076 151632854 323509859 33532710 616067792 408356317 496708674 601703049 16579897 228744975 235502173 649086781 529135969 10341741 505006983 924550622 893674165 765136561 428530121 955546690 938281833 515305608 544176046 428858693 773105237 446950222 421097295 938922100 647794138 575783529 413401032 501300957 955021949 359729842 697523044 734037164 474826083 905498501 757665523 500215653 954796688 59960418 833610331 919630471 550895642 687169644 740812578 283928533 101297493 17222147 214992635 707374926 631565281 306294195 707773852 673871590 539082910 954457468 807907819 165433238 742555233 196318615 86111695 329117310 837855651 517578425 123345033 746969836 893202134 477904767 445251928 529012764 49060521 85962182 971203089 117809603 278836793 653564045 130240282 132008917 945575598 274069184 729948346 400447416 95483781 426753348 816314815 413241748 468203168 166033978 483733592 610568596 88032302 275332454 848923285 828452996 581619302 353290360 834854910 815731034 188082612 283181179 908701996 754599148 32594965 422483378 233723594 411247539 338217848 434586077 534382525 726325828 237720134 168968899 58995734 962858314 595323073 605636437 753608720 235904910 303650092 468491172 830366102 993239516 181275479 779731748 522395092 127969313 778922470 387955561 93463867 203376753 139875007 910159730 461154960 518029689 936911619 486410771 178906706 742733330 100664706 61970559 337298981 22789938 719918274 260324404 536069870 345498080 978866262 200462091 276070732 837470918 310205977 411012119 518066831 149400701 4597744 758177645 807648386 249009849 355921404 772032297 419958954 526873763 617661912 929721163 746437881 709731746 145773157 251152497 203089164 901787966 31589103 59535450 888487812 787983730 828138265 721665236 960721626 664410505 138986410 746712463 65526455 814875043 695124573 593074131 966176168 810919770 845014334 78483444 602163907 263322996 87478425 383952873 99501696 489186496 864876044 459240713 152686982 340080035 169568807 63665782 450712078 829293451 397393123 460870785 177844128 312105526 15579883 726168907 523440777 953339833 317963714 175908326 725513308 439505192 691486345 147975990 179228328 496417700 402244206 419714196 186621360 323410250 32488238 749157763 144355940 51024985 47716416 207171619 481993961 784452946 329753612 525327570 458118710 417605901 433968305 417559309 598183843 287306987 585545914 633489826 128670732 617430469 747958693 108465040 482936979 738042386 378119948 927710339 15511011 405218972 205756634 714117402 985137222 936377296 639208575 942305082 462927713 113927790 719847743 771719794 461875326 657223495 230507738 635969807 256074628 127968809 866387266 741775968 278507355 491342695 65668849 156562164 872624815 560279101 482546127 178843887 585359025 434488558 737111950 321385544 291749221 559080918 91593788 651748306 993057596 75719117 949707745 815220203 611262702 51288868 825287875 883910142 602160851 999805190 504351301 705171190 111219777 112906747 388201933 214084364 975398518 457252184 971654302 704094860 498648559 583634540 114556367 978352118 981581053 966814597 244845833 622106785 904087307 40414662 87679592 58775536 236175915 302505707 870615594 805227097 296492380 906824357 898371643 994936227 695968477 667349081 616198988 960135238 770767983 682282013 328731201 930524813 177308720 3859228 173679446 924090088 70576462 895034764 707216926 423895921 391962803 716900065 931049301 822417834 232853320 825134255 306708539 226880710 236591754 428465241 848349024 556142703 529579326 819010210 5328557 949582294 694380075 748928997 699517681 530863444 312742161 799384543 962154322 976953929 365476827 745050589 472036313 925636661 882333418 274186167 115325596 737055063 831740321 217995587 958784964 672002718 770588956 11347748 789465517 748241850 274528669 318614953 744653713 290912073 748387484 10292230 895645013 440849530 556663932 869458022 401511490 317720167 15908294 343219377 553199379 518679978 140030464 862660436 523126624 494623358 149508346 246695609 961911973 842934695 289861312 1201973 328797839 742906023 865768595 300738478 394573428 939004903 334351314 570217379 702393545 717669362 784340259 857280151 716359225 818122654 271324903 29463868 214867807 81888753 308523950 511017487 654056120 169428516 338229819 156639136 944453747 790646229 900821900 79103699 481694646 846188817 643244830 197949203 840404167 805817525 597649090 674968431 160277916 546431596 156918118 147456498 156299624 770881267 583806401 687302735 429323422 565298186 289541967 179274609 522518824 128488606 80911258 689769493 818503841 445782275 918657344 971943706 949644286 440620916 574819897 389574188 902095628 74263410 499092135 871534620 206638936 768548104 954962632 666847401 484408856 592319658 369966463 897960744 462184260 127058928 825770095 75414498 255944114 649424314 271505367 364665340 637027395 43765666 129671562 893130287 822393888 769058764 704352418 391054829 660330470 447929457 903240644 226866573 159085246 509907288 400068226 679174973 550947177 983082740 508945032 705614760 481157248 617405803 288874019 104710232 951554366 546476496 936260123 520894172 906535662 421513592 572591565 696916302 220596039 703749616 318614896 537493837 917986852 100204635 81509279 32794619 659484489 679426555 741028484 996224998 751388338 19042475 750115702 909065967 464891642 232178525 740781011 134423066 795478656 897138478 298882294 847294199 59320232 296254548 373693278 360976666 224771813 907965269 239426520 295198486 255500470 650443085 206308786 823263629 342563433 457282021 767830562 152853805 372368648 917448634 206619928 641002209 434979253 330624811 117559280 283569024 419890432 566325897 868639394 352142439 72794202 182339574 291459244 246189404 747793920 975636557 409893701 787846063 939587149 778716207 633898153 214919304 499177521 256068766 621159456 20369811 157823657 202219746 280422328 672488452 883849743 778474320 981736997 773842573 777440112 171069015 892812508 29025724 881331295 1458425 756081293 196029516 708657047 975973330 180346654 922703992 282584977 580904673 565283640 747058417 290111348 952919278 509110065 635612995 506927566 286481832 106843655 930419415 404823647 953867368 332751915 560277209 480660545 652122565 626623670 182543799 41221048 700066152 829045626 100278534 235911125 602124210 790543607 860792261 694586946 246707350 639019547 877805278 782120812 948379445 292351780 373844115 661315113 125919169 944718517 157594737 800707982 311379098 96358775 482588883 947745698 397848095 421946608 28358717 766156249 738094191 862870015 23907485 981288889 797570449 833996782 429714126 314171410 874285727 532723229 806612421 485773341 289746956 869205568 355652587 124174401 704830632 576708808 620462569 892069540 465428625 521910100 721267999 775591720 739552174 358647709 679211999 16545346 881235591 115323533 786926741 8649744 678319805 463240199 314688690 909417453 836687345 889973724 910124487 626566643 235293732 353918149 809891862 612291900 725832632 147245457 816644507 350848861 864780578 453113676 306359443 74642467 2656081 165212128 651823139 701144667 563952285 907990600 219787783 47335784 821186222 920719061 591940285 615689706 32425393 27695329 924700366 612141639 747527968 529820869 843379002 332478349 293159912 529668686 183787189 208025216 533568892 670958971 144772752 486707108 434885789 849004033 242792162 268846753 175818896 544725022 574309339 668414968 355167550 560130287 503373884 673209057 326149416 265903451 94284894 780429002 246263206 669758687 689751316 781699299 984986557 443826010 935007689 926536908 158913986 233429162 414874658 562453387 509221551 732696875 149047763 181069912 371734248 674341637 701397091 240422721 550477839 277614010 150235518 729498619 341092284 522221914 669362656 949304431 713806779 71045957 397850653 887594850 773564298 563603470 798235506 105999125 76022990 282176606 628786364 892666101 154265836 286725864 123908727 451910182 282390110 40146483 290283905 454277359 953061180 474554113 174197584 6840316 607119822 825865071 613947174 366809058 697688078 556516041 292983513 789985968 924382843 883115207 48856080 766520925 191469979 64076659 401987110 503417220 212364176 193315554 599203724 312014921 63255835 556601593 957574537 805611285 730018767 736153209 711022220 405048511 351629797 518917524 589403074 928637925 153862600 185699465 390768507 781501112 311772261 815090778 10097070 570712657 902209372 802382760 58988085 798294497 166630181 596396455 526674652 573365696 635609345 17585825 187176549 665248637 510364601 198400255 167278633 12861913 752357375 748394138 616266659 258048584 179459421 936106239 775277689 938574359 114443788 156916275 212434518 533040597 789598839 607067655 815398257 864463738 848094323 664814565 885810034 929510104 507862175 880576148 899844546 795675460 769146394 450735794 968251291 821959023 766721109 332702650 507352783 4731601 35715151 895462238 916423723 716041205 661699152 97725627 194385127 942668220 557421672 459445666 840976135 460560904 456300346 632178426 339579817 222717771 763170557 559736217 342472462 802333604 445212568 6949102 272720921 819064500 42064637 939920081 719799939 543825613 567205603 45201254 244187065 577591409 632593862 543672113 416101129 291258292 255560528 605920106 153992641 947406921 31496539 316925350 625106751 585081652 516160984 543061671 812041611 113341821 29624852 658895500 157143322 60199468 567476256 901780272 834407261 118630169 473971234 798953210 640712770 436109389 607403286 988391282 356524656 139339436 349032695 417625928 384215411 384167254 427841957 358435321 706817515 380660528 866312926 731416863 111647243 842097751 893997597 484255467 396176746 401984791 435539448 947984974 177220731 23820275 407891449 862043079 927535530 76408295 578565935 152553763 582008700 773196733 365428252 715480367 280616765 514809872 601696209 288763025 499051899 485264344 459751771 507436231 236751085 384954041 421412325 494782478 310045564 228476984 266463912 519996759 462327480 168733628 113847084 521036237 127693800 567333567 71858236 874669137 41488237 285359415 502169274 960159325 914932132 167101203 8972948 182675776 414378673 581791605 883391251 985688164 687044984 853384703 543945052 375875349 318613066 150643120 599926596 551150664 128995476 874277394 283459547 854673898 241987136 73920806 94065547 367870645 169977434 175720087 271741010 202960348 413011233 319472452 815464622 276414371 97460858 386086405 71155269 741374836 779415402 872007235 219097949 367799595 965597624 668654882 343184302 951790652 807615315 260011122 175667800 254735280 689521947 91871216 881680472 472291231 725658603 232817394 642931598 376538635 189607345 79460500 554366506 775389365 491778377 641390600 379258390 616464526 22030526 211122330 43882663 991573691 908389151 654722836 675502526 999739553 812754346 585202548 78853086 624346369 141385013 632534789 590825972 549521495 55191596 219967198 669359089 374545114 740754189 439220807 340624021 358255499 663551713 743278735 143672971 592828960 266193874 718230051 560355693 39156437 297527576 73298456 979665102 586514347 597124334 664803876 914264241 631661293 722106828 536869015 347146876 312839305 221301795 13917959 455179285 129203262 935559263 633750272 237960202 544946904 908229368 111988923 772928047 481754176 806617594 505735230 839015726 461597903 575241489 302587709 357771113 235344024 311557333 673205440 806753564 570775377 604567134 579405619 401552812 917501706 578281185 173259223 182540497 982412037 501455781 846107333 312485742 875461927 846764157 939290514 894948524 334756891 329708416 592229009 251340515 140522412 198105689 66718952 984030200 404962640 690546312 307799468 420255965 186646004 560538231 610479012 807083328 849426755 848197504 994278040 460715167 873520901 773653045 359384275 767295197 982195302 85994415 439902912 968110351 446180393 701789159 187845526 966536927 753430272 627808890 281525800 227018427 516054702 864435100 725215305 308172915 936309286 837150881 728246067 560314299 190319015 139623914 546970940 279381676 17373222 232861764 920847195 64631038 469090512 291157500 595868828 696811670 349130712 277989552 550169599 222803315 978985415 718713195 545145329 518990361 845797736 869264957 691456950 392599327 103798743 884934660 956033726 565543707 58381289 379780236 229044232 390879541 368344334 881224857 420260210 891644992 32767090 695438280 562204228 864821283 748803895 818091777 336723182 833924205 99422620 868556732 304365363 606489359 480504792 905789903 22607564 572301938 495509147 100692928 850917 670827602 317213541 141814271 697080766 345439029 344263470 772779931 117470797 220983924 484073697 255431480 383309325 350371824 535348998 621505053 808422722 571983586 611770611 27550812 812131427 47954886 786323637 211989089 529150382 158551179 544064829 827923685 242020482 911366990 487105839 866848764 997671345 627749858 721703691 983199365 280382491 360349589 304147985 325850087 392816524 954037444 178487981 728049951 139317796 720975747 327119956 445336712 178303461 909122065 536837041 186194616 981803104 835672063 58675034 428849092 108244929 101774055 897663706 698642655 73023434 544084754 98843122 716723015 196588674 284074200 71121679 322697696 78516928 814808752 427571812 947184905 52701267 494317639 386717901 243986031 679950592 980824691 229966853 690014041 448683145 251914376 584112688 456543611 844393528 159353362 399720804 320388805 330549862 73680771 642015839 790581794 203366864 340178455 904829669 563577920 168148544 774907209 723481868 706127999 936961486 260272131 372770757 882112454 932784765 976023026 178189260 411360641 563076436 701845158 957973587 873217629 220854246 672047853 474225086 386995094 238805792 649641888 925339190 256847371 995354765 461785562 890672289 725785455 398210807 418773566 689067967 780734707 995647533 262294509 847390754 557574023 524289321 163820588 967987302 865617147 675857432 263265078 638176830 675575443 306107153 568639816 380677988 320931280 646252260 649132277 268161279 269046454 696198931 100031952 891204382 277667001 363751619 388712609 715641492 768206734 406682365 17495594 306534637 503524972 757473639 611089157 160357682 33393851 42150245 861597158 434554224 203999038 320581769 904821035 954825798 282282018 685649794 715720111 829086059 558337252 936747235 810432549 727372462 577858781 576009217 574400526 687374331 512160589 688814210 947414617 656569987 488663816 24212700 881017160 720072757 17961847 514345445 216975539 543721707 864438176 313499272 582558596 669747315 512759335 488329136 408814135 317944494 861848404 514943393 70151488 476180520 470606676 225741968 17476198 140265426 910200001 348065022 912069178 714404014 528587688 465068810 595028079 184768355 696802313 677248148 1991391 462719765 891122540 311364386 942777823 806226159 703867673 645298884 755378694 224106353 941001078 762596356 388231014 747530613 524935839 242087608 596721706 117584711 872505177 130581972 671737445 823039498 843780594 579163638 89757645 406289173 178720583 45935968 700406530 101202224 889091995 282149155 316839781 459275034 582122288 537139724 863491315 368520459 393651840 357239180 678396393 757265313 230134445 409580901 737816212 699761118 461681755 211511978 594330731 345802076 695686330 355806489 396474034 692614042 35865189 504859333 112050660 301405842 753592231 653395683 812459903 289423377 443918691 834795352 214376501 625528383 649211988 932476863 283742740 784947704 653765926 564186071 578386278 323734970 383440123 708855122 160104238 651471009 271555865 415649800 124629300 968380561 422651850 651082003 477238990 93956585 62956537 958859306 187085147 19586753 994183163 517174187 762489245 828075583 612224504 8094878 681484066 578076891 534692481 740944979 984505855 550004291 952690595 687198798 324751308 471204536 544141492 848032963 75198148 70756254 719944735 405713471 162328444 313015582 78506278 870287154 883485167 420769252 980107422 595526261 699615633 332175526 873658302 969624643 351056666 862211520 71062452 402300816 953002244 895461058 632581734 481400447 351409699 817113163 227037807 315252994 167971605 822591011 429179554 458836690 803353533 199251911 970958182 597412335 385701801 130328580 634546323 338345384 636556230 403579170 829467529 948777141 527509629 133484450 174388417 966934509 444214494 6524767 691206696 538572205 5566113 119838304 412513894 735604575 744322243 417158249 498033907 900015563 710057277 5669110 985599828 722104695 510770092 498801205 354207547 177128383 664452460 384423442 941869855 641472775 19839742 658585211 363554770 942390230 385123782 907921086 189892829 271626417 524925725 30715988 3143148 412917158 235964752 347053501 488844232 131150141 26578852 875187263 478748016 891269655 443680281 899889435 591523150 177957376 545746039 234378453 935626923 171775686 307808943 667425621 376119301 379568153 480229107 930679328 43500313 823121203 137887374 376075388 207828880 80485259 932900307 117810333 557213185 410413599 537092332 540670622 502995346 561539061 491966007 198796381 694429380 21372836 51318196 73813470 407131592 96951914 451779235 522639806 102433266 330502333 951732625 219754448 497303664 479728146 484365909 603161306 197245057 497705550 879250984 905751085 405263775 471233457 629217429 730979125 64435120 211393515 590182087 655643570 221433537 437514257 153860650 456033817 695266036 647288885 868559191 379303416 718390962 311845967 143605427 519745213 101573999 452156585 126473737 467455933 421260264 257169643 989225360 445252493 295365122 854989215 35821728 266894275 469868524 168096854 389389543 357277379 530607516 385001428 611794870 974409252 44521011 438418142 541258112 788769763 271280116 70952928 736908547 931722695 522616553 461260403 939895419 298700116 265746026 189416795 573866013 71300640 973272767 181309031 504251371 515583586 643726861 272507562 129595833 985736035 662322322 919744073 666244995 613778087 879948935 445145144 954919089 638286125 4437817 748629586 899197920 254737188 218094560 977562693 225394996 797220851 854916208 73191206 912357910 269224690 833871164 138455530 81020328 48765400 403744589 214041725 967902722 435669506 961975324 714050773 478225698 753275161 194649357 925955058 415764593 352977640 299086281 844617728 827809931 452775185 408035644 853085890 180118650 40555900 401598083 925515120 457555620 391642543 837665020 6932211 895606369 605697552 531810903 26227214 375719194 394750195 139154732 14257229 193676972 355385642 348494640 701626883 825032995 127584317 133641961 235875960 289458037 193402996 336223316 799199923 734851409 581628832 223904736 556912089 904818730 937396885 559949571 273908226 853198889 675674204 975498701 693602870 632380193 485374903 614550866 804952046 210332855 534243879 245394118 844787731 628515100 513822064 675669877 22259429 491081557 188569043 684529868 192583150 794895276 428259192 193823757 64111239 841142222 123386554 478498383 718718220 185884115 553240222 610410096 345061910 302