570604 234871161
127739168 714718733 47346418 311301590 267905126 634153023 985027723 518727045 943578145 772750232 326206539 941911431 388654630 44700659 184128286 614360832 781657382 266204779 572370996 726786464 974240450 461102452 638803797 111585165 294339036 700215782 908195364 571667941 334564091 250105479 900993622 956961975 896899787 270511897 726527061 384210393 846827210 149690428 850725812 609813970 199934860 357301181 647141412 965101176 623855960 218708338 279614980 301256591 345347359 992920922 132018307 989007644 794947030 647047326 253834358 482320211 53301745 291483004 544579586 526306881 570802967 405120571 15095824 31927871 825716924 501368006 582265759 573282678 427631946 235173284 637469156 552415205 502554539 25710923 562187951 210421592 236993 671539162 486136924 671176034 400940959 580667738 256934873 178034696 640646023 771460205 663112981 89642641 892652879 891068306 189864024 149742611 964901239 250635345 390065421 392997540 93841224 836364865 922791613 303126865 770013883 531725294 168964792 315401239 391946366 258926145 181954725 908012487 287337430 262887579 993712137 488314049 266248107 626555798 971002346 711472326 368930863 799054062 488125263 987499657 914035037 730170140 940321026 95898032 875355776 274441658 755360688 195293263 63950754 104840560 688645220 344699743 588608001 390003540 422791636 300611019 783989961 946785857 910556262 726017819 512715682 966646310 599721139 834509425 919757320 771100274 376426819 296361358 474823438 251382278 812542715 961485062 116802885 933744797 319720246 278013230 274518481 122195790 568136541 765582273 396081849 602613357 60137874 959811354 853068917 493809375 721541434 704458867 81413355 532345551 33891664 173987018 793842224 682587768 534492767 783355183 628562105 890427941 620628022 564294766 814372080 282989335 65933408 899659719 223320600 5882071 408355459 454464667 859544380 536574539 277111289 559460181 780670909 624289686 449415685 559221540 521975694 516176791 385419473 800569021 561419089 262595531 378488796 120025270 900597900 278226833 684676323 519063112 33219602 867515356 920811604 121494031 241361125 24419979 714019528 754411678 171711290 911810773 648033317 270150110 734903762 705920542 197027655 648230758 218173031 985224954 174514309 670659734 786529060 846026884 437391229 852906021 666710465 578313868 830943799 593502194 599504146 407927852 370129243 326508082 510834137 748940635 928886552 227139724 413877428 992815791 556278650 494541187 612779467 492499170 67533053 187750796 563925499 314218799 499039189 77826843 100581480 199985616 847249636 57644080 355864802 890484095 744410649 255167036 230984365 887068221 731465139 896270321 664908954 204550239 285659801 645492525 128882711 826701375 569519016 299146580 780162375 573930204 409334170 74777207 14213336 352845513 45067347 637820647 673588421 5939493 225985487 642755307 780258248 266915983 241684583 963854839 816909395 76560348 665620933 509925848 919438969 899498064 461408564 267079682 589382546 295550025 18231201 395814857 904508395 61658493 974954620 243999239 890298040 564923853 666586740 503137476 332001940 751681657 211141032 17096618 98999330 722459777 34923248 466714219 72743567 446439673 647038688 999541244 777617093 508328210 872178612 914480573 344890296 779874593 685668212 624929554 403426138 957106166 494165385 979740900 138164725 385888735 243792072 351764127 562050857 477455663 111193092 745947672 865485094 548831545 378957606 141048493 197208488 539927184 483792748 946178628 552080202 653889604 807259600 449516734 112348378 988037582 425461206 556431911 161155600 608616432 507589651 761777455 650609057 238976432 147289720 840624102 98260221 540523539 167117988 161117671 173981279 656523818 480796217 900408329 712385967 435866966 769909402 731062320 991388446 980466380 408965660 407609754 885311835 25204596 459613950 226575284 462983471 924295522 952941974 420391860 678860794 771682661 5289488 522178711 301842456 594859919 43610672 935417131 288247228 763318237 702235437 709496292 675529446 880679980 975871642 597737957 321558332 223572495 563869892 258366997 106446864 454353448 10434484 156202614 360653545 229152377 877785283 714036989 311972947 915492616 554509468 981837953 675782465 465724816 20743999 296910276 929183743 732828804 778335425 165592825 33054306 684139159 378937735 609699795 965464380 126373240 567212520 37800922 799595702 318153831 968290087 728654165 834111575 225701781 636380097 606223721 987520472 589714772 185071506 744379320 776322356 783412240 308695658 935766691 56527761 414066054 712914951 895700801 108516976 954572036 644302651 143239272 473553615 294045801 763705603 170192626 159984115 890205363 629654789 338021772 495898953 684023355 443439587 503274687 839178021 641497994 415025052 52302908 340021030 693272491 555696195 534277405 610315711 757418285 947690328 341382636 121000947 596038691 355011296 346595240 32586371 480784385 983981904 520981160 8298298 332925733 238687911 985139861 310337299 851494715 562097600 472944964 399573294 501902465 104522055 149933703 60328317 498096817 632916592 884805075 230511870 471986877 585856728 162625311 591118722 462688418 507808742 719833722 708560347 5411444 898299364 386302207 220263682 511611196 134783438 271571018 163870039 871282395 231767750 555202425 82663514 861345783 282320396 341525539 386049908 812030842 213354026 932339659 971665406 496822761 115599001 522563677 894956428 624824412 60406882 556063007 666858895 897940206 63727508 523742969 206080948 959686971 778447714 201478723 308164823 804328703 322199997 874883136 670342982 288979649 715928130 161325179 845085594 33436178 290822976 873374895 668915433 718895956 893396148 747868008 915870315 327208357 373126913 960089507 574553662 361486995 53005285 712788901 567329284 135261529 871959114 347317486 975964685 471358885 40473274 712396425 207086063 238919110 263960518 380887447 257536233 271981694 282070639 530265899 98376560 826075906 662213422 717480114 187613116 101936595 432168388 963101855 149622238 92022594 33863515 664023566 187607401 443131584 71149995 240530775 12691279 918343628 306472643 432141354 431448277 377816250 771962859 603444774 794202231 921822265 529411736 118793581 478256799 672271982 702319786 722684124 143217200 646344423 7993185 340139151 45789322 442930299 686965787 306975507 675674315 616282596 683941091 645134043 803017088 52637200 129708541 870260832 44061214 727960113 56708675 630727890 952287147 258447638 989249447 67441282 425525985 808981197 467923752 913442030 827646479 748137142 990807558 727373636 94634263 39268769 659766555 706230795 146891520 346321081 60190715 32456591 135683433 110548362 199775164 244251520 522327635 719536105 154892061 853171451 950536292 924770159 237414277 205072379 355295962 321705519 28769573 692371109 816515911 526499041 593809419 478676651 429855308 241520487 24147928 498363900 859981036 240160988 355646994 31755204 916652081 28227109 876814490 67833956 602479520 490587690 205238285 812131160 202474556 911786671 93271799 325278827 230571098 331829834 510682023 63918583 676542889 267999919 158110854 346032153 286236094 403110855 945599724 850962440 837083433 417051397 106485384 65861064 983260851 583424997 799012208 382060963 462034925 111376809 28223170 55130128 815254984 702798031 984171940 887562162 569990024 337827532 737846301 297661645 722863836 733892308 6336426 47474298 279934549 467825903 686268621 268040966 343651352 56873519 717286620 477964400 324734542 434503355 798623297 704262060 565873326 524642691 598548600 984489241 19711320 535239809 854490424 198202425 85639142 623195688 886445578 444703807 631579898 611931956 715561940 275449660 270602288 840921372 170012780 504792053 230205343 143190057 750292266 805684563 991265776 972427864 438082441 884939582 25788259 749526283 101862816 626278122 478892472 200917731 456698619 624959342 429782299 886692958 295812364 557786221 87204990 568532481 996013728 396975086 911457542 506254747 866659722 334147234 899124621 579058087 501166786 593581818 893165749 996468599 590406667 616322178 128298471 708363619 864106586 704684469 788894317 644695821 705759421 178567684 500500061 977053 758420414 113543333 243419152 741199801 982787218 141860603 213979320 926573309 295311362 84994932 257369012 566464909 42309135 9507344 479438783 462685439 17510889 229040949 241064437 655735732 140314303 405922575 560876755 755496556 3763729 350478236 920476604 526015890 57608764 411170002 484803300 363619172 904714315 387268825 551241142 967023511 910552382 751694217 19438710 443702324 892225481 940251991 934970989 643972297 773220600 153008172 128986637 751774465 488566070 127043858 954823036 735429579 905882836 477812633 415601197 893469080 924106597 150978863 727485122 158579020 687993751 961698297 204563173 160404113 890953542 681340013 439935160 760750080 783304162 287365826 792030300 300693928 294242082 912371631 257373794 314783790 638950182 352836192 905024872 626979060 609176715 914092161 816605711 151549050 585579506 229288842 638375559 403053338 561572392 202734471 450268547 594098875 128698240 778207090 284036314 616644453 92187355 206406431 491256854 170986200 242858880 674717552 440105820 627077957 5397201 156963042 461631435 54813761 937713360 147470890 173880302 298810552 798722225 595658435 298494135 985024436 77971334 701676309 109552366 719898742 21572664 517835644 483387752 221593847 567366694 890505573 644011841 731036682 240727754 797919481 145043428 688973034 148919444 917628968 686416803 164734682 485720275 152353976 446079479 583378055 830255315 657864792 114312904 244785448 961852051 309269701 834015310 391776283 105787806 120112434 376586444 791050894 646908458 668386254 827209208 241880275 488908506 385963889 991161106 542227768 482815181 70026499 12325784 101776141 552773495 346193496 968032483 792980423 879734437 205822097 788604821 166605268 279779205 16706929 962210531 833465136 752594611 279051153 621829855 529153390 446468249 739304138 504726150 121849959 324858283 230016238 294761417 816096067 651059676 334877941 872662141 38812108 432987361 486311859 912528539 721023556 82543187 709451277 434706145 173761140 55113438 374226186 590769510 138409177 133535601 923914581 907878245 605684497 69912681 523742767 119565562 812256465 872913103 764284217 923520862 975265494 424454386 947921393 248661891 950641462 696316337 610530752 402874651 67213578 826793900 462305360 650507078 648154937 706933594 2414553 47883987 826858587 805474268 675962078 715049347 142979393 771340261 764156481 556728900 164284783 876465116 112852896 984999285 370422402 769384500 775190034 446450737 464226279 683321193 723722967 905150026 370206073 108760737 292513473 291593481 488628137 684015873 47083035 735807662 543386774 532910223 575288118 551550541 407236018 867612275 8417794 828268902 946219834 251355568 221403741 451024114 415401707 579630406 213358946 307341066 596825411 993752998 664907892 63435061 347341268 383012037 810390580 998380562 330906262 812540324 595780695 457110955 337385381 659451455 327056453 519446283 793560426 77843363 410919705 860370235 685829187 807496563 850561798 75476238 433122188 428977226 56795496 937457547 321717904 263774568 690949628 487151777 901467120 726489644 421799697 679471968 865405248 729843951 989852580 166714998 253837955 308404768 798619288 840649934 121313156 858553247 884732006 302873734 381633613 851742444 914176256 811810714 42061254 407366490 846391474 957323905 945188750 663567822 16196608 453751504 382658876 823280138 734403577 797135901 450109114 575790173 241935444 346366538 30013257 974235606 953040318 366543928 714314529 59392623 562506135 159381841 473631417 716975174 569833477 848937137 915874631 871995519 42636991 377703059 334014389 134484306 425770912 588958820 582140516 535286078 933841094 110479578 120534245 559634448 824649569 351260021 851541546 841921014 653993729 533041605 988324347 293721059 60718313 609591525 22404085 690889192 81783271 907112112 310350233 847754216 959899257 741763573 725674499 835059114 448522945 996777251 537809238 952671840 777556212 525378385 486654815 644745442 206754152 800502117 587642158 127484735 859275220 642795083 591757222 991727105 976894060 964872921 462504652 649615402 569210410 36759767 514295570 402689036 940441573 576209680 176768154 437155899 742190655 761893273 816831381 787233084 634761467 519618005 181500662 609687094 69920220 484949295 45351885 501490054 573813233 963961859 277674899 11749652 211667806 436528328 281583764 431539550 555273833 389732116 352427158 204948179 375110598 369080396 883000934 52125358 73880512 426451961 434747584 947892885 222418367 481132867 849322053 615810458 381054005 356491205 368639263 673036582 270175612 46197582 553287771 637593859 905800404 753337733 388577260 681165617 938373805 622735644 315041793 752711915 828979163 998320130 222547341 964372167 348058431 750365105 233253159 258046084 29406620 886794547 32234450 133696872 316165031 563276586 624268671 388167084 458633336 549786531 292944808 886073683 531858442 601467358 675659479 36716526 733759484 170732738 260925855 749860023 303623233 507740533 329425438 860426063 442812157 75001724 341129127 566279007 331626650 670545052 843287708 601693020 265134351 624729949 926760999 354019609 178465053 616988841 181692736 897636454 709889285 507411083 649032578 504636894 33528706 773723736 247308697 530108053 721148645 323266101 83026567 459098442 336101257 954823424 657076215 717702507 356399207 452136259 519059957 14007275 36154032 322852916 535240977 235410921 808573745 23137111 814193150 977395003 468105290 218405713 809223775 664570659 665213410 972151793 171895503 786362764 556207228 266105320 12867185 615512939 316837949 320740851 776311476 765624251 479396292 471033289 605410088 376961287 840872994 132728680 267477021 306204644 220446604 332192554 316942981 726616358 499040664 591931653 454268263 94012040 979641877 639178817 103560049 415777120 483205636 43651434 488208596 467719581 11100089 650911455 195613411 72990426 544560277 425999274 248869873 882610660 921219286 121018203 572189788 511113908 378989292 212310951 468546723 170270770 670884964 632647874 588078717 82661348 710611815 220193626 161677338 90885306 150698531 925216225 901990167 76993377 134002949 6476043 241884477 67533256 566024767 48707979 305859159 184646956 206869930 328265149 897221424 746778832 833509274 310207210 782680205 575083139 430625936 914532553 167447761 884973083 590721821 708448286 188310016 415789834 541085371 715302266 205479847 501078142 646956636 174529249 972615497 984314289 946402053 228381481 104824434 31118168 53703735 776844647 660959542 867067852 344383324 758661694 850091382 419469618 513383564 389904834 492631408 719319373 462906678 546753976 736813688 819160593 233401256 497030412 25265027 732699675 118080586 522319751 595867160 655742368 980002915 512248201 911303855 473902432 558325295 190836631 530324943 303002441 17537760 446506251 689076472 868825913 688099098 978391109 2615439 862013737 369879328 657023473 158245724 493277551 598070371 983137047 166258617 193154337 725410678 367766917 456330462 81834896 294618052 425536925 426429159 970958159 215758821 565933295 23349223 295476139 437588008 118973084 665561957 199046814 401439322 452651206 920018037 688328076 77533349 467132556 324300068 777257562 813817386 84694459 937217382 984604392 220524149 487607583 923619898 800715930 661511460 917552363 603366417 80552594 443335014 316568133 113508918 740882702 175534397 853488248 148869704 456431072 732277556 345952127 943204479 483574603 582130682 906435748 735907661 462107413 86315221 433766239 310787661 738461888 586079948 589920369 943843505 793514003 640350017 548542376 741484330 649730895 404803760 254810612 614365869 899596396 66705513 231433036 943712302 691325884 383101995 771233863 656026455 896732023 384864851 855335833 26416841 952262578 700217395 227275404 864424746 111427470 806420910 971566564 94160895 190517699 688095286 909179624 353900056 728025951 62806758 120042616 815435517 338266367 758722158 960618719 949980658 230881561 167706070 551129353 298274791 467059666 892809758 996172087 996935062 816532913 921665519 265026957 39579350 407602235 462865384 524501408 742011970 462334696 322284963 348898225 769044553 666411818 665632330 603898086 80457973 129689469 43091757 595057273 306685770 205935076 98226210 246371663 981132954 525927023 749066156 675640594 940464803 392565864 807812257 481561482 241405107 191702168 667395830 782004676 948189235 288459436 679626933 230988681 295686311 727635376 355416353 485143081 481866698 535419276 142872874 543219866 942601476 476371313 588270681 147835995 812764498 377315789 223689886 630502276 581390622 351539680 863731150 721072313 888319507 645458972 461746457 991102884 691908353 736085354 574146751 491519608 616272767 99996780 332014722 145174398 448818768 750685776 931355458 605619918 114132585 112285938 758897345 414356867 397058899 576775372 610280766 674488942 449199915 467487651 847567297 687777711 903303146 431630998 425395881 232663304 128873027 356879270 308821206 769626864 176091964 244938796 258454691 395086156 665146796 823435200 27411100 764368527 463605656 441140146 480594517 303441967 87239805 807812478 443805736 345531879 600032423 779249889 908182798 26430846 794223783 730703483 525325470 499556849 49971780 718978472 467410998 40143500 681415502 896859248 210038555 128420835 280027391 933324118 957720776 130317033 448578057 313177330 521394733 141478919 280400000 564256381 930821710 105219558 778739637 86921637 860123141 191221263 478587329 783302321 785438650 614565265 365997772 75825478 648797047 267294603 281553948 238837784 139254106 672991943 566897748 256825114 775164338 472257010 459793444 716683653 1777201 65036802 728847227 299483801 80576218 297974758 294467589 53502750 916333060 321775875 651114324 301515055 604027341 40924774 370023229 99985794 151874456 921212824 941230042 569001860 684314865 745971727 554652089 811282959 197812109 306503172 131430824 959372929 4009844 55921217 442081756 176710565 914117343 24986115 77638387 249799448 448192649 677882525 216592877 658019686 693031125 146126757 553816194 74593626 661123296 182652054 127593975 469757853 84389030 834463592 653147345 882156876 570378302 139237584 890410316 291061769 79567562 126647301 121379726 592170535 619614511 851937929 193584922 297442316 29975668 100506031 642785906 777660489 263184988 559980728 533059806 842214062 41968627 622708403 822426999 30466383 984704562 771604463 985518717 461916143 46037656 289026590 371103155 282340047 787128115 340210926 974267195 280474139 522290840 173725312 195757758 604726829 992655460 24982884 649728154 198822090 801653849 332800495 283060062 766380582 963197197 358645664 529803211 755470075 782419551 45691191 659257659 836133306 936232335 513891077 919897355 112405347 611602747 471894605 931847926 131175798 575324112 107597465 722409898 909073982 125120047 710480724 621947706 72136634 444163779 74042021 882454506 994631993 764597070 510390109 753521925 823578901 591629705 409450209 103188381 433411785 221494671 94737939 948900079 195028207 420377064 50139375 468479965 631909216 131558834 965856276 172846628 881243725 941090883 871058581 451818169 309822598 765567280 749690219 933167078 243713941 844891000 909354734 658593095 167238490 546903366 741964065 429178406 744426299 521922596 495467486 864875821 263102131 375422445 663094479 620672578 837046508 355441123 683314137 125437424 69289721 125257492 360688925 22247097 223352831 770282622 735573391 462820267 344444820 847341857 159927455 139963158 878094387 658833715 929898320 501774554 329446681 705404973 303008056 848900120 968650403 793373685 693272816 379160647 415184021 199341448 823226298 20792121 155936410 871839324 220893834 957174483 521537776 564732252 493256861 474950744 793520097 831408517 919041609 955780398 822379551 44014414 456016562 180859387 424635340 394463347 978339475 89929592 459301937 738178065 408848591 420502151 572689598 496093356 775268479 704617226 342301675 695929097 770780257 879459868 31320681 611038621 501797173 172614119 175774051 263339367 263618061 247113213 477598055 547182467 382403561 968943873 972298871 836673145 343526361 342449306 770069810 657256385 53125429 585001387 957215228 402761231 565152874 711508297 468152516 367448512 304686546 409457873 675499085 730778148 990796135 643135339 715069891 793644502 401439148 455431060 214695263 863775525 425504436 859545235 122458533 611526715 56037034 89345819 691274764 922838356 364455086 540637000 86554458 254703913 453074508 490875872 551868329 779691713 494949280 554568577 101592367 315664588 638419734 433178438 449840347 501185011 701934475 438678517 909670656 928985774 335219846 714066502 294004828 77255167 134234573 101040658 193850806 310296972 453400713 7159384 388614886 696451319 466021989 84343115 69068503 618853071 669631780 79726088 768441113 139892346 484308340 885096085 277426225 255817917 703493081 186006244 722058810 440956229 709687595 247925958 768250601 469977339 976088299 652036291 936226684 700289465 712267000 669680900 448470954 597806135 582718386 573023319 274297346 894054740 757318975 228574227 999026764 951543270 592534382 324945421 73676654 438781138 671853495 123196365 640211981 352482933 692499156 867756703 976040553 791289472 714502368 803865223 112894076 425629871 352199360 368227268 371384785 991092370 957844290 495490428 884818960 248763205 524377995 859213967 109047528 35251482 485759919 485101902 999305270 732769040 346233678 774053200 916545314 683624962 960483774 179337171 226717123 910918970 724581700 445090477 702947036 296898130 53689667 346397904 861044688 649563039 239217219 905899701 413461085 407280893 985222903 49672713 74475013 770509428 57839827 590020754 646415337 594391788 549184888 416593859 627102250 913448376 315794042 452271070 615539644 221866987 875552584 550690306 467356096 154389457 893510888 877677859 831322216 593750076 988271588 139182186 272820824 577715385 694476910 219855341 681491167 674403547 401634004 192675025 502914547 622512354 253263746 564893253 836249528 346192175 216361648 821789008 468599275 955377990 464299616 877837540 355503240 257553353 759444735 645465254 400493345 160454434 191236055 401135152 896329602 36375803 175339772 784535128 700777240 762425260 704090738 952468214 118918224 595945533 986145176 372633575 691364615 504534277 631273214 387006076 401187105 482620032 413041105 52884012 501111795 819382614 254212772 317854388 656389980 620600367 266122775 200898317 535549423 274473002 97070997 416451873 971359669 34874762 389575944 172370064 361925965 25296787 595894049 740876519 986987178 60556990 991385008 593803063 106975213 129531679 449638160 100809855 201307210 934558946 691909085 730026583 31922386 480095877 313824140 402083422 634947067 714597796 302462496 497359968 803709905 395262678 952991055 60161171 946821521 378774670 956348545 698710303 179849405 193985279 690463093 27138727 176679365 326085597 285634458 943462991 88007799 514186703 287772900 675630798 126430672 616769469 660968402 247000003 136152105 298450152 634462652 723726256 606843228 221614006 576252673 147001640 145479069 229176106 314274409 401069811 48418708 450580895 998300217 881010048 103823764 731545398 425795601 820890201 601435456 758613036 32192969 67390108 546306129 809211997 707503414 953413150 331623859 327033903 344089437 271969027 240138975 108154311 209889559 680508630 661167851 909595925 242703204 221503249 934603414 480007997 826101037 855028820 785184165 520520975 477280980 764566083 297300975 792804535 277244658 484133353 332393856 384843233 867477978 946546202 965498831 260280497 429951414 789382017 928835659 368349722 689329621 761970469 651164586 870908793 959776499 389434813 627719633 969617716 901516272 58951977 15662573 944085024 800665005 738346355 837622401 222946209 485608799 909110139 817550390 362709103 121072312 651541946 745733790 133447420 37929056 335441 108384737 113250805 101834704 948969224 52649485 179483088 976638966 785583273 777655042 820200532 568364052 432596999 550247889 428607606 50365553 801960449 921558608 82539420 587030499 62362657 780409469 152176545 128754729 530539712 976238315 793623503 950046791 833660581 637343607 334790156 430086206 66750784 46583656 442310896 951632889 622697211 618046967 695019914 188864702 418626378 404990445 380626774 742143411 698143962 265069938 889992138 675346551 322177471 68395428 737741050 634480690 159316194 145984185 298723444 764183966 435077748 51985202 388880390 398484966 684716363 347711782 125101182 97242403 149473557 163441169 260045041 61409356 55505684 503994210 718982977 324745523 689970108 98519507 422961744 825919479 427023646 66162353 612022222 859570058 332753458 794201641 885141792 209925497 824092587 732313513 432792029 570386005 951123751 563049772 542636934 973698605 471306580 902478273 763951882 201388703 216718268 823170994 752473229 804238069 939361417 527686190 457533680 64538514 421213978 650920251 232022114 392749007 926801882 662500386 333595806 238685599 633629477 24081204 684516494 144314031 920960620 485179020 845094155 262018006 904482239 704188768 683125470 539118557 805406531 996344027 438364994 370608997 865034769 497738726 447922989 410536477 28963597 225546703 325265043 179716190 283855149 500025956 969485739 591637849 597238817 968312702 459892646 606689297 352203738 849012332 556479435 9965514 885353978 182103836 126739038 514742958 892946773 751124865 678770048 359782875 290254603 54190632 441208031 651532073 441707879 957858932 874104269 281283459 781610196 499535099 603160108 182093950 625346534 883502469 767092561 900415749 547384190 666819936 810100892 529781317 865801817 190968528 834857422 43124530 139184726 551617853 911819340 985279706 963596521 156728326 448600430 880547654 964359878 49977887 830476474 225092173 643241227 884470903 556175829 566505967 80620893 236237400 988607997 435731967 986069705 797687127 631978521 222467182 445166312 866331047 500582522 58219944 890693864 604047863 878496547 994429888 314693437 636466978 415525206 705785161 660630698 711751794 964443055 882171464 29832349 769048585 370238504 782905229 258467463 50055719 32988632 869371305 557307831 945856434 622198384 684177088 904559832 55021329 96916284 749779867 501108224 34009723 10177578 653696070 327255052 653833373 563150333 234832299 34547056 876730032 662154501 688535624 562298155 438335710 640674193 787208587 653854325 715823915 684484084 422628238 669363853 876404688 960120306 273229772 629980040 927842871 233128904 396967502 354725900 921978956 891832877 589378823 204207231 745497508 215733835 117412970 154770982 284163346 399387358 133924008 519047989 397812417 647534789 146903991 302647401 731905928 302758874 472532110 202014548 621631198 584314857 309918390 162589503 273534845 592634832 515229151 2008049 2164681 615035352 488220804 800510507 294269958 354270048 741205947 544688841 533731917 350042289 513380459 96805473 619092880 932228363 446604865 228274114 107014082 129174271 758541524 4643415 75786839 518863920 646410771 839205934 314011668 876572289 120530298 579636298 391972032 953790766 29775698 815098561 252017145 278957216 524683090 935135950 639610254 525037299 951313818 305479000 16097362 540652736 363796530 255297159 829695802 405726106 78612423 573099891 546429841 952727961 360935102 485812927 294591790 298000901 544767341 922777271 956951432 368578162 179773318 746491182 380105969 361768081 65974821 708616738 580865864 806492306 669404690 726338992 448650682 797014945 302856965 519748375 541767726 930635548 570423894 474756213 441572129 733994162 242862827 760017015 497475051 274914624 379458213 505110248 258435846 875637757 509167875 907568652 626179597 530602107 835121176 440085922 917070206 569553879 83661538 774343453 711769717 413213363 877154758 64346016 100092624 761114564 887303401 474449235 336377178 514313955 242392713 276263387 604721440 920915006 851617617 790993702 255772186 968587515 653585154 89607277 497684473 889315519 690622776 446128242 771794967 165396174 409436489 352036646 981849773 876895197 170076011 530096223 537546368 863982023 4287380 473849250 732663741 565061813 311146232 142376065 464711720 725196020 406164179 279504932 50561111 748272001 286069161 40419570 578697620 876194432 680863269 125994333 668674231 748067564 543824250 737141617 974317658 421440468 454797620 327165371 186870948 396211690 185342016 587485734 503684801 660792553 143803967 412434780 781849911 962233665 653957248 682242786 843384540 324637271 451864505 662586574 618973360 486318988 543792914 610102802 44955316 53067867 279844436 499475723 522419008 125226363 13462106 380714522 249785286 641156473 742888057 116906832 984464802 270703598 874254590 932925483 434921726 657932257 474233329 309429081 151052980 89558095 961183243 681874569 695831590 493448238 900248507 669861143 409400409 644599442 857913749 733728078 799674172 834617029 889475949 207716221 807841262 430027850 768371200 207213056 5009055 763804549 719493722 960257814 223032408 348720786 190473342 372680656 495548941 168232058 666071547 145962131 572031390 899607626 407991754 271424081 309318277 294683468 366265680 234369964 567534742 627609996 645114613 762482144 582309508 329927118 524214674 248266232 864637127 243388155 940378260 905115718 3767920 612096393 629309031 975555804 548739059 534097216 674404888 443687743 212244082 757206112 619964050 955435121 572480145 648284948 793143023 954822902 890142974 39668892 54110869 410879596 287887713 775981874 625721703 255046813 779408040 453465174 698027720 388077685 844647782 417666054 305757106 639803365 446831025 902933932 505417431 717281862 706360401 152928221 746252216 443109925 328330398 334225047 800914103 601411448 422075296 662711916 965504851 616013517 263592911 449871916 557212317 803643560 740476839 477706266 410601215 350028609 303712997 424313551 770436653 670298394 61783699 811629981 292089940 761406058 388522312 580362782 733748442 573325270 15612183 467563242 285713340 733537361 958274215 445484440 453886789 815143934 422417123 188641582 792737139 357727018 715441232 403193477 633035530 410649717 181649409 689469880 352312732 133625294 590737403 265165839 118492202 8527177 473433751 314456821 580635497 376238141 256957030 997957809 76325383 803854552 247572330 892815462 97505995 924121018 296742249 403881250 565702302 327780545 298367040 161953492 750492778 760188972 658878500 536583686 53627189 226495279 453765905 450034525 734991720 852012630 16940268 67735100 496621120 125855536 87010780 689451243 912922815 986351130 707755247 951091696 888578551 432634378 577353247 84392387 241029489 85568327 110763033 730066724 801591613 907490792 689116281 167156145 399000038 664508878 642669754 454812161 757328185 652544458 725504618 200404583 493217094 944218614 933803220 445889782 952274762 715777550 396753321 853569154 901540772 489676300 207823950 157131961 38151402 242400948 297079991 147511582 655615909 775661619 820428536 795790424 502446747 61267783 485964505 275383494 269615627 756173526 539907318 981117921 917817251 767472859 467794928 735876136 205488834 289141667 968825476 67550718 608801536 809663613 670678648 871333718 617322161 860077010 678132200 135864861 5547173 176917606 589212779 296860979 350321275 108774485 800301312 761970608 463137415 948208992 967772459 910874658 332122263 725908618 268797295 697278737 472492378 363283781 761534081 937400965 172208030 618653637 56947411 382742008 463462165 558741366 803240631 458452768 309456490 545313838 676700550 289213967 191708818 650099609 33712250 532521084 357960817 517765390 623859895 323016930 411414090 887427174 637727967 348080371 975975502 470526130 606708596 651879438 104194752 280363884 171267966 88017891 351670335 767641058 537595323 301200504 279915894 280705346 467798013 359303038 379163806 909267466 215478665 2357469 997017225 370625956 744682282 177575698 661492539 307272988 819906267 725039575 653602626 434963617 1755444 83014970 469740833 57842616 136351475 737753993 471754953 935207085 408252237 123560279 78411184 295108969 321025325 777115260 538535419 60157486 435811014 262699590 719571895 456644407 505542564 892136402 399496042 293152781 603122037 449886819 469803717 431995403 728681181 366240729 767141770 171705601 937596057 457533407 111732812 929495296 730136730 836187455 339198340 986242510 753148292 214754752 850642288 984413407 996403620 323374600 411016367 213097600 747397594 540544159 913621626 953762210 192360233 342227095 423913308 929280407 351863741 128344496 235969050 875925871 896042720 577432713 266373944 508567942 979171267 932161051 801623550 101713419 48768476 886606023 936071949 924975887 573284465 599594932 768894359 402615033 944561295 365399932 659815938 532602205 434160865 917732909 88628959 966322154 626410506 685439533 899024081 968428054 376400459 940472560 754954365 169887621 371207348 23313317 101638689 192247834 232905951 126199194 697768161 233634213 996583538 742766817 710608485 728246244 4819527 921065366 117440530 509273123 433154928 849186280 823659762 685886218 441405800 448675699 688794221 693475856 940083195 51305437 297220888 670575037 593916897 97473316 828404829 897308395 837073640 692613252 586314071 862655398 333113998 115836687 777389549 419271178 4304437 719098522 562386609 293415132 433118676 943423242 517797078 558533619 800887569 517897665 432036478 300286390 596884460 829330302 217116926 235303048 983682926 33065714 201995531 254746248 349726187 625999457 462556924 877117862 839855971 152361687 169794738 85686341 171340967 219092421 720352719 535616389 569000191 436553764 446376358 595962005 135591677 342779843 412607824 370201023 93706369 1064080 746339745 780425822 839476895 736102927 89366848 797092434 386999491 27434788 824334164 599231075 859633929 156120128 39649131 12866346 638988551 127648153 86941846 53102614 259944895 164358637 824612580 715334842 673549626 507756282 274623569 627823983 598979096 98556886 463244085 970965774 260793295 916446563 626209620 565542723 710472452 196321457 314615978 286663007 497013672 589833655 756131291 252898291 544789911 804082872 213375580 663896414 550394491 102963534 427068415 713706765 400382164 976148907 969731804 986621021 672368074 376353845 573394667 843195226 431423213 745038197 374102818 341823713 792398289 560825987 104492949 858878094 456258129 861654854 704833671 469908846 468005307 464702483 863704433 578807558 304189597 581504566 644030678 729299045 422471624 671820862 27238233 312301092 853477961 735510057 185162302 749324701 50932969 805026371 994380129 85930209 353539614 449252872 795625240 263166954 241643946 588547600 638546918 327210510 548339256 982550471 743670133 743009229 497136713 742289782 660060794 567707696 494209330 991411405 710543777 149284548 167536168 412583200 355326958 727632635 609198794 453285583 42662381 262008853 678394570 485919718 264315702 717027276 229802733 123678287 960973749 803244699 23479297 831286654 115885654 766134714 685361073 167188171 678800320 507933872 665814863 759897497 580914154 769464883 164925647 430918734 455344278 887008054 117440199 70195417 740688835 628836295 167342890 403144177 537002624 877650416 195606233 671448884 123802810 647879303 87940867 610725496 327582481 91925934 948988050 641212021 710836971 802205351 413760845 654864077 765068382 208941469 835631156 450189164 438909177 308239686 717374743 427161120 558998782 608311483 589050972 721716979 826318748 7573405 240406845 599397380 407954299 12164487 335256007 960858609 565850601 814367184 133838704 408132600 286179955 313549676 2266259 77612274 650976609 191323892 781501024 748405647 721495315 92985977 407230713 944594952 600964586 28471144 129419166 321664350 985035881 596450931 641168416 736435269 561493935 116555802 601384624 909227656 983775326 66188498 616838258 472507514 491490048 826299243 202905363 77829902 179336239 949758039 184222849 277249249 593442897 746319464 874436337 727578371 896691373 252995843 298007047 795939840 523177185 184141015 228105898 422683989 797981603 233855389 278617746 265299099 50454022 59549889 524397368 46245104 223302592 625645267 93215903 924373127 271911230 131757959 282810927 193753936 436801347 779704385 208944319 122037956 35964672 686796046 522580035 888212916 334657493 35742982 571705420 960455071 991352359 540815472 784464331 956320331 901172902 561441137 218052599 877224940 650471982 739531689 366249034 594774540 271406332 502479131 983505400 953826323 78868887 888191562 5820095 762084839 887427165 119937417 156130773 176317260 726547972 296141531 253104000 327006814 354414356 924830861 490651649 773678516 730407319 563350603 257625864 22800328 189667408 366795687 850107714 750143817 967554303 988707664 361349804 121528905 149071981 118931076 719007243 959249644 741024565 324277777 345765589 803706614 39674381 998633716 51157955 793632630 774420548 699558966 213811494 317175050 660842410 435535915 594253670 878271262 259324531 120862274 72316840 727887173 771053148 126375146 29732757 224522028 663477621 625912418 738907125 398371240 860804004 12040893 771107846 118158121 619878654 21802310 579205861 560777070 944425553 581213746 382942650 461589531 902081103 427805313 497723585 783766139 477596121 574712291 540402378 407962056 98540467 582621369 352233061 724007715 582757625 670339107 284099673 209001593 1540706 942000901 113287865 855591588 2386701 312678205 302396179 959396979 368706846 617447183 995324385 128674115 815507373 258117012 274318941 390017679 95516250 729521027 417750915 143365158 344659352 377347708 689237816 396184149 868028086 419751248 120998157 564496695 860150870 586812619 728072553 156504965 114410453 169749139 586875363 255970780 414348563 680907696 216808143 550405175 857903471 52575455 419528606 234417737 226464980 417387891 102881506 282583418 26285354 799264636 651303903 544527057 419834277 223362100 881454544 634776689 129308353 909722456 456329074 822744040 734291953 770260391 323573124 230485830 563071370 985201938 687850688 887166606 639767884 261725969 821698763 591665450 27140848 746281479 596272651 810883890 92588016 449848088 813667436 306918965 136663905 861146310 91262401 428976378 200691247 21481615 215602687 173797102 322555889 135183466 524104400 537174488 35006468 369199572 956401925 63601745 245318366 72320325 206533175 271530108 650002254 831641167 462550083 421861977 561893681 494991349 934802709 846943299 27267561 69191761 991030878 66231967 465999510 931150141 536958287 589393995 719431968 590420570 397644567 142981252 273222329 53038361 620690745 48726450 608121662 878648021 412413022 742460431 352628162 862769145 456165868 39597822 118963846 515938964 115644843 687825921 744505202 116597933 413731918 153653637 213376314 791418522 148569554 109389731 886732117 230685450 3543923 825965496 181893336 565979877 71093239 466917442 555797296 940557475 907695496 882527174 253111638 217438206 314697258 983967060 773268173 170998231 276084237 539317787 951028093 646002864 219423738 853560756 181239327 951034391 183559599 348519588 97408187 296872191 345176556 456121853 677726320 583530825 949352541 56119509 321419496 743405729 815689333 358270070 427544151 962467165 918122424 185377623 464113546 755034211 566956784 426115774 967163036 216907422 352189544 676382150 283511495 492993901 208479759 597689708 615838176 970650252 542932258 399707521 3809238 123260738 392602703 717713071 851395029 969692572 878046308 356560617 492678996 295695148 903066697 2508911 812688437 623602320 583367311 74011575 81898171 736870637 70264544 41455041 764775157 662137234 964847601 301756674 53382417 577743528 59633753 589453585 826304414 231816940 609951440 722344093 551919914 994793675 595029277 774778222 660038030 508366274 133858910 47563405 401922716 548464093 152995457 875808110 279455544 947074646 115783747 161731834 810332628 804569726 283604485 511008357 467839215 192173898 588658646 134036462 244787030 971377979 222352755 985934472 141157103 472496357 81347413 911213221 179882462 340078069 638614614 493962646 789846798 591056746 287989987 68986279 15060923 849371600 354787393 196215786 776282033 815411935 547348200 293395297 664537241 891306666 140354536 261929991 34321173 942908504 488840494 19502884 814764999 456827119 187254522 941465756 512343977 377597209 207097527 349039697 161879061 200862410 796342463 135543197 966857933 621474429 409657473 33153537 805744844 616647926 386493170 678506865 291896165 788021121 152668244 999051346 559037880 153754432 283452583 237121254 167745182 972254494 700623787 700455689 839000831 440712675 272812129 608835259 617079456 449831056 121974640 949047171 906983284 851520716 974963812 178121698 966019315 916530187 231819074 217988263 995144720 806453447 178139662 159290105 562098749 199223764 26239556 211787465 601157772 950510993 977349637 713880755 272197847 55934281 913649935 53694669 293090768 480329198 267549693 978847149 117003294 352295081 839383140 917597641 935545979 689163751 336955366 831962329 634473961 531619286 772355191 132227134 129889581 700295622 435253891 264651293 619231195 519966303 242107986 244491386 942739811 914715765 353172949 810090332 697443302 159345550 583339827 179077606 799153574 157054485 199350722 947932867 413003242 291779699 720689987 363899085 487637921 434072909 180321158 385984739 80343857 823480364 775950025 867451522 271142809 578702268 375053537 562497388 734207484 540132070 889723487 146878429 586751653 752924363 225530844 134634261 757314242 887216573 641560313 640507250 360704556 931343369 413168245 119569216 595403860 58487749 854394647 538928652 827823345 451178896 440348438 502012529 748741468 626567768 850766661 549347393 819655006 606034442 425433559 587625690 355636114 495326450 103517740 673471316 114805220 936994399 654330952 490660288 775892428 742985134 486656826 237613038 561302798 542570309 566282132 825930404 20968109 310849210 186581294 511191376 927946784 720367339 836244563 497069634 430439696 752623895 258440709 571935499 730305700 890934658 91857843 333881020 698582316 218433837 401041105 523934551 491670223 938126049 959526967 91842521 340500410 709749829 393678066 310166802 959368710 418384301 713215200 233885918 25611210 592868185 549996095 235472281 102124014 356112853 139004118 678875860 623966389 968277896 675848922 338961298 712913061 632658794 507111072 537019818 529590277 869579502 20566425 455921799 129823845 70048938 883920714 760529483 723669445 709332140 216130325 482152734 962959643 143408275 694941097 813816033 473841881 921728193 572057186 596072516 393512065 189709050 622041011 875760727 704648399 997724726 148991173 316865665 7644428 774964179 416383910 28406865 387275374 415353669 620976361 992094282 792990289 718364236 235684472 777327763 726234074 34153474 408450715 462675917 124160142 585898421 222684625 984731559 447697734 222712621 704955223 292139678 82198842 262309121 752701336 292546796 632589124 205160603 949138799 450956696 766299479 66555704 233729046 426720057 385669105 96545749 749891529 393570416 922075186 412211778 205894478 655950648 675568806 617819077 85317429 817848651 354711018 394503447 779007821 604265890 534495637 143319365 113813019 891790720 374814216 743784793 247889593 565220946 769693982 511107665 745845290 993123204 669338250 473296900 814796795 490323252 957500475 732605129 18056196 398455190 160825362 707005379 737460761 128551671 111563832 855742773 521461622 150120181 559512997 476111121 339480533 402133242 816114773 888501733 822205618 267797063 215750620 895970916 66091828 501337599 305083543 684516677 555075110 891277927 852577451 604354139 219619844 811620613 405396748 796025210 509144477 806472455 394728766 247710254 432468787 7983455 732324921 308444700 262150840 290452971 157874636 417722258 614153541 969736443 995836140 6361169 59119933 545966934 825082873 830027683 719114288 194713707 816393857 791321996 291815941 18743307 654018672 838140622 114820378 568213118 518859194 436876566 700250683 50665112 726798900 756590078 204095107 387791869 457467914 355217547 23324086 427523272 331536547 965516366 511392911 97793099 19559370 678476912 901737137 254698866 733755203 432633878 38748091 249192925 105332630 564311261 316522113 644802327 864583255 491614066 701079447 371625571 441869106 635842455 353944293 850383859 758560609 570520235 115230829 100334549 764175027 161558470 1388292 556083440 782292408 250904894 830967124 284479717 839902765 186439294 227874560 618260285 1880605 475176184 813187834 467764805 957466964 333829631 875132075 418084357 668191323 799714971 200689302 928285012 586516531 782690484 612089980 708196413 653117205 149327079 835113878 820106715 780089141 870089806 65265511 211918881 486487995 456253432 226312908 817261722 675867632 615986822 787605175 608881504 516836560 998246711 432850868 628077258 463985674 255091436 952888032 894859971 505490870 302076615 444383099 482118604 885551333 274246889 366025671 896164400 768498308 540148937 708204430 656804433 622274558 990297784 74247450 688701922 616295290 255078462 783140634 425186351 90529449 445355599 983025985 390033180 211755607 217893666 378539735 13020301 430109643 770495928 474080912 431855801 32424348 312238044 146468313 396212353 625959100 543957308 587257692 941892022 704399009 920463508 174573562 882630646 672193187 433223793 301047612 851915588 343396788 282839965 37890206 370970733 510372302 655152837 995367736 287371993 427959866 891828979 190080942 775075110 229186676 924034148 402321616 663136805 602269405 602413648 883989634 779305024 669542979 677255338 879450451 893523678 62197449 831685364 205519595 40214712 61762175 320472108 265821324 205941112 943726377 917951523 230482438 970360378 172103381 513719326 108232567 94326374 176802612 976599279 869540480 585578671 490174285 950794674 685660034 328847669 265746535 317290596 617547004 349578469 964730161 189359019 789144916 177848939 286575232 73962182 752291261 169212281 408094158 410831221 749335418 722889437 548748919 795689528 673629573 33689631 369139324 109587776 676747139 460521896 44579902 657033105 426307269 697671745 252515362 284214559 673528552 841509289 465053244 661145962 14714420 793450627 101089063 839977227 873376807 22961604 505448832 795473986 316829423 847034941 46432738 720188746 326350572 101175738 237824128 615388364 367705521 688143370 589450077 552030533 240970355 302729927 330958174 690517824 183766678 517248045 170645001 601585011 142043238 484143537 997424156 687951292 699614349 143188068 790261832 746216865 783265416 470935164 588172893 68256351 492584419 527910755 212620258 602069654 865365021 798613534 951098947 238474197 237216426 824492336 737297840 626076458 734779222 630024963 700174732 868081062 738698846 599049739 797672799 726850400 498118059 600501812 45408574 403114532 274153328 419517527 477003729 202796920 700882184 817484460 7945177 334546916 632973580 206695437 175070321 187400572 91030554 311846633 557110464 254857085 834545052 299412132 29367834 289594542 957729554 130885595 665864455 663043638 931881804 713687692 931416313 219841102 850269406 495840672 351061919 324563577 807412600 643434942 981700652 92626439 516431192 936513230 363088034 985060433 779698423 768291972 801725843 550669602 935123915 447692002 569862823 857992934 636276496 273887777 484466587 244096914 685515031 279371450 563426398 249780546 698318505 201184808 371035750 864429149 249754817 291534552 198374071 969259732 44924570 654615294 796636276 371483265 723836112 397543045 319280277 729501662 565821596 924685765 206848776 700731374 455603494 653153764 550446017 649768016 182713049 809670036 839524669 354287911 881631005 425230543 193136664 501108816 47575747 685195839 513444573 35790660 850465981 86884408 385558152 88569417 135871683 227020956 594885219 45304309 592020155 326203817 570092885 268329762 459829839 95733991 360813292 715110703 342096473 140460272 57886262 383791613 804281524 526042173 48177037 185898950 680493755 121978256 956133428 44507674 556455627 976325427 772451617 692185242 125171875 277076716 921313892 535743825 973400160 11275891 474594474 848829164 526927265 44076010 722795943 806156915 588389072 12621627 465012173 90484969 598797873 475039763 349946299 198988167 500944038 791459937 891065100 184009715 249013775 266134509 158261654 630210914 979431927 638739626 262936346 366065457 929129863 676814609 693707219 606547525 31528813 699989949 538063838 81763045 885151486 573307125 573634222 249236717 850218542 948485070 820250526 303944921 468140090 268176748 532316329 201754067 166363002 888696972 472785500 598232018 294060366 363255809 224064625 641240635 880875283 513967761 103955965 458019864 826421053 142802813 757118326 134270331 398612617 584660678 310349735 680194158 832630756 870112234 635767051 866106909 103641888 968369369 763422319 846120246 75773523 904717580 539182244 44227781 791109438 401725266 649156931 266040614 270779918 154505691 833763981 573967137 94516155 156747132 394810205 903748570 253945916 794123353 286704135 539253557 406193408 83411193 369086876 307139379 395428472 731280679 838841036 42744251 896365049 410446435 143153496 877741825 331373967 90501213 248239815 568375350 764776854 55663799 615681472 252822258 731571717 310544780 351730044 792116124 514001147 761106977 323441997 101883166 449822211 371762296 134936535 231458769 269259560 125135622 163495774 336089765 78772743 646537199 325181823 822769440 182075784 470600652 557561948 148606685 232591287 423902095 780679839 847217904 472392207 729921150 239055710 623965275 899848384 33184105 188748854 995147301 459147782 782210832 543926096 720136619 669587439 607055496 89679178 274489148 951938309 320320547 525273127 99681968 548234384 211319749 238883743 57820046 912272071 912856817 265240857 807508686 649538600 565014350 366496410 424180908 25060088 760644704 451289091 423816515 490819159 805737374 438804652 39710760 98356204 353735317 251617572 172389237 655811142 265322427 510921958 401962814 673703048 536533686 63957859 229626578 833505271 173386131 356815453 61418483 850542929 937876390 828856767 280108338 541839338 526875856 489073286 982884222 966949414 602790955 850100748 168664298 582602081 161754732 232678704 153180792 663157855 231523067 575918805 258594318 543665263 368633913 673403419 357687915 45248708 399107032 54220150 777864528 226575256 534818726 508131330 373578906 867339484 484804739 953458284 959072150 878501048 832729518 763474713 206747286 953043366 48577293 291241946 866550817 115714016 872995831 992531599 424255653 762444720 867753813 429274278 953553110 345404049 788973277 403314318 398440844 670777053 782647065 851622547 346775838 707651570 638747353 74304194 111965227 251805011 384365032 93027930 899834332 677183260 695974914 135630192 129764350 134292013 329943575 83269706 168660086 985555932 872755029 927005978 650582415 868972830 267029074 345617202 131952735 840072435 299853668 752670128 873405749 365191023 740700772 398532934 679049492 913451580 868874894 856562174 730185097 646961138 720622854 27413345 428411388 930032068 766217080 638537376 107705910 72946875 119838312 589889444 257391215 519742506 336760543 182195901 327980529 846565988 962101767 112236422 172963595 610377335 622147152 379094309 247612509 446520642 571259281 465404768 737708653 180675188 656918453 860547126 64086562 817579854 92455560 651941401 450006718 953578659 574899072 750467671 623998440 967062231 422174664 615339692 214580077 517922932 309825234 967245493 421348936 809210347 191117713 907470345 406191875 902852962 365013462 496304944 614170403 644627501 127279301 609155505 796310427 841798848 284549764 845783913 684845077 572020000 146184512 218741876 750948461 591757033 164406782 527921575 611068178 237693188 216306564 696991965 481086770 868816628 488954435 695536624 989248703 841134426 67736073 809600465 657150418 321111944 866306386 719252957 964118182 679124327 494229947 498704801 348303158 765238649 785882483 661407313 922273699 309706937 685250681 107395848 840817275 494032343 439080787 53680168 961814447 521503996 839462305 451598132 161135338 349780942 424521673 595358745 736409263 163701551 800780710 352415607 511576605 936699051 166339995 276460870 835884670 593129374 276936511 768525915 86619417 811582133 891807409 548997520 976102267 642981080 385119175 937740602 60369158 449034324 154176183 784980080 69605608 297361831 514443814 84954362 507154637 913761888 618562106 93092050 488675605 88173604 893816376 371847668 118206387 675387970 104172756 159514545 863685842 694150819 868856685 688336530 478274174 575916428 85614263 120360672 319063062 712671402 722113845 476863700 391788435 169079909 445691007 66308426 421611333 570540533 849155701 879091540 885568177 38632502 310167283 574559946 617749281 388228610 333052524 778473111 973013775 918714770 735175649 970992127 502171964 688010179 646030337 628295186 549165822 891237860 675783720 51966136 220292551 124689865 276364305 372023182 13933397 6830881 748318991 77270565 713997211 618328600 43487083 531699599 188912620 69011057 841918406 31097645 289256281 353805990 939669821 914196791 803705252 350624332 303618828 635407229 791348237 200167760 655452066 480219829 458052286 625682016 430154389 724024601 246247367 260114690 635820082 486992679 607436192 393334808 830814148 628796297 535138715 984912293 763454550 213514282 226936097 236592072 732065682 79504261 269369770 597016757 986504962 79866935 365062081 527041612 890229992 996655253 743428999 212416102 357425490 604643555 934854781 991569730 902830148 505218595 456431332 35698406 685967355 818783730 554297744 284694511 873510871 168510162 384047076 243489746 33838295 840852835 738958553 3444186 788582768 698394770 616747936 508726944 262307934 405315214 47924113 972368261 729011051 236413494 138436662 630131164 551733511 220187820 272824606 521869995 955561805 665122439 906405207 944830093 546162158 964685808 989627874 765030337 58819523 45997978 303290552 444698988 180648273 472219555 314010228 888658191 107168525 248612750 100222910 390523140 801171240 232524229 387522209 422322407 352959947 14612182 806569339 37164621 767970346 93501885 484077014 977109478 59740829 684750983 543430847 625739396 720185904 556563946 821482757 30933826 877586448 519690411 89602024 7333284 847291978 180071147 193584045 442673045 773294825 756639073 797292074 529766074 784623268 982989769 799016425 687264207 600433739 667737259 28757608 5478221 518537256 295844873 916129624 978161105 585934801 796395777 999381330 81636872 677778233 209740739 986595589 893325528 751551411 522229839 171875142 509134348 63040642 394463180 293650291 634246199 197115892 146548026 67746773 509135401 881006553 57219407 254600412 58152672 457943572 75390014 96670934 738577918 781541234 303898828 614597398 63919639 491980516 982323794 103213146 629816414 942860883 177585350 485883074 83406186 36449324 994740694 598582514 568310630 42737054 307471077 445476827 233181238 656324297 523185802 703183614 741659354 245965312 701935455 668818845 152471921 970439798 296961191 930066830 861171375 930049337 916432437 357325052 209829456 638410995 817673160 942648911 746502525 214953624 97294442 224544687 627348979 723681113 611461067 392300866 469512692 860081790 944511452 132798441 380887976 354591310 55587196 505351490 737406993 176490910 148276798 617754012 791634130 116375489 530378649 215122386 427390176 799270026 662626151 760469030 262854509 926627478 321137996 235448203 481549953 573855742 753718157 272226544 864024381 188122435 170290859 987237381 609677195 275154835 347191000 246485272 642803051 38194739 987657697 436413039 126293488 922619197 379399820 877628670 754426165 691098972 159924207 551812437 640621476 451480739 590495424 898670391 629395181 861930885 843387334 724049011 430388637 274203418 841140194 450490223 689235725 152508521 171671749 793973753 36776855 990005502 383334996 327464662 660241998 719524466 790373386 697901421 434240971 435163109 42478638 517023686 357093651 147537732 382562695 993387758 36955338 112739396 634742052 618063694 287335381 199053596 12330327 312199754 811512716 519219793 45282091 105231455 890145414 248740785 933299851 798816963 704804412 831016359 768260763 524459290 213689163 849011207 261003480 530854729 450526020 934133420 649583588 87720393 34230639 809609409 811616043 826692792 517740537 665225863 848900864 985334023 161761702 728505844 936298053 829676058 961572454 718379822 891206736 136594879 707198768 959078033 982099336 176014527 336573739 128622165 793360481 64708937 973054959 896627950 813120316 165148652 706252093 544657424 752543907 751993220 580301385 807520043 737400273 966290612 978234743 818637669 1455037 9859906 753865114 982096659 556903638 582701658 7414112 129070843 868905625 166533544 135795222 79335989 199721968 824301569 580146349 716438408 241447116 385369096 570125900 178700975 817833576 850981096 456040583 479127285 816350906 18498418 591904647 284995943 322187826 59618176 272905412 671898594 109590952 245457718 319286447 114074134 676208585 462309669 779566372 749153873 70422666 337427117 409221690 890924204 135827332 464259093 884667474 572556042 566448908 484959931 693849782 389108861 78055619 711592319 985049736 246645097 66490321 202870721 521285902 593958808 253274757 622923350 81641867 185099948 386953799 614451595 421091396 197605402 961621618 226676801 870573007 404915332 183940595 222252842 782359035 191322240 504980301 983270748 187159188 281250194 922875477 811499075 346149530 36586257 82894932 564659999 490153905 689641830 485229252 346418906 975703007 398977981 233293175 738030044 444564716 320379787 532132678 878871104 305046824 717527851 616294141 281146 708610401 144066211 911364666 377987945 975975835 539219476 909499141 310529857 686787910 696981126 564380874 243912407 992033912 223820562 49925759 117687942 598168923 685597518 843586040 584468198 412676088 292546498 597180733 225721836 149743109 393732711 927193487 583654913 728953613 773163372 700141183 717794918 561961323 864642791 586675904 53303613 237756485 737696574 363667968 582663693 917569918 363747333 125846606 398872876 903478225 603508173 836772919 214934433 16408204 35532232 947629722 675232790 840110604 166116559 504912970 235675192 798992908 327458515 390631956 304523409 324105012 612781212 918455451 751611293 949063730 845053925 719519282 424088698 422166232 989260244 598105644 441263377 278219055 302010647 857479334 6681692 235294715 301355272 662242359 954316785 301354288 155318510 204424186 259123169 275019772 233770665 573974721 269601692 943580974 10243647 544915461 662924835 709919116 454235485 382290972 193731662 104353432 11879135 251547185 763582271 47070886 761549364 221166465 70159849 943788473 827903306 261381798 558024354 394803499 357686957 253073298 452327811 74647151 791752155 562167968 307381941 640391421 351547734 746654615 746858077 381016599 748194599 376158727 863558617 497684388 595701776 369784841 396737955 721708926 631024997 487670043 331898849 298510785 111235978 814631079 69082511 805389206 361096467 983262716 232438460 800550177 534378639 595358357 895743653 369175234 476722425 491713505 95061775 807316884 968637758 551525041 757984213 83597492 643571349 32685282 959427511 314267895 457392254 791024017 126536944 833659627 352860116 73868080 383090578 822627502 304653989 796127387 761384662 171172376 571167400 6264447 966318568 433489122 240740367 289994433 529184920 550563908 127724968 998088057 652301999 396696292 597083228 341581403 303961115 977018981 181461214 441820497 658566184 497392270 1398897 200422832 550627924 52835286 405922690 433162148 294060302 83718809 147852080 412823307 799216372 177687686 151995441 33853377 449384843 562740078 745973520 589193732 85529360 633874840 780519128 39422577 494850880 966188009 917589911 284999059 739167109 64444771 511941072 699808983 740002737 284078803 940605498 842582769 451732862 556417757 970040090 834751967 683079213 825752855 471753005 989862815 141072930 253710916 309023363 306579884 543597084 373635625 725304728 305646190 822908947 166374097 158131930 312804497 874562191 717803373 502400490 625096938 30947560 816889361 816400307 902449742 706309009 992299765 538755974 344088043 943560295 624694610 497069028 479339147 523041229 933575355 390594107 735345624 466607504 24556857 880128973 462076205 683723613 181845699 443403658 503687140 573145833 225155411 104481461 964906312 19790605 800658422 465725245 51709281 555806937 230569656 353296467 221802008 155579974 573643100 769837706 723597413 646236104 714006127 829792459 327187690 862253875 358574963 246874618 773105208 7113000 644952403 916178853 829895129 241924270 344266250 437918794 411189286 995168734 83537414 457824690 756165647 476572512 628795366 761887140 439464215 300326209 725742588 597287365 870584542 675553874 549426393 912007957 86773435 384619057 703364981 34722225 645917379 992591281 401505280 736166485 617877367 946062365 478536675 863567613 492135003 971192009 51880267 645816843 146065435 651944765 194602796 375503342 606718411 938404535 125011824 910324371 81168060 73408590 924176544 835060079 172552216 906670233 776714740 900480549 978922905 877815578 751916895 892740772 625127066 122222973 150352685 397740825 222124714 217766859 256545653 16392587 195825629 642336070 640160192 548284346 915932621 743019497 294516925 75355685 301520094 964108405 903749850 237673346 304434683 778497670 213769787 134198037 578700695 351901939 17042387 314367626 255455066 173333580 249681833 767532051 9543512 528439871 388477048 395532459 105518328 442697057 620568001 564348045 779811079 117989204 203649707 767830874 727764169 329774883 315994384 327111421 347328795 28299108 391690087 908225352 35485944 539551269 502425769 335262856 475306527 143809110 750684394 596742334 98336079 524035222 359053225 989275223 401972960 376267659 295254718 386158901 681865274 203059130 907743725 97638909 81546697 656632285 235656932 624186129 928036750 493449259 741308937 142826315 326268659 242395707 918930683 673464421 821981001 637222434 608541546 864576027 753085244 988119610 608455743 758832324 281824695 964719740 995050096 101191606 516193082 387262991 377675064 628084670 499440941 913611739 368494085 125914711 880429303 882974178 245997202 122035483 250696249 57029863 110569780 397459283 446897848 733260495 229038617 152206590 298073811 610973297 184682768 313695534 688975039 880510785 443066636 413406868 406564825 159824857 877335813 305200389 342670893 729313711 974159390 420756390 324672197 101664802 862819404 40667890 453018103 921271627 658950357 201556565 712007250 776417087 376657967 758480259 883008594 509877059 719994533 195212186 296771372 169159194 54705017 934973726 912948042 408960835 728320661 302108838 86936448 944476673 319197048 357042281 474522381 126674827 868259670 673257889 427212906 539685540 848543388 671118127 829168010 997859610 472363906 495595954 871491708 788901270 882295294 173451075 346308620 492228631 974176860 311714185 238218077 243482542 938401426 962848405 195430139 16812472 156015783 412753472 789161445 57297070 785945335 833645147 445163360 619842445 875071040 141059552 793871067 573261397 368970278 217393982 60112330 959090546 725216633 263226641 519911963 931900928 554905540 22895499 940470258 913981448 388770716 502423356 719477168 921149593 73604856 266560770 108749660 180040572 777039488 909014311 864268691 549819698 171928229 467603004 748394264 370987815 929465149 226999846 805428109 132810597 674493680 714763770 345414900 284969388 621213741 616086988 875492554 581389055 285495530 943976658 902461605 303380230 745596473 3318886 564104189 18185669 552177603 413607205 61448059 368873982 645492986 941767868 496354253 411204662 312403838 783113489 281478274 442707695 2891193 211481065 978894924 827021653 307371703 930856171 541113821 866748701 365026834 609772242 959252544 793561560 59065281 613068959 781973490 504685469 125083124 693921786 230634356 813204083 300381373 814143004 958698195 861520582 546860617 701030610 961603401 218134157 268036488 944067200 935781439 474147459 789601534 39707451 387500717 202842918 679662584 264464394 400857298 559120926 218919568 167845066 906333492 129635040 155195541 152027487 544255668 108150489 516262673 95744731 292102906 746361755 898378516 321997945 71393570 661476877 391777267 7660792 240895043 782387360 632395475 959392847 785377496 703360914 560868783 774445679 504161013 833822997 983466866 969003821 571300097 208225918 842137792 662656110 496556912 154695273 918686844 669342998 535277363 592449637 2326366 685933908 336492871 850271510 178859920 803377760 508962420 365132746 270994941 218604447 638353158 892658615 75594113 407558056 882386608 551007998 138417044 206002509 332922614 848560111 278696432 699343599 120947222 218727505 584254313 316652394 536719828 864722459 787746846 712796509 805085522 69355957 932566075 928522835 2828275 565186785 967342803 136586693 111687372 847902457 498043179 561844199 165117712 378638202 838939932 443898981 122237055 578885361 806751772 222771745 908274979 524992694 185732058 726746719 159257576 8937080 390702748 468380546 554337805 787337792 501232677 32020539 405517012 209587075 395378984 141171308 993450274 89199768 318137401 134148343 690375778 252008994 768021962 670588787 750123028 671525863 254970803 387393264 869370832 845496781 103575763 613763361 387385638 810885817 749946616 338320585 573458587 751141161 749952116 847752356 543264120 41317532 905512912 665920830 499893713 352932763 812503178 371345450 950525760 820408036 979421247 486550236 557216794 606960797 926861667 263391383 93191514 433262765 327662721 5057909 362832671 131066402 263001764 852021991 344251893 986856963 733657524 906120176 556936049 672268213 207186862 826606234 17946904 823785914 793742668 484932799 807065977 611483576 448779960 33441287 395535650 342943221 476099148 122805359 488539335 520023836 880418915 205619301 251532761 193389259 388370318 633149356 956696831 431429654 338132876 28668900 760034068 767165055 970975116 737971613 985760699 574208603 402721971 684188792 867591087 330533867 563642179 699107127 996041048 903595176 579363068 80895455 706511479 346575777 565628356 873614661 342435706 169548820 873924671 455817995 533228986 442776165 161612339 586173377 820901918 694956018 230298628 300821577 915630219 856428769 782132819 276958882 40087562 271023367 908241241 41347494 442340525 447804708 952343275 206461533 220101533 851915130 192267789 367564066 229967240 627306292 622808775 567851243 309455628 475095585 711807109 728144980 639384530 816006423 863579592 668128088 627499195 863532903 784109053 314623831 65708806 989854604 707520273 30244270 908313974 671764725 870187116 918040844 847209618 118361887 619801632 8739853 414628986 163142559 185028631 775278223 199894797 899035157 454441018 452555173 993309851 991825694 975871484 511242088 976521408 127063196 475471183 92705754 630528523 264296728 231022967 560383599 180935388 986448250 939111044 134672856 549374949 349472103 756103177 824986521 197933710 117560651 52977209 381023078 667122188 205506686 817161911 188984271 168598311 682858945 977435005 283755945 208579594 116874063 639728486 947242407 98408628 822793005 851432268 297569854 516934872 835314722 522889882 913620865 238843955 627037709 782894819 94935135 256418920 797771286 412264262 520946516 934240357 873414519 761288036 356809853 811706347 784325587 342089488 161128733 121371153 509277077 71349450 817313806 367356438 455720142 23603070 484480280 991909093 85816235 181291434 713618434 657201747 858833524 748722669 726400884 428544150 319220951 782197106 886714386 404780751 28646334 620892911 940916304 140589169 220991285 242229108 379721910 930870986 320965925 225653344 524148912 107414443 642399995 219002871 336638866 392257537 301556649 655999774 205991424 616616886 656182582 646730136 348910859 903218051 535184950 835025035 51711929 977302234 890957324 575283447 821571639 558590879 101966974 492572528 599527829 914068432 237550481 384469559 185817096 743925144 260138284 946007397 990656923 205939513 997594499 902184529 167786414 468779596 695148320 777471951 867250379 502514924 709659705 869288172 852639008 17940 797016271 684346087 31207173 93296889 372781735 232149814 687569704 686310495 544947489 975628586 550857774 769389594 571312068 424568768 154579965 534709320 197112050 889107791 360811018 147640499 806886913 397640475 662724917 408478483 271434311 829081819 989708033 846721488 823548588 506115990 935542592 456374690 506991056 223844621 138275319 700148204 409564883 360891832 325956436 808390786 236645121 71300160 236992286 294597920 716444205 316017475 983140129 971173838 741555850 345530855 466116197 935701006 868376267 329471501 442217393 616545161 859774471 95809927 318880514 458366168 186311529 665226228 134972486 825619302 538558353 201958312 756685496 460514386 645639339 232492939 948856470 497352367 945532689 263689824 114955482 409997386 981252095 497227491 408999730 884391415 852558044 190696035 408020319 86898788 621380178 653060475 251181023 973767642 477389720 639176070 104907545 147292114 517570206 19006814 369228355 890351227 352433686 146324393 404162682 221644356 620641443 876666883 433809438 603738540 496617252 81254547 961793040 695240410 311122466 784418366 284018066 65167826 557569196 368445988 59205385 451546101 776845631 130530335 966020505 306150866 532640378 791531031 375743230 451780328 476883018 668427896 544707533 138988019 968835517 448024882 374022829 207505346 359638788 205079354 754051281 897126637 117798176 94197881 402498469 425889804 59234871 406792424 834301032 133994107 757157072 462055972 122132351 954752708 44984908 491585929 747433728 823888604 233239262 403526033 429650916 749382361 511666609 440180513 679262636 437234301 621167281 992558890 558562247 427910700 98031944 256942199 446359125 329378232 868872058 174539030 93850276 226809567 272088062 48473192 911743933 290148342 455444861 160472964 103267036 974437750 340163071 458363690 479646405 121175553 628959669 211792388 89844712 924644332 126099123 477660301 393499471 265330805 961463666 771881389 948514383 926714743 3603626 884037967 54193911 949225117 516551897 792809304 347550445 720922416 926490315 658081264 990386373 285674133 198084277 345149199 611905177 726888460 186583039 845464198 725258806 410214392 50446440 653177694 848933933 895723872 555782324 292621775 469720448 353170503 312575102 877546178 527869640 429908819 698881355 154055085 158655681 7568245 208129000 311127019 754236396 208596902 793328288 454999169 438228559 142408694 517007306 305130075 513561876 4332277 987500485 780017303 356966577 600928977 368811640 485176347 659444358 103627566 732316517 99606167 77093508 84666116 583977928 412447667 915402189 444797026 538513578 585513680 349499484 310825111 365171897 512395373 660334054 664075942 392232284 117455706 230812032 222414121 832794584 97318890 340173287 377320757 558993869 131312591 349486384 413024573 949891618 11184806 628493063 190564174 502339342 59191833 316391930 9020745 134105871 419517541 478320842 128507117 476985941 75733111 585761995 425844249 534436837 613944172 443717948 407734378 49944132 759366543 319543266 666715342 487464486 163569820 628518671 15043182 534807453 911880243 573210451 750173948 819566917 470662528 513603513 209141217 342762225 888870283 28177165 381672349 576914100 430785224 75357323 601510197 588913213 506218971 289955634 770033257 192772949 655751370 262319154 202449173 498200612 844311383 598477389 343973252 196811515 511343966 388202749 703894579 548600964 735905954 824866456 112461673 622562315 267778726 66984660 59802463 194422130 793636115 7645112 511183070 836908865 397668775 665249472 893651594 793328469 356637676 595731278 709839153 26246495 946668926 973747612 747566916 877767290 930234589 943595222 721074711 466655442 498355933 930805627 862689949 321415973 652270249 663440262 147658167 83104991 285869100 881157117 907267507 618590839 79056444 105428904 468484685 476732127 191845856 212717795 148126277 264203272 825837193 155093406 542061821 407976731 466216592 133804618 891358631 932025536 293969498 251920492 994599446 857177800 702456270 401043477 125306803 570497028 291691883 421065291 82973911 276191179 789040075 8467103 261932067 138611737 576224323 922876131 956661162 421682616 147020518 946352885 90379963 822902379 186469076 1207589 283363170 436525558 129501893 711039464 101567237 53477525 6918080 486537366 806404329 566395720 929485627 813888877 282948378 968725353 170760527 214062116 24517556 935713234 27372919 84389518 16767264 961062785 133674483 602122670 867647289 913133138 865948289 466456559 158223674 317957501 10453230 104593281 659862292 552027162 346763988 853389521 275317482 389783422 292362071 646655431 282210433 308839097 993568822 233202620 49793621 656952500 981261760 236219458 569812677 543349783 193641930 474563621 515327227 898580539 552330365 170079775 215375271 564980437 997412769 536207577 271124393 637446730 768671280 435771792 51287932 247300062 988512606 413892267 358554559 204361625 418419234 264502615 4322885 773463890 482766817 62583817 94964638 944991163 119089413 170211076 343264371 777123841 843908530 260064760 450845488 925123300 267599279 44487009 363436965 582005970 726394667 252274680 988011081 384766753 690161698 506331753 595538787 787800373 532365845 474840659 544563988 296500620 402513249 361362627 230041424 117053936 243752154 335344560 726838004 402801718 528288235 536075136 486656596 464001707 561344563 732354351 823238474 984472957 505145381 558463681 500285071 427486164 358357502 756613821 776614349 869032702 325997172 961546013 495150108 978623322 73422579 215421883 925077979 80488295 441807693 875166087 467355792 172329062 30387254 589108824 944741143 976608457 47008085 249654698 218947367 631267333 367782669 611387477 65206637 893734633 360180300 721249391 522893437 233332717 939626575 963555875 59751232 774891321 652343457 835488892 784420903 974347655 687096811 432757505 152610826 475809041 309910575 334131681 423886629 70738409 737844285 411243497 810521274 74076506 954740237 915823650 309472039 313915211 373201870 137975726 249466602 541491346 101023218 577063890 657886928 53473790 308424161 371530927 704327545 656987273 4410205 759336876 13737334 138922741 129251339 657891564 976604655 74916228 656968339 465887703 512382880 275080221 417098475 257564663 130012959 913920216 531158748 797510390 135064896 291350993 221455359 966787930 787224399 309421483 409251367 874561147 273346484 990543107 416290047 818828135 289870312 115714463 797968617 781189368 78522453 693241431 501290545 843221869 264269896 168161259 325030992 588562806 330659709 663639975 637692632 871090499 894949667 19326648 185309245 779161355 816032354 181688463 785443700 211550239 910185472 569077739 567475430 922762216 114647531 176121926 734329867 701519037 332777677 665134834 672252474 655517866 249738829 890570298 831028397 491736951 104820311 507439741 421683748 669586244 602436871 65777301 513602908 908578468 937002427 898771218 379360281 191400125 690601948 426011230 768700484 333390937 104351496 84049337 601563183 614844453 267226329 912960296 456995150 635850641 531635351 512918207 932167093 312092993 33447727 428810778 471128048 113481912 174233454 592248530 581683602 84939502 508492164 475620146 591502694 839172131 615522575 163948697 392430386 138637888 895687792 267854685 238116765 540256812 572085416 127752761 83340032 424526018 288382589 448199003 630261978 600922512 851622337 507838715 381675482 952819481 529303816 887246319 18937528 926568194 261485310 787731319 393778701 139777788 506441050 585894724 162735061 773450380 941553903 544497726 654146913 947879540 374514111 695796343 853123581 982162785 17548122 173118361 109223443 49188465 636667717 566440999 126430326 643153144 8470797 106527629 599801940 12103888 288101898 899002388 647164044 613338201 684142878 900432722 947072961 238219997 838179292 737441626 213386102 781415072 957303261 828871642 625282696 454995283 424591588 213303596 768488074 932184933 139108327 599548254 467890847 356077873 531668314 750967696 413232817 149569120 339307757 694644357 392126328 462447334 385701653 542452225 326369886 221954228 861620277 608627356 742670658 475371358 911040789 115968397 278272662 889860683 264030289 309025053 841427016 134328918 18415589 267823688 561649596 956311421 984218107 683638868 927235726 259241112 186962682 764629481 772361103 923438333 163607174 197856765 531263986 170558012 627451281 314445642 488003187 679581801 146903786 744024037 73797634 834350402 938465776 749134972 982388645 554721630 159474412 971946535 750666027 279572846 318623568 889180022 40374825 258120893 30200627 224065251 26710505 935642630 272540742 362438217 553990026 573019561 64073198 534259246 469440920 9682011 929890532 386790104 469644983 24413827 607731966 150837882 267588687 737074563 265293252 402938107 591237119 544585703 965346615 237549713 733768565 666464622 968728428 313629133 549340151 408730333 354525198 608313164 42833121 692139632 76690979 996730272 782831692 609268324 526617089 584121342 482273936 427344877 463027553 538383354 680270416 17921468 497279617 431376381 723617428 264963754 833108206 422212836 368119187 10035523 692957241 373065825 98778486 190685705 412197835 293170266 876863017 158414476 459560396 353704978 653271264 574748516 458022220 36813657 253113205 962837921 631704128 454279931 257240055 38030459 638670208 54955404 822091505 343242421 541314436 612299604 531031080 433755056 90752322 248032775 714065541 730723517 714283333 284520660 419214592 489256692 742895833 475882590 4956019 627050782 344124205 423409998 580633478 808107590 371496392 574958461 261610858 581315877 158284751 830767002 104808955 809294046 857981082 973112382 550287394 429119973 252299901 685251839 355283362 674940375 809980447 262810400 786628014 262642006 310660418 128861687 544077816 357181501 355873560 966349002 539447122 429658873 96696361 9563390 745148922 793576190 644504992 313254507 338696397 588540821 246971445 967213845 240784249 205034251 927352267 117758279 537863701 995967193 548037653 721433486 7124281 350852137 106336922 759670051 332555121 292793922 26451989 38705576 696407343 97222406 745835974 484972584 322769916 924525771 758126763 540919932 969395255 431522629 818856528 959787082 923459075 330998162 391592900 546020822 244065701 365632990 528718657 441248963 543866382 529827909 926682154 736543733 961357318 565136348 175213197 661489210 926728025 560730950 301733651 313659847 942485626 468809525 777290481 998208660 806084062 418743132 954396165 327222098 136824267 682869467 54224635 896397567 115876632 345013444 533267490 498113076 481903626 608583053 487549857 582448695 685489986 933310087 702428518 259038479 271299274 768003765 844254467 309549977 899633630 803789004 41805319 888389958 126936975 575522797 335334986 68008974 723559049 435414716 767480656 141583447 608168773 412903442 808020845 89187955 525807044 935337611 294414213 380913800 199011265 814563156 71881919 151203303 53649374 759384192 81859582 312324271 616951442 278787157 695790658 759143066 464858035 719730516 240459695 661257343 210756911 928310166 172133831 437135458 253481837 895031119 983295028 929172135 13745917 108203868 64519621 552899462 654899272 117923919 787688385 968668086 329967937 881099607 855115162 31992374 618387642 440969546 353281671 521210443 629928055 949749128 897111886 171579007 802484327 442927935 270148204 769384060 451877240 651260349 58037686 197023326 230203648 272370641 31498771 98451141 430338261 373890514 450052264 124581395 13240730 269126041 220555442 762832537 177566590 398814783 372684457 391945327 842188916 565861137 942090625 191980413 599280280 704802626 231215074 662773201 506617071 900225688 496735586 146049699 924729774 223060480 469368670 340517479 981347065 653268852 47356163 764434567 671495864 424300447 712144671 542745127 892772917 367152447 372302349 990867285 590680299 227910783 530398155 436802600 494311875 129195780 552192689 975472838 917019951 1537180 268752686 904668932 554476801 48812495 710619389 697505924 486012577 391597375 678977596 558353292 995123501 895642105 445164634 811544681 17351857 53226492 732380603 428512309 203702452 15415004 833827520 170924403 165593906 919947100 730890397 233532846 353695800 223419466 567452667 281953746 229331493 762089265 146453819 137087035 833935768 61031977 202894895 62951154 200350302 122131613 739738334 59361988 438575814 403762638 709862031 204041852 63906574 667826926 734639775 978328910 467206369 121740754 291237068 797316834 207156761 935029490 757502638 752653120 690947652 830754078 798103163 55187893 276483549 687509305 264763026 531539174 66970559 828283050 918332100 665593662 800777323 119908123 65433287 880412637 580425670 693682647 181271197 473265600 914549403 153029630 175336640 340457941 243549976 284395015 945542098 803177406 909414111 16884757 9690932 841656005 278741039 670651342 838660532 909923076 613094288 190038063 520976702 149823558 953862899 174216598 426464172 134123622 902158950 797745277 850628365 983762231 527812544 269771480 277819498 193456980 130591027 551310792 217320487 660087198 796237294 694595604 415770097 756809485 554277255 632856560 4615620 82114575 402504348 483732821 308296511 904543868 411956594 174392032 665157961 591657673 730199979 520461861 705810923 139330538 785604290 746433756 368466608 850229521 916107871 319841791 987938783 45591121 543742762 35006220 173351610 28496508 706790558 944137905 680700331 727278853 263819827 416879466 86681047 454723732 896539337 428862908 963706936 516105831 184406068 542839632 495873635 702569314 433982559 592507762 690173753 555080431 763628869 546717571 651760749 453898176 151820595 657067164 543503616 140507151 722051462 244441988 462313176 203063801 151718084 729005731 212399433 459190017 779472710 982189752 386134866 483992284 79449761 892839884 490265051 706841520 2952253 510252675 763878882 354284720 538618313 296562911 652300710 613077455 472498972 220239361 82943868 389523290 818180548 794367578 503857077 106423480 304521568 451187576 302509724 845321594 129598378 542031530 353953312 645737110 842022761 246231336 633894539 101114192 973468238 425595188 669185778 621520025 866549044 152985865 883788472 945718268 940015566 250843266 596392949 731663378 905210747 958082036 924014756 967252087 202635842 472640423 470367473 447369517 21307116 975659769 451283292 818081075 869519838 893790749 604796403 795144876 42471502 21507331 545330330 477971429 700164928 41197477 787780067 854752845 139192573 57134828 707767403 235499639 1466341 391121476 683634990 546261784 31001027 800284076 451242142 922017334 161913954 938718412 881667511 544921620 816313283 482333690 748364998 53731052 582457990 537226453 963357739 190105948 119688604 849776997 544256223 817678348 640287575 719028828 420298313 572912639 935894986 884470719 856625351 370860222 192764688 283323514 372982718 920101104 653474342 235262910 491155364 577102700 975254860 853227144 158376795 104436043 6710622 600440682 197142205 583753887 605126008 117186372 590465216 338772399 91003740 626395057 403584058 646182096 492179366 550262095 385187964 39112766 652219536 312792885 790600809 287174719 311466841 498336340 44142643 818124617 830806483 301497905 693646837 208202404 962349464 16718524 206997681 764804548 965950001 690832294 739549380 460947117 418360219 488840875 783804341 529085204 471952113 65627060 895774878 57744485 818538697 66477949 912423742 705542602 307620069 97016086 189849333 298222677 777346819 588533808 408362842 894318258 723253291 212635606 655892180 607474891 276764188 606683886 858168177 402908487 571518470 61015929 364263382 844742904 566163106 731671676 489723505 946491048 416422834 295168764 175986652 837294390 762126674 434286673 158319041 276494533 278882448 599368129 358795093 417184443 887601755 969299435 867994212 297582519 505243754 607979322 478589553 934572626 309806164 820763506 703469562 520757531 351852112 700494630 929126626 172997805 48989121 622532627 308288925 263020151 295291045 980100258 993447662 138919240 444470484 175318017 379569432 649163633 926071453 357274397 148878212 225954450 650533808 269924266 714148226 493336853 946284889 356806255 460667460 185855306 457766575 265952235 221662763 808603385 762248844 729131077 650567133 855334571 159585327 493858329 732005026 193464762 735067970 754839147 978305639 576662097 504346647 56280542 100429766 638491821 148097514 422437475 497831335 765331929 540448784 919755262 540361431 995845976 352298828 211004908 93042423 268692304 517137343 936769922 150972256 861333586 663219294 162749669 296486223 916393817 536700067 871732828 80623073 83153711 988362269 719635176 192561871 60697262 31823039 992563950 384187435 6146761 342069832 862766393 452118020 150965732 639363464 829043041 965943738 456911242 988136768 813049363 838399629 534845425 682498206 141969801 441453568 634186921 879891134 849063740 343523539 132109898 244041685 935084215 13377024 823733771 155915122 255479571 574005100 514446824 395925313 607255803 997813445 840253315 797119032 456897568 696708134 792281982 290971069 489320337 710979533 142191342 896746286 439752997 462561336 813198344 307802423 368524472 266928282 531155146 618366711 284306418 78949356 592907056 223137530 714282015 498668994 326994200 364963688 306911305 116813324 755114211 95686198 158326286 600737022 136143576 650240461 429640687 498970131 396272789 322459592 203442711 629521418 20912832 954948334 57691363 686876852 411279824 798729262 810588995 799746458 834615354 226482527 582016642 785234080 74907790 511631247 190255870 930512039 205095897 972299988 11361452 276200818 676528372 127262336 840451387 613362818 459257111 99172375 840971710 597926324 211101330 510442871 489085371 656189472 81780997 574462752 290964450 461890061 140356460 41173564 222697680 926198933 394900686 465788338 587468498 90136041 859455725 868946690 57371108 963795593 207058656 716625345 668907629 31078353 705829454 41181913 118787690 250201646 344641719 454795896 601059163 638227895 964076800 902788162 547630613 432952246 183475950 126148134 17659399 988240064 119746167 724512513 235064072 650671600 856520741 881788938 565503405 780607735 743428862 884866705 799714326 527226001 913322406 575871781 212261471 155253663 517257798 145330196 482721530 720819491 648685000 261077996 131108059 978661098 190896741 318895340 678833279 934600755 452915867 715293321 111883408 608518171 634193943 757891780 982752610 666429744 44565257 439019892 304462765 967288637 81398814 361935159 969336461 523833048 75986450 247015530 45170851 416345864 340965854 184530772 892901556 768681652 855872054 941057233 287489927 722743800 931308645 55918738 696810310 469251964 42831580 120664665 256873569 893173126 776043537 747361233 243788890 46374871 740730533 583752798 507780093 169935133 357741644 880253081 66126436 306391109 601180042 845248289 833931581 309885373 499007329 974970409 258542374 139279458 264628223 232607699 358241895 102490358 67254482 76501017 723764456 298234893 81758720 934049650 744202090 374053347 560601113 116631302 804279541 486278705 785687059 617636244 993314450 168958443 811849510 442981251 167294271 594329520 771647295 772581624 221785004 930267161 254666389 7015993 26120906 180668862 737290133 423534993 490282295 629455179 833655706 27802103 906902293 73239354 435914655 337096263 675059620 862328454 21904019 889943178 984138693 667227045 327283003 970185075 138828177 285804475 252980158 979612390 756439680 723247417 381215430 730914857 212634839 871698889 481486803 416338368 785038699 715070333 908666272 766047109 851001845 395584749 929183553 265738725 25367513 275581090 563140296 419849582 485142850 545695064 886723565 78769082 937944104 907945538 863764111 190370223 254931890 595083406 761093191 830820556 298719570 524265817 815451169 327280640 615880052 801253101 63357447 453671327 989934074 492076430 517937731 751714164 37346844 623968692 866837291 556825523 874204413 797709417 833577705 823679812 968871839 843549029 545646853 499858977 143745997 362763653 914028742 593053046 533337327 667667598 213978991 405879374 924164520 632215446 619323271 4864576 733160113 543757399 955224761 108228580 540664080 842625608 151806168 22991931 408522461 262806676 308132299 635438252 165500895 189033809 765676713 16410035 984062370 203074161 462247965 256427170 525633348 660654808 197427880 231729233 174217817 19119492 430357764 236962046 449122453 140842363 364430130 867030787 671668380 672225260 44686716 776619480 115969649 385771788 504117432 893764297 743690332 15206971 416732594 371287668 351421030 163197671 743356715 142063880 269977344 279654014 895654428 225413344 130705503 589972903 976200516 217304113 683110158 217826152 339887948 381752427 460714359 406121067 958430033 717022029 924297872 901148944 528465416 981702857 84857936 426776849 812294446 696510478 400951604 954699518 826438045 641629694 111298101 919526700 966097161 895932816 30713479 33738013 169359792 81770322 907370735 481070452 825545377 9057766 83042380 534938410 456689953 110139109 572893875 520411673 727447715 388686745 679073193 991834208 57671046 791591260 365053161 82358110 622688022 623890729 865968281 125885289 334567657 349272690 243026684 388155593 7498074 857814906 333214554 579808642 914609480 649943185 139068740 539390569 39944780 647098158 503717592 687318422 433515274 412718863 866447630 530158055 495820284 241476797 656664369 232989920 894765297 240371940 308222966 364225556 651127219 387594058 889119902 947766541 930553791 358015510 723032764 640542258 475467249 316535395 649405992 547262480 599547641 933696743 46923388 262846067 163045451 250908669 155413999 564153603 28208109 575136368 617791177 919217526 704507218 648151188 91322484 120944640 316435273 573170153 98724199 310876231 130732343 202682544 350835287 18820872 434200364 740283016 183335423 71291022 339348952 217474221 405579706 697298766 501723862 496552411 25422957 385149016 119023551 826750338 865037348 451670242 551853793 854252792 559308097 34736341 740687405 218270221 349212356 948162341 781537200 815793267 52472607 84900108 873401093 217900056 153782084 6324180 252819843 64427515 629219256 354602671 264317460 312697080 735778593 896804771 699996471 13866999 824238000 130768597 952684716 31832412 356603798 380379576 497201120 997118838 205729372 91188778 253789970 733304931 859248302 862534630 295101232 479167256 389262858 617443167 860381455 2897330 921814914 213802417 793192789 888419372 962702406 276768866 806508377 161926217 157053189 478347563 724726348 696429552 440758518 311908070 569319617 654902423 732778159 131599965 687193614 135099185 659962433 881146936 435729155 540746314 107900391 849062013 439881704 474134301 875736612 760475637 780947751 881519282 786581017 349361089 877672928 293809610 929209882 234964232 612578800 600213189 532342887 371834725 37559474 255829339 124138132 146963432 928800230 216229201 777296749 825851712 393210089 913909458 907993450 208816480 415949783 488792612 348203285 758352453 175572500 1228176 46848406 126660640 491411807 518404246 885550558 588667115 754329807 446864279 86500249 340327002 230974557 361164271 690629530 193466953 650697546 18704532 529248191 768328373 469068216 406080296 245792861 561141437 237032199 964252204 171274387 302705958 679800151 741528600 236725542 687261449 675188805 100673645 522692934 46279258 12598635 326544065 965453234 388602464 847461464 859707582 154153802 105527763 711895844 628747251 457680862 392453812 563052457 965441353 31473215 690555575 982009533 459794461 925887926 874787642 869021627 705437256 146351707 857497319 588749844 113495813 54390102 140774527 685664137 191394720 659432442 919778446 963519273 456516027 60315528 540397310 947809748 601195240 321186303 356515355 119302717 232025390 798287153 460671674 110160665 675830547 234488761 977414182 342383631 392040797 846468068 237116643 899737529 387423369 518960642 762626890 64631219 233609895 736536074 864735835 394373574 554395376 188157169 171405439 671892557 595230101 475879992 809244123 789905548 794002343 93496496 659816890 237530522 364106146 288325612 183394867 550230479 954149313 18746040 881606419 845994035 740537470 209799506 254923654 730414674 14115859 12456348 656275547 56312755 766869388 713181119 901687880 362141252 154977182 433686972 798823914 949613984 467847081 904483560 835834680 164210286 389760348 72207567 625093711 511256431 659339118 120825823 818554081 708794932 683146597 450823746 858207968 72593567 4799913 717514314 348105432 564025257 21856317 322229353 937728845 140712831 642663218 673967487 467141430 86749574 657944425 544653865 646836172 34916861 531762562 791560988 889149456 18344949 832277694 229427665 565606750 656132868 196778377 956315146 766094224 404845673 246499286 992704190 901673401 97629269 172293756 582544204 675035989 304849799 999561833 111450422 126438751 931175479 17464453 762284095 69749813 269247744 265262032 210389771 730842863 558902630 87640220 824269696 811544217 272199190 172535256 314011502 246766732 694509411 827936364 321726594 516327714 91964053 253115532 244647977 643509875 132748040 1424343 399066182 792482135 28739566 15250057 63449294 663648663 420458171 709294203 45372264 796638035 929513607 616977383 763358666 243604192 590464142 789978575 124416633 472125800 196912295 326247621 886919917 471534950 853970594 446794425 368518723 135473382 114641091 351742260 886793063 876341877 83347377 644297559 385052348 182015208 727945501 875580863 825604276 264299354 695174828 831171649 603868879 198992290 608148301 930659588 865376488 347637963 38621701 957452906 853997919 867598766 47083342 45169405 90376239 449367608 356170819 183291329 342186070 171420392 143810469 121477538 847969120 644885012 700567254 667110999 967485133 522134146 354616517 369508234 346434 700812428 536665922 370207014 433595195 674822186 127936962 670674999 822027748 7940716 210079408 776953977 452170511 348204149 550750777 12009118 206853176 116707159 357015250 374076032 115330579 49656825 562989145 259871153 14032323 875569768 258011718 212667856 379378812 966596166 801960995 619662421 577351572 7993643 576549461 88227472 825100925 542839998 790960114 5135441 59424915 230106336 240052461 503697723 796416603 98919019 266874732 895576518 116051649 207936042 638580935 59078182 872178437 639702165 646920984 931948436 930646846 741073957 203438447 710428335 594401571 803656258 929083338 294376212 825919394 441561337 261768414 987651662 384196013 906401754 231711475 119744834 717874199 612363326 517633113 749888714 698961071 366486894 610873931 755762918 495506540 73748355 437212518 988348346 979422086 22508325 305302648 767372719 797278514 799019904 394604087 120818646 233236066 140718483 352580636 350930973 833591408 717568631 293476559 278210632 718101078 382961857 358625562 749134260 775776903 378211923 772205927 732833811 578605748 430571314 239704825 201150827 66701751 316475126 741655897 178738212 54188665 532245016 801129290 653054089 227773697 330164249 445158697 82567333 143800047 956481332 657127038 785205071 450300832 535673838 608910200 528353709 362094563 229770913 21872014 902260372 624450225 869290118 77640897 437307024 483448330 963510402 741833057 340904022 670811264 738024479 295906638 213567983 447229535 899867814 511227463 482694714 393346406 407473923 502571811 332589456 425451928 334319315 69129293 860001629 935847783 587136784 832907104 621775400 366706459 138882350 544228301 315774717 688846782 821033322 279451602 560520308 488375751 221563090 876004275 437208345 760315895 370744425 413468101 639434253 377871947 883413515 179570390 976937122 88065367 820203627 774348325 235464971 432559306 192467021 340325269 139399911 421325828 668546201 577266906 285281953 587209391 283276622 702604648 386144726 210450426 401912374 690451428 95485231 388002527 498818947 239970464 981129277 330478650 223913915 670262040 779400917 105669132 477119004 395116491 480196516 581851322 284927121 629317678 984242573 637670119 122932972 671202576 33807630 51910374 664306291 373491033 479372004 854494933 59468265 27192880 716901457 960437116 938759565 46839451 528173912 531452154 324739726 365236479 425919023 177148974 873415657 583096512 380529023 566524389 364685927 455220633 765630586 280299510 508784420 72445471 660087054 424431264 446481908 50837969 384912670 344669622 596798844 245143463 160172618 122252431 183249657 708054971 979771182 237756263 128453102 856860271 716969002 32637138 329306199 770159274 503629331 589151960 447364695 439430165 945331366 75375292 681787135 942274031 657369939 201311160 307969189 274949017 532933184 929272212 956985020 924283653 453171185 61026887 232778114 166001065 272176279 330883859 90125773 664338343 212008208 693908451 726537850 345975527 641798218 600265121 819793463 585308974 575242298 932107222 291805047 254136167 21090843 649247776 746821332 744074218 337705996 313561175 222747057 702317514 784959671 177857061 503738972 851468277 425542221 763084423 815212935 834431524 925599771 316506087 575308403 106111355 993684262 139415164 813743859 902919373 7180905 972149901 135734273 674970527 306873539 525274640 982417977 922479224 19390861 843513060 127869954 502348584 948799298 855245543 347498486 952648738 183218080 741970223 780101976 369600250 92226417 313086079 956715574 769440963 823813215 172320329 583169492 121724169 331742044 534482264 630283623 719771665 419393227 689036403 602930712 495195630 393113380 420445026 982041871 959998191 362242362 810455830 649271897 548591048 255432910 382185747 955067656 612678544 551523718 615759525 987514082 740203823 704134390 827333414 109352942 267378272 107073505 978710199 894686117 299000590 566587871 751480873 312581326 756056116 720675944 462089285 35094356 351890330 204313945 794362775 251842099 286570978 201844348 767106518 831492889 436415674 317325068 701787273 188529855 483109582 789179516 881716180 21094369 97894803 50948487 146814908 905085644 261821780 24571847 367641277 682370750 149158889 381391311 997705341 479469373 373205377 124862028 564952166 238720632 535280718 803279001 413229452 799214970 909613380 250437585 68534827 982591816 227996258 600376735 942128445 780079080 719064779 363183837 188281280 89762145 939024640 462420932 811251931 367380602 787649156 404951566 173962994 926117219 519059102 831937449 804956041 234840630 809848361 814758287 751469264 872065902 622036581 17459030 6139697 46080825 452544932 64005489 131741852 553289435 679996152 669216944 213643920 922867429 860934063 526677822 862809131 57188820 51737042 819387647 52674438 416754754 187018240 156288669 45603929 274283038 401301006 582200315 507656613 739264448 195252216 271451598 140839599 941697901 361489371 142670873 271187096 814754890 446331288 630805020 288644769 947333706 606144922 716726396 885238807 347548785 205496827 712198718 366788314 418540478 786815260 104741357 466504188 205555396 453327558 835938704 851947115 290998239 995488858 274174488 321444883 790152666 446681102 715874139 825788322 618648407 617300475 178480129 394271780 235617173 236158397 135071647 736208991 951073036 876846642 690339333 97974143 131422586 765130426 237062517 629095978 70516623 978113442 460062601 753121094 176087724 332981365 823226270 747005410 432682663 540165024 567551072 613145129 644619850 793718825 657324228 472077830 65763371 372883024 740715877 905651347 85216097 731202382 629733310 286474452 727905543 876976833 701625724 28641169 762954895 923879450 304313071 249775691 996306922 428997802 715085512 569076183 873768785 237748612 751078604 638653874 381706131 788058938 620933189 937744009 544393032 859772931 769720063 699635412 228772619 331309391 581548219 301717230 844019866 451969070 724947216 467701089 599101333 589793716 255078957 595427896 996597309 354301304 263613053 389741746 485425930 713549448 949238792 93718758 346793495 57234464 47297529 340929460 650961236 594202524 727019364 249112395 183685123 864125943 509029836 795019200 267212741 201280948 395705726 396624503 884210304 881036920 557969774 691726175 613483060 983132107 635577836 681184375 2152387 335192979 15291481 846623577 896566019 395170974 555269364 308466443 107025488 706487565 909288517 504332688 374448042 385708023 483644296 982507056 382219724 161607117 578076917 360788543 704475176 473476575 197889577 224725130 663333272 228388408 152811142 793196946 779384576 325632427 632468854 545642961 26646435 326187512 983570295 554349486 24196317 998421258 505480157 881380981 94294211 567594533 760315027 77629257 832536334 346469323 728798767 724200811 459497742 436136435 726399483 530422233 288102107 935195087 192377877 246215592 498695289 810438864 958141759 989320488 125998099 633434313 297521040 226612853 712476456 249015500 148537414 907563005 412009667 117249500 118571925 557596044 84123642 565460678 908574414 489064790 524748061 64761591 842053931 681767989 557428199 799515210 28948842 875350080 504405562 836985009 852452066 706159386 394783748 150777854 482345085 842413361 707744075 296957494 703746904 732734343 755369464 370245571 4381474 560250674 500058534 442085592 728927611 360055622 197908276 283560425 267116020 58571661 551693274 886628395 293805602 496906937 931204698 106007229 410976131 159309588 833324610 449774065 689695415 264477586 374718705 781705171 973195623 670757898 586694231 576163607 231653261 527405063 928936522 840711033 660507549 607951374 447050494 508903439 559055261 944071284 538967421 274585991 956548942 160755327 247099274 470356921 849403201 53963222 528221080 444783163 942922310 95718050 384957926 737680956 999996867 896537435 953297533 691602676 751079038 753479171 892164512 187045685 888176117 830839601 258051812 296433724 946039897 745022532 187317065 130803511 539917675 33251075 19303508 434128155 724636324 545215253 779029560 338890123 774026246 405266322 892437150 7687517 893578142 320869060 706553001 415345994 609912541 446866121 144119827 809621748 813531043 932563395 29053007 441063381 339476346 538107358 941455550 764113666 201558166 869823963 529447136 79820273 130455239 49885414 180033334 588539027 540999546 451356127 541965088 377997351 402853934 655555977 501882415 680004029 65337550 721405036 937171078 775591835 712364060 756473209 885960499 556349068 757841444 665206019 501406251 698965578 729937790 192154814 154875288 493186146 462258003 104004623 767714214 211306794 529003538 79365055 971313871 655509812 497741576 35765443 235212286 895346867 90141837 449248350 957825671 985116662 872235677 300002518 591514821 773115860 472990383 157515084 419015422 401369063 210380040 796960809 148543683 936411979 49457277 171317776 970264751 47859206 422495370 1737393 6524391 659321416 443020584 438891568 723779782 119305810 113247615 100201099 954964464 631679851 591915992 326165243 183670120 486880461 33603718 778754058 256503386 609779537 158108671 667912703 446804533 826104741 654009486 835689104 186373230 335627308 637116434 546646199 701947508 101036625 464321490 774358678 816573335 877208528 110086286 504503099 494873039 532173413 997210654 191711552 418061332 933402174 364843757 56012910 691512524 434981874 858059688 382006777 909709353 743057019 306725792 807793021 289462752 85164353 685240886 715620309 738110997 146952809 453018309 837704084 422895049 85991911 557797555 277487256 252860372 812690593 699190626 114945577 229858575 930157549 69068597 177857182 416492309 306726846 507345111 556793977 85355660 562816360 950979743 249313321 831627040 235128487 824237609 580531179 168975704 308092803 257754007 249310373 44179287 908754002 637872691 29339738 182895946 387792806 912274616 682211245 116225698 439328649 228292289 352082542 332086329 608195606 849546171 437212086 571864302 252055427 979870810 386251290 488657963 248647964 356197748 984234659 949606499 467105318 51037817 181405274 899384049 592854992 978564806 523554613 602421023 668099975 825044286 974817789 49270241 176366404 274325978 141464992 804332763 184770269 409419774 551627378 729104504 910914055 154404156 957540255 183464228 742520018 734417499 376874808 929095796 591055517 875606238 610622970 361892105 621988616 134391495 277032149 170860734 155308099 262837827 448858355 439341669 296116882 212796024 362395103 441063191 391782437 144265030 732778498 820397027 859526748 359405673 923880210 700702078 97342693 84094881 75963124 872641453 579186907 774506324 272771609 564259058 942294345 736492851 936110174 74995063 505339071 681007974 762045159 894549491 533084096 107725685 532633812 747833290 830479467 492484972 858569655 106936135 996003998 311086878 113494342 671466122 319694336 700765187 818835758 296279919 770160606 680437842 528922765 274877190 348899341 206394063 931702624 616166512 866729675 132906300 934771294 988955693 730885139 865523312 623969630 376448055 228725806 442610445 947453437 741797698 920790822 617028341 104669970 497382906 168074250 92907854 661157135 698805693 487330766 632526908 154867574 483589382 110885841 810050809 634434510 299252351 989785178 315128295 426481415 947188768 612971058 100663205 132097866 90401375 153959265 968881941 694730890 101342136 408452707 740314089 956526701 797578541 106965346 653342280 223872771 477714395 139198377 561505643 126407769 885799392 553813388 63567097 955772350 660075320 793143732 395891645 834183834 62311495 756027519 564812247 770091142 323141053 952093845 296305520 412033190 642845469 896319835 81706056 188101756 437459857 226348138 442359367 70002533 486747739 273322979 509743344 408355963 718792135 303753653 265070963 220648653 631914594 542581569 616706714 561732247 180015167 108974995 798764409 280147237 851167572 658749502 178117392 992622100 790295058 591442571 4748850 843503692 856061839 775239787 241292317 38875555 626147863 806247591 844977175 94881594 122186920 802578347 781666784 918846621 236717131 328938394 911404234 942042428 994399789 467627362 380622083 727990482 752607278 944795563 132652277 7677820 679331300 18780480 551154698 352248125 83936439 181233377 770597272 173295319 843939002 743019069 580004058 451276265 165132486 631339625 458507103 168804070 977123155 758073573 192970258 160166133 285502382 799328108 925043606 364368782 112727872 164068851 235673105 210928437 52229187 880805016 354167864 574746694 665341003 28821752 367984359 663823322 971954274 343542108 304056754 407033067 213339013 491113268 925359065 549831806 282514604 928040418 260328137 89486620 43414951 205742419 541450205 926962484 154404296 666708603 614724140 368493318 527077544 72350344 487146759 380569306 615335334 896693563 147830039 236790038 145849093 592243521 173782531 624698171 908910711 574038750 443987360 65622444 641176528 418986129 884756915 85534561 422543038 481977034 310358749 182520184 755743704 242471201 58802145 305999410 688419756 613805705 193408586 936876605 133309023 919235006 828047464 467236004 526302479 300351300 658413898 429878543 33644847 686188009 367533278 188945207 707841521 374173477 887398623 991276458 722739455 245221705 422670592 386569364 444042942 901673911 341833566 384554683 318201636 505638923 121813232 10430004 728757884 102458164 991720332 410374334 674417146 401202632 685942011 779733024 846626472 401837350 923397925 191943837 13098150 385339897 627684354 116759925 442456524 341407676 521733100 113660246 305726536 249771650 842439566 231474229 42776294 7849211 17503828 98300068 22978362 510061287 403007158 306413678 969151495 295221598 845252297 241942448 679618614 306782620 185760593 628429588 348442035 937204389 536399259 467475968 649963953 345907719 754834389 900329933 45794561 899660282 964219229 747884450 669714903 905933904 173339949 762852671 964802044 649351011 93283629 719539505 543084939 816231691 920354772 802800656 27010475 298539303 719005061 464585745 921524520 817112609 675508493 255811326 873289351 450684884 4625966 643443272 747353295 876525100 288161535 60577722 500388072 238458178 771224036 915072714 346078620 509979187 458385251 493068966 811044323 815918489 743256600 923598018 451868906 605042627 667750319 347627822 844024390 525841589 896479587 870552358 746408927 621167592 110688016 527096703 334565939 468595074 970592963 988220155 517852412 918274895 51019999 79241649 158899841 722274102 574923385 332366062 958569330 776099515 680239058 729706414 356692113 299878050 820172289 872495774 721873352 874780396 567361234 833620625 477909004 808104521 863067055 120314819 256094670 151022458 81168868 913768807 510873554 881768446 939209228 642108344 940804475 735753277 166389943 54889337 692307062 743206997 947321934 887762668 697429862 741884489 80340193 618761372 616338327 232695018 751960547 513581417 164414100 449409680 184631325 622193236 875246585 332657783 365635009 903117253 262611331 359904086 800037542 544268752 482733107 109773715 763478030 263259636 33069572 741055957 478543634 951994238 261317561 102825612 649838636 977653587 732521508 456197572 225158467 704956411 797949702 734898508 687620837 896782487 238637788 419076075 567415203 776787082 851941145 236595804 847322396 573667389 624978291 86965326 592601548 900344256 840621919 20805754 806959362 899453759 822458080 556669726 876859003 339872993 124121418 782170792 845690170 558012668 832201487 147418979 450194880 807705880 123222923 940081187 445146807 369323234 304578553 450722824 866705762 619542613 842533456 902627112 581157141 63383763 588895957 841283219 258130288 658313541 79547979 659913967 356711627 801870336 281347581 734433235 619259469 980452739 478154467 523482511 935008095 125932476 388961354 92346321 467278869 246201595 441482380 620914472 669246861 998688962 477569208 192323978 351553806 647643165 669374197 297858850 332530845 638516046 759815391 173846237 249293701 445955061 287761943 413937734 111496868 550356381 853574624 493336256 612705768 373647861 610813929 922665451 104284834 387551873 923754011 343670744 509051000 40658862 79977255 990739622 192417607 704994609 437588193 172172791 861702653 214412627 208190760 897475079 515650606 273444663 151138143 935150523 309665145 714219075 135480651 482655866 969183757 755058353 114426489 179821255 982220663 170887668 896064128 863938593 984477151 891833913 884909028 581156635 278410549 451834836 429989353 805291371 924174256 611478323 83304488 194165163 699174057 732479617 775482800 102463539 157315740 647123342 571036396 301851767 906795579 499302336 382415259 904140219 357022760 361265798 538616934 323944056 199787336 842448931 842748443 185303932 875776727 7374074 617828264 83936043 452321394 666886769 486750331 882972887 973210243 688429135 586645560 598813711 724429138 474860950 328639090 958453681 945471103 810238978 586143057 254399216 486969188 217898100 842394588 940642911 637856512 262696627 332267443 250063961 884343261 585253343 945860779 151293301 714690269 607871896 500572073 968123371 241598058 55984147 596638181 104889351 365066387 615138039 220828859 814321846 584047618 482477330 65485246 859112970 932152784 103693484 391492031 603341183 140376057 547447730 212349946 546906887 439352856 500403648 286227026 446569158 834071285 813659492 696252850 176047869 688924412 829282278 745126006 527608539 90465080 271022974 348454717 532469623 562645118 678589572 722691931 109634261 955298318 41714822 111751189 18822004 610301372 869216009 193697931 157639394 663364197 855114457 911385958 585123323 655785216 255871271 348766887 131655008 210822487 816367712 833128041 483595625 331115684 21565703 787067187 601730994 171378427 813455906 872243708 607309336 964323937 860086779 917430365 241131060 158928388 157437866 448504594 308526819 883752883 947473788 403745011 735589781 49282883 16063794 681567783 561258356 563369130 928563756 23695366 35946900 596813289 645022033 34101400 475924708 890773749 195292265 826212078 105771204 113144881 293715697 63790465 193709372 45127383 908664797 4116442 85528901 134981956 86704098 344571469 569567051 179222906 937268239 71498111 270576560 223956593 409646239 209665946 237363521 889608606 893619759 74220210 191671013 417225644 668780507 352510698 735918020 375910355 175284026 42261581 995868846 584632026 820917463 824462264 661324949 544593486 765779760 971741397 748118515 469628945 785934197 307501906 198843103 495176399 834915905 978607027 173178407 239617233 400279255 818513996 527672586 273666381 150779097 746414576 620072500 807225409 794092040 146461124 211817410 344162668 538383033 768463731 956392368 264771797 975269966 130995842 377268033 347293475 300858844 661842088 762710076 451533893 724903638 715898905 48311460 758216406 875454425 964679831 436367323 407390717 655738445 977355144 517809006 582126992 554256932 87311012 335703679 679733387 176353153 748994445 740499830 896866028 713349801 59181176 853880914 767430973 119972219 576318312 229478309 232390857 354205178 341404077 207123463 771100145 916924957 42374516 754846424 982259320 966797640 574217531 322876594 168853165 31435355 957457908 825105080 428781228 577866729 33889273 595040637 172539216 58120811 387545692 524875490 473822948 725472348 215420809 912783033 930532576 953695895 862428422 200607912 171328734 431194607 372800942 84588436 423697329 137011112 940350570 933221704 163382512 469641321 442589339 705247134 773840941 359693893 884256351 865757905 654395647 464177710 291382667 845395493 233488436 146059221 414737845 644430305 964629433 734993309 779084991 688643053 595078580 938916243 238861622 232825566 901533390 634292054 886666054 488550492 33617175 25316170 501918764 460743568 720114766 492795604 398117958 774934614 920740690 240833072 684063443 647407466 88278148 607007270 123983239 970588461 871076623 449508606 868775331 225519607 191548279 430889050 834031554 649501622 270317343 856252155 143125742 602059240 607702522 175443300 863680948 678873553 795486894 935987175 309152060 582467706 227249608 962740061 284152427 317871445 471721111 852688427 251448110 992787684 974180344 451945505 418313940 777030008 148669978 501421606 220521374 354700653 180721816 7202887 439149259 363252772 459110362 788713271 614676736 133278482 11777852 69585744 748156909 210099553 484775990 9210931 434741628 46817351 474490641 117861365 419794792 750789181 968016042 661117731 368092793 291442713 327326899 12454510 68176551 220340646 651672525 130637247 346826745 380707299 364427694 747495682 277603812 578265634 937268759 57804273 629867624 295519447 521189686 939863254 399088036 385686445 668587740 430326223 431209536 151025413 926785563 641229030 273984132 40094087 63124263 10874481 328622624 613239585 822208832 147438229 369313572 118407999 69727734 830238430 262101105 540332129 329108007 736256968 901988953 878064405 52199080 558214193 153289680 316596188 196655744 518239921 482289817 227066261 22570446 587059131 900288361 269677271 959117594 2732826 108376066 677250053 123871579 779788257 919229475 600135162 918371060 373425127 329846525 200073383 950526415 620369474 527490383 537745612 446676678 973554245 995973363 634449513 951704240 941102508 114171028 892576691 195936303 244790520 920116514 193433410 977170125 223927028 314504611 134867942 847656513 848688899 640160172 798548673 351882183 591777814 608413388 726429465 351538597 829289466 363337022 147568664 12404236 964613759 463195004 879727489 15261484 960154444 58052107 791802115 515446971 563470759 969549754 457981894 376432886 449510336 178547463 402701602 773064803 602626172 931538606 890630207 459787167 683219347 539508741 469388635 291689592 967551378 921618742 104099490 486647657 906478192 493537512 56335724 722627253 319091255 738220934 918851843 343616073 748723592 998134897 736059884 160992584 641267864 617518919 741764802 808247821 199371985 464890571 397477733 675859250 24448649 826698231 188058686 525863219 377417124 975166369 319471131 359583353 341184453 404749556 257424616 500120005 918785154 351847157 336146871 615957308 545891223 941771242 131862685 464006345 996348965 982866429 159433224 31604431 445733659 735501342 430190567 524088294 432316439 719236065 677292289 416486595 351795927 174480815 112855908 790772869 643585589 522864259 841652859 138461966 10239760 17382770 799125936 213106829 58460233 431420619 615619386 563338844 936398988 755126618 648976859 668444434 169425315 711321974 371062119 634536829 86682801 367763039 809688682 923532739 406687486 944046510 661526063 854819198 606959521 790518216 752151634 934447775 587035727 721950608 367486577 950781036 831656986 113125268 207429599 106174289 362875395 905361902 158172719 315051788 783239924 561363576 283302182 771280821 534331569 289221291 438042510 417574129 731325208 157184737 955349606 86290657 830181857 617759079 641643616 643105307 840280249 961879857 510154764 148726238 132065939 764523390 361835874 665176862 326486100 465643797 517607961 175596828 344976474 605231598 64945858 337729462 125548843 431963178 714530182 121966877 954989144 327117603 538425738 327011317 522541653 689493523 608814163 962827683 102067529 936575935 285742467 924333740 7296580 90352925 886418540 105820904 618393495 608455180 735063287 133859668 907497750 342728631 979920892 577888380 121946651 188411721 637978677 435520387 963675329 176471647 232108240 252283672 484226221 165389455 35374198 741046113 854288431 645426480 456420988 675925982 837095176 138169876 750996716 561521345 96307435 730135720 612831274 82022737 935985949 638266442 677065895 747807713 589650392 947636289 264845944 441961947 176332734 625922578 99710287 221947621 171431797 911799190 525510590 766130237 489195714 364194284 223354554 141053192 745222794 253835407 232758139 881425113 553086359 498469710 444035035 372399964 257445765 31230029 584629211 829867317 804802466 261002036 275737139 900764618 834145484 883580818 291697257 747778753 913558811 3444161 331892858 172078426 49007106 568472768 48970894 234236804 960977255 644304994 185764989 733711573 753864284 3973255 341995740 705313666 222117987 604115195 873162983 292476619 317883177 367228427 955857356 729840086 98718812 955822392 571217075 745208418 937191276 347882202 769407606 413352012 601062424 370766143 442859685 665415576 206798970 196060729 950477076 717890105 520844427 616501616 133041099 262445022 901675423 568070416 60742865 391235964 811635547 521642411 554323861 593968843 799876542 267936068 466385016 559616230 876629788 51562863 708573951 347223029 301844959 148343808 701451203 449629285 648439879 37812804 28121289 347978446 720919778 843226748 194410147 753754432 441069818 600607038 195972415 600435233 254550525 770867083 611950353 456073356 691380967 786209459 368437854 419981809 978380889 397441324 998457029 137594840 802519236 44903924 908713370 225012224 983730016 256888275 131087650 899303595 489051305 114288225 699810412 66688783 417190480 962797583 578936826 699387148 206549372 730152504 622417102 880490017 385196142 541423716 187441979 392396880 521005076 698875661 955424819 505236271 488151555 90910195 855569267 545206117 29649502 774690435 891401279 250677533 911646317 335615146 938337220 307607286 138242169 728683791 795997563 188577781 566460479 969675357 451444825 968953329 438412956 32197616 201468025 812560542 318377315 185908079 397306644 246911347 642319597 528969737 341438368 375080689 211988376 198158121 340077678 760585514 781990187 976066086 858266077 732006105 548928515 175305653 37677136 292900784 133064870 584388336 922162076 728816026 460860182 238440786 471509438 768415037 367122565 129128650 457161257 421914494 647483003 856860639 170685019 326083915 797627000 782548302 27595915 546239073 886114080 564929744 465051997 117802389 498353338 378033966 353121182 925906845 749116992 702259180 493443009 151441805 634743079 919059628 387781149 303889366 881863619 804007872 962660363 268902735 360292131 469719168 573215971 419172254 531868745 579955187 310751572 419861119 486374039 353658855 459906790 573894664 637142960 986163568 655245098 504162785 31821039 850937469 437996962 469145521 117500348 469501335 342290090 98031375 92815709 672287787 11210344 835885008 837043316 499870164 84800250 301007585 575726241 862838306 464412127 98611677 603733422 536409730 126281219 41520700 683897092 314413472 498043400 180197020 510213942 409916650 861289231 878432291 321357740 165994907 953561447 846122959 318109894 708113183 306259953 148087324 401771067 375223468 11536222 434681773 744932125 774443760 847020884 667111097 468223554 952916393 126883478 599725140 390269951 589786749 739850118 837572583 401355613 78965429 988601707 916564650 785642874 66644783 324805431 595341778 303698045 106834190 294382304 230721186 857835163 719276740 272815140 133855038 866811063 22506427 849510933 663079830 290515739 138362959 990936515 266825374 606112162 764367084 668218047 204914796 707676426 607005162 593378768 466371383 591985245 345341159 64902091 417879590 400220288 962958813 86561360 710442109 605494865 382683817 634944751 795581151 850179402 530624515 762774330 187736733 672890831 456447209 803515691 151238469 207427748 836848268 415060376 645041294 40663847 500786841 444220884 951946493 794454721 101212594 446555924 508514633 24821543 71696648 822142107 176089398 550387724 744669816 524427132 204256838 983844541 796649666 488722655 850004366 793069519 560704831 736455460 946207311 932255611 124411867 506356114 758748245 698893882 544338961 324962157 771903973 278967201 152735487 830116362 335686870 378997019 823081609 8122249 168230269 962839443 875984093 413285613 455156882 836818793 940101424 193687522 191123377 555799435 27376826 772725580 640825882 844465041 276071046 25232068 845695064 499640009 955876601 310676504 581375167 8430748 316615102 668090899 602919154 419427758 312508177 749466380 146686518 829364917 34105581 988325503 251795740 470386082 28718676 471107272 528617432 428213884 413321517 625337765 979212917 248668153 749864843 956052779 395459350 900830088 75065965 680540656 443221436 890235398 518800048 708380698 402604836 212521254 2053087 22229948 263430533 395502686 199984631 23299787 334500816 872192912 725238546 849945973 572130149 23998789 738019949 819744490 486605693 782968942 881253684 86255472 281188369 666685859 229056843 502723100 905854176 384821764 874373053 883844483 147361661 221580018 312893254 549907252 598534589 159397848 446521503 90142123 631563983 613593451 824389951 559336706 276960168 595514120 174673675 551800110 495979915 225179132 170760152 814884862 741641664 703872689 189930825 909156891 129029943 567093808 676331 728530477 192928082 902808565 990158333 549171171 493120143 308907753 993291191 752581162 682770299 610971900 447859458 479371742 616463456 310360997 923288415 980154203 63920301 59840768 925542652 193247088 750638081 280279656 130622557 882668884 581738425 996361301 111008032 130015349 252378944 522249138 958126869 247578407 795474843 994681741 36250143 185372949 921970657 869470054 131026408 930238877 680572232 335327030 616092651 743437661 595396154 657138924 140427473 643302976 123232707 152610834 780493514 148850062 758369326 732804968 780941971 934204834 634293628 309032452 264162656 734428744 375075144 454074795 157017590 209525833 395616846 923069674 99673212 281775090 965641148 853134382 88364334 199589295 226829084 250415151 397561191 181002578 44437207 915027694 135181628 891188080 751923012 539141105 30308554 916495244 968426951 372376768 289642908 162527204 180657536 452002556 371962987 974543467 625801921 233954317 391241910 967444519 331976571 159293884 322231646 701202661 817405372 6839832 643175234 279248260 151032822 196631041 593408697 148675501 69916782 592844404 58286929 103612635 293979932 906734296 734515375 448761918 347920643 366098570 663363842 595400136 115725545 667591819 262792332 709792181 469100472 631305776 112094772 582876126 328498442 765025649 344759441 169844608 856684331 158858180 514003613 590453357 856555309 32107985 295905428 269693055 941076414 882858981 515397493 832851146 47633375 275630698 258188921 513646215 142176380 238074227 687464267 666826593 848358570 866078905 699883884 238420784 51280518 832787727 603492296 785910601 222629487 780466610 525840940 598754912 164581415 885721502 582358480 738193804 698801085 239769389 453017435 796673401 838195373 662625005 914021402 37475816 303442051 931544176 606356596 867742973 526513770 925303725 261508769 714402514 644796899 60035494 326479643 999625823 274046204 71253841 873943057 553995106 761213235 802180948 184612502 868933593 911451313 549350071 965107856 889419224 433053439 380137836 614165552 505716063 514592190 980035770 709858928 709448912 447563735 412208605 444860190 355287904 378095071 921271532 890872252 963063591 775581552 509224337 797836673 575556694 299587396 542150240 945524607 625320909 913753267 140797143 100855064 2059749 950087520 644852428 844728206 308270857 87016989 790214407 378176016 782344179 194779480 262783484 45934590 100316762 185861953 1695884 780260685 369438051 644313906 476008295 836451590 3691889 575411740 273262503 462662939 394396456 710557054 127757554 351898735 839704043 89600920 337255424 651919643 895402077 299747420 300720537 394295410 925425494 691020400 341729321 701792056 834920493 129841032 367155078 358904368 118110191 510954912 755812664 375033600 683077567 227822975 457595103 131809397 31597855 319089635 631071169 400592471 628250550 85057875 948181617 423937441 456591082 618246954 61093 677069463 240103518 510389244 676678017 436853443 160342541 255026065 9037190 240316462 33868854 338915181 723290171 989962568 352450721 748247695 39363330 779160050 111903466 918775615 145690650 248434338 967808069 597628639 3665506 281761651 613268621 444244324 648714517 513812897 496211278 30205281 65335625 44736622 519096005 421365183 513773135 464326198 774486336 994544310 355249604 669152128 222743300 483112282 557786059 235799169 493102381 976567083 147138944 593906626 157547812 135412524 115964157 650791360 510799305 31428542 214334017 14398617 449378707 364976406 167688179 954874208 393860453 315345711 645528581 255893557 74334506 643529063 868026470 494027065 588284078 853443264 933536823 153319776 324797463 328921734 661461333 203139720 401139662 995726925 99846843 732431389 376771470 76270815 741552260 406857266 369341060 607123110 957622338 992620413 123152105 73934800 214206756 546196544 528517710 944455969 405987813 943891902 37588184 865474376 996341718 832191477 985398140 232747119 98336634 514280426 283981894 316205347 17594279 134507067 570686140 260775473 45303342 871146084 265691586 204169697 848448561 808161435 950066587 466931932 596188878 126843537 116969897 218641848 625327273 285711533 560556680 13272622 954235036 848667868 537910640 781639397 635124705 609992873 898199732 421359005 19160544 312392970 996007370 844882528 455715373 590637540 2891165 76035232 247780115 9172854 863306904 323987186 533407116 509267273 374478182 247734402 313371342 187735533 991921678 417479955 920100806 2717970 314884589 599197805 93744921 113710389 656629920 474328424 850142021 34594021 463887720 872075106 671636969 502550944 466371633 314497466 462141425 188618350 510035740 500920401 958429765 446094645 768234645 527212167 544276574 116461962 72541519 696305053 983950539 473315215 337237209 63798292 50127016 452014908 233713570 636920234 494588531 863962790 434557160 852992883 642435149 957810136 374065143 174837795 701858314 725665845 912390139 535472048 910944994 627790749 145989878 234072922 646774167 746603515 232019484 175662166 955257882 829102045 10260066 343551829 254976270 42222452 669075079 919814383 318831700 374316462 447596076 68309138 939449963 244984261 274436409 625790145 169279133 352479402 629483249 836839559 695147422 207840446 270593527 603568623 989945690 428469732 431793228 401350213 870544715 464114593 927224611 848685367 218419070 647537760 331355972 313264925 77865586 687869869 848707495 731643130 199103448 487901476 510031580 549476854 501697819 85645159 618318383 439585992 12901893 845684946 101778414 6962140 2645165 274947634 464051014 642274964 557082330 435898278 171584913 495248946 569995026 440513631 212909142 628601804 563829860 689304945 445084484 926694529 248115582 569744689 32985613 436193210 247581674 643559351 800238114 650336221 992677804 504231968 578940225 370116238 764629258 322402599 544907462 115421060 363747255 986315232 570445574 527199052 902500998 612950382 803322059 167408580 225906967 744827453 131577254 778056566 545981347 796878825 217527185 685507511 534026958 749764946 574000819 638927172 33637168 838216874 267821951 896754048 308124141 124131297 745411716 921435605 968922036 383867324 95725421 424364877 142735726 50091952 97197854 591933489 634237177 245795232 399010910 530193020 384945975 943600183 738408169 204929319 38054356 302246439 979069131 435182969 649589713 484493318 682503877 154600584 349055087 592778416 461987544 237126672 872831097 571279196 210447448 752741903 962587470 754922837 695161372 514779858 298707938 997615911 46843292 391734380 705644348 358393968 337019313 284513521 758559687 982532157 824898672 554983943 53903724 967462114 346715255 767624116 274275718 935685049 540316292 497291332 981901837 267098949 820218979 663250819 820578427 829969742 744443935 792620830 572486141 540522770 455118291 612699910 697674218 361157408 953127474 505722491 423986319 846480248 144192263 961055203 714039593 870283382 11062727 566420496 740130145 45133981 924509551 819797772 973193966 651715572 457703447 131306130 752803426 983504010 353652376 630745813 253488009 479008826 393085262 621630290 231854098 75664671 341768555 608628920 844856343 593860237 145099009 217757638 997588788 900058047 453716398 157104501 250859775 525113862 477070890 200196960 704049116 606429065 309536158 244581661 455657313 399769142 698675599 979811596 208547775 710957453 960275487 495043210 476595185 285826207 388764971 289675488 241149493 233728575 701237566 998000213 367324798 712601110 897496252 298384462 73440328 386916237 977121849 653324697 924310535 780290506 890689112 792745281 759694256 343650771 792484784 416735554 419767721 73929133 332880834 305353181 693600508 725858343 473194610 871617347 165137741 256720427 293007234 710464646 126915169 817081260 247467079 163894599 552419982 234535509 163195246 913838462 817618798 659848250 271592368 509727452 560599700 786667779 154439729 675403090 7387476 948144331 996332678 389006827 656047625 840166738 657139125 791658832 988966989 402922285 433362536 781794432 456876280 753558153 366330814 784599949 373646258 773552415 761061487 680605871 554683662 948690786 536737829 39075670 121042659 865346114 844927813 945777153 868403377 777800567 619703270 351830939 270220534 769469817 633522457 53566313 580872188 597951770 473935288 770083896 852145381 424513605 339880770 531998458 900756581 208084801 116314869 632971287 615221745 601896394 291765134 829268448 247136236 745029212 899306856 350925111 353696247 89927914 331437081 445781661 938070329 496088894 437072236 916413245 889177400 656717122 411416113 19720178 150188314 646978917 619912185 297697441 165103106 215321182 934682263 586021204 587806469 444997207 182614251 116677902 916177794 405272385 531900238 663531934 17234728 437603023 57153869 504445792 748549332 433951840 297536561 455591885 417390529 777908362 18525820 493661823 814613450 324706407 180957169 702500145 939637195 984106910 71171139 966490524 513389622 240757670 733975786 970032855 187205983 431695965 777131238 717318906 884184579 677041266 331078383 496037787 446810675 117436090 788439496 921669555 912876686 335519142 53398039 748421796 683905599 702885002 601304532 248553576 669684317 601489195 188492193 182309924 465260091 634034468 335270725 826468438 578336217 208508931 22848117 734315058 132833896 349135216 78815193 913471436 887302675 631397499 161601025 127618612 596298037 599095515 835893580 104856892 648804751 985690264 925875710 285390088 581721021 290416972 86802228 184787545 147590406 459276784 658222584 755128738 858800054 813444589 929670981 8441136 156859839 854545349 702322785 653755883 88356225 165373830 120814293 232159604 642350339 544732458 47313771 969820120 766588936 669014931 716079876 956649829 494811947 771386864 442236416 399313768 54504018 603951154 534260384 723130960 245178261 554428019 475429836 946147153 82728312 542899016 629891192 508989323 452027378 519304237 841404604 518879490 772437073 338088277 426254199 487732984 857225165 95613261 472762036 679067037 891875591 923264341 974326344 953879570 607280198 521804599 285682670 439213251 597365789 942973435 19175808 206771913 537549706 453302259 635775798 815156285 806540507 310583203 73899001 586636924 27053455 240997091 164420108 808786668 653543412 871074113 862449724 621559045 877722247 957542826 363666552 218015693 206984985 644962638 830335350 891148377 111431200 234666961 702895625 682278356 648005928 799554385 173890888 476499043 492265255 593891178 144149778 605381864 531204867 179791032 805226328 976021251 955722951 161633957 732753335 608780671 294616944 334541157 921496337 612011635 330246272 21974981 978875505 751991693 464595476 105292272 515025608 611214891 723553497 355314400 791316031 485531647 818014567 698398524 937403970 361462854 574760905 15623386 505746419 618685199 117020975 141386357 378125518 817222301 37014677 425416876 629020106 877849996 237926872 103653820 753047098 481603477 520766734 278315327 133862141 464504899 701452888 440774223 545344249 999111968 544262726 392799447 913482495 638670590 328624564 689629398 103158401 289014437 323613542 739118985 765505069 66109203 605884626 936046684 255627520 647277732 14014097 884138791 53810756 731540246 64910030 783724887 680825233 559259589 727371922 731978676 632736815 763661515 320490452 585810179 352245406 110715261 232616913 802131831 380570857 785999001 191973422 728199618 395222834 50566359 449684811 692768032 955395080 113075915 651739912 247410695 567569826 43374847 802610038 339379315 586320998 51882117 972670876 814793482 344130005 288666132 95088778 797873151 253916744 582517318 854331569 911821202 702014495 564698567 897465833 491225585 91477814 895850243 402032147 774796901 589809070 33284228 554333622 274748380 328169845 85174135 618552693 863128430 939635026 653938111 288249087 983175955 103609978 448772294 289869770 481437354 832183341 793589900 54078192 515602949 258551626 576627640 484325905 94359619 523176649 147302368 310419732 601545037 379278391 428880855 859927370 324673743 894951210 963973383 207371232 394015542 381227141 691590373 519563495 105145629 9707187 999040174 728241091 773754448 118047478 812188319 729939854 199682817 135267246 651895880 631570710 595402632 365260914 589049672 840250296 947278177 882261073 196940293 952662473 214817613 599932669 784105086 349316450 150330319 620672613 605215981 573185448 438653326 957349092 90092631 511716735 809027249 289991147 657296067 577644764 323529027 186763228 437875682 977548875 144048732 902326415 769570187 27734836 662874613 857390289 668923772 144252341 917162274 224286735 963151487 116771970 790536121 556731631 928655514 276907803 237038201 856004785 576958464 437835997 806587254 455796591 916019004 542010148 514922567 963930408 767024467 515988371 732691938 222774300 120772425 638197371 936360044 787418969 292471265 881189768 718042436 433847981 193041275 315125706 256247580 679105748 489059477 653384286 190108571 303079695 498345216 620075006 749501902 442910317 577612888 8670801 920112049 370271795 37202238 205516535 734738218 300340393 337906203 759359348 785799500 381271314 601462929 585776664 35682971 89848446 651352980 476122228 824675320 661523261 834218489 24684529 471946485 526441957 46315485 170229086 154308787 412642417 616718191 433842476 575214156 603708685 627259639 12273889 508900731 595357630 285697296 795626763 398861195 181103675 22859347 456112173 321286563 423399458 42319950 50065105 271321677 823748434 267955651 139504834 600699822 293533770 842259860 32996227 993165914 41107457 207877 905423789 810254096 328341915 768691799 184098850 927244155 603904319 932357553 156982678 399964834 833868064 236062779 734572962 994308515 167062307 246161995 679280274 516707118 122760945 910930690 876729998 600343508 337324400 644647234 414888939 858324175 79560013 253958494 542110708 181589790 79925034 864752676 540156913 744259767 378711447 266351916 688380699 633744023 526857266 637782367 138427493 88649775 116698107 748578443 235135030 989759015 829045754 567699418 608318845 769501165 396426633 344276399 552030875 827276635 566250263 682945947 37563203 557665710 948230478 133364045 665300647 72047156 445412793 407384893 672036841 291345882 775124607 368515874 451688530 593098179 195704592 847235082 469325669 859127062 781836273 93170600 100992409 303201192 124686772 480902454 245208774 348777091 622649449 665563995 713266986 543243098 510641092 17709256 576509428 55004760 501613981 254339951 835080216 761242470 122816737 595604586 199785612 764781540 477440817 409095636 113674710 133928248 289012602 288801720 995510087 463698648 190144925 455879566 792320142 27271723 786238704 615637097 824969979 562275615 635984257 942886690 191917563 865192947 615213925 890337135 221728433 440527873 912083941 997154878 644511692 443959887 197631581 679968361 818150875 918677541 919460661 526605953 726066345 184954649 893816050 384587693 759771141 652462050 409415154 284440765 396643113 618486605 813795288 549887609 787340861 802741786 677092799 333346736 899431652 923961536 303302073 958481132 155788533 572607876 474374411 142476342 412914879 797943567 822549680 213821057 842640412 759193019 905711796 996163868 786684010 317873665 883249021 839559594 441535693 796896048 297467577 116032711 33875226 274285321 450022591 219111457 153818236 582982075 885072115 258450336 721916828 80217303 637493387 930015813 968022229 891262565 905468181 958488971 443389087 309442697 385808437 166031338 470516739 428389533 412367474 849966475 948525531 291037570 685072287 871923841 631920902 944357427 302237104 55409805 909344760 45174324 633532485 975781451 343334238 515144344 924645322 337784710 351627492 649357788 578421339 490917744 334869744 724833855 538901183 747196259 744367172 905632826 837772240 128760505 366183248 214027354 836076503 65326045 568869475 723032538 93361960 285506571 757394662 554144514 932208195 139625710 857359472 59069617 106717217 196052472 495360531 744178146 61684688 371148385 267078028 282875429 544602037 96863840 756030355 168094094 529144681 784956636 556399754 792598909 436237265 772212099 863746333 838167690 234542809 612830417 435275483 970849472 441157212 110805653 477434084 921760557 449952378 249099508 489591939 293852581 98917694 222505392 25701139 877977013 891575301 913560589 759229220 457347837 123141672 96257747 648976666 861667338 562391585 779476585 445653283 941247171 822794325 811854145 543471545 21753616 558493691 184580425 259130654 166113758 569836580 535590841 687047900 958529193 756651618 123327346 883952337 740713364 685897046 869242374 889557630 671982583 461980153 211605428 921978466 247573666 855483914 654234584 812012595 952602320 83436593 643367205 500679765 897835053 198775326 475859526 277556270 983787371 723097856 259669219 341230258 396206196 566310792 711308443 396708166 483235963 989493079 310035941 774884834 516897830 443879197 832334017 408743953 540083072 2860257 134823790 780719793 813307623 318891081 276261100 818570884 917082872 892177800 584726604 353174220 904430872 363404134 931403715 671987300 760204474 919754910 565265566 772623054 591730397 254689765 879185735 656710873 512094348 834945681 851099539 112865046 203018752 446517594 564162943 438639460 908849289 645224300 101462371 314524573 50659692 362655297 875780692 504364783 787125076 313829201 371247767 668401807 25665449 712996544 617316025 719434626 588805029 830676239 729307314 209086969 80151164 662777542 606445709 126226375 652525409 681058852 198565058 320270436 11730303 629815780 960835224 890326630 34364785 260033360 312212234 26711967 326059042 887082380 830216472 980238248 634459959 813568091 189595348 945424841 973456417 197574128 26491601 556825949 348119452 884910438 671957281 444422260 836052618 234097514 738523728 745177723 572506925 511720600 862165156 939556096 689092084 726736035 953677357 448061690 873456080 234634387 446439706 440399778 458885098 155030102 939518561 627634227 376405760 743702420 175344993 149917993 47771800 429754142 413950840 505023288 160114232 535135568 634390131 881745672 217367305 44536633 590292005 172728537 154602812 280246227 272233519 241801898 168077709 513296935 868138902 389498366 112044550 153107629 108744447 885413656 637832956 879428231 111583058 480808979 994013257 219285529 227323686 220081285 94000544 356312918 890869546 520109027 851090882 876011132 781984200 779146772 201486034 807828933 877730228 618590951 63251174 650252292 432361123 854997364 677385004 555222156 70834571 908731718 276151521 154052195 301958962 216461935 79037042 219983783 612625187 420417836 88591524 8159104 469506977 356342118 245453451 643320733 42286218 184804414 193075575 971098006 821608504 516846408 166481706 38384983 787013310 12690740 593172134 907013984 44166222 116822455 248898901 978171965 851877300 558732066 743403872 908011461 631157754 972943752 789424047 811481801 417803651 905531528 672680241 308609922 998921682 500476907 92622036 285646250 752254721 124058246 58222807 508891440 586851656 940331714 854574039 18633061 797232525 247435337 599222300 802649927 661024242 1667814 646169947 316964386 600789164 114373427 130930832 781550089 214725246 275821766 330114807 524429654 394406626 208962312 341331866 927782817 701528014 376483167 194381458 895981316 809872374 197447267 759626045 560648811 819617130 688900283 308355596 63266547 817154689 319671172 537681481 28315100 820656538 469059502 864746242 296580765 548778487 845179398 682742404 695236125 717426238 482919404 623351193 796597513 135060990 235019178 838908362 454224614 388578764 298250379 736416569 354112821 91461098 238135526 192757548 556042412 887147896 349263630 124888094 583512882 343413686 246789588 75918067 423404764 982136421 757543749 386236099 366871061 984276075 947597683 49908415 686270357 995121973 950241664 145720509 253258196 264230895 25236357 566478411 686540777 601188141 827360740 582603683 718981234 801329342 115721522 394099621 55783411 492013741 4318101 834315297 697934688 996801406 432049413 490381750 873423971 877569502 739379473 720565671 147654502 407970467 71309001 65427101 339940681 94488725 895951077 19934210 557995781 569694304 508366999 788421323 778178231 213869400 325515513 456366274 287896018 661659975 805893761 834228248 83621354 925389602 371546686 892674648 320921655 454857977 652848348 969046855 886318436 634762933 941307882 461624187 184805703 44455627 658859022 814239851 900983504 237423398 312841560 55698306 953572523 665083307 49706626 621440817 447178000 420441478 168313004 533273853 411424254 510713393 377220983 864748370 22882631 985205155 320112934 662670230 920518531 680145179 320372039 632361254 328101712 988613957 508097067 888526527 151590891 425023137 491584270 877887377 57523467 771902722 145657622 306397970 375566487 399068765 595057717 830847502 800159438 409893157 625883049 983965810 111995819 473689615 530490623 494804838 958213137 967123910 185019201 186168230 955101452 343896040 966928838 826579799 592501584 32019658 582761129 878254287 544957706 55221226 224253806 117285170 336195807 626417580 822951893 627390118 916260476 105422402 810107134 664679481 889724517 428897901 478673237 866580978 728185162 361235470 70155756 746399802 195227438 965287265 249636769 138994600 253017067 647791029 747007121 983117220 761366470 752823956 930745484 441260068 202360066 604642434 866906618 42951710 141681087 501288002 573286718 974480078 987677376 884777731 103467667 624485439 125355308 769798006 889885558 547879768 912442790 774743879 170079813 883862629 791822080 916061290 3312971 816252242 986882775 108742942 698418475 459144229 918802861 514732945 692100429 740999434 384244033 577485423 872243165 165426457 536087094 478373639 762393447 126777999 261896100 48507842 218494201 172467821 277217748 691603294 445562461 245001935 48181097 919889839 621634200 322661020 475994391 487206661 136344787 877590396 446489525 6148731 370602958 106063902 166641575 356677133 434649105 98840546 470237406 454438495 251513956 556301476 721789452 637665996 120268728 825274432 635713867 555677763 290095175 997806344 798801858 543225621 749131211 739932564 625140643 232778132 804854373 278743174 426812274 551639520 514807980 986358514 872237694 997662784 231986024 405364221 615392972 548090793 912679529 119268907 521821530 832942438 851314175 799509652 196853194 11168686 834597875 354283568 206886617 286943275 941607908 886049290 385705313 729387991 60192820 558802283 61436998 582354166 621473061 219063571 73382246 322331386 613942673 354372353 624984919 34534151 818941693 230783107 562857403 106746075 560937995 790154556 90650304 614826888 695453308 225791007 719404213 712116205 384467979 90317571 854298623 604920958 803396194 529068625 928260643 907971215 308607422 191649593 740286333 820151557 594910020 432252481 876098820 944479725 247860535 847967488 482935783 515375783 589824572 491533792 387819599 974517118 406143172 15355779 813658816 811828328 70569925 127880751 40927542 890027382 875787840 462687863 744477857 963735438 292751054 992960711 168865134 799756168 206268110 792495488 299609820 934293966 224577711 8910025 811420787 71109604 742114786 828979484 267595686 550446915 360530693 998198918 998774712 795785766 218971719 919493580 930604513 21405029 361410583 320986008 920390676 857264657 866412877 917901806 829603899 4270586 541752958 639800564 243276545 274954790 711212662 996441640 234008169 189826388 460713439 908448063 36619275 925083289 647072724 129393815 561201294 174168035 882423813 997939804 957727148 143057895 115135134 942832216 413425473 15144257 987546395 661647402 775252800 706601685 952561199 199159250 256638199 478166162 82335389 32474506 665384201 507042395 128960795 3540537 674297779 14416632 521052384 479967889 4372937 55949768 564455105 551180079 786161775 194703308 469334050 179567703 610183847 148795428 834911294 682240613 687618916 340880891 544849332 337262751 570394923 506076733 694276595 91465638 456181338 244247497 820515953 491032496 220788547 88001941 713324838 102912882 650683298 762048670 427885383 297682571 988144930 706145010 594970163 42086284 851298802 458201037 976096227 4681221 224046355 835417339 633155730 925144152 87370974 254402094 664469920 484374961 353472645 660474588 759214937 533513008 68280469 794694756 566513881 343536627 855385767 362379909 694660859 146101253 801829823 985743282 495054574 847323731 646307098 542459440 728489296 635635158 881976103 970661749 78233957 317040871 152399919 83420634 505703656 429677408 637639212 210703585 904776814 25099097 128220830 300376992 983745551 757032773 474318405 137408972 180694967 908470939 820579134 669902760 210101481 451572481 199210231 239591432 952955021 23493643 731367124 763402812 2458256 625172411 238322975 147608504 485351381 474626945 83125114 7959419 682131949 208889576 824655352 552897306 42325143 433844893 987594652 424004907 945846569 832115358 315499349 852670553 262188523 218575703 507422744 362187543 557627535 913591161 475898530 231002779 101784968 240090075 922392690 621918133 333100417 810201142 976693946 226892173 693787105 274071836 874906888 10285312 893534380 263672239 348008032 605133105 652968993 295839054 2099278 209929981 245937236 474748728 264581604 779034735 137228198 561188667 394026672 95059552 169619997 160057865 324737944 179571449 892053674 85561943 301398413 563853175 443192886 914313930 688023263 738536795 764969092 651960230 878895204 211143147 509981558 38591663 448201306 629975322 295512606 281115195 780500800 432983878 887637945 356643755 14088695 653929825 63352978 920154512 377898394 248141506 786262951 348006039 612572163 105576154 311794107 752035578 483469362 157038251 810591474 719829871 864231521 324648880 233088188 165523729 979087154 432206472 997485964 412413183 431997762 98077907 396185841 273389908 589346737 323626261 365637270 732826672 777381738 90297690 238863550 170383098 885034233 706695274 642446988 231734608 149323150 274411315 901092823 61520600 425910749 122132541 680115916 205675328 462998900 444561260 942518591 40385898 391954343 498740462 995674149 225129243 115999746 397703754 963364563 650432277 325054635 382209806 115241238 646617229 265466444 725173745 987468459 119920729 599529719 314864951 789495730 819446714 19652906 887121896 932401942 307877226 599276115 210528662 154697270 741871423 660054217 73468463 427563080 204925476 999764919 977922530 162404181 761344548 564784329 815702040 871619822 837799014 42664310 390846285 238037996 445466033 844042412 211092792 694219964 561283475 490823347 203799353 699734656 57611783 320359453 615257590 102295668 789012695 432336359 613734228 956917183 556793956 384911499 1411326 374258710 346942973 775751101 677628071 73025071 960336284 365810929 232262748 145897951 95277610 506015919 221005391 789203278 98604151 875756036 176017610 421965198 248016025 80901909 210041314 560052994 34199427 894206635 581256125 780329314 668424798 24789718 503767276 811297516 307745309 31864473 167785846 18501965 321513232 641405686 598964800 466413876 395220601 207399606 270106739 928048870 886931088 986174875 85531296 140087152 312647909 78538134 770680424 537324079 355060608 629804107 998121742 851937195 656730601 546142855 605407719 830291250 961667165 492789348 988036583 545510674 229905855 158847375 826582140 957729923 392938748 982944001 106199091 566647610 721243645 652997230 6037759 93596704 425532675 951571098 742401623 900055757 621148304 501330995 698291136 987570440 875062496 33809537 702944271 636561526 126131560 393270463 924348716 505871657 135706020 242361442 968204596 625173098 69536625 635419204 912256593 824624231 486013301 523397853 879355509 487809246 865435082 731584073 869976145 288284071 817508163 852487145 84390425 500079579 283554006 619852954 280138979 670976145 381445571 345069650 572645560 722007081 289810219 674280621 453057454 253212063 868108971 867513726 53869594 718163335 328624385 651193455 402110764 785040876 182695218 155641331 65260339 227675192 930337657 380424274 506769743 533559987 39391197 27065116 875416133 338751602 905096674 775251940 249321433 658998962 471794581 850261100 446414841 495775534 719759341 587968041 409888470 407390094 615174583 905354633 950070255 933526127 751209947 630969202 876574678 94191433 285644268 742325465 488535782 93576556 620875399 278903010 379240089 488239434 412493739 719203192 888426537 148057658 824136366 70865400 310197655 24404900 614179166 1365925 422361554 631517085 854271591 782824789 935321619 334976622 284154789 877634564 620553148 545770497 986097826 513787158 843964338 655435185 322482942 48032864 257192525 513502140 451164130 843430640 840054107 390496 914000995 467451337 884741085 701227463 954150687 111339944 510775918 383503944 338764528 598944974 842026452 147228546 624351516 367049067 733778140 759802386 553649140 836990973 819074351 573344707 201996327 561740587 172748241 765313231 519627856 525826240 386849806 214474232 58879189 953186203 637086965 815891884 487127710 290659358 730104906 340276258 718062509 246374125 249310845 542128319 769090007 439750152 701913293 820366064 762874033 979991480 486829312 808724663 976642451 952400385 943950093 582321807 471085182 91501666 546549689 933246566 620522730 205291746 755536654 212589659 765467165 695737832 911506689 182376635 508701792 921577869 141059710 172223809 809759966 802375487 785121267 945403406 918910687 546899000 156513051 693504987 230201411 862316154 902052009 553770169 452392933 507398651 52613337 391580175 585168771 443242312 213441490 580883270 31398363 270540274 681975940 319183711 602139865 350145290 591819852 245387455 26929823 641297213 762917950 332788872 47724679 292103070 378484671 889666381 690480254 690976056 559862341 931880020 307525194 634039563 17854707 303154665 824978038 793179371 239138567 630915854 192447600 330041965 900800446 289966759 766947497 520710441 668104262 672817858 310739790 24767182 695440614 479517244 190459591 230612452 836270494 219260422 973142096 435338097 695174886 525056272 901929169 802120262 326916493 117356593 761037684 231991228 398885651 280805193 709175471 196280087 142351 517706749 796552210 722986941 670262113 55225418 437787885 153989477 71511687 971415020 199186040 588351354 701359601 958184317 801649559 628705539 835242870 109706474 47991139 939399334 412365520 396667883 704584107 844423631 141924642 371513638 845157613 361846915 550671571 630360637 267066090 459642831 387818705 828600920 400283207 529345506 946595165 11351143 785471815 111517642 350497580 260538491 673368722 542424676 460581885 479940730 41348107 943832763 95050830 10593291 973870040 89513017 9818535 965787478 664778905 45894527 399214316 571758454 640493025 55917803 513277668 508142071 12219080 916523363 383797948 408165354 552403602 91267478 689978461 620818714 584729012 59695484 382613599 363963998 411918756 171995452 479527279 760218604 391016154 262746147 480030861 437280480 323446337 885712422 941277217 904487185 973815753 948068752 944983418 296195833 140766334 967887362 67880484 928401073 318966166 440107358 207015239 78326738 374638541 202712233 79143082 330155039 788296914 237191581 597138604 837625988 685549687 25079736 699171943 863623825 12561538 40565470 166813966 523131998 577103805 290891993 238914418 926375795 446630426 374668111 786713502 579457460 364137936 558771877 152439045 247313060 329798449 969985601 326293750 716645274 515692759 92001010 104594596 536183884 272823435 70016757 141401867 622272641 968158350 668409 486874930 314076047 915474142 857111617 811859629 694365177 403100902 762273119 762163368 624052590 60253776 828343570 367828883 104786122 472062708 408376914 702397108 447482571 335518106 253412809 384600394 477832320 197888465 940671643 529590856 802476044 946515703 542023674 125489584 827848513 62086754 277913688 437396792 887447406 589308241 869745406 667851866 758661245 651386809 323816812 20471655 567042772 912525897 989533618 945743803 838646192 217809795 598513544 57446064 368890773 512709678 366114117 116536578 341024502 353040487 894039333 429180468 651947679 381237557 206745981 893111383 150062407 400858273 54143824 864552813 735405771 127402263 947089992 214044728 486054471 910762940 364041486 127605188 816914795 27886036 521673240 584889 8762036 450459928 975044080 63190176 462581853 849147883 313562618 525103254 392778032 680514951 310235052 128330014 833494718 56486662 459855123 632098568 899425296 73092735 815451971 745885510 44989823 686177879 154493663 335375827 87436708 694956265 488979465 87522187 423815563 127032340 403247248 426091628 391991590 276742703 621780361 706980546 21619830 237002785 109838803 938959174 427225701 572393783 439820016 584431156 39748089 91338408 313498272 727077186 682600017 941775316 985929392 361741538 967684202 404180146 19178285 84740523 568383134 799088315 468721396 587546378 153727306 563552606 363112950 737095440 341439880 455288373 527397130 201830598 91764860 593090875 788370969 750691470 7705416 267158286 472769818 346098730 16010781 320709675 712712857 232357989 919197990 64659352 692794798 529507984 387786355 153066115 631548157 227139462 324705705 345830626 21864117 410439719 552548574 913302256 736876557 953225053 98439856 291941364 981575695 185233803 686913752 911981994 475405689 338645531 246467209 110549406 385840925 725555807 101521607 348251253 394231217 455426197 764479636 218991424 344179848 78181135 226346861 348240270 811536438 214280003 965265348 548463913 545809710 621990966 614808768 190988033 867710737 34559302 369182368 519001391 115030451 755060827 710440789 431248467 265399240 151331328 508812375 583750813 724370584 623949622 535614439 859787043 990438007 717929538 818281269 709213734 271005655 137195232 241924152 874861195 572538218 325085466 717095851 411058177 114284015 988713746 193209112 34194602 828580588 128400131 312366902 94952760 31121456 844258463 921229711 606408027 320306588 155288529 653026323 225439522 586412412 591084779 997491999 509086688 150604475 592679400 241479456 923580397 783937181 435702115 454445792 504353098 586653209 254327730 645687693 417012091 702302075 230926583 283226403 846342857 910897672 638037322 215438224 181778134 387896993 798168279 257687427 982281869 310372608 121068166 163675433 135574354 676724607 2540697 174908550 274900940 229165293 462102983 709230617 694500122 34895691 862245024 349877165 965534319 128675226 632573053 372693891 52977904 600238030 352629243 932651547 599887523 781646963 851019861 139594360 387859771 806235756 900481713 96699895 178012804 696705632 400598078 911558563 454100680 62991823 265718640 603492420 230753400 63430389 394469648 49237188 169850785 358210034 850066351 354915084 67756172 266671659 950571383 48605031 666294934 145684947 137594213 551459747 350684734 454559184 943920447 472270951 737312024 126812033 601007847 323572280 109440808 89705172 542582607 738285938 609034644 148741473 569485116 425117346 652136125 692043100 725510359 473138613 800339681 231280426 886256351 194135987 56330843 882606469 678585774 737405370 613922 42164734 747466778 536958074 809143466 128442026 326833494 517366556 303483639 734194413 250592241 248195420 489715666 88289563 35268612 143438413 492934874 749753098 28168300 251303521 187157235 725996974 401427329 636818576 277283520 112174429 491719833 378032453 440943280 5907010 487095823 426333738 571818537 56838596 879289997 705470859 754397878 281735144 170514281 600025692 534931676 529087198 596296007 502002238 235848700 732403962 478846043 5234321 136519417 459367822 811048437 147892766 818629466 916588993 336701578 894799203 650022010 46029592 80404364 406686245 215647635 452534565 325846690 439193187 180631994 212214634 625196336 265148201 65656878 324105633 623857483 677471823 242131037 709854713 321492558 426705988 619284108 373317295 377294714 726422022 120009103 831157697 100642754 12428925 183619449 956756189 401511268 472682086 489011481 683886036 80321967 667063879 683544249 983144401 147781951 338127776 181048021 95856733 44123471 235618330 878730609 570329186 432842633 216358930 17114563 65978541 715608483 161394522 856718875 182174979 765459799 743221927 839081505 305425045 3558604 609394527 240897777 896119180 450652662 695508631 20601241 392745787 857268883 411818095 54849337 666371158 587566551 251777047 259977648 911867443 700773557 361926571 678321085 535637872 713988778 638724102 225317191 631802994 101702927 659588985 49110437 286620153 506360753 148581315 833179348 123223097 716405959 916429895 299799885 316658618 269303110 760043905 808193860 525093709 786887081 393340731 513997280 741585334 621172920 909780381 48516597 20724286 507994901 991417302 595487011 585910133 973493676 696663641 812561177 989670877 394317069 480681045 334934908 130692250 843329094 633037160 45769760 700135041 817238659 852605351 467487885 305189385 522771609 844132193 814376877 711657494 853293036 827840122 411644557 456215138 297612827 847878870 532689262 702218445 893591097 981582176 111224339 861428419 435829052 3262736 716249462 75362889 613067326 949292382 683827490 197602502 496401322 352300435 187669606 50711191 633823580 314120020 13981037 837398649 12843014 16640654 845851216 595438318 100846182 549560034 485362253 845116149 383594048 116998204 949630900 675477920 125667559 979954956 585127396 785938092 781188209 911785025 506904094 22663992 165065442 826651576 430317251 598389529 868725752 646080798 576264279 535014517 542527194 866934310 974390197 604251303 175257936 579027242 84747433 439131659 842472055 657683393 773357363 747662548 635652693 432221637 558614680 789819103 549701905 618455288 852580847 638081054 637239937 681432532 108298198 77163766 293345067 645291362 177812093 203720472 493543481 828825300 837863325 502847157 457786071 585511204 7187209 123881482 670950777 352800185 675961975 907668088 281928996 633178903 166993061 541949382 866985185 688720127 971057 528658 171511917 956866019 6368054 859472442 218862660 550174619 382168557 418728247 468702348 656485501 949126951 459938981 948407564 628764300 820089630 122600404 330546815 660518968 635573244 498670072 329511881 751120060 781951463 417994530 903582240 600253826 741549993 293107793 806283455 406932916 186596364 819767225 255359634 348853659 882409713 102693563 592750967 200296804 32798478 361677662 832416507 442387697 341791704 889038826 706599600 256178572 65283721 401498989 356058158 47666909 56897868 381594743 700583043 19685935 498581971 369683716 417080000 470974169 369777630 964761592 184609862 512397870 483604709 467569944 644391785 294112224 732995566 555031403 931654387 810262549 684420215 814685184 565335569 608360030 388454312 79828686 848032650 209920476 159767063 446656367 941577525 585806091 722608047 464834336 204301112 647427207 870476013 274487793 980907125 398459095 231259278 356081543 486126674 222174310 192006390 100806824 435139245 694499460 639816237 91566630 474973755 13266398 685376528 570314682 626298869 402026724 757587141 799126215 479813401 586221673 585100424 28833338 617880345 229659954 995272077 517885611 763689151 616744481 140324097 410003160 488997701 189886089 829231380 308063413 688282177 76389875 72793075 291583061 835451316 359854296 909971207 801493231 523509804 184514072 659375147 875965747 1679372 868252211 281351919 820334521 247360804 34137395 292855489 356711554 228445526 163751367 957350069 806483811 141518245 374245026 395415421 287740790 114521691 850345106 531857517 342931472 415456572 56972694 824755736 132040048 304772228 212841780 976402225 552740821 617416839 551919217 269920919 833059169 45519132 984685970 123934488 729464582 664878563 976925606 996646662 999714728 508365484 606506462 568412895 347402845 692246480 982459179 181779236 323872720 691283756 218443286 573760495 813442858 184641389 304269279 852006741 506167222 344875096 302416389 317608442 245384305 799857733 341418321 870570680 462093676 129277929 481067154 3873622 315112110 754679918 285881849 45978944 164064420 852590507 117020612 426495425 1829018 896785222 595866514 329695238 702139924 825307472 659934548 924544706 532056735 688700204 546230333 851151868 424217915 184387429 168578655 234173417 297905938 82152871 596247026 486949256 988989670 3799008 946915722 752661215 5874891 956887147 761477405 310569497 887798626 583816658 347222249 566010807 112565859 757281783 546031042 317128474 501010630 43559958 811071666 118652707 315532444 67903959 697519119 98665476 423119817 134258087 157739606 778707823 808126743 707618391 132769327 280656273 620421737 943762881 359731787 479679721 137392387 696620323 505738007 543487664 637643895 626994118 5592559 140367879 910133197 93414348 245097542 940063945 837068213 249570515 417627546 671827118 723442574 291101822 748698575 309609322 81099653 965165486 138322538 260824466 855436134 128164014 130223016 757302210 931733085 115721765 426302068 288078887 448801751 503147848 59308254 154107768 55095621 499292053 651566007 877375529 793698023 617351516 13839725 81592038 205522030 471600820 323188246 668652112 754346008 35692761 257963203 215978340 514467672 437302486 147245640 734432685 305560880 502755814 737728517 424234660 426037073 325127242 29954992 730095829 350082079 27466188 111622176 633901847 425842690 769008856 14645652 699487645 810831797 569929521 135227112 768270090 412462107 495200431 571462076 224341101 677089085 879685164 488907658 720018069 578951399 485603500 942894342 312079879 561412746 960029383 691976819 174217276 864567322 429879388 131145720 976781004 153661848 181679090 146164311 360487819 2451138 335586441 755859255 147569966 398955839 473251260 990051731 669860649 9281139 787461686 856098958 918341393 436121580 793142033 275990360 935237275 761899471 244991920 515270186 979060044 444916604 955883419 887821441 339663982 518857737 171199378 948131593 918239659 383752057 996027412 394984305 958054141 486728770 144929743 120315092 425216311 246982223 912748255 688131550 464635298 610467719 108316600 254192278 624280648 336222727 797581609 261617835 832572724 798241458 879072019 61300114 752185772 842277907 252615633 527392319 901818146 752589849 48829246 293338601 361413289 184588604 43339914 770539166 129754326 472925655 335878335 812183266 62180902 474040095 484538937 587914372 517161964 488085289 963438374 587150355 192705279 713325317 539147138 919611522 378717641 43066653 98770046 793044526 481272691 467681096 740084125 857145318 414588342 300331467 766735088 117499839 817862757 633234456 455731435 943548104 113836125 301457829 706623376 387519111 98274595 220995134 355087253 479558692 612105272 207140757 880050060 478788694 585123415 150844954 306907460 61484530 300344463 242060001 508297428 208415393 913712962 375283481 646229369 584588050 485990653 426789435 511501968 2316769 966656422 450693144 221689219 977528069 894925299 795476746 505726462 180614776 898191120 414291518 210535847 384849480 941775832 877488368 308902460 777109762 488525924 934818097 952393076 704198009 691405948 226474717 101899086 986325252 988140326 247065754 426653879 445924275 261375504 239588947 517842649 900764979 170207061 359774718 470292218 491506402 391098897 605811564 866196271 299726691 459447367 988360138 326855070 636802519 117201377 651491671 353940581 361419693 776175322 459223611 247497425 515621526 935316479 170224964 324432320 760445965 444093586 505255003 455973034 815106757 257629162 757658715 328243030 159201738 798254896 899731427 764377252 361712561 69857566 781319945 253695402 463449495 639639463 778051577 449854154 929582520 728561778 483454118 899412761 166297163 912165077 318956959 54673308 903105781 629711272 309983535 598424656 765064385 192498909 685774123 441628662 86834444 975517840 306360002 305435850 26760227 837501024 865122591 314635656 449689236 835244294 2141959 699039573 731168608 610050217 819357938 308865937 72095583 826387994 882370970 633488339 856906994 963422599 35238129 400908350 850337208 511890935 300921216 970071736 85514088 90956783 764844854 634378693 407048216 314126275 457405913 187114129 972155847 732861682 229451959 301304581 514809641 533653862 37655942 347288074 975182482 538900475 368258536 229326371 94829299 468984727 95496248 825984890 306002270 330819244 655401784 626768190 293741300 39556361 643015799 70691960 631637018 994313310 831955677 963425392 644206611 503948631 901359461 987564748 561206856 985334519 766826910 22647950 258836894 866945894 735419278 124043303 532532352 138591222 484611157 674410976 550275236 715177825 936332626 449744398 40549966 358723435 920647697 212127818 814136005 584226269 851228425 833798975 87198002 220284373 90278746 521331014 680316758 594248456 990108232 73093877 285460189 956830670 337333036 562973735 766521529 716321293 767162960 26389688 348344414 928543887 114859210 462765993 657294760 689157017 696018528 311797175 657439515 44704000 753438643 248050705 193096345 270444157 378661803 847288397 984017130 776912779 469271946 671865818 369413998 99222883 410329578 960923847 813607238 355245304 924012067 411201063 451035838 741450249 983084452 941081137 679168385 95659985 866257943 1257953 214223057 382714711 146393543 806019193 137093348 428920803 651317137 807494562 71614792 778254274 623870582 644973420 845866259 728104210 451873217 256574348 427845792 628813925 610817505 970455756 840079028 652417298 834546203 117008234 257232895 191694448 852768065 430262191 606494561 938928859 335776643 8215740 355000311 583984848 166240669 251431619 743410816 225351612 670606374 459440705 673392926 86560266 613119773 167827606 391891114 16996573 733323060 211398888 405684162 622868946 590344977 453390162 437236294 133460928 601670040 442138184 879692979 245812315 558213902 64238438 982628226 361816399 427107586 306137652 147419106 927683057 398863406 505727715 48792096 733495496 348428034 635535384 817779896 825358887 221110160 137725963 1401578 252521573 700860785 570215118 115946196 786646533 789889396 58158747 788891494 54790083 835755309 674999674 625885232 338597313 777286241 724222772 378538953 907251830 452879813 292576217 2304359 518123344 218666728 264803951 930463032 847802429 536164713 75721177 393124790 894564917 36039448 600967266 18447178 204222823 143694393 598007801 832288259 70338484 65850374 818047088 827596205 324391917 467932562 227839980 911332852 220492965 992358392 584060836 375117894 855146944 112673652 480718362 586816255 407202662 973194589 159724926 521943603 882261771 550396004 358183799 494248302 503427833 958409122 19431942 96801769 604552092 8523469 580154597 539597707 142116813 770500567 386571450 854438655 585511195 764657833 267537123 771916917 712528296 471624005 51338619 913435108 892242596 956208416 892377371 10846490 887682795 895773038 935536516 842742159 421531228 19560779 962217585 963415593 838622250 209712509 957310998 395665542 441836630 514907027 494865058 327652384 474552445 376992372 949455567 555422246 396686352 537792780 263797545 971035472 344525353 588312824 524862702 35488372 531004604 70477693 927643084 427287522 993533734 847123725 82383793 904874129 834329339 256871878 860010826 145227223 477518890 400685786 235736097 763044241 834655629 433304351 754309535 328839212 598458331 489004063 87840350 373717369 768995408 400970894 255844394 912460759 649351532 67150758 935209908 490720709 240922482 543789306 875670157 572133136 684865179 734777033 251166163 309079281 609830320 937371705 943546610 253766675 690627555 910896609 91665982 547350122 989789445 430296689 821128068 920213879 251055389 400386318 614284935 477089618 454373428 432902607 968125760 695132348 710485874 502706688 547889712 18668771 543941844 910571415 778856881 695079359 143140098 982947412 500142023 298469302 212106840 490242184 419866881 752192750 990702876 286981868 389171567 802427502 457730388 121686782 493369963 590052111 928728853 155986546 287294274 963970344 868832490 992881149 611556953 402694231 601913554 746744775 709186433 505527243 958510232 382438336 891942425 744560321 158182719 591594613 265833582 712051128 396811798 896358446 886026895 350268182 380686789 562051723 107414474 45395307 823206472 383503027 26054611 993610842 712122470 289046933 548884023 291526721 149803069 575574149 86511499 911619408 30356269 49829148 723054470 448260456 946702367 90869454 970889023 329990280 566987138 756034167 641730715 75054889 735574652 129105160 403265491 338569189 349806731 374019397 73151159 287723768 207038492 70744398 386173785 876255351 34762128 603926459 452636209 463110922 259255454 138053994 690102970 720308594 88364095 667976743 6847284 52257485 915509229 722473680 320592068 227426981 76191579 199903589 638483280 272146483 488105938 982831428 368727479 226447997 96670393 827978391 992614689 707312832 101015421 932112789 572866060 463900351 864182531 18120730 65665614 21141557 408681828 891608809 3684919 46603259 884157152 98081511 228749065 161077185 309690277 416619348 833860010 998983831 907387766 741000940 874025969 726350703 258809848 819660477 314865480 586937804 910075524 880585634 461683778 142945686 75193685 464905380 222184269 561068375 446921700 342250435 772890472 222740068 240026659 134787205 281316171 125730668 988993601 825594181 174860714 966657847 77448140 226099051 419104065 13074320 355918529 971945968 200092400 299394096 108319765 997400037 477029817 180387153 510278935 614843443 512154343 353199213 374775469 728372623 368374055 640128607 275913858 118822709 205784221 914720714 766972223 462289760 270420044 557693614 944186146 326993138 209286970 373419530 950976110 876278104 911254404 18932609 388458698 136008738 963960807 45928654 941534743 727610446 831501797 13555926 328705712 719587685 713280047 71808344 228768047 396403044 517299485 1486100 393330310 236230163 564862484 639483533 251164061 993907046 745702268 525754002 944996906 787716566 933247954 80497164 592766357 973406684 136824592 416522823 624777523 210768936 756425654 396939536 228625381 154146107 722686875 174820432 466931836 9448680 895169944 916809193 735816624 848624407 6441647 876167189 68660368 890756124 255388865 256880878 873764577 147972096 824615490 396701912 22517916 34198113 300913918 425354582 59124678 805582562 530606168 48709891 113174799 811429367 819479741 521857582 407836263 36598059 343026268 202274157 336236545 407683821 450670278 530966031 855686446 204068167 224018101 437977366 180915844 903153987 251933160 348983020 940354202 642515688 995945242 121805465 961426544 120438240 47035525 581515032 807904414 827198799 752864459 361378784 530480441 894853221 606838271 748305543 101105186 600888305 969251859 474842288 191257884 217219002 50368157 340115464 240728598 336909130 882433528 644104438 105441096 367016868 606053781 243058450 124925223 369505223 53917827 333135888 330483421 53930742 435384100 186404974 426896854 485824606 952061567 244254932 775421632 191483394 200086163 403297330 502943750 255583978 954340788 679983842 584334420 952655039 301407845 112132092 225269572 474248191 417647145 68889087 23063515 521005123 608437707 363318207 445902999 394643419 959463978 225729269 894137839 332022878 296218223 14985432 489214898 173360640 400471854 197184034 444027979 156191268 998748422 603652723 824472479 933312515 919442235 620132213 207002337 792382417 640062565 336425069 241217801 570878193 473570130 668877744 956710120 257086865 620276685 376964926 35808438 816810003 614939995 491679269 569241008 607710269 944624816 798093809 296474889 425349348 245264912 216638825 80205980 363879329 545061455 454590701 834676212 197064361 46593619 783137277 814500593 686546661 274475097 135839593 197850500 99165773 140039751 588539061 91060900 112660739 621390905 635405139 61309219 209842964 264213357 401412071 948164118 157830797 610585858 721628171 233026737 301539776 753784318 804502663 158358314 561640668 128400503 748965200 785794094 495179186 266450238 17029937 489195530 415462338 21641738 997170634 505142216 635296104 11808426 702824164 274040764 766986942 485106685 206167706 896807579 416304343 537920947 88741118 600679568 746465385 729519821 988680695 782993255 725427261 5482856 800031020 147540433 580914808 110809861 968326475 264517326 844922279 345763963 656651564 699680946 47769066 983353274 630169274 574292733 843214641 465678898 650332602 332861326 537533604 577968827 138914251 199888495 268109512 581561390 294773911 786826240 686646894 637139820 144730413 307961236 638705695 608298169 571604281 601599320 207010613 210435461 250120337 367981160 759665244 967899222 444754058 72403013 104145880 78860484 769307762 555624538 970790326 41611170 715778164 564867469 748735322 964551051 666129932 486870954 286933718 883441227 619853935 403310083 591257130 421410056 326246596 740145664 611417999 166393514 150932307 46056424 203035107 934315238 14364751 71236214 801359923 922262103 10823130 435137110 983612168 224336895 92703582 748576018 332029928 646684607 558007088 693734003 869920027 66541673 450815531 196095590 968335798 860257035 744339044 253333816 444080504 750812862 440096010 977333869 137352616 324393888 476888550 611282270 927236421 166987191 910694741 447926802 724014606 583174678 856338166 934185008 267455728 746714808 930974010 277452967 739156716 67939149 783007804 288191762 985772859 94056780 426256052 481119773 470481201 412743369 230051134 589199509 413407059 892106493 469621865 267540702 307896884 235382150 94280079 137419929 388321714 286408571 281516778 695815502 804432944 98413273 370436466 34380366 223635460 137005552 748900836 960862051 723394117 824866435 81147669 989006378 48176753 794263504 104007695 460220944 130878145 580189623 218210408 27312445 781578573 649200699 406114402 374702926 55191875 829215380 362185072 306362754 393183701 313376507 451363910 879009908 523970013 642640587 201195881 754977871 31071589 144267970 191307658 348875412 760039073 333137762 448002268 261191872 161167719 379690082 407363160 527561644 491849410 324081023 719704909 45038106 102908598 359809669 449283590 640654193 937261339 493322704 861771118 804763270 191409226 349324546 290907832 269036099 607950802 359221042 620608623 843226501 509152294 188593592 928588198 717339867 190828998 270149700 57094089 543827858 301268233 47729207 276415385 30393867 218746755 734268716 227432854 142838910 349472855 251535389 402683104 159209276 265213128 920058805 607927089 508645660 250168488 517130225 222853405 851755313 717472410 154958978 614120423 83337965 243009867 705095628 658121276 912982812 310621129 305925428 556943383 170490824 374926489 118718214 767973766 628689501 869528373 848060594 34850680 85773521 127091804 412218852 986492926 704161277 177551136 657306589 658647213 439836212 749217843 777966622 736858025 149349662 81436115 531424898 106612861 602812575 947400059 517407779 137290641 785219407 700321333 782290029 5182027 637874775 765633886 133511143 1667621 226390634 812109494 286450461 933462681 363917016 880930613 582293152 9409145 460749860 145143771 78941298 755714350 216602092 491730424 592719236 114646290 858929766 197479847 334498981 762968296 273571137 302838175 317974605 980087463 488184230 288702430 551564615 714684589 510061257 982219486 669671717 370726968 498447361 201293818 987441108 886127613 867216573 660443058 699693704 231604655 332168724 332658764 142852629 11492208 831772466 687671877 584676448 701413961 585247560 851558749 476466565 367948131 857082819 65359814 356649920 497329358 92998406 962976675 170166392 799906726 886903177 788563735 618754890 981359847 68414173 743492095 321964909 760584388 638882393 249329885 866846165 163656191 452907562 169988582 321021358 567592935 75385714 815919866 635053454 829692966 294923573 716024332 454597145 693795697 43930037 395649685 775971100 111065046 532164198 666932704 177799574 105626329 571126689 266335126 327366963 976399989 367049600 630330327 977694059 228856147 879786783 63504265 166995474 418343114 10174349 972998872 654619958 689065208 918672454 363744650 903016869 695610235 974138744 976406556 357631154 256842356 155832048 449779540 62664124 61073465 839236498 658888014 461998641 887327866 43956531 91162025 842007296 25117137 996007366 54968311 827811290 421052992 720871386 14974609 324728252 631932014 585115321 265007372 834082036 958115737 814907851 782481650 914070807 980306491 319128673 676104560 613667423 176426343 147423906 414036435 691759365 965258376 400466052 113787722 839965804 727387693 751594252 700819885 8541659 199655052 74657804 533632433 465417458 849656964 891493623 272106765 173185787 232901210 120084788 997485643 130902360 292240412 467797899 54938495 832949 139102230 446908387 16169594 833475658 616116354 228850556 647848442 227969095 25706737 354055715 72298657 356620287 419517429 526835038 906809062 739283961 495010819 991415075 460074907 450339057 246126904 562316389 948563608 467248497 596907244 682014122 172701205 230817836 957924269 686142291 632567888 32862597 502070956 6538603 968738211 376246640 534415204 663287885 177209721 586072750 175645677 365325158 802766482 159563025 618364475 471104800 377718500 959151538 467049841 183121319 71681652 691953819 990557514 541024049 8743305 514293923 443006490 575798760 767171039 480890088 858118734 657025234 670283526 617971185 506522487 313808206 266300524 731301096 891686161 527492984 978118409 149401232 839187042 820694935 336261717 127811289 277450863 226739708 157132785 649761842 70768460 130850966 223367147 897459869 752309501 662688211 203906194 942230098 456698077 439097416 421708187 269002645 941295925 592849854 654154 595989910 692868386 249730083 678385295 946346423 969677643 770673749 656820062 69377928 935955818 991686815 110538982 544292137 525551417 885617536 127270349 958175927 696841047 428969951 469904040 348939662 644515115 70166402 782731002 581620051 260089186 480238323 978900274 926291353 326372033 11191694 588013830 255884863 840448285 584717429 515663493 834280964 628620078 106154326 134586207 991300546 613968910 495041154 763583130 125691338 195238261 178509325 993182301 384669243 447268095 167348618 886183119 124947431 359024379 773145205 193631579 281516421 284405845 718210389 341179753 961741211 322720949 177073090 414725516 360552632 43961227 900706878 142471757 847560141 509079369 807048262 42147280 243993469 268690025 65419762 804801934 336119696 943784913 969663442 392118510 297783197 909165068 458376888 647745237 922681340 701058064 839735814 731304822 352158798 680576018 516636345 461966360 455713505 322671009 910838207 266218942 760568278 523341885 577697586 616241681 74543527 668482326 189724063 564474343 706444392 900080832 894576384 984521454 135740872 487999507 541383344 719619653 171493784 874328383 973876994 369477501 791996591 955262306 119152598 882324862 589396576 507454273 757295739 337471489 452156837 61926002 562710501 119231885 808459823 549757044 568664720 483430531 575788497 125950583 735716658 600271702 6179848 200757276 836067593 950991388 621892391 28894379 712453676 879277727 177601340 287508404 828645514 854512490 889724253 147887085 470416786 605917373 138119129 162744530 983728145 216914442 197339946 248409945 644674213 568636226 970509873 55908827 469395080 460772301 759485059 351903669 115797099 819386957 631355766 8944492 818277635 246006151 68300689 681647772 898876424 610923662 800658880 205888794 909812071 13510121 522845269 393991276 673072519 951948006 773392698 55272591 645602785 643787766 931230522 833286792 601788654 566900653 242242502 250788944 723486656 242079583 201637342 724801928 311734477 225255244 863605515 11096216 707823625 419456446 411358733 659274854 845891376 790322891 742904111 12530313 65626472 87011891 360857500 888958141 443408043 534692085 38071461 941780510 602659916 557628885 403398633 198315877 198805260 826801232 909717826 347779301 252156590 718136513 817006386 327057598 274843541 822389056 690452388 826581861 261612453 36853605 313094778 271618725 718981464 196600877 332143087 154146770 450238431 274249899 544664512 591426634 84089139 612965360 28477372 981656492 282150966 878540076 374156281 202874683 840805735 637159446 975522725 854439101 794977817 460972611 329265845 944951390 819694562 921654182 298084458 492402644 858225927 990377397 329930406 725423181 967954352 964998133 599562090 313887859 563241196 803851081 994013086 904884616 190890960 482780800 543456224 629935419 652660792 702844332 629302949 984523065 19367111 623893433 714521699 391925956 205577539 554125464 445974409 591165841 566286510 275343080 307392099 109746250 957346514 561689739 292581222 127509075 607730983 510053793 50438176 988221529 468447161 634862369 500240935 588516085 652066995 443848265 452101162 761862371 600385170 575224547 551038922 324119787 896238483 747826701 997339531 92656520 788860399 305738612 122776927 805478842 53621187 41703581 949661464 377674688 311958227 692924732 89526456 10591994 582640380 294117886 813849919 683195463 374846301 141681590 880245905 896140551 988971925 481148851 1429413 165331579 822664416 212831624 751021571 412949160 66541254 457044072 842811692 652988675 434117618 220786922 559438136 991271699 159510726 450863678 489504158 674234214 832245308 468049788 279375251 524591393 274708560 714739830 756639979 930630152 520463356 105348795 465443460 92784506 375717202 378150917 393623233 793145004 560128676 448105737 354010104 256403380 873483952 402462151 134890529 725342521 622079625 494114471 120996647 308431768 378219388 622881996 551414952 316304773 810509038 966231653 406101731 885148648 409502250 442809199 250942668 681192237 646442641 413449325 971209192 431547811 251419218 164316805 440538267 239640697 385784868 916774323 66787679 961678615 4354497 712308318 571090992 143657644 269581369 190462811 356237490 423735681 779008037 681358559 20069549 104250659 109901757 631639502 659624129 36721495 918702808 601894186 537793177 244280066 818818033 621431720 33881444 608788840 513707854 845703862 592867666 295771039 734606888 617222515 862743448 351138055 604991533 917162360 264788113 789061890 860682646 497962168 752834431 938366169 397280775 222181756 918692448 369747649 494318382 819526766 702160574 217492429 135671234 624802305 947377132 522115527 397399647 879389997 721565859 580059966 368907315 371034704 591505973 705103322 314480503 639592567 803445322 227288969 942314653 743203646 259997318 925374127 196078518 723764984 29677380 130065738 465056952 275376424 206502271 835215642 433664017 935941812 639694074 481095826 758573615 47339085 775840920 86110788 248927058 558472724 319721280 870252417 600748988 194004140 207473961 577214782 581455194 907504765 808351778 481480970 836418639 448609188 411055988 468581495 717199177 579400668 919532775 149996244 897414272 774662206 591286279 974995694 466422034 517913743 847310683 76074829 907535431 113725729 519051750 529541727 229011938 250920486 429909364 82768526 151714071 783010356 200250731 497990676 373458053 347243239 309913707 498386736 139147724 742008081 853456747 923059069 509530763 723776677 243969904 178385093 502676582 350709884 964568791 905646863 726402026 23317005 221750667 651925448 35882974 957425212 78168532 42825768 277686316 685603485 383930243 128090729 102573502 2394590 398364396 246527985 782581907 375852176 265766271 744014260 425812839 448341234 120503336 268417923 809525025 693932576 557985473 828742700 61276547 459689066 393477820 689316711 373545325 176015400 190664649 881640127 213125635 418601071 893505216 285642548 768862066 674141531 823624170 725490356 300618533 381769091 458325673 887276990 736017085 90224306 977402333 897183260 917713506 628396948 71138898 706712477 271458609 895692849 758353112 476942319 948794256 204664761 831873049 176480383 971666266 72465107 749580209 487627803 848845788 712729673 121284373 649180435 172959010 853137997 897068601 427143783 934332811 923624612 587898787 448803340 4266591 130549714 683560464 212109345 554447323 627685791 781967209 563509552 393574797 945196366 79233918 984106398 185377840 225990063 136424481 943616105 996667997 305222502 84293570 600283020 486078919 569976151 281141214 204445564 518776970 201085502 662425570 751334140 289843298 954952036 292198355 449728860 447216329 628537853 35832658 851827064 884678525 280219169 307186300 295746538 26813183 971657135 680193060 541307557 89030380 148211138 950187583 535043562 950470846 338606618 200587586 466497927 939728792 316524157 429731124 553070553 237477856 5289821 786826165 267788924 380746833 816661287 243152139 671142263 410238786 321399685 587021509 477830723 644429430 611913897 172987405 669970799 835190498 775143519 87137838 690303012 465481256 774755033 619377008 908506223 442392609 189390544 295159804 652384297 946150919 363008141 847765743 431446270 233441842 372545146 599183652 521111668 19911299 355877034 1823546 820528457 111612675 870104391 493371706 344258831 948931046 313705465 572385421 432280961 179430547 471515110 538015969 868445413 311972808 346925049 801910194 754609542 840144184 111001719 833862065 111380854 667526255 118366780 712251594 776388389 598680608 186957725 118997886 817832228 983235839 87402834 811519205 600011357 285763067 584708551 46846742 832834068 393795992 342840172 985630996 624848992 492797759 352316920 670106237 337660935 470047135 602423228 615329642 864505437 926391364 306897348 794607855 635612814 699455062 825732585 662720087 617743517 283138061 690343946 357060096 352441532 121937310 254098926 253253526 845317330 435021584 428578824 871842308 90408028 231025600 346874648 455458125 329355016 794592628 833550338 593279637 376503649 666257722 377923430 23518637 162051782 470772467 414432155 398234315 633747770 747106952 407662816 491166612 736099776 771074579 703473164 18514942 969781642 929062213 696606040 103202320 314435716 728530183 395316578 733814585 318853639 410161270 991013091 215719801 819588205 75824051 9986877 818774325 288177449 957132031 980890228 77878763 660250294 919422592 856759934 79424434 385991068 400944526 312591086 211216394 58828783 637248372 503429350 657052634 693705116 763118662 394835119 239486166 699773147 123145454 98868756 857159927 738906931 806204869 743978120 428236337 596960266 89256922 360405303 808430278 729565045 371153910 811606534 20625195 250842492 218429192 55330491 46222952 364611707 219889511 465024876 938416034 688959415 759329970 408145567 8186387 999989192 103773889 901051088 472470159 964510006 727453553 509902051 391589815 455560996 838368850 470773559 172120869 925877998 638064274 491627021 717720145 76429851 213592760 525880996 354006655 133264414 437099468 868667291 668678019 104695286 82490969 676213398 438918935 361545533 788812479 61402030 604211019 546416468 366964723 964646969 373444032 776423977 660230006 243013138 565906652 653257686 994144446 272123972 628002876 517844579 497981606 297629578 347702876 694735904 341683453 308222302 658741080 173878067 373796155 565274086 431451290 255627560 679663272 754969978 490509302 657737895 991901099 499685611 397079405 251332738 673596052 460784079 255698929 844541524 23400842 759072209 374510079 820817564 424482323 896872655 422031117 707564773 32333234 429677381 761660715 665783457 650892564 443582260 407584970 713801935 196637885 634053241 797062929 561593018 436919360 905887597 328495356 109677759 676240951 843946323 595174507 648570862 463898368 570879967 407364090 854108559 762615161 965280665 19476516 132226332 588714277 842817230 90974278 309074015 351349054 201286762 195291696 164536025 6598475 728763387 647853522 559175551 683869502 750163880 991127403 693950797 11232580 872660934 796308121 277132927 877094040 122694984 590245193 571600461 727183924 360108585 256799230 534890107 15479211 657105614 255683013 89427641 33780258 615549454 553068970 195320382 72587639 136555825 802631418 91850890 757258634 183336051 384679035 276532745 117663336 157106825 808443742 418519644 674443006 66094299 504107973 500704860 10484056 139759335 308903148 217736065 612796691 257582751 847210200 273166936 35939669 897571421 374215965 826518630 530302461 772390401 578440601 643958120 462679535 292180545 191635162 760202792 961413991 57080001 974249512 439416004 664506638 904041083 505429043 716283915 724550206 27225546 487993318 989721529 186480318 18381500 162862500 714027933 528073954 249987636 286120221 612861196 818988894 914773016 979801584 503059177 936987807 311662057 66482909 981757630 578000892 761986987 995844930 571585784 739343519 284226411 51075003 865061870 743518405 798158433 942086218 650818212 175111921 440910787 246149445 107516173 718356174 332489300 385627780 37548871 58667321 714959156 269017157 615989786 583973503 882586065 81653549 648890140 981946780 894586991 708348455 446955167 767986971 272381249 625320373 780844658 836732357 797705965 970979721 668168246 220727177 23875033 99526192 866215097 914097310 70462258 200645616 976476380 28328645 825943889 508974446 335113029 889673434 123588641 12793444 790778788 833572823 776718167 876936836 621848512 155345275 44673379 357855850 551011814 236075737 55180284 835778757 341715898 36885209 800953108 731220429 709212282 882891634 151905089 115391287 510791481 631319421 986890669 928985445 781326342 625693812 359206904 393711153 440136276 314189879 969688137 495911212 584837672 845078385 533241467 427567964 305011207 762959914 285733363 867696716 616434667 274073922 612460618 120808084 159215270 727416162 818198095 311526009 764057943 527263036 533353078 347830463 236411363 901592883 827398013 242261880 551791089 529081251 924153595 157871446 107739325 313345595 874018525 617658299 273018601 953627002 704555466 36418411 229716286 483988180 602742108 360701383 380477859 725515213 469829825 669930359 731944442 922557505 446970830 579101538 833013736 197699909 1771397 260116531 700820301 681059897 854889473 724664414 757340052 167645912 944899886 402459535 246123379 108917421 969324973 189125406 464114546 306996071 881357522 298485095 742979380 792928748 105561374 774321984 569700795 537378319 533026473 951684440 335533624 588976509 745193977 369236214 411834837 945893811 313987649 27731880 608899983 76158889 891152066 423682576 835615696 449733037 679493958 28927078 990926006 941766677 386437393 595630714 411672752 726229524 935600229 305352138 16851944 359793904 733590473 423989890 576290550 143830997 816472034 38167723 338881021 160286597 180328331 783200367 87706825 77841210 572169341 956154680 300534958 89935172 594703555 573411683 496021811 114386559 986096690 818424774 507270928 422962178 443430022 796138561 989196113 822862294 582047674 482331799 587077676 653504370 85605717 199488216 711980772 567758127 894041998 564024528 996082884 537768332 885946490 9648539 584527214 299516532 253994646 278819441 830323843 320172332 967281601 208891323 1008542 261237243 10614871 80184387 623015396 598268493 488006701 564531000 770683201 710005980 473296711 297889072 388114906 916680743 121441878 758970179 354565949 85000219 960640592 42224672 584169519 275004779 553379595 491767625 71392317 620671345 750078664 251583152 706888119 942941879 57054830 515823948 151317044 278599944 995496327 271518794 156999406 670484347 807943703 771150341 153702997 850055227 506671330 562893164 503236993 735128345 849514472 919429375 705924811 576793943 155426620 552178673 279012714 714382854 87716876 346518792 12932172 122919735 506877455 463520993 723552783 665498162 266911879 544955157 963810424 682252128 182269690 285470416 564148769 459394987 936623786 268442561 542599395 338162717 652726253 572712834 134823072 448528516 972827772 346611679 463298353 315499046 676602378 202345853 370264671 90218487 824749022 677239227 475184041 88842141 321642225 518487167 178144061 705916843 915619238 12266679 485080247 88174379 234646670 923250337 304674727 32295592 67539642 623359330 531088846 968296299 155770585 611150142 448974219 507144454 419390837 934372347 270172652 779911883 276961470 89588006 886391501 119091212 725180462 865471689 130353079 133847216 830243845 813245405 280151888 52201064 800459635 538258343 843954013 826539005 842324889 845198868 281013215 291059206 492263778 974788285 223238371 541949985 360212812 482754367 591887004 603063114 562798354 479212412 178539194 30155411 637789339 378688619 583891003 868723426 61544750 54293348 932398286 128202085 517081392 976258483 221188652 401670559 419099455 110755962 140463526 258566680 867396702 552481517 366883268 991466248 550410911 526741438 115111037 482866837 813009523 927575188 292387038 127630409 192519010 241092974 15823311 495697037 982280390 447783878 171123946 628850270 408249676 516770195 980891264 687979942 156449846 805229206 672677726 231235065 994465947 6139785 267240717 556077650 281046035 680172057 83216797 643432094 897291838 407175812 23697305 338346075 196265398 952551490 972338634 561918773 443242799 811393961 988546223 293364073 24678729 521686786 570327853 873565844 550586185 86021772 764327633 446541372 598334347 101729405 974754542 420204991 731593709 375411108 58453976 703830170 675628863 855358106 151728245 649526659 554822989 921028646 543570284 905740079 868673927 412949757 992556447 217519457 318614172 79705248 199581811 433243238 582045721 281147164 295135031 665269991 984905805 543684888 609565441 527838043 499952479 271799836 343979891 437414706 940314518 441166636 759356342 869563871 375895277 375030212 684955855 998930004 467153366 715442944 691022998 219887023 923065552 770721091 187812521 262772788 886197169 342749321 826658192 222720448 679088455 657533755 978096732 825059397 529708132 677996033 683540419 695539917 57061537 350347125 547687956 174860885 230962292 425511977 115476440 558558951 613405816 422918857 937017651 992158757 843653492 921957692 256677518 405525348 925748697 955326076 976910873 485692042 793909062 394304466 852844776 11479397 207946325 99679754 488247946 633451306 303805548 718516708 451982146 96286894 296267766 470935105 190840801 723745806 387315630 632847236 8981134 348760843 202429963 719228731 357216332 364974580 556376959 165125890 142389163 652211282 908845825 945604718 300387013 288182888 706434404 38277892 918640764 953365420 373127823 876443029 933306856 683382581 5259340 800492201 611746413 90605954 306774178 309288931 329985600 808318267 906166848 236346298 477193679 396313667 307651696 267020466 198453534 667093838 649363195 206348190 191213345 739061968 961318321 501992013 56024168 120775820 109841263 109979267 988453744 615987141 808615364 142416624 901253095 497311073 464474789 617114 587980359 914979807 814102759 404672129 236612153 342522904 463530698 537563354 204908893 962707744 991332552 126412888 418067027 490801860 664269223 652506278 223871739 905000718 296731168 690203349 854138888 133313182 916940589 741443099 137567750 53995147 364767417 523311968 614280953 502240151 634725335 885291789 456096310 312984657 486885383 322550833 974064477 810060487 107136471 423558774 317436654 981753502 911154964 515000618 483676559 829425265 330243101 773909743 178399900 634973159 328293348 418499044 709222780 851312897 446455531 722055841 296263043 508204298 809949115 549641668 661644662 742550245 971648596 161878740 810977975 678714518 589510447 632215978 323881836 629169901 579284968 778306893 808734304 287803236 925791560 292961815 44129793 362950678 36104858 701673002 226108534 766033866 806959850 839696897 647923923 199545327 19266529 563853430 862242959 726017765 836996409 724751403 934363677 749700814 816227515 3996380 774018449 582317379 331877568 846285426 626324971 561982859 594833557 976078247 612620062 798048405 416649837 276192352 122338998 349280767 448060203 899271940 815072212 336356229 181134454 36122188 741303314 837712125 888275404 421575634 689135497 314474489 821257635 60346194 406883185 997584833 474093135 211134256 347368462 351042646 108773661 467357974 296905779 726805519 609888308 101118227 690921515 261563051 178344578 37347360 678259063 756484002 308456939 12581796 422114294 367458914 227722493 712720969 902878766 726947320 196946984 502195962 45535188 170716849 960519747 688245961 520375495 163926463 153468399 795169227 426337312 468234677 237019325 684247303 816241458 272689045 534267336 827391045 891450503 680580085 211295544 600504761 901572882 330018974 505501744 995428787 69036643 182128412 7954616 186832986 734549440 741240023 313960533 799381560 712485478 185836251 802176298 862134285 864693720 712443787 828619210 807252626 519255478 980880823 53426325 912660631 397101749 515347705 846515966 25781070 190035197 152625427 503227631 753349103 488371538 631127685 595481691 553485502 188443590 516239448 996247227 263183337 530206244 370925143 587282621 530672835 407890644 93617540 338553061 620501400 539726375 721123430 708552922 758451824 418918868 191076810 856038856 745895544 25936633 35551887 593874580 613277022 901636592 585222092 285227264 583177731 806386299 365617872 655787560 607848592 817165807 387935031 785834309 776686675 888699398 768343779 485837438 598497750 697904079 581485026 804575453 293377919 307250619 243881068 481222798 368558251 204820957 271963257 265568724 412816461 392381761 785192766 892442332 489946259 3191472 898520025 987228602 331672881 568549583 266951705 140546815 681595962 663115987 843773762 63525739 14938674 217562755 23075638 153297087 980481219 764145202 345230749 999979029 934834239 618096436 116346581 822830291 869290665 894791173 749458764 704720210 647740350 666283082 12097358 558620625 69013053 189276915 407168825 497598634 253225945 255326414 660795134 392018783 547941612 865135983 946220632 682475862 423046068 110810384 992730495 491488344 169149020 245483472 136760964 451741564 979155100 306559297 164949535 556709822 744122022 830271624 186325940 140850973 431736843 954403108 665110838 404708533 853829134 152031305 973664640 999146731 176957402 826535269 423638380 988074006 476721795 525419474 152828156 862274590 732081400 104977587 17442172 750216884 93069939 43871334 960179699 291731347 846473431 959045782 484586377 78971139 793554360 850127575 599566268 122645006 954939744 727320655 958565140 675932999 271907410 941645723 153204721 766253635 360268717 61545973 531235283 430537626 552028714 323962460 888947602 786561162 525152234 913026213 294516049 562815368 950584948 194014267 588080357 803465863 275369713 942527826 18600958 159027092 380096913 597276861 518153181 35535865 14457199 724349164 46017316 123993551 411899627 617352827 709258439 730997752 659082275 230964886 507224658 627106122 242121252 470080504 887211448 400897384 86747965 266785805 537662706 801811211 420910470 938488815 870567990 753798303 782143264 494340702 810156257 853456633 306083739 122607547 870055907 698020157 577240134 214677900 129110066 82732878 625631837 716052472 167059413 31044818 926930089 167097745 931253971 494377871 998035780 841538525 514725207 226995060 273185071 481995679 1663341 974642015 676434838 704121380 292931659 824967630 447921006 682815399 166425916 294574460 663258252 74447539 778214182 762208227 345648270 500437438 320394733 568199708 323968838 50826291 795773295 206136039 214989988 693307051 254473161 159233981 294041029 930297084 439477508 514404741 307292950 223172217 79711280 275686424 715266888 403704671 555162802 115981444 466306116 271710124 933032766 448496116 266933432 366669826 527996479 938779156 206839964 574791062 542709114 84510963 528695208 561154359 880020760 362949781 835743227 629230578 575175344 263948583 657443916 10484245 759468288 21868433 176189172 191150221 8385375 752770824 490756667 110240810 571556957 885383348 814462309 717418273 58051688 123642850 389479706 476273614 914715953 152092821 707887185 345328593 703642157 373374535 905889681 389975787 535216850 471123389 969458616 594741212 330445650 131947681 538199839 313929144 45978291 776332864 560656250 272487760 645399335 583494238 85331844 188596729 924404533 24333537 252605536 200501342 238353618 740957863 492887423 263502501 804746274 551407867 892598616 517178941 87149715 783557070 824557803 758465982 423304899 77876228 210704090 651375001 160452396 623474916 495518697 646346855 770154557 850844685 421976841 870655381 820716074 112096419 356375696 179567182 179994951 658278274 167248659 776560636 701475213 278062986 147372962 39325391 137589099 839151151 817027584 482893416 546555939 842968591 209120054 362519335 44991712 849614897 759815244 34428575 618388662 942981103 87760773 82957669 19641385 536856053 419778932 265930154 514467801 329813444 926483431 788177577 536929723 336247889 649250066 730224701 95445530 795799752 158506375 314247606 400610632 465990218 989545068 78210114 449969204 347189592 933387090 481756891 572878272 422090660 11570928 297723045 527290137 261394619 135272588 819514964 114928865 565905336 310830570 81705196 679649230 845549153 970715284 517327832 41190721 536891768 528697955 777226094 7496325 864180492 660219290 252299683 247200620 529663926 385518859 530539437 474736709 34003682 730088034 372710456 562958918 39363363 59020830 955210402 720772154 732065702 505564726 545161586 250860925 944731182 856918508 7268768 843413679 519743099 798357909 271098613 223881319 547103897 37199701 795810223 701245639 288486678 570397442 110207470 5184728 308753473 102457395 663743042 525992350 192850811 327391706 125661889 826856102 753219175 91251060 834218059 364208836 555519657 85994121 772448241 897321911 366619846 994139779 135437570 887411434 560979566 560730257 19369751 951405484 415333943 811622809 211057137 366208955 412730457 170491912 725550200 180806286 41938375 152584453 831539312 256731973 359451257 825620004 558200616 764968715 830913965 700263277 37754220 134612437 400548619 726524259 638150417 695717277 917946833 987524709 917796310 304671137 404563577 399013548 767067626 919189707 70557912 499415717 715387078 539938689 653305677 869225775 527737934 631304515 272502698 223842356 281281049 515012263 853624642 517763861 431931233 168483071 686924530 789447119 697566448 86975057 308691842 739124187 870500681 525472473 548180159 168062941 607313910 499046361 915668410 724271876 260557019 878404109 8380978 270583468 281610503 570936423 757165550 172251265 457587348 720389498 767550475 371785719 484151289 86390401 906087397 244590924 684226205 404642373 785362939 874103532 491540202 643099902 71102891 779714794 353049557 107610702 590277444 629212717 473893651 609393569 384926735 548814572 247997342 50055758 276528417 427908331 678117695 889428847 90606630 933683413 941179071 866032400 271583647 367643039 276064524 556187364 408293561 55479403 962737339 538553877 610973719 424438384 145314559 712575698 895370801 842640784 441981883 150148448 962591503 648113538 978032396 845698005 374859933 383227725 629370914 824531994 676900984 355078038 971856722 31298349 389921330 334294637 709292777 858391936 331285933 384040209 365658304 220638375 610606408 956961396 25397644 482780142 722069874 964312506 359235839 463557849 428669691 955162070 115605965 641840525 582487767 645049723 192305408 826072534 648915701 77362318 371043569 662531521 304969419 441995400 687668871 791247773 763037881 959444933 658895685 361935805 113835045 810646807 82972439 887161110 847018764 226874641 949215735 860386999 905126367 863808397 754741326 128819891 604466473 201976424 360680637 452409156 706865751 9919196 702368728 458773869 614248261 322217740 679529428 830640186 949225766 684809616 798727847 965349442 585720316 422115883 827374206 33481078 505873037 202016592 600416059 661014694 574798520 1199539 118107978 524387376 782477220 747085467 744559353 818865167 539707217 357296324 292113953 463973982 37717515 426908778 109765752 977481815 630570282 597518822 757349972 425286517 564472743 703812445 438886164 46827734 377809989 929186024 800490472 577728029 474785965 74477066 143256039 59182221 608749671 735728643 591654002 772112568 730170838 60093630 497689110 347581038 728277497 409350067 235625141 756603121 85300859 715085448 541133674 386372796 619971218 84015248 593867322 438000938 177983749 876085180 765633101 283764947 226279498 725616522 610815064 734272828 753205270 910199347 72759350 62489022 256136054 569329389 883460857 621592761 846002131 144296684 120485892 266889705 942101339 865977434 436356878 927467327 123142576 58515239 969877343 771879750 746043928 556660226 395627372 558723428 926447898 447041875 954469659 863844443 695458404 42189760 49941853 670072463 129078697 886179283 731064250 33447227 930987369 833393288 174728444 631365204 17393390 938312394 452189075 482971767 639127736 24777106 151186905 840045579 935055908 317700251 583824013 904459797 869721090 912180058 43281223 838392904 917659458 577797472 846495363 892778115 257800571 580817164 325466951 736151817 933502519 512217424 417499225 505345115 166156782 393444232 458170693 120726555 405249882 646545968 8979511 793262203 943574582 724877686 709579314 998793979 630500796 189716246 832824521 211041080 745425549 703082700 938436916 1686585 727036344 124314917 648566176 555447820 704737978 637521628 200845925 47469147 961909460 727008224 184343782 271975627 337438781 264849405 634118295 389032086 317232804 100736230 288171003 858038710 139252472 936978773 296499311 360976802 437869707 492796328 525475957 155203720 730059869 933970321 493052115 191141610 422703224 373663909 574041645 998040690 725731127 849063398 176582169 59387339 376648366 653610158 538748740 97701276 784101948 572193399 852911142 119358512 571532998 444181497 895588185 597289431 852724416 521303074 510154686 542441915 214193128 675299225 181361258 478806596 316062134 714009976 329993075 433252793 504514381 263248730 320258532 837069008 295688542 946518171 800182701 968616932 564017550 511346445 344408142 43706216 903295224 613947438 818328214 418055951 953850053 116689575 182153679 374604146 12577214 484543853 711661024 175300698 83761284 593974300 367615310 70439214 461314749 194398977 329864056 362258525 427748930 130854464 134624720 531675320 235916511 774125315 80739021 769685196 377128691 210058627 91460225 244021670 688282288 913599739 107646197 465553026 390744148 972151445 636153802 878926588 200058969 466530799 456473290 724928470 222687274 769340989 116875335 584123592 593859925 929588688 107486625 487148143 304923058 838540126 409669096 933925826 153490676 317048234 535521423 203981020 258465437 324280925 522904021 557032510 379178164 781479168 651266206 839346432 667517018 10799132 572769517 465027804 889973166 838860064 894426687 668751654 844420526 282059966 355764202 419921265 910290764 376431317 985268501 609790893 321092167 554837934 312637748 926988693 243546323 527544929 429113480 945682132 640447914 162142696 661463782 492393581 716844881 855643020 255829464 591930176 504360660 983933742 793986538 182809389 958267696 558495514 623947783 916238968 291351180 332791558 898077698 327955897 666727120 758714352 955728624 202861422 65216907 337669878 432826882 207419737 433397888 509005885 9416607 987115612 809405782 708344485 94901922 570958309 142275920 344265375 735222615 491153274 422789773 640400601 190451460 228555902 405130949 755033600 322273990 601647336 530549674 952614347 433823047 907631457 276935747 248598641 22589206 747106733 641797329 821555196 843662421 642098990 496655516 805516097 907549817 955717457 739940838 340334302 869147945 598413450 616856582 886128578 754663020 371420834 773531169 949876152 27992829 165899485 771406724 234076966 984645743 804400359 750709045 32396364 877860447 248437151 836463250 745190831 977392028 599211134 477437472 352956493 525090585 348900962 901807748 923877924 669708772 630275118 939182163 292762519 110138879 54865080 938597393 874460629 325465677 25239844 380011811 713927282 893626002 60753868 898351300 144962525 235873996 645057214 278366552 994174349 223502123 126960804 456033374 984533060 325702112 950895505 384130126 990604682 938917198 341774289 751379890 589487815 921084131 285823079 103908343 554759935 624021103 712727400 76361910 676736017 113956233 84421591 745235825 133245381 940124438 321540503 458058768 385959596 236098278 993071808 418628260 886075200 296562801 426065526 199095513 712258235 818853662 377170871 539937159 451730639 291076241 150651978 465001820 902119672 947920725 898014707 514100537 858872274 931588796 298094487 354813434 405341044 252614590 939918176 447544257 906825162 786504620 862788080 875539020 777900129 749382145 96508386 580636642 651097682 684911393 504038783 125988592 991327099 434225623 714354572 142723870 647624326 928296696 751072579 503430337 407476908 967051117 922438044 639453229 376153713 885567691 289855256 686761642 939698064 313151617 688638855 5772444 291265149 127650839 202200921 973545002 836888855 62836225 765668166 797335350 572404296 524394067 463502113 484845036 411524267 217701901 828849584 845280965 213153147 864593280 491132018 302365147 660002644 585137735 74976792 344395760 782205001 751487689 717045255 380080715 364688846 424155796 927776585 294184764 780865028 669246651 733301945 740263728 921648326 866032233 78367283 254925498 741442884 88050989 248972030 162907758 557603533 102178124 853032349 481105687 596690679 501895809 378167198 741252121 662427412 636372740 960150228 62354561 163112895 618656955 959057013 865151273 230959849 421959121 522028048 509930476 381220839 348076493 964139370 538177232 308721044 292065562 872146521 410185633 303594243 952342730 705665736 208212672 966297569 959137549 202403228 749905691 177091767 536934760 205076491 790885312 866576657 956355544 716856199 898517356 789190282 429703648 652209931 716717399 542525247 206852123 625495501 543283223 285948717 845799966 809225256 793459201 374533041 477126169 819994093 721645155 489452299 547942410 712476371 396315620 718211492 858467316 440476357 43471755 292240658 925929493 347447121 769980925 206419173 544217026 650652155 217333035 143592088 971800268 790301994 287000232 602441789 569123864 722379309 233351119 867456600 778133942 867980815 149091253 263042883 893959485 359301316 249624176 767329633 989823944 626036641 362123546 590340073 864563588 455152137 727676053 693820100 361695404 348300228 809390277 820820061 837402395 648026843 501056670 271724187 78036340 781630400 1026183 228117434 449386148 370186745 493307918 508137171 885886536 646107411 97359946 431738568 907825887 567729623 197717209 110570913 504171805 843591449 864730901 289279608 125925308 961586804 269691157 169465452 868499691 452634273 234706589 79272287 676897074 310583760 990317186 815796102 355360695 383381689 111576599 550497038 349293971 614463815 5598727 605444757 629518737 605427539 911348013 95490200 868226825 59772702 172775783 292758446 688513084 244978973 524621657 873866176 215516493 750362993 228264508 583453720 272937277 280346551 731841637 878504445 626536953 901677858 750551441 556499699 437586995 210000937 576175401 700760965 328132984 417585350 714741466 862350613 785609121 44833671 367336831 511125932 141634996 671032 383691248 491893044 458248182 331295377 348042113 329931991 598833620 560931476 392266521 582332611 752955865 626825022 669186844 371260534 704863869 188403704 389208291 859956002 291674086 303291168 473437793 861882072 941991910 225172824 144373341 123010853 430364713 696658514 606531026 515995425 510607757 37977161 883808448 617275404 642224127 41830830 858369697 224189062 569082935 607471646 85547709 514572941 252951088 466811102 618957445 764007691 966298689 99955510 768528196 705372771 651595352 889998645 639790383 826080077 527550133 795315114 33751145 780182339 278624183 239225242 37758523 14076124 688987851 318429074 576460032 891934252 152352976 482483658 304705592 603636900 716995730 391839651 107625917 42331108 676625985 883243228 280132201 113515316 507068543 841350760 999161900 426574069 859591352 583201252 612257428 407279855 904700040 227604078 306566434 371825699 640187466 21533936 173912500 420029254 972757209 719841135 637713992 605625223 529107363 673168132 958543871 893495896 829109317 546328214 477317533 937777075 482648858 200651754 905485633 360945833 686224453 597751134 297697046 279185958 771544049 686949900 751256758 237757337 984052357 647541510 755597079 832265949 695533943 629453784 758406645 514733695 112572216 673576544 841097940 718685659 490313426 814698772 413296308 835501602 809453798 961357787 770738166 294861773 485705365 527527757 905926062 451560079 193937252 70057611 249253531 781066174 555522450 959435281 203468345 493466511 267862068 530890154 602844519 237464837 520891702 657143401 132320454 906467811 426993103 347662170 57749642 752457106 900593668 755518309 765239662 101518682 348872914 665322729 581249210 47872198 344489866 213913208 767771921 477599783 905551734 759466820 223144843 301049898 23480049 889183394 473560420 319581519 599092097 978176130 555063062 180026677 386996128 967435940 873800529 710367909 739604334 38594867 737232664 987397664 721732716 601826841 223197580 190779298 350396609 755777425 441219207 125366628 97550049 863578964 330337202 127746855 651021194 489879570 405794676 632516767 806057284 304287792 68948481 335436585 612470220 450084490 341318702 552187563 486454194 541842704 220966813 246432811 830222233 558218174 608996688 270891914 14326670 282029707 325067150 394315867 902456205 80201859 709431913 374681495 829131971 378485809 48746198 188360633 201667386 262802385 318321467 399286182 645866712 440885018 447003594 292601423 426195808 880612888 909157761 191587318 575735989 923185801 352321432 3530665 57854895 989113228 735626494 406516664 362162164 388797408 256702454 987214170 11877770 776392569 404608232 893911964 283958511 724548564 753556299 559924284 378480374 785281195 196040601 504315879 926555368 402419153 845448867 90873254 300469162 364435940 860420719 390624937 30891375 591644086 936334150 251308431 417234870 831937168 65856738 409087298 462430139 996575433 366695964 606068490 387974755 244156757 369591716 376789679 312177337 372540981 101863117 325671332 621227909 938691653 620092649 551163213 513084155 857669338 825676171 793706965 561231399 984403100 645785906 751430630 755069564 262295716 332811166 858810526 28264274 765977271 697081642 766479826 204635930 281630717 173929311 720683571 516551189 368165891 518566155 633143458 399539659 102909902 552969149 3182387 17263 395001620 837909057 463841097 81202010 665787436 161019874 570219874 761725882 781598625 361596891 912585810 423854653 735113059 285786729 946710011 944153593 490684624 352252450 405333552 124690971 472541259 360197266 599022285 906950676 468794126 463230018 360248011 916366775 487808148 63930412 962964077 775498844 132332858 875985225 54445585 798179230 632837786 890175715 172778123 208241814 653416314 27377762 791057844 635186736 999701115 394752041 760417885 502198205 551873402 199142318 251884852 896843458 187110743 803951971 807891250 642167206 554474411 243296443 916060787 733969005 217883835 748369538 200712982 550912165 812399505 138397784 481876966 332214528 148193450 881822262 329023715 512485679 266538947 791255611 224073539 873777855 209156061 474294408 87297451 26645889 781166189 147847741 939962946 665145121 300373077 311426084 50206216 439143614 370267955 383181444 84773197 831771176 519861984 392550973 732580601 175498093 694830397 898187128 76237590 653844411 481622252 265695711 143857443 737685734 260139582 196132372 832001136 76352808 821057963 306839757 537492961 540540154 94699004 893292920 617246170 83672069 917597074 476859351 105100549 599215633 526238627 58592222 215604439 781216567 99412061 445217229 152641386 407755525 651999765 158506938 637901534 33761838 210723160 33364402 274760264 641612674 291227731 223807266 422642202 957000458 185301260 299479536 447100712 266184232 186146525 34578391 922299796 145450814 722193407 443762249 361627917 109664155 368325159 78030451 972678312 702030041 62383664 11180343 421703095 136788443 503828001 190674165 30444673 487574651 26128930 350696611 370565818 874287113 962064716 668292858 800796455 3230874 19421980 117011978 332117931 537362493 867384604 217397973 136157413 343040480 405214859 59503885 797006024 642223944 334268071 253320807 142992399 902653167 819260636 394821618 32427419 681786931 838357055 463960040 733870559 709445154 3883799 711044908 370849237 643290060 714049243 149631523 445510731 298311571 484962472 467639654 159672925 415522185 393615043 422894763 873678896 711460594 509855167 43151914 909752342 753880028 602812134 658943000 945831002 977145327 564323898 974333470 618641466 571381763 305499038 830070444 687825316 840822482 497499668 391165939 593397215 365945294 3757423 72785111 789340422 34420057 573025157 297820107 294422731 392319936 829291862 513670910 712695166 247141394 852372269 860854378 937432596 554566380 415828924 636699690 533930513 873816425 695442297 923498501 496510794 95716069 156084974 520560109 866557007 991787599 955556305 91538498 268419306 352609642 462432382 838049752 468846204 192532732 787026145 675649032 591223721 413398068 805953463 754730576 105599382 146016218 35791697 442807094 916250331 192258772 159764727 598163548 875080302 571403412 343842759 619277269 846720487 79050907 279665684 337329582 499323783 255407307 206299632 50100975 889937193 422825303 10608265 149599502 203791067 184231808 312531675 521084779 77499774 972185169 947747235 807627064 487599740 428722389 239750144 29287790 64884711 938593289 921260949 485958387 659399213 87339652 608503175 40424061 364256851 656900253 482890665 983491670 651285533 553264443 79447904 728521979 953786380 229858306 435698970 953181907 181822780 949305188 921658066 790784323 442775805 606684292 742989311 213143498 547838875 156539703 110832451 391089997 7160949 990829529 320576575 125177702 591629813 918672314 65201852 481243826 678221116 904141833 664593193 756877777 494977337 143415072 844808635 559012755 66693466 653544983 89018363 428663315 143643315 544068781 241264821 63270962 482158520 238607983 101339926 799813584 582714227 526331405 848057638 963100764 498419759 206823871 846895016 796215604 629155536 254220965 687544413 98424220 437895971 504345447 24187899 421409515 257580534 388372955 56098777 257480270 138791929 533384738 641250033 845682346 403235705 755484357 96356317 375683917 541890727 811672529 231697307 554292224 612471539 582946133 398957337 414393984 372986828 243103812 88429737 901330478 76617648 90773742 353943132 604696444 203169360 386497710 714718863 311233320 554229739 501798621 977637195 287907970 481516959 326014265 515095184 359951225 446959509 385867333 18149153 547806857 426973095 423749128 468888673 858806918 448555367 779607508 409022655 788075749 302752871 580060322 70197018 643005881 815863784 364527489 154551413 719152350 929613168 460357948 701112897 593996264 791232356 636966266 102734749 79028060 663283030 450654872 507710935 81038120 948967121 248860339 124837140 60449773 828844800 14384994 679901008 275904146 127273547 24133521 830672651 815703565 997391347 506317109 174390466 843486675 397674220 62339377 448546345 851523447 697926729 149497333 950678635 178086578 286115510 771145938 935183236 32661872 427464060 348395352 836064032 177622116 131365801 34258969 215068156 7433511 39982685 473406975 872964010 237197713 818686984 43210736 676838511 549761973 110484489 104686243 765006889 115696174 718190275 162833347 778573586 77156993 926580159 867562538 814329140 832064986 316956761 512571311 145235677 978373300 155362922 149565565 374508679 600083550 93667432 494866133 283925721 231850311 657851022 631222351 123362927 403093244 573145852 147914704 182364198 138468525 49043119 895415612 523101654 945188947 157588148 967570461 378716034 119816871 281419735 813169328 707039236 547892844 275394572 574576351 71491623 527159970 90444263 455927898 437290359 69669982 384079575 527759574 902704676 601180570 814218290 185103416 601349763 546099168 976023429 268248904 387206217 736837711 518281345 296849770 53352080 824080784 684381090 890713731 104112738 360811657 98947143 988642284 798709480 615930924 221783854 752155782 921564321 993788173 679928549 960508640 253543570 887144301 906273048 972582578 73059229 673286445 955979788 111373688 851183865 30560375 955978162 751984939 918537777 900778598 628666790 887716360 996044295 12074863 165791420 712636556 258516297 870619493 202408220 193807741 924244135 540077701 864809906 457009523 82890052 850791779 549549672 505442290 174145451 339063536 978560394 96938084 89714911 51843899 645211927 159545940 239457068 233390285 513748598 908900815 791338642 127081568 854804687 355903251 383740799 218721241 895932301 203003343 211993548 244039570 710798523 885088101 897416402 898619587 512547146 241499560 823737347 323773921 864850328 640038034 806495000 298870245 552125553 700942568 371328711 896166023 700180616 839417240 169384446 163560746 364064570 285011915 335004496 254895775 294832154 516544623 321247420 756404331 37019354 254300565 617504091 66085826 992957255 666701115 241020798 695069700 651860031 905641057 339338495 658120217 757817089 892864740 730912998 325299233 125174675 920539163 190675799 52863285 595982179 539678954 354796135 156436201 488715006 653990643 654194702 508714459 447363991 251102320 571968995 581592065 447638947 432108079 148151345 431790553 12706358 756789829 130711400 999061771 22133949 18896135 684056264 740950288 904638830 257672959 656291936 116941461 188300411 725964541 558651027 885608503 953819839 989319710 569623364 628597572 523676848 647993099 211035558 847894893 281401875 101641708 589300202 584686645 101814081 560255619 209852543 494271154 96154329 43753775 985817094 145278191 572111149 334082523 291647102 942762122 288367910 884373834 833304475 896773213 656761403 573605884 36300959 768843817 890160420 56123589 737350358 240328527 623301601 234513597 340654647 257293267 574778637 763343115 466161411 871977435 840169869 985972355 254810711 182101140 650724997 624834339 897895043 866734398 485548528 401829824 921883115 916148117 402189882 56086766 497389499 273978730 404826943 386948477 736300292 740871625 331400267 916124062 482140553 591182961 899659356 495060176 589901318 790483940 983804899 544223149 670279197 808903777 91371274 642410425 868113840 393419075 523149730 550395919 508524190 982781121 369969589 161600064 644847832 365344358 790165204 354199372 863107248 427803715 153709864 165899240 438031122 57392299 248763560 575195064 897215707 615892610 718468108 348555277 593012987 893341891 768434797 346080670 393045416 982187254 298990182 690531367 540173770 354255823 588870793 983304335 621257126 340745548 985402288 906872189 782807162 261111927 696424368 89913380 638641528 225300034 590178418 711252642 686298078 347659846 465935192 973422646 918538427 484724625 869828709 832937051 259945776 433981997 492734103 814452048 998818317 577756187 432825517 477887859 605376613 881378100 672160837 213321039 195037643 543449090 420704060 912754393 286263835 803647145 224513645 725737123 124629229 127226491 162542453 587808505 763868828 167834893 656476687 988786737 785574546 940037165 503235815 471220031 264103148 108264831 774086805 212579424 600385013 120007496 892319067 859814586 800380833 266111458 755139242 619698172 47237415 492841995 678765621 445678397 254857316 624590106 686439 783503587 335331630 848805080 72457450 398746393 771317169 470112015 284659510 968144569 374015213 741579537 531821953 507596343 913032072 97677901 500603456 270624144 598335363 852639582 362942140 841749889 867480761 45330759 554444395 324318896 452591744 321376334 332170355 913908607 251772106 396182503 119854185 239166063 6529473 566653660 912891492 993505489 810907185 424903597 329366754 364840296 774207243 829661920 416475742 433502544 575822932 156574572 489870289 50016759 443923259 922812870 624987102 251362836 278135865 511544443 419433715 660065798 463994794 310640031 91897458 281942150 779974505 456369153 274584889 984422816 689314406 249531452 93264004 521771391 514582937 611868237 156106539 203314952 847056089 927613318 975053138 795988427 395733975 113982969 571098712 711982065 901507640 964241376 789863661 740568016 307855212 591204442 303165982 92358788 168799174 861575377 602691604 228111051 334741132 310666462 497981407 587036201 371177216 10056947 176792796 674835985 777200378 718210141 720904922 619295116 439136833 261751831 583856925 148699141 399794820 364462925 67758320 563570059 174161345 670317585 415659024 588900789 337313852 546054797 868372695 531811184 718554887 607318162 847221724 581197377 85714383 934136794 839740036 208392382 198305759 527787642 248978666 367549270 626409027 944048111 414719932 567835963 556022266 214815443 406897695 72318889 316407212 439871112 995911427 942373468 58455377 205609759 551008360 223802062 77340450 257121955 848155564 433925675 371815215 446546859 897483951 646458294 16885047 436882427 778973954 519329033 562246575 165182712 196691485 730482825 421708582 614744002 367034635 679684530 385133237 985318849 973210788 952357693 449590886 730341341 89908691 559137939 599838475 81072518 161206273 99842637 672504491 320227390 605119496 280783512 16804673 872530904 574885311 100852196 777285188 505653440 772977273 623026566 145540296 951105601 88393600 782151667 102073844 665449365 612699462 47538017 923709439 222153062 507021732 764395483 990190192 608733126 728017035 572026295 202081431 194175480 450790479 483638501 563446441 849012255 59580219 615156216 731607245 90708852 21687604 704349619 37485431 57375633 428828666 912468954 488858743 783994191 15559384 26669353 15000298 724437082 890746674 840073244 863702807 798596790 58641490 453677340 852247194 791297899 787271850 529684361 86010409 211870677 680716053 500584190 699565027 495065737 176967896 320488881 202132190 714069846 49914668 429627606 475780196 569880309 68016615 93645385 212809551 80807302 182040314 516215193 695276469 229123742 625905086 498750199 427771062 178035605 234485383 943406639 778204610 792095708 624945630 167503081 121489374 853502041 437323524 821866434 600061329 118191164 837623966 451878949 145509931 755292655 385948379 176446920 34239815 984814587 328244383 102641538 596354710 310119050 195647852 888569675 508711142 288042603 333844974 301029597 292055383 924137164 46611685 297304121 192483054 873917588 856024805 523991619 228493997 649436328 897473774 764895030 826811765 829111344 520521007 40505236 249414439 359657788 157618999 905742894 539852072 497950943 873813285 794051928 494124122 729750002 437248467 840498399 231720856 767384306 337409592 142016199 82905890 727476445 202894304 996440215 220006679 638301836 615858867 822940187 170679498 556923438 132818126 532613341 69157684 484134400 491908419 762099420 758451088 168673816 180218378 444869057 627102635 824579113 326395112 380269065 804202881 3200065 846898763 578571131 947594424 914638293 439216885 3404683 99790023 328744968 632048086 787944028 465747982 89854150 59072469 987440607 7251206 580896051 881979611 442445494 544168144 334319242 6482273 953820271 244145213 600592072 920478063 99918998 658656778 597078146 257392673 415134649 657276461 75096291 512962898 534437425 946030350 183711113 821139895 740724937 26473292 933042106 618665844 41129762 819010941 859535119 819676088 240133585 456037560 179899308 524800329 600634000 55509160 159239020 772798571 531202510 743055142 497633559 590715100 307653425 606212236 438886880 571841165 963991321 499556800 433920865 809941408 583594914 154690359 289588297 916559987 125822181 634255848 131987261 204962466 703234349 826853370 382645858 94974136 470118219 871363705 966230914 718241976 408634199 756710992 957673702 820946555 757990558 695754199 967416982 397276145 107133800 488882114 487815367 232722394 326563399 791630372 660467780 335407957 55769778 855812888 732967819 204811212 323814192 599911399 229037286 588216771 862269183 641240500 724192743 517014289 970313190 467659906 94465207 961419433 268797544 673828753 700651248 872611814 823362064 500930316 904112546 379974696 823328528 292947418 205946570 315494481 958176270 856779413 723313761 32280599 139833663 111825139 247671643 615869981 932489169 365589034 283945135 104676269 666671171 966784778 348584737 528458124 223183604 750797889 817672958 927007680 663345324 679432919 410866835 995402272 382589715 395392433 385754690 986128218 532385537 996194642 695042522 635655101 944670452 779049164 480912031 134562109 231988356 157244351 47447233 446169631 197580548 183833477 460214085 185571660 211296074 280979742 598050479 521445826 509569521 795130306 60339467 577937563 161733780 988126084 962898398 602631363 413566971 701972418 732911099 451916524 363605054 470168175 737890911 727668347 712777134 722585844 441270943 734520358 348607138 477493116 885137810 515150795 518757722 625256363 369687976 529488973 232759829 60952529 556361407 691993117 20530494 803713744 720214438 628291211 924109124 162892688 765913367 432503135 175207907 39565596 408486316 154523344 534824833 297124614 492274706 854755601 248854249 174222127 925041849 443799378 337633632 925964215 813397663 131235537 684113785 682503011 886905762 579477761 608690275 76647337 960166258 691264277 135094366 361226672 707383237 705334087 951893370 883686366 427494053 723097123 212705974 295602387 506629086 681352531 165502882 107187934 954134041 329318902 425965496 139740247 501001419 109481076 223902881 307252068 143360073 858199297 517906323 471283834 595955892 988461986 341192804 99230001 518464252 695375009 58072605 933001516 759056156 33971458 810772184 494442577 857714469 162366588 776011254 471192596 301245612 79589314 806943508 780816409 975035122 976273078 802239625 67602959 31087099 976175875 62024833 707578961 877714721 325006374 681086540 534875684 304863948 255011880 1222885 830515778 495632392 23681204 973306566 187315139 873797923 981024567 790913697 180157602 714089270 861393154 143557803 928499762 269143619 582189539 439023459 153607651 882960141 940660196 719350483 4790242 445711784 971293657 439985278 952502812 387423829 775772818 534489671 849570183 711114213 598943840 638484279 911880267 156722239 957800854 244226912 590327345 922218996 8364652 109581128 60854628 673866105 883290298 604613581 955745063 721938765 166754813 490799365 933708097 289047234 51176272 723297836 239465814 204111 923885657 645840021 813441338 761651633 70260077 649279359 908147113 11558263 887123363 15059175 786593700 990305540 862514818 670564972 518356895 283817770 339448281 808102971 227797921 922680005 984116374 661167024 608242430 446362741 805335125 962874266 77770426 578712483 567836630 587217358 466341366 190710759 502897235 623610424 619204961 394113929 600567046 9010066 865228351 141372943 323258828 400382085 514136168 624196195 137452778 905820321 437448894 738404602 210359797 686670788 888945829 516718571 368250424 885089434 651625888 221259272 458216085 190101720 220848884 484603968 247139871 944088717 979344246 568062868 38878644 81824992 938938676 607589246 450244607 561530676 433654844 429972603 803948538 344511732 796652981 191146072 964742010 677920667 659929999 710994294 587781410 87769461 534771701 306036028 374764810 297826163 912331466 353410564 76103411 520928702 956707601 857424298 168532702 510985833 908453997 857255208 976681259 723549096 219536458 424209306 978842296 813147067 160116349 622099943 753553537 787995139 267353526 12955877 808908255 672605182 419624025 51619722 162046766 319849102 886602078 408642596 509459865 279290063 629159604 345157302 616400285 318354323 887430267 419266719 448236369 376979666 28537 812037119 150204908 592603212 471559205 255089409 43135615 982379809 679900430 61654938 490940872 58152549 40926855 382635431 836692759 251218257 894557825 109360951 271496096 654767846 507046891 498156660 335772455 638825601 83132376 998369050 410575046 190082392 598715756 5289579 855541365 660680171 345906243 555301853 936674100 388579775 306872869 778282626 573417321 829052549 790112402 281265780 430473371 431742096 541946088 751932424 406724757 158566480 831118673 120520704 438873928 52163992 106388806 282956471 702939553 23040802 664917384 189832995 467430174 811206856 258483278 792480245 155335066 910533588 431448547 609787784 637203603 248297377 412142196 599542891 556497176 826524814 424773889 694266728 446174189 101857558 868075339 108862742 354241090 324673349 445913723 724178180 54221595 781929372 322864440 570485053 432469209 121636678 289872386 620536751 41378614 36036027 81043301 808624571 814799235 518265205 755108857 505926437 424794207 658704370 672066566 716184484 825034220 410688119 775350697 864850042 993072038 841609572 387626407 741527269 334948047 313759409 117655402 213666955 751173598 660940578 996095632 931596928 947764981 222924697 974174703 804499380 99425380 996357922 938371900 20249728 543083430 419794762 232334536 642606051 439825371 270924398 442711314 556455131 562503736 686610975 929292623 767999464 159892657 937228755 516502458 44306998 255404089 856627568 816121498 924198058 259072109 66367204 806298666 581847226 87327019 9987944 279304387 62308858 105893774 898517034 415711963 555300688 674417018 470495816 512706793 748800921 321539330 363683409 527692263 104665816 298239591 332734038 200703877 140493541 151203304 376454649 579240377 970260740 592606633 411512176 435162585 900652303 871532191 647572707 887731185 152850851 296128751 24997751 302332523 147702322 725549524 258526391 128226947 791358989 141508658 836213053 525116064 737821528 995923361 131474068 590173596 903227519 260853590 658534289 834131841 936966269 643144000 757590094 714646612 571637328 906042546 487184025 819990518 328109174 114888647 122256329 527493587 83195930 691222313 754203540 571177624 127643630 548878317 412860493 548905623 232061710 142112007 140182725 927449985 769120656 41346359 927892352 934040506 747070138 687137791 628290888 125702879 944221926 437759234 873785508 650322090 837181097 150812043 324873277 634351063 13204704 771461808 365233842 423120799 455105591 576596628 527498925 56402782 33874248 615784850 93867071 98102594 861204956 262287046 353697621 123120717 957046676 348818323 656788748 158212612 950914833 765521981 755236083 877869323 630888636 201641395 917371828 479607203 155665668 835057499 839652998 172766866 857224837 615339351 365687196 443245416 940960892 133913050 157019958 910110415 50941701 118049522 545865386 397992507 190760966 886528612 251175295 339643372 108029065 519214514 339630700 881472202 528462557 147220429 945593730 427251833 181317027 51337643 281551027 552609353 179676445 335203828 417319742 797717882 279261720 675691056 442237746 235282299 430414818 841885523 322565781 923409240 93293948 712278734 460173796 844952408 332406124 160052336 621624857 798780855 511465953 578877950 934837841 792759868 352621886 853165791 68136336 681373682 341766615 989652063 540651858 301600043 380505877 314840118 387550212 292940469 685480095 11156896 87326178 986828421 551209401 792187829 9820477 530979111 29081728 718416555 819818448 401062819 131615593 292750114 614719066 812479701 524244413 422850989 711805756 143883611 701975484 718963842 877719567 970553580 259327508 97496797 649894662 758716567 498064092 26628837 395710341 646172833 826715265 358577455 483459249 775270196 373484982 9706951 350138697 562550996 420633724 916157703 650242463 204817636 239485624 794945721 245302904 387692052 726828176 405221929 460185044 40557798 737961114 328737640 739617585 444326400 82788034 7792805 400264848 646478454 921869427 252613896 209254658 285859032 709726370 111694074 57605533 209426806 497609263 342875610 964845319 681636883 54806675 914369660 928404349 409940296 210083447 410492915 311987408 705707380 431289060 330341358 893634506 545798916 714687717 638980395 978569759 758115067 76972082 534776465 925822164 923178337 811818484 468541435 782600362 393089861 401323113 580150528 382900735 168115510 757374992 433292778 664416719 612898509 241022539 652656304 593630607 957173822 661123128 14200568 830048200 322201105 453652339 810229532 730681860 539162401 376526752 326737402 457976375 40052076 285564361 645904357 258400822 57764670 70682165 313139797 587488359 651430028 347174611 439647330 513737207 12569401 173969219 386424513 155661331 645450400 648287395 635456240 305531877 198343474 406982325 957569093 856024060 79125388 10017204 540727976 654972005 912333874 980786482 901219558 24232320 968860097 405392047 191836725 492372546 58515707 449791025 408495231 388586435 931673130 399947208 636923135 800714229 848923020 353830276 114746513 836256148 509771268 134636176 738943610 768050966 399222317 724321563 601898896 33913588 361229728 868324856 31711906 979181988 284217706 387117376 554554654 510552878 925762728 38607022 933384763 199661535 971801617 621697764 158103887 434063748 24758549 766714777 676571694 447633469 912765441 757809331 759566670 115541946 528466030 859481872 558746019 658859754 83056608 122931231 170900775 920197234 694316545 750611346 499339229 656020234 687022144 314157811 301731779 257628884 185282045 384507484 242229163 302242321 556892724 405461491 147672835 423263300 884685577 832084271 722943937 748329297 162339786 119595026 28352372 662086566 645038758 176619181 380095039 15215652 406158234 159890576 752128854 184992875 888528139 140460407 786158102 23512328 692272435 636730686 739571384 944663063 934832424 568341580 104102145 371271190 134333343 754344810 872476946 278073596 52426998 275471471 132461238 782890808 854328065 816479041 102443876 123383038 845671503 781693851 992852176 204936682 282769465 915357653 28966937 970528530 10347061 58207458 345174484 136830774 338767663 402175165 928974914 697069677 858470351 869202112 863844324 97646013 381785855 768694913 557497239 862983386 369032907 252300758 345224665 805573253 543678389 784618566 757170954 264248344 321926053 207533419 995339141 563319182 881527765 582280937 24063737 309801935 449756699 405440075 269417572 553899367 459246415 495515825 503553818 959373221 416189439 85054148 741500420 662495487 606359311 955329113 331273820 796729019 818009677 479554516 729887163 580636448 540081532 273219368 94520109 113180971 93525206 267141325 422352458 759650614 190024334 469308822 516215798 267109852 86336097 709228764 716507723 412864798 796216876 467820965 573928900 564733331 82451701 683048467 986379892 66657202 84825568 571273845 771352365 920641566 622553862 749616015 954323422 451416849 708866797 107315859 81186840 185643995 898352373 803376419 711428877 408919799 438993467 167789622 81820845 712917393 161884359 62317602 922437335 503612209 5451611 325252530 951758354 410082839 704014748 888493072 4214964 173874452 459620379 393378673 947300466 256926279 5692293 123435255 497882432 616653771 45946839 718893128 755819119 531599894 495664463 44067214 766674748 450117512 62600181 450281580 830586965 876160995 645047902 828614645 339461979 522421124 584173448 266521221 450375209 815567462 375332359 824151064 928527444 806210094 397844119 105757492 21524961 774784044 96556727 452407264 380129986 866240027 515177388 941363058 647506570 364424018 525975944 726079206 501968357 450713106 40752234 787492154 998562235 659974307 988528278 479487714 965167754 707898013 636536787 707441966 865391748 417516926 649334144 327153869 219693645 285667741 435093229 39807361 827063095 747174416 349813704 37949451 712631094 723808974 187938159 236633262 876578759 162220324 536050074 799651641 150848786 67488371 754926870 934086338 100708082 494104592 489154800 647587382 386187359 981769018 836524590 228954603 970575461 10756265 950993377 346552350 195828049 447390224 445833070 532979534 710302570 774011457 526287805 54156582 638810622 12355361 64036457 72379207 843726207 946125074 47494540 9766540 926326924 785884548 973644123 214088974 49861738 884320921 393063770 192205930 829582424 346584189 985209753 122774773 253450490 210247953 280755152 935290437 907214994 220041971 982936107 279452818 678205878 82427400 651364676 897478268 647480911 259159003 256463754 946163454 890991004 102835915 853241302 741533224 629434216 431013331 846364675 185169381 566714259 195997495 449330082 605329615 750755004 61763445 213857822 967477041 925018532 296526334 932306965 352801881 867648810 622166991 807911510 296991176 121144510 900019976 708677941 12082569 21050818 447648010 387420611 487499297 195675653 223302781 22824820 766610882 754687955 19935305 690213411 630649253 207750881 194081246 792380045 404346840 935792683 521104127 905938562 815557958 255468438 943033503 959286985 779169694 700882481 193863985 669107074 240243347 297558201 944797892 460327989 803757491 418030605 471770321 590629796 824566783 645704046 565205218 574857000 765258419 531750629 994582047 574759161 147065600 763118377 816274042 526076044 100435509 84291222 565407956 359858478 805243599 687631856 296001383 15662045 216538712 992430996 87669755 585340694 503346142 170306825 96235423 126202585 831915397 892176007 755565876 224961602 728702586 27883120 297935030 836457614 461738134 26471530 147299503 307786977 815169476 609626260 224392715 376035211 463501496 465292764 808181987 231048914 650905617 181609687 416042378 352507502 272724869 224491776 189650322 452485289 602730562 748739642 300295237 867851367 555430921 407530672 808066323 500389019 259420664 414877932 176131388 551299342 74868662 346401679 483491393 715697062 305914894 342655644 928344500 144689684 183393121 787350731 975873562 440150625 91940507 121398238 673853172 21542900 524625485 560913026 601405837 953099554 8369478 863124328 458122279 345079010 539210275 653139215 114547288 615649798 77338506 636267790 165275743 274023993 642200778 672578696 296352264 801320399 935446651 473271651 382663362 3036381 136498037 612605080 863976925 160243815 899480901 199716916 535133684 261313999 409289284 757348762 660345049 993295929 776174794 578850416 364518821 467236675 664530843 779727782 326077176 457481708 824476855 812306339 60800522 985715440 772665264 218667311 193223009 276692333 462928602 355706260 81918421 701402527 856973589 720499716 667685404 58146285 472597029 143951303 194705027 456865278 718703025 786276579 477442714 478438590 5911647 706987794 606664557 364115483 207912362 642666999 535782839 378401164 290947575 992633130 917458143 552835495 938700921 88971024 372730436 934969989 86817967 689786738 71820155 794827243 168610591 702469975 420141649 78529278 810290795 300155437 797970042 608711615 522734901 556590731 540941021 698614415 699845185 559543069 519056494 641063207 668741154 267314833 72171505 233118142 750561624 147693884 791827080 695920518 48387448 407553320 471794507 455033914 491006018 72463068 538514553 379504215 906385465 701649644 728645596 206986506 308690016 157301089 152395437 974039756 114199841 874992276 989242175 737550219 907056515 819097760 727977671 710335966 72227401 89712313 720491068 606495929 25747419 707584879 622618279 792530217 197677066 930364091 452669019 502061481 882343484 113893395 581976637 941583175 113381990 42083361 2693349 959215164 301467920 197872857 636684778 208179259 761601599 845013252 441084034 376885307 619960929 729720319 558347846 683061213 704826697 186123232 586102771 8860045 673079956 990743409 841610016 357929131 263099888 950451418 354052573 61574422 714619922 854960304 554288985 132626799 449798367 233800140 784941933 368454147 194976151 45948648 792662485 707608657 99040042 971890369 760414811 29351998 134498844 77124432 205592581 133461926 727082057 560918965 955192252 303782284 986951671 787930914 853115241 596045294 930721618 786506154 261959074 594539329 856384703 637956382 471581157 573707407 265699098 463509772 141646372 76225055 412255116 822413067 402538033 113248774 8528629 748165105 207680526 576439901 686100036 229504405 80303216 83992260 434282350 818280281 815806806 858079860 33221906 101032983 743590521 614762822 789593428 317482897 930328017 430337844 330018307 791766834 9813430 127955760 796970955 314320324 429396414 235276402 316772252 694671484 164583530 122035485 321895807 789619894 641581582 177661265 961337421 36027720 45046 541406057 313570590 213116150 795122599 15632588 823009794 173199043 603529743 824323815 95900824 529617468 896882250 596502778 246363483 671984205 96139541 212749108 354075509 233485667 425425119 123486079 877143573 416927909 921332520 383225620 974423738 637906824 315946736 332040180 369813132 712677578 469283803 111331362 852941076 604108002 246683733 398141983 189706938 733823416 420356194 31284079 746148602 193753379 131162151 335488628 709438150 912443348 965908569 25988904 827508956 209789012 879951521 356754504 79266816 629567280 585719478 777843120 471306754 260044529 75415142 663663336 683859321 197852203 447918812 752748855 619012993 764408534 97591104 280590079 622472617 387587829 764388685 21756827 852748696 468308960 423052133 649914216 319239159 515861791 141996846 466511396 249889824 341823184 701094470 293996375 302919063 831022724 866218154 992114942 874261112 237298368 870491829 203814968 604597604 783760277 667798192 219263931 957320916 35943755 37696783 952191365 357062101 910882327 807970876 17330918 9059022 106596747 974993754 68416630 350622316 533526477 529036191 563284610 402116978 197510641 149725352 312858552 356029767 610057275 23414898 656524209 980230401 556216607 643657833 860431234 53330896 871938749 851501650 422220057 975738008 438043100 320819494 104172130 981271905 558906615 805778097 153715417 117256689 323566485 307264842 345999922 718286726 669146742 994338742 739978264 7710663 416386553 18347201 454774116 977581195 599366424 639397585 400889532 166124338 696356366 823137729 195695668 660090368 890342143 930563287 317921097 891479926 606392766 717834793 374839019 18800614 895978241 798951596 967553491 987820962 331176278 186952444 213821637 411369334 335669437 604782719 871660100 953567545 148575968 866030337 518186889 411429820 461676659 103224656 41457153 748082674 24350430 319695876 785723721 434046771 666764954 857329575 783810830 116356247 625084556 923600056 422006237 374661829 651655040 123921796 360839369 637348313 666628624 606207268 491659540 282253495 737268402 717493449 16438670 284600065 324564670 921146331 339162609 230223214 659923697 708606558 579969458 227478055 379814473 595721407 995935400 85575362 715971060 110663777 592182799 486722891 745774674 896650059 10399287 694192043 695896043 288918671 942789940 162836951 987325552 644332902 579033554 987693818 812173541 31904822 847700693 820439114 844266352 140962831 25180059 945224363 979527872 335660633 481525543 620948340 312099662 916606551 681658698 299254007 251570707 583346553 891000658 315063425 506038252 377124834 249657869 728517844 300883526 743772159 197448922 401701745 787445967 569748480 807598214 640394690 388380689 564310946 189295544 845289949 25843365 524417063 937700549 501440048 939000320 455270322 518680496 444085599 517308082 968398933 451559458 750821584 684565902 343557398 175162968 877804963 65456631 718228101 402340730 547340562 335486974 512844423 714858368 966439422 491328342 491437684 993315890 390123979 213037749 294012388 580499879 452784377 678252829 50935529 106279973 948460646 576288584 560853834 905422437 464626833 878629023 53713129 998927592 877054148 698180463 41410542 857471890 393722758 118611046 408427124 531716298 497108412 294760516 344901973 797843050 621156205 623272136 616503774 640613969 400601322 191675706 661050064 333791177 12706069 959446300 323750820 747833080 572590371 764594435 266637121 29176667 571347817 567324026 586685130 382497941 744726595 917309383 126526559 127789694 641958051 774767565 925600257 64195152 889982410 933962118 808008204 855804719 772770201 329445053 294924077 940043571 985120914 199519563 515372748 777774039 27278622 963496733 815269586 783152856 140788468 277902301 102261521 567570144 933800146 738564211 490867059 384717868 750740314 343374243 593840329 858248935 131065695 939052749 86785432 508041620 768116677 634548643 928221422 300351354 758118081 648015691 89582617 259567851 142995446 358037319 815165215 497497269 576492072 999371128 610567722 832118664 211787922 36736234 226841233 716411483 590550832 938153620 481205360 342718287 327983433 22757261 971888851 419150674 496213656 670067019 107980913 984389285 130714733 548025151 503611336 825908598 446815842 843753775 603563874 600954758 177041993 23985594 492317413 429264061 771589808 319860305 125225570 31599766 142059870 279474642 792568164 96232370 153149229 387602951 411393965 974178612 495848143 516658015 914854908 546452298 839493832 106655558 879409100 881978633 969229894 14924132 30112320 609378525 299100292 468339596 102786053 900722254 439395718 713696405 445329977 118740186 583618491 144384683 807219789 823508405 423405690 25667959 19114479 10534230 3547863 421297502 779870988 490139085 301041867 739729828 602127767 631465821 976085660 723544022 585967234 934869745 804834524 49885208 934628801 279558335 439380509 403416654 416856123 96581265 867521538 302016661 377537799 304339396 355452776 781198562 613085593 357647 229111333 807295921 79198288 495573908 27846725 541592748 493999532 380789209 384883682 365262357 419697653 769395581 289876554 779358845 982251717 684781026 538426906 924494216 422967084 983231419 764945971 573302275 579755998 896738207 898253749 712559240 690712579 360326274 571502054 748988415 189104188 493581595 135040186 668999235 528163949 58619662 211128620 392671536 193216356 394298065 358951739 537681408 246988287 462498080 786641172 188885268 22785594 71945644 939797149 217610143 913806174 829453710 888495559 978249519 276755724 839421007 785302973 238098378 560627206 389367124 269630581 581158890 160221154 919529764 566518481 119542607 480798255 68839203 855642129 773199465 707685679 860292782 499733630 753143569 531652721 410910770 253917892 142980240 395000482 45025858 234813262 184360365 194456444 227631785 798598865 475977227 801752136 178860276 449516050 223624801 141473843 835177292 425781826 934208104 908307703 681933185 628987185 581061018 942030233 136771670 929352285 591006514 284830892 996490460 233955215 92016567 261949764 281774372 276588934 312232944 419749509 408473256 568252226 575045066 611380510 911489151 984461447 900597758 783957682 479824947 616269132 960112522 605574762 99794848 20754841 535748043 774487441 569508090 249578794 568872192 971162342 548621704 842627090 827468258 240929960 199625849 252274634 90865895 476284603 716971104 238334175 453673255 289457133 518120095 660866031 29123600 968262179 727626131 390738649 467960029 318484646 417960860 645408661 113959566 349249449 353116496 762993858 406334760 403663183 142991434 583491247 62934158 540545882 542308881 5553896 469388787 584018485 751335356 914765389 722961086 771976217 857974208 983450197 90964966 586565290 550478360 51686048 549524361 157883421 346216202 374258732 371897258 379939837 674396721 592447231 964964891 207679616 385220400 885151102 511428796 550138615 600376727 505082310 952312445 243554378 930206169 845478401 449797954 327470269 180236419 110122802 732470074 170050410 627162854 565703553 288296170 761192403 425438844 284159567 897526368 95872857 135867611 192190712 818530274 628897908 93436633 897804939 972530534 3468259 540530020 319889822 36808393 80035948 952440222 321807138 805164795 974781610 647061859 948705085 530476965 634234561 929919183 49156838 101548533 673644444 457537756 962657313 288534112 86581705 672782723 601665995 302790316 80868106 245533823 121939026 424149328 103788369 69559207 547393735 286541624 313232328 784096026 757137007 696815686 595109200 188158218 727846666 835717560 48585067 11327913 718214931 584892491 357926969 366599149 61649350 306328937 345401665 860406568 11971096 951917041 562434715 586012624 256148040 694213756 539276635 671642186 920708920 338776856 220491209 546928809 408124672 657434768 578023907 111116211 557147570 409293974 512223223 315856636 385214310 522819713 194112837 438520215 564227836 188481984 193943847 656716141 744555352 673306115 951021154 980563657 602578072 160290775 762506460 553974738 164931917 961221465 947473233 243482749 48842316 200271179 441765156 315484164 801362895 736292962 562211914 95554742 705249833 708055627 343009111 950069520 336149481 731501707 600951915 301593927 950101783 24532254 907065980 411056221 488518445 606342316 568523066 844450787 180266572 690188100 537732717 998988371 691457435 37592077 67059999 501169076 450278957 703388259 834110599 790545481 821142556 488134946 26383945 990619305 223420617 559286367 316541005 124630961 212987578 479494238 790479556 11682194 339499927 425794407 585758156 19012649 737933535 85363269 17498206 82948731 755456878 394211368 623689675 767926106 11990738 734006723 307220200 461381435 679925118 896478180 880735620 948541615 342039111 208546476 811911063 424182976 453638690 604144889 97386791 393771569 549391562 190731198 945713498 318997186 38662747 773704232 357758211 429302521 992133185 721945187 711127145 568551432 78705388 239157325 858532026 692936245 111030456 321921180 13410839 767891486 419996467 214858825 687569589 507062831 664954189 376777177 511390106 744695296 188420936 461746605 223880755 725034485 813697466 393604798 152627021 747920479 496484786 269125793 330272451 581194900 981007597 283707795 2567956 347526177 48728232 302572448 168839134 217451524 585601458 75924070 663202205 567099751 830199188 588751125 596821879 971986171 508392772 872593610 391862867 472240059 330300011 581104314 460005132 369384429 647633306 73705013 990127943 4948333 412990693 522006061 287038603 506128954 567775873 746468976 204545042 670021728 375436261 97323905 301792644 415308747 913512010 307248285 647618304 538837833 479920475 81567078 201450412 607762701 553251095 658165016 596328852 222715432 665106402 732553023 520895746 901012434 318157678 972179688 164853470 366231894 982926133 196587112 620365678 429557310 259330089 428338081 100061111 531321197 728621390 649907681 294417997 738518674 988075222 318171140 368985791 580282993 923849092 239748566 875120825 973483129 625125138 982072846 503186961 381762741 863801523 170132932 282584742 480713236 938386609 258739165 117382880 501783638 248102764 635238676 409115842 931684611 180595857 449388358 481416851 661363968 120659461 847177238 547543648 899068727 849515514 558689547 174466601 379478518 19811237 231823350 129684134 469182701 455373319 707076952 85332449 810203403 826444479 935147925 231295746 779044389 970009882 419488555 553503794 377805359 431738550 800775922 351636759 528611151 430596491 455682164 628372807 252549722 339692749 464211056 776982059 557339057 424806790 479233667 991652363 611620475 158860614 928045652 207571197 683456705 466726344 291124582 961355971 481747282 201209102 701645215 758589087 651703722 881790419 699189538 186852602 603256860 496615445 516943889 348751175 757467375 409997428 601310526 175284720 391902822 905415268 58959297 939266377 736621844 452079593 972489137 300207017 66123281 684196342 232210060 571174139 142598800 743518904 875998633 471483703 902676238 771971066 340179466 111971861 135088776 423257696 480917888 251708055 761648139 451428930 131041015 932159315 523881775 46588285 444856877 209706376 191877293 42674818 236474187 731241774 162034177 870081135 522738753 627270431 580334231 546812627 944544367 647337507 738876673 969626458 2304558 966330182 686346184 279913783 398755865 160234766 130761313 5862739 920960403 180395698 832985244 331888785 530344913 376508286 393003129 493071946 611987756 737334213 774455646 775263904 854174716 263629765 298540992 372223250 217646006 419339388 997457030 590810423 381874068 818279061 605092570 415113981 414816902 802812304 790124088 184322383 814005030 597050572 289081978 339594038 292471509 160300590 568349353 285904867 485535896 994652911 432530011 665528069 102576258 604544923 605582332 763930473 650997207 938132753 108574106 893072425 249701987 944985442 754787611 661400353 568675705 260959642 32204726 945511665 260173116 92375130 616707896 53443560 423805555 382149470 515178978 346462966 197222676 101750019 22941696 436313180 731408697 9962351 643717322 243721184 949392782 410133227 245040573 661438662 955532586 778837011 169601425 683722013 96233299 680149840 320659323 174621531 631251731 433166037 191475683 66104888 635797982 188138901 13522582 1104650 177299033 55136636 181359146 251927129 779695490 37710742 337367152 289777659 840251954 545575977 723906726 643703132 290983240 991615867 645759996 473763038 391564315 599787317 253607627 330728270 465123236 944740475 948524414 531196032 169677605 186438246 258723191 55894309 226736100 198377266 108760821 606435275 575402704 944580649 503143603 943818100 989622450 235694776 183506174 209472172 131463219 116148991 34513181 565922177 617630000 387513976 77490175 335899986 755995572 78950914 821113600 606721117 93646333 115754507 13348548 788983583 834709318 135299839 167069064 35080117 965808496 771405096 718942533 628306158 292646213 584899329 930766837 948981771 368145155 78725764 690697062 253968131 707842072 642870318 489172932 687986419 537071128 232822048 739657711 601678332 341101321 239895786 16138118 629893047 167074087 111226098 279528220 623980923 111780774 637558389 893886075 834590760 921108120 475666334 429387823 805824384 767489458 123513587 571020900 67191697 713222371 906739664 579085947 918769738 725139265 818099345 478887196 275684013 559857449 417560455 861560017 575821724 375555245 527907054 567543509 741354990 320322937 222794174 538480773 127315481 528871799 644535811 297298637 175243640 705477043 178082509 585278641 404190972 869466593 417208634 786155594 545967691 493156934 169757900 356819493 128681928 487193082 571278974 617130971 278052632 176849333 978863949 320192587 330228680 567103158 845318265 271931405 624529151 990417095 669944188 492161625 77729238 605619736 370891211 53556095 150820831 836406387 797157094 791707394 548853474 426286689 45273039 898198786 315077465 40565238 963821261 540399336 573985736 685478489 237785719 613381907 855705481 701714274 746064380 638412476 723198397 351231325 483771336 646146682 460833206 492488948 525863214 433275662 821123029 575693191 482536284 727005490 684854990 196259526 909005610 362411596 705894616 201454184 407057530 370032107 913287332 200744668 698820399 821132257 788027121 919147164 291287495 925806365 604948415 762100392 376094269 304157774 290653333 925020567 786364158 726410922 361872550 698292988 101406626 459573932 544237459 296435884 820153664 822098087 396865674 640261151 16630450 196694121 629077440 942551823 23290204 151244330 557322992 353141443 264433553 836256780 559152929 407489239 568976345 234540361 787076423 492317347 934833918 110517238 182701893 514366403 624794179 343940139 416542099 835580251 721149636 26385028 766165780 471986181 40910859 230584231 864179482 429514806 238099312 316348675 467919572 43904923 163125768 856892159 817246169 875751932 731942356 879946290 891387818 916645880 649204417 347888076 869152413 613602576 868679290 702851788 190785545 488610208 573573934 896630109 885169542 233268184 764353890 9376455 146434602 446461657 441977354 838416562 559784080 378113821 651056591 204763997 66699227 9471604 22179261 686393103 359607708 115542299 505565511 40779980 778070219 430269227 345020038 75472443 350116155 294240343 242053336 857542399 324759767 139214927 79949231 81451551 397690440 858159234 730273442 554419238 686710606 329201983 14912458 575949047 889891662 871059416 801410110 893425811 304894171 2377957 954887608 180538009 123595559 345439303 631972865 725153988 512497493 40359123 443555627 862860914 731233947 688254378 530938906 761141055 810199484 442959356 337542836 724821255 825778023 526055763 650236366 326158994 123903732 297045982 184409340 778846126 71315555 607824016 180368497 585571216 3269144 336661825 883621603 261693889 776511119 938572138 817950421 370491922 428104754 471845940 992564891 289609135 502857438 194950654 829163078 758190030 286198820 166063314 433229479 246045378 727980055 48480519 640127590 369840939 753454309 23566014 893736187 657919608 952239550 76394247 195337260 788807204 124836140 843918601 960193236 20297209 293062931 10539255 61716199 496560860 360209262 234210628 600955802 610755252 313276590 82857111 911026634 291484854 787233499 663867577 294190172 627986031 731119312 828278519 349649480 648446148 664656447 294470753 420809305 180725115 717962460 310080172 414515373 495567181 673498740 733597153 212753390 460153855 568171837 633216812 636911525 135579721 378895218 811526685 956430113 439569364 28300563 467379953 33115775 191170936 742839210 859319781 991633575 35191543 512713453 885686046 497135366 854582604 158684947 820254544 147212087 761948081 52604988 457416199 157233291 295319089 321748548 330445749 67054480 178768287 512830221 462934550 523903152 340132331 783174610 178647332 269156180 197497796 280556113 636548255 716643205 65119687 838090128 888725125 91449913 565518740 370300504 894524018 851238027 197742351 892956414 603506213 857341552 95236060 353470766 671672205 718985037 225358620 390721104 902358444 56986187 327362982 801618502 257132366 473396970 950178722 631402848 762329020 706224972 98213169 390016947 74059418 187817176 252067280 283154185 565049857 423863950 740413108 680779033 296839897 848283906 550034608 855231146 481277296 646375452 919935205 212090630 405831306 70231201 769161541 872601669 992666173 267093184 768176152 500729834 3020735 353462891 794684783 701659715 940556365 225020417 991943528 987244546 839902646 596523123 816221573 261659050 646413931 701682560 33261020 339921120 432223197 13443357 679101388 822854405 112099314 103496095 740164699 889141980 736300076 256334022 635653901 429790610 500983453 157654417 778822997 438622284 995279628 153253084 668200140 747357636 101270380 675573115 132941634 864160788 490572394 861114596 42706327 528861058 666913339 984162233 311394363 232499312 928036150 914630186 585164504 754821356 254715421 198125521 299848348 529035516 538563509 880778803 969121695 60658921 733775606 86347383 434702870 27388445 628880400 532742669 227259398 936634516 720580175 841147531 46113181 873674335 596654260 169477383 534941995 205845973 346243219 398810376 553693979 149151710 986544809 638670793 370517132 66929841 661111470 70340311 608012484 65569864 201900813 612292606 854595543 233308480 290127429 791745001 72603150 539608276 573989503 695566399 921521333 452649917 237274937 113071211 968015518 904520276 525222352 394091852 10793095 932839553 328976703 438674635 700386146 822898432 630052917 447784394 197247186 203478748 741508840 607934917 856687168 226191083 901170307 570914438 737531493 96948788 300899019 376143735 579318088 713438793 347018297 335656178 913168678 519092767 199625871 825000544 296642370 412926502 809354812 278147983 911746968 42487948 585573837 267363432 551339915 627821560 152626445 268059940 705953354 349237147 199087277 651933923 139608406 283097854 35003510 566063482 832922283 325166520 60712776 443659126 997014793 261578367 500080664 366033838 173739755 458784099 714950658 358336414 939066321 508788417 295039427 493219252 245795069 538700470 933615285 479193002 328340810 176898631 962584853 321304641 310271362 901139275 146861828 97335542 158102772 587689810 811417281 54220682 326985487 727607875 817580458 903432141 845969807 621105723 208920129 128541674 57348604 854941852 815436646 257790841 227621620 662267366 776357249 70807367 357412715 934527050 606016287 199455423 857329633 239295800 620738835 858045394 630106955 307047906 405617177 158902330 951651908 952133466 682742210 823663738 542448682 594154019 668107754 827469740 231892482 862004378 461690115 175262562 380881842 234056992 153094025 355910058 152618491 755070062 419068498 907737314 69753993 415198318 935327386 659749450 238789402 401095904 44275173 408216310 183549650 106106685 93867802 843470793 422475036 962250209 324426963 612821050 485067091 886279615 457590746 734656627 925362432 771168248 626465185 243475196 838800289 317125274 581988216 859027227 663170126 827820728 794586740 7610984 395030796 64216714 680953038 818026295 772989230 303398903 336828482 998837887 792403604 250194422 816247880 852836182 500152945 833859952 421315975 243701717 642449304 760273664 325345177 620035715 80114025 829798092 795575249 750741163 128460874 297413078 715300396 176858715 381195400 32931938 473116268 477588932 976120965 391640255 362584340 578436727 978218231 621812473 894000547 24033225 710350974 441391293 585798476 719333216 562898967 99730907 954694580 813176217 351368625 143297190 460389975 302744742 750220378 638542804 960598348 57303937 774702568 755279207 938574141 457961602 232162126 413802918 73224207 772608745 926576781 938376256 253630745 257836518 529614169 291634280 62145069 673114743 850282289 253590373 475291069 623200514 776989425 531480293 862108729 153177966 668035791 206413898 86122260 372587426 816036596 401104805 926868727 146157105 52792086 810824807 196948770 20655808 376233652 229492565 75280260 975630243 46213344 408289960 606546281 996275322 49222972 286249048 948100203 75717526 875255857 604075142 129122780 552083753 277652996 823437000 311372175 993772498 834341617 276984154 569031502 739818054 947901598 855569047 11847989 232098412 57583581 24915031 489524357 825627107 944542483 861700267 828658029 463096302 313628431 38688830 907649511 425166252 747510534 219995946 189567043 892972173 43334246 737492694 895271922 109107277 485829027 451525727 353093124 13750848 707516560 447368919 209740812 75853743 177547260 802301177 713000273 178324479 48664263 36558473 931199459 78403411 814849303 956017044 206946925 189350613 258678781 538165424 44622363 189770240 657433505 877660396 461563100 926656831 771528674 406810585 403647814 644331208 806842282 293835766 743413049 256061336 692054295 338281945 31529581 44371629 656332910 565621168 118849998 442169360 743023642 490002818 919902478 559686388 365002174 508735808 308387134 460938611 923353498 56483150 340243040 378164197 139917369 705535650 69148494 201170155 704305081 950702783 708121337 731473190 676097762 405775312 434611405 609288280 24662285 828287862 143860936 923001181 315200080 717078102 482010745 608880384 649712202 854593978 326940608 944125596 714180299 908109287 162318222 265868543 579320282 803890426 207817118 93472867 354040134 928561112 960359979 928333788 259406451 244980744 675642220 18228983 618174378 760202908 433540911 769767288 336199802 318357883 940279336 724755453 387308468 835118853 810734365 642369357 998182614 286861737 836589634 610680064 481080800 965626200 608628749 761072466 282254749 701049098 319424082 88544939 129141959 839462218 564366593 628356007 679490461 215618526 135701575 381457133 457869861 512092295 697428593 746015781 49209702 641005855 909029388 804950522 946764033 418696848 937278262 549885360 529715827 24693959 235724456 818344864 69763233 799047355 954734432 221773804 90547280 21228987 470568595 931911757 947019715 512207408 181900996 568039460 899815648 122486510 888611932 771683453 806639714 9594554 880380478 602810358 230043742 188631413 848285973 998645441 31926571 237431328 726044206 87038442 943019038 567999066 304524128 415617233 77127399 287661118 222933593 822895987 942987968 516367055 522502432 565659873 598663863 56535099 337456793 833481394 438632367 494977896 757794253 448115208 84389685 887703507 956483139 19982252 924946507 283085227 7512619 702432365 698003223 782892957 265098503 119897746 467684803 18874345 153934456 72307166 990999348 312382262 184066228 843200162 166344887 534798222 769300857 972412344 130836905 94819825 798799234 510044865 423840866 600418462 670538670 509488161 170441698 104097909 613935428 29173247 935676110 766968471 736063311 73523205 580607443 564315742 928016009 78122126 218081692 67383510 789215969 933046181 374239084 835899435 213746539 479439477 346561795 198589716 969766927 723719397 760953776 964605357 609005534 75471099 427033335 6368493 854076822 840817011 913483291 360979001 496563687 319707388 729996706 161600677 976868198 999886202 648412314 830375421 960396126 663825854 447326691 613615615 528533374 725924550 570344472 535733433 965078482 652469644 292649433 417052257 762914490 811515173 495729876 908376691 870041031 20443466 953591411 827738664 901917331 182068473 935433926 863795400 619198605 457284813 559920749 391698073 577097604 22894027 341688863 727877028 772319962 457167443 461886610 547243969 640434819 837494724 111726661 271541838 116141700 423984774 939389399 304489645 578896142 462952226 813802573 471700214 394107584 558395537 400251693 455876159 184636182 772726542 976695691 161439540 32421404 63353209 853027965 591262593 718287413 17916092 148883831 505922391 478279554 13244782 629592706 736122359 117874638 889620775 566889862 125403487 817141460 522014014 979281754 798118200 934376168 547435610 689229704 265826694 891133476 933802526 992784539 653681307 67693819 157838321 779345571 875024361 292708099 182513345 362337560 587827402 130649138 957988085 467491706 803211299 807809168 557253602 837957402 298396529 718466327 592900283 88206799 912992388 138379117 574625833 106936068 38687670 478248754 974632166 864194233 28973608 547748400 105215390 35951496 876150690 665772782 587296046 22819407 463469863 145237007 113144335 85541275 569543375 999780947 877558938 480358367 796268610 701263177 17943489 708828704 748171379 535247633 3988974 408734821 630929437 404586265 600560952 760305372 392300549 569695886 202101813 947256857 962672686 587295459 397790787 826423018 941197576 844686734 364809577 234288434 725008213 504018609 461069670 592757778 668818293 36217549 315947445 359949181 619222268 308470910 443769327 16819701 690225556 210369360 954227493 196391184 636951531 984432574 130878663 595727236 122744076 859171569 387161884 965670002 464170916 22942526 551539038 367052074 753232516 78618720 559423022 695503811 247064393 376722572 118777246 297197784 920719407 454297313 947018972 562958077 129145555 742164602 724728733 522920643 591963499 363879708 581242796 124734010 687607359 238767297 488932977 926007110 86365394 224224232 983705921 649426393 16926934 77053839 481608246 626529983 279762625 736731508 214025679 774341473 800172292 559254120 366456331 484432183 203894637 506904411 159455556 146814929 581179436 545628503 830519986 632780856 132466422 454483852 992905376 571390779 963782832 106713731 667058887 358276411 703510498 15521099 360250364 328259183 918773728 623315143 167559912 920762874 125968821 228339957 132792262 771767202 752847124 453599456 130620466 221166086 998163936 283309874 957565096 116074117 695631098 65020938 910639122 669640137 451567924 431421450 339802669 917749331 348912058 692730114 372595144 688982934 256592582 678884236 790668738 997446427 732518564 632721225 709329516 532866856 413943160 735380904 634764711 268023503 98920943 642485124 539789227 286867395 9382383 927456665 853865329 794634858 201049079 914013948 525350211 874798720 304475201 909281521 786491786 730096774 38065625 110348362 157240960 45805891 574276240 517142679 575524672 528970299 466753872 972108479 759972178 700072151 671155183 317835851 930940169 645639724 511135837 581836944 211175832 988314847 803320926 165741230 507070541 279850941 55968973 668150248 233770798 747394193 374537212 221755880 795258258 158153877 32391368 387286313 299393477 817143604 416215402 966139741 853344077 658738170 293311668 388538140 548474795 904151550 460332205 307330374 599109624 253317206 343384808 181876958 22308868 121016542 434516657 66108994 908931694 950365108 825939426 593797066 527669348 142120307 456194298 828761593 997420865 774551315 828454371 912742566 119500958 533404973 734950826 391404278 178920806 780250199 481011668 627533985 574514970 522052677 261746389 121111677 38714406 758528462 268589623 57090590 286313584 800760241 812811653 645508121 858079497 257456732 860626864 5466597 937469136 873812512 826508904 945907411 80931997 358841267 403681555 587898650 163677669 975376574 38023693 578949744 759743894 788197562 357199971 34153517 31948857 335851673 735031642 379197615 380384850 964631850 49868153 428217782 818557656 752916652 185195107 672000660 258485152 872855612 913548691 150550965 294644513 345597356 675011513 249715361 713104975 561473097 452459274 195125946 718141693 713339011 59743371 829940392 311480250 983296540 98460708 473571920 43884024 276264605 341000472 274007386 613425626 468845139 775235793 135197312 572063772 498441742 63629020 437543101 278970995 744327974 503616818 40007524 273211216 698138249 454667527 429030665 332272837 883439670 944058547 524574475 808501104 598817225 2427612 572603504 105865490 601249289 123288644 724001677 921045282 225754177 754158411 992034183 928922702 570391749 318789861 948449141 802709798 664467886 923612791 610330019 146722605 355028669 490180015 918809271 336675343 826088833 683650495 437801906 978668928 553729219 161005236 394276984 616978179 764648573 879724488 49590035 76927695 789687162 143487961 139878730 72860693 341847199 224918564 524064818 304311601 756830273 530105047 174865869 906646458 557896833 325864964 569525746 626275940 669607371 465293119 815870920 74844866 346242797 547084069 784937552 95453707 973705990 864838457 696519791 34084987 204062674 173760148 722050317 414187710 297800745 874796117 757145879 297879575 947009853 889231035 416530271 681813986 332342740 423809209 696180500 559385461 640720196 623097824 376733733 786592250 860934513 53066146 903635061 898340805 515771800 301511703 191019429 521074601 362847860 652781933 981878832 654909182 332223242 387388757 218327568 863535903 747040214 338761483 972200372 662219791 940881283 4271721 792693192 544090226 834332101 847144436 304400389 292560332 347193047 276333245 307803003 155814193 359580418 943517979 800565119 494458342 700928259 187703487 399432693 9999708 216833879 803340029 215477901 187517613 481508980 780913004 704839111 641898300 343362655 524856349 376914573 673117942 806776278 513555151 146242494 891656081 132243034 661794182 695687045 136476111 728653156 477707634 796368882 492082432 194692775 186262025 560731939 842313493 636870826 450362020 507556703 211713700 515569542 149507557 446443393 843326531 222526375 812411835 102484005 629460395 958713244 218221894 672263905 327233919 457449313 967914405 485047969 445782258 645831444 609364856 315768037 148978134 616934865 918705483 754695060 557006369 407153549 421434133 806932722 841259205 596313149 858057041 77408992 345773666 956278099 302748239 717130843 278163378 768890645 855100442 158857860 976812532 144331841 649775917 629834292 348557450 751939202 933647880 12084893 973824803 536363052 818500453 651257798 907299743 535835215 170254481 571770991 501988400 724429028 128462978 632703857 624543635 113892916 299465178 918005313 319388612 661656971 398328377 187067794 288001265 937827651 586315363 933096477 973823196 787602536 359417255 23993883 150460796 989619139 677882509 195095310 955715981 845391639 469725899 198823024 942677124 575663937 289958997 103681649 336454804 195996581 501360365 497137725 345653797 688295870 861471219 222554202 712025623 41012460 766683679 154785036 512559456 168685348 252912592 932504526 501474842 167805592 765902017 165398487 910177387 816873122 61055112 109686942 160925282 421724051 934534523 491307215 286567381 898144854 219711729 972127039 883526619 779753379 745096138 23345222 994722628 415342751 437655160 979402058 590797896 589179811 482400062 601555925 275820447 987568421 161808125 504024324 635033506 382717609 663318170 268500771 489556183 865915149 465048866 2883824 617566398 503851751 146667149 544691012 228129954 881671371 16284085 142532264 561753047 292559921 942823988 512564360 596085454 175947900 851801751 312819357 560430757 262511136 840364818 702846773 99079132 400650067 903133256 555371682 241086946 714600560 165795651 95217273 138051363 740010832 570421400 202301485 799474603 558965544 510500281 216642704 774730833 318753787 74613853 684772424 945114768 453597655 28311564 487231588 286098442 9181480 305204648 126154527 658314315 417576574 766028236 126585106 783933101 580236662 17865003 248527867 387660524 699903232 966412736 129167706 383086499 950293563 652621768 34540470 398496957 917855233 161375800 728609067 42626634 509655747 663388683 522050688 147016353 905209800 172677803 22060535 294667291 276055332 466779044 895252053 281844020 363083476 750641477 235588185 518903907 303118127 807308968 774489577 281220804 164436597 4878637 473993703 189883759 622930668 458861461 296200558 265566987 385475185 842665498 309715114 435888417 504533799 547071020 447776983 15115313 901440 727686966 812903922 128391844 913564128 951993750 999033102 63754593 697104785 99311575 350978063 889489917 64909731 560030952 372709497 486758059 435818955 923317989 466074984 380284658 17562627 838866701 77951262 229747112 378965482 407223583 598798701 976908004 601355504 228372224 626520933 269447424 191663482 44793454 194936465 960461378 814066457 210285236 327798757 367102276 148625045 292127393 278164732 567739096 153785705 221078349 526629044 463038557 524622468 584098326 26904095 734526271 118161782 596301216 435313387 446757704 251298557 585876064 664791025 187580563 786694531 503693754 84515176 454602195 507195254 387150171 988899335 17156533 342305399 561395671 697485151 91582767 270187626 806263504 913173217 18617427 281399096 13152346 305199395 398778429 270081436 782209683 474356710 748585805 271524379 294316670 397821375 607239600 58788589 142862902 606601116 493202858 891274971 199387567 905294921 146770755 316561610 846036440 719601901 981267180 197587126 523379790 180958062 470127328 520142338 730319980 633789259 541945341 804390345 550178664 319725763 624991656 328204229 183116450 636306580 589015167 669670568 148071569 228951670 671329193 981884046 955477329 890396886 712668254 283358552 201704962 44314063 861205015 184621817 878975814 1820301 499710502 81640092 929604161 144874216 792822094 639074566 991745617 603942159 259491822 444477712 97931712 402502134 421349716 947099888 278307991 780412490 624594192 359771609 933674385 743782557 321826531 78622573 527642275 973222206 652852695 714825237 524373082 333472541 300464330 149338783 256520081 584097022 461419223 455326939 63374178 4018010 556549352 450008128 96116390 710485859 386334397 900234443 676678888 877375042 45320368 405947508 922085596 309329532 323212021 880278978 382926296 171147861 166976498 694448106 48209225 326446865 678809480 666050742 775640913 170962189 169711446 84589742 953788061 89326290 113330698 631262941 323167749 235934558 674511454 830862621 777076575 883522092 658234760 629035435 472573157 387555753 11861251 723712336 833938219 338065020 342893962 440812662 106048103 866438283 557855746 459634776 163311456 637513834 513256683 538905135 280065381 443079880 238484508 927747980 95780846 342907327 639614687 799152406 205056605 613016613 100898154 199940080 911041673 628872069 633968818 131082457 955657454 789502336 211717383 745093690 313802644 342655805 441992964 245202686 395355282 414954945 614714582 357731539 743592384 186115445 853290330 215124741 282911633 27934050 439689145 796875404 351284977 565652928 970016805 550582822 587219272 836932742 283747365 325396253 618486468 812496747 877000201 844566101 543795908 309958334 590213152 666601628 592775007 207616891 457677608 588031416 385052063 538042449 675507202 597309199 721713372 248401236 325177921 195948894 812914429 939650299 920828114 605106666 106503306 395664725 225108042 46907037 872742554 764682172 849733186 296997467 625169011 454420164 526012669 633186297 952888448 481276745 720627454 872213114 390378889 644082004 384236109 679385729 485631029 867331952 527311053 12270633 724946000 407056834 655267431 970426664 488931886 962785084 239204238 9315668 531427899 979816399 203003211 330316537 469055448 671779004 126144255 817118026 359616663 233051813 679014659 528132877 869151963 756076329 342386958 429471292 143044494 235508986 370782744 835467999 401473278 6740225 178578980 97359889 523154653 837983238 704072410 506796013 823838424 219624810 660601854 150040389 503604595 148154716 122428530 992866173 84646161 906745040 537460546 689311575 833242936 902627583 893648078 402688625 389871009 131364358 587604324 546735763 414154265 27446108 638168442 759215714 324005674 410064170 628973605 754739204 569854062 618736703 996802509 942407454 292476400 128604093 714805393 560875233 174225921 84308051 994788602 965751101 150514401 406174908 485633812 472684387 129692392 602509209 997573833 949925177 115381860 33836610 252624389 607904885 793914551 87017849 532580982 229029548 31403373 395695161 551358540 195337814 159760416 836147366 218587165 156287393 228158232 108236202 513453927 685649096 943247616 605792256 765998358 116716399 614419136 914526806 533523847 969063324 744236698 440313556 53330413 45565244 44217816 153690189 50083387 411191136 790497233 656422784 924365639 147609819 32887698 383455388 107788047 732341763 730287342 379424145 630519934 966176636 607338934 889012726 140977811 255158161 963382935 145982103 432398404 248516190 126795496 585370182 889980400 466193011 222070500 445937522 510043233 732735278 210094847 856305881 180378399 291740974 181546939 791225131 192063631 558285124 245493461 592465398 522627620 161329755 275350970 833453668 861475896 304278007 837190743 837654896 656208931 248204237 945945603 702602178 146643815 294748479 560328911 899642695 612964931 236587087 109677858 42922751 554947053 269074496 158667417 8892912 670019282 747171162 13093864 346479851 209276102 33631232 916537288 471668970 230157365 391501603 520590321 487806100 610275668 899743645 543172568 245889909 432552725 941231356 96571870 918953725 101696234 265635138 728302948 108979717 257147875 807864781 852991493 330082215 325370217 324334051 159620279 161603966 45282288 470051455 495500230 757952973 643900729 618463855 135692522 186970425 47395795 939849608 385932487 820145476 478158102 784638095 496824128 857483495 418680502 970222284 722738409 49132069 724974969 894739211 760790513 119387164 623766582 281991940 185667698 186644014 350280241 784447499 625777155 541556292 268657262 507315000 127616205 490687327 384282856 309562076 31271948 471276793 494699452 69074429 652273884 422811017 37969968 88427703 272980623 233295220 22053609 462129729 967297908 263772809 695183542 972244807 178806131 744048714 135118128 2600187 789193277 670576373 839070437 595367731 409110444 148532813 563198445 42827530 398162769 248293227 301675631 114214132 824324924 115048806 505394085 335006697 468045296 390857131 686371710 511388377 314446275 609220024 910024767 295353868 837561957 588708394 550817805 308066769 444915676 333696120 553297951 325797537 29725475 900673766 775109590 307602323 874065891 546329923 768269111 313163471 399480026 579836434 376558520 440527595 205288921 986131211 241216451 366820270 688636781 483788683 307508842 70066767 216625423 587104779 264678543 291055067 4537380 688409431 620669693 552351563 461357683 879505542 856570822 964329039 797537347 319176328 863441673 407057215 146751441 185772679 101620858 618254244 736706986 166781492 442607329 221094932 559019455 442387854 683336339 222947541 610494514 550748250 172495882 312430154 20414282 564078159 212316913 114808673 693235337 344438129 555805268 687331281 169411642 338037739 16704933 572333717 318722655 586581851 115924089 799723793 437840808 218804286 930655823 534785475 455475810 694463820 339576814 256067091 796274578 67642358 249980685 170408388 998331167 758233738 435224720 501469442 505252428 628739936 271799191 273388365 132204642 871606586 931758683 82414987 488529184 501910005 907402544 568919701 674729811 893890984 114570641 267901303 24146696 277295206 700647937 603352981 522680864 842223968 699193154 662509679 312428458 387030939 639848751 831202769 448198132 57954717 437244490 829535475 993861552 6060098 606976433 792887692 587243907 444365289 658389978 349084169 129958961 145382154 25630517 264185174 958631186 624561956 961312571 143412970 251436337 743156817 614486140 168566970 875182955 617715077 307280503 517060965 348693534 453421729 606979106 620970566 596887140 893467869 421775418 677966771 279081569 983733752 510025612 635414384 33274362 362573176 294334895 418049052 193597500 548876296 936916948 630219175 9291938 794030097 333677898 246693630 593140115 115010372 918011356 762329434 742753211 273122696 78156319 162739784 702507192 644720715 686111747 419021492 619317226 609558617 994544378 298215183 223738939 51402276 913431999 755649721 434851715 282105531 326774090 403697622 758992818 101695673 796854560 290652980 506779685 425014908 263699784 3983254 144325086 153271898 788688145 896208974 849608578 828833133 945501638 499306077 365814251 310915035 470766897 264855263 697628156 889505645 592855644 633042267 549014504 384611325 240283438 702367833 382570798 921203706 795342432 897228463 499641651 648044612 572668010 734427586 750400704 992951868 127582864 525717481 781344546 982187558 976674893 775065543 364219560 273976951 389812472 948064791 721183927 377220825 54805908 949111574 625961428 434385286 192702105 829267820 365114769 913774329 40248456 804942610 19087854 280742812 245888718 266061981 733716734 61148816 670440326 377622929 623569541 953985012 258255931 433701751 996268316 501830031 412010440 279210698 239614345 486507139 568451234 511681161 607964184 970033963 447329975 531014174 160280935 206139397 463409219 142294510 630535111 810914986 25257785 488041767 424306031 821297432 75345805 548034618 983801469 911670853 884558843 718111000 932401876 103429881 509280143 681889552 572367807 142579312 109520809 177927455 380722396 422413956 223964727 729041207 34277325 986686822 295580389 356897455 40023917 260131897 576706051 438768029 112080663 149401172 653776604 842883369 502907074 680702956 341842644 305890952 472561132 552749920 631376403 336401324 53120906 158492114 492476140 772972200 870875128 709977285 30940578 728029233 469312359 233022201 204036789 340009154 962112709 827648423 657038825 113069114 573703603 834167094 987894952 205083170 297716713 95978729 274890529 407793376 450119100 433013011 383306580 701074738 350758545 858876050 962296708 255045119 554243803 234775291 991812908 55428387 263749435 418886258 368748838 153720093 861971269 120830511 924929233 958322562 68462548 416299043 342057419 558954904 837425976 996191163 548517217 348095585 606220577 901141798 638029571 306523375 764770755 775324793 755751527 305462542 660953283 221968228 934414343 120475889 589763554 796450804 502649096 53348018 926617168 493692661 991341473 439573784 324672415 317387699 774563114 73887457 933714677 379716146 725651745 293685014 666288904 736752409 464520334 85238146 93071224 561885361 448093072 856065193 394722400 544844599 226821520 881005432 323625222 559284746 106417757 689581140 510145728 577895378 98842587 600062594 790156861 648096160 931696949 96692514 176248541 996606702 108107312 652434591 366161120 18309826 78443127 518491038 808094806 415495105 472078610 942021579 163272367 351141352 808777856 389635870 116576438 403397604 691741819 428687656 598490389 937235601 254793692 143537883 230655870 29809330 36265808 638577868 997923914 633177163 243784674 98819088 478674720 246715477 244454139 383103956 332227152 798360388 818681713 141638323 453380263 751914598 492934939 473931983 836594251 650827259 935952577 197442098 17615861 341471243 667532121 758195062 391430506 879455286 51484569 226373475 686287958 302333470 796894615 704001599 689407926 66413245 825649020 167868744 609451065 902384419 960203259 644849647 759015242 938160051 450631225 846449110 236921292 411280141 923707857 157898830 335431281 589583469 33395159 980619417 841485307 225935512 276994412 41496534 841516269 967120890 232145095 724726892 948191619 71459524 633935668 795597296 588280316 452335335 219731301 17551945 861478694 511994116 948305805 361897440 381383629 948300534 55381101 402718062 121992587 89806775 825668392 25777291 719878063 366383367 714777709 950124806 5002044 673955416 77788963 884581926 843644874 729230149 185743728 949151648 597971568 708567263 478541006 202781785 681675490 686082100 568865835 425556879 854482819 259920823 308404860 460542516 196969359 783160969 776944382 139622332 520463562 2689962 118216100 748213815 340820793 505314541 869270972 776736297 65132839 502235342 856633670 460080408 168582295 418484432 955889515 302693377 418374522 246597906 637918243 975840197 641127894 460246936 833233164 740552430 277337818 599620664 425443036 216987861 881136919 279423654 436472853 530736575 656402204 982494931 282329526 925963014 813444242 106748227 902542420 79914421 310893709 798555609 586308473 482723329 44283068 244377262 275551347 405792281 930500555 415109896 21739018 831322609 263906402 26789864 936374066 681561745 48445361 567674481 737148837 541258478 350937095 292102460 145810953 107460931 209925119 728672693 840938649 855554211 111299049 389355258 13542163 752696062 82729293 428830029 562145739 307491215 769523400 6433218 683332081 610554110 41398811 560252506 389713288 272997557 978547612 762214789 693804387 732740697 938529557 733767375 996876804 734911941 947879454 414299493 58908681 792007 431290209 240105639 507675963 972649084 504727038 906552594 668935742 986782980 237163324 484222229 251328831 697561661 277729260 974995205 344079181 454528534 363372492 178894178 230551715 20961889 457908070 421821070 980229293 925321009 437643600 153854182 263444507 112089437 509601682 92871144 273645352 432887259 669957896 985069706 743265077 423968339 742648753 781619875 767413902 153888019 495338537 452701202 131721153 580407595 354986211 563790255 411813440 281741535 361259496 421261865 249943905 106208530 349077117 93283685 199180067 901308107 429547940 713538112 278611287 381214669 541374926 96288134 704708268 921408114 978613123 423073879 30799785 283053074 218039495 304282509 373829538 82753549 608423858 862912383 26216509 917865562 456010186 84134197 313995672 523178005 73054537 513126445 430136733 690929973 789548929 693769984 894508561 843253671 852911798 529784279 648368049 125076738 445621766 858276309 819945791 715222031 815339551 302754967 945969125 460030576 504747105 483206739 705087696 175514915 177919027 324879471 559246290 185010625 481983696 343041820 929253396 642167568 118280992 316672997 383297304 364620746 544542424 888005582 709818295 880623163 254738189 413412667 669698689 566637728 915513425 753250857 89279479 803553782 243120591 251846364 347345110 607497411 825719664 165831520 277786026 900156734 544262684 138467498 728725175 800113379 365940436 477359009 281132259 398991079 736099886 828421245 83466543 998389865 50895574 181580075 401541625 523680489 898063341 546295973 291415697 733351778 172137879 901191818 723623515 453521136 54550116 999640490 958766919 983934874 154041164 243167186 100346168 703111108 815570704 219366704 885760025 116058166 141420716 28987035 693452095 158090398 98594289 633953885 21129009 352550333 147965742 262524741 184841048 270619996 784845993 639539264 777979852 755988449 725485680 117104334 203867575 398860875 722583493 911104532 991313464 761253091 647086665 494949984 239791174 744709638 842600624 289552810 198913736 627658450 214766966 460922582 346336422 666637416 194409339 208728750 468560800 883735753 671022897 200610673 898867094 858078551 220649816 34769013 835343739 924592511 244284924 134975537 989222204 453616414 531035934 660361683 503444217 508259794 793679657 270234630 894054838 223072567 698218033 242962718 63602126 771973296 528161237 257439330 688565788 855653128 249351701 789688045 944764418 385712389 838818239 99350326 30220990 143175592 121378376 544856269 913494035 550503865 870063237 729195582 745315334 921119544 969143404 592077542 123562195 149735525 941380722 893253661 89887249 646803431 173542022 512609630 596894622 392189920 240025575 80802263 122619112 903036831 591659992 369398243 33671228 545191153 745870416 674580623 975835220 437478528 793639255 306262509 253415226 501446334 950095778 996199146 591669153 960339187 61688860 794144083 870791981 932468917 393491702 608771738 287379654 916053348 635991063 992872870 888460650 516162920 981202869 991580497 906473041 715619863 80361247 537755548 666870685 282629580 677104294 462919167 545632 978929679 231149959 968635837 50196370 433346391 478021919 616876370 412768942 446563500 557617419 389224180 919443211 447168972 41102300 101848491 935865184 777603270 856880196 45729705 439576554 858660241 105067902 481678566 713992471 611147113 785075644 6765065 824630122 806583964 984779132 223846284 793710643 84518016 421376529 401877484 722239544 563725655 871159047 545936891 645455774 951544202 504163609 311889819 223234448 610629013 511389085 385234286 40622602 273661978 470453864 414659377 15808276 576582712 636673193 632811690 552411539 553067651 726943529 414668181 808994124 438985521 513151251 223506224 56819670 355918132 564797294 817442773 759603063 796769999 488031117 895363644 19086605 815590716 295467130 367379899 330617899 817595901 609823472 694474834 537237090 305177323 889064041 593347052 445522644 36701419 496285766 970543987 353754348 145481228 269556309 4245118 444667147 713916166 912040291 396603276 789319701 7063421 162105820 422713454 61003724 470621623 109025053 455783846 931135804 837818702 809832942 3109160 499703175 602285075 422638610 924947272 318255236 877351644 592004568 639555065 647960836 212935131 184233355 428128105 813243725 184342793 880139564 808122490 342090952 648854084 849185844 732743808 7687684 472996116 606059888 660567463 649034459 426754425 613670451 798399730 159916581 618997652 429493172 394491173 834257658 367136160 856769986 950029672 958458751 836176992 915731189 181271592 279808512 997212294 906411934 61219845 690198156 892828196 907863990 797472782 448278663 118024973 492191626 534061507 879314329 705425160 69081404 488372037 384190401 522111294 749914868 793701557 87776387 223454520 718438460 619087534 630443811 424136444 179252149 726539765 354190509 208450515 593488572 81697468 596263401 396707582 955330872 329886382 724004065 220236092 749213804 378218237 253707266 155937284 544522018 711535634 498509888 879350923 695333049 61819207 770653855 565974623 707690027 448873399 5756781 40436253 482393211 264221496 89127081 909890565 779466968 393877617 167484560 801968320 58244858 739752266 947807785 862967154 815231685 968389872 698150262 365217440 572591134 942171340 808507210 312853244 560198504 361351670 890364578 713787714 947070100 487749919 256146096 378115963 574490419 488235906 843079691 316434224 684483168 882024296 972533054 281551778 156644396 918880567 585193205 359081906 635404850 293286713 596379720 111908868 40339631 47221320 926662011 288454013 612135022 854379373 617688780 64307741 986914634 592917794 757706659 277013418 408853729 413532498 431361640 25931399 61291219 665452193 648151867 924258978 421182113 867675815 333571324 756756137 820842026 264925476 436837662 557261197 917832201 263944127 574976357 356233034 599356459 913105555 65893950 806377501 183442628 801068017 374398398 106021151 347427403 903263124 586216935 395725056 136849784 931834077 981390881 41784274 19406006 958935878 964162926 496620582 599875558 979635241 993806066 123492519 367750679 4034437 693030902 657374333 383643281 382394120 104357006 554984486 377963806 728593231 790022245 803490611 412528147 627357526 834459061 461251496 552318130 920984351 136609355 280665063 984056431 397659820 748577214 642589503 778651434 310273440 643951606 798888006 15575914 13317592 96224744 155064096 942829989 222805516 748451258 719684450 40187246 387835931 269488933 281574130 999321304 912540469 558710932 952328799 617483558 916744504 166107937 403945309 830236237 539652168 93867965 967074378 358544379 704525760 168450130 671236354 508460281 391289559 779397399 199196238 346143927 563711511 410970494 864727333 448744117 935190046 730422805 192503654 207916031 371025293 696872859 335432068 819780224 681995002 141791450 724409646 211660344 556464523 875771556 370555892 519678379 334200166 705231682 412382352 432162356 842157544 958913921 265058072 342198195 366246686 467673264 894053054 623544755 838276467 931679776 329291487 940405554 966485009 393046197 610071981 91677439 461182178 763962819 799724513 272315653 163601752 55117877 633155225 667165194 337814301 122382406 238438182 180003005 661016317 491028866 236579375 257484654 714518036 914124750 498870168 507316206 948661874 668909352 319514578 729109969 575364517 267037399 310397417 536546724 983339598 617196745 267060375 872065627 730309090 573604813 596806079 988835217 860930178 449898324 29878991 122334000 362349970 440669842 245601569 53876590 468782680 381976943 621853803 864339948 920527850 191532434 999624768 251900405 245471614 985719178 655210281 816665514 761559271 603876988 710813695 893644433 259581143 376847314 922397826 748821078 152135724 873199142 325162144 236968755 525735376 34078218 94753444 744533005 251079500 623892884 372553045 503564174 418287815 593873297 421727755 951232565 175874180 267785126 499750285 234190471 788667516 518774861 719286079 814103352 452297315 148046012 727898264 165441218 397406340 185300983 970853901 495228516 800951547 606999269 993477510 128205390 129374925 366788113 247039668 59615744 220126017 357791005 415951611 232024152 119133956 810917142 482531321 807669843 839407312 25181466 931178579 23331483 525354357 356586825 596974782 654294313 829948247 214658719 414461158 516832570 400741458 773582489 687251961 261004974 77070364 716629556 503739545 933456497 365133624 285123307 395036314 810852848 541441106 413274342 231622982 426492933 983814628 954274574 62782193 165929404 760610164 393092869 794498863 36246314 416898601 166394867 294845533 367083847 500216496 982652525 385150521 593818969 747679944 899927558 582355522 922509238 942487780 746186859 574914722 56286857 115296288 427048168 537256996 465263109 519254286 654562204 91508232 967563359 14826920 227938661 123235327 425745366 607647769 254990232 899954561 283649094 431255347 349613410 526573778 795921870 754349607 504493415 570141640 323797927 941189933 104984563 794131876 444741800 535266749 999417857 814799495 509447961 403911472 313067715 718329836 379733631 202728000 249754772 207494906 685444194 305252126 398931144 731326556 562042129 907435420 882203326 830804590 664078805 935467480 243522457 289526956 171764533 243104910 403942450 434303880 65838789 734505899 185946546 227957619 387525650 954309873 396641261 153788426 848033504 883154586 822697104 342654393 217119371 907098480 62698918 441655121 894973623 322422949 784769617 669197125 966826964 155663285 640519610 933281299 354584462 440889972 591361002 157145858 665458726 342803833 157657304 433003786 544146824 994041263 818291984 652179022 362307557 974226017 806123995 451767699 117376770 570305499 451515118 841996432 585861630 235776806 207667736 742001463 436522250 780202507 510927499 552346547 353319249 332420549 758350931 860668022 276443027 378264147 20810024 501778674 331129033 701680395 155532720 501308310 821755938 194658318 397757908 688814711 427714948 97660435 303322172 414115607 483825115 970918120 562194724 900702919 276706798 894285127 153502328 121785827 273013731 128262511 719480344 353947308 953513827 214970422 843419877 758861317 855837839 735294210 206804613 567074087 967427811 772916075 755315290 691054500 474384969 461387748 824363683 355961806 295075910 129468414 608248227 639889066 2698312 296531345 562824196 163228296 282900440 696458047 641875947 508635012 990294688 753744162 847384512 677713078 569019045 935876272 720128534 666398882 19394966 860905298 797062635 759115432 697553516 211364557 388604123 569311580 622339502 235455244 166727458 525894398 311326584 538459367 587856276 426341064 733853606 96688109 917734070 794883871 427872730 981438963 966236839 220552951 682229061 970972348 69655958 101749237 470348337 279665292 785528848 490659430 304828279 132798601 356941000 983738650 931571630 595223455 336945704 515399973 864213425 139065399 467743777 938176190 781798561 811637539 846885144 543027980 447938426 47616342 774270246 418749178 550485961 499027032 295102760 481887557 948707583 694081492 205003479 244175814 77344390 678732964 209294632 651025126 9622705 418832002 10975922 724909860 531949952 257528400 160045423 863290794 168046006 122718959 1838042 24497678 201020302 673968821 506652254 52376132 535469357 642215327 677674591 287791988 324913196 356097873 814832345 793956648 520228036 179219019 625532541 505966061 7833631 612090307 783364725 910645716 612149750 9361707 751661717 40846978 734003240 503909970 555642181 799674 109481708 159164415 946597136 476258974 548115893 643091420 599945622 130192205 627779319 619283565 759168433 865586257 724254491 601192432 49324050 224621351 218516597 542367224 328164547 244056134 940464902 605610110 76923176 213846325 192047503 915124251 87852859 66227654 153406452 890718346 703060860 450093327 927236272 914730324 882501721 933990523 792985240 359622306 978135809 433035091 93829595 636538080 519555698 176909546 556992563 40413424 130593164 623568701 930143652 564349139 463331893 600987361 895746660 304282764 914172070 196808958 434473697 993241659 98296495 625553835 813559918 312756263 779370027 282796822 159616069 853093622 2942277 835154758 731636104 471688094 695359875 661337314 611377293 145132925 720189562 832707424 452304672 713542159 281289999 685039767 345964151 843409177 703772425 924897024 508538769 427520352 300984268 928706512 566361245 937095190 683300538 141678073 349610824 436454586 914344920 271368084 872637851 168424195 297710301 464078079 111302787 616109085 526461943 806664877 433500511 513884542 41847667 489531430 81625468 807679824 348666364 594924568 649381859 676790739 849810365 325204542 446963090 69481600 962212672 678250267 974045246 616614602 502879885 601739082 248714700 835120423 295325684 477137574 933103244 132539543 943932567 465726569 412521309 463082125 424990156 768330007 671454902 600798120 864708986 810318551 744434296 725517628 772515590 219063199 471446704 122091776 24011968 781097395 689352149 26724787 77211817 115474498 948115009 801380175 964440037 936857192 13354431 917424956 151406988 935054341 503572992 238357727 591363782 852361198 769503190 656487748 453164141 698224614 782034046 490179822 389922362 813315122 171562200 849285164 86447766 58166850 643873424 104917156 98744912 805575675 947408258 592609209 710013476 460138427 699049914 692845175 924413137 662547972 111625585 486719558 976533640 418290363 762276089 427234773 803348956 146333644 68605338 548999102 117603794 235275118 579664906 210930581 61109505 818699895 743290748 576590336 221360512 145464877 847616381 528346209 142665084 862027675 652393583 269006540 66300807 654489788 156025710 790919522 330379852 624174335 698944144 686902136 618307183 886286557 290706103 65848107 768291569 925633012 285216009 187796825 352626954 361047085 846211638 413232728 721527568 56033566 276973997 390544906 706260328 745057310 86865772 639426990 73848722 762943479 206447824 833327248 837680265 996370763 358798406 814569541 576973657 578293588 974927735 883642950 151665706 72445649 726172570 921328053 915222588 891132575 234482601 768114638 769325255 155263447 804621848 208121141 892130176 10430478 706202025 740797678 387310885 460403324 124979807 588975680 265929971 23376546 738673875 624836936 441338350 368758126 146770213 875829969 291668926 47816605 76112001 198214321 689505976 579868204 860493517 329779874 140092637 262653486 545777015 378547739 915876854 891164199 899962976 31575817 646464425 562351919 704890492 565920460 94376306 148920961 439308828 182197141 839962667 908279575 806244430 526664357 175834757 37043303 984206315 527738010 446549321 382000551 28881457 107851002 934512357 1090249 1732 302283344 42810989 403445180 636110773 864987867 797005844 955225031 915083622 478494570 107176530 21230129 330817111 908673934 302929033 175725822 729727126 676770969 899221368 266349987 634739203 809979990 22686893 870190019 673588804 79651870 573297463 451309200 182083919 908397615 194765300 864540524 193482085 349353914 30567037 122412517 731093065 263491492 253724970 84490592 719231349 104377705 305576266 750347146 243416635 974661500 999265575 238804898 236873962 573243124 878107200 485392726 53164005 46525543 669270635 626599265 481475007 305868237 601731635 901893378 187359032 617345195 874252036 96728605 134258010 497536047 392317583 984819384 323417070 411165160 683248278 848930797 433091550 241200328 387035231 251637655 221078354 107812135 971337406 230203392 181372672 666180666 178645359 342940505 518978459 426519429 668186089 978721300 363973865 211838510 657986231 256219812 785842833 854676112 219193306 969790093 830416510 854208432 1230608 22916185 770658656 821562145 444006414 901621951 718299527 160870390 513277209 708505987 899169250 886630262 165049137 396548742 676408966 877253980 764543798 178792920 856312674 506204025 99194101 709910276 492114241 469273853 556608656 830186997 257436862 285676202 616657054 129466764 493162955 331227716 792853083 274295720 237069666 172675650 731999289 678352802 755242851 250500260 330243648 816893523 325605130 412251659 351317762 827093394 520618389 490075280 56392349 277649012 594003302 525274676 935243211 302444121 464400302 913277331 694802974 204241010 93710687 569952022 303947005 285175117 597150687 262510159 976490900 591279614 949235357 39390527 480204860 280432385 995833885 285780076 431305096 771437473 797469145 795358485 274905034 309252179 186504108 201127260 735201038 280293688 301713821 980839296 607906458 582581530 165507157 522323791 831810971 556718281 257865226 217028297 300436803 611721217 976237800 521708320 54996515 566663640 425006590 154416125 287160875 204059752 200829280 799438168 284728508 555080028 923717111 110938289 247165183 663858299 392075902 301595258 52954013 920488427 260986811 320618006 212997888 602371880 691745340 745414218 860122079 453360679 235486329 641580955 515482832 627728253 78256739 833957152 684556462 52136503 946590615 674261892 874078500 514952831 457579771 15642150 822835608 268997389 79651079 863092652 716288463 192205545 797089556 568358384 200418453 948285298 567197082 397919923 898031178 205704690 820672353 271556567 595918066 179689267 370775743 459248913 67778189 600486638 283107154 36392120 228134453 719163715 859072694 960475795 183595708 585898457 379825992 230413148 686315444 821167839 991657456 9236594 710969437 834558682 260335431 945929439 330725069 684585663 170184286 91009355 442010266 529407112 593077710 675410880 588917411 701500682 9674354 569180236 502596180 609057879 75182450 699253104 579528593 98858750 276286864 316130025 74198656 71853384 852643128 693926551 849049667 568920006 333366611 57604499 613123185 961543955 964783881 537260662 504468363 94757952 323479799 914166780 209456701 994673331 230613969 410824948 721193926 133784723 817597360 925297136 600834963 841850276 471286744 672122831 201803019 338741913 172942371 969157457 372951614 131295393 97500622 91492119 51554632 670832575 96892381 307017956 895795212 594314888 680892703 830993300 867001596 876320711 908551941 455992600 807256836 368954112 403925600 66347041 409403274 274292296 65276072 59960549 938210243 416515853 343860250 552796213 506769506 636102410 438506580 163853925 538470756 16714496 730294971 767460146 824989640 943518 129093421 190961595 205259343 632463682 287575432 109623746 240336232 299616200 998529325 466779547 944667163 503499635 902663222 669258874 823047937 720311452 736404118 820592794 659661912 859017753 943967564 4519108 326942472 110043712 206252073 238122669 89757888 975908588 181506955 801149654 869792174 213608243 365088122 192237253 935378260 484638257 473864471 360361262 467831114 31882867 268040423 889492282 669752042 853109273 557470385 533769767 621097024 633913625 434658089 950658783 945851945 379083285 141979282 568212177 459579491 126380370 418915862 393520054 363798647 478285764 971120294 947719781 912294524 448224046 436178741 321261644 642876980 434851781 254108006 741128551 789896810 833065888 259204075 285502257 409618892 897395773 279355458 993593591 927726249 881525813 259311889 853729778 253125803 665407752 71177840 326069019 312421761 318021660 651438260 288725529 217296409 872318961 368394852 53598062 565614779 785003110 486151038 138109609 190588497 643450860 372326797 371613008 924931802 292544305 968692426 470683680 739623894 796015623 677567161 518151707 984443197 537525072 862112677 403545292 563605927 822878019 716908969 990360941 91462178 208585998 377762714 218885968 50689125 959873461 924308650 432697992 968633320 265885964 361148692 644021072 379883431 901461110 263603 377149557 49362190 196926836 942273663 728955302 216896894 612255819 268774964 842839875 153633406 621925917 25719074 281107776 538185831 301402905 865635832 119084885 167401720 302470862 792172797 835338706 732843884 956582780 303966122 600065337 304709510 678093031 725699723 873064506 215150014 289204056 360698866 745964368 407454299 941817996 269428500 545504714 179839621 581811642 373437182 909767073 156435502 901357546 102527704 241167696 596806889 347102539 381988057 468871164 692188752 328824439 513387982 129697331 13801215 72307011 910613595 783554397 582082275 648541429 933272735 487941827 763695399 720707083 512952531 734441097 795573983 726987187 880487839 551236623 917956226 949412420 483405929 670007170 180246363 253183973 26682065 78173815 632309614 760522993 525410741 39023351 633490358 747850428 909093157 649876954 85545693 97500323 548306996 696696798 744436280 345776423 361769028 972710798 989251676 994688601 886403316 447943319 894778338 145952447 819590067 493343535 779897505 668815752 495835238 51056446 128569585 374508295 470997789 633945984 90739358 209510616 867504918 642765898 75540484 429157278 339551313 218535740 635646243 314402822 373975146 739002362 239089250 931074141 302005946 705187906 473060011 877406445 844257754 355582067 129515922 127361637 612251426 987399743 349826713 705082278 466935252 135730920 220500539 62703047 134144371 84478281 542312005 478698894 139292107 917022370 104247963 717575733 52467043 517811257 518885926 459879943 322449865 508299855 42124320 563636530 738197335 662255744 99183898 418590418 290976297 99025574 48772522 405300267 225895209 121458791 292298283 125827476 522091991 969999395 62574434 645198032 364694402 466542429 431973427 542641480 40739117 850263963 934654032 793113054 901648173 436605797 57059613 959244103 98417092 359755589 560227140 504304394 104808926 395454331 683978871 781799329 280012738 525219419 205901752 963966520 399425923 36230090 358310141 712676655 907649770 512490239 834007664 40113225 777534114 576570160 239881882 701667793 156614377 1893093 852180831 950833509 375870745 64935957 264754659 427708320 130112273 129744606 543082601 507541864 439220560 148064955 693022360 854182837 641197317 681468178 622668110 706440278 968404041 471712344 746259455 189872514 604948222 864393524 722508480 602674420 593608873 732561314 115544430 997887216 934151370 758564156 795231556 12392202 597341111 834611998 578795730 579028132 623556486 733248042 34578877 7389237 475169544 606290126 382487366 226656361 408727359 948847355 986668808 391023089 929179432 605636818 244375237 273801963 448322575 611634624 150488917 276991353 986270364 878123874 275456160 541683234 252454418 852518554 875225001 315751810 831744092 14468248 127629244 673521376 688595512 428881970 420481817 884352808 967670263 71106264 264217512 35943525 654888276 865884009 68878679 474906137 128274172 278252105 130872327 212948363 429001253 23225095 940085892 567111091 376344806 434678197 110437007 950076974 420497731 439122935 628855201 883129858 615959608 627407800 693298723 266107018 277246942 548695678 943011946 961630144 520833837 168929170 17086681 53762301 229796236 521242448 356841079 297443073 233080129 507943316 515023990 286308585 183033031 365421742 245672218 384643603 576533215 409170958 37552506 370796227 964560324 8845436 799161886 97916931 166203166 502468471 150960173 768741355 346517680 37971831 199946309 295369477 323038099 568939461 479026119 562193267 409138924 512211764 60236192 979446523 36137896 740901582 75473126 930326247 725156088 377314111 257140052 772131310 938833178 5411203 100828403 998495433 374348200 701924297 320942370 396975481 205862234 859772936 803419472 54467721 517893576 29698131 674920869 784571170 201961890 172774091 737597001 393239521 559800293 450286032 372648243 497814458 47012590 71677499 63500391 514856720 232701255 996072892 112050211 972375222 621740384 273134582 136796222 349275962 776220991 90825318 799440424 444925628 112392272 446894203 44396044 71537764 264747752 517362109 908781653 603712543 222936446 370449981 829104194 579371755 633026002 97285912 77281092 304180432 421550817 727482663 588119507 213728929 325879642 241300998 719583657 292471843 70729449 388266177 268004648 624360502 826015165 711684874 270397940 692886045 142867159 506020701 745298378 562765554 575146797 532404304 630200212 621633328 371755110 887508342 894951611 232737145 899321885 835003792 958196685 808835680 511538447 130895378 971692276 8370300 907725721 341978442 462844807 221967787 331468102 734298776 526091417 657270501 824299340 70411683 114198473 408975393 445507845 312186789 856516738 691820254 442729803 660409694 658544595 661263347 492316871 753783165 873311171 908414635 39253311 762370970 91899244 752253767 775191145 346933019 374546049 596268674 949119485 95276742 676931161 379517668 981472485 493901357 565596208 686289643 890305046 925904752 47208074 941672346 797823309 488779756 224179024 433882707 102178222 443477032 356938208 339592710 952768305 233275947 286915519 612545074 674593249 345147676 338858054 958611854 533681721 845970308 469255414 370851054 583036430 17438732 271834485 232805876 891648755 312588725 776123740 37464648 120274235 19785014 721350350 280015363 157033411 876738190 462120872 126040695 297664765 976212150 884217303 942508600 960345345 635225137 365864490 523362070 971255904 38626043 315366965 230445319 397468679 931237809 683186575 752630787 820364555 107168830 367249724 541552553 171732080 222147493 139413316 205973906 398809252 297135630 36698174 65163232 607483841 693383788 627676611 600988420 419818330 284893830 217978666 113342015 377920637 214261915 539268820 115907295 603331779 745703019 591598576 636172889 215880297 679610622 634751819 79326025 395852282 424972384 57630978 49917334 995802981 753956576 663513663 704377824 41785868 608934845 427048658 813558574 732575213 73336000 578860860 384386055 673105472 97018579 407036248 216214128 926455181 504301222 289998922 840480966 304844095 610366584 627439947 634591104 36775840 498567000 972667490 38540584 63837954 967840249 272673327 636714801 892475853 395033033 935343022 895079259 938070146 797983936 204166075 400685502 154946194 136133184 682965601 655161744 874335509 795381368 719987516 428150000 970278694 644776621 789093704 385955094 376601724 430891863 893186155 986625299 853803135 882625114 75083456 540209265 990363838 885012114 565218915 544460405 792975282 363342360 776773906 413235355 829986066 884563066 360543251 664229621 798617306 837222648 85311114 339277916 430216136 710210432 728953254 869492958 759695372 634486544 143409432 237554793 831461552 71533261 244357998 255122568 527745667 406444879 94765679 161265734 460852647 405743249 655542132 308732347 959123012 482071413 307984870 180312403 104225482 214478239 610439188 725844153 812756266 745424681 769044707 683667616 391240353 542937624 232081287 490638033 143652938 742157681 336550920 240180106 549417491 628480074 713022032 503423053 903438984 400707311 910439874 758418173 257479503 736617161 995188416 574942997 345841149 211636890 779536000 242536827 87187647 462378234 230713684 634988051 895674868 422023114 603196031 510777077 409178254 799173908 491077638 590200775 835575183 348603770 189170161 382647559 192211987 434481499 749953922 248224250 211264597 219179106 429728036 276449832 59629826 601116822 207846650 291519485 741499524 584747293 184251934 834285096 662571929 627516205 98955851 104775921 300228022 577429236 751074928 692844070 245737809 364222968 932384763 45546636 168994077 150742708 348943489 808901488 885653091 944978174 717078903 891641783 937926526 24995514 60064161 937567298 977225195 511693433 680847476 738794844 640438837 748373303 689923950 956015963 773395463 817537342 586327373 709372337 56851770 892187309 157388736 766196822 846472125 42577448 885401146 75617820 180165817 951625833 12509994 630600500 674879513 327936335 228482854 198407005 632746198 327928167 622124704 332083669 966577728 235726510 941792156 723031883 353444665 826706417 702177804 943009447 988948151 728599692 500721274 838205855 215628267 328700315 287751865 54618798 837577919 358680091 209111106 353727759 239957819 959855532 116203480 592590360 857334397 271463412 133798998 26144290 427963797 754909016 905914868 76135900 13532734 880143415 43359689 87175523 137313004 11037222 319130688 761487266 660788422 243092179 857005255 746098159 483385282 198503216 546485342 172986404 452274038 912584579 502147752 710313345 991598951 700638640 887200952 383262648 935655637 468497280 899090691 466180475 419668393 954058971 481636398 627319375 373985124 490839216 678106823 548792034 477503645 595088171 902502052 439030613 802298639 167834087 50701625 107958543 354302010 620029085 76786267 466286189 460677073 343405351 790618639 718165005 598433449 133154344 704541646 953155114 474737237 363800508 388265660 964210260 665253749 283799365 677947750 228850145 359448396 118676450 581729814 602908251 981711123 118061368 368754980 16378331 334229351 422417011 835099651 93521120 700034546 41676646 689966219 34056327 980119807 218980310 285740838 428195544 827681937 684450796 134661572 209697128 852075127 175570113 529015825 359879678 360185681 258455446 837534723 4709053 388412233 448955552 597978210 539627520 90797131 648131478 289169729 532315634 524116444 630502506 639496608 656310673 480482298 982376245 312530559 250588606 124978164 313344508 771635528 902113590 735245336 354732299 869889491 279312325 901236983 154209239 22760154 509197288 916986592 478461918 90261640 851519955 111364719 907196842 285933384 579830801 606350937 354805138 27167555 12361397 395304633 522578754 838494552 93678007 649856404 752863113 711067788 294457137 101789038 834826418 643511050 76725578 500072396 532744087 754631277 412453082 710821618 575165216 999329771 785267559 538204525 400650295 524931201 833685604 746320644 13762450 367746166 28597575 408555929 278334512 427147732 808907665 528071705 162642578 855019657 988580069 405660143 636002307 784832055 930454908 894355342 480043807 974915731 325998550 605045901 338763453 738466263 881281993 39769222 582216305 655764855 808983713 764547976 425979481 842960037 548411024 614016846 796623469 802120678 789343936 931803356 857108648 8972359 792253046 518362662 970583822 657895588 620749283 86774550 140722727 336797500 533933833 585627401 951883055 283432727 900058232 256662891 449151097 621369733 37972171 512503005 350216683 591773089 317104641 728467291 217710546 51717297 943363782 401028120 284148772 515752668 171144065 882887955 936707342 668376855 722970922 579563487 993949383 263751458 219684280 679738185 79117915 225700651 110630685 836199631 70684471 28170097 290196975 474759765 762947104 502545723 376305365 93555464 845660363 334967851 163751451 757241137 510153196 483781975 725162004 789897237 149399831 334625456 268761830 842667530 208938782 495866661 383790657 372476894 619221635 803787102 619203294 744193570 771812976 831162111 220560269 292583392 582111264 213253534 50956863 6317601 901846192 63391477 711363438 329848914 21349660 912780128 826076909 350752701 847721468 489429363 149583687 599684544 931895107 31656600 90498479 226142203 326253086 82146069 776936770 851578230 768580221 237539227 801211810 262248750 737860242 879157694 297557231 108149026 602888939 366094080 189009336 117431567 842574858 113693122 287413727 280922438 230977850 430363247 832016227 323075434 101998736 304875475 614653820 529674909 756822145 519128468 942969252 851387351 536401661 131082673 661852396 79606764 423880049 597937054 688700614 221278520 741177124 223441303 210568462 45704286 131485526 311745093 480578217 393464567 415666752 611409316 397221283 225708345 740043765 761515306 608757474 342902968 7623811 875658013 10262195 5890262 713465794 953186325 568597219 864304601 99650538 665423115 82602543 711871161 764374253 919642585 255115958 293109586 865608299 166852425 567801691 222380669 696857906 909916840 310149967 481047198 686575549 270071766 92442934 460290674 861240178 699405089 356020798 798306753 720385239 633287377 169396477 764508073 559777080 225719118 100944032 773954124 188255400 236346354 567561805 179224866 951357147 991155800 216932820 748675085 858351002 172907356 646022958 826569784 805573553 232797501 659498973 530620447 676705468 107106373 932039937 855482455 866537925 6251207 559460471 390342536 19255025 958728034 129773421 403646279 987858814 868102079 977880865 566325883 376630434 256339046 952619524 810398066 519370009 914028363 570801879 149303343 779453014 906223469 351980177 161985057 365035794 536102363 255654448 5790880 991034139 208308583 432382686 53636666 269300929 91846070 846285275 268046526 132928742 78338005 497587064 168151453 463113334 301847992 747394498 195912149 704650303 961620788 156042553 405967509 574415347 193223594 156119130 353709711 974172146 960976576 714114257 821501939 884921909 962307635 841496187 727658477 436044690 962522419 207290129 326223581 349742203 327401362 24213877 131105286 498408883 837039212 240250230 58760189 645043071 717864097 792272315 515100021 738534758 446129981 910408730 994966204 801996871 432548666 338540943 301933104 346892851 725097023 613736012 62589043 317319638 742491834 821823523 729137915 32022501 196859637 654742444 767308662 698726765 859774108 960606064 48920484 513675055 496971659 442814497 18675036 925695724 765143367 90983678 126996823 584136046 885843191 293331089 299517940 851929975 762971917 878969521 589520425 608569890 616344152 399175286 302351583 326582366 475430625 279491891 608215175 269373823 21347894 371805261 808004184 436871088 216945279 473718979 601013817 531488020 571708559 603415777 967211265 3248736 234304330 544268779 868148787 607184803 232968016 552405426 339200927 8266372 804844693 309654070 232927311 490209348 659964678 517202899 262125961 206645363 369160268 283696318 272319605 13743377 874485040 433935860 525312650 95959712 80772302 920860078 255876943 92702509 25099551 15641478 838105486 713354560 6857383 242613779 459135157 647636143 473005982 754993936 3991167 847722872 302231883 630399080 108475324 310882476 137625957 367882060 893766893 877846310 97907973 346980251 879810639 524425769 965825910 515661602 798590602 882833126 764229932 939067948 373269738 260464854 575057271 118797610 765527171 210664709 697595082 224150099 46764834 668439491 237032045 978697581 875810691 535609604 393903908 143175041 361728213 587750216 948408794 156026829 756164053 196422785 245997766 982563345 154804486 5832698 601015712 744358966 933031894 298180972 333031692 163525958 55837166 172874664 31987051 347208685 465103535 746659272 925650192 763526584 425574897 929295983 75688621 172147057 943745703 38303648 831688069 20597563 470745391 906053132 232467829 627806748 38780896 587316730 17040310 198417469 236337938 747540806 70823688 982149176 11654699 221641455 883046124 605014160 186981614 737692235 158147973 296393427 367590679 110328350 292775906 951538874 802501599 340480817 276678917 353763670 884455137 869270518 757629292 334483018 453523515 7320495 363055602 200064340 452169207 114373294 454206892 164734698 818222883 687906569 902029581 258631030 202057650 956064243 501748760 165341331 659211389 442266 795694382 143985316 778634282 228005870 163982234 903841601 333207889 62314242 78316825 976686909 266199824 499695171 643151947 934952697 94184287 736090507 154416932 809946369 583569739 928737991 260934011 748782141 745155383 947320428 464308088 468110719 254877203 373505347 505796709 728741024 704531517 133808516 217221177 785098030 674363383 914571860 136905466 272690313 220471591 89742767 906897860 593819125 780404862 20710823 451228074 394769346 621052753 89772933 406783552 119230093 325507549 826443278 601770293 856663159 207316924 635600743 35464633 778357638 437772741 436915955 392389814 741292381 864817958 606030476 98493459 851421003 781782111 751605380 438534060 89858495 255000400 235704845 444701197 47906556 294303008 885788680 928091072 801251028 677554420 919658811 474006297 842726203 267231939 52438025 764948323 778266238 50727741 46396338 453074416 917075562 935509593 92931785 213496507 216962116 614552553 264069972 591975949 85038284 30893946 268123887 519909601 18846743 495223966 803896192 208054647 513808705 495188262 74987339 359498576 212717397 480208937 545573868 855725987 435075220 982990075 435730450 834038056 257815700 798333691 330026094 539422694 130602292 170819978 922739276 994271692 408298032 573733171 59147869 766805023 380708624 247581311 136418595 736635729 63054641 148383891 799645185 788006300 634948012 405515258 195446263 176878503 952408771 928737680 183518710 196238797 158555779 856673960 265709668 68561938 102278840 757673741 721387052 325800522 359612010 372728532 733636872 550241356 111453999 991637017 279711646 889166572 874554151 560850009 941783907 328635365 223471102 119689647 532188835 536200177 573643095 980084433 478305979 234305135 493329368 884982585 476895787 643454991 981335272 199223338 47652457 224133604 5300497 471923543 955968187 508682561 20770367 118220155 485203925 407309996 337452819 425728477 281948106 219065511 923075242 83820047 829584127 331918832 121289657 450312672 829455106 849940270 852508854 531418119 206916812 132035380 895402351 791674429 356836132 116850165 923445737 440480550 4631491 688751278 190770933 943431919 872722085 103578267 275378065 363484132 696746190 77970624 679971918 721496159 441848223 905096383 620601308 633249230 547338522 380955103 710821384 611767300 728131680 780801708 366711106 989480928 307541656 718228056 188867426 600639200 22932924 725028067 192257781 466325965 365169067 591924958 81726455 59879644 266207478 681221905 827598351 13538158 73910883 509003827 499733550 362502393 719541372 571236155 466528932 264300408 117556735 922339097 858689875 185597989 423064146 609937320 690590314 856264503 431550205 391304935 121409349 700553012 931072449 794555602 843979384 861037416 694970937 436991036 669549274 444018337 132696866 929518140 450585509 43901878 264597974 582056260 679875648 713423336 328366546 295815607 390421455 814732067 290279341 380511864 392123840 394381778 733691031 164452946 172749684 677831287 171502043 82543981 13443260 192872166 905832702 876137736 393308897 138546585 527948831 3164872 112039997 954404352 134707474 205839759 165001036 609039461 737857858 531803111 757865543 879922163 991206802 429383946 229409449 616247568 43728679 762015915 267803725 284479054 371708807 175808323 420195190 48658862 202175483 341438287 51821241 330003011 134160870 449984623 447605641 111341599 768363424 791548240 331508092 45519327 85211118 905688497 721725642 958434616 94126245 789723785 822357899 569763000 738371745 717442998 855817502 86041266 833116963 883603196 413484339 864762778 442890477 32588666 776797694 535743594 670115252 643867664 925414020 236075696 554473056 514971388 389550016 956640298 852272696 598197963 37079235 417237131 410405357 151448514 463619259 818221111 663620914 227027742 361881649 731364973 145799041 363446484 668664172 585733360 989099583 203349170 211901802 731650671 944014324 279575857 292893117 763273835 666714936 214036819 738686296 688600756 287804425 191987816 484487594 481529140 839087317 770877921 876139702 783560571 269496353 550176732 463280488 709266910 440972898 53272906 525950844 888446468 733272121 861345226 911136328 473431350 154971781 144259241 862961076 948519654 773640194 600083683 934095386 580438696 343428897 103608385 130982757 63662530 68774620 253713835 445419426 46495359 741814315 699410408 719098419 420476999 888069225 621053057 503174787 863196433 40172907 893069682 559236101 802478316 717526810 241525771 463573645 222656218 351848539 99858078 336162225 289368940 835331046 917841479 458006348 537069260 955420630 379390180 284572304 330647848 672662958 193589028 913532752 417511048 65183041 410575027 874938362 725271798 235758494 450319700 558758669 731024700 351049418 913109838 194019742 413021322 398665432 25004992 889280289 187631099 905914773 21606292 393391138 929854862 453308273 343733784 361443555 353250408 279157803 535496074 28192265 12721926 932338192 26761244 828484259 42776949 322930396 906923256 281306926 401007946 394292062 580347746 10607246 513423976 371972646 680270601 558606769 18968135 689482093 347411954 922906265 251590971 400003016 208329161 698010930 774670733 324272332 917786943 622793366 167397770 892526150 233198883 589088525 230960559 242216636 225952295 143410750 969380977 235671870 368290784 565314762 535716146 360884468 845703338 160511475 735027862 508759909 578906914 795008559 645772685 681936612 319331763 352147902 312642828 533710571 310312700 598493163 318998168 760632028 843757381 974800653 829143966 717039462 289870357 500581379 749402926 260148704 857336801 885900399 925194708 746359113 15756560 865639958 378038684 964133853 23461462 470809074 6858467 266523733 255057427 896537031 352880064 256325469 405053012 456257104 416076407 856976501 652346890 809466237 854860596 499037369 494002157 816385560 546163637 243748136 224720750 740515778 336027777 493893766 860727383 735594128 183784383 771785904 63497445 958721213 413918414 188625659 248832765 96912456 1452463 770461839 4518236 481054740 301732295 477853633 668488336 180008190 303280582 869365899 221106076 346049959 212405744 452647895 940311401 361586790 298169571 215520459 640414401 99580352 950882316 990086385 104271740 287938669 230520888 224823444 784167872 659947225 346691561 978072803 951482800 980794549 580502655 40463306 883980601 612185464 861396859 19492154 102601677 393451266 620348329 172924907 864858539 120079116 878131403 702597051 19979852 976109062 115773887 780444787 606857409 175028056 457398916 276208026 375742886 140186390 591734607 143754274 754063472 174408244 815781183 353680110 468503602 372872121 66121119 962067512 186114357 603061138 206237770 30214776 703148129 48556427 198417256 498486480 962347245 622704336 140586762 47389375 776432089 105091238 490130074 633988414 127656403 153768194 517833026 780312719 353049035 968905991 264574046 65695759 60235088 928285302 53059607 652060798 987403788 37229353 894750500 814168217 254792488 63089660 747060149 784961507 469523471 746506946 899653455 60161679 404236832 68062045 324899818 980720352 99404517 455055695 936558530 744718058 19905271 47975095 952328886 80561854 455313177 391785302 916390107 4806623 46721204 365724467 657462536 448475250 704304003 65654860 915042065 863691062 971939733 772114771 651478849 275348395 598983386 298121046 890732994 555188000 503777973 937804400 45939240 881393260 742223163 721674999 128036991 919328913 258195401 689684345 690878969 853223275 896460616 717029178 471788712 290959301 769813221 533109240 83254313 338183373 676301199 540837140 472343744 311495484 162788630 158363007 661341396 679666989 931014242 300311508 387000101 140143056 287477773 152355892 422765081 589443776 861036148 998049214 794501773 84520209 562192568 772399900 530202237 370893268 378819869 106006956 622231058 289610221 375000898 798525223 414419228 76732490 770350364 977102726 459488095 838505213 303741306 88242659 715963220 493601159 9517511 921310022 810802295 197637520 642021843 986021946 998934031 700547467 682040001 385361964 160613635 799396518 821727472 300732073 82562115 639767415 558395686 669653477 692225305 566838119 566327590 727725827 535159041 500173825 171036166 696948222 977715308 694585999 920415917 693658351 31419385 751252402 499434440 118523066 179108130 849816864 791822626 762898543 897921584 956731435 488324832 265577864 56146147 443739563 483328845 838045529 454975857 353192659 605350706 41020608 849617183 712546295 376294464 179153172 169879540 705973434 304518932 373514952 587766106 115742382 143441008 903653297 931876879 506290478 596884872 316228877 473684443 224943086 21415458 552339390 871880470 440105306 942703720 869496911 848178410 222675061 544097762 369252008 779048225 173114557 73922478 471440808 443280270 907500356 761928768 845041115 703200043 708669393 195216764 637404193 529679877 255269290 347751616 519663752 358691690 877417082 902743929 625707000 84267330 599602376 627573595 461909809 65768968 653993747 972286318 364007686 297876562 27645524 116284356 153317364 266416935 697685809 503177844 290031087 41527816 666954116 929629561 301313587 935335485 626940098 560674289 468076639 38668802 679636343 974670532 425356064 394363721 24970722 599822656 700772220 671389490 268174340 810056582 291428424 713879200 68034592 425281944 867258076 750732977 921646573 329321006 164729961 736578717 760971842 288193652 763951616 472864663 85038322 464980628 539733584 818129549 528187306 506450611 555105143 862120985 333361894 54239716 653849143 767492237 403900888 475494621 39597885 225865228 758530030 517323076 189044463 308792845 385751492 994360562 820687133 321967975 858299116 341893488 528723079 408232928 738550704 883459053 453822728 402195796 540476374 530723744 193480839 61463383 206118165 392926828 661073947 809953416 472714509 243788343 687934822 822926220 217802987 50477519 498389887 359274266 659196129 657248010 50060878 394304167 655961434 31553044 809817081 63988051 23578722 834357185 203299669 945232310 31186894 774233866 7627933 999007520 170954846 384570271 743181240 595958210 534412420 380029042 58512228 943519752 421941669 144143684 495800082 927234080 34877251 502076272 231099811 831668928 331366321 774429307 548356625 382564753 871103784 586207161 490568135 551706962 646370931 166437832 290560220 549263376 8614191 695669944 766668511 704412399 701676729 594418487 947074011 176144191 590245688 367763926 304959245 202878779 657993963 740975794 322444036 87851205 714479715 405125987 970758487 655054351 370693627 725529425 225121177 38636777 283499445 969608778 903193672 903785234 771037137 398188557 431871103 737161206 742223956 651233060 410379568 955537049 81890354 150751628 7047402 294484534 573433952 24600047 860186407 669112260 303374247 766151595 33959909 294521999 688997546 581820882 235953379 303082478 982298389 885958714 545093788 872614698 718909565 646164823 84941325 651687210 439350010 149224399 987832059 93817968 113905427 653709392 568823721 271131506 433373782 499534926 530882089 586686082 848462348 932727265 623240201 268716090 75365771 121664484 195670794 919351011 785356908 996913705 262718231 591424253 510507931 328024641 390241538 436267432 969153367 863231326 486203597 410017338 842048458 909387066 874348444 856256679 250218439 222114537 704536081 567652616 718097646 798875562 450084622 121886162 209366463 655673099 433893305 566207534 44546398 337078491 849544059 653588110 125785560 290427859 927301088 104710428 336971041 188212537 976489568 159457668 61350956 604143304 944636917 990484077 940994215 172831903 179791385 100450638 896952965 795517688 728080023 974220247 493953318 776063946 338673918 293694096 322853687 542870847 129352663 383707290 523858718 777779455 167395524 269080363 421011137 827433994 322631720 56577601 739856904 988861703 19273765 749111175 930985964 960681278 63246075 805035116 948984736 938958957 274212262 324435073 239376767 584425245 89954255 495818988 272793010 679082429 363169675 935922476 910039584 61159434 194605202 960537644 259173207 30297226 746188136 84845589 726615208 237438398 219184644 978017427 865874703 425399076 43249381 720789067 592881445 508207287 511973601 229340584 303297600 472177880 334890237 336924431 222483483 178488075 722940497 136358977 259964436 945373445 414069609 52679231 948856246 975946736 535851792 734460727 307280153 930080009 271963837 995235921 732175495 258176746 486615701 978577973 312219787 654002818 502741688 38537735 445257798 977952530 848249348 971158339 464423837 96471800 930639873 470545492 392918019 733924854 778865689 861882468 428524679 406952275 477252639 620975677 813637085 260493981 807876322 478210668 966384447 816636777 784300690 481010305 125430922 265184382 610544373 711639951 407516735 492282545 374250663 895239544 500670079 868361533 645326462 348435881 924871229 113575910 856991068 50967127 418915278 589048080 733167908 880181943 828316662 490307380 570613181 758071893 300963863 774777984 698118337 121601282 65456143 103918446 995248922 751447576 823676104 889344452 782233822 566559811 576154446 354936919 809127710 717905004 650756421 455934609 149752055 707097257 336089544 448375140 216750383 133557126 970664479 608687966 156052540 127629657 676449972 547075612 19720789 789839423 235596330 40969700 912842913 359747437 618664707 495425755 29546108 30087909 23757738 610470765 713666090 403686632 514663839 722083996 176439120 289827241 955256950 341354958 39712970 777524298 985383329 973274416 90700289 621858195 348299228 551225722 264244391 152465775 814358263 903601579 704122084 268473338 362004329 546888476 233507568 492531912 753920644 619735376 789076147 352148870 221187355 528924079 47050512 527527950 952111789 198167917 568611743 271739327 139003394 963471177 556785712 361377984 491553735 456278665 474355804 135781062 195845381 382652036 318005185 647712519 261513248 847300120 651392258 950747329 45821582 477771466 630161235 143312403 526122951 924580571 62987328 788503588 902809386 230830310 286561963 841157166 136788722 840787960 165543293 919690495 859457383 99140426 334285549 584135564 760435793 889157124 749775981 282868664 56183859 728803869 627194145 222081204 825867410 145861110 719383794 838346698 590447548 555812992 14696506 282073417 569091817 537325756 909672162 438562657 583423454 233362340 988017877 551929064 104858010 861736493 284362121 950689221 897567398 977435991 503259586 708321041 800540978 169315812 668114611 774752793 607846729 822073296 705650242 951677170 927499155 618229312 602491554 848921548 741198566 585848857 647408559 278016387 661048349 297226191 257467574 592979412 361555341 164719122 575162969 396942891 243040697 11795522 287542322 470596052 132968513 719165118 663985006 172964012 410590775 998333513 573973225 231207676 39413545 970807759 511883341 151121707 756495445 919345377 32348819 149404044 387392570 599677902 45334308 657858845 624908281 21250049 396851942 755416647 288909918 579240706 761011930 986601186 185420346 87375191 290146014 239777398 762276844 964064933 621567937 315160116 961691498 456681640 220246182 70490395 451896796 775001640 20017659 123914365 394741558 645071849 801717300 439050083 36464098 871532150 38382883 426485260 46041847 782127975 287655664 287279345 534976589 582831748 985184397 623952265 55198484 155585598 755690645 123331201 554371580 220855445 253486803 733990531 149439461 310279710 314928277 948484970 879060673 473417318 664638148 954170618 946741492 821753713 289465476 689764360 832703664 683624511 236028140 881049952 697980230 604183072 193645899 189577817 998860329 156328852 921439053 567144987 173939132 883282326 396672316 854429485 60770241 750724456 649196571 646248650 892807712 675948038 762188787 303123653 178035229 379947932 154052006 386982818 720097080 789394246 877536085 231492809 445218656 759805346 818521355 791232533 670356109 45846544 328566436 932799901 548454524 602836725 644026174 702417975 480940198 175010769 420309280 567176425 544478272 753926153 142145401 538718967 155643181 940260168 670700281 472674500 808198459 25427171 593611873 748759658 976333853 654675953 819356846 22023814 254130050 475066987 348197984 912678864 529022903 649060706 151637583 212797473 448769857 722246934 104176262 599963724 98063977 969046176 156440966 687205992 431038289 116583768 402172002 458555355 601283848 824612468 316811634 63808147 388299239 608655910 986814103 310326413 507170251 873107185 33822033 127702798 815958821 605658723 535834362 412249539 990310929 730658013 238457283 260245623 804748312 839117946 285725883 430347500 789095871 143038663 200246318 379701505 451779423 179184601 466222511 197243990 102470033 27626169 315471578 318078848 313510499 412082091 887889150 416214096 999655260 947328693 584042040 591330700 44198812 234398728 798654107 955763078 453650014 402786960 311712748 643980688 865410351 558724551 20239677 96882717 902703605 586923191 836614940 2359229 748234177 735865037 532166043 9829329 948222744 734647444 37351338 395623503 172781365 250840936 685417603 235714472 516097005 889492832 277134765 131722731 972562275 804688478 874663403 433311734 582709600 639585057 805949362 811927691 69645155 518231393 266354456 289472499 610306739 438836190 341065552 496290767 989476448 704457778 497969357 714334465 185598947 824575766 89286601 550287560 471073926 939568110 633164110 551988012 761733333 476203035 244108829 215136211 257690708 998247123 175806661 273901853 51320740 826399544 289402883 130258569 189987589 549126652 72658632 541596260 868220602 549486766 511719266 657253220 6831220 784508875 949131450 343881071 909019660 745593624 706629802 812246407 109610531 3026447 963639281 461942247 719397178 475416840 406807537 326760373 983903117 795495242 534248772 622195936 85889671 128568248 484864049 627970858 105386804 945436482 539664432 733334717 166271883 934861159 401317107 82489052 952198002 736239739 351041588 473331782 970437359 345138489 510628819 841880601 970362320 250489842 532318615 976785256 775754519 677970006 51844404 954696520 944405113 63076632 261328378 409443007 178650766 403365177 892600772 846073824 782295654 865134958 873358815 935464820 183494687 370621728 975358395 168026606 874301635 864817193 929926283 43469999 971938698 905831994 735060356 126602426 308808385 847641832 982959161 259765233 630273434 834482436 689984788 27792269 551936192 176891064 130550522 954862824 925586426 401078058 31539227 205720505 921611454 97579770 837351453 599992560 736846597 822827891 325442033 907757002 341906308 460318758 81372639 513143393 571289193 103009849 635370800 413388624 993968992 974708751 865253783 789697835 638668757 895197220 652038051 98801034 824629722 794499922 951074651 470215496 906433834 193792833 117301181 675686509 633573577 800369036 217815308 338274339 364866555 107105520 35356473 225021010 603560655 183620522 777812824 346730263 511643113 74741750 399644905 150535708 68534289 931375931 212716813 112676111 934898199 859115027 367969369 121141086 496808918 146992564 96526905 243503759 771924717 842600768 707722390 111829874 144074526 807180692 168212725 716745431 724259120 488690608 760623248 530531158 988379634 382894144 23838548 778230435 700445208 98872524 192112158 63771455 804560748 881753885 587157656 513389217 285050534 297470219 888182302 321968071 90127 801070952 78327992 793307690 534797478 994651815 467091815 7926139 124511365 174995574 459831928 874637562 452233565 833641886 119063260 336148137 921953735 866158040 193513918 525845979 124120794 544441961 758799747 599900480 317935751 267782228 188909958 708324036 594888128 22744976 170580848 441609066 404007431 983537786 729754927 782959663 46093938 265795305 483349007 481789004 226416830 603934373 19710272 29923435 856251619 321739685 736344931 893284493 597003214 437518709 255837419 831237879 11460270 173432382 242982370 31442227 85450090 282713979 2525194 912523742 159372817 929637005 40864262 825846098 43352197 652503212 493759149 778198424 509021630 808978929 303553311 314416550 3821634 214266882 925917162 474553819 304125688 482728160 104857103 630405219 661106362 427699384 778238495 821763953 704614108 693889833 901337579 198069173 165679885 44248695 537776822 899162859 106952954 698549851 269894551 479638632 468246468 658641428 939212381 903867212 42455175 462779368 707550241 757678142 66559094 109564806 51542186 248567707 300131901 648737161 460806910 716604770 11366394 19710816 210029359 679126356 588479329 733666348 284619197 247676556 889589448 611900865 426579287 95948161 604607589 340211019 96986315 521924413 301897896 408352054 301265145 89519238 734315131 371571929 560540153 477400099 882272033 184227212 387438208 795566325 948338314 243475307 574274446 507750583 577771395 526355044 211850231 229365101 88305644 656581170 625967304 216180913 893743036 315403111 906413207 26353869 941176041 212990769 546214045 880365078 382320440 269637527 796485652 874704089 693872473 567869243 202081405 898553207 651473366 45112655 443361986 791046539 507001925 123742838 169437772 602177174 876876553 112319299 827390095 564128977 907401029 933204907 582728637 94736481 984418742 260680970 503662968 280191889 622842515 719226594 135308562 8055785 228491918 332818857 891596737 556193185 179456840 143518638 962492295 865480114 436080506 489980754 321763660 350094800 758346648 24901424 817588435 437507375 869342132 561159197 104822853 578268505 436152292 31735060 54140846 211643056 483775034 995280466 318972363 59821899 204756506 126000614 866340375 655182330 784126566 170824954 20761713 92567769 263656154 822049289 885894736 528353596 410523925 190136217 993226834 788977186 843639469 368865311 882735428 261830352 798321744 46689476 426619479 311955508 581785533 918280059 896667428 600898515 214801945 727209169 634821891 558997099 526745668 66186239 754052836 248589681 521501422 882028297 447474569 435937323 461662750 325888545 223760995 464652211 631150275 44864227 963050195 994272613 731743666 23394044 230013965 303700846 413351000 825537738 546585696 905419048 597690292 727487961 63003867 957479310 955835753 703160656 13420889 513420038 894666374 380898185 172230447 684957939 441248700 116126571 549869496 825284947 122404635 751148283 377800137 451405780 826434016 181561933 831370625 682072308 285519096 40503450 43558811 295370210 958499788 559558080 23846181 925849022 924368512 243910655 881542889 329627977 814188772 775378685 973102364 34848891 945586905 767361111 579695655 115483009 623617632 588901269 390407207 459637085 876224868 721595379 244938160 9861742 445037050 379334220 649509278 464109896 475786694 323486889 859699761 592349033 825424568 488619511 937915172 821611367 780943661 148397802 395112282 506769795 642040126 653050801 99231031 438881856 674929524 880091169 618321618 171358645 197370314 443482888 154511248 651503423 908120415 722089003 152167099 884529506 757692306 323939799 837267682 543027202 762068178 198056572 874369151 918958013 19161409 751416965 641872974 561436974 476480496 85980442 519160036 127336947 18044774 144839107 835517489 221181169 580837289 53602891 575049349 871581187 923480027 347525854 369445021 146853718 720154163 14935872 543649746 939672584 938991049 591436771 664358261 686469189 277112390 503594079 186468479 850928591 882734188 379178177 935468296 204167757 394576481 517992870 986927304 947421477 899270772 113964139 262443687 512034414 69701877 222624386 427831260 285557165 515986190 333863122 521919798 128722755 147936769 86009196 35619938 330862631 849433673 994359567 167936432 187275529 104972260 582141092 767311848 415999107 18214275 922201821 421310830 833110833 997456874 561890901 729759562 726468060 282585984 195043377 778878729 775054573 519762794 330039680 413450274 920521585 939411981 919626593 972600570 502947479 544747923 512598741 7243529 80424684 122912364 17713218 358347858 269156020 840440460 298021179 280384808 65566993 648116599 355730796 839830725 169766857 192264727 638069065 989233912 544161482 654733419 922792234 957879420 288741536 397602633 963946840 978933738 720380457 704757087 882511531 667294283 401150280 911157118 235097717 11105180 786078038 474119972 229596901 541065513 927110358 761375751 527587137 311380868 273041353 571071919 720568117 56888745 946507293 697710039 67897926 217277838 857358614 497964709 215536284 690098658 89654509 150558835 573242767 466109167 940786768 255434893 53153146 392938398 473682724 202150678 285331411 192504962 645069914 412055901 642803907 395845938 277352004 580017954 180431523 870032313 784291750 687939059 135477361 794354693 145293679 169065613 559185463 373216082 825490202 750175501 938485347 393863453 633106586 827346459 929716188 188347071 977789110 221900771 261255022 459910209 644506368 437420035 848576673 134224070 236837818 387015482 87986434 892751020 592587571 388494386 875011965 229034677 302758922 650806083 221195190 870256290 842975458 619374075 517768801 28287073 32782381 448977687 904997422 32919384 921868500 434660074 761682394 540135821 481849213 486689656 546928147 944013809 879631101 983508142 184798580 727515173 175793424 244203189 516677460 73413069 691009196 386406444 647109365 928291812 355158474 474586117 703441830 568172056 221354073 597004159 781837141 657851037 439312672 88146145 644924219 653744783 601571151 680839843 728045941 732106109 327573882 625758346 492027129 852567697 410528516 56874884 789477245 159786018 760928330 251666000 666512735 471245249 259889372 833807803 554278596 350664454 835460291 953426520 990607282 400970197 662888670 41456858 30147844 223335157 514344637 661477736 796126422 862830307 579031940 858247613 204923583 706112524 882956105 360323851 532295764 672963543 65519592 439001178 560378620 459887757 184024911 530300897 999537454 558435944 194396826 914947108 44321804 157457030 320737448 884177488 899474674 107267707 145722843 380857252 702260934 822026797 974735369 993560562 15962927 774407056 218267093 541632181 666913505 647307256 407428623 903728999 978538607 429333441 767305926 413671184 770093002 604459034 122379111 224721972 873842562 979949116 921493246 609960013 997992057 410125728 661297523 883080534 738504814 977070840 905667566 887977743 873689935 157486010 199212378 338377414 584319004 858943899 260391572 345513540 76158355 469675224 662565899 803688564 402881993 265813535 916873570 672961223 94089621 937881204 881965704 411304670 784408970 908844097 52580110 730980966 169535983 464400736 463740907 53819044 265324424 962117615 181032822 447233088 913710435 926263720 488615128 224578765 379198050 190723436 279953161 848238127 110569563 692932188 566543817 104379661 712250373 59095969 428645233 327915966 588578206 216404279 830690799 638223834 16043082 730244019 898868609 663092116 883256271 809223724 925531489 431389673 812762496 34904815 338058313 24435869 698251325 715207989 51005966 380310382 428098435 291627416 525289966 110992227 250972070 704875765 839407179 183963554 534100826 948443176 653178057 638596228 251826763 833425247 465675278 769512878 515719090 882923434 194043402 553906336 233793882 433191400 599469366 277310926 64867831 229801628 308989363 281682061 660447525 958962186 56031233 149429891 507767771 289031034 632942944 799248283 17670279 243782337 734547673 852064312 213985120 763675836 171786649 521271120 873699949 259015624 838392884 908969362 849256351 568778441 183435102 702387360 310207540 790430737 90832733 440751136 327081144 71993080 890422054 681101057 17401593 607848271 355100658 901733554 375844990 494289865 426096406 957703578 82521453 269602550 783746832 423268610 497410592 915123909 753948159 683629725 827249867 295825246 478275053 996490479 326889909 183317459 319688124 35119919 753690632 207932005 439536881 723855735 717931820 217403581 308948403 900013550 326189945 521856457 365635547 535701563 603791508 322910881 147753299 429373527 833643833 239999871 117470941 247821102 158114070 566339615 732282990 338191705 941497931 527713638 155438845 567618083 584360602 621649693 655013866 895389682 754139031 733618196 66149477 844623507 787528168 622415005 736254949 891428629 877051008 238662732 420701727 273087244 86285071 225759926 177984287 803268455 68560779 333348288 308778388 257194954 19627570 50041254 941877062 42718922 14303626 840551011 835838367 334535258 522151515 964569661 623279976 821039465 94626049 786336273 567092632 495743829 743394435 344829293 415141524 782722896 341797413 780115516 637447645 519960072 280089698 566892278 631776987 605223158 275294137 578737669 27277349 192398908 837202502 508987392 640598242 198819960 929921771 63234059 989023973 289003139 822159253 919835047 329252968 539773898 586236534 372637703 560035771 972254106 67135993 586582562 22824040 779711058 865961251 812578752 306474336 272860179 238820242 183753328 130285634 971180782 641416753 240658431 894006643 912886664 212755517 394697405 350194550 910881715 712030466 266487049 984052679 6066828 40688265 425959902 275458157 545636279 622138968 464350409 946141041 427706759 375224117 831071076 879783869 614933921 697937027 408058789 118227574 583159796 401158355 224262464 980783443 137732684 600368073 19285700 80912475 287429905 368312873 350796094 633285347 373961958 798322595 626441453 533372275 298792405 991526396 96979623 441455739 940835464 474945368 747664813 658914407 215406624 340104435 991751193 27185464 60085656 468704256 571725822 954474942 362457475 751483398 217779603 819005852 910821411 119396788 155187453 250575415 99048873 22668440 344284143 831878732 343576784 525620341 142738598 455193006 991871878 478336522 932781219 149702696 711823148 699187751 366646016 986106285 375147004 300511675 436341055 524147242 127321614 918521879 189561642 857226310 253513545 54205964 272149909 71318227 17280766 986974132 698858759 127062716 869323163 470427732 359024424 602966741 312447771 552460609 38697170 809538720 303060262 994996005 109324034 279449247 129074900 544263342 182868121 450247691 847933666 182795144 509200650 644972933 903070913 327080293 217034346 336972011 514409303 347508402 20226394 928953525 549888813 865098921 758236781 470177016 506083066 28540501 881146226 875179901 538133814 750466224 860260830 798192055 519450419 899230935 386318535 562231170 918415881 393458766 442075894 891420739 391953208 692252979 105661672 663104336 663331760 738122803 889966423 347961759 848521185 768392487 80436565 35197673 637322132 578661926 99357112 73610638 135889138 914249101 448964952 270980653 566844646 698660310 863484757 666543841 557626022 199688794 270703851 767358704 478412982 177088952 802218953 31270586 407682228 185721676 753074393 967896001 238083508 234975700 552530379 831679789 597679750 891177263 299083868 906174221 945438196 55746086 462014356 117440864 955231368 334762697 991956334 541285892 745774966 135626352 184866182 564234189 681983726 669038764 728307143 862045732 603414942 81275766 965961971 194004344 627172366 202910503 142462401 984057495 172936161 206741728 571553818 407394388 365809700 58550764 925768583 691399093 435291641 80609517 932213470 454364460 900365060 253801498 862271404 427626065 160773061 117229748 15566259 735954434 261331882 248382856 329506639 284690851 337459635 118679358 92302966 807923477 391298960 281014897 50721203 33459035 749998943 655680334 491381208 247739289 123066768 109844306 182376490 648189824 748793339 564576754 598294949 756490580 860053386 438587687 474345830 896448681 979402201 141243386 825102806 704237547 264226464 615572824 490182582 747123492 300405047 681079465 826674206 739102131 129909548 541263785 132282505 787892238 452356258 144504605 893599474 245919380 389798822 469650096 992629777 885176200 495567096 625331781 63506615 442510428 555935023 928755259 114060036 785952638 573027794 515625317 678790187 312025615 135898181 563574461 761857591 430643626 292371141 48382985 406828798 167365717 810277753 856527320 115619965 630826004 746106826 972972825 475499086 102176821 496242683 642938147 598138445 38810349 324505833 46578611 792769071 764529959 208955391 911002949 864932488 498262603 443192985 495300774 315411326 456955836 453111688 258276263 916708219 372967060 315775474 833788409 350445511 565046272 264728204 163166825 678165962 29446681 527028144 871156411 400500966 461917899 494789072 467830437 172959060 483936751 974581058 40339411 993415212 400529791 437269014 849589864 602828698 422490437 302880839 986141557 164448166 850331815 964964952 767941143 600952560 607420611 318366726 144359870 294556615 439551432 736468625 985595138 317415432 241772384 272925786 492174334 363962550 419653324 247834362 267163204 148489879 217084638 948562573 760928089 262939145 520152925 689475523 372924180 593361113 982776252 565703787 408556099 588539328 741272459 840582371 501361951 719160848 451382192 854370186 360853100 940740725 244897763 608860496 272689086 957294599 158861440 780387186 279498741 6491148 708969186 890342462 259824788 462016608 334534321 638013410 624736116 607889625 623598633 996662297 691997853 140050573 147548492 733143449 399931569 266604692 640434034 158691585 996168920 640171959 421388199 84801697 372386187 944182756 563703851 819467572 517257930 417629368 970912088 823521140 907836942 20746973 165812216 261227574 326155764 436652151 628966530 308302567 318388930 654828078 604877092 851236248 288711185 326765059 610846268 678950061 384155300 749239778 116876457 336584453 51908610 676535977 767697238 163475379 443980624 226722551 61302738 311898505 952284994 715121761 292160905 50462581 424012425 56629469 966880588 16221587 9277342 952222440 26749447 71431017 841249507 439020553 653274934 461301554 359884386 443978219 718629320 663065406 786412477 485448049 917793941 400940143 466198836 527060225 376697824 256112424 396737921 73546273 450279888 406726489 492654050 528419450 746752271 172497838 351523028 612507270 833144588 865795751 772698186 409606552 239893724 244798675 287433503 830400822 835796474 931137285 862511892 389174859 170892477 741135786 369574679 730090380 906447089 563485864 661722237 748266879 256951519 57914174 682008687 945190841 980262710 341395281 537168923 92230083 631281470 84987315 461369288 382201883 922844473 21949442 694981582 310933964 863339393 362886451 372548627 842945180 529832499 777018217 237793622 415918797 743266916 334138874 509904713 162874964 3985980 315143435 477506453 535011803 876578183 637997545 76972238 884804714 407188879 85706586 60429508 688778844 920521310 790413802 463545360 895461349 762645025 424059824 958367592 354887791 883063159 963823834 311713237 419761403 30052631 847588456 233411912 80616741 338320207 405639030 890980930 311988129 385017196 166591858 750233802 374147905 331126384 198479514 912408939 579115008 94109512 649185106 262205924 581471498 505157712 867314017 68365297 674090797 608925980 456093803 487259863 263664921 747353447 235807608 452095126 319353179 332500883 588016231 265490578 746289931 869445556 941997705 669755044 975912211 796362294 338058868 887217989 699926185 116813556 970107582 496233687 656896223 111063691 518660039 660355835 326486041 71046140 66302866 181069525 595994639 680369811 695299207 95587455 678573179 616093477 645955707 134847688 381675608 597889208 210990781 472232638 891427287 172718159 218481491 524671905 115577906 767149295 359934002 251614972 971573973 735034152 35438977 947939285 353965398 618628546 340951314 12517653 73426649 620148615 816403478 781447227 877959237 946194511 326534526 820066870 238889428 319534722 710275391 493946871 596072540 912646181 424776077 60843520 735953 964170190 75720493 282098912 328048845 30339401 678312302 489545265 80160149 365830545 640409118 920704626 573825883 429379978 797745206 158530399 560276168 924511872 484730822 64451239 120291578 634197479 36365994 451634402 893250717 793866642 353865142 162666679 120109644 389852943 18674707 882003233 491847906 632125885 751468657 532876752 358673862 546163960 555155433 934085033 848816067 871238320 787644345 190525025 145064619 430724121 305534305 950978755 892283768 10938277 586049091 467190725 729379433 706279429 986369318 699329460 64882497 184739609 519945834 678751349 568330063 489421769 108181886 110546389 507799954 137346654 844728009 896549958 320173434 586737075 628432344 225970726 536211502 617330595 453390295 998840843 261472193 203899201 877087521 415539696 190047084 302527456 352896814 644467196 227448650 759730339 452977431 746628296 443788166 152311615 744498677 752738916 393868610 812771337 993522406 34301695 75033853 831516029 670217320 44413732 339228470 757973507 539234808 398294321 206319449 56761355 272124152 790514354 40378983 325083398 940811810 348822040 136296700 916714701 153243650 368814204 295786160 678198288 968629115 860866311 436225055 661353380 535217424 873707788 926042097 705508058 128045298 552431026 429176565 581425362 460296527 353463226 117070830 956628281 589513214 275885033 809772025 353351744 527083093 579201332 144849816 90367138 296125613 155004052 776212303 95444745 362241583 3840440 936810361 617679435 401227656 488168787 533835088 799019460 202644166 626840560 93298474 669788637 112906886 575314008 287392721 281299610 721885498 890818082 663712806 392979082 818940854 921746179 947820294 586348342 123931772 176713680 228902057 581804439 116448032 370149748 150085322 145731237 156754502 439673901 737456711 683644751 556294982 807600375 97869155 358215083 864931101 510130570 233621127 947676170 524918313 98782220 960740644 907484979 496864971 503499730 755008151 390441135 308249384 709619143 142366150 51473335 3338006 900244589 496491481 307379888 699954652 585930140 512247740 808152380 545664275 355145846 859525550 336646612 389091500 182814196 861071905 351046610 198584482 958598931 207544849 481233756 973808079 218228661 380438898 648994015 692234484 864251650 375179111 950283481 632416409 566503802 243439689 786469230 436891929 414853749 665087004 847244507 307803169 578939291 723729939 359396029 985537301 65525167 106848761 325384761 150746958 359667442 255598060 82406832 770193183 95293550 546524135 326073488 997950154 785461185 366499174 612901368 543743985 283409091 640629034 935053239 725370423 937265764 711948516 862077850 745518315 896054473 35652607 517701709 998584632 178800247 365627771 279306788 16746317 406792127 331920117 9766646 489438045 742835814 745837957 964685972 754822063 966708162 337823294 833541520 834293749 974942000 710894648 911775723 274775979 868859952 946709064 787069965 580898034 721401215 464047357 975228379 75372638 48457746 556869556 875991302 284582678 853649073 259952182 929359744 89883321 822375196 736835777 217206080 141497615 950368466 377719731 939607005 332795335 365474880 903140404 513883558 93722940 90721857 207517920 13028052 118957215 16470586 928673707 420536114 611130374 909432202 11505743 266091651 723080009 670269798 864860664 772311948 20493177 387530332 700409003 734501904 396945963 801873261 496068508 556395736 303453324 244367886 70963659 722834475 898774212 34591946 790027764 973080252 390220320 852192782 610454398 368751293 396440462 37505740 128794466 901442664 212765426 683601627 124226665 981939658 858540516 566736595 180849147 566814110 423934473 55691327 493395257 363773459 923883263 646531700 227576959 361685083 435008546 999995346 606031772 348374818 140561420 656247690 792493376 758714568 142387894 984159270 778439974 529161003 311034264 808152150 389678926 361657953 725715003 906641697 270628089 320110271 556654295 946712547 113351395 383057467 260668113 896849815 628252767 842409870 863623593 88951025 709702770 852752365 840857904 80052801 345217230 881430870 785223588 539468881 516144279 615067139 645170604 863626813 178575235 197748848 531676372 307541828 577479945 383141154 501037000 539904306 581102545 64262994 287329706 114706994 243355509 529284016 584933356 834195825 999736907 758511202 798988056 916435643 760466591 640346560 910453533 310324313 312787684 878096037 263180588 31664023 102786086 417598352 16197553 407150305 199531671 555057629 102291765 445035441 644266355 951422357 73402994 158911064 600878280 59597383 337234732 969667153 266272988 471501717 612129808 334822191 404534605 522941900 468507560 381731866 124134378 444339910 630264425 541892242 653855067 288639161 100521125 130796103 992547469 485463622 936096564 210949630 127462439 131953010 502184491 620479000 9660818 896801451 742140887 266893215 858191583 919492617 914648659 145088925 964100609 657916949 954778750 848998269 308852896 915437484 109654024 710081221 859223449 677588757 636920779 807317417 494343395 228040669 103060436 597889499 644069725 452541476 260557024 235011712 228791252 675769782 332304378 647601497 951296343 709645330 448635596 932218495 237088764 993016326 263995422 704261254 905971404 746256843 500401365 848315191 384678260 812914673 913356042 476827594 902636372 541255002 526279846 282166916 423367324 147199228 284343495 826897160 749553222 477204397 757894341 199330085 875853438 99148921 691293889 164086256 517242523 57624365 59949186 237307419 990503822 678239222 850875052 106914111 18931137 199283163 645065226 268671533 255692088 956490321 546022359 445132201 551307051 699325234 131238156 156799151 373450713 90932096 296045459 282309419 706570100 343490058 142652467 417292328 168733730 745141874 26064749 274480340 356223329 173657901 439637815 306412101 481362650 449372413 391511512 920010116 691817833 103814016 81506110 857667975 861918091 955347054 786313308 598732100 74685499 710582698 276164521 305019158 10687884 517524613 176412120 38182811 908797478 722884413 392936232 396122129 599764805 252267215 335303119 658590467 968866913 146276508 379393424 889412339 813763792 820390311 648407658 55536971 568400417 346633488 618356104 126960206 161917551 77429580 491036937 803322465 895585123 630722478 692603221 209111798 861728757 759164322 299287500 830576153 922466050 84179278 506485473 280109008 253243156 261225047 62043290 275716112 903063090 26903548 744329541 799991341 697421199 326702412 987585176 920461284 229317365 672167190 575920086 151636916 456094450 836745055 253599759 349721472 403563908 381263750 421375257 757662562 378059000 635732386 18927386 474829324 619078617 74752973 736359277 670811937 977184739 264127069 94556110 56499044 49737422 227202061 160922773 871131135 467502994 603504672 549876404 590611173 216208941 341662549 647413265 465386494 478461612 10080102 829784206 963126690 458034060 473860387 958602691 1984992 291737492 726667995 126058152 880594508 155912040 772266854 180732662 237451433 369752335 925220919 856348611 715301531 861856256 929872892 163932945 747778341 596481371 74075193 318380774 769015511 66769292 698832288 606771616 967209939 859319466 346985155 773518380 735418269 710741651 289033858 23543514 845054080 189871136 717096268 862579092 97542850 62149371 732889508 450364604 568778983 126303807 71935240 286653375 489997970 577122912 311408284 500231843 824103363 759941396 701690360 857683411 260241525 314080705 956893400 546970146 211644861 288201008 348411743 308697966 10029910 301015037 939427070 944797120 831549093 234985671 311626413 214667346 32202228 976412081 155832999 381659608 336979368 598541495 333139852 828526110 445249382 671840826 186300204 422219027 888888584 935883599 521695578 487221491 54116059 251659379 412776502 273917906 791514526 791636683 554352563 209121861 30067435 752775476 359675871 138255504 796195416 395137953 627011911 490029182 681311613 349653777 349399137 514232406 77780141 728165365 590907350 220949769 812808459 191886888 731974921 61019434 186013438 589549479 401572777 389835955 602467637 722848754 389325455 617137888 117536937 144454953 840671053 201567051 228397522 600319605 143982882 595637673 833747026 427948397 849723958 191417628 466538964 887511107 81319827 61260327 207332909 8204199 524722031 883683953 973345592 578185945 979600237 298260695 381154085 358527016 688557475 676086610 209068493 124820519 10435365 895690139 871698010 747607763 420469376 933350006 20389624 277214216 437709467 578354516 515534475 306681585 131807421 983554740 60032591 32980399 807843558 485041816 387111679 858942669 562837269 840446979 181513078 714418462 714396298 193219669 520117093 796338380 598092408 257718814 189358029 118912710 312455014 189543794 778144522 540865867 46192521 215610678 589544058 550648421 224678690 643152322 30354659 285146714 772387791 142424757 577596407 452511653 172805786 650516009 135463797 422634199 601596783 547692150 175573884 630040281 904097062 129413009 979331823 970417373 434731738 743877915 922617144 276642883 361907046 471516984 823809902 276082854 828838838 684200104 987508575 961574483 807431278 477483278 653199802 28721496 356253583 316206718 326245543 344546647 731513065 256147424 103595734 254730203 505114256 692255441 806224 769759948 345168652 216060522 712544935 389904136 850084949 31078102 154347053 887308895 903548953 575529959 613152940 92246433 481053585 126181932 846574450 371431585 974966619 506088766 407806621 906732654 778178495 595078222 737157778 602297488 797786219 875498681 200501874 100426373 188683961 491711475 339571440 181890639 898548274 83640540 359658815 836754377 650116234 371350707 577554832 484214878 219045823 723943390 766914754 158612840 222656649 255538821 678613311 766318286 87902640 956385677 354875018 316667164 992646051 799881065 274198754 646798578 298059094 318718296 123226096 16934239 558403990 425213067 724278635 429916472 320370057 55622071 714418323 987677374 870916770 215215006 424434155 678141267 224435076 761997529 740604602 402414349 908165767 465877983 131802826 898557809 495842073 183726501 765512933 668989099 631495059 261569489 283009523 411552026 15461495 463647126 435930392 250986249 669983077 940735206 424610255 817419066 572467622 398976712 163882500 389330334 452670482 162886210 869287350 225507801 513525896 892169683 285124531 421893265 841073077 991520290 872647691 949181508 43011819 772962515 806041852 835199480 500540090 82570762 188825165 805940470 187696183 751701954 854564072 510287229 770870318 719080091 839837922 837532535 407420836 811625605 718144898 455593223 602823910 818779815 88672166 5152522 242357786 293241078 516063362 783831584 567990055 902507904 784772677 617729114 421168660 836415030 987856480 976710828 787350098 671050306 398232493 682810000 545778412 535086241 84399452 795967813 25972141 545976081 782071189 70415142 221154222 682637162 489005063 165499873 974169217 891792264 557157607 499072912 519672186 443858824 95071895 851415939 388425363 903475086 167939332 369107774 114460941 817255607 324688644 943730717 226478470 774015544 472307083 285529018 610696961 49744423 612438241 889924732 412592331 253771627 149366883 179109869 309539327 99596031 540885311 652381765 581443899 144536709 350370880 443454784 139682244 36144996 928084805 835021118 848181124 4409030 948502166 878852253 49412532 290391833 651926644 55370526 34063320 205648012 430664587 955622191 923198896 188418722 48660100 782359523 112523190 607993924 531903196 259624943 797397152 328565472 27207889 866523341 696079507 308978346 63048107 919766212 376998291 3149471 704497998 717938401 776298262 746793370 916768617 783990139 547525612 72591664 992601831 189601447 3859574 37122953 10174917 989635504 231791005 538500277 213172621 475246751 758765740 871835037 302401857 19146032 812057584 20170159 906884689 157255825 399049427 22971808 148151842 308377376 828267161 477896511 232458189 298425483 174042429 609083545 433154562 411307433 509752795 428474763 742167693 595329229 621006999 347218240 265999856 256634104 74559227 657069442 477476865 658765003 497374662 52857534 525769855 745361027 432635199 587159314 932574267 189254185 785181656 549761424 996722618 749927846 39828328 118647731 678098371 3522978 509061756 117475099 591744878 698591977 409374380 904089431 308825549 638686659 371512852 855583920 113066096 760287655 368502311 146011473 72695326 572851012 597657860 385908513 237859102 432692807 25460598 304629423 549518599 69479717 893141289 674403832 81748305 446367411 640842285 758435637 293241937 622473312 129727562 358025428 548347740 276655216 45827487 436384076 677995948 729018651 504874760 5065190 896464863 605909128 833743663 260608985 689754950 891995209 750069550 866274635 202515671 467784042 569755828 228771963 188305136 602069445 772863682 443458471 967548529 903613724 248978556 522599466 366488765 971266154 332655703 403263378 227348029 740986916 169232683 416113929 578075369 278216921 305607242 26705616 799059286 771674277 442513467 256600453 33533002 40918880 736528927 876104296 268422876 412494891 488414253 924260356 618479119 455256522 180039816 72109130 30415028 331704181 470977383 409222713 958510388 81447019 402003447 512648635 414862176 336036614 475822285 346275035 838655533 915319988 952622712 589000476 693503617 646222856 785293397 165568436 690735347 37003033 928131782 831009111 682174898 259846667 742313608 416477781 858457152 777259058 421601054 841058049 176995198 884774297 604816536 931251173 16928658 534821190 479571181 404097404 504604030 318289210 330329999 318026309 104836060 106461509 439218272 203932566 840311196 235372638 910550260 941776213 634597821 797697644 337459474 852596876 911008623 765133909 641747887 122178229 827518230 17381459 610030431 121191417 566859684 366788394 113722171 542252179 476831686 966878930 206800612 327416813 973738183 729026701 729354321 175510846 125127302 936459019 168126637 559601168 992375678 152880267 731066036 551013633 697001971 581530479 93625919 886652201 858180513 451057087 646210202 327871101 335087895 683282538 245204937 546755443 556982082 772711347 728284613 276648562 339716717 981853300 36424127 957245163 345390961 883022149 500480037 591939260 863270836 871854086 794545626 232031792 875973362 792955138 60910064 125459409 162710258 573481278 600105502 803579739 387275877 508869181 940956791 852879341 600906724 78043608 835053070 379551075 278646764 179702533 93442811 116998108 92639368 780694817 498538509 515604686 776374674 457942999 769169162 620948615 781390143 922911735 150242826 272136258 323315530 252896265 466815384 321017341 283772319 295012136 799283301 626088676 212853547 210789923 318015712 30095039 624599134 125720418 75752115 646888069 593647520 452300646 203729139 182864978 825272365 892770687 184333760 552721378 868320391 346801797 17908688 653866299 608710751 703613224 750073355 101397510 696825721 592113661 707020605 709214676 955392991 441739580 408367673 27105907 371861311 185168204 1642997 970493098 221424308 343978508 622402026 537806520 537737453 340986209 327262183 409852502 817079391 950739414 129419851 186843899 144917581 862686927 766627217 494852571 278540537 657708643 653748956 279613077 841504521 83197153 470710549 744726448 116830539 613590617 400605229 746781543 637080567 980138459 945692601 845112637 856500231 186071982 210307095 804959448 128680878 213820885 448766740 861816527 534125896 758314570 292107643 822647110 335200895 414905755 709063073 280707467 796668643 83232746 203789547 708550730 883998883 295943175 254806535 199129153 269548316 162038946 655319344 351284316 385535002 680556038 303504135 425662462 852005155 6191030 482078076 26532630 831610890 206973448 985613581 672928949 264953388 77803129 822743819 312235539 404729300 220311862 899809319 914246210 595196448 324709133 421930898 417845276 321351089 703543041 912748547 569530683 392564168 10103921 935820697 724382410 679142669 503248943 794733094 413734247 694395626 893004064 342327733 569693399 100215579 914093083 309143658 261954693 577363150 922620420 830120298 541257106 431540709 819841630 682321520 227527368 912384923 311127047 221620278 731826476 66771995 472501165 537036611 494637076 84360857 172268940 560726520 564708877 583792148 298747568 697864828 927028473 26906921 490431947 424413530 984514542 386012990 818272305 358284403 477539209 781696074 409418675 699440189 420456722 431655197 314117225 156060000 957455415 615555220 13818896 600334021 633348655 891411424 329466656 868832254 839839832 793571887 294338993 892301590 408007738 855668206 608288500 849080088 508600545 856511009 918376466 269443700 693531827 955697060 355123978 725648445 937424073 203908875 741933273 315180224 374255903 661763796 319646813 205772755 294999524 870214453 183093368 142022384 512071418 993345627 784944135 573315803 541435787 328734010 677642008 890748 408522891 13231581 656681110 441071552 240935803 757676201 345756787 476120110 922950478 227777740 501967572 663947009 737000812 273642657 294087741 376165961 744857744 466843495 246498708 61934267 835655247 411467574 948538136 837420572 60248264 887819860 18249207 620916498 839955364 415928880 429910915 631269225 45313013 204118080 891542625 599818233 569523145 808677689 209411256 607181994 514920245 935587845 838189235 446219062 794621326 410941109 697743226 366830811 123906841 443588651 724846511 114571536 280997170 62006361 346407570 547096608 916947725 658895109 56204432 476527521 387584804 401475033 977264626 988769291 963417498 426694021 260254122 699308304 41939721 919123961 708227160 101011801 627520892 305231007 222892606 821659958 96112245 801409674 169893603 295161519 59568239 769979480 319029591 877534791 28739186 964015546 246995008 866367619 871722007 725916218 614779323 770020364 531099041 6847693 560519735 337095384 834553961 759168890 96593800 561650258 626035794 369838520 658556286 596602477 367286467 620531348 916823474 407366300 887242309 881591960 487406513 512331097 571525739 847462444 618057482 675595851 285827276 900837659 8293439 196128248 120480369 997497788 358206796 87578179 830442586 520591778 355010636 361722595 47012546 901596237 15468299 973371472 721463373 496700086 891158597 609147516 130789369 772626915 2410882 972279754 948868448 760295743 366459837 237915762 48986572 369392186 17533032 129716291 450910656 740480890 13111404 296109660 434873531 144144303 459553952 455278833 85490422 371997032 211542775 970458052 757978799 481457609 741286183 275185178 755042186 154524347 34122594 830396311 689657596 689450254 994947950 375535345 465997659 154917428 921861302 914193393 129008533 402199655 115337079 353452169 332696664 827361711 339052105 61856369 66293071 578568409 113511211 754737088 884944146 594053703 650465955 269240327 958260632 927965778 970813657 209265106 981186657 434556042 944271008 760900067 93677433 212360396 570508013 510613561 108922053 563036641 373944286 822203122 270149689 199265746 234879982 271971655 245531297 159715844 206443413 278014063 203817240 160350643 967599633 459089891 769118862 284828660 58463985 857095080 850329179 709144029 163471984 546915824 841307791 897804654 484662065 120444913 703496345 192722166 530417661 983063877 998716382 298354629 226592897 837976776 285127232 552827036 603473884 703811996 496360174 49320609 673765868 492583775 796581840 712257590 289638297 964307790 343222303 975900303 135768443 200370980 564087166 32600120 932180845 872613419 692322443 298305860 884445333 858369818 931558594 213743551 256251803 776815451 145510104 58937556 181833378 905669549 476013989 581478196 730198889 986914903 219291987 269762193 284909043 196860948 192158260 931808354 880807913 806817932 667347271 686901447 634359086 457256355 582695311 698676322 292292591 74872477 980804884 982231862 754220395 254066838 692125194 883192571 632452979 989639446 676280465 911228 405248443 650390228 230597313 22163638 922285256 269860081 782752297 134788429 90748858 200099944 309223132 665460561 398101056 229094921 872546097 963581497 578265655 658518513 820188399 698550955 172346100 378502111 461079820 307679041 274009942 474869120 485020755 347827799 283456924 75559617 479504627 318074267 256673676 741446344 774213314 656985858 222945782 734789163 956283118 344292483 718299980 203321095 236426247 719484779 745270490 701004113 277465292 519232817 24674640 193217564 707825109 307878050 627123365 90543414 839973389 3111906 856440462 166636423 857669406 578044014 118234765 991136302 194708468 87854719 837732429 237305667 17435088 791034735 542405618 682869245 608290815 713735243 653547702 977294709 120739087 607085155 218683517 246074304 195063936 267973190 624040464 589404970 654420773 966416350 331344869 656421917 767770575 392450173 394544648 549738265 983187518 192524951 604892634 512243505 677860679 215160347 843491577 569480788 159072824 105874906 500783455 976302898 39760568 420462880 469448283 131946439 706529647 764715504 362432005 688137297 887116961 456516456 235235783 259691860 821712211 583724909 865740059 192293567 83926129 178884459 23870826 818585904 939013328 45794524 756967086 228533323 163737792 906634992 928349251 413232514 735601767 264724850 330933045 617616713 235315223 39643481 785739397 236386577 563032395 784897273 98239655 269417222 488184658 304940184 312371822 321703795 102232390 816680382 295812932 402362521 27223386 201614165 12246557 165415191 610041664 488727753 562435355 534214628 765890314 655238241 667216430 300391131 939927457 60079447 145830936 502881923 766991715 560211736 458703118 753395478 365477719 375301035 356624662 820058542 624238524 162256981 594200419 451454974 258229915 263867055 183301397 855836979 538676701 613678330 385555427 449974981 687746215 816938241 292662982 783911383 676536842 523985950 961912965 713823301 971713937 824303386 377942656 628889651 638969066 349065479 605807411 624647194 819574367 674937896 523325190 499519035 98196424 104634698 380141171 710391980 696314534 968006219 660614292 679517650 414066307 737338805 297139935 75619143 955024958 431115709 168348158 469961010 746975029 177184521 425389451 144307579 627053538 43785219 48851194 683255471 229935064 102394456 130098069 705773834 257697341 609869316 374806940 113457761 804064809 389998937 719023596 241217799 515557686 909054852 786330664 997833736 842225234 488430615 186593258 61301623 437523689 138670362 326342837 221943795 977736039 381476296 600389923 362037798 984175341 463625449 484634170 936674016 486647521 395367209 832174429 787271766 447266656 450899418 417456989 471100462 426308098 914738231 671695834 1866455 19202773 5757532 344553793 382359114 348656847 857249865 694036884 532848058 811641254 262921394 728553172 447729574 695031678 647492551 559605272 113534576 52686977 803176302 193774961 144966216 779024811 769759437 107409080 561964032 894191897 185521391 415331204 164432315 844200644 719959908 351911743 26896449 111626361 425183674 802869249 665835625 346832208 905146370 829598703 814005937 989135599 174988743 904792119 294965654 468044044 713834367 495513213 235326010 298193044 245330968 787177141 36226279 745304037 271139073 931739484 676603862 523073790 580395217 289999609 242510992 63356741 349972985 80800386 799391735 229855541 771466564 158625891 718347928 894859581 711677585 472524275 656812298 546997231 691305125 724930268 142949078 46273597 220320134 905300625 545957279 597411633 39293131 187076837 307136381 108423102 525963247 837362109 843716680 738529179 507911586 750352534 909411103 51474121 448729534 72459361 847072589 167755896 937454002 350391544 942537301 827881940 259903642 397504086 815479025 895106803 597999021 746700133 117163494 487539465 467135060 123825548 964813380 925118897 831099858 491497298 949324149 948984248 97740037 997826067 486330331 163284687 65686861 773502401 457914545 488942540 576809954 635816382 120668036 997392640 810211142 68245815 966205872 555604110 640590879 425391927 346057095 136649402 670915479 666694623 691293181 814691794 508757906 839721750 296186034 809814895 384033251 444497997 386338715 528261726 355591245 42062918 30998712 428604401 934193372 343934665 687312214 172734411 757945861 894968719 860914266 603877703 772638327 330158435 423344576 744056937 901681098 382075446 751891833 817079907 424486089 158661417 673963370 258021041 332739331 515621064 183577120 407588668 474139352 903464018 845737722 222887518 795141803 414445613 697875439 750653587 841033625 846789776 497311651 108760092 541755473 886603759 608060691 572646201 232915846 872028774 98183914 714466610 979975955 908986153 714252235 938874315 797854765 220279092 573672341 31930392 590581302 384289721 696277688 613988151 985463250 766958767 988089962 775416260 757013000 116827098 337987458 161004966 91516756 56665733 541899852 37806824 655676845 703515405 430153414 48005385 484167949 307784078 299498849 793138239 919244760 395953108 253980732 202888793 963084951 357500047 568457806 453239801 597897838 272635288 457134645 800965507 244643528 739953708 109898856 864674806 220368329 883642026 760134299 162747767 386811543 429342048 18804429 853850253 274254104 481819261 71332610 656253184 694262634 132122917 489866923 137423061 62656294 616029710 853129835 571547396 900701848 605214732 135484593 554397356 887641230 767805138 784251045 602036443 549955552 276756051 40414711 519415601 617653551 5628968 879087882 720950666 458037636 239267219 647258311 751956242 402667402 145139370 870322307 708429263 468937500 144735152 51584682 857635438 874598979 389917895 246736106 503247804 181839380 554527869 677786481 542917786 809343718 545078533 363191077 658222548 282540401 163141346 782222079 436607464 171522278 302876991 69048758 678375416 740506963 567808961 562640911 46486191 643633462 268655012 87832541 766315587 638376370 169868827 193604446 19158456 372515593 316036546 950772930 616810611 627909644 406064593 788941785 908741990 696683141 988654084 790032089 992765764 236178733 619515165 594246601 879644863 761733189 80316052 433152494 577411804 335100954 90473565 416914128 14903425 976514636 575998867 16643335 532875235 745609265 821153640 611347816 373024446 805678612 167284181 2722411 205780437 700169800 238821040 123256222 747563223 622028282 125605892 513645865 440111663 641217396 295168202 453430177 36017725 502015267 987341575 462278840 159299925 670369729 354996362 529708121 958658517 282000889 613413439 309788620 434459315 356570057 178994128 565267995 567949536 71607168 643404481 437300947 477662164 182957494 329767560 716036185 221434689 149341201 884756547 242571942 515421417 627943657 270495113 212110521 848281373 34275732 72141414 815932417 529641396 574420594 960844043 735306921 131028271 649794835 906819698 261980015 16290087 518841271 658281466 536027615 29460661 438929662 496857579 282931555 523027805 499067548 470658383 325106255 876169157 808882186 159873411 279153532 877911029 42133015 534113023 615789266 450503604 642414876 125299656 318587970 941409919 918551080 873472151 646239249 264198254 80200701 328180908 146720849 155755177 591340314 49705285 652253739 696260752 891029335 27991705 670645692 592578937 991938588 111279158 281831535 194681283 33777744 314598795 120729081 265123630 895618207 405285070 928860342 285163609 931575867 523551790 653864017 278179026 297197683 282978221 886821740 290052059 217042653 724495909 237336448 748016845 594543975 182530025 657526077 76094798 605252316 958305962 331542543 635865747 924976692 619591735 799057814 420261994 889835326 172296253 251922678 86812791 358068287 681586904 744391434 755944221 477286572 471735775 262146651 451060462 102292929 31339719 494972502 797669458 942125186 791984709 811829111 286706828 5836355 482860409 134293732 496869445 422847337 238350194 758091945 753259038 413077492 338390497 268415858 71180619 541448609 275095965 194263229 460654121 333587090 522587263 247531949 433392671 268349029 828281974 257423183 87517667 183717310 430892136 653508874 906326715 794762108 737414363 156456519 356613185 366123875 227684847 688439599 836588318 930808121 970423679 286164402 839282954 288041349 781100055 440280349 529833456 645368565 549107951 226627106 943592771 979125019 743289291 20102119 134345630 503451142 108978023 986826333 229941041 249692070 609429737 965202228 523548727 469585110 868149959 698133291 718567914 513370736 865798207 421060163 926412176 67593021 813470486 651216327 397768689 970989776 244278541 716800728 937221036 482499495 627380843 314260981 370430462 255173021 443866555 639302705 500143450 69393826 446833141 807224016 139566823 913307190 828707091 756690264 338303694 799453252 277257345 415269338 204324825 327618588 389364405 147569551 211738065 840986348 409669621 654614007 661619673 613187589 782880744 200209058 539937603 552842092 612395189 72858029 556697640 530702508 486710048 474848392 316452780 76126059 99343123 365463893 36331427 362210930 885568319 499746223 876349121 553544870 644434143 431521532 980134574 811818146 459800011 203256228 769949282 388208777 330954347 905600662 480514821 986110582 468701775 664058831 132886587 724766555 852523856 972430044 377269904 97214848 141780946 116509743 956860944 364617712 139523855 205111309 20526637 706015861 564167088 868685838 607903015 503298885 882376982 382331258 828248162 138837906 183858486 876642289 237894232 745138255 987621595 822720200 679191779 980810370 102133577 815734763 480344877 727346084 473946804 397050449 968795728 864355255 259984979 447765786 939432587 385348950 30887128 693447771 21267378 843910073 37630613 340582963 172030237 859719050 872807137 511668793 866128132 14918287 380709407 258067501 585869446 547289240 250479297 112992682 915547310 370718195 857412422 329126287 935709961 15011709 139881827 350247257 634369792 383734721 555451503 443221001 240841681 217414464 60369128 348167623 601418142 241047104 77108862 140908395 850627395 39546351 695636580 607504803 199448982 167717744 295089826 676721582 450475740 854437936 296446376 114578045 839526781 91068534 742792647 60965001 89654753 528546654 821364182 60832702 701543909 234630074 29665292 538621842 908050141 927845695 297526022 883890802 809704854 814321224 343462616 901225296 215982606 318750588 558102126 344126112 968359972 492377582 794732245 204822934 424761638 753294721 332039759 952752100 669491048 225015599 434528306 38456011 710232936 366633094 837771476 306663658 572095685 150015325 492415321 484240394 657521717 59308567 154083014 765338166 877600438 76934217 644635420 709957048 562284144 218396841 951049681 51968099 796080233 14718236 328977066 570995187 440806943 734793288 717212980 487865348 695005819 963505249 865532253 117216445 917483248 539515583 188531726 908060888 733684061 383174041 396386704 860304330 370998512 378990636 784094618 131660557 94305654 332479247 785189364 308320225 116087235 761323570 765238503 476219674 431752014 932840090 563105995 871609652 586625039 749048010 36063358 551857346 61043643 947890902 36180793 210773921 972023127 102264572 999225388 628942484 40621881 478284192 146356183 5012181 662890852 451276926 907554378 746287401 455338128 385046259 68269219 13798708 285298802 848673479 257587082 777489995 698121683 588316492 599857549 280932051 340281159 831837674 497284160 624654062 928849654 854723937 970342409 131346761 131685521 268184982 412573517 328486031 56933396 542872806 671036545 727267125 380062014 494029056 675514501 817034287 288589689 866771404 276658419 999491386 127455874 385771749 219629333 150419660 907289855 658557560 462835578 544720516 150541718 422084902 358902992 255502051 196870447 875724799 982913885 215024584 760986152 120553505 916510489 400754798 257176616 80892303 666324558 355153790 727098167 214517934 561470674 800919039 936848123 497396582 701455798 846481290 49028915 295426097 194063469 314958246 503141846 636775051 374491488 966558034 996719642 219389959 748449649 405035606 575051396 403843684 634613722 710768671 269858455 729367872 883320924 857192107 984224342 325988132 907795597 299784542 57877265 67358485 830261365 159454351 8093087 406590863 936734024 245869521 336895146 199891949 245628506 602435577 293568206 502677327 495740172 264140427 908104010 137471264 864745880 306142088 560427529 955882711 15529272 882792651 385343459 613163220 434088312 192818200 59570078 804947271 302755824 895667045 292170334 239751462 961045070 305565180 57022109 20749447 574172976 79367129 645038859 418738763 735966904 336270824 685585990 738982173 694209599 122189115 965039381 164488572 19995510 688021086 745420981 963992700 992883292 24797098 737747576 46568039 763232843 57661136 838626994 946007562 713049038 956805704 432566867 483766351 986137092 186255136 654196935 40254095 940780007 522844190 923300340 460659416 139771117 384198881 917728958 206206453 242468231 499852856 531489674 773194454 628283694 853877639 160964134 336784798 435998873 861190241 620931949 538897890 744228001 9532557 133039930 479362702 199248978 886058988 329476164 862852040 589881941 565256197 297944912 899058731 876469413 939483089 884222176 790115922 366076755 223241568 340022552 16136658 26921307 514208826 643236682 171949464 987946720 92392805 688961705 989747024 888605157 883811321 660327080 504138371 980595742 924934856 718974949 131350079 160784525 391826088 1963724 146944327 613615873 197356374 90625324 752437594 972811459 458274879 645053879 497781935 844199402 212484278 769266725 214716751 72045820 646507875 890763441 186745186 205081654 575641696 930174772 391055925 703413815 129248644 827158116 115078047 631514893 220465353 881819833 265476431 618442351 912221790 889254984 456814613 911776222 112544994 434865116 623839152 630755037 660690014 187039213 369044864 584025955 239302521 585474415 23962485 973268220 872955130 431793652 706079633 511566787 850323547 215675212 433156439 929322174 339050237 745622242 130554346 657563665 480242388 784093029 907971710 38999053 606955804 826914986 2090798 33151015 477863171 467837081 740816348 960357643 173599674 123683162 107317206 309706938 840575218 18459933 622207364 644205366 154219099 759604677 507154510 571633804 241382641 662932912 375122290 517793938 983421382 853436873 824249340 175803524 986227123 729357736 512705949 549769446 981710649 837329518 194307524 604591127 320147331 661897107 951665719 353301781 925519416 775288488 145174826 955093201 951859932 339463804 413617429 82297649 907052358 812376040 887410563 474821554 278712459 122379965 317169893 585559232 355569248 617964178 279749790 758166654 905347802 553116031 271715280 490807961 975017041 241213911 786241760 622569210 769398142 789448626 359959445 100221596 731685953 360583926 789650100 436580690 721435142 480529174 563240790 673895584 514794381 941174138 920750236 699865369 630811927 170669832 592566143 549012493 191106631 353911029 244389298 731979014 523331827 225423821 975038175 453399543 164853204 462479671 6502869 829277648 992751109 989364104 713760565 326253630 771732527 223916892 623151609 787021394 694010528 833128346 128489473 828594479 582438740 65214024 765934778 75594080 682887714 949133726 991631215 966380131 250949716 653624100 265125103 215760953 991247092 440772503 984479939 181387514 924307251 732610644 677882606 382579591 784520582 811616499 58296034 2187102 295606456 588810217 81976634 977262737 377771515 156591330 728571801 83915912 428144307 107160968 228450228 397143360 976933312 270567353 56713581 87109727 569839942 54343669 743278970 755268356 818827498 208518327 559697540 804797367 963411450 435985710 660178628 695118359 6340032 578935262 7187406 322625028 148342487 885048227 41905876 947158416 174188823 773105695 190347524 936660748 402319807 612025489 470162438 762736155 551562653 401295861 399812073 376447811 986640491 382870369 225547365 932493076 175476835 642066635 493993463 606514736 611949066 288687807 529983577 7605659 800227789 203825340 12029115 331908442 466377572 155009668 529348949 601858954 991367129 357784587 829568871 188259690 414454287 721328964 205130916 825747007 588584928 795996038 369038679 242369684 207653974 433836387 588853512 60764361 222545452 862073925 430116732 608202242 916370625 867601850 918599042 811088490 74859795 334916098 112312799 164109501 582112063 874998290 237149795 275212620 828297955 736215712 155758639 654108346 413084577 599063813 786905171 499970070 757745138 322499945 210140162 229428527 359316709 587868051 631572694 217693848 831376938 792245373 182773160 897845918 453644396 327723690 546291090 796508049 426624249 661227875 143161439 738574731 304842866 399401455 880904197 842843540 160857943 315504172 156817575 459118294 9611326 605933775 424963041 340370909 261182539 272124793 261594685 162467448 693658617 745089566 9196794 742662060 415989350 259472642 938865287 324756653 448153617 985310931 600060312 865902188 713002759 636441579 89916021 659978204 634836150 643417105 428797282 808647987 56591949 574830033 80532220 502152524 55219149 530479413 321842257 994455508 223389084 726106102 360142787 550738990 164914693 398519494 681940013 79656095 63765119 598587043 961569931 197652981 459394256 157187618 105305599 856302855 76169995 507688890 509465667 359460 647319536 134935145 728009337 173434849 218561687 730212161 929271793 472369179 879476588 789968583 256138111 72876285 847484669 643518623 725271984 642359654 830541342 599728390 908894900 348394992 990612986 285118724 483569103 163507400 503005160 850611058 213533471 159675402 971602180 220115216 103359389 65697936 676112457 777096966 216460731 733090338 820121132 229975620 287026382 502612558 724476540 212767321 25189265 332245976 204853433 378292088 390305387 71662219 517795859 666101689 329313332 108763721 616445116 316214569 29237318 645200980 516614931 924533337 718393002 845334572 532798725 244906542 241873457 609408274 818477785 163690876 488194799 714192297 545589769 204425019 323152048 299980917 270706710 497355238 733278874 930236474 243616462 241518734 252071930 920641036 325555633 184861215 585621682 818169980 299328669 334307837 119998741 122842407 420327843 326199173 712731209 165086444 647469398 529084542 475953715 245409485 826397926 678617576 220114948 715387965 114127478 690139571 651661697 1857942 699131476 588678856 774243177 859317304 20141826 165441182 81781166 301452806 815150440 283058811 909569450 485512807 594244558 750366412 524189167 578453077 155882521 373271479 785422944 559926732 62079126 676051763 554885426 177100620 340609156 56089604 585945001 389178926 919135635 154387532 117039865 30192759 450301893 521821393 72156292 95540134 514695963 160078341 136369496 188886606 74947419 594845120 223969266 410573805 934324248 835062251 814913932 927278226 730798822 942969783 599993017 937626295 320851003 425883281 89051513 871872334 917972860 515167027 603022212 63702859 438907891 531026485 984169474 374483782 164892743 540129860 664929926 573470369 325335619 280873103 106156499 852311272 891579636 346442158 353159002 476871141 854504910 755475970 884406512 549196262 889392485 112870678 116026207 920655710 508079304 589910248 291010753 421640776 664670950 201544354 263944960 741211609 589780171 79063562 494315351 456447870 517788139 381856146 357612424 84274104 166182128 805067620 541233572 649571889 712730862 153129578 282564958 456806718 563113223 162570887 221170788 833449850 484185607 80261808 994484840 234995650 11485101 725731965 304220777 961464884 152503006 349495290 221978941 862661062 876062028 661533956 592938339 651830052 516048336 749403808 310663845 335776622 838711584 326542712 586504709 450001420 871816515 136159079 37568886 207468173 143609191 674556119 346883204 255623546 153070576 655853701 526450774 206479784 861607450 676857404 393506753 44380355 181827856 142449069 914864727 297811826 807316812 579409746 938351964 772150312 794663816 832528506 830309888 100924277 58698325 584345560 820561844 482388090 597671263 154638833 126233936 822710732 816546549 607188949 690282057 607262819 865734612 860691294 826069533 731513129 402489652 17815292 630480089 916352931 867187673 729692366 174000248 394563299 632699112 232981475 541063890 661313402 899753775 677272959 814336420 470120068 538638825 410782878 844513190 70223308 717198466 339812741 187306073 511522289 175022787 7110820 633100797 152214233 574648021 98259553 56912753 639339006 546797682 102697816 987665107 1030157 960062526 518715240 818227179 956393158 437310350 956387501 832787512 412047136 811158485 263538381 645739690 936856330 139742403 709899850 394942656 330239234 183096915 435919583 809485005 766356572 263457778 490952912 267704243 318983968 631734611 611159946 33338257 427117779 262748123 621601631 967102180 763908569 418259288 588655411 755997484 425356013 411460842 578336748 573385787 841136967 987803852 917970057 969006291 154455154 720362096 144469090 291038096 206429822 278146866 15659990 163348867 787779571 524015474 890950312 860757052 217635368 269768398 100687374 39651841 933341668 486940711 665310488 474714897 196517416 958741115 503377645 911619985 782368316 120882447 92057399 49087615 789251786 413352911 285829295 929709057 588547425 749130623 166654208 980149214 899177761 242617225 368048961 486830840 826779051 717141768 790576194 442516676 321114310 304433598 459386485 85020253 674817419 950148378 491576801 67638064 252339768 595487473 953974516 905264709 911722555 265870958 938807788 675523316 869218156 694816817 996431180 637247075 82472333 906759060 658592915 548022570 348281493 248963127 230080610 650898052 94610661 779174665 134402521 549673325 871487695 636806130 912379488 992686412 480139891 41921718 361388041 21103850 581043596 859875241 281213551 619632394 128222030 924471545 248192740 992199650 722568668 905331423 937625671 955926394 963472400 137457455 616276193 86015968 233007522 650645524 360452909 474472580 776373296 935291018 739341782 919398324 768621895 44830846 12793302 841855949 979518635 970078480 431144110 195986582 215395264 827403185 663169481 418004576 870650531 399969205 661526245 376295187 141752633 963040775 737954686 107113123 416055565 386814406 497028420 618119757 534708593 178347322 530228102 2894229 861749338 368698120 764620971 349871463 53936882 321166592 886233611 573767710 255126752 773815103 548826077 923318525 138044567 553255940 462321651 750721684 865539190 468030520 555983786 763290341 900843902 782036370 674071391 221619886 24816974 873729626 741469854 119208402 350701953 97024789 688220977 387823057 658578810 395590802 482219244 869532277 774126557 372061270 344278813 586814033 709706957 471430359 246402673 911150877 340866817 882258429 252930167 419782009 711171811 922855102 393383507 852649283 686971053 901836281 603525067 108407724 975993889 933226101 446679413 712838703 424586745 813001177 112319065 772840568 264739132 702271691 762882881 65492187 472178674 763177779 486108989 762830289 416313164 13980022 986292117 850419778 20772711 532517338 758617880 772222251 728743596 303583314 913956699 351893682 502268519 153020397 920407887 10672065 775532845 425860035 987006121 826236446 126135596 935805438 771587815 528813002 829229972 855643307 740007577 940652515 584178761 214666922 518844349 573522990 950404408 661009823 894751530 567650115 543954808 69816581 262566983 679191554 142139817 67688950 507899982 310519165 604152786 561195334 756686804 574550103 708871854 100628841 740113508 521514612 688333014 518329397 236122154 624490560 694694038 723909678 842898770 204947997 713033676 169816679 365385200 536151159 832982508 359935849 724307460 693473271 536889179 430239699 686399126 996599507 658199062 447170307 112167753 712173257 594485952 530047211 718986201 240013343 994938964 379699421 94267491 550016499 278323566 597378432 498097942 50338504 911897850 312344127 435370138 828317121 184636972 972888247 124298145 905394498 679737109 200386844 426082853 844097929 497095122 119535426 791968488 759856379 833823630 478912583 151802312 535952437 301858031 564641598 203419730 756598617 772848995 227515429 940086503 254200548 33532272 921288590 723276157 275101626 766148607 34643491 136364811 896857397 718099976 551266876 514449065 96310410 604503237 568604181 796290683 714442902 457308562 992625326 429197949 976259857 616626927 319227367 932766357 869253032 304932533 913677998 807979610 903783588 759161244 4405912 6312273 960760310 749245468 581613862 171358044 59647352 869408826 728389917 693223522 21188812 845181508 952720711 864154460 5059853 618139845 315480322 70816770 5780686 872496246 941516596 971086038 182578881 800846076 714965690 732068808 800551953 678882029 462387846 778307947 666222877 996700982 591391213 465360225 519947151 306314775 144496725 798846822 190644045 6535861 998655113 815362637 946763746 646518366 451631506 751362265 978514516 637376131 807391180 742603911 256539712 259100439 850104379 221787134 957767263 215438481 744765692 457566248 726479442 283358665 892551047 947437923 221811295 934052875 753253200 641362529 672900900 973330448 107661130 132487883 297833104 546591738 897050256 656855302 460016510 461863169 610256586 761302092 75776806 135499397 867610225 212612467 69392349 109313375 56520469 712431826 589587520 87999068 809211268 515950454 717816527 568719462 562471512 559257025 93687112 251073846 614011077 494407771 68698000 197591232 144205628 679726090 369621559 542493797 245002039 467923087 354225679 813811124 778721734 968840646 21709955 188808993 769204981 10765784 978625901 681550101 282158037 206667605 686556532 221077967 837074990 375851532 43531880 170142722 899412423 354473724 668197766 824370370 747119195 551079430 353386565 470879482 767477262 483157499 608659733 801443908 342036691 894586176 904813155 481557061 531917074 76776307 389016122 755414024 212759348 886403826 249980877 683356398 978239822 519761613 256308818 106415793 339640903 136012153 160419158 55575468 831370763 6202099 541788681 847646132 626124938 711455570 763857839 596636421 512322409 737773675 963729142 311500976 943784564 341512006 190648953 506103001 63160723 925558060 282191233 482725328 485497982 677799789 637038599 307016291 539992525 321629000 370109907 908206775 52452860 784250549 60041920 181601702 127680926 795828434 630049513 549066462 681988427 943982885 84292982 526193934 175600536 743470240 286669143 942905350 654270567 305996456 377220438 58339673 725750820 593035494 451995429 370606076 825632645 194644782 352241172 162078531 833980563 432390696 482653960 332478618 663518836 349368760 540080501 340471282 930910527 490067858 544226543 510351710 503638419 622244835 256036992 317845970 569386032 140852850 356742964 402891921 688686424 607834802 268174765 789867442 375045395 913270455 924128023 865287360 293959089 836821412 264348645 487648994 898464292 170318210 305797495 773282724 868448755 517388334 110073762 617926057 16472615 846385629 284836430 553741897 462642285 370050920 312597890 711789846 413568083 815915215 298736904 180288243 275259279 70003804 475335124 788474394 431748147 35015091 872487384 795946108 967014677 167060597 438313055 582572969 925568595 419475942 581335233 933232913 888357451 568242743 958861676 25447298 632761715 591431543 906820543 716084012 204810658 883653176 174548266 759654729 186924184 305558963 314501442 3383603 225650052 305908139 893386862 287754572 836067299 564065640 425775379 637131274 516277723 725244328 981972443 872995047 33468438 916169608 687728420 787374581 474081244 464524875 250432435 69614089 536627654 660630259 68592540 192387190 636306901 523692064 557416566 916191291 358062931 763531105 791190894 995613095 222742839 339207875 372409827 740493190 994184026 551504620 637563933 295071825 316990750 726959158 48138935 770466590 511444116 247438565 720367235 903064152 994853576 588889304 170876366 307663154 776243146 188616314 668834979 845405850 939595960 622431136 176912580 175507079 667389616 345029874 165036951 197596756 661250968 334122422 785464136 258525552 162381272 145435523 484228711 147943711 916675028 31961284 682164073 595835484 302596342 77733561 672483092 419181111 9409074 689198155 425298480 932022072 163599047 929687588 838288083 894401358 218286377 291490549 83360384 887904996 270540643 870096164 552839082 327801918 763364494 567900471 993363763 105055566 960142093 781800580 41663285 809866697 905174018 727352008 404038228 659880127 458062210 456358470 157702878 200553912 25479681 86927567 74733235 996394412 592730205 303345068 821198825 359493659 824526837 207673340 472245193 679998986 162036425 81997883 327208457 937605224 324680292 329058000 813626832 538077224 68211434 826183517 389700838 727972747 646174215 278433166 544474130 351868345 655302108 581667760 947969597 805003219 603405058 844921304 802523517 954293351 340615586 453749703 695044083 209285453 22257569 484216952 244961794 758696415 221866458 105079964 805443119 712691241 538793983 906198923 513168266 114276423 949113115 999306978 988610901 685484122 199360710 199303988 138191832 374684361 925184653 419086666 42820645 476377255 332523208 867592184 305893782 325953011 199363054 279723455 646971291 818459642 498328374 312255732 980135218 426268056 94281091 237769063 878743087 792685449 500020876 624092698 701020870 682887459 346360298 678981825 184151076 24632311 821983615 923209399 693887046 399157547 115976697 957021807 591084300 300887948 497585767 486776414 412411949 122698763 101234512 299722007 541380606 363044554 701603871 146705869 233512279 612454675 451740255 500304821 926870468 748484024 306393898 683737601 147433161 197459251 979210603 625332659 636130004 311502174 907451649 473373362 272723720 398889328 765751408 551368048 879853470 417768308 280763158 775073482 123418939 568011924 567146868 205866135 462535705 59704581 944183483 328617344 799350270 81891628 960059016 612012323 290718085 580762375 679921478 309992982 888417553 78939372 985135551 931255681 344940345 513639234 496654124 287368568 549263738 224602718 575922401 393336748 999951555 207121762 146606368 385431359 182966971 890695308 894450712 501056672 340462227 745355813 74951381 448614028 328942543 702814209 608585338 687567637 312021415 380010732 169073420 14960364 777240214 741998719 939201530 318472180 991414621 517760514 121200674 32709532 840598465 858707592 914983750 997974928 745574667 947456768 786759492 907947077 867595210 312602706 413086444 32528780 816455074 554770810 965570570 339364218 276527469 973090658 40808926 569145373 295170224 147650186 134703861 687891856 958177201 310785233 300555555 132530241 166622779 184402448 389400168 344890218 874750142 391519422 979483660 578204851 486197392 670292646 167738823 165682078 302191343 676662907 785336339 111964575 429468437 465021088 844090910 568327716 529357512 312546383 972301509 968206678 180767097 444405427 158142572 690326267 460920088 46794149 62088080 178885347 970744087 891004327 50177526 75780174 520714494 234118345 857348153 892723909 621946672 174371225 728536303 747892379 361300813 336202150 575769335 28365682 851306439 580076871 584043745 295164678 630920722 381211757 301494791 885136263 950075100 27065994 235518308 49366694 132638037 105813969 19716987 306304159 168939990 563995383 379580691 930121250 288977911 876253013 420601452 273963805 355515211 739258023 544667321 529313070 628279199 785482578 646366342 816887607 756678844 58429478 948412347 46112658 756116083 343755380 655790872 91889779 470553124 347200055 551083336 788505901 889547723 592130412 509516238 335183731 352041790 12474647 438394899 604581470 342594079 177460269 642523066 661500568 97000977 437007411 545751068 812198127 286210061 832857095 673960674 202972070 691676127 393256110 354453329 143215738 563105145 15779384 118627854 694636707 230038682 357327619 460647237 857059858 63277258 373181603 384744993 75151397 966995117 1967968 477282984 327709323 993420322 31028381 639983333 587568612 19020518 36214455 666505793 155811776 801126488 668806738 233109732 297759179 990003254 120405467 4469061 138682787 526434344 894693503 737404764 64007019 436453469 807358485 156269304 332879027 381188300 995365547 712404650 101301051 287433462 862667871 698706472 62440841 641244021 586117047 914056608 891026947 981598166 764165245 864517683 165242401 380590960 826649819 441576307 47336924 660545921 743762479 149182546 843464337 94665769 961307273 785898512 548054911 54071255 36371016 67898429 354839820 155262717 873328405 508141246 520331203 235456222 95651214 316648728 521280382 906749475 979361338 147964838 780222500 277352587 570465620 594276402 679153282 436707719 564228396 497660684 545555262 298704638 571642433 837777664 390733130 674861451 307236353 156146871 137768677 270697982 895155683 116839527 7945512 291350712 203552142 611397917 485040831 604423244 313549292 150295133 516812315 399164615 767060792 46443231 116344118 357024496 26052533 632562143 986096909 916709934 485694097 324494530 362547468 773888053 272711484 443589383 785752868 564567988 364090414 242398845 244216225 789020067 62199659 535987834 873316236 805261131 403649045 965525721 439043769 504428909 304917632 631154638 956562812 777324807 742970885 50771664 117074048 757597145 833731979 891835811 137820908 448508157 492281891 13705037 37683681 317444271 657226915 22579904 16720019 806924398 238995058 597168931 427118292 922742861 523165362 671599276 964122191 689089152 850661262 280222188 492719448 294239166 294897822 56259342 523813077 492199577 368332933 525536878 933276754 3729269 183564332 418254699 126378519 113385562 287915067 877532633 382454320 433455598 743651286 892978036 967131446 635090684 949102948 960238018 576434958 876227713 240533384 616626470 523904743 852108584 113494325 806456676 312669160 253889699 259738912 779588902 533766268 995072848 71203726 233068144 146029619 269465582 267683348 797314827 56691587 241372143 637955667 30015829 247723464 915326116 888374774 30336346 637139590 267915679 685271071 878258966 95280866 916745186 651055784 76462409 942587563 20542412 319264448 793778141 26622053 136323961 975124950 700604036 232535450 514687138 86184384 797529061 450651430 457417319 243611775 934543826 783526542 970736441 627241433 697692895 729691381 893344604 167293730 266625410 747423433 509445558 451838715 236523550 715212807 4577083 415673276 143365471 406358073 786473919 669297626 926504080 778596025 410333196 794056771 58223397 572429127 180072163 302620634 946277396 406112658 64146277 244638303 744926645 285968607 840738873 953323609 349037771 460550952 496327309 845673051 213721531 829047815 543116487 890164872 136798978 592121655 960588527 748299843 207218103 900307924 920175062 622115696 212442107 7730813 759821104 868722936 166958370 56261923 493020176 246247044 230443003 350056204 743222423 929674858 415893069 658726365 463602102 993805824 226801220 215384207 310245738 841824337 958953345 612393017 796611463 180131016 586545853 494791393 944567046 902223129 382656303 637379434 268915944 960934560 933729026 187068577 542251204 813962198 840841127 841756017 586652522 149396517 565631909 922183259 71728991 990737543 611729120 257436384 908327666 947253786 923090610 402201765 543486238 854452089 497074531 465701643 159890810 414629040 671760266 36599506 427474301 703966076 781900154 944745069 527612132 145203718 478457969 313169993 52400451 956649053 927524154 512903536 288258495 854974445 499467876 392261593 927870087 303265132 850915481 574494778 222328108 732588204 776657989 157173237 157616168 765545321 862379428 868826175 506328259 514557674 432247478 164038805 775899567 460562156 874717426 674282820 774406940 865148578 936741362 374646452 238320382 172570949 569924846 32164022 202164366 407785 502124815 321560143 243101927 480798095 499358517 961916686 335053638 485476883 714636794 878757419 109130290 646144335 20554433 697501785 256626212 423859044 149975818 450587661 440675181 952608330 79788771 372518548 481615262 654905239 295256180 726230052 885277934 86337825 660765202 478133492 159599187 60198786 776462835 541155021 964361465 784767049 412132348 116020637 754678667 484000876 820341150 266175585 105012420 890497613 26290350 428888657 566507390 155144487 430066840 644387027 742339766 638518988 592681875 860876601 600266905 473895053 814469711 507482770 721113343 792409579 105407237 436679183 950299387 956815735 918187305 914645396 986346993 551108541 368047428 613370403 962777144 772855774 339162388 86981696 386266008 454991784 255562033 982302549 825921386 6458055 101394382 873353680 495145241 844531122 384001876 453764117 583762086 448884652 773395889 596160545 316572265 207475011 151079790 763458227 14060353 419537489 63885578 209591498 378213485 101536494 57664506 213002267 495886822 704027271 324053538 690461621 780850819 851447404 384487467 653029339 613676079 989776156 764786150 879515574 367039969 992597723 669643997 221517501 959062050 339777095 838402053 138708269 888084127 658106950 317246518 404944090 248580379 566029914 138172615 96200889 365533579 84655919 834680755 710043383 948269605 68218778 861176468 134124532 615052167 810910147 418630936 947051618 591149553 618769676 115634321 176285692 438966756 964529957 576347273 965281723 198166297 290349370 41467863 718340453 128570757 368756173 443945589 553281032 753202426 15175976 832140606 191161765 590662676 721122513 467223800 7660100 869995157 934532499 854512534 436016041 6738946 687051267 141402418 577881854 44680433 712914624 811713400 883499452 969878873 355965627 183127087 288257539 657753985 892795163 861076171 953508239 442606096 709248616 420856655 197489808 497632521 891789227 486288356 394587628 593013926 537290568 628385964 628908306 144449129 291759877 934018313 129624014 626933742 620356783 562640392 598889585 239426187 853432706 490746629 97768594 962263870 373691302 376493309 234968691 386516867 395790531 605483462 62212005 204164895 24023557 360673689 871586373 254806957 993130766 771261957 194190164 169945207 102620344 934146306 805003185 797668160 593537403 13597197 852285651 858266847 390194167 683246944 71777214 469884663 134283428 697986329 9983463 385042294 786100870 408782865 868153426 740909340 657006437 795395335 547801834 103673448 98134824 176685843 885977575 974172498 984935406 849521891 654388795 938769251 343752881 179366931 291839765 673505873 531188325 116183142 895979368 607425094 224042507 525270952 436226104 759984803 608721215 159396039 353393339 610003914 411603942 778930534 362261946 451636919 978671591 133463253 676709892 917633758 271387603 776528203 347339247 271645171 114474257 143343780 885617395 482187375 54935569 680789977 807334733 826789857 30819621 487876099 184241980 180775860 3718926 383990725 122580217 923517707 722983891 857858437 445837992 349801684 108277654 16929766 669763142 958507652 121787968 763285309 387838298 595330862 889829259 313159999 22383922 942414514 935808356 953032397 172492722 656152813 996943648 426220041 446960725 234855271 848457776 59741813 472051762 862032070 84662644 590258238 549852314 192919089 497798214 938804506 388731180 374257258 573517378 496270413 275054232 472351851 469991139 809145579 432682826 2176382 7174314 784498652 795102408 540048807 229874406 281965440 967177667 553883816 116393771 665041497 568858286 54731847 302910522 237557480 65959018 492550906 882914259 315150008 39473846 806346054 486067956 884866934 431137842 188814940 207493239 255526004 339554037 173552351 26182162 463003260 753604682 726165730 65124621 272446463 335314672 686478037 782367297 577474135 24149632 748156168 275564909 794761998 165824409 343463048 629719022 508689679 369079358 827038668 680482702 792911457 566087728 190798641 225127683 128106588 500273964 178435743 539581820 149844124 919342559 609382131 166629435 322576295 843219879 152927937 216758372 318693269 194952075 815912596 982056721 497047678 227453653 777812454 855158471 542438519 372927607 287659175 195567833 598879384 697994929 829600755 233834921 222387224 237827897 472543054 127397329 969982730 363779400 176290275 350212180 223212954 666601871 49348061 38185482 460676284 554306862 323362559 612011129 343620167 918567187 69960394 902934810 139322304 776922349 322636849 477793334 968249297 819918079 574773790 638877356 900154811 57778038 744035606 706305270 10427911 618521103 578010638 583903050 713151437 877085992 989474134 599643821 817573552 132506286 444633229 752424229 739730985 871205024 652536775 814946196 750608305 1779260 110364789 965565644 405653746 74557888 107010040 923468011 551188810 149198660 899424112 811734610 220612018 402014175 444238681 21261474 265374914 637262427 371980826 331249862 75862560 144450626 202639577 334254131 120947320 794779821 589393311 248603726 8188670 268492676 645713755 435234695 100435735 401247040 288089148 652978834 18495986 357780012 328109522 388688764 537369332 194226588 421205986 119933985 13617207 514471765 482498305 478999945 978345719 620592705 304050995 354745145 672338375 809058853 306075698 420234637 866928323 392654285 450147233 502012591 677989012 133960167 391444884 425681979 395774987 95669739 846073130 186681540 787910793 792153908 416434478 39950727 762883482 909167515 208901977 11814634 30027674 944033886 611704915 728718568 874556403 311002946 462201812 10317919 722810428 65585475 463692417 967151012 911506537 108190999 116484306 226130849 899396587 522059225 912894633 703670933 834127889 331211592 807706264 924462664 616607082 550188109 617170346 43123204 145937154 629440146 557087765 726248657 696872222 493736767 347575731 241117442 422761272 263114755 100619030 986285098 121613034 125687651 293421044 998134702 537882175 753981642 946002939 799762944 110198478 677439026 965703705 200285324 129928100 114419097 967298024 185584781 258078207 660441014 69500305 137135118 195299444 187880789 820124341 804449291 574723714 658888867 674560134 196638722 42861568 358518349 217184277 525424148 560449193 4501624 872660020 264115100 133759950 742331122 589994710 292374478 588110253 338060115 266355636 117938153 715493826 253770072 347088149 395385854 607918905 657571859 646137654 576809789 637260092 392408391 717976051 174355706 55965541 285663237 610980370 205311791 718722213 235536671 89841076 757697372 464709309 223447782 889732211 247449954 994524490 284360426 164801568 896640597 102570498 367073821 647069407 797107958 929083393 371781500 119345684 897757403 754151799 702829295 224895105 310179071 417083908 651194521 935380601 354726692 23218668 597502078 454804338 906498680 117357620 823685286 908857192 523443935 642458350 39158168 990535237 153125916 700610304 938128390 37498640 750813516 844236279 203691887 729094444 948336258 499736847 765859788 995153177 130623039 234591405 806069473 619050455 922596 946790806 455724663 255208113 39989526 759952548 912983663 921310095 419671765 475882668 889559953 739764047 194181721 263039209 870609962 935705766 876843934 54212978 603168909 891962300 19321660 597796275 985591004 898608567 146378816 187783 590664537 695518382 42217386 967968251 240336881 224465068 795284164 875154378 433146946 627172242 112849092 427198381 147726934 476878653 507755161 938761757 51548962 716129543 799004799 112914435 121738278 956350981 585206355 941171329 223768847 263596981 120076477 337921224 154246653 26311042 835129125 817860051 803363870 721209523 168414869 657392863 285468895 213641737 823748414 362146475 100181156 439993331 192942414 421137812 139801103 911365310 65760779 98293180 453217759 589695052 656851474 679312889 313037012 649541173 309337646 670684754 562142868 343825960 610017274 327211541 723400316 154413691 885289058 227465654 973800394 669377815 775089704 746707747 938073144 114839356 836433282 808256484 498535746 587942843 253342661 7704058 162940864 965626689 342684274 151217623 398496832 415227170 916383135 234257053 187754776 733607583 515607433 939340726 468795415 595843682 351773909 748643605 829231748 177073665 441632387 975786530 40481842 200650861 89603565 906086029 60834815 962753484 202539031 517008203 587791395 601477768 548368547 763313862 747321390 229182786 903453973 780649484 363333707 565479667 950798862 594008046 418584971 892199755 673455239 141132675 547234838 575571850 495519791 432119516 375552173 643032305 238396893 720500961 352945576 982786521 498225731 837258553 261615382 612001093 683916946 174868658 391913134 613280547 188638986 545346759 59273803 789203643 839729013 537751766 768138987 648139998 595087844 442674086 448512872 665946789 981437884 538420927 825089117 332539789 564532909 638176583 912062930 560633036 347695937 920991616 540188009 688784093 888201576 325211376 56745572 482271294 779961147 696239009 16329783 633137674 656449628 953159882 9593690 567908107 105298669 198955710 758523236 344750681 878497875 263591831 374675319 495922864 903665362 48167941 611803033 668086979 438426167 479671011 405368379 849382657 966485468 205162384 351012 854387695 567149396 401650629 659219906 202221694 224728859 189083176 879277218 421393219 605056933 840152872 191097763 343219079 153850226 451453110 313529285 839780605 515827928 950773027 81012226 524479414 147720802 813045396 598092079 970355996 846283691 312747769 625886933 807590846 287632238 181669200 459356222 648361140 22082063 62695518 447157555 615968259 847688071 629023904 395523596 659999685 554753079 731258976 409409272 403245043 843838166 6338221 217655076 253643808 257376574 599821172 560249249 941006653 634293599 319911319 817853931 649572487 636059663 663800253 381514172 797727622 294539690 798689161 2087621 808787601 897524716 718220883 567542626 181216555 476440633 492473115 530968339 210414549 745838142 511160742 555927534 715536271 928346532 320692565 702344117 845687702 267280787 480492568 539022666 256236171 450010489 681574150 903292813 869219302 182702861 78042741 452116066 965176364 876094813 823941682 906636880 882493478 703655059 748296132 739410247 138549980 766473428 852959674 603510199 195765668 334253912 370731379 414459570 640776569 239293078 718380354 747460855 223978033 810237543 489674934 150702494 303383639 153792540 357863697 250759479 912248773 214605583 469723588 673219048 72366441 254504237 879760478 974661876 704100835 683602755 852503846 651096088 718852629 711138224 311967243 735021617 463744183 107076680 470845679 41030955 39195190 786439386 509482991 860370819 663230798 44737227 760614091 758960346 911482356 694658112 793871840 244590080 867053558 892018957 174113589 319324298 264427609 508059515 490915556 392278928 535808204 310834577 741448523 38364034 321885816 408859800 761963784 706072201 650341348 631317547 200929019 190393389 922219224 111293830 4252964 169270262 634988202 514017754 856519324 937988014 233730130 22052395 32878448 935464636 92338486 781469963 569273625 511329233 752447246 893173682 416965076 489197737 215502616 828369010 756268161 765949824 353527699 764599236 94876924 244649236 977720769 703422893 924031086 790703355 801506489 137753563 485700982 943480856 20447285 899012463 405001921 385045441 581828141 126316576 588105206 253155650 256776115 626059448 533963681 971952214 963645594 724292796 94747768 130820043 624885608 234972933 7376984 399348567 866798640 182895814 575952864 144222978 613967656 116198525 627953673 34043194 765817239 765947542 896135499 345129126 996505752 525147144 135150526 348997900 605134066 630491261 480892478 852231674 735411267 405404744 976710249 790507307 634294653 36625465 756947778 862526361 203619515 152337580 245594258 224608858 683871347 194727006 795599422 392737243 91855566 231524635 710623050 134261600 686974786 67281673 84973959 601201 454093521 362844489 965560550 434219002 98821180 71061704 672222149 934298449 379619535 991014392 448064658 345532543 413550974 261478945 148179296 503532726 696503094 411978076 437299855 570059419 960806887 311129171 53158721 144856916 16273392 435396785 67258961 609990871 562308681 924045608 653862400 281409571 419253215 92588215 76040966 351570360 615849760 180967012 468568574 610237948 990574067 646748380 964416827 216842898 843715981 251912534 149985521 721044354 388142934 369672946 711791388 365610628 397173652 751629062 753947708 685194547 797184812 260561623 120830439 87208739 577949634 355940229 896058578 626710135 673966067 990046347 527508837 500303558 182005253 311019987 243402932 215465226 697698703 794186708 244555935 941979137 938096645 327093481 834469934 367544490 310165165 139101058 346991114 450291472 421918651 106402486 425361640 734987579 275895110 931557042 394850516 216439954 767853592 467480998 608932059 872224558 643528647 350527402 463324930 986683132 992154573 855134885 427693051 945092718 57951367 867356362 658369747 303581394 690213094 608178383 820668641 749902502 766804191 928724953 539138915 665109342 618317293 970560163 198687777 816952424 301057150 825838059 490995485 41382617 809475444 366994134 372303544 121362604 252769258 84212125 865601499 359578234 241350797 377543456 666099327 440243171 705052938 948729793 673249497 866308415 281233147 997569765 944022977 433808936 132893889 309772918 256361000 713368713 757626545 673416729 354264695 114382868 278619584 867441131 513640047 617166722 611232809 14711027 222529987 202472582 890222710 496768150 769695804 196844954 698403129 325938763 156766431 53996801 176161632 220513175 37443037 196534742 334490004 700969832 242649578 267426225 544775188 634579019 507864426 723064043 951887645 501303129 549070408 69371499 533160667 913111681 356061702 209973003 152940962 101212541 190374205 657597420 818312618 992179877 589525251 846660523 873327219 628571528 95095713 605967564 619116675 256980362 930136249 696684077 141875408 229382711 771425409 831114505 531948072 687469144 413315858 744819002 752549611 942541998 400881781 306140710 421840133 779911938 215207024 907860781 504035335 380273035 182428638 110037371 880303700 63014876 978825752 457830951 405442705 295193681 301502673 781483322 252169932 176238332 965678920 957212077 234555185 417039401 681340287 189741987 691464817 541190645 298727352 567835968 57107293 947928622 186010938 370280936 135694210 277310764 480809131 165665207 334140722 160116592 652175018 788645540 895060649 204895154 341414066 974373257 579672260 136831133 728091378 295751466 437302379 156926764 360464044 891795649 824556257 966755603 254910201 914874787 343010346 627419069 564742233 862984905 102980951 908380600 56645930 767944925 356629039 824071798 4241003 199417630 284592204 789670461 216473506 502226780 213302912 71524533 632980338 707981849 657773727 475682728 739739681 155579507 52184729 570494246 635947962 207091698 114350460 915210770 975946998 274232051 632448655 513636104 955381730 338809242 516261328 357602719 212838441 111234855 301897454 262568367 169385137 65949587 453181003 833403665 370716716 743565157 721878091 186252604 22462574 648312925 351259416 852465877 104000840 801309434 977507407 262602806 810782978 239108051 313841810 853830871 29601100 304598036 314748780 661544966 808050400 721304508 564529349 732276936 636414367 698025638 907297315 192224041 494440545 534587074 29724023 880177359 974037859 484388294 525202414 659369258 958669419 663208782 350196682 671790108 863175397 71405093 504861267 341165194 716268132 101386048 202076533 513079177 617010976 307008917 74384661 558007197 101680260 990579560 392069386 425580478 490352699 703977799 983087134 764155589 942329901 286100638 949623390 894107793 229436504 564221369 78466043 310245534 324839939 273126905 933044006 182636163 260687472 344287229 340893026 53771524 388162376 11255333 543526343 53357058 871865705 207440432 275216647 153227788 888276039 886602323 415328730 904088919 890803836 966224104 98795217 618319603 269023585 751973515 389524947 454957804 477764218 63336393 3899942 622057961 594644218 735631922 75981548 511856440 764455643 838220231 14028173 366495310 124006463 195515262 942598624 669003352 14497623 38926820 381491003 931423575 435907210 668113252 187531212 102385 41684282 111025279 628336904 442158278 344804075 905301998 536038741 600026670 343654254 358077409 571373903 290215236 201060048 64992939 283768544 78097352 396496522 168746972 571813928 557427592 6625167 406369007 762309678 996375870 8726708 77099383 93858191 3374364 972046698 696639536 398739818 638161520 822504515 241426065 697173208 214037374 591035285 103073367 869307080 617502795 449815723 378107831 167551883 447641658 855933675 140664922 282493256 85180027 265234736 669147036 925376321 611674060 781311379 544473527 470244893 829106605 823972711 532577414 975780319 460706061 650984506 940993488 60163816 558559746 787057758 786353997 561763783 250804972 15509037 285756065 956003223 895431969 6270378 737275320 154099036 517185312 716774568 242787221 444969326 682679838 352706409 178910529 1976603 371591868 20747579 264565002 438577143 601688699 862576798 676510632 272794435 726258526 928755687 703796341 705303915 976343584 850125394 103148855 989756557 147129511 930447420 21001470 832235354 251571682 905388888 812192764 704229124 814666926 311675988 453978026 746877130 895323386 372363717 146159858 213332761 149899705 418984315 168260744 813645547 792565073 392300806 830256917 148181752 707105524 633959367 650798546 130630219 936458343 933392681 485396871 669823730 213868916 591650655 332207230 736315930 19832600 665146080 863399395 406309110 593375097 728653868 762156897 309319932 328854908 509429529 745318729 341842763 223539117 343523048 794500135 642004132 177686223 687051047 941952367 854958889 669156567 657362714 864811156 812652092 594221606 491575357 648613712 795300063 371014119 845204384 464765470 274908215 558009243 844007813 600888756 973142378 292610502 283307789 314301631 947106992 263693061 716847827 149043070 58102962 287868537 460093918 111036131 203021230 330699659 516499787 428199606 331854324 380732792 435454097 632550770 806330527 895385826 488129774 426510640 3289767 237285174 86704579 886281072 280126444 465514927 553695139 748039166 481863077 811347924 592347347 360261821 194421939 810809099 859828780 694555016 108763331 907642535 152562544 649047022 796505738 541851922 930123936 163201375 823989453 442367702 174510495 163863852 909620638 388436053 360006567 797353097 483262850 669683545 739017456 997706261 161872733 630355201 62636442 596171684 557821221 622402192 995509278 518271704 947256963 459685547 388102705 531139853 816189274 904525166 893434673 947879167 814072003 414855557 458597134 121089361 855223668 75882073 863652290 287196560 675098205 433358979 852011144 153033743 175433229 493898162 281743523 29938448 599180601 117334042 166493271 250425868 966444128 282450963 335113462 867061746 408298515 756533861 931370767 556811675 436366130 731235093 861750913 870219682 596001390 544555944 929511015 378194182 575854253 184050949 190048329 789154443 323481954 506295421 346765446 798959210 241162409 865853477 432311844 485904411 775843540 21775496 214529584 18127379 961915584 42628180 654290915 841173311 789457417 43528782 912815160 417400128 722355912 454527563 63383590 969679368 284461611 191802721 444150264 832972384 826751077 377563782 775689196 19664697 186141214 494774461 658360996 860317463 725800188 442744987 915453156 876194199 39488981 4941980 689647321 989492669 428791185 343157451 709029743 402419602 348058530 729420524 907833628 266920183 502429003 275649733 181849424 378721053 625851183 904134671 931209197 325287137 236763653 650049806 629335223 636468129 842938616 243933022 74558296 759212254 728467194 1018857 176171795 458225457 46910471 950181352 7258675 76719289 431991855 17090854 620012110 835932106 340355157 284127743 578073358 565038740 139691653 902068319 521992349 371482595 303976159 561553838 885183243 521949948 527811058 259275552 438410787 483067351 496454806 807518111 239718509 72294308 194962041 170154180 787291738 591367316 152737077 185862730 837755450 809997747 981498422 330647853 941533277 55351095 78350421 872000450 632540295 386961505 726081282 299229174 346732079 160536648 280482309 145731992 831520763 651162795 173927350 835766347 599001958 599387475 655563313 426800685 15391785 508765349 75792994 542581007 906093988 664606353 147993277 952177068 896683819 249933937 359754749 710759759 54023378 83718177 143297660 151372753 805041262 387126073 295253455 187930012 91138377 105841081 765870451 683173704 149829040 322112916 442062168 333872593 508630829 282200896 228881938 394483045 541451158 833477582 550429163 680375412 381664937 75349521 844765549 994303632 83196141 368436721 500176955 849488978 655011222 500443172 138561897 154098167 541860032 321178581 750786382 566957133 278693030 808260508 928217427 968480674 333533591 793149718 144820421 973377735 16779265 235970818 749605225 933076118 871982070 262403863 109726343 675059571 326568471 173448665 370103698 347985460 988549212 253795049 174720398 943162236 286446577 861885563 781804001 629193697 492441920 929708733 845788946 557244167 471478832 39222321 585013364 582555580 953808084 645121795 305491348 952031066 149074299 410100933 331550225 432761333 874000995 402247229 543828571 455633432 715733643 627340868 273209007 252758183 857342093 956090036 909733411 12337395 695913065 290713214 606940353 804886937 700926779 158135568 501811973 791162715 409662747 812210512 584847302 680777650 808774953 188489224 451615672 363889048 908879393 531086427 807994572 517596515 846406718 576205623 566310976 43276446 8769076 23595225 439534520 222244443 184477773 167250818 391277998 833171473 148398301 999219442 117581058 890304537 14561603 126074497 375572142 394489781 488171534 886003098 191251053 678891567 887963517 954129321 77864683 370312500 379870952 401847376 980561481 179024874 305984140 10161642 711182908 267754898 598199115 207736569 311996922 649230641 378896745 851737355 975609454 404276943 756779527 668572162 864829801 216615340 786074868 12015861 186719301 472353401 100169212 52112391 527210038 538929170 143862988 529487226 469926115 292973296 567816904 674159431 718775482 360698607 267440847 408269133 618575553 95967632 199306080 826598431 230480721 871488074 565607275 583872909 139739994 462471155 774890615 536305663 402664663 346586775 954516237 965127269 674327093 866535796 502221066 716446760 415094991 980167321 682570229 924729047 885943129 134555920 915180735 925805832 166998922 394545475 444654500 38250907 178147261 581153616 944882834 529856083 792662779 758784183 58010894 891856678 611289102 233564636 702085834 463990617 606863171 240605613 71891201 11039855 380802328 575791734 428578749 721229433 594396427 811984246 362553451 407476393 679213369 899487741 636738164 102153078 398074861 32712489 48735915 11023643 197795413 792019692 43981484 882518544 716004273 81566082 461344118 15762900 769889023 460693643 815916349 164950527 748395148 130333279 426268793 325505542 409843788 845061095 549831528 709404162 361351075 709109657 262260493 368964171 107165106 262100962 1709329 223479850 837760007 791917598 748809850 779386887 223678238 967274526 237987239 232566506 235707947 73185729 181083263 395908930 233755132 769091171 653606963 264811183 281373989 468114209 311573707 392630159 679595150 130417651 571024030 690405661 675487038 430102009 677920164 285093143 334751290 118613180 312925628 774343657 289129737 43719600 95254857 988746270 978439855 331007075 317504852 808063516 810329506 166822994 994528709 409995416 708327175 542338977 990249789 989218384 925904363 737101238 880908645 641974503 512943973 127505129 770305833 548311897 58779520 3321248 875661667 771996290 764830270 196191037 652528431 559179659 61765763 490861656 444489291 54310880 648596422 143415031 840605020 309794101 621438338 996542130 504905219 709912137 610504829 697178255 819547028 887077832 499610794 195097280 154336557 778470008 44202821 40979304 15876989 178038654 485800736 868507590 339575182 927446347 747601773 689307201 741797960 389746379 349306959 709452737 361440319 81592451 484043469 236264859 689400486 343602350 364480040 790901825 219753344 138294832 677965534 806135696 683982720 861675241 903926687 462429121 772600321 288623256 796662152 148797960 146946167 20265875 152022016 717858518 982952175 843886160 749611559 206859236 323556727 867015050 455423235 260531743 209457044 610826517 480631776 456737608 479100182 720347865 551146166 625151700 23099643 862297552 276694328 211177244 632224357 647209154 532848663 434315134 504825990 503517523 734588576 23078929 558338582 496310639 908812936 602505140 738792483 373918560 525182356 379082609 358141803 109367224 294324315 634139969 565030708 394674879 896875879 739033689 236675390 550018023 145397441 277388184 226343494 728826594 263446992 238211382 621090563 46121706 725319973 315574240 969444954 79300050 865577017 897203160 571126307 323074536 706520658 361745984 62024812 506295760 860558165 557711901 276245457 192736860 578948212 647712849 748163566 590593320 930945293 188115797 46225513 980185268 255843704 561947067 929557783 97547651 873393554 110189808 279081705 922841526 277822944 399613843 614287031 792714663 375057678 575557728 104997040 966866831 909666606 326013852 323351249 923476877 186596115 789804969 284873887 172753437 430791580 52132467 59039254 483373847 380828303 220454850 92943860 193539770 57545071 136489642 96788188 644902401 557624256 735244690 21665481 488612641 41318415 331408059 936532433 997957320 837983933 718143154 472758915 866154905 975137357 371653507 626337006 686568360 469319028 451511245 234765755 885747854 453835019 819065905 852073181 270990948 125994027 586148384 800998209 129969644 110843830 839839456 89327311 371738052 585309789 907979265 782898825 54282544 53185207 697611838 854093954 671034137 931359919 638376157 991750276 760977373 516336013 986144153 993163145 921044696 641720152 782356969 993679653 603986192 405150267 549629112 535687190 983977736 308716517 705517485 191857581 3255326 54167985 449107944 718542136 256478813 518366094 955533464 456423480 932338809 469002499 427247185 800048900 910901670 503747023 550678933 460520082 619440064 412917938 324616753 556131054 196598426 374370775 25810751 885055511 863073274 887271896 391665035 533728323 200232214 972714101 431561405 649350041 569275670 481559129 785621865 249007375 760942711 84185591 886817956 603683104 329374722 265789092 953254439 453406062 359662403 353864877 20005014 827619269 794504820 441157714 676405425 304264618 729226212 36854083 37310948 966569612 853378658 277283259 430683336 397393995 601156542 111884436 34000770 618540478 939845566 702582410 226065522 859711593 231491142 248310050 686242158 464706096 969800703 558938401 447294576 15410426 119618211 602069433 260461141 707649014 944564887 699515050 563891393 510612697 380824266 438867309 374233757 632492039 72972219 199765508 621744922 576529127 961680154 295348911 683213317 142665581 342503635 870536273 136284398 282508631 585134085 992109513 29875073 797130758 682852079 46973005 610683401 574739373 198739536 581129723 380680669 579632094 919669221 88027227 161628553 322306926 103176089 73346785 839498260 297372064 751335309 739860275 380270899 364757988 938900211 501598427 967253413 852471498 901614339 383757499 395846963 214676 37373883 165974217 643894598 158122820 293116492 819038890 294230552 425472222 747970999 750342697 753077157 403751758 534506130 75656909 376355117 101306421 11824351 310380020 37459863 617466335 574027899 808958152 508054668 532207347 331997923 363951222 944028862 952951530 117989491 588790097 121163058 711244989 869215691 416388479 605696841 665703541 721214303 10279368 181930356 623443152 63136579 984534293 673872586 174327159 939954488 841289823 663918287 645925844 200361865 478483529 454159559 617279923 765239283 386530722 382082619 958163720 159748012 154902448 93135378 937038547 389361279 308270823 413077480 549154538 867489896 261217229 193831940 320646547 599316076 770077682 568675520 396994792 783728713 393804417 474495763 617586820 472055784 599023065 871398406 6572124 355278599 637933509 589496934 775877335 42775636 671383978 451194706 944955866 703719232 872392797 649161433 200192003 20604885 443643874 275007896 167067138 46220867 528136994 279556912 222719134 221824841 951225268 709694494 379640652 844462525 192655544 521437518 422153106 714210869 765171289 387925336 431199120 443284226 942811749 928381687 108842541 432407215 491837538 13084367 971630980 883069440 869621138 683419838 738677816 540792701 292685649 128016577 373591558 217173285 974616699 409416856 640353752 577346315 530248851 198481446 974386907 76279586 359760699 201156713 218165699 4043754 153022011 498334638 366428957 248546712 659541579 352856339 654338738 949454935 433195432 544683888 568816611 416402866 638652460 339678335 627635403 830367710 446527089 946879765 803613915 676947664 714778331 676807005 398780217 653762071 497079288 96093787 447580917 429720729 608354994 704374941 372715370 482493092 144491859 207743205 867398784 859252954 271878188 855004756 627837386 854097036 893460786 551346567 263461684 980986921 215437037 24552505 141388631 916459740 672439022 105122252 241479198 870186233 631882051 258738286 717709559 13773074 28412843 217696606 155183521 64146816 739304335 384167309 150671815 894398650 521835343 4768327 811251901 153232560 850683933 779447967 87554329 87412806 428789230 136543427 172140193 219025690 633411988 173819921 615518097 108514562 131339277 275248769 63809261 897461122 357067583 791816856 346471338 369922297 899011218 427974708 279697032 468858207 632679827 640797713 117111899 726447358 487529060 124292183 397459498 324092465 613102920 367749395 144017946 481134819 181105646 432107024 809208092 402058966 981975447 308472561 754343966 647413949 856227425 783836064 391811702 49334458 801852901 641465496 832653577 294820095 782496744 649978607 961426829 603640530 99049161 656170529 467912118 379149643 549079558 206630228 617753148 802890220 50161870 470920693 975725991 830135741 544444926 656602466 708406786 79029391 100171675 213011740 440268872 769952761 178491116 685146203 337777054 133441608 845902977 304746323 895421745 6299309 748179546 716533026 129684909 5888480 67901824 563606677 828062572 514088539 370265374 728492880 390923504 101915459 943934523 210735303 132999058 88362930 439848023 793427606 133715155 714898865 642696630 533343748 833816430 910738114 589125429 367815769 975884164 815318939 529246158 208899293 914971096 239187777 632945025 645749655 204490222 541785803 554162115 113664420 674370655 782654140 207885037 504650892 851550946 786943808 78765517 493241374 314044481 793592663 964359878 873615727 675400798 361140191 433458885 23736587 783471442 389557772 129262087 517376172 194908726 528508515 336102711 892136482 7289839 871689360 729581064 441410395 441738808 455908198 34866510 316880416 257656675 568255720 577110086 644440711 9238154 920962905 566187112 515075299 147518960 89995535 639411992 897640018 181128726 695168382 265850063 333906158 30979070 17846428 654574918 12581498 700129663 947518088 831392065 708871722 490568646 800389159 181820368 906594586 31768252 453116915 922774886 491810512 755625935 504807603 652453327 112035295 161360076 506385202 59981513 218080774 933481910 863052438 894354174 250623359 65936599 836454484 302864003 272379023 958574323 464949915 113639261 990571141 52378102 314204301 712748688 361423333 815360992 175458536 794284210 611120952 489645495 207108208 135763219 368330006 729139418 797273009 452725017 56889214 732927193 248522026 144798432 254657714 725593998 806459387 886326969 229000238 742371499 653269111 410966773 578817651 169206460 479605746 604242863 70652422 904646025 268440687 776470443 60586200 50368813 567561461 758208842 444362730 765329812 745977575 668722893 611646806 458892234 992511805 104609569 787114420 894941075 200791775 479903519 375840385 237571167 225681927 368891202 114067110 651587783 398507551 846393974 510080613 716101128 379650261 850368743 200922962 668885976 263733588 166373330 620009740 40023952 2346841 545600659 386475338 315498786 315432555 978350082 974944443 212769262 531904883 559907782 245261566 120577380 331281538 584667065 545808257 739777971 544481345 596330614 815956062 545830597 418413138 645547567 200928028 138889575 610030309 136563092 957823206 866814875 399279839 329275369 404460650 650601420 851078975 208869213 572650097 648048449 554412989 936645165 786863126 60739271 527286055 481948406 430639545 891067880 300000198 659557453 493265071 86737769 130672113 463959050 556049558 497969249 233408705 74124223 514740894 566554588 322177096 26691546 364133353 916075818 293547246 579729652 831736437 817942901 50013550 940394048 472770361 798250961 213418157 555290648 651177648 506654198 984076140 145881406 287479114 870000508 252664426 397223077 89782729 639971748 743715461 623412376 636571638 374883488 45742516 717812163 245645425 586757300 255445756 860948173 614958640 48131844 23287221 30543896 949660137 898477286 256104471 901611704 118764084 776295486 953911452 917089772 122925689 977312407 609190890 958597489 12047384 635345765 903460899 901796202 330778049 594911827 532000113 780597131 748093065 201097281 861213959 283609475 887488227 737585595 733907794 55620474 363989695 958285807 705395784 722322626 222532061 862004403 206546967 697977603 447793616 78777380 88060123 809910749 26322762 615104102 192585225 880827039 193362081 696367639 711513791 263261393 958827382 750439877 815504745 267527705 895757797 354705022 478652145 876452603 34535385 727522604 443949361 573213412 121965876 94180585 625079352 491763892 657073166 715073042 876398603 148034523 573688988 223685485 302850646 321173702 919518607 658983933 75883749 565610541 362482381 863319580 353364651 538348171 720934675 927298954 487994531 255291678 687803545 369922037 235921593 484816990 29388249 467938073 723267253 592519759 550376069 122638887 32130022 541142136 260754774 915517141 358235627 679190370 471275459 450375993 576967036 154079886 642489753 692356692 890059207 280693408 970617241 176415632 599629622 989230973 515210462 961220096 361034477 689252622 146902154 634432307 604492185 3313059 660522028 269556826 404500231 299486118 40428210 685554304 29775954 369439897 897315606 343143932 145317998 808340877 395073528 302072765 510409182 620150846 605038125 820235727 455305413 955157635 937601129 442480641 150352113 576968727 617083860 893078041 115208039 504359848 187482236 551826797 855703455 241256200 44846038 572218802 606155638 662262266 34904457 169937343 171248455 98413718 357421412 800479562 765970980 47339292 263147553 400952400 48530830 133381673 934259229 872157205 439467592 215729594 231585431 476407628 982632074 858710971 626371909 29887194 673838125 420823570 172692479 902959224 400270855 156709614 515519219 255830643 352671873 533490629 520009473 122365663 273804595 77741574 691260199 399028044 579047306 949207875 917038326 78800159 699873767 422846908 738166879 724488111 640259950 838456490 762052982 795097274 832605868 439803420 705438903 614328603 510609156 46826690 999239042 49656888 17584565 858114223 82712309 735140605 501406204 459466847 876072 410269010 272594260 922393930 131141494 165144850 626021122 600585598 22896050 45885050 176838932 444915751 373009655 54125353 565771220 643870615 477918475 872713034 616531745 497201850 769715159 605114408 157830426 576471023 376742024 244653471 215886129 424154809 471325426 857653254 55110988 528808901 44695256 1297740 27981862 937771782 345265087 4200956 529308789 736812543 269244823 44869315 714717716 653788808 858945865 743305966 908915901 840485225 592543366 88497949 614420928 655609193 52249268 379311023 974856910 460271595 407821872 912490758 132946004 811819703 719825737 247570554 489379499 890640775 332245883 782654981 892880580 729906640 779837890 572424249 387786175 722461892 795224793 692450010 630298442 249750516 559617991 423112325 950048208 63309181 674645076 692554822 535677390 988251438 481274845 199686821 450592871 186095866 36851038 730948092 442985891 916205453 158306369 505266645 246966494 905933086 476415986 84491001 218257472 140678707 539134445 318069025 484029169 340746662 911209334 430008484 314259412 674196776 832936935 724071025 950324212 57310962 435202028 147251603 555262391 726551656 356466786 873191766 664449171 739722538 375842790 585712771 19250463 148329771 610346570 738087887 344690626 107615617 15584722 744668213 888788517 17906589 657542758 545625227 691155155 677636298 613746626 1938083 616866837 960825059 917352833 139614102 552154337 608703833 818182019 899315973 312215307 953638302 555816601 967389815 295619592 270144316 136687312 719512258 986590022 322636478 261806270 697094594 93495078 113373536 755956132 873809210 197434135 865659279 969582787 813713093 726596994 913416718 808020117 839329955 401726813 59537073 203849828 153941926 942257847 768154358 752712936 245222672 192344826 959433995 666429326 291398712 39007990 490900023 281162032 191907638 254611883 911893635 21404138 730067299 172908833 835575610 804974924 455344156 690213053 416199267 280125439 822667248 154964537 933982614 71233874 735391216 336330540 232725008 869124190 58386022 830109394 732340175 956523418 862618062 258939821 258357577 29937230 292960755 587343140 396960456 476380186 196085144 954974016 383805993 592217073 979807808 875084203 483185193 858748226 300569658 291190324 81843313 127317336 964533647 839889771 330669215 872485499 728494472 931169470 738175322 318032594 544403093 302658620 420887406 56876466 132135873 437365839 777174003 308811993 980341167 558427872 374729874 321177369 530387595 468847650 176207055 551340553 795006893 941249295 115137582 965274592 578042677 682894928 511461505 806770193 542540102 562498166 853267596 616161316 464110162 781791690 91841302 750271390 292287653 37876561 74346044 333501262 90842395 116690536 279539727 481343063 266704991 380549213 419943483 936967737 614861926 964297681 29281694 781727476 463544591 635928201 641052767 825247261 121196672 31922503 926278896 648144321 534364425 725593706 85954189 995222270 300171003 447646913 431687101 701185653 691439189 34954643 329826876 891802804 960061985 294427096 873626248 806180042 490049311 278449134 772356601 419642449 270110978 63488480 971110317 121042928 485080075 909913169 529182069 789254081 935358570 551929 299833778 304229001 103532402 391635159 167536942 897434908 574208450 489629494 340500317 281556702 266957498 885707657 923685784 592843531 646518803 899509536 45349395 320883366 96339218 431968183 459763689 25912973 650462658 432328307 197573785 380651989 578489871 862341444 735886443 452546058 675130372 111425974 932970489 520290711 1317030 367906566 278737237 754964582 334733588 471463576 767754110 906362909 24160230 458754290 662338527 853504858 57721765 566012303 716407277 708099266 248994035 628904125 22406982 509862523 583296788 463655311 928350591 452354357 195587509 364054030 880022750 101952817 934270674 256206683 341493408 803044926 370995255 511486762 995903751 35200616 345074175 299057559 743674056 350940469 242461704 990147823 121536905 295197429 193597817 158794516 182934268 20257480 527432099 113666625 380720292 21940311 242525085 582488887 748769022 125791284 193140512 512131179 946955508 287508670 512046214 522436592 873462397 356415856 44601934 36195080 116337274 389753860 688235299 594508655 315541874 566791452 637216009 782587705 814344340 439816837 580468752 905592507 644028675 538694003 695606560 509183691 157631798 225854622 369508483 857782838 248793182 214908420 688351618 641406405 478775540 887128742 437671515 663000227 17589937 68548643 630679538 521231018 366531893 885546867 786240908 915224892 332773328 571001845 582672681 97714225 363155196 648931047 713582172 275785274 382444088 40842765 629721243 273318057 175197070 1871054 440392020 379443468 966655966 263974373 520425169 692264777 789455660 810229959 620995461 348495363 628538779 816551286 563531916 323393647 3969056 181206482 544497465 446221346 529865572 992979244 123644275 777363697 785973676 935556692 210304425 339350751 562056708 629771545 845270603 158718212 324559823 413423306 828625039 511023741 612251013 911131351 406891371 889997413 719121780 382834934 8191888 672431889 859093567 605342970 543742464 875803659 940864217 330962467 461341926 463490702 766279133 721391347 246296022 565564965 69834580 258945103 525754558 672153524 554215136 349054943 867604767 903812493 821304543 835141438 806627856 638328541 79737775 517804481 226519072 878622932 407267810 71637347 184927744 604949125 875610343 470258650 532555036 939727440 67908577 818814145 19133486 820793107 409632350 931736082 851693874 422509810 397427535 919824967 583932730 633987961 524185942 479432294 334154000 489480394 457463346 863615033 438664771 89884723 941125727 900655118 141137789 562629737 765523140 620849239 243237471 504948397 853555778 641910213 651883481 398681593 721007122 55240868 964084335 277946012 971438757 851135379 274081612 817840227 804161852 32513271 161433008 308433013 827164333 988694023 110861437 952232883 326097496 52225769 451941923 938427006 614026058 617272541 190214888 475808249 592403157 532670856 714554779 934028579 119902090 832825053 542063061 596048476 505628896 309388785 767512401 219751326 281357133 377448742 281110080 352887219 508523056 138445943 289095569 37729059 362475739 567539652 806011187 816203986 715856008 757239928 511104667 488892777 834812209 368122194 323440758 704596247 920353272 290340769 390973050 958086342 576259306 350920932 801230712 319137398 953942713 519073815 501784042 29565143 900321366 536934115 471139398 867420073 168557866 197232241 278513663 216455395 254243646 695440083 652609508 500810454 431780823 736372590 973853508 481143301 451428334 115728912 54283889 794661249 224567030 460950664 644819969 657365185 932411601 726164227 255416961 499987209 535155847 706790691 767589208 852528543 964405585 867658230 533507225 579029279 998534800 710186268 167500137 729706644 991302588 698464511 138578099 363194234 20706289 118751590 588950958 92594594 408285732 368829999 930603194 797105960 340472999 347668220 148790699 370204511 357953570 249387866 654401020 185978342 352083000 474767769 20395373 303446491 192827138 904833464 663262785 763665525 854008390 289880326 340397930 769314628 316247746 977083724 188507089 696075 248563925 175917072 855036777 731659356 47703085 715261729 677083932 735434510 628709128 217113460 993717919 384684751 688259088 162158081 239943880 322757544 514895187 572911269 925395084 227571932 885330693 418074154 690546212 967358727 275030171 567296993 209338506 533540104 544892605 19481218 712270039 529740141 202899395 638819613 802081723 653985683 489484636 180449420 121617103 493714182 654630828 512198840 787192066 787835291 385042715 799989064 694478595 199057108 629582629 89812965 634486483 850834151 688720159 404729773 96234386 126699827 370328265 913602319 128966677 779699682 468604907 830580608 790866124 946361830 274352829 436487788 296350495 546167517 342702422 413420489 406343742 475562119 612938583 552648554 756274546 37597870 614903131 285512561 289661531 960409451 949922215 251148368 588018608 740781386 90495446 655296687 96329672 355199825 60716866 569525041 714928044 286235650 197401079 552083400 174013673 954165492 290631783 630641833 182322626 911691308 368137595 154777590 664842611 562562724 747953694 203779811 143836023 147080314 692945065 617034373 984644930 796571880 960403206 28929425 318374655 222676957 321621512 883369025 487327205 472577712 806195427 730814724 155080511 703266418 236066212 632789144 332952447 185213814 844774881 391385223 778235271 110676776 580023413 656534620 861088050 256984470 91479848 969336224 896198656 152681991 302645320 903377480 880970282 32861454 952895993 841132190 445931325 159017851 307641498 855972814 187572470 327884317 463523296 795545365 573512298 698480481 680543474 250726196 299845452 228999299 367148245 918321613 94436808 870545344 785541735 513740730 437223700 500946149 244351382 436673056 722305005 969232596 913705350 492214560 167396846 292870124 456987027 411205616 490420232 669833104 527295932 844432361 232930859 856895078 116116838 920320024 989514025 729611269 121876603 614397222 534463712 310927880 864274275 781816837 225885300 992101309 821362936 663998035 909167057 707439899 776675473 995597308 510299144 136884017 442198300 379276202 479875104 316704564 732442646 650080859 979853452 530119886 454183274 589776534 316732541 384254625 53221212 29864177 67328059 198119247 178579985 649737801 157826579 186920869 469547272 296105667 5644153 426981226 490557835 899639662 808778451 989687905 428304488 331607492 351159647 447061633 642602503 658048896 120423294 572773090 208644972 79978454 311665300 131191871 584595373 832089839 494429909 354113681 572838043 557086220 296067283 958679447 639689505 71501821 599351471 23309673 182049298 882433744 90024278 216526879 551735728 624142552 722530124 218822081 931729800 591106165 351279788 900445348 810579078 887209181 325313969 430552249 256786317 665820821 840930892 722506648 548370244 714796263 644078981 922102514 368399038 395973186 613824866 350918332 153076721 487807468 50647146 998376193 585393218 315451479 236590555 801632438 591870603 233432042 558964438 617104614 257491391 628258969 894500708 709603966 281920409 479176319 428283776 101240251 370168395 804340776 146805146 240195239 471086863 782815370 401871999 523878525 379652228 984623847 252127078 737733600 708487525 945276278 855050906 84847487 730606605 299364778 378516561 904029816 937201806 98016748 392750940 63112795 756306534 25591287 836082557 894106647 208125135 774187244 616883502 296730382 861825636 62321328 535436986 326856769 947999773 433247732 876518628 456410104 452427577 855814385 353599253 500716586 848319772 400605958 121538024 665234730 162705555 851442689 431495302 630518829 269484306 834198991 348705475 394618655 515143566 800709073 836374218 694356451 510727816 123563138 389505764 805673387 8651310 223539201 790711681 743950890 360028536 132314616 616553742 184901456 771695298 304762585 23156672 212226643 476343456 37455059 521285868 115847089 971817293 850886430 626523415 305947879 718186408 332319433 896733686 539769894 532716563 967419174 746834635 903123323 993789074 541222595 186843459 151907315 271929273 491626542 332151643 9436879 422280266 947248480 719554348 354999988 520497343 154399499 98227649 696103540 614166574 165461231 380426557 215592475 410303335 464520037 204365705 949444734 281468618 61785826 586940466 655261991 769208863 672606039 557252783 109311333 273514758 301581334 244405003 627379308 641710007 610065242 729500966 669944560 786742120 44819830 305171611 748030377 621586521 930693108 359767872 42457502 558210046 384221744 865670244 42807084 617754742 14499586 514947958 752129478 183972521 316907914 266997288 572069067 724032292 763817132 45143419 450877275 793545589 436292002 260782653 801869461 661671765 997297242 632002402 644987215 53892376 545033944 12224759 57385010 280536209 655098585 691471263 531914003 444654795 68513237 410561945 663866297 152840265 6734367 493706529 484130748 655597128 740604139 663095621 972552336 84498843 535680103 501021967 45485551 87497654 345146204 617799438 679622192 103077356 598277904 380664983 103119964 40124938 118235517 285012059 695248895 966545122 444597297 627397935 246193490 883958812 156605505 281725926 654623078 563246910 164896078 49332741 893972452 205305313 38348175 598841182 973298638 951544092 275061594 531241843 449973514 800026788 102675820 181027953 609517059 653022364 598450864 759260574 856547262 434600621 665279989 588690121 701335465 411172075 216539088 937430928 179803504 109990735 857700305 94930820 899647080 681343983 698772420 818252062 584391421 203175033 434805302 397573778 354704757 544256592 678602378 24214169 905982501 325420654 376276138 306617358 948280908 908728693 47728609 562615784 979130303 494669483 505617397 270670014 680269749 64675323 318764462 16803606 101318379 285938521 793602431 738746197 416148748 362497026 262974495 758862164 51630893 235476577 10603245 849995906 41808962 38430356 342082841 849662984 494320810 315399501 793612555 428521641 623888633 307265396 555989641 522449085 319376271 453498676 408120257 81588363 31493164 257080701 312241408 12037900 796485100 817334466 650938336 609677122 23329141 146285423 705285892 380484009 642985945 401714457 791695904 373994790 763864966 212213832 851098688 33274580 774191792 521593510 358688814 166776238 735996061 130480458 534024189 745512192 9494735 442940034 554614365 431883184 889290502 689962183 70310511 728803714 44397357 448809012 109357778 150414360 361099673 527276623 346048961 558579723 463006246 383051176 868962677 322963478 536555702 442643046 993786 309464202 186482544 801252782 434117092 737019204 949121424 553163469 716091368 823488017 361540630 554175452 336135183 664806855 966159876 43775236 340436271 674486352 750599579 367582153 130144674 831314510 736112817 79775911 414995280 899684887 264001841 822255486 261763225 728146903 363298672 15804961 157267697 848453279 422930939 698889457 25855008 505194616 221891367 315795263 584757632 125271511 664073703 907613040 691872246 921926116 730387214 674709323 188184463 937528129 863088595 435697628 49116669 108171367 405804526 600037932 901110229 788096834 314762739 314360299 39492388 171254278 693379171 258179373 480994506 959039911 529509578 876099029 14293151 20600569 142773361 531722391 502466158 660431126 480674247 941267860 371275936 606420855 967539744 803394749 423857504 700137312 300026317 824099321 233743543 312622657 946444575 579992620 659199632 474562040 383248728 87371781 707790466 925037118 794061909 889333399 217364699 416419590 14758235 579915749 17159033 650428429 266351795 677243889 143905665 106618358 786929938 738182602 902007327 839529986 677262314 528864186 242345501 969311068 13740758 47048396 137914762 738641386 745273466 480452786 567347790 148939781 798374833 19465002 357412504 43149814 523855961 951857385 119523256 107340266 170365250 978897267 251480257 517930275 347624039 4616256 369443901 305099387 841556256 214994086 269242610 909371339 979545039 685062781 875112713 981226304 786427540 81380561 398167849 298208780 892642345 439532434 636146686 756637418 593005046 630960759 957891757 450780649 253952010 224187732 272099741 8604888 673510965 121541804 571716319 1409532 75064098 283625985 506364914 194588527 224786397 649234152 621627587 96119290 59783719 932388968 981214895 953280978 231432086 172916317 796145523 693613575 311472579 952278977 101850591 458358900 171022470 848252629 915755409 556922369 506653060 373091328 29548766 339471262 258005298 783430818 454490256 459976841 831873657 949166305 441095046 878536170 180886811 566178316 529521454 394952864 403661665 856116792 276126883 906622249 642214502 404434429 856001476 677668600 591058457 86343483 270738961 929268900 915470546 72953812 978949700 944414167 712571313 858420665 249026380 575398496 405366538 623895758 469300895 264223295 583206733 692966254 668470440 476298968 603184827 315434908 384456230 545097222 302019645 489540922 88435045 887758289 238745128 454377660 562796491 441003102 809993441 364834687 943983632 792541882 716733243 561302390 794153099 257463639 331374839 645731213 275722385 67056781 661209915 748632912 951242734 199693130 855618029 605822670 405090708 592850110 715860007 808835619 253239415 997077259 60947755 266932142 123703832 376194926 72073924 671390305 54267125 413829495 103330027 373116554 226267100 724705175 720591699 627015473 512822725 861379415 158988253 904293308 884059488 232083871 961908454 840233808 433011451 865069808 184057690 667428976 723772725 314697376 742647222 734266780 125839226 391275828 705135289 755344938 864414771 853499232 342942152 926225205 919332719 749914230 934692644 866851869 327404450 26782291 939490348 19057649 293137276 292301183 609985613 797404309 325243018 48119249 323118340 156751422 85671445 445076234 307486133 180253745 570807533 852145727 971301282 872826030 419844276 100995359 512357758 532324163 254528631 925674699 59747544 864881837 705938278 172136222 932528093 569185767 318181399 542836926 442246479 461978336 712776314 223187416 40187636 452289411 590369917 684437034 565260920 756670727 74146832 850793272 135793859 695965830 544189647 671558596 337411130 795297522 147109152 248084838 770733494 928047646 869156221 847814387 718916520 221489496 622849899 251817496 863704439 587843196 384520777 155618359 160231990 777706722 168009545 442523924 458488734 379685332 96923972 908503395 249289023 220840838 10228265 912329695 903559055 302921267 252058081 98620672 289453696 483226520 497532058 463328885 531314567 91595311 248389572 468140258 371224505 580348914 578586448 692125436 201647853 707450841 380079363 500487325 55628935 158697453 707643557 516619212 160487105 495670884 288017910 776290444 181996771 253293723 239573726 12712409 674806941 435825387 448849739 97483772 43269537 356638061 277934897 867461308 399370925 818406611 772705262 113303688 193390374 286167049 184729942 638877765 298223234 332889344 351025250 733082997 593390420 624539841 594765449 686491900 800563993 731375594 35069711 518946554 989569369 628470337 794579910 111705456 508820731 96330705 588795868 74038448 402112843 411434847 77999056 851966541 23213603 171211324 256817037 234087228 805354336 824700343 617249136 930963214 855761508 485489520 499347670 904721000 872447930 520302532 677612604 514422208 602333433 188561544 102838991 314559067 375811829 75983456 510187105 182299251 383289183 662271359 76876218 230971531 176136107 253642394 137448674 672615707 810153541 53930388 913367506 960541598 734849685 277100494 500191041 105840825 501573202 605430802 298855211 254676252 441617608 481354029 760328540 444465249 181181387 304963272 584720012 395729852 674702134 585682249 379901725 761038399 873801433 495305407 717043876 141947508 910834722 897299045 204689032 347499237 373219198 567155524 246992348 900366757 16844020 299115606 606573013 638487279 464899056 717090090 722729417 590802990 579291027 657091984 952362109 78671263 824730741 291437432 217774581 910725657 228031804 538313626 13003470 179160293 883370929 654402650 491357692 895650706 87982762 55261913 935279460 715259903 932124697 621457054 507379480 601882933 771215984 483443662 784843941 338432853 300410725 503637713 633276190 739418062 37635228 438168148 910966852 656217644 219916086 445917975 832974361 770408459 45538964 439382945 816421245 808708674 615009771 649445768 857712650 626170373 964697604 740435836 982874865 387592798 735607603 482783753 385485730 869756340 104863105 431467229 592951821 621876897 963212241 483014378 733356725 279827369 790652904 121117123 243767873 499699179 411713814 800884369 444101434 10315877 293680910 986974968 582240322 561152606 904150893 329159736 411454961 355217452 323173519 328767782 76269413 862569801 849314805 532411017 790076219 565359352 316157407 348098134 826899327 543177652 714436055 827661878 622885083 512512275 477552803 867066921 722002850 445110890 655620856 225667330 536842616 956350688 237473855 460131833 241975847 2514375 867931748 816242021 524006611 815440601 797482520 475904822 850318180 919883123 875112637 53043022 568786998 409430290 427417425 108462242 275497959 294730716 62862252 302335712 264468692 515427718 955204014 526517064 211539827 115273877 875941381 748888867 492240031 843452441 516978800 32629878 135437714 209470506 213319018 671691970 887199602 198975664 453264612 401978476 722506055 490424566 522773024 451037253 901671928 976505818 614778056 747880384 766018974 772190824 57797542 411944389 990655920 509545166 881870065 574979860 118084982 672141102 128331447 456761711 202594339 564231535 873666866 80389484 773038333 242074243 912600440 822903594 67195972 397898225 951136998 728348335 86209466 327667791 843140850 383190989 895613000 269687219 20610421 862810982 201286189 180180412 423172764 200011647 176457762 430419873 924392025 14925518 815774685 62551951 888127556 135750215 403550681 975753650 620724019 88867368 522748168 668572881 413403386 726172006 3327164 479119868 996767566 144540180 505059629 499581555 660706021 581464502 71627061 696185982 639809935 65508260 609134352 94125580 634835732 734055534 871433911 942943513 28066832 881468056 679499947 621517567 971753110 684838574 265409685 801854362 350056175 49735780 126105647 592469857 919664895 607336658 756483716 784505796 213772360 552311500 695612669 764614418 779976578 432909474 752748874 718734114 993357609 93282736 18259763 821897357 487622302 747257098 934533696 256178687 684305759 201698564 93643489 789756812 979956064 537781902 894419144 829903011 156388333 848561453 785623993 198523518 252379546 91072828 430398386 206442321 131625232 468435220 437453622 168855791 849803186 238519192 757866880 130994825 345205770 713443009 130924932 563903468 145933414 159160108 24175472 12043251 374551879 718914045 434968203 641942552 447623620 504170304 358855346 848309743 452352136 636736925 448571198 455004953 19394697 658026818 593928913 122589930 55539639 880543735 211277287 87696267 224732816 343139884 66639652 645565074 343197476 275612366 451923771 269712908 805449704 781437408 240840953 581958729 201247028 359773977 684382230 62311703 64463819 427762336 428790124 351853656 879830714 852621967 403045849 371015823 205229921 554418142 627932183 331338053 362347827 394297766 786694598 7118331 985678528 984535211 204990723 358802587 345078341 700150270 758224117 459036839 245139378 882788227 463831337 357573279 110980726 786122411 114093101 701391464 271564661 288003503 542140389 90972846 274712420 97223516 561519607 640768 304523247 321454787 150038541 901158942 120702393 413407408 703547957 15793986 824929800 377063576 568544351 66596836 436652628 929825283 531864849 384403079 538219388 78103305 375761398 768991987 183186102 302036012 796453618 889543094 692112105 83829497 32098467 953351315 333732355 28689859 36462992 482779955 753199353 371770757 763545954 21823451 58511825 537345469 53522191 705303535 530045648 68129941 520548183 695515766 967246516 967434388 931505052 967853740 816949016 369710846 387666658 733959816 33488928 150526336 472731359 864543442 171917517 792191743 726792422 421516109 268606677 921441601 387494006 796725579 815361295 496129041 755767367 511109808 898816257 606648529 295064701 293376293 192533469 550609598 810427028 332616209 931872011 273890389 4141879 118302492 703519367 257851312 753403844 703959627 174574111 319253963 879106409 119442246 925587639 447611660 557060765 892686121 513369007 856988109 751135657 449201255 569130089 865668412 936002494 343922351 14591688 337554664 358018507 103063709 709462866 931801266 113636743 192734363 431683484 42953795 204462003 735659374 653371352 987470318 385176592 694634159 385442245 945197396 819283400 25094186 430584708 226942639 427318936 924913673 705541328 827345592 306803744 863287220 804332391 118895173 205008662 108401861 787721106 404731426 786578278 150154905 590795697 634128644 891061419 599883111 716459482 409253559 836087533 593684995 232045199 636027096 79110390 900441798 820924606 128677591 757732027 830461273 530048419 367150466 362941917 123819805 760239908 313287089 362255391 431981153 555097083 505349745 877509622 383296112 612336935 642638180 271598750 845757378 752173122 178422922 606143201 552244360 117998247 902431601 397906284 316126066 741589698 953246164 191826340 722863151 174671843 218812567 920393970 87678530 150710580 719802084 181091604 368067266 698999284 113551775 79848205 865296394 109873038 18405902 909590676 898135681 115082099 121535094 679990365 9406399 26236052 161725766 131990433 811584135 755981579 862545288 617234368 395592156 701907341 290383197 846170121 900161500 908568696 60954339 856027730 114244411 769679535 656158710 133647849 726007948 204747877 761436325 435591375 886798873 300218312 767735680 323193076 402963510 509435612 244548765 537354744 77361289 48759576 574722316 825326851 27415644 261734653 585243195 350710387 697774570 416341611 455118738 331305183 678382565 987064567 907571842 251422294 450378318 233876962 661535914 602877525 190403942 806449315 586219450 260753334 936524043 619993527 594100185 544810617 340195904 458771144 202002858 198257578 694747145 790411213 452413931 970295241 966090919 634028244 10479038 316273820 220005885 476134038 632281676 269945298 148841771 46587931 933358329 421835261 607686357 807082856 308457568 180913615 368639020 819758669 340630886 433822350 833203424 443915872 728150877 331584202 383667667 361049078 16449205 600661610 595481299 264515058 272356196 303432305 146842692 419875790 630428522 315675403 265320562 904928530 983948937 470382759 765452584 771774971 152330053 832285805 558987560 633541697 701494374 245626846 482390553 936072759 972850652 739309682 94335800 759753331 523103029 343324444 135909119 994260582 672781739 951824270 10940918 267932978 721678844 750483949 124624045 76552352 239564768 467842966 287005601 692295272 481013944 644607090 449901768 748698846 375643578 592657986 57636106 795629519 748467199 237250777 522755233 745960174 798220913 497045491 611934541 906430896 556802037 30733253 769548440 32186709 273114684 616072263 382816563 546360206 968217392 724502306 114985930 823567902 426746241 51857337 68957601 589825976 312749187 913560233 257471317 615790854 932951378 328260822 639678216 293341890 136256110 565114906 721260534 551236885 806887658 687154527 855362507 739098748 234655841 462226810 438934819 10260791 927704310 279611993 857448956 262604158 438479736 619125775 172386596 295507591 716445437 770646287 405884655 210379008 221721198 235499829 830845244 161804685 263479976 902063368 293131421 694206793 917900334 466615328 511891073 453886417 332849370 169954851 737691039 481185608 754018654 37478885 450962200 143500880 185876381 745810067 2610623 990502218 770078571 894842115 102411421 344545841 86962719 768071589 782774963 435095480 402767082 38843175 339126464 986196113 583476780 824625431 775894619 551719286 20672265 691106278 28635058 671590525 859389671 971474147 476910462 318932224 730272187 542267284 761176543 519716017 892539320 165264821 756424730 218364393 116071611 10237155 550719290 22313125 386988302 396528276 327442319 403337053 771600369 988247751 786715440 184695436 612247046 995699684 210105478 550807355 76176906 197367032 138659662 96051707 425620759 745791343 327427614 709270498 713652421 599001937 271082628 614604785 943505972 487624656 698013175 553780105 658322127 68106937 974326986 565013694 230826221 687915906 725058471 483803738 52662850 269821802 355136766 53224076 302669854 962867410 607445891 902117757 343265260 741083297 714138704 429849710 803516858 27273101 135409178 414240043 916455068 641600739 168986098 291854730 232694488 973749021 290929672 214860951 157508152 407992725 270026940 760898543 346884008 975489904 555700510 212920672 484748210 310353212 230359865 165379168 297017751 876283470 994289897 969034065 218574730 40124658 222640623 823190452 828181792 606178628 145931585 984495512 313714897 691486607 655454293 149496469 882447854 48055015 881151265 253421399 4762766 333342744 646701992 398928181 596445973 596019510 920725474 557512183 460039257 561218881 58374781 494914382 192184832 719698866 124138476 804462234 249987496 215461559 979100564 609142469 645481627 679094812 177587349 928828548 448676984 907996619 93442081 160419368 119770631 658667466 967232984 2596100 390755405 660699030 441734830 989063407 512430083 233415643 724134040 856480482 657091567 475855913 580801322 138721967 947732339 923869751 355112307 459664977 346227928 915426659 823877847 257890527 105237155 292623966 435084646 357416742 183205277 609863123 750911057 343943106 167520555 24068853 268567732 244976626 772663608 328619259 436512815 188619741 19972858 770838851 915891321 51973897 66916588 492137871 494413965 445685231 548188217 46569357 660241760 863504218 741646151 891851360 746125829 387691548 698997287 645290622 259547707 265543626 185813200 146213830 364047526 871420320 343346267 985305055 891259515 874548713 109010845 196248974 991663627 700276990 173688299 340725846 353585544 844441402 253541943 460486858 829375053 36006818 386105303 386689038 971065849 695528210 924174629 180223249 228997514 309276520 171853543 831944014 758051567 90325856 167655963 581583372 566639478 193942065 712847982 700112679 543998301 296351803 235820221 666928904 614178850 282272595 531256110 980177914 498437637 712944440 733875226 808168352 657181879 769258791 572514262 473966811 210101003 134271429 903411666 259215367 758610023 530648129 438434244 834057581 50904029 63818380 189416901 730847045 694383612 245681128 338244291 233915537 949689036 355782388 696678171 625020056 372070619 966017484 24714373 676338196 703228701 980772568 878709883 980610017 459823830 832889190 410695904 733638614 593321322 618990723 625891836 684613725 342166515 511443684 971093766 699949042 441316833 750203073 919740390 57757029 436633270 414824490 854997611 204490778 984495979 515370963 335582762 565074388 315294416 810154227 765917399 977478912 102527221 791184855 326962941 573352647 955330205 173431022 539751220 663175501 587254820 559900490 687924884 740696616 493857545 548411790 883696013 740145203 573882964 133086132 873216097 332824342 143262408 22555862 440402989 78924658 10971301 788345890 347161635 154654794 683607950 399522022 994140420 572697682 816232512 366346498 474831774 145906161 936893178 577706381 92838585 814266218 326773333 963358045 662804011 778193174 43496545 468181619 855531465 496278732 404525298 705203665 847166644 207369130 135583298 123991316 343467316 744888947 51063325 845507956 82127324 266590991 203171651 671198973 936018469 870001355 298552435 225867030 562595588 312659432 969416655 698559068 4815050 249919473 260779592 880777888 107823925 606079179 505179923 11851637 613006825 289796379 228664649 298288160 62382251 570484190 130192047 825369338 556306961 642571028 785516050 559889839 449050849 439144205 9478351 607494621 442557455 165332005 428778317 957509719 71047868 718635893 988031679 668046356 696012572 493947898 67738265 119326974 148765074 699591398 659028 331497814 985880747 351417329 468902662 958907719 562170995 187369698 607084601 959938304 6664254 783616937 539809027 487209032 645683520 827034664 880872134 271809821 897410969 561174001 670480377 279951794 780696722 242638641 329338377 447080478 858289423 733523517 39528147 942265608 545688283 792659363 502675814 248168032 956596207 439423489 886308556 922634925 287133607 994873048 439380375 289628691 463028935 239628789 788474260 271044765 633969004 295298039 30684051 373456090 73427681 964455856 629252291 539470535 480848177 724313930 245170913 120244299 206479469 13868168 368517227 68386720 57231792 195788563 886971683 418189175 389619801 191104058 577575984 88687177 929934554 332018467 134589727 396684566 568986248 798714428 107323420 735824309 557183097 892433914 762094575 996170703 231458846 932398734 588860461 684818088 952101570 205235201 407416939 259277137 408491068 759614221 946027950 196688938 558958287 668333775 634301524 129278868 511968408 714388293 930630736 79098404 601236143 321064888 514287948 555354564 79711502 734834648 941369453 708194357 293150878 312112462 219351150 211571662 302594725 378468564 882222469 863687623 41182720 224548348 763339559 694875006 427044400 363784781 178161775 760877820 85677618 760542681 930602643 882490338 622080912 10510198 715085122 961936917 255459126 885729372 739344939 113391060 256503210 293073230 337482878 531903878 334624308 786693928 8581193 993343304 773308413 108497554 901999712 22112523 836201381 22967101 725553959 287419803 526601400 884712238 247254598 624402992 604487255 665826571 730181725 361461145 581064850 852142860 959711317 120526237 26679741 571071822 425837391 842081772 523732432 537018301 872302139 914070425 304685632 776925565 411914075 3133951 707921102 354201404 716576675 939587640 925431342 494905174 484736616 915613981 524185326 288382935 51310707 230689235 350106691 420038563 175111545 403251060 620325334 203421746 434278262 438040192 882004933 400045578 766456703 600973829 579754027 356203905 994505570 88883100 143281317 887034161 585284199 467523381 575819954 159795111 999020394 803140677 488182518 778206058 976168820 766174957 215232781 148230104 397331868 712104907 934142412 162355949 698744175 846558261 75134755 604990113 133554382 65585759 652539291 399818847 839206305 491940904 760653257 21776903 28359430 576324922 46062662 663523470 466921556 763688484 316903162 264646429 993433730 304095823 5717275 169672790 140818078 335386904 650343607 914447748 510397455 656799385 178655604 418670492 447154650 448997418 290352011 382228268 992338433 863155968 267173791 539559592 298842356 974290502 357490793 42170306 48489399 966010537 74663383 188618589 61243881 834261431 449762781 393991737 420974558 930061133 217421281 180501387 130498889 410526788 354049063 597282949 34661925 905189403 528990298 72199741 2071277 766654749 624129347 111892821 319210227 754805831 493973523 590157565 138562253 414820422 411444101 321967965 773341169 517037844 26251090 237287767 545396463 592348957 26153767 346794923 485634874 347194991 644752359 153374318 807542833 524933093 616142187 219412573 508934392 234275255 634464889 822121230 384149694 273775034 812126423 847501503 944636196 200093036 773694629 862979870 563721424 68299410 436534228 43526288 621083883 538160796 480734771 217981048 180388308 229377840 570902772 828399300 275575751 253632013 961394263 441230390 639455051 361939465 907847619 338135426 805258921 347083269 583981056 960141818 271961437 34540308 109954064 9334865 21716332 848031922 448889877 399525894 960406096 729191020 259654419 497450180 13914965 718876809 236569401 90560942 486057167 775210332 425580390 495869303 920034900 114909102 175061205 499068059 434309612 282053511 737694482 677415251 771518962 790075534 105228695 409318163 203700662 794033223 291909406 33337447 127521023 88624920 237328336 146813953 777917751 641019031 294843896 34829884 493137603 915515583 68102499 40498384 897570839 132998938 510904280 387283653 509043179 44439701 368255938 59390276 446255154 749187807 352537166 839024420 789935858 578953935 849994420 819008528 38824963 10746477 14404946 941440943 360953765 109158217 289246485 737473289 158775049 137563802 757718099 118678035 972824342 80872965 657799615 971828870 67457104 142688178 707699834 688936924 327127654 930411559 586058042 780003761 949412293 449424935 290484857 480970059 259349460 9417201 636806694 767941237 216920918 766277446 437866822 975390122 731330878 583719167 727194020 160821214 964522793 56185364 589856503 718443112 898397349 774617679 341935753 796152945 254173381 972784356 720314007 262039709 59403793 592815080 780993359 647446374 802550361 913193689 11262666 527438679 900366786 62940324 420410252 272206358 565912232 106195631 990363902 687236254 983480387 994304921 303181405 940012210 498912725 443910489 891326657 625673918 973893622 664888463 34482523 276409249 256393208 79654105 643162794 207296504 969756945 113730534 738358543 163556215 154263526 759175138 586270442 455172579 530703184 46948521 780740673 693322031 440266728 20832541 587942065 221419983 411047561 690018293 10781376 97193166 861846052 606174439 227889058 196889563 914677375 762262807 13990526 809784226 886474100 937004250 529096552 438137648 7339358 465602426 905287706 321875615 888243938 998872833 14532866 678398538 618319812 300185032 9666406 834732586 662747004 632831315 510690758 719830425 467704533 490843463 628995920 688882919 914551927 853424517 637317990 37268482 45904975 900291709 46007962 4577808 945104653 83869894 221191595 601609981 764690717 645584606 971300947 813491767 486041962 9450176 21710138 828837918 424955148 230960401 83249860 295541907 502327760 816095604 414068666 434065017 687720733 417597776 562063985 781434624 779009523 503854800 373111526 888166107 451803412 655279118 643664114 545640835 281495118 992927723 327617718 123135647 510915619 118519415 23446779 886511498 876192260 372147495 652997840 384020339 553374877 289238630 102141192 148302342 206993499 581147146 10540258 980219985 183659647 563790079 277798680 803061247 773569407 657673522 919819931 201315114 794896419 673770914 935680955 401011940 814775632 423971610 362904163 518656476 288438545 202247534 397269224 562430541 673207538 811875478 212092558 869527227 591096865 20860973 751893566 970050937 888057234 566957796 759915285 599721524 825351270 39661026 654666793 907933392 64037673 93985744 898685018 323137339 277230429 810399859 552196019 332811633 29257950 38436786 79507357 78241030 538889559 140385560 389905206 174792509 388364764 599246235 380632675 566635704 333400474 592179002 332984241 26584514 853812667 245284032 449775792 673788048 332237682 77753088 788965197 258471662 324599387 381546118 638758178 122934965 742308257 828382369 326012698 10644212 196831392 460100437 457501783 127987692 223597647 173766217 997152265 950529021 819642053 314907545 587459813 986282875 130987868 440185239 921801700 819033889 260065459 438965715 944987809 506418051 251220906 967662871 253193644 510937154 346434844 648322047 374846352 855518575 368076873 726409892 428014306 649911015 732935023 10818967 609609391 402649531 984180466 856960000 426845310 8096264 212156528 609729010 131187919 795406105 628002133 836587460 366279244 696685681 175401394 907538196 601927856 862343006 553144293 65367325 117449667 732542834 168994210 944029823 929940380 253874204 193299657 808470613 447828397 827396283 483219757 524675134 263876959 441149355 202965829 431718210 864278052 20843185 746304361 363367795 336348724 929331075 484253612 279362190 839128356 310197740 832106534 176967046 936123909 677695108 629288491 207529414 541706887 409814728 500290725 134489298 317276928 675132062 583959152 197411501 801267022 20023373 449910961 575418438 300895859 595492684 461195565 74035668 55038984 225547432 186651180 264279965 294573104 555384860 239789980 123377891 463487089 142087807 613218507 239318675 395836641 553369161 716875650 554897993 727220840 177228968 385950783 148068552 969919655 388512448 304318987 109491805 976301687 644203011 311494016 261189020 903863609 775954466 229431990 938567340 919608879 575325170 142313752 638440005 757211347 810022511 999503036 575557167 32277686 785928366 56409815 775847746 935951444 125904765 763655310 131767695 175479669 893244497 648782464 768941711 347410922 717004528 474905798 909528692 632760509 340665177 276524904 245932562 256819523 651476371 322421835 196178849 841261905 511813173 388739262 786985420 125898521 80767882 906097568 622603363 189310374 193960483 138257969 149418116 165690501 588016755 548069506 882583386 937677972 801301456 28858924 995059342 838236717 827129261 817078794 71261931 65446011 862413736 553894786 290903499 419803139 844626182 262458626 960577106 590947287 496973420 481512459 820716898 109240011 729189229 536177114 15065191 929814210 635047855 259766344 105003168 364346176 288580553 564651211 772502677 572142195 701458162 204800851 406522501 339763514 775745326 559133878 460457328 33612700 980052103 755596958 833047033 314277387 33705893 716776560 257961130 320923110 53862230 377940746 776840718 379257742 336908343 120454605 27321073 46764813 356267974 825145054 636779092 830175990 78208696 924191829 847250661 885069089 439503560 306910168 589051206 879517308 619762208 896980240 836479716 164308813 404843665 361048542 144019511 83826775 609864551 672537526 928690945 675107011 997461150 739193671 660903008 993220093 583658165 911597869 72745607 384560598 576414975 572158283 761370734 526101843 996933766 391927697 75480595 209540308 328527794 538262753 974334943 573497807 251174017 854988571 690005575 982322370 429794276 638546719 386154763 391778557 435890074 734810687 686835959 184889726 767508510 976196372 721900025 219377933 202840502 732464577 900943345 412666184 832743247 9065701 361906631 885383488 225182119 841302045 26586267 542023443 439260639 686272143 356450758 424209324 938984104 225199194 902743987 246363452 59641130 408064784 871141067 155225540 164966262 426810162 459421771 296878529 991031973 167026023 70964538 205713402 937666056 778667847 640819385 64372214 145722143 889005240 259172635 66750364 426718433 7495147 511328039 867776183 877374144 788460253 491270234 297218647 773329343 751799905 725972321 913459203 163072266 322980180 499314951 590754999 18982809 135463239 809708358 412195103 554254876 871770958 583161077 39473899 93352723 136237018 43572922 314960048 962591951 633947002 662664889 876479127 689874482 840648562 569022547 821203100 120905350 760561748 95532684 406647324 838432222 519810203 63866508 851307574 387860882 475057871 550294487 346613161 717969164 805022808 803999889 927813806 368672499 456455217 200409479 452581847 547031388 852033179 210119569 255773228 707985033 901972363 135551159 734064119 644009943 965594142 669067063 207596192 486593845 791462606 566774075 32471681 38803982 254195580 983290323 25360900 152108432 808025778 459773586 879432574 597319646 890897864 180699837 215447904 165820135 215339938 209224192 735295881 80092012 666333900 951868351 516322795 105636062 201931133 44119941 874585618 825811500 163692155 710969109 720389275 454042103 911070370 3725169 862202614 162342829 371711378 125133113 404813330 640876090 947596689 974321223 529629825 225160096 709612262 426959393 777127944 507651903 707885529 990699566 279074150 960830326 400043560 114721045 172355274 555140682 207799067 208087203 905664970 2152379 700877073 183659148 741158118 363766702 228994096 363278520 940223199 457955590 477641847 622934261 270703275 493439521 330920474 159541648 245707465 664769968 962459788 430001016 415966486 90510445 838054727 307261936 678155496 904476560 27280896 86545474 311403909 735313604 742196174 639936569 938142197 203967844 891897124 351827224 145832950 801612734 149218661 799837214 794941746 768492686 288092910 269214196 87367873 639838965 313289429 108461103 552620137 58662621 837511026 393008514 648879473 320119220 935490052 743522576 350419827 793027513 401515470 684940268 702303706 31763816 102141371 1540746 325766884 246354088 846307 62228231 5417880 350883583 676157190 527146011 343939090 62463131 786766864 254279123 468287969 154503028 561120931 271161666 297347191 79757518 327451182 31259754 644724961 955722575 951056049 104233422 581654041 664057894 298617242 311337669 224455027 574631932 825211307 941807830 619976705 56511910 966783122 550287596 143447345 973751699 822449537 277261517 952496193 166632075 366529507 292099490 775425697 841496676 696408501 786402910 522598376 50816312 538112522 919690878 652306672 236075962 371528914 911848530 690430676 613484063 787161276 159134881 839937783 955424376 214272832 293452203 541552768 820356172 153244856 211355264 104854931 488571512 700959517 215127036 816010242 731454978 517403739 76139592 445227171 739860721 430726204 212687338 552340954 831465878 424097465 978096694 245191320 572273346 934964257 400132021 885734386 919576228 77661886 964313321 355843192 938452084 704151410 728184273 351566113 838388486 593022190 107106882 42211799 322806869 666822410 751921293 295315812 80896769 576516978 367514260 397474213 643896932 954039814 207884470 457404681 432110951 624533621 772904982 677468007 784737131 903296328 51519285 683152098 381610658 570153039 14731497 86980752 233582880 936263936 785382135 71043885 36899380 146070243 475146723 748663273 550669296 813546975 555643359 887589392 776057587 959436105 346198183 980328180 28200581 400126025 14273992 458161446 70814268 396956049 214223428 172688712 70600198 558363315 369028932 373967307 712618513 962312611 13420165 576131266 558864861 516709434 750158660 144210577 341985741 264810784 158120452 916172081 467735555 670850473 466700998 461603515 842754205 108380028 809384263 340254535 328839376 430164623 586824356 784441209 660967411 581828741 508175495 514326475 31575685 729335091 553047511 903315885 106774760 866680120 863417062 174411934 149020327 143472913 307334452 853850824 658341276 947528784 703930406 452909699 611151557 256448863 648682660 154286200 25836671 245645757 558264832 912649785 925957643 348104538 303384698 119163629 228751622 577875086 191106367 827845076 324949323 57025274 846201415 273619583 247843775 17567420 557744968 874401806 685854741 362385053 757643305 757693360 295372423 272246553 758095257 891861145 427023932 569145443 224616556 314740508 555717946 615433966 759981641 508493822 658127916 439206733 18894435 461362026 89699003 258051317 151627818 120505801 43653742 7311050 966172913 612094521 759848179 558900410 275635946 982978800 779053952 867948 54026498 213272621 265951412 953861927 227525230 823124635 350807385 937697330 383121955 793034531 100573235 440971051 103973207 688445221 288046214 876016601 884840796 552535872 419413785 236818038 156155312 819830609 626187618 518323361 944178771 452285230 485858779 60353548 165562861 52302956 188975045 920342041 712344849 794632311 753792212 348336957 603862554 620482733 94721816 267739227 530630224 486063573 7041274 691383447 640272954 804021909 942324679 875360742 650949847 686361120 531666695 492661757 551894258 897430539 312355495 856360563 73022012 805105208 812125557 946276061 643170422 710460443 949313587 78804814 695741380 157786889 730687788 701461766 281417422 77631584 73231065 578366794 995279144 507433926 598315112 842953717 743726561 115226822 438496069 950497939 861773640 387304913 84782510 651460007 10929740 758860608 243377560 572079344 815453842 419360110 154252488 144066571 528810773 108531271 64939187 206071192 303972117 22594066 291112196 876667730 459959049 653118368 340892858 13248121 879766438 769100436 921254516 862864552 823272225 842667883 557086407 975763182 825344129 934090092 310707749 830971868 37753972 385650265 906734050 158156660 639106857 716690277 203652965 360307389 859542082 387344996 415291388 445821326 591698889 832249789 411838541 544252094 95255177 554962338 897176238 18833048 485875598 141772994 44899559 278934493 690353450 802084382 412427755 496439120 899542523 248334079 500322480 743219134 270956852 174628928 603581482 187349068 351890816 266224587 705410676 106133025 226048297 478551479 777690369 232115377 941865107 119848165 573555136 393704506 352101478 553342440 581461896 434705416 457571744 560295926 841773603 297792941 212831292 493163087 801370900 242678372 282866690 228647812 693843355 72629356 225278723 579194027 500633974 786478320 60631081 322095685 336468668 729961651 181551789 649608759 902747196 761463184 919026586 348067507 766713199 661132951 141556249 191091278 871066171 137911529 588430168 702289409 835947347 389703845 374711694 838143291 498433548 937505404 530460904 669827209 690219411 986118879 688497239 36715908 774127331 986180648 288269304 447732982 517835921 602844113 357312845 402435049 682327278 235931180 49892721 984493111 491234979 603484356 556076094 900863496 208571662 649594519 449167071 989386386 365180447 76550299 666432183 188696563 316895487 691912574 399902249 352290661 934100965 740907791 172518429 543187474 987225263 34936634 88091001 448288388 36835984 894019685 243144769 375150510 668514892 475754459 452028769 327013118 35314800 748787285 586110665 243122082 757673588 176286274 596922479 264004488 875424686 473288158 272904800 911809935 293635372 665752095 994573319 443624915 928254388 381715148 665636844 356444462 582934920 951940546 262343704 292555988 614195785 60943590 698861817 637650722 15336857 723203968 196952761 241964865 699706343 285811151 364012396 95884951 19671651 387125780 338332008 313385186 605245911 463729720 142935824 232713611 196514332 641979346 977323947 902610970 514396802 559965305 406938982 975849290 133964880 423387561 375871559 783928898 548845807 857414000 36776390 911720828 828380302 26549705 711380717 541909658 548078445 692210050 137771683 121268208 12289885 59308259 672915847 989228900 834614177 942657163 756310770 246785220 745997331 732677025 305958803 574197988 287983809 369582545 164345009 288220782 28893962 778610952 164788953 688013951 544919286 523490317 717545965 522109824 662321444 283418379 23086030 747033916 636151945 830285552 828902177 824693531 767382818 228947785 817517608 994742494 726833752 339976163 327900709 920279224 279424860 463174647 138836927 481309873 485201814 172567237 491731485 770149892 460144406 535560813 812751397 18780482 440872710 218925745 134831909 23737418 391423118 282373516 357047367 285838899 609634349 1833185 45257521 33378348 637620032 108543420 401960950 261682836 997150884 234341768 412013635 60468531 992534981 861169707 602587013 532539360 196722752 116847667 215845085 144445523 288983420 154041631 351249488 483251088 756660184 143260075 436358629 512490556 818658664 943321466 27360754 155700844 867752394 657894439 533499597 630409639 969998914 497076110 139955376 331147747 35701630 256814058 466617340 252028177 936132630 237564488 741534305 677779475 33847397 652385342 935596148 655150851 153649648 893907871 361926816 805831911 165994232 90098998 465093647 998059566 775044255 698877650 887545094 24085826 156093218 928523402 37810371 497409221 329002145 887659931 793319055 869065120 473989557 579488262 944436953 625960139 219471559 731162118 484011339 58342691 58679733 254375792 319067093 358769114 697829836 475757186 225789482 418777023 258899983 532984973 86669588 979211168 943121684 364285971 107507554 751621596 241296176 8431125 779381589 197909153 705718972 18782826 812888712 377094401 312699993 198002931 807340252 748594365 853235935 169820650 514704687 291040634 809836738 826606469 919264401 409433004 707442822 568153746 581338092 248986374 837204107 345362687 622890829 512416495 726591154 866078109 994856444 890263918 732599278 874443988 344283282 834003302 541429054 390018922 266233109 293077638 19893256 817722007 82579263 584026611 729864047 664493349 901270742 605206674 950851173 59679527 405684627 966905817 957248218 55237844 196991413 945979559 748042808 247708472 362146726 974248466 693470437 850293725 879262613 899467628 309548739 268999827 590146578 472573388 955369006 963416369 377179520 886235353 489247176 271219268 168060553 579933383 111052654 496914545 395536567 220780699 623714056 304177754 217988420 912817117 992275173 771531430 82308156 134921775 620346387 332577191 957690414 287694993 680900332 860588486 576735870 806468148 718753408 765809456 279682631 256189578 454433866 318082441 685010132 546202627 745985072 862284149 254666325 330700248 661344968 274398035 924499074 90083623 73129802 685088719 878517881 774403084 571097668 984688762 391184579 127969978 636446693 85096934 928132302 973059564 231066811 360409717 441734209 661929252 237206960 851037085 380629697 971991454 514611936 360559671 677614610 68892645 568338558 101101783 103809150 992366704 991986325 504903180 484038621 776175371 378135034 64731855 225288862 715127300 386705807 260024263 960723304 751055037 452139167 268990641 338379658 793434662 60205425 591915504 787190039 975535752 202563652 691869775 696146510 21805146 275194904 49950265 361926207 681431818 462924466 183312057 935273790 365377363 583850995 154446964 25967820 582354778 321787193 874016474 835698337 615146671 927313230 899316826 226698387 328130792 298998494 842928848 670555756 759414074 850050277 55378253 61285051 182185813 902480162 369131266 586678043 759363175 487910196 239879112 72866090 152638039 934266201 888047240 308980497 524534838 638641307 415690152 795697750 785968560 919094107 559218786 129410938 697556797 511375622 733178165 747756493 960995382 874277713 180860522 727610182 100957461 971380323 898571732 154818666 896424469 178604596 626479439 312224552 602968596 438297336 369634066 64779177 59147010 345278551 603971936 409919060 191820209 122849112 178525794 138134848 347582643 947958781 525008908 931585062 205503952 443117997 101734322 180148079 478263667 51270774 968071817 812563243 655305054 347096521 469653696 598491226 5402810 145017634 840160844 476262498 273309147 966495150 360652995 731231696 593476849 811433565 345532081 330446829 485533787 726733425 425951059 783569876 329539572 460494924 655796557 337959838 796896402 214113769 546385195 132493934 224002485 419264558 802532457 386613193 67810473 371561364 149655309 935918308 757086181 848416224 350408711 849498506 525645297 778553827 351182359 736069099 134174245 377697899 236737011 754564304 880914230 404577822 480419081 557724596 338194050 681655126 365301334 200535476 35212268 953420335 793799992 380943252 736166699 851456716 553946179 643759622 659732549 734266591 989587785 216769757 228968187 99078990 885706126 906237913 782580987 576076179 414127936 185110333 545334828 727254031 546104172 136914563 655749142 365772382 53863801 500865472 304159307 323186376 352337476 68372859 155449338 668656976 236525997 603078096 36497727 228544557 354606743 680038719 114733152 242896942 804967746 742046571 217096613 365719314 601216576 715241441 530593619 463102954 478039826 314997662 149676307 206897097 429467980 224085503 40140039 514557432 942307172 942832879 472119774 385207833 294076467 588462904 445512929 794190062 770501579 236109511 552494554 916576977 36276762 656874926 566775291 529049555 132354073 160683692 359037359 781840496 620624354 339491878 371301278 613952225 709015490 476648560 314425814 670153686 838660753 638982817 58395586 835967299 242629033 221888850 549122517 649743789 275357975 657181352 843610369 723947768 65324922 664862028 4053404 225590781 764648567 332700672 611982246 518307526 143024523 933406471 705198660 969502082 475021015 849197956 765784333 351812178 559398816 254118587 633870521 822138752 685382354 535825455 386999009 108890507 88236262 269129921 72674564 524638376 934159762 730458985 946567531 451119255 685326748 487245536 595652494 187241512 356674542 646862649 944703765 487387925 334706860 958707017 487258158 516703709 918156283 636618755 607794099 896513755 638701507 77691924 772609314 107762213 307034592 866646422 666974584 838261228 531966248 459445467 215738269 936968563 702195432 225061238 696279878 355761465 892548799 908357530 235145159 760744488 323379505 143276036 903193934 213701782 521503015 324635701 190482233 875982664 539564002 94548276 817841251 259560758 688868402 164632051 192562047 357683726 470631313 463473569 536017088 258839468 365832519 208767963 654696561 729612009 945435249 602358445 962235863 328754155 992638213 659603287 15658155 921423145 75042665 159734816 938649876 505679182 459593141 658964754 51627024 377750808 504698995 860984438 943041876 63466569 593499470 779761942 535036712 81825652 800531402 479249078 193720820 280149240 416847933 362498062 957647531 560224190 837371829 679260630 103762005 844026656 311912119 166500380 356939016 516894788 350098513 542147108 73445351 115285085 42187 92162261 154689566 1187618 781048314 18727386 952766820 776788611 817170411 339900431 630646639 43430522 293306633 452041973 510694925 939403230 94522995 564859715 826365224 659865868 723312393 443086577 527861850 391213565 118223016 34694279 27634892 691857051 542411604 491307687 337918067 258179884 787946759 8658951 739828370 748854252 97649235 409717478 590076281 166798465 821839614 461685315 933418976 102032751 601770748 969562997 355309311 647294604 226763711 857881529 556611807 281492806 350174282 111182054 873876745 864408895 910294722 813211578 796296342 438763755 136805287 788594918 436713787 854542978 56939331 498390232 170041991 481469747 545232980 478651654 235144307 113042899 594235324 28333050 806909052 997752188 29316453 218265654 36402665 269908214 866095399 80543246 158180966 798927486 341547420 415404717 178343045 46966063 234594342 700005477 527515928 122888459 2218740 820210334 157076910 113515138 149055614 112045846 532405857 976376449 369949890 593471458 98204409 873124489 707901764 569026356 648541383 668363603 608794219 804019354 250716229 341191854 448776502 75611389 57376883 301095439 419873299 848436167 378089350 289428919 129520667 207572186 873833065 139979443 19369926 289153115 36827636 895293770 133621121 718215108 194747149 418498863 58462523 760070650 624959335 110961286 81217697 124187247 627913071 865509295 409572698 108825299 405318174 404764342 255925484 873553604 124611161 654699902 640734872 549964553 193943259 680141071 136567965 204359899 1783062 184524302 397046983 420673254 469799964 7929292 418589295 296783621 828164263 14751789 277290052 546610815 363268146 132810777 528921345 139534432 18137836 773859513 642946147 257980677 173590991 73179185 890857891 679946405 816605815 55882309 607097158 125704223 818837550 980280057 456394869 226855222 600968351 658090968 48662574 564790503 170666660 2470691 790216486 192689367 518452098 487721480 620990914 176682292 554232928 513302974 630124615 706998775 159696417 981909018 19022785 232565545 936827718 900336416 267814910 749710098 663360884 862265631 447077999 463235182 681614265 445474849 100306740 304969367 377416651 874574805 185169212 375368685 8092794 578428908 267141858 218342099 68845278 28169499 737888504 798299977 261238274 254862007 784157069 221631871 979268383 529574089 654456378 603271052 864089386 298046246 526700457 737433717 264916798 653749456 250556564 896462541 824527885 584256561 751684889 363534612 959453932 590785584 815831300 981199549 926077533 170733542 513248337 618978626 303253061 69797960 35117455 18539338 522856139 607200223 989525220 57412224 765748094 214464442 45179628 136191316 871627975 133615753 418497957 884742460 298233020 72016141 571778168 55697629 108430876 512656287 518076343 728504584 747048553 981410117 918336857 494447863 356901662 799615831 61518529 248850136 179055032 377881843 839342802 871502702 920605198 535384421 275771777 968389923 26037297 726715237 11644913 526562720 910139129 821286628 688434343 798507849 15426408 68305255 995154922 893322368 822165955 754656855 362813330 837271519 760733257 769267691 546286315 483167278 818852251 402153933 416748278 590814227 293139529 865078318 310823513 792678403 719800675 510101539 414602494 738103720 693952767 939349586 561738219 798960445 903430047 691453258 281911057 857186434 789219887 481938120 963182280 951118990 602913069 257710428 229597044 823188840 417779272 197218095 658309318 543421402 114241589 200096448 228951209 39903551 439788668 595181934 222820616 181202128 492241435 135711169 915967255 198315369 736959682 433689331 394343087 674686164 7312921 494628344 314611109 747289669 587689791 831671881 138055422 649128296 121632023 592972933 646525878 830427793 582373706 624172340 252152321 335100333 197334728 790838348 400507926 430089409 537695235 948917236 381593225 255399691 928305906 694104503 977821742 596634844 735553957 253190620 971901794 398143700 686133916 987551058 488893007 919306468 494248801 187170663 586203974 445841272 985141724 372080813 728192270 808429622 861021518 957948711 158257339 702622995 148429419 647391998 425685401 47851909 468393117 839849113 998743903 814922222 408352544 129715517 294711878 643861188 804827083 124680710 220682890 943116901 690808362 17777126 992301874 939547788 253828743 302391388 116668586 482201003 605743686 63343039 218531292 603819244 235022252 476999004 171753164 60025994 283759270 391887303 153966880 225946692 321169661 284791189 169447214 460801528 742262493 337631856 824008861 412201165 489112955 923449533 224409157 66170287 835081170 700048263 915218938 293992837 521415638 839265546 81047492 936629535 429821359 936454082 718806620 233032424 48053751 729254936 97703501 639054570 92669145 587340740 183904257 590890041 881075759 703597886 566355360 579815905 536125843 866812904 651627564 91508977 186111580 648437007 535046395 306803895 7863876 170710695 42820850 908523698 290159266 711854945 714619859 942356224 37770164 23929841 942727334 214317497 126606994 33411643 675413506 672889219 155056542 545299277 783467095 994593482 455699621 934279850 793694669 712143374 771533971 847502610 490801322 201041068 513302774 887182289 189626719 911735248 69432867 745208571 134835020 782481695 151608307 650054793 261967988 291196048 214638777 160922935 728313618 934489226 262199781 870152390 937403423 400047579 381274055 340220989 385229768 968743259 178216825 157302024 114170955 279309635 522163545 314227084 211707403 726462817 100086690 242564719 28508354 906128678 740069867 751374941 141121705 74412839 949540940 23955674 848344339 206849496 401536518 480216049 998772134 873631005 736295473 316715288 659073150 701278575 451850000 494972706 703099017 310923886 870639793 545205165 729640228 342583778 49162595 151626944 509005869 819222387 599694855 137013716 924057691 893206635 83464650 92692801 126536084 825595514 423341617 514892875 409323872 762554623 674448204 729127970 574343242 180361984 16012054 133896615 891307903 329988045 643680205 821927538 843965231 495859050 820510460 327136352 399198253 544961753 121944877 791914365 474796725 771109032 788783935 397057568 492559122 657746875 24204559 643850455 257041428 528138134 220137286 488065583 595298496 561976402 894737886 912284537 779621816 528295295 283539512 747115606 549267545 310737938 983617284 873350014 445593575 114834317 555329186 557991270 650511767 865096868 14184485 561143971 407232466 843810015 182000013 656447238 886107036 132860104 538204401 157487824 374197216 693200137 950530031 621903776 222753169 456605720 631439066 967070993 641795849 298475948 978268698 640769089 494289400 811196208 348644736 169250166 77703056 787179977 44593289 658962279 912186632 68145849 904555981 603927778 516651728 709152358 162007820 930761985 132069643 604708365 827744368 510226750 789363955 766915027 996047033 514876360 472704991 103689371 693574719 46856018 418149813 845917263 642960082 899722541 341572637 386315549 617306474 633394958 678145276 743555829 147546331 578943598 363712125 600078206 570082681 639952677 674704766 512179593 480372950 716037937 753502792 550956516 886001467 183144936 950720739 60574601 923787062 397335196 91237387 229491500 239478887 852669776 959798754 702954891 729638382 381446869 195152568 92962012 218764328 232992440 176939082 368368012 822938665 254576639 491960001 633248375 936334246 764489271 94952417 990004581 438869075 307597617 381156139 342185956 930364596 266704285 816982006 265321181 221796293 323080454 472272095 280457902 735276108 646888381 849883821 899123981 677087872 343975222 114674868 638948433 479261997 42281869 527973264 201884471 578530169 831548048 282379694 58148181 832395746 670055119 392191332 942378561 441294095 635528946 498933060 944191685 467732571 525061444 96415023 15595245 706669228 459575318 248530208 277275594 985320309 441692121 734606645 729852393 486379592 261238665 806425903 720100396 940270961 350256783 331738938 72774322 682708514 608518087 416052304 711506763 341971532 735577483 821168848 201499325 609601420 587292183 772704359 383234808 516839041 504386740 370916772 579421678 254001832 117428336 112861757 967359664 204835487 441626816 133162285 778332527 950179653 850540141 943937369 249356797 971214436 102042203 356425646 820465096 237805937 293787422 246979124 401986727 828955368 494594172 104197449 228573600 708187593 381227086 178440070 121618631 635363498 860288617 540043777 947849278 798730635 440192802 367842034 944569915 590610177 29900294 51709464 392344046 7836846 50558973 438421239 818255290 703549043 847428306 348905202 906348030 527114141 718583763 383012082 583380915 460066737 406730130 970812681 301189117 410853891 229042593 108103466 251041058 770806926 175624326 322202146 641707578 282125387 104803098 594077065 717250515 682986388 892043975 993749073 743764886 797130509 877806302 131921095 233173267 252655352 652368025 755391843 418043625 3136544 240536525 11728581 598156607 45980117 59806960 623753087 99738279 894013209 907792399 786531466 849892904 320461807 843093311 272175663 564238849 285441480 557529951 582761043 869326766 321107655 420986780 739835499 625247706 603347408 460160957 684600598 35348702 140086417 661049068 202289479 48088424 51249514 72757835 35936567 383656354 661035284 170775756 346546098 479333781 58454296 308013418 571378826 208612260 80546233 151131381 606617200 473905533 320825326 924099121 444106972 752209557 814061657 357143847 334307810 463448929 521168198 323014043 793280366 62272395 886656915 278952707 144704755 620178410 485262588 312226360 517543016 690919859 936752205 500578351 41026276 286737143 363208844 558616438 788904103 127996221 332096580 80884513 321213660 709851543 98803672 597517713 358698799 878941051 891909260 765066303 202302504 325979120 149599201 849496811 628715724 454521008 74865736 234579237 220438287 962557826 307700007 416878115 310474904 117033569 396705231 703653445 208871780 52617557 308817229 945475938 31944 460349922 741276753 104834749 327393952 243258747 457871537 749906151 170492708 555410926 849370355 898691992 920496935 997001388 519007592 29292185 301403855 682733206 335903099 687635658 11536160 938601050 662938223 635178946 452254099 536005861 103805256 397649107 298173248 597739890 652129048 215801559 40632061 132143906 99568581 227744837 23177379 295936809 51921782 959370954 929632000 492941472 1526843 565316122 594864350 335419324 335540329 741171766 645988659 153042967 511771947 427947750 770524386 317297425 51691431 784115973 793435084 186347712 788062376 925610541 278547259 861353020 65708124 804238065 975227250 918916062 166092505 285226543 932838016 443146790 590948985 940582670 269843816 651201813 811866949 10808224 666061013 670655161 195613756 351176891 492757416 48832668 322216756 575901058 379914151 164103478 142082937 455443122 193473765 384263729 218774530 280244353 740200589 950518698 725588232 551004128 15078243 335916304 179151819 586208307 206723470 598566097 175761651 686072169 586824242 189998660 589942647 827965163 751722923 279543721 255606403 572508344 532968471 8317072 45105530 456138623 834927536 522227785 633954152 191619169 195237979 606113172 326397818 847058757 655063986 278565185 321994026 12446467 202080955 367586261 535740914 229253223 502099326 523103557 438398224 727968056 825577232 765449374 73377972 783777853 311602910 127969679 610048142 331702111 120592982 469232901 636738987 28431119 143029126 308990450 272082807 836242559 533707454 893164683 845549810 386727544 707373826 202791425 68394564 413351124 869286463 927712044 505933326 743929292 158762498 2353650 541798077 93772559 959975985 165642160 751326904 251870372 823009018 39967161 952265045 252974543 273804820 461425146 531312723 416361370 181580717 374328116 666837190 881884179 339917020 916203878 387527619 704294849 554331617 509496139 589394087 754258329 614210315 278505642 214101519 294493078 150068835 302213131 267021775 560753592 511135444 757739845 330303860 472297094 501096655 403900705 305399528 446226101 453488608 991973405 265182226 686059125 526045561 147614227 240260063 872199521 813167925 370027698 473804815 697880552 354938186 81826964 982900947 611357933 71652353 593127566 759842983 37101781 894575045 633658412 451737192 461084244 948108097 541951125 377459918 367353438 877081080 987741837 936707724 350895943 4345978 932406499 880343005 118997156 574955990 749318272 938946921 745595844 343481945 204738610 296116758 421208787 918163508 28368695 590505041 922923167 174029965 50302024 562982471 794633339 425862133 305492749 915722559 373103061 907235430 918182413 467065664 300090818 444992187 699179402 219661264 822905934 657712829 548811460 32959538 583801113 310044571 72921724 409414995 244061973 265574666 907727919 215975514 248852929 596571472 899197345 462486001 766545940 594056287 387565972 70225120 560052043 689292551 714704485 789502844 741339193 965916040 929341110 960317623 898073092 609542908 542175042 377468161 606721723 363061624 35480287 200335638 814425529 96114707 361051516 335352446 240622096 776653110 660662757 865445775 901581987 925605037 694945071 144747856 779829106 589006524 871733878 641125846 710294017 892240302 384883965 763687326 558706953 737009386 748962497 576256267 569568207 889017580 103421293 974075873 861692987 119803854 156563303 313702650 603934263 126376547 584629885 900456647 670303742 341502643 104950260 675698718 755169696 804168479 113587810 475755013 593476537 724189439 283969248 723891853 278083453 316075016 664017080 196806761 751814959 605601467 247344091 431823291 745107754 362531227 59507407 16135880 186123399 18268536 233212724 616072735 65379721 705248969 554883593 225230541 89502406 315222102 449926342 736407536 416079450 276655918 64416085 101136849 64645947 744894935 353478522 296409375 517671700 890489446 473371000 905522353 943281072 739515233 187953692 202207797 500099592 979606459 975375521 675764885 287974609 134423991 928870257 708705689 138031488 834417332 25469418 842948924 607232167 530555139 116022263 178915032 438803737 782686862 18657501 595393575 813970283 394812258 374715442 610428634 752876140 562460599 285360021 171919437 449473693 206616924 678568299 856593493 924609021 101084868 35810532 460967681 819373426 454834612 959785944 8112727 783049182 714516657 143603145 799862449 285916942 811084514 157901184 189917567 973663772 171632253 693010900 628106325 107276652 246194081 843792892 28764590 398321068 505014589 527108901 459601494 916601853 86563396 168075671 246246895 672324073 121802217 929191284 949254780 786874470 152175977 596022355 542065802 851445906 819598166 532579622 633219388 901446889 433753989 414942335 929092447 98832576 16871309 314531405 895613308 653945473 232348098 227194809 58274653 619145491 938740287 752477081 231015494 403788259 19040234 124616404 545681522 618860362 930154512 340341780 152627588 176038248 841790875 586716228 284641484 567633237 100877684 288764174 697978756 641050014 694671974 726727227 691527496 944545168 861022372 100207792 191442832 901451402 172351775 835810115 8237025 474195221 36849774 10886529 383315959 960611943 595058714 793115774 565804840 832578602 603634472 854373006 988976897 99349946 808614298 955048035 906753074 494155507 621995213 842396206 206367271 596832488 370941173 269555680 727118202 359807099 942237883 360856824 314515198 764643443 181241376 108218290 490890732 658846416 853120564 954185980 318014180 449925387 792702071 589799191 683247737 587074065 569431888 586081480 435092573 390233710 624501268 998096795 481133027 474126051 815776665 639083219 199390502 230887157 830904351 465957109 487327954 695797797 397551799 339665468 935064668 145934813 521654053 896077011 565778549 208585403 757808337 72712972 194161387 166931643 523646939 316943290 911990386 518076351 571132313 340939983 173906430 986771746 455972210 357908178 326073016 314470871 351332244 507100488 421371795 460637383 121595705 398719251 12210962 329702878 705922402 606974960 135489248 228445636 956061812 331678997 138269684 849620130 955085397 767342521 24750629 32163873 10713281 825135492 811485420 325720907 874470664 525792556 349245696 247764872 127663911 494024346 80388027 474645437 899679568 412129572 416239084 799587229 945626053 350019000 236474762 781533510 152317857 234912728 301311603 41959046 842961506 39267455 949515331 356254985 513558673 337495906 217267522 290502869 957964715 367576514 425555891 45483125 813216519 272741905 717216256 824977777 830389913 267219526 123837893 24361250 13582979 393367333 607536457 202771298 187919507 197775589 298950341 225509843 172147114 353719115 62989331 997210627 636139691 88414629 997461427 276396620 796280644 350976161 286795280 881953716 682415650 825861126 285201120 528900313 133247522 3644618 179734171 191374422 829150106 816901564 885709842 148057440 660877547 833652378 816420033 428077954 477858993 439951138 785162042 370022828 461321738 919659538 593361395 493051061 707709363 261608162 48880702 78218742 950026585 455420821 769178643 900186807 371744190 561829951 375947843 990425857 112831265 600768027 425622869 831412022 859046368 186290605 532348207 570391602 199251766 651185629 680287931 331909350 65547520 578345503 270343479 844844379 124767406 929736149 342585378 977490562 685483881 812775211 207344687 513637895 929687189 621353023 390901052 480324695 193019598 918202290 559867889 157236551 877705350 548794683 768113144 711082655 365791839 107385087 586248824 359755221 951343567 264399042 939384775 254185402 156811926 793223301 388231472 166423707 95963537 744713702 532287423 65938017 223547637 480248995 892814868 752583853 431630860 315792263 17657626 473917448 735816028 906653179 300850226 28782515 706096355 808592356 749428979 432022611 696457923 449277966 200938827 361194918 594365317 454055192 154943915 768562359 844009643 471702838 452452100 732547858 795438110 753627882 400378111 929575364 640123143 21110379 588994789 358125603 342335671 952720679 166652055 273892704 678996164 920987762 243598308 337835604 868434297 436360397 767518543 182182276 695633194 490807520 917649675 960755075 327936633 937243794 37387202 159691024 751493186 66330026 24929483 120464847 820926801 461259818 985746070 874993175 986875251 859640084 188198873 300588226 382825250 569737746 99275891 750905669 797467527 446433722 326042807 33250184 531549377 898018913 579426947 461651184 435848832 956598301 82673055 210760193 481866900 295724290 922795040 860029731 339130418 158717916 117753264 332686242 638320569 739755959 419188050 179630084 326958158 366252442 742315138 681912424 500244791 84188743 598351380 364341490 774294955 386434880 3041241 571911892 530959116 112902649 326164728 477621818 832552645 265091562 853265985 123021399 628149222 372172032 697854256 892247628 572786931 306852928 485908102 875134844 867644000 615949337 191531971 716044048 672929778 113774147 592242627 346466045 30418764 230654786 520019084 714674153 136405190 79881524 629638792 147440384 579346706 430073867 484195830 544726932 947390805 612979981 224797140 640048844 72428346 371463301 279045694 11774481 715796527 711756268 799130404 361249538 940667996 161637546 812546195 409706198 24356250 852292658 363861272 804981743 84160708 273987354 814195494 907754674 452251196 62405455 480089237 521737297 721558139 101376904 430983802 848374397 366347919 879590862 9061528 565073604 475381012 124230302 758623541 426079637 707415537 583495758 876937344 915782752 772102824 126580648 729611081 270855965 821747094 946901074 722487556 71090679 511907888 637941619 584632006 327491712 968710561 555811263 824441378 932444430 109075527 57512689 762234993 536253108 768308761 316764739 93291064 569781704 712971872 940557202 494817685 657516151 612604232 378626474 458652099 38822088 775987241 215875571 109340654 905108827 489154806 778388312 711873 963723924 492864441 361383800 661300135 12569734 910933538 773671319 958604104 599253814 879116584 278141154 830038650 760250547 161373846 824943124 287661715 655857975 576845181 151287349 548939083 645831891 400786041 244349883 649317851 314023560 264994557 971408031 229091171 986323177 55367752 724121602 477286979 593064859 994759251 362381130 181197555 224902146 317232761 426056031 928418803 110291275 382881568 168076543 122415428 886758955 115901382 819448616 187376794 338356142 330622611 626637483 500406554 673815932 576853090 682107714 206527184 627929308 82908855 713666462 953012110 115420146 357795299 204863564 942452781 929612103 733784198 604776402 393982902 72976585 760486495 539381334 64158299 801738786 103574416 4208859 432787430 981683764 56372777 757883389 403337706 866398499 406584396 227753214 103390058 301080246 219870013 757510181 498220462 423543233 269336546 336536886 110744233 492669821 382322145 212819464 900870468 655005450 817893938 656035344 180524900 478234328 717944762 783438988 390616503 916905969 955137087 518445378 723681693 685848083 278214707 122880077 757127285 760507316 334210912 187189912 406323095 763307811 803051100 356324483 613203445 95677677 906271186 85795516 24254180 882846560 654505891 889865764 350108702 60066566 7567640 739085145 367378136 482311370 915299885 220484108 356112273 660922584 264581253 881930671 595764172 739762320 103367203 391133161 181625431 681382060 661012633 830090228 617943088 980959506 98815538 984777075 652738538 316025128 600875194 214464536 124204692 344599637 968770523 561145126 115508758 592872451 599868407 603140770 787988446 45880042 674385021 670215671 643001672 439989023 951396758 622350666 589282894 488720694 212546403 135076812 337012763 103191167 834543941 892255538 899958920 97044845 269428349 868542890 405290820 85749494 812666636 12815872 337249015 348176153 206560097 37308198 186758825 572168431 410402298 467054359 219358076 528058296 569036518 761610125 407224601 590851241 739887403 533935039 977457087 454976982 114661473 694806008 265782623 118730206 13642771 977950790 13988858 987838472 690914022 624443635 370406861 393947858 488186653 281293503 51833867 131594536 264762662 42477215 763998620 367401564 651737301 169576577 491654311 581460405 698366955 954493157 268480103 189041299 585536079 622408840 405244796 226527051 31029318 751328596 292077685 992820133 604617549 31382267 170013885 249582308 289262451 346517539 437178718 69593996 600100544 200225652 665661084 464665557 853156918 7605866 156902131 460741886 396576767 957215781 859567197 220318201 461850549 487021421 595129682 151736993 927627720 531564610 839408334 826762949 860192715 943628063 469455022 528447771 495269373 247875668 276597973 19995729 614734505 314595910 16296593 856406989 579923987 868977672 52806631 849232613 929085450 77963250 449489182 238351572 729215795 939114886 219254672 518707132 400814192 990828180 480921502 687452530 140929555 714782199 177508430 103460077 106417421 45935707 892999476 24555197 791076004 790459483 536061023 312259467 778317561 193013183 542680444 923054999 243231261 808565308 539719940 307288706 97246789 991186708 91211483 20787720 286685955 752801313 447450190 363587358 749474866 279056543 256816020 864048286 356884304 560551402 7124708 593974430 188858765 976878311 195950345 29053088 219966647 231113803 572375766 618533228 799096621 514581896 417967359 199798592 485551512 391933585 569902821 992381156 189432460 928859891 975141558 66537405 407338998 588893458 545778465 925616147 459571983 468777822 264040432 233805008 703022168 232472399 921110927 298608286 900967248 951557718 962012826 231845687 485150027 462403322 56169165 194706926 598479555 724932795 648870868 566741037 523183686 357130082 849374046 433061442 549525849 685963743 95283260 163465151 856823423 313963914 924791055 139299018 800922848 85422145 258500095 242144919 456904232 751189901 869224807 505185888 726090668 163657830 114532482 263302763 64512745 323910758 760862525 262163577 927830605 867225880 357435546 63700810 911538741 202946961 625005699 743072932 856600010 729316714 968939863 378702406 14283373 772932892 234829179 329245579 712895634 133934987 614477438 683646954 537569946 709267650 801429474 507268577 439689050 991647276 805643622 295562829 299076694 540566251 454095233 699007005 468475963 265491316 230037931 813801420 745097844 155986722 823930264 50108391 395080384 452588299 107921329 85294456 459272966 296984098 534002083 201300419 662297830 140807079 643921318 429394474 239951035 778312226 273338355 932746237 521004045 27244633 766855700 350584566 462888169 227457034 543514632 854370031 710187372 677536816 228991213 917433826 944161927 281076175 850645075 33756771 541174232 209393049 819714790 108000947 44642692 695305928 164288327 243920255 124398724 495850245 245150714 550503766 314972631 144730145 13911870 973703555 570717467 549571645 21895218 392287806 541698337 234063596 461982943 626362974 268376545 471344350 942354560 600534851 509485397 617591673 907668032 957481473 639882727 877281592 398530440 12413200 372878230 89586177 609026189 533580067 379529548 791451915 191348910 791066637 927926928 86561219 885536385 920502098 184845243 25977749 434954066 815393441 676269900 735969242 742026359 340012623 254268417 402910568 567855136 661362669 697478460 470104782 184454919 408353197 723354986 807654852 42561639 818253302 948580452 203774112 714649211 923184232 877808624 58971207 677636886 615389351 378896743 941508399 335548135 464575529 82999890 354956455 606797497 283176383 280250755 682452915 202609582 613241728 675224355 172251660 92854909 187504160 575779966 805335196 970865196 30353365 264940440 511236060 935488751 772779014 185829502 171017667 306293876 87416194 44077802 817203050 429368412 70992202 728466158 800866449 582012674 934468283 834643953 742388845 979515072 252235333 439478940 443389771 396729338 404405726 729442503 372098535 474615842 321309754 374212100 60985556 312116719 968780351 344594732 664719545 554357036 359845183 7184038 900104408 216618880 972367768 327061990 30226737 885843896 409821677 490768454 215576053 144186393 396788163 421481277 467841688 206528142 438105156 803850764 559351430 786322137 783454823 78185845 225484432 209476164 679582651 358341887 967254222 245671753 407825828 372847886 631107560 192288847 681969075 867188391 365517144 317231612 911367356 482057666 621987488 555512195 579362755 351590765 650692788 416486104 448304918 248515446 569938625 792931521 737717823 172343429 558911269 664825532 479774515 55562147 246674624 911981850 582555472 105446838 499383876 417401877 407474294 671092313 337005069 454064655 845286658 64530188 305315933 308536766 186273992 301510331 174565668 388191793 610767908 831521222 605078429 232252079 413133146 113524091 221047132 177111544 414887854 257247216 360042491 419574931 159701594 730957704 892682744 329687221 742991129 62397678 427860512 603546991 48422481 392406542 205813617 658109482 48101304 246755944 435584369 660360101 873452995 973900721 353029266 287492360 160326449 151062435 120524357 759317546 922587586 685642852 262609668 602634617 673195084 32052151 82912395 314139123 552977651 865031542 789590826 119069086 101784905 652637486 370214529 75496408 81466932 256538884 736212924 930147412 890772351 360958765 91804957 686255748 675041313 464442636 366893715 495008410 276051999 415415551 655479843 860382699 904049449 807978614 801992947 172488149 854829035 905237864 768598205 730899039 263274054 795196993 342733786 490216397 845377198 218205732 44843253 636568020 618377009 467977400 595334988 984372198 905361040 296215024 979935445 828137672 991321921 179506454 837207066 500220058 629831310 562997544 740417560 54620802 318011473 973586143 638454868 984497451 384434266 907712763 402852071 992314868 966955741 582041105 62366461 24967112 382824193 69600430 508009358 196716529 29298116 762559246 312269093 776132613 460361405 849891056 499070064 109816237 257908293 260092332 281917706 269238633 244016132 453294350 411599921 680973028 78639720 424805650 14455912 265545477 923985721 605441418 19101032 665672950 85155908 154487947 587267524 738315376 442314551 409067099 17004147 948159948 190153949 383975019 739613427 891486291 248884359 276330218 757273394 114932361 774271188 643078745 780936117 308220706 132892909 994711261 876823223 375912626 61111315 577519659 248531200 127079709 468894803 12158212 675365305 416160226 618609280 183205221 905272579 153773279 50781877 317453430 178235491 618837317 635650067 279622641 736320030 644972012 294726816 488552017 102151571 805238992 155086353 860815664 735411649 101941277 545386097 207187788 249540997 202414295 569570358 230633306 665848783 419704701 119536986 299315993 744120692 314852874 584761114 32667500 992883252 785828007 615383121 326188424 108736598 252678780 296033424 528585109 97349805 597172352 513855377 584623507 265158720 255780344 346763563 892391711 147520176 521582860 871929666 117159840 874555753 549820489 160768426 755685646 281869373 951667743 654847234 246157400 750591270 691105470 483270583 828984099 907740312 945947429 127003309 754647922 260174265 161143102 614292694 601923117 199556086 202309419 757938408 842893138 876131076 684211136 451285482 981644014 638957835 568110693 17742307 57146510 971414876 740095049 632012124 257440128 922070133 644129272 244635035 363228115 445890972 767757664 697798485 209037751 968542563 493023620 55689089 937580008 927864455 196469147 823476686 135786478 335755324 863680488 581430893 550997711 401303215 67998134 714531297 103491859 542238281 585889577 546128766 590963893 349084018 453865665 972583826 226957409 453440314 697306652 949726993 642211636 80667603 813412735 108391672 150406005 740865665 378890134 439306036 533874692 724233049 280629750 488988468 595558748 153934346 184852710 469131893 840093173 267698265 983132578 475227104 550498776 5873117 653220621 715243156 730558899 645906730 467191282 761337702 127300058 832666847 635071575 264417161 257317314 435324236 818884563 257358921 918638428 382163707 917371382 915739235 353246009 416063074 723333868 624657668 358766962 97333621 47998723 319934693 515727166 381720562 394963248 340844430 701780782 241327032 522100420 980781132 33759077 188042170 30229129 366302953 9331734 522013809 19378019 266388007 743908453 185517828 341133257 569211353 653665128 341471986 724028402 890135613 678979147 3330500 995796660 188903392 178736168 904904410 186837679 886606507 748775855 5489146 888331614 767386527 981856803 824932861 949572577 865209136 84556811 783756282 52787581 923004981 615957236 374625560 358544585 330375548 560177971 335192960 280830899 283422369 302296313 315512419 767058841 327211670 961709967 406253087 729045200 405116877 822374769 845156871 406697004 385447123 346200021 702919236 40231364 994043888 994860382 171212429 354118511 23633412 869885160 197470390 832083898 312648728 565806209 337275125 604119704 395022167 354633540 956501727 637225393 617140434 359224317 697294094 632949548 192407071 638452100 275172586 373161711 363327927 697472794 521734361 903229908 28453051 586217296 182037330 211964189 741542939 328762235 422842952 729764336 610461437 816156991 187229576 306403209 651727115 180128129 682226234 556984497 617323882 708839680 164207170 866898646 856678015 875405261 950067512 983811093 376957010 351830568 735160894 805930479 321086675 174319876 211584432 325819804 647226453 848979364 861805086 225516621 659460364 88632639 430150667 765818646 463302854 736082639 856088124 102779227 336156658 780299152 13914900 845203975 582812248 811445138 686597024 443287503 306578098 834352223 869600931 67771688 869008361 103746431 498124987 484047868 637438446 299671392 582051787 163778216 154190759 536564720 368740850 701878710 993262321 62247525 311218403 975842681 838250786 925704036 53235852 615941206 964716687 81251339 924384547 669662192 255843468 92487228 470793133 386375077 773132607 813752266 561127587 449211412 254760922 745890960 505007385 113783468 584154792 775457879 934997028 610730133 882461470 656239703 929386452 493237510 85209671 720759386 50156953 937832263 459920772 597098346 254416429 151891128 332406203 702838695 643670956 786948797 773402670 249664859 700792930 940383912 877838440 791248176 737308985 141664592 884078375 798004118 807259375 523381438 267913597 137923094 310896186 287042065 685229734 941073151 243122949 994288870 451095803 119207872 623572050 552639919 71594993 140812056 249462821 373100600 479669021 780581256 755561569 688689822 331431872 144091821 611272357 55048870 455884758 239965166 500845629 471690855 953109594 339028164 441817224 343043339 309986729 90697215 335061174 212788837 924540447 932696260 961444033 659457828 591267095 563569396 509401461 463999715 919097428 975608865 624573904 761991867 583765248 811041584 694206323 951297498 207690078 88852393 518296716 607989998 165959581 839496092 931546217 384540696 213416783 908559725 389719752 559980272 523704225 238827783 699040010 208494332 848991361 482438548 506224175 15835869 60635616 679763179 349304955 322505807 955362936 572620702 505793129 985820644 123901169 384446923 198287309 38157644 730833606 931034991 617963892 951011807 802457301 333697830 124409011 768555476 632492289 847635725 271875672 157975368 93947469 183529771 536305938 652395655 478132185 810689414 882124693 996067737 214176482 44754495 6857696 431138612 962674872 335539079 775989911 369145900 181497642 760658269 355696958 357950859 679068374 90262828 94718451 793339691 492382994 944412153 142830497 400609416 527343485 39893630 242932329 33494178 58328870 866135857 899470094 186350232 369785688 591278773 196962273 147733052 387017388 228940946 143579936 403671204 534076236 172455102 985816625 478597091 989963449 103166084 417153335 854004537 500426058 908604770 858546399 103394720 465943266 130473511 732918566 493853265 845309072 915354637 601779958 977110419 472093543 875683729 627959186 731304043 161957228 82218762 953253976 434534531 579936097 101612992 254686564 972994703 230213442 21778371 214791001 99071926 926464165 948360597 651921728 537255894 89704904 82146050 233879093 203255154 842090868 30728722 132607422 606395449 876875395 352188603 380546703 924088477 938328525 908305400 264011819 831957286 97451635 449610779 437675082 836744055 350544727 851264590 145302165 29872941 400971531 509790417 233210900 692319071 424139347 627327657 425432883 989187986 870672503 966590356 557928771 249770201 501872195 712622267 213642648 228973190 11041388 996854712 20081859 841335256 237146168 888474489 230758874 654541712 486752424 206623754 21479520 753456643 24433240 756402613 994264017 143758913 837126057 441851115 582350333 979542400 171767078 647780513 961079142 386763248 955656277 335084697 185394637 322204794 816279245 54035530 400951627 761947082 70816957 212071729 484596309 375851876 848446950 71317518 800810203 337270108 821551331 754191841 756657761 494644140 295453058 403695489 902685148 59405386 72769032 715463146 918566839 581866369 648304414 444723312 283030871 603475954 760288441 699963710 843077459 326816214 398584391 706777707 141424864 569875427 961205091 691706410 883652450 274097844 965546554 401032625 346343815 533049129 51220426 473490480 402409559 809705910 153171235 546247867 744143613 555947393 161025071 338250950 244843816 756245554 896552154 573290193 19514382 849167539 837641526 49481377 362339860 314345607 542422533 847969797 640101539 525268027 160973818 239303794 544945047 532730144 340548003 916219243 980179625 330264409 887934688 529776598 90208757 784139857 409439191 138462838 95735444 646328844 984075562 682325417 753269029 967656337 289737743 412221976 163890790 398628898 683771893 662461688 275307066 106167896 48923470 993206719 883862957 221196980 281514935 473951129 750004452 517490156 921376746 607239303 271181791 697008460 553183348 835233080 280183874 959764157 628012158 976690604 542859112 89084218 263415637 820671290 738681885 68531556 366788598 870689038 629749794 306216649 981959529 75264486 973491756 846117197 594651128 916409484 952406652 635888646 988604696 114219067 351668131 851244657 673738891 785497872 98777693 247131763 651756129 176148453 707289706 454151791 892004394 575039039 769315991 971661120 134001643 857260379 670767888 986787076 185143795 112976176 456399709 392243750 198730542 464025301 952805458 11228838 852085986 101518190 610300889 127944780 271328620 144357131 137644063 111710691 369481742 519183444 913734448 781221602 846975781 218851839 453703711 225080966 67900076 771356523 453468241 547488216 626360420 563854855 325542050 450950493 666658066 911897278 369584223 860888261 239024265 990073435 714848912 821820984 336386307 530941119 404555239 363964179 942037084 800691423 833055522 845197553 474008556 98169172 520202647 942366045 749311867 814571127 103965042 388910994 501487141 951310573 265394986 528812380 95631704 511472580 766584306 185953991 841347888 723460331 713263919 455523200 161189392 942838344 115159585 430134384 707017511 85057469 4934785 651355073 368478503 611066185 201496136 845903165 953728388 502250176 64167413 807702333 12344423 509577830 60006092 349088852 425423723 526858620 642895309 627407093 782520457 734331356 726674574 541654801 291001231 140257894 933369033 477162315 473144201 477315108 689990318 338562781 678987034 209642952 983504086 273314581 891372471 763475630 700685860 126031827 25144774 735117378 184227905 705428692 156357566 373113926 868227249 42260952 853330505 817995614 64022456 615828765 262717846 917842296 881048831 444121859 994415788 530393371 304596612 750816240 23329665 109537874 852925147 645786209 381056621 551816016 245905465 326384777 198630950 909460134 242950000 768926281 235982262 13883490 669281138 130121544 398839395 63310359 166414816 100322776 766999678 748005912 798889548 971397045 199878585 751082511 406165654 935379656 984823479 299485616 341921666 700510886 195667024 76385199 984789733 492659681 499319116 568307933 145752260 9627569 293409825 197520260 126114854 95654916 263855135 613307047 440379014 222873175 442781982 439132661 44638034 452531066 688405571 398357500 236900878 142756973 420667251 535103712 861794426 238996415 109141322 979706330 837310080 660268700 530720139 853671189 794104301 901203489 329302205 501978904 363429539 950395655 865199699 135884126 234530055 864509337 929194170 661687484 772231851 923830819 429850217 978882607 308952257 955488159 308505634 572513672 174511348 54377703 758137866 937555222 313389840 508265416 527953328 340527654 853327201 20257142 541449804 728349665 609166639 70652065 543608564 843915269 735948083 490823924 948654111 35843143 873569207 256809003 885324679 821731795 320317553 503478664 876655901 436381636 827289536 348755353 347963721 687944607 994564435 411642318 705692032 97709379 102181486 864410206 33813129 736733556 150547579 54097274 434969097 215585691 380564764 928916084 682545634 582544854 284606999 959697417 643940046 967232250 696877746 295950077 572455360 624809785 581443255 689038688 539763722 649365566 285656204 177030375 363467786 614922074 156594034 306825508 507474043 695944214 583431391 557393571 91781303 987507446 690814982 708340753 862375905 722508781 97869355 296106674 844952751 915146409 261246044 897700841 152286317 158727322 560592745 326898364 273075055 1447876 361642516 725806365 318808197 464403251 776551109 695456557 958769050 434154744 474443065 942553243 178420668 417450913 539423837 52585114 752450339 676331817 573383069 993652355 413301555 661662512 262172971 650698244 178031759 325571097 148122445 968905147 419026774 633259313 867116147 204128305 910176329 643932519 194972030 379628119 603374195 193711630 899120568 434877309 731663149 136615188 8088887 37056446 468526941 298535852 591525060 456511432 248514175 430655489 150334121 402749548 125523268 248694151 715104258 451181985 859036267 755569369 908437022 672753462 283224582 667627523 853885561 945393380 283607065 774708784 343720488 820818225 826949584 345685209 32319541 46442893 526360433 954517256 489395629 155290468 569989810 186208814 455809416 277316138 536173718 988363150 701103342 607223118 165179752 540654299 317302736 133802710 46624815 619724266 241339232 139280095 180679387 540487448 485170133 103801298 635982977 409641903 767510120 402753876 638013065 480357729 756161545 124029107 502531200 196095693 95541955 886165369 345715961 339174258 949231222 675360077 875811423 404574858 915073209 53915135 448533719 654864686 262261678 427271024 605052803 924076152 830353568 948395503 169940564 255301708 200497177 65222364 136513349 167828866 742471636 616470856 650934192 873508866 493240183 303025863 228256412 201482330 227571789 628433077 229232651 905743706 984434483 12235769 200579925 785053700 654047349 982767052 509258980 685767548 34507997 932412223 362127002 790852698 934167327 420491663 724165791 769000365 318504634 71447915 261678780 797282840 555311690 37788720 82501577 503612602 846924784 192852893 64857880 976256716 641995582 533578045 882467626 48586095 239322338 974111952 384754563 560176705 276759067 804518886 862706892 522303695 448532045 434475860 274103343 634747118 99115380 58678478 305490555 825327581 576608402 994713374 868648935 981666341 513322107 892733221 624835291 113176556 195423430 185910340 396685045 437620126 59721511 772838058 943126805 364853685 405704402 321925389 258577028 311157437 250395786 914701579 584224034 194882066 302415357 684476742 140517814 901049423 981498942 502166027 624258865 198252485 808329141 311347528 824227544 527244821 831210154 267599230 175218422 551844636 421896321 963037269 113398564 269587527 285107979 888061852 949756579 820947351 752855264 382100297 459826579 53843326 811788339 457159543 75918649 313675543 756754561 794921601 656630893 775604055 462257860 151164942 532979161 725394062 890137958 14953621 876220131 802153103 876428164 473186433 541599572 742437202 775051957 64579363 418071399 93489077 870089071 32925787 338642385 854779974 196384095 899328893 681479997 941145884 768117970 642439014 765284431 801492731 337084026 746905888 480785824 730765589 23638517 707298599 437973980 778152910 216479947 976084968 425898333 858077564 831999871 632423919 405752204 278928871 522738149 888805785 353032819 592965470 718930870 510978100 368211642 710254184 933843377 872136282 674967056 92391974 999013110 657453761 100975353 426424871 852850832 81201477 629346641 563651855 118818970 919562073 532127190 450521543 77714242 771985327 591519009 373549807 991634600 163631847 307644035 711941217 943640278 632067380 3025413 494874421 887803918 864653043 618893328 40910267 365528770 820324019 44786661 91912676 334165051 401909816 232994027 942672543 489759452 600007561 369042813 500269470 675142121 555872183 319210388 416192953 248748430 394451819 230289446 162216984 462366199 910875812 242955063 118393350 268118148 676287819 539309829 588525656 213926592 422567965 57280784 166886364 178463329 262183535 231425382 846673291 560866963 201888089 147235506 423822829 407420219 800125190 400262295 650616875 324015272 786674356 572000852 330687087 770768954 989704154 464383713 510874272 476909412 238671078 979954236 447861435 490719295 722621738 564084509 837635342 177205889 410907374 126547470 821163810 457696182 769770516 612603168 558834430 164926280 985660923 895832628 372286560 634385773 973848916 935677866 471144071 80829750 633429397 497054283 447964541 249107783 867545888 276406711 154158467 666375355 442089809 630685222 296193238 435226613 515086497 499367254 271422105 902378730 850828196 813292413 466300248 419245504 848291876 523011299 749199460 492387306 586041737 95528155 122139083 10672025 688712509 531824110 516757541 132859033 93926389 924432396 789956411 820645028 397656696 963366921 649694199 810254797 367284273 379847381 419284193 936918416 940314481 175078591 969476439 262668133 308066686 436629921 208852682 57779384 279575520 854496368 258566132 916616088 783137240 245222986 42572857 603185597 926332446 728438277 137355178 554200250 394350841 224560992 66991998 297175580 657843026 32337026 564832581 381531528 544419698 649258419 489577872 591229498 360908054 713467962 300204087 314309883 153681552 182085913 134682303 202466160 184195484 869013001 196084844 568918886 696823863 256705106 280858539 576909453 821759384 586207854 505478420 439269697 865507398 271335453 685549097 782887716 325397070 499683519 420509923 215191110 638133577 187626157 741206181 929979265 821271823 734789361 165352146 287919724 563048944 50867850 36982752 54478898 450685899 639254694 580905984 668003882 255010729 438931509 404166448 383688444 301440177 228956519 914825306 308358973 451234812 796434594 232317769 976509757 671636377 469038281 959890882 980559843 426462106 245609970 960988573 786698496 678680567 608636242 595715280 902365304 463700814 606069345 37024990 613395611 495486456 306349056 631765136 236001022 125889562 601819524 895777238 186838937 26200823 13973328 153178094 18300349 690686552 908619813 632528134 179864785 250862544 166918851 530548484 302804116 935828448 20454751 127514014 594128292 972830 393242811 502546284 974464850 417288621 911928321 928676113 172732600 431922470 577625741 226189421 777226628 832478643 743967864 304706414 694515895 296516933 657051266 795055832 800280703 263132298 856720427 740786396 871622499 296491406 225649439 157335140 400322089 45997975 400661299 128909126 986523841 308824107 603036652 85847291 134147193 881371502 198237689 337515086 441842441 485196460 73917102 201631376 646105736 720924247 144718139 626855421 415244140 921749896 980314812 403565717 705807491 935348541 573794047 425265217 608664452 51343639 708970327 941999071 819055994 240907687 665890055 249225691 180415125 730928605 839422225 816696430 330906828 610543456 787408947 337811036 882234492 950780235 186090876 585145474 300752763 289430403 648516709 79533517 121119476 250656404 127148137 984405054 296422477 994643763 666769488 575241474 433985935 234343154 963783362 669115945 257316569 895534306 949343588 825395269 347530546 735557436 522056025 879997623 218077353 588558966 595963341 624920447 360679240 651932540 809897932 400447198 544937483 199851709 687421511 840223643 84637411 691476776 94016787 520381080 948692552 700832947 744764813 445044047 455887427 167484172 310959288 614807763 165127222 962263797 295059357 7378283 640027517 796001863 738631037 68504358 956860128 708406051 629182308 388463772 792257816 478157357 155732332 464082225 148479110 408884658 865368661 183423671 800161021 29981722 40211922 458990284 454883363 390391176 996554233 689546670 912089746 983556971 363290785 547118737 984506763 128223846 41625242 998011288 50085333 502852111 92820240 550425083 221085356 8729534 718256614 634140490 784997485 551572800 110626635 418514907 968973784 277359918 482908624 735948463 796995943 816663218 10461321 841701821 342226679 137467296 843479984 81919633 637901589 798475518 905019197 618037221 954667516 444474388 506792081 597750961 731117675 746252071 957218625 399843788 843320959 103847731 761752507 302622297 485026455 404584397 545261014 631913952 686079412 649370416 273570179 246699360 182916380 589433191 384981964 210076720 223057109 335198323 824274641 386334962 751438764 120159185 409219034 906506878 51541409 190630195 257809449 242110418 444663033 862365593 393182875 951414316 487835100 263888748 10862414 424943323 956217482 600290623 503029719 176837462 915994569 475840047 327998666 985709287 547446315 704730293 247882568 665115428 583627644 194161547 641186301 226647372 982135994 873999319 216518092 843993370 532249370 949766603 140976843 799868384 300752342 915555429 33342975 313031807 301386911 783258732 327235290 799803315 470513325 903289218 239854774 847269081 597201270 804527115 822420454 704684635 421995566 732195894 441541353 641519268 833831083 82069489 336288203 495819133 716709786 684206535 787225498 844807841 108994943 73749492 804873653 998343519 342736886 440419655 502457464 241914539 239999306 466295970 267193541 527060146 162596571 886836076 662719695 628014461 666787439 123135075 380348996 638919343 834483250 998859450 448052445 707016665 866270495 469661854 857740766 35807558 525244530 182617011 966741616 141529315 277655712 137510712 160676190 530024710 944140036 359999957 47883696 341244136 343034720 408584096 217882883 779820764 405684759 288146713 645190794 73209003 131517677 631751624 907485784 854714009 960544224 239550259 952657653 791914652 75331167 262958024 966734209 922635937 281166241 654453657 283454349 578153731 985799705 674254973 358703254 143562944 954196790 857495458 887859440 266850428 899593935 136783025 65897160 839809040 130207810 783578982 141685645 156575782 972055284 747317808 573471221 270336431 224896467 528293673 680278722 396669756 542509625 578557199 526091996 167660076 135144723 362541020 605956793 552728023 436907887 404161533 490880922 174205914 688271237 29604260 532089893 140257388 916988846 176631976 518213907 905576597 150593533 303164076 167839426 731402772 564324724 336819960 357271516 756346017 907244629 186650688 196445243 623945058 714368840 43762374 821392914 255130527 518193391 759963495 271904032 390761934 152737072 138087609 809073739 71472011 216707799 906172574 490521141 686161598 783501724 470709584 993656774 328135723 668792241 288605868 136161802 175836011 535408181 701445905 375174840 782745009 667043700 285069326 535103278 649291089 732262486 376383764 940127260 29515673 401147682 390063128 496188510 402906871 179992047 355590371 208292374 580500171 208258714 915235296 639563733 922399721 973572495 603763922 454543743 137517649 630671414 434576491 658254765 18526469 785269046 502492031 206254209 191491669 833494832 767753533 787511808 32159807 430708325 315272248 840960787 761851592 207584033 936967438 557879552 478679404 76683123 644109859 399010396 226424277 328794259 145572065 257281923 37906214 361875247 270765170 271092653 26514900 820980973 765218056 573402429 807596434 237439199 834760973 418435219 125349454 264942217 464575638 562290215 40492856 589613976 920760548 179492446 894323949 179391461 192847075 428709842 833704567 264708299 674001284 697648422 476777649 301264123 876580309 147698692 56266047 324101531 948635025 516629149 735151088 470504075 441490207 471061851 924719781 535992703 387436854 93898574 932721121 681003404 174502865 554806444 89553776 520620513 145765334 192294642 833337387 127030837 413616559 303145607 193474328 635113728 802596896 182318516 709731450 245822334 94464569 287759478 741221248 577403191 885462891 41807910 769771141 434139408 794155570 458368264 551124050 300351256 114563826 504044453 348611410 921028388 4267507 622657917 511124523 299956792 210515225 112954887 389583419 449145918 60352640 824557132 904206403 114420126 386682900 51338976 925919557 193568529 246076872 816019355 241562139 101220387 990324910 799882858 108635408 831893700 354386150 137694990 463254702 916690178 154610891 974907575 626122737 468041927 945071831 500561444 979957591 89397546 182069465 308318465 932271450 809780428 541700784 281799379 118774228 911098071 480589489 675533127 822831927 722637420 97827881 860284918 310847753 22021573 664180204 389162443 694997807 252012446 808633741 718116702 362223334 337057024 776452336 828369464 765100131 898943217 175336500 741964362 869547414 308099818 831691023 74520766 256637985 855783870 436818458 975411023 297522712 249863013 857839041 199199654 4900613 864908885 571660592 732303816 983445996 132961450 506399556 443833332 245126136 383828868 2454591 589488112 380763544 729701635 381966413 459091712 171978156 96221742 90082699 572295415 76695741 403248920 875025334 880135327 778718499 753465812 618892166 426620077 159444350 677870967 94099352 553202058 682564466 805340134 750966714 954672549 353400189 173570005 508642842 159847441 616321803 928027687 945127828 364154919 29291234 13556446 308213781 604666071 479167446 714101793 271354741 38244013 529132619 437546336 735989338 802040922 924624105 190665051 431632052 456794122 755437033 906831780 769690003 610618659 707730508 576415574 718140178 253163697 466273103 102514193 841078195 677178977 960997213 583278969 717040521 147693148 664101127 987832976 523444467 595042232 212167234 404475094 740978572 597477134 632049414 251444452 121239177 404749144 617165115 133733385 71214762 24192380 247346049 991379619 683375047 36757429 862079767 100904548 744758842 446087906 740773335 853107925 694208358 543381040 72048625 775924722 124507050 810122453 133677649 939725212 215765020 436312154 348556015 743826177 893454964 111662430 514016133 885774294 545411599 2984999 434093730 595632666 777911814 3969633 743738926 8619160 11802940 290496144 474197979 50500321 21121309 56276737 37963924 225364328 271267351 434904465 184721710 139206671 907041963 302909221 470364310 646877523 734694846 955419071 416892477 971901098 567867449 395690148 841145477 900906607 84305076 558724202 341523511 629949956 529317896 844678886 749714099 176800031 845415969 549161664 282625802 485945845 987229059 730774261 452978990 318137652 280410844 98819550 882925159 377801918 561722801 332322508 590091812 97825305 18038995 994278939 953850816 533318786 66915501 472412730 86428130 802766936 936099813 651461059 137212091 137454001 406267922 403636435 417541625 586066172 990617143 315755109 559144191 24827651 626131048 6256574 816240916 554794294 365621171 682178107 427817114 915427177 430071687 808157048 606298803 262453124 330122976 271813366 31211343 434156808 425588116 109883041 235239692 712699587 57045660 912135355 620462948 923847144 376510799 115408982 416459128 751072345 441938917 842353124 126528742 648282574 553577810 992818301 736838863 240627844 985328539 216648460 420221263 852636045 367571809 380692168 557294765 397106022 464118091 909064243 115366379 625786475 205183594 322919164 593793744 886729354 598984851 532972801 44583860 456353954 829252162 198295806 700222759 379912641 3311196 514361816 374696987 362745022 321350900 870289745 9784675 268731815 619067518 573223767 312276506 167093759 897149128 575020974 957013700 646007892 871672600 663828855 228753657 517641359 352584253 822158739 402055464 618513953 53059901 631027039 265183087 487516173 918942395 993614729 895771287 980009207 774093930 139401010 280196337 455119452 85985452 540010543 880527101 959714437 262198496 848935027 525207118 369556813 289277880 978406567 672681373 155899753 553076250 20053345 923135875 562122286 999358705 673439261 525948696 133654668 623383711 181721207 995578512 758324580 239150635 25091942 486647847 591523191 382988360 180353804 586892573 144673620 328659803 102000027 481356140 50928593 788806258 938013822 345695577 242896983 920059509 848259235 395700889 908401514 742113505 258910975 534782759 954008394 849536883 126997966 227087210 954042418 384901288 956306275 213079577 293645532 864925926 637954661 250974709 656506772 318232147 683715337 165688174 136028697 655608888 481402890 281985137 208775030 756877671 138012077 174753962 670317176 545630433 827507658 895079328 344742962 459614179 123421031 616978940 49444834 735946676 495765435 419060469 27602441 180878010 506006071 871325908 344934475 447224046 610877651 691422093 604742543 292727525 574583685 813312636 188926635 202322722 242965744 387120580 300551709 94307589 826582654 362912472 666819869 321122011 923374555 938889021 816199140 716173355 10067238 721364128 615061993 449521974 539889634 58567231 607671514 792295177 876608185 370528797 774272047 593343692 153837404 898467178 533444636 974317863 271070012 308456504 321222363 502147197 213138470 829227420 321054733 516630732 643605572 491218166 847089302 76615331 68120955 488946643 793045461 137270216 16295881 401304312 790819324 715923596 596871115 48316225 839253668 584099844 917326145 509847512 134859237 404606782 715112383 846695935 767267413 22829242 348518859 304965086 773068665 139248094 892891995 648649508 683265955 951956060 638051797 221593908 630497879 819261101 583634620 323724721 144325300 110670946 469751119 807225150 28183974 733257211 331729745 611017665 110187924 523238286 506403650 37719728 470706293 543411111 550265422 455615603 964266860 887648478 455111236 151320065 27920381 432594932 591753101 768619160 887803645 279231602 867288944 788643801 915622038 711551477 43636659 199181020 261672028 774991869 78146281 180047110 233960506 979771081 924827263 231099848 653797205 139185902 115054441 130968306 459678201 691399843 813150871 245159106 211719292 135519500 204666048 162148978 963433201 514524051 474389525 504461924 516675024 623992485 329534207 128597506 794621357 851874136 56500712 84244288 932280800 643575475 667560101 726165024 51781040 77688575 653161020 463653271 249187711 871391629 407101093 835528485 474121450 64108338 816535498 956386585 984755794 581500393 804694476 673859747 488577362 404335837 633721355 545150842 152523482 740286795 489953437 342050474 618336427 306524335 793122988 518154571 450944408 9153340 399925616 663846947 623832964 570008758 871898346 346874375 223316246 658353729 208555123 746331845 582547658 153837255 141433570 867095149 42096250 610887030 321937116 601303941 706008022 807804236 942415920 533656238 943960745 300628192 796983395 53806133 225823652 648894549 711653546 100918009 216375016 110179467 355378305 913081209 17643074 149602917 606812053 103135864 751101889 535258157 901282299 534777399 553345961 702423902 806330106 966858161 973558717 885327460 475860825 490495280 156878938 956790953 387951163 667734152 243455232 416888386 393958933 195438963 677629024 506037426 672442417 901289629 877149462 37488981 588709412 172268960 351005620 594739844 353486992 567865443 212088415 415326786 653476070 761621300 849246056 415680333 586644977 401134337 705673022 771431705 68132817 926852099 711726292 579907246 748007424 249189214 310853628 271981432 94097237 90988666 271021889 242660341 76976557 472961769 174187466 325935023 94325165 744888370 722229521 204270962 475051243 605399630 306513377 130593119 214804888 121886280 448630467 785962428 917585397 550229765 125957661 714037735 780427476 154709667 913247495 578884372 173314306 987444191 334617959 241396135 405307915 993266220 488769047 205783983 539685274 947506618 581468552 819479316 566720052 326252186 831981463 159450605 338666591 186709446 705095370 84332936 92078162 206150433 818599274 296061168 480276377 689826845 862145945 11121582 819727180 264273083 332769170 135636089 946144421 605425932 164405965 299761669 510777247 238165793 816217085 321779656 347600804 475155949 128063047 502143900 517296988 99008503 577642312 549981888 212025199 567066060 264482294 144457784 469792424 469399106 977917560 501936364 46737816 636309626 800724604 679094865 173660397 826932073 242412636 70447072 958344301 724959082 691168559 276254483 397971297 69922267 839946641 28252932 33000111 197848874 198535275 61683156 856754703 518490634 677817649 943099172 783959804 566773070 389953557 957652043 529234631 321353638 570985514 758372068 546155021 223236280 73855617 566455221 574594856 473632390 912320528 90873231 731740764 279128746 585156708 279304374 211054118 413792941 637208082 575906312 893617750 527745083 139959925 400444794 650229880 363638586 499475980 392236018 717305518 753110912 70415646 125553860 712682283 912395312 416321966 703254597 130850779 429976476 356622406 728167764 631621673 951447413 686061844 902984752 202624259 514754410 992427088 455341071 474603750 850913429 674276598 120191987 437721312 247286215 616843507 272029379 997707912 951274605 899232820 516162160 489947516 569822582 976173604 260106917 627692435 978179557 718483509 492321902 366903288 169410475 400746728 262885904 766108594 889638444 658880480 267343199 511782244 935854090 230246780 614549854 98525378 473682389 169293611 763378859 879264604 68923351 651550054 875252943 160996404 555364636 776802387 514294187 118353321 183631312 262383918 724819453 181545446 340239696 267880459 232395047 296745961 970225731 427851673 726012976 440613728 479664225 399290826 199828225 160074574 579871461 137647031 86759187 366824094 8337994 660319196 404607193 361862110 846897433 339839467 740106015 765193052 137325913 735995605 605671903 79507226 643091401 309474814 595951458 705503604 995838436 104691069 433078632 95115626 109820434 891884138 223195748 609431997 373310216 56726423 356291779 179750298 469082375 16111760 489474124 117439807 194382956 282240948 894440078 814182251 875595839 690045590 25791394 757680875 301500746 409424823 683477877 933694833 719198424 324418270 291777661 11240677 557859575 531230452 900569659 115231407 462122393 457872382 69351737 258482897 729736363 135694282 195868466 874805342 44192398 301222444 134606785 247959328 808410953 752783638 276841340 202619886 873639922 823336913 51285409 718503327 502104780 578375871 905305612 162655003 695077026 945895747 490761909 704429535 155287819 565914314 453108065 484967268 274636426 186390149 273345839 866793565 355572405 680752861 968001593 680433468 669111718 741901557 681724305 511597246 132864477 100054007 613024984 343472551 972200653 664649757 200503059 872992893 72757732 685174465 591603013 853724903 308043589 9538804 315929015 972034379 690150544 433056143 553471361 871443465 723260686 826528883 751157735 300183893 934102077 945388779 676717940 716384990 922749057 907162242 885436490 985723789 83662728 432086143 514185772 407439289 882010175 504768486 255599334 995899586 929011127 533286562 297170582 931639990 347939812 561097694 368714516 431430863 159315177 332695559 752580834 205221150 900764096 159093200 695327521 497146344 228637180 724153361 482608665 916861610 154868486 102522983 191724468 342349312 88441671 598421084 821086223 730218176 936705011 89860721 364364434 840876015 922364484 11061627 74834991 183149990 402217224 301476864 986903141 387321106 195371932 282760073 660564648 220009128 131339792 863829313 888624163 272847384 351352041 829649978 820685009 762242061 331887569 566244096 905243464 156680696 138738277 87503530 671910734 1653563 766862694 995591684 94870426 253413448 795632442 257738702 545174580 49214214 368827734 762040421 720566138 629394368 502224100 187981348 65564012 472313569 734891035 468186286 670386023 838575014 202693281 787455830 348603043 600214415 551437589 398137664 748019574 242959884 311386901 650596779 926640824 542785022 122805483 910364350 572033626 327254355 216500302 143809242 473100925 885605894 840134939 505230237 398282365 505254164 194946411 826789484 770000939 362595928 432503160 98532920 840394229 116320791 97802576 997086530 509312443 687430372 162295825 708013165 690463404 895237322 119554586 105370297 829475015 48646404 102572949 941750477 977273045 812400332 189588661 690280095 631931073 809327257 558665248 733137802 130680440 544187404 972017087 314702371 26618473 454322911 590100481 539118641 567831327 310936473 865560303 498400606 84477664 134108978 876658056 110585513 863046296 891819644 86994526 29850508 331135629 404038487 308942978 763219390 674014260 651097106 946679365 218865866 605604495 680871549 462827584 739207878 310396884 375872474 224998751 957012283 576325398 510736639 750953820 971249822 637744079 180576996 671366964 622938880 582676061 159033835 767938257 820863296 158837711 133160726 440810032 941202628 543766530 96114846 754796090 860921364 693567575 67696093 308248469 781915744 984530096 809004504 462228821 188980803 182719409 363131617 995322553 602575720 505895348 933356336 160767550 301187013 30971276 311058885 177004323 199570619 455371100 899282968 295640629 917539086 901543531 450874352 592670057 163314350 409348121 255916876 487563927 901006541 569751325 225470787 738481579 935907913 587017928 85550128 695238882 34523642 97107020 454325482 30190552 89783898 405636508 336699443 871323584 782158041 980727733 304600362 717752506 370609222 286382271 390988705 497920770 92194426 361839239 720770289 197951158 503269683 645010316 290391069 45681559 26292053 298351913 896762951 119554143 652663431 51001694 41383680 123903518 500046438 296883684 781084003 365610032 271295851 284977042 555051700 337902045 426330145 297113844 569658364 35031289 784424282 859840557 691713925 265402386 331180491 722300305 252735782 166763905 585884670 810410391 468811429 225025363 46900940 142471534 138123223 65426014 555787625 421310604 391941737 546100033 563024863 778243000 586726121 336633790 737263650 942232213 602098688 463502484 825355911 981127540 160420180 469695412 716280449 830792302 885211799 843883354 397028000 338552930 488269076 527293743 148603181 243174795 5608523 440039627 621898633 195303442 859896463 94136806 423433240 812036333 419602685 951906948 941514222 757218344 137406390 970807118 236526460 846651713 165516505 962831765 171797145 63808168 213015043 208779023 772691551 80300079 575121252 341037339 322760027 263227269 479960318 75064523 325019394 743216702 722400121 388575848 758331625 764140248 62275214 684916342 813267957 243675937 132800757 76487048 14540065 541175605 171801978 715975938 76675328 951227692 287184512 386508794 749979569 139863252 979863012 263958098 60438892 764931015 534493673 602169126 121044194 487246384 706640592 637661499 540723915 491219443 40120729 62329020 727823309 262819305 27644926 833074540 440531895 812497400 733420445 401317650 784259656 656783524 380325363 924466589 482265203 260907785 703267597 332588190 765625789 623218583 461631795 266436354 523972542 242615890 78736066 583341563 901103502 634475951 86271594 75363627 81903354 507440510 574402462 943846744 288782937 780290843 676402355 549787926 251721481 248836925 333416554 385282366 696346353 944773022 332786409 418614880 333983230 914433195 679980141 449921344 163371481 754817363 647884983 190115426 947396866 828922744 931419055 923050355 551283832 702025869 934516246 24899127 442428167 443048356 572705241 939772928 790413311 323054545 600896029 300441456 532051823 914754988 238810584 8029175 127006178 223213411 178802850 530401550 844662614 910397838 822700621 536327569 878770613 818932977 625775830 579349644 905507931 924787874 906193710 496829734 806779376 898658581 628546038 735263713 578297497 739910344 37448771 945364660 472171207 284249124 928160926 430983638 490269095 154602102 889963829 98436175 83954328 303916041 718927509 847477411 552438102 304558478 694823867 768177801 71224208 393819137 291323732 363196914 891362323 536245969 421288012 628083633 133556807 751144613 779367999 674066173 621135282 531237715 315999008 673501551 332925021 419667636 964625933 72166862 792685955 219457094 291203230 37479671 13916306 38451716 832266687 807855645 279642374 874986368 951719703 216892406 782483774 240010874 717853065 413079671 392456589 656844200 27674041 515609707 228298537 876351363 483922078 753786055 829495196 949943107 149575102 34907720 77379171 640325755 942127731 578762306 754710031 399614822 60992797 559913660 43168266 125380464 61282573 169288898 843018448 664101813 230010450 420350463 797226787 771439674 84628766 104819166 629106041 997943777 772732188 574686350 906519234 821143136 348979807 1263839 261053258 383298806 475351407 828928477 663673236 99409898 992451844 214640667 575153281 915591999 898002558 317258455 210579232 199990543 361784858 309607029 713973932 625012263 301667932 171101477 699495644 786311681 74348709 630078373 492604780 491860911 253107727 279062385 161678153 231341515 99588107 443943014 304324319 592735596 593041595 486776620 759492645 927717225 766602213 511894383 766432914 472776031 163333923 424374021 464557666 554851713 821517516 339117012 544508396 544588831 14327932 479945411 77876091 750881083 627026741 842970930 221886819 183192357 981452374 978390524 770820252 258273634 157145441 476526443 242272313 98009699 86790748 550328536 927284456 277491938 232069882 484377520 832002024 458927690 817458733 232064927 166056389 376477353 288891608 464186428 509587950 106538669 528758201 230509592 926566299 920547515 676347059 812549044 761179842 399052406 431954726 905579955 626893174 724514693 318658677 585209013 932311800 741105650 810145343 202702716 667986800 584498559 485398233 184759436 397042938 867673296 878886807 231727115 229571100 72047430 637293694 283912032 764068264 505446033 706160745 605150679 285393713 863044618 550000331 358154988 13317408 54723226 324219915 585173452 187408312 201227010 61400269 599306941 115752981 129785867 775890365 178182225 575567196 675002928 711300884 251594035 275933878 879533207 135745405 476956485 555275092 334192400 90260409 657060147 842558669 788367289 617229526 31027875 621908003 137854484 766110384 266981689 737515576 127092493 305372093 32317345 10654696 778286526 83275500 323263281 752085810 726977756 845133420 156803397 274508625 667943248 363134870 822944859 174446089 969872116 453245930 328468082 593956566 329314993 406977316 303581576 926821048 318942648 723229231 449143497 674403661 18210250 518564575 890633031 204777239 362236939 82013944 132005239 650124630 509996199 415509199 926148858 786879222 570148518 847478172 619657244 36205611 795402328 567722742 992222927 609047271 914064624 957336292 704146350 647150349 450388701 641423378 610079190 989964168 728501855 906398210 990004964 957508730 205925859 430979027 742608032 327992366 425958970 377902547 376144648 863057389 753941667 136586122 409430791 548083522 88077020 563394418 288556352 709873540 615629740 466582582 532376097 900145787 965187180 257718356 484367796 540551248 334668363 645777130 663130913 816034446 670239532 507580414 77244397 588084120 750118024 363496294 587559496 811806305 854568411 420717342 566927941 286838180 440244678 704933472 418078021 753113704 403472469 353614688 511243783 321132305 838258091 10610384 457077497 452205363 792653677 795079439 764582086 616883962 219547620 508502691 864962476 648028866 229365394 38667312 984683739 525706737 81561762 33774505 286125317 742771657 552778114 40902122 18101723 233263770 846532196 719435362 628997503 887809587 435460752 416812019 335751587 916460277 695201585 826377426 961195058 798067850 289034964 244927496 777314381 336431337 602236951 749135933 367779033 188015056 161525085 334228770 137959987 720913996 551973042 276547935 342238502 903759709 150137462 756299414 971068018 530981464 811371788 120143346 151469024 217687283 757838347 842001816 32706765 145736278 814544339 49643026 585855310 870164730 133527360 597434189 670981093 183084702 324536651 117943795 323848766 72262560 651447517 22808048 562952886 157996561 56135300 198108234 266351810 185786794 37109009 181671481 919044778 991469434 683207647 50824426 361078282 557616467 102511568 265462152 825467880 166138433 667442480 807116627 458534603 995166316 489943272 314049306 349102638 401971654 945567071 65832438 789263314 336855270 771624851 680690475 931426462 271918670 934977305 354181232 357922822 531413909 573220201 567315011 10441449 26256095 728029709 690887702 548661281 462022072 175315175 904305951 900480481 857658995 837068840 643508409 80652411 365590078 957468335 900234732 249398526 424703193 284073545 780521025 815486460 300795822 813180911 15330972 732233810 90736631 717008491 610679133 270604199 172815046 773300725 658544541 852236591 841422984 5652503 529956377 880935296 908115356 210502059 973748329 155002338 364791624 832367209 516261830 616594404 70595199 50944025 186408863 83288436 283775870 121271947 773382588 574084024 761471538 136092471 60516505 775118189 589724001 267091258 975019525 901075032 179061916 565211433 660124742 7960266 445460395 53234378 931705630 511685129 620915685 458174228 175577084 544298435 380881549 642843213 556604328 340827695 101459517 741783633 574501188 649367885 34994365 106876635 642358251 186481014 991023842 98564904 737071427 322614127 902358712 352847114 405474609 465057331 953930423 362903135 346732501 291865800 414405758 324014367 780042657 980463654 340486646 110023126 228431067 570145691 98180416 483511937 147600506 109782682 919279638 156225716 262106161 463124260 795671760 690256375 991800391 640915975 617791896 808317910 176595447 847519276 851783738 579784036 408307456 630078041 337160494 33393144 858787148 844750563 380970720 273773220 708593641 773404127 425771169 290319022 816545016 861221556 862808250 174453835 252579545 306981588 333136138 683083696 636661530 167902295 340735275 185021342 737710425 151517304 421219485 704673080 29740577 600148391 687859830 38818762 137890360 896967018 839284107 723311448 759895345 345298942 396569858 879676453 603565592 127794929 512798084 692507281 446926458 373229035 723044087 727268163 836903243 609386837 621017160 311572133 283224384 125690118 999354996 224983190 987672156 975856898 946083353 632752158 603582279 355548405 147341732 691377318 510042861 885385995 755748734 104245785 422831763 930930046 380891894 583726121 26114408 475635238 29956426 326736066 87330175 833538853 391614282 860253918 426343637 999762339 621477276 801201515 235749106 742519809 439368695 684047659 748639137 804074795 878125286 15426294 209246540 167493470 885111519 77341467 768373617 286847614 855996801 304197213 702805175 875009238 812034782 757097465 909780206 126883570 962540992 599720588 768393607 395938739 832952743 422135370 359670251 710982033 505949530 115393395 505310487 912670159 395624649 717009879 743164654 593732210 114470008 702731951 688834204 10812353 197490810 305365656 960318156 534735274 428766790 614522627 481144395 286093606 720109927 548704601 480795207 705480550 948331280 392679909 331991197 489461191 79454498 675554471 783595646 181389318 982684623 569448882 872365414 437987762 789931622 681204158 282181007 967350354 788176409 286726007 791423195 171913686 710242349 543719118 596374791 359289676 574643773 701256020 218417796 692681245 213680489 952873877 873152644 295460586 92495280 354112983 174856764 865065865 891645468 597866548 364943720 778203933 260260824 544872644 198921350 62825696 101250043 245864192 636245204 245399960 73574724 166187174 603633266 866494951 581909843 609153331 283796342 895474713 749577294 345440723 617163837 743793789 96850416 372628578 978542820 531331114 66824115 519698430 60173886 35469381 339555315 605727601 372896522 565493809 593762309 568357088 128097126 978384767 605814132 489789889 478973079 255067788 495564893 762278108 264095415 452583982 806458751 838469066 594733263 286611643 710832124 911410155 780255692 411144262 254623437 164243618 785341543 877195049 324681513 372601341 868232767 819306961 866010591 492033922 903032816 160541186 600756413 236882775 99427577 887214737 183596331 452520578 350249019 929114525 710523693 141211499 228616741 415183218 546895328 878592925 520309030 885280870 583205348 397510583 430661453 221118277 790179182 889047016 807091190 720494813 165084847 549828181 225183534 464583904 612034233 367009666 396704304 859459504 61626030 31045866 357984041 944107768 592063454 162584644 672809644 669289413 106165757 637018802 930210752 782023390 937651349 593295849 537725543 94617339 635753627 439718177 601695580 359069286 3390302 606302445 526386465 219570639 598015841 533362635 900819572 931363441 885195167 28139346 442295360 742124007 317162581 975184193 391760451 975148122 100103445 721139680 699732216 221850349 979088513 639515919 642017467 241455158 305087862 747899835 607995964 467775218 989479020 361051981 308563380 977129806 585236231 414211395 916379074 273775422 497221542 103319853 640331119 814996063 157757785 492743039 295375889 153541336 939206999 818815502 960568822 693889613 273619009 50768982 425194531 248732673 64180289 350680545 859469401 792857899 484076452 195123521 675535517 731434978 123699011 678277234 660953594 682586819 489808110 90531615 165397403 475430761 132623040 231870593 239575206 906475380 665671759 585024467 384275504 214346103 963614730 151600102 194535586 494076278 224659537 639769032 849059621 412242055 999943524 987541227 846791053 939060097 466191535 50345318 358655347 816020463 915027637 576790479 412987896 576656227 307210125 913756092 170283515 869526410 891470438 698295350 732825675 439159305 267406514 237629804 603104661 898567116 119890187 816207112 679996588 875328167 964950479 267368765 232963873 145777146 125320074 977025849 751080219 744626112 600832808 321069029 682289187 47801231 748560860 732466790 848716436 838316616 234384758 244550353 599293140 605434477 402928201 643245264 129218522 192553325 321618299 138236068 326180033 613995128 251272573 883731907 748308781 802472031 198839480 593007107 658127464 703364333 414810578 584573134 347776344 603408352 886270383 196486888 343004275 441771164 490687216 622460124 128311129 830798548 16003486 900320423 712802543 426029894 410728478 398023711 361843519 833307570 551582177 135634999 534318603 247171401 289125791 237301979 685614135 497045997 492849579 760877412 629211679 353451837 246710818 52142035 28817381 998552929 466048970 879910609 638745194 407122950 260016833 823507891 713516878 314573742 958229115 368617117 980114304 61269383 43229081 439747299 338934699 449465588 47365188 894593910 265339510 239610786 1387812 799423689 765030343 945485333 57968645 17169323 316304206 465863242 53650912 904536288 491080315 612462752 175859222 698579886 341820062 140030489 923320641 853075900 911290959 342624976 405321294 494958200 334790978 242562714 360766844 858296605 968255817 798505853 836949018 648860809 709360460 952730031 280423058 663360320 812633131 254459457 877263236 366745814 931910247 580700819 98740575 675090717 123751112 489963088 20871314 388395097 402088193 908069894 925463371 268063660 507588871 723427570 248392988 101862504 650893263 95128018 212031004 404265371 892294473 171197433 427033501 307085755 329096730 975250359 585716725 418844232 855158147 223934958 726144582 815611730 455494985 162239179 650009174 972773020 120101642 298964375 781748726 285372500 304268724 213426837 276575456 367643287 518740046 273503082 15435290 240015184 745459483 478596856 387129947 841624327 173861160 19478164 670962858 843128526 700192894 864252068 36536089 539620319 113384549 29343286 639030489 22209562 362901873 742283915 408933373 204549725 764773850 41036022 142618837 348237802 381457467 239089863 599997946 367212893 767565933 245166455 477454312 274629853 200869299 959124776 612853861 940876937 327585582 453930060 246425287 496127722 395141788 250116770 86776405 99341987 412229863 905593163 245961451 894550393 416215142 99826212 641086387 73551471 437143856 474987498 323182388 694533516 885744930 970139356 964690622 376199957 601188458 509576662 5617431 79628035 250792030 403799042 143196254 438563032 876836016 631549920 72120492 590501178 151489434 545748394 422090790 722163061 252518801 324249553 346183225 378400540 69963928 384782157 962848404 566494161 725345189 284654864 940447190 267012479 358128539 963205700 398938269 430087930 80367367 995366607 542994932 489454604 947756141 255263545 218775513 287049447 128179201 787609808 700771457 910290936 326901226 544656291 927490703 813616744 117118031 831706516 41799461 553793173 822339182 17047462 568781724 205012018 890826190 434762544 233333817 622153998 371136208 751736928 509792456 671484091 187547117 42641750 915266249 251840082 103466749 787877567 260685872 848774680 769953921 406986583 345244279 841049872 974425171 53005396 392470497 582573666 477286477 955644436 93368500 990931927 839361981 206346434 624372262 667163722 535521935 145006463 394555545 547850176 748782398 716022324 874669978 64749647 940069450 837130904 734166320 338395985 605939118 531000487 321266358 506721897 70511709 777639164 595502824 568592060 403596270 610456150 840690082 135424163 420217373 823265723 934272631 859538221 449131543 328950576 370995881 391071266 171427103 541267653 483127120 371937620 459898635 452494212 286207439 983905277 275325947 174781645 457100565 593169744 914164741 265387327 30432579 679141878 13681386 267512347 692173908 823034288 207364806 756179112 152435004 92467796 533708241 303020630 873465751 774569810 741438061 671933409 752249612 750825111 678755237 378181291 154547469 600071119 474344784 621296806 55480155 352510886 787031538 932233471 561504856 255259411 498010116 585098881 778676432 718946697 623567600 286853196 175741090 80571300 404480504 402575386 328066718 356255018 202408802 572812358 565322585 34407928 452019614 387336113 193353003 505138578 635814891 662435775 138435974 17870619 117433511 313318630 545210546 696448626 816916367 828056094 642624179 754199042 341975157 209670735 296792837 779333030 265421364 73936944 508747941 862848936 51772527 577456133 469209452 273471639 402660310 281601197 365784583 196367342 866023238 452630813 817107743 778051818 934417011 529033742 749215289 947515022 464513971 869476755 551337865 712969282 928518093 204680916 15437597 939814158 267905582 647122433 430323586 83763641 219617426 880098071 521798809 260504557 12244146 699027556 609059306 441228872 54034375 968821390 405953990 146094063 88272919 691948731 272669027 313207878 812886583 926388678 122041239 578013687 424112864 76865332 893400496 331815595 505730044 249167371 77655987 275499227 434731164 278392117 932490077 441568626 586636707 958132849 220274843 843312560 724771129 216530146 444953612 867631590 323903634 313549194 471561448 770511272 276906615 638973644 377541232 192951004 290131 537625834 893724586 858950241 302733788 317085186 275981355 99975933 850167522 72797149 51914731 917610767 475980405 582707555 112210098 306330094 551753793 433195083 161457812 85182995 64890696 940589732 958764724 629030906 664633868 263307122 651321399 848659286 18472144 93592625 140923423 876911978 215187439 209971490 81596921 359865540 212024663 958991180 494141709 961437082 784556506 582306166 94678653 71269934 996870370 970424081 457152021 52927302 97427645 822027353 107837854 612928078 217148171 285902364 846551150 842994556 437094890 756661033 493044661 892749894 71495736 530163755 209549230 289390239 288882414 706180106 701738931 839097496 353287932 671474656 634049069 603997108 71186143 998489774 479315016 887253618 12722563 677039817 579814610 926711800 312457704 165510125 9599243 395074822 248952066 411237618 786339326 431643272 475071381 442275629 998935964 958883878 230763081 920143038 841346244 885031155 682695288 233387246 62769321 416330926 518187922 224105836 613069039 271899413 662936873 853506794 909300032 783381556 258448944 723650867 820280414 604946351 908417824 187736571 207727188 256278361 323070496 200666829 33621269 516274136 236195631 909727552 554311670 161599428 895722911 441973780 693386011 641312316 302254297 88334978 659866566 600873870 485578384 621395620 809781049 735025032 825985294 727728023 936050701 200818802 264470453 197642967 186501550 745073623 70598645 731024159 65302171 779101708 298151329 63589615 982602864 817935794 615167610 775492676 984879765 709073755 855850205 218902031 315128018 615931520 886775663 751584615 901517802 336722461 19234168 735810334 814262400 75705555 671353273 13854018 853946599 696595658 961458918 284096018 411823878 799413435 542664931 3512217 796694524 266372388 127849710 236588908 963035821 567628373 460567491 788714985 813456773 456295556 232030921 874155292 356021014 955078436 382412411 456119399 60705116 716436626 249863096 388314964 131339823 293372473 176574297 833274259 595772250 890183059 512496104 586615121 731818535 152894208 399426552 905384447 623247269 630673276 384210395 377629863 125369583 763929595 927457042 864568947 926991888 478660542 738019032 683668835 992657096 121027398 376889753 715785517 355011931 155102710 225147269 53114855 580530532 337928824 682128828 902475435 443746995 305809717 246659220 68240292 222995579 849124693 203119813 810350678 644437482 972861253 853179992 34745264 812896652 113788943 638803506 705613425 903240337 858905807 245839464 75124960 617202274 995400758 518313929 579515537 893547643 534521696 73184656 774800482 101737197 68951803 292586752 474659154 271843933 440400634 114533288 208940407 109414864 21993898 226342359 680889909 526132013 280817966 721384020 565702418 136297101 901334191 93553443 866095966 230670135 765062427 813610813 24741073 433998371 149804078 478042887 163960360 196149521 999444125 235823998 533831204 788677085 176328237 390422011 16876964 741941259 846117878 136582853 270777712 99944992 660575572 113555206 287231639 712250422 20435012 144799566 672278963 393386822 534769011 887284350 826193035 193154209 422660601 148679097 133811235 127931089 322992634 829733703 549417546 873055519 293582224 495724964 600313707 241005963 821358973 803242384 55220577 995618545 37819353 102974827 563198192 378481854 879509775 957852109 882024752 206802641 804070697 455718422 778430125 136883777 859680569 124442024 203313375 467804501 76916965 623000527 456116018 736714062 686856170 684087766 324574831 888134502 99249008 358440994 299070121 775734230 633220585 718448632 493669574 944329893 108901796 963751628 426763813 921852744 547658686 15038184 402926709 141278750 384775075 99609571 307734145 458602283 753874685 112828892 398034520 775714866 179867262 987285886 99782582 337828698 523903381 492337343 935710886 122222679 283448679 3469488 94947397 599991751 484415435 98266476 92218131 904630301 735958444 291822774 835347568 185630205 609907010 897565699 732915358 71386883 790736348 605302893 523168675 930512824 707702749 671076617 514433851 936984761 329628526 820371684 53181315 671544995 49658670 663646888 656691293 30726429 949126917 740385282 690217619 60351714 581480685 579193274 602966156 370762594 99828692 496464890 125845279 891496324 476478884 441717684 978396628 125130763 287757061 202562393 683990072 752799086 506055142 411042591 323272604 398496407 205080429 61271776 11485329 859859696 612764157 357809735 993697354 857091785 988789794 827328582 489009033 749005401 596276173 64381976 210919280 692913013 743656385 33002103 765457337 647296356 672677031 719347837 74128528 782200096 125722371 585206382 274114711 610269118 53873245 803205427 136466504 300424746 292595325 206004993 564568081 913212936 374684142 935319681 910416690 990110601 762772901 814701529 382664087 731376740 604441056 737107303 890650253 2632334 632984563 874386829 906316129 436011481 37211608 476234408 310868699 967882694 344340127 669695471 550080 683056805 47481608 836717026 187833441 162643151 705476712 351009767 944055503 144446985 908797742 575981350 6324158 975500720 921470449 734005423 9102625 893755505 97833030 764321417 142404187 505067665 905032694 432811640 895008780 488196052 730809059 60359665 450548907 411771189 506720420 573427784 973250719 471845110 179757373 268552937 810793679 25993677 9692180 316104946 573966377 712071876 625422119 915894096 765407725 426243312 291483178 893870844 239352809 648883760 590799694 599161632 474186378 875449589 188717702 114222832 963164904 201938699 617410106 707490381 360502487 94799837 580036232 677182250 331315281 401836476 161044528 611898434 593459853 520875853 195041344 894895391 473979382 212378226 613978214 134915485 760706751 702428722 262030974 109999479 279466539 27470808 364130165 535343231 40881618 680811083 605869391 986394082 983879637 78658386 354075681 735833580 158770551 325047244 409752228 858106961 852279137 284462891 608351499 136712558 191144547 13452655 960557577 719167417 236450511 206338885 5702338 238611754 174668040 613739451 867502297 487688661 630814723 298867497 347888932 87991870 137626581 194056442 188335460 338444487 858754343 515816549 353887281 427763914 495154283 437656721 990000126 418363804 54582188 655891520 807119184 805698552 396682707 721785148 796563398 634957355 443055773 231604174 140040016 10329767 225329912 141842904 867643970 728762546 954728138 547638584 907465656 352494270 996385795 92963772 444568655 734135521 993920250 32422431 77992889 407892109 445604415 284440965 182328944 685255745 916281138 418967074 530058944 36362759 769772527 511980573 814594872 234617964 549490086 13630017 62985142 972885933 651092095 577967708 193572647 483693398 565396062 628638482 30591376 910008136 213746091 130426557 84677857 134216605 34896691 451902247 513193964 245383121 732671085 599129574 278283680 990388198 362621192 410041244 171069996 240708795 393730452 620805706 557987821 6493403 385096186 966135371 774669915 103908622 448659452 725566012 513708510 60124819 508309154 34378356 639606621 187287038 233973829 758654823 746903161 266061771 963104304 846329744 481744189 911964236 904119007 868288965 243228447 876281691 384462351 347383875 495912410 173863485 86159637 937450810 147934195 808808578 639260555 254793406 854369830 502687203 959692424 812327181 309183298 658607337 806502678 88171491 781541652 586727653 539049292 498572261 816022840 575809222 444550420 156930652 614751416 164672612 222467666 212964443 659333344 208626122 873686264 10032625 981349713 53385250 987999511 494070363 827844831 259014698 412405504 857606857 812783144 366772377 736878385 427570749 823999839 930900797 741405407 649562509 31798774 150178142 732030335 751361076 557461640 102517214 149634826 211932662 637371127 171973070 817723418 508205722 350632670 282332146 86559327 709605676 120157171 937488318 610530985 267010488 216929056 593085118 711996976 675321665 363433686 822997864 318262400 140235001 82276114 933987090 438886738 832515841 417523113 337358754 398243375 995365991 825438321 626156823 143943759 920316422 113736411 992125799 291173734 562188871 439018495 337116913 452533687 465947752 765598126 292415323 754743983 6165556 374656478 598097096 951576788 27907836 630788140 157480361 1656678 525885898 169944575 269141344 190940351 201128232 418529022 718085806 964130473 814000747 587348149 177658328 946809950 495617034 213325992 861199678 716220163 625056044 610886053 928857861 848575547 222030026 706505593 80275229 841448738 934645541 295617050 204019437 893675414 414404048 469248044 790989035 830901567 920729938 133355390 555339926 736784879 575173467 551748565 282834173 780854936 380019370 247663327 761700140 24333908 179189140 816274818 843039827 507236598 814637130 151985455 448441741 995874653 220938908 947778875 897429749 465339824 766391621 823929648 707403901 41483626 440877943 911855315 165953957 335130819 719827161 181629754 70574329 636732313 700472341 603597668 737048623 430496466 20844590 936803265 955398156 954581858 657382699 698412694 552089796 769865635 929801307 303617894 464016722 520278694 89760543 65132441 252011395 265248681 643402863 410530464 794125111 90022438 596800309 281091311 257373225 992742600 363251231 704522891 642345132 247068168 322949955 7259696 906221824 88949735 528050537 283430639 479285608 587589879 413210675 483007366 229979231 189331101 15224232 115417102 6408453 287355653 755612131 770940492 917433036 664515671 529680769 814911496 268737580 211529899 985313087 50825075 829282458 889169440 131300915 79220308 35560278 973566711 351234481 482663305 887851330 362044040 439604123 755609379 85438130 301956437 398334330 354890280 558326203 43776492 556436893 138853938 394728047 389024682 414240642 708385452 243753919 193455386 106163949 183211085 610895084 176589106 141742322 589731908 764595075 770305877 360333932 773986377 396237772 367141686 314184158 574483024 984233698 644844080 326651933 125542656 884525340 501671779 547972271 520591895 367937290 263844828 667585043 367904557 742895643 935013695 223686542 724073680 531803277 897572527 972760051 569445699 37085703 162803961 299850506 133872437 153747864 414673748 819591432 277300700 446809810 66239005 95294704 472783966 108558029 300488144 976676575 10285980 349336410 858462493 620761542 3660374 627786930 80084583 859534314 410189528 117050490 356632378 963438842 884524715 214832908 298556235 893152532 606523711 259507470 480886432 655192508 333813643 609844293 999539924 818847268 898526506 146339229 594944108 359404781 492067693 236515467 51432639 816918256 822806785 878617259 94554661 834885925 343018544 307715738 62427422 943689617 527040102 972873484 333134894 948824469 953411201 952844317 175077095 211265331 419479743 205746993 803427465 586142949 898282816 752253965 613105675 336478548 94030380 34910270 61827998 313235523 296511442 823670282 402310349 445095779 655034089 145450789 374646356 542975469 447603293 463050959 26315796 37859224 450910005 316872732 804745521 645850157 63051636 558418838 726678041 666602759 46463452 460432753 444065137 379094845 313292438 319023769 590517643 686175579 655323780 979031149 279375574 204601495 63503994 56541952 986700708 212654791 468052273 789087001 500821468 357877200 60204106 363893659 102231914 547130534 776124407 724096528 792027175 90014902 507758133 403525322 760888045 50068958 692274286 271128940 350690758 752098229 358146013 503539499 661014662 487436468 276099322 580198558 372860554 84555507 882881670 398941336 270431308 405872715 601709431 30582567 622645722 399246230 726749585 824271449 828423281 806421511 567266361 212997102 159408232 56432424 436536364 723170730 57137102 253118663 138749962 569060380 206108614 622086495 13302830 543707567 563306679 48097901 214297 80516755 283677904 470154183 698673611 903843713 805157813 590274457 571993066 459343651 846969972 175448416 807842938 286934613 635015741 558139573 163438871 198176765 921459680 574432051 193063219 665144616 388179184 633221880 661890269 27458244 981553441 649966889 589761347 197661277 881271598 658670210 809005527 295818653 259625509 883052185 2599996 979967868 591029937 539371689 954042024 927994034 37992727 498056519 758394333 102901674 454902855 598871138 756651089 853511980 750488996 223012630 828813643 502224506 435099333 854400011 465818880 693404776 562624877 233316163 750798196 886922151 643961930 6375232 345896222 420829941 376967069 168244911 69198424 89385251 336630809 574878065 346469484 32373623 258687112 375402151 267560472 859647837 509017693 318769483 504259442 384950444 520910104 491905741 941515526 987375251 865375393 538459564 855766639 306775486 294817034 237624315 816066121 464969799 388639764 913017178 707866236 294334906 799838508 664525488 701970840 765098700 406748405 424618894 845600397 848569748 238864675 702096899 361046716 953975381 452129208 409137892 942975532 454695694 248563961 816410432 755279870 398868328 281988032 832254930 150238171 39769705 678726145 975608202 568366040 446879425 512617248 359697009 753612960 99207438 865266470 638833746 927573205 74240277 906534602 488107576 538294419 255986515 411947886 971887745 25870131 539886685 158239655 117432045 595698792 554413069 121531639 657588378 340005665 13790918 635441957 135494861 644167845 236570263 145359926 124843378 845229000 717394380 698705131 345481795 778674921 852242643 910973283 848675834 868207817 641776650 699224110 371419951 43832785 814402938 754234238 31842409 664600378 355706528 399226710 290289578 404048340 539615795 827620384 571465471 645487343 447858530 837597827 776534870 734239011 241643220 166776752 444517920 730928626 805448828 885471102 201974549 408672404 401104046 486056000 231057902 125000701 463416127 538020542 729399334 761420232 334091086 25949944 32523395 164983409 274449504 143838882 645752249 59535308 143564056 877608222 719411718 611456838 764641983 798523534 899038517 37665781 730781592 985047151 661904971 420902296 396020063 551807531 408067145 483198817 940185683 662457663 593221208 2760477 900753309 409182311 720692951 545402185 638582650 422115187 857459771 72248037 847773740 981579716 4433327 949946110 766325209 386845057 404206994 327529599 778327943 849221178 835518062 504248171 793242674 982128931 543472318 598359851 194578759 543982903 289812373 776741573 813498258 260377796 908705186 496210876 676457072 755104836 446592675 135335436 306021677 395674125 69900457 952321994 827929728 657824330 56747814 771599505 963151031 420940585 63604713 468648487 51512317 561428757 831405254 207695073 841294934 850834309 477062196 457043270 307994244 599307942 102934745 652717845 553775077 41984009 230996972 356703474 792551929 128088660 179606365 804886813 776887023 178763954 458713370 823103625 813083706 1190843 448574446 108486023 359504702 680885903 18527562 472746151 136514683 111598418 725317757 806206818 647616554 860895587 349428455 973045809 450264051 61398941 795382642 556194048 567210081 706189975 803531402 512310487 344773062 241786070 551397162 341271475 250533487 501045963 748924893 950105679 217689147 113471259 560328592 360617435 184804735 736894244 660700113 391150572 763486195 46711212 673882808 609662969 404478282 318303080 995900325 676226826 852547880 952719015 92073171 244434337 755798899 330581992 406703299 813195682 282245391 942527676 336562768 210545094 56675650 564226722 763327041 564056065 708061183 92667264 140830852 638070293 597276415 174272228 759024574 297790168 668217082 950654046 604889101 486949979 128321553 520540290 586900278 983800419 252317560 286633103 849570032 534657588 403869092 591970894 50577906 196637467 750422479 116395319 33570415 129899217 561653865 641296699 942418163 373245712 148764821 590445027 141242933 254621751 852742700 386312364 317930098 845621087 372901946 826216653 604290788 686257628 402141132 962156872 992683494 596083137 757532680 435005189 315837854 537728578 321784703 406108574 7500946 933612521 978267759 292855838 906049861 138673919 986753983 996669260 591626446 51743950 842454617 416842675 896256611 389043852 250339083 777057435 780593507 240414417 774698107 733193686 39622392 511926857 591385516 667619132 574482555 336682182 336518757 405736693 742529604 348600334 759116278 79973155 210788750 739330435 857677307 282456102 459509307 664186583 32363555 556580356 87154429 104501136 140581393 764407318 350577980 787829196 206462986 20038674 800947469 290502474 552837540 343888562 207767983 722473130 312616341 66140458 699741458 277852762 315126164 653817454 835488188 537341578 345448746 501000297 792508720 450519700 992477803 19910495 449908861 161746395 800653233 209661541 941282843 123293498 731625227 383562898 609988146 827507680 156676153 357284933 136426549 362744209 934789509 977701254 185410516 176331413 465788587 21863827 669329776 816187183 748285758 419163521 619474310 131473730 365181179 943257712 263182670 975436242 196008137 379378508 462551628 839123506 940896134 820701222 818763376 19134625 680513536 163134688 545200613 114715025 19384319 327179804 79014054 562491319 105087527 146566275 242776360 532879730 736735959 486373871 601232877 585554956 125039029 896380193 579265706 347745059 640125508 966245314 490635218 902760970 839869299 810984618 461900145 368139746 721695966 102854469 908069179 774700038 735112442 924178869 586887272 55041588 498745211 165048592 207210203 499508464 371731179 284335766 335664934 408323522 63243963 883640838 6539269 462233063 341400706 739699484 529059651 697242790 904468158 832272876 748786855 836466058 45827815 972408771 430490649 435992199 104188249 41764727 894732320 259955245 266940280 677632686 290585831 411485408 672762729 925810687 809643608 843415346 866748356 588338492 778814716 986473006 621493438 164160661 554442122 279611391 445853638 157572868 708778629 196756809 436161787 911793657 741736407 794972239 690266879 441879312 658089103 837796409 743950448 910731967 626540477 62594362 651518826 794056417 810029878 607094893 280620674 712750842 613554965 883502891 46159355 176929825 27518182 8605425 908644635 482289928 339051864 914143634 802576899 658124481 731173802 471463270 806897127 945088622 757997780 221680058 377637205 243953418 774623541 408224877 322358922 840955641 443395469 130016467 533483011 82399850 948469228 493674231 774873181 856038940 818749960 501991888 869952748 391011520 464897093 103536918 125833569 975658499 517358714 234133972 303351093 266941506 991231465 955314839 188006601 656278146 722538243 244805525 714852507 921427468 880050380 976667876 575890329 972871906 875166208 965457591 399587760 63930648 37591351 90635673 151342120 22882005 716008325 593702051 684487331 526498180 688178253 167716067 842149319 221296463 802243544 422813767 332650032 782773406 719008289 234731348 854647337 712506230 387588532 451279369 313014934 626294144 287611145 571313236 515296357 104744600 248320454 330090010 323556870 50182125 584433238 766376142 207599342 310796329 947577008 319145367 371486638 989305784 312184434 432984319 326017671 124708885 563380092 303504382 978066704 323246571 21397681 999546192 496198867 157383765 963519844 929727556 186898291 462428054 108211991 198038806 131508194 494285737 269262151 964034712 202416682 501364025 356453291 376137627 681324891 226097015 771792214 536139577 350945627 587200905 253579368 510425572 464658431 753337913 722802466 826442325 20534054 152881320 795490822 932658886 488668220 727370627 359894823 906150033 579524217 897266342 704935100 945527002 853760972 515198274 697568039 100205954 497858600 14881358 670145719 876674475 44475291 258351631 703416953 773558527 534450738 547743849 579293713 682011615 756748599 941686311 899552800 623178056 334652593 513433975 766946673 302198501 733247202 323442318 363982841 824171103 481205101 284071576 476028191 64823270 405410437 946793566 273059505 894040164 151257755 832437056 171967871 359237330 530901033 302755145 53873811 642017824 677356835 630908474 578439005 776923964 881103126 282622207 554913001 882076126 983692588 939278711 772938409 71464 835487971 326305147 327504393 818310314 976258379 407886503 240674995 676825251 770154922 842427146 289462379 114609830 300882972 968948231 693527924 660471252 286019658 178347959 63758069 903734824 107588003 356204511 759950901 639376927 760713735 867361314 619662701 796849866 623732807 635461289 828144628 514362042 470780223 584836112 535548020 106598790 562535930 856178425 362589385 158074391 436285363 502043500 264191181 227988500 828814229 404404114 173780967 414450078 381139261 327330995 503783910 873841836 112163740 946579616 281545697 757637064 987367962 601469300 987506549 727022709 900131889 661716030 970235621 460639200 349256343 773670010 99471225 539862601 578737964 452316522 265281891 81907949 432250783 240681507 808774336 422169184 142249515 27493002 464873873 846261736 89659065 281006388 699691335 438343671 266448559 783853782 848420917 50276417 551616984 121321365 461613987 893028340 662739861 743020730 954560312 222460077 574600306 524888685 764612780 777177397 617889064 666996659 454356690 111718448 308213260 233144852 691601454 335809677 460658155 96793887 739964699 934667486 760536138 543996094 229352369 148949589 874570413 922807906 940470162 570125724 948518398 855129541 998741954 68081779 492471281 328800463 208660820 853045582 937421023 897892252 624859722 87170728 298875530 391549043 84645251 330359305 839046373 411164960 196043725 564328755 959157168 754307438 11838157 857130021 861377810 311361711 884743122 67444348 222097621 690663737 734829001 398046373 387847377 178868152 144757318 893079006 514237171 679306063 975974579 721896936 872676711 406254432 640597298 461148920 842262071 873686607 117034695 532608980 743352549 404773329 778943213 122751123 102954766 75786919 189781377 881553787 908589974 209511072 218677926 106242433 144271206 268354518 219388636 355079165 599973776 34563683 7548494 351769289 323241676 3333830 459755138 914556564 382885316 717036641 816493270 78948263 945843410 369674444 939028210 836230740 968474610 702540659 704585821 946034111 625015923 457987226 982239872 700330006 868145471 382464634 106562927 368408903 596447056 313031908 508246641 284000741 837644521 184582850 677074880 930460988 6912836 708865461 904786894 63461182 137252589 197591109 601038107 830243324 878701625 494013208 640440068 919348515 470675345 529146330 323823981 578483725 714071287 590694877 961200317 386944025 991522311 433485842 986925251 1503463 536003254 169681869 476796358 761361313 765810789 87735092 963077993 781660315 349620135 701857028 887425126 95800394 533665729 960740376 499740529 243945273 108024989 105587403 545475969 106589922 330476077 934224339 673626087 504143231 608282395 48201836 386998984 587361128 181422113 193451074 398000457 561305035 695749285 577842231 759073667 272702611 578556525 136073629 987387465 589975684 776362879 220105009 721717199 885730510 579687973 563659581 289991267 166745780 896507865 461484923 884678200 900644710 371474576 200558686 212691013 89817878 56141396 707503060 574231853 159007613 583582970 490882215 814363126 564865168 642914598 679851193 349978415 751418179 96647229 297246839 965166444 54245395 188990521 815693570 411016120 974067401 106839376 725204697 167247390 930350734 231655638 66537487 332958935 387919282 394907595 410479066 659218869 124309015 1295544 472115551 627030057 106625860 7479130 787739546 842857984 586890011 223531648 379189234 350603908 215919876 15832717 196595742 477251227 239214011 247158193 946217271 180707394 716410323 565094785 647791552 159956621 762930672 716864952 243823163 386377709 300713575 76482826 665344257 123764127 432141220 606643138 68019875 967790402 732334176 878811371 933114287 773991659 357430139 775110639 258928162 147266795 980579715 673289134 230134236 462689153 32875061 880677705 130680339 151448018 881308109 399738085 516365296 366924083 193729504 659415890 84996198 576538956 454769203 997475734 980739637 565580411 82203656 943430085 533137984 103413504 999136025 410703882 551883826 138398563 163304733 535552456 717762755 107955117 967539849 650018914 630013957 511817577 204948300 651346515 146454387 372982212 53338879 537266972 6075738 318169868 549804511 382002145 138526868 369844062 212802192 560378485 806749088 694876800 608544456 502396641 846254682 681558483 369792403 411446352 232906939 265527214 648408014 119440329 932812529 858660884 251106175 336402342 667563658 661651993 581299778 484150224 135922691 91301075 173558010 876078110 684833547 266018402 719007160 745297454 656389271 301006162 679979847 206642700 97448936 939335246 172094537 883747609 711188355 906930208 770839028 360108103 652508330 349726449 11544779 170862170 704820831 741863265 513672356 619222229 903603812 996018840 132467650 552827408 653736211 984636011 874725686 725861314 690105605 157401124 467084835 339850095 875411274 545978522 227320449 141505262 229875994 839350470 379983723 763092455 669051220 472560268 169980035 139552427 187622999 587051300 132628181 572363326 433988511 253778892 157218127 640620807 966158458 165376839 248437245 800201059 794789423 131987187 876819412 485417039 160977545 453117678 320019394 876343902 605443528 538919473 807257665 416542211 389581369 364304240 515418480 78240203 52871114 543808232 725936385 28025824 592130147 985020321 919807142 784029975 533293123 777838788 738714108 970261324 392702449 175772044 927013658 215699601 842829726 108865882 280171710 426962201 920572339 327577241 4951959 638607549 939572386 492684786 415389881 574847781 283478590 972852966 766963350 369108852 558796688 488535762 946868958 902764702 455329360 337449595 67552777 816282552 698966438 513764338 406344579 765019935 269613572 443404038 152398454 689853390 829435652 121911111 993987600 890204956 26619580 810280775 819294578 479897542 201849072 472575250 339320813 241426037 581473058 386196006 664436385 471287768 86170602 862734327 980861087 234261018 208080287 867746400 237667877 27284736 425452654 367151395 848883061 956553934 168790773 925494109 985174975 867554616 645893053 392973499 10870221 604099877 885165198 699565848 248273005 904870932 904635144 549038628 562852775 889609094 361953997 345192958 390555278 413910950 97727108 55367692 344336646 516313079 260264768 153222450 349344575 48749481 751307923 761252213 319222924 209061358 465445572 40368868 467169037 314142461 149319927 364790242 893024414 560989813 587094187 839853316 414404850 147238644 595045127 656079841 831263580 792882086 203445673 707252080 656794712 491856351 944749412 74159089 715064381 698746898 463691599 297967305 465240486 672823415 666844265 85077337 447257971 795556396 247759962 483373630 925361753 890321601 96721039 426127420 162252980 244591316 293568939 415700909 2393975 246611228 136153327 1578501 575172601 247260182 266900464 30505777 78526108 317364475 729491374 123589405 511343814 697794727 810375293 135048324 774479461 411705386 206442227 726678644 343961714 944375793 433631151 749592957 534240703 824356721 464943267 961876892 358872192 379648791 731204699 835946637 78264532 226022662 855325084 502790744 512596908 275133025 354052506 453834063 819985408 172950739 677589434 634705011 50268246 140819716 353491151 566097349 141852870 91023012 553604550 395894638 49617841 991395148 252886569 191634480 398178855 495845630 187696793 311928746 682417066 479079068 82363733 397341140 52105143 275913911 959266412 512347630 258997425 145735638 873750406 763652626 888228789 15026741 842275831 624924029 858032116 200720275 940686911 834493999 704817730 690281076 974286589 307460424 917956441 788694169 73317880 351994299 599772231 382080160 197441486 874206622 804734730 68349072 780564704 658664221 919667435 945727726 620013381 143275854 372459435 6943935 12387738 539715085 558657884 579196955 529353311 233833768 769898888 723016944 583547756 406856384 533406686 224334781 788308838 3069495 595272984 74742272 821534039 779149231 874066505 233941536 535899593 405365319 576452217 973775337 529356930 545836006 458499495 107540982 621122316 475414569 284079579 1073027 938927578 714435013 52959054 588506959 917018854 706518067 773594446 869375259 435118088 467309449 884095290 717165421 924963569 287368534 761431261 203475072 30011023 212448095 523969750 320354385 28031908 153966571 334147915 876843442 698978386 248335942 415996471 90340023 143761282 745663639 659887524 897171390 88193085 739078087 185198662 472270861 386982533 918598527 943466141 671803067 619591067 818180359 218228813 192446230 401828901 696868994 738490826 924701321 425632141 737471813 723876411 435850504 80128698 571764607 712924164 556202861 667961521 362912164 547778238 870468924 163690078 618979185 203203127 974387341 56060537 712887947 347840843 93385355 208882314 940422587 528008947 87334708 664910272 855195483 535592950 97920239 332197901 724232690 525556919 509045425 275451340 738849753 709186766 581310450 880679558 312866432 57624498 748060606 661741071 380559001 423160409 869183012 502356937 188872398 262957192 137751692 57816186 548949921 72523324 378905567 996646365 104596112 197835609 249276638 42452200 848213162 167478908 121738053 894067570 127800919 862730765 912254662 679958160 116245673 177599205 995271739 832434368 730796258 226013612 202075235 686932443 503845761 355447593 382388846 903458417 529244286 760527602 24322503 340057999 729136918 561708216 334477318 162579537 586413203 572406906 61957274 996478616 142633694 763975349 421795045 280763407 532542065 399495323 825057060 311145770 199134390 471947087 566504619 304217518 193159271 815391149 459760466 331738937 516529816 722215762 202328172 683019272 737129546 140341526 215164563 44283519 628088048 517752028 192875598 648572371 375581542 112646839 159317075 850685103 942792867 672840461 317506279 224734593 691901359 338598053 268929188 500143846 78523143 719221390 387361537 80102205 944751587 27851384 434729895 146697726 368457400 358191977 816862154 398890645 997559923 206675855 43049686 196326895 431915074 709973683 841697884 478204445 236805803 163935492 248620772 525141779 351344396 843484606 954066437 757483979 212219722 786790859 454395187 784487452 854365849 53175435 404862288 926247104 539130794 680816983 120758927 338747029 6389827 463247348 155024102 58982621 637132047 222881066 524180861 717042536 819027881 12941966 742125867 578022361 809947707 233056050 450206286 99800468 70689214 595153837 928929434 62003327 50630202 677676149 178484190 712442075 694800043 709723717 45688569 58925399 863222680 735407036 212220800 565968641 392614754 880795594 871248232 180922235 393744506 818034112 849809363 404115595 605600196 190525188 866545704 467133775 194843633 654081547 59140445 259970476 419602019 862673486 179474977 852556275 465306818 439813063 652320362 796615300 817055673 883011936 503396552 773938752 852954251 716855143 893260199 432743927 780862301 322985662 237581895 102941570 298543594 187769870 626176709 806988130 841571603 20033675 161444852 914225298 228765219 401624392 195063234 783998410 761854457 81087833 470861614 221878558 205547936 321793166 675674224 493351235 582681792 457039686 831195026 82521412 498197031 747505859 643392255 633354212 406044836 820523056 250624932 169734728 670513128 854292131 210822991 942625558 466220618 235955128 890293035 648655622 830308861 463524481 268949314 784028724 910918585 294530869 92208402 105403052 250150369 991308982 535992613 502495097 134472458 150648577 584466798 360097412 379748826 251350572 922197967 882849398 867869130 29338191 979609464 531800758 177940058 680151590 251312570 533552431 22988076 275126887 449703436 999384618 943351799 193979546 831285473 750451462 880328975 444730410 693145454 965875389 994560083 181547552 281064378 561657599 191758775 877853000 95786574 106783332 483081182 156462422 82287354 687515704 896636775 767607260 160144770 116243764 976422154 20668650 698575629 244776710 740171986 989867010 46151127 598659316 651620153 170463722 430324058 710597090 594936389 999013714 536583126 322806655 491413941 145487272 444583996 230034643 147802413 95879605 706165097 396946108 798839510 511389956 411884798 751054901 669513378 102703076 301300407 402616664 161491038 288923771 599864673 621566346 65946971 961397858 844648383 909145899 730173105 700504765 83426732 31368272 895603389 520418168 870203875 1304170 525171591 273893978 138439288 78413641 437599794 914556592 853227701 864588057 752865635 224517422 462022120 427989217 677154986 958098624 269789166 644045389 81466431 503285351 196049694 648504214 839426980 10720143 381869240 724152573 208825163 348681892 781784816 862845975 442745901 809225360 294592111 987078064 714123434 696031393 576078931 205891333 418432899 252533809 908795993 351026236 139729716 131510676 853834436 74222234 816947037 648551552 626183375 641070600 863930194 908662371 34752772 4065773 939521465 88078670 930337652 407027938 911226080 412160050 668588295 8380588 273015421 603504004 721718488 317258027 525508597 108281287 840541411 309016799 646242271 762863499 578069343 388517337 142760900 638513450 825388473 698452679 394176211 994603993 631305229 346999987 858988649 225719242 534238702 158960964 969625356 320502746 803720838 606177418 602303037 70141044 640061650 769002170 176010123 129072846 466191903 12019391 965669908 786482923 728099559 583346725 172748808 299055348 925510607 922862311 565830002 944710159 537718064 836928263 929721221 850788525 34710639 880374327 932157424 17386725 447047854 97075828 107967534 153397270 306388419 537461712 978824735 122111187 893509523 323043485 544079925 906575602 678008540 990634189 25509050 142040713 358198377 896695349 246291530 583137176 635927004 438211151 854168278 923635053 4188157 63586655 535756884 367615898 590123477 668482824 660062144 781995203 398505930 946030706 766240151 516854427 702802034 376753010 663495408 517264890 527345864 829415475 538972473 825779855 42124093 805369252 140556702 765319485 119642229 331313588 287535638 804822734 186281469 379850656 552164695 663007796 434752723 193318003 138109254 243455613 336536092 91526398 681400093 811245870 139832638 702682006 432434814 479888004 307180679 802538392 71206614 342108891 574394209 376880896 502628980 258016489 960513208 200903667 873818243 322731907 526189005 406819210 26546680 882350022 851896502 126850161 391931950 673627295 559910547 790329807 604184857 471074659 973377764 160854449 550145912 101639509 858566989 779916291 634082594 42840310 429940674 985021004 202025416 13496342 547529621 825738337 801726166 73681076 354406239 905495583 737368256 921695825 764514281 488664327 913009981 431755989 894736630 864017976 334288268 155563984 830545018 629215592 757700639 580013052 421489266 701875163 473041839 353266514 582738978 8340392 255612680 294438078 133449459 341755109 395832176 571251987 216187098 512762726 841098575 116323543 729168946 275990866 412186258 893821597 484668135 669848920 486849439 859312925 535032136 736563496 673216723 802893594 2101793 128399816 734253424 251216303 914140314 899586246 703932295 652574055 537900675 173806029 356358281 787566344 981405957 144127524 16307326 238603039 832524822 554427455 292099467 665930009 451922037 144557449 28353420 984151719 604427545 428462456 877988130 377144475 781787877 857387972 51843532 184138375 357535336 752005957 431981776 80232732 350405997 786405878 164877725 894281679 384412063 45600590 11497148 75832915 258089532 291032894 451587658 159140580 354538553 71781857 574008579 272550517 986568571 392892608 341512475 77044911 904501051 583493235 12608256 960550560 434523870 843764249 306711379 302973094 292829830 6575422 914351279 157899501 672014123 321970864 257787739 792898906 945219894 235948966 641318723 75621090 83777198 61903772 850086726 320847226 793592943 661980560 36439419 805555571 671766377 987447272 598412606 808107870 130643520 286111108 574033093 907039263 511600466 116457642 61760182 28436125 744089994 407163039 906066664 351821258 404959537 950823307 674991274 811541221 177292608 353597274 271947607 819739070 131727228 181924361 221393848 46746904 241841746 708185201 882437440 109983688 592085055 850308905 703757810 343189200 392828646 819869873 418339053 354184706 371713512 38128118 850668064 377667620 647418064 899248899 378186866 442724113 726640084 700516109 886137545 170154908 619211541 760338982 179086917 20241642 318833246 290763811 433756443 675019084 121294376 429957662 96062624 272826242 701960257 281594493 198559641 994791221 35744410 309004445 445727705 332237171 568044783 623432376 510325079 276048256 479105677 507664387 713562962 927735773 77103998 510515378 875745652 514497832 689408808 9502081 644304370 291746364 191920210 835554988 206283503 386561675 277844394 748853104 638162929 812917965 858820631 216421332 293608232 717170923 456652963 653987742 970744723 569721028 808258913 649968556 199269225 976080907 541260355 711339774 696306753 671850055 203322466 84086390 935870410 110643836 540196301 124196306 858248568 491186440 452406369 943444638 493660083 287050856 303449655 676640743 183290645 700752327 693448408 886695723 176149904 591659265 318311345 320883628 152426169 738900949 644448157 481022633 442516008 409513484 947493956 138544277 46939802 823093559 212623619 58949241 604922361 38541098 174174551 767013630 895519053 74022411 915752821 458717557 400681886 208213439 879728915 26119947 871331757 924047450 131580098 585597665 950890894 140768877 879821013 905157192 352630531 111813140 470319863 658191713 523912147 290252551 192650748 972705956 771591867 795889446 393135474 744410826 667086592 781403874 285624636 786032813 455616813 132577973 337099706 631093302 803050142 622930555 620002143 553344319 494880956 427142341 998066909 641672933 970276266 465320998 367553922 770022717 333728319 704231300 611121273 903347495 796562994 324102105 5012797 792528611 881245545 869691797 480682510 368306665 544140740 19297028 682869749 442624889 519724331 329161430 907310182 251385632 390063039 322863580 12439461 891466247 692789824 439635368 139921184 299244234 684193749 811973909 108931858 110809262 422926175 881702827 327482603 492494295 117102730 955143204 728635734 234741658 824821718 341305264 751870801 797162304 709788438 430087611 758102576 230358255 724855083 260421966 635316511 442130704 247819929 697206924 280206866 601219683 866003673 796565634 373575448 141519849 677822599 163919898 542345993 125559804 607428004 945463971 456674180 114429577 357605097 629080818 218507872 595437579 647406897 362269164 87059979 462480994 736151398 334699280 159880645 398382664 432917402 521431711 230140607 740786600 169807982 893430784 701082295 826947123 758811193 232547772 862707230 993368825 810507659 682447521 460608904 514724007 524312870 493202207 266941668 941125046 863162862 877858286 171783924 405439086 758675645 492892829 771265056 641095112 350752152 854371585 144400179 872040884 298877032 62664263 975241952 173674294 30245624 29217999 61542338 622486415 73291110 114560288 645775203 72508251 227392477 45390948 558529468 92973188 615699995 670862948 656333904 408197932 325791600 44583485 351543663 295859117 420091257 211170726 472778089 821777110 883571431 542070765 43807043 723254746 6820249 698396939 364001877 388469305 596159449 888728877 911627856 421822078 171103820 38587414 736174664 774617187 518419136 972852203 762924237 747583458 51581581 918178317 342925086 867713827 837794115 480347606 594918762 597593077 612332438 841311352 96289432 232198677 937590914 852818505 747852796 615982481 232484727 513483914 101891398 287271432 508287025 172718274 324627687 243695209 926887722 649969796 607474296 767131880 764754791 88916990 962365339 827201747 436304154 155811675 929389049 286786035 403636280 909996436 490832350 675257601 386283231 488773039 970274041 841898710 297736150 667110076 897955674 836656937 200620807 476514151 54568244 719229158 315229173 498086763 880520082 617407019 553671965 81990367 988776846 515111432 7676196 511935869 43162953 671149422 371861593 97362494 856708687 112489383 117555173 100949561 761120148 604866336 64220854 865793975 733396157 205007439 71482620 104685971 184199339 434413280 445524235 151213885 152993701 838239450 583149585 208512242 177279179 962293066 971383886 197247706 839216918 849474819 616846070 695613574 710191201 307682288 496630579 310564567 477807695 920763666 271655956 401714306 962044667 939399162 256008857 303596084 787583763 413411806 546640848 815120571 765677722 591580253 811233566 661484777 170671864 937336205 582432963 42839044 558668480 298428627 922736924 940536333 934650238 856991695 578068519 598501207 539421301 33146980 404201073 148547379 27436144 367931378 761752965 664860085 778603375 215966916 821768850 900086123 965990508 12120403 895692134 309113007 484590875 594038547 272151354 99093828 829405555 435921158 394976842 861124279 70650901 610022348 392665301 434899668 846836547 637328982 902922461 110779719 706572336 274810908 205838686 665673061 179274459 9216012 442221257 450109228 973529545 728493516 388621139 766586262 870930336 810318465 118345634 692245426 998991696 910472535 747672002 952411034 903516666 886584867 1721211 573864454 280068899 767974571 702941634 321008740 258880528 974289059 190768744 490828219 944531020 18211429 90339775 875105027 573278275 658046324 66609330 333348578 740678074 920542898 955204882 264621235 532880591 750259025 25735585 595237932 379588586 333804626 793950080 964943927 664975075 432344389 428540002 304302991 145391940 284263079 116420081 505007067 639864846 126646165 551609890 750612756 723227833 909039967 30811029 729305624 538631918 320686807 637973418 981360326 630988699 362787201 305832139 445979659 42223382 950124510 758521267 208752896 186980872 594811836 337782803 86534843 539288797 219680211 652072327 970760487 782579281 421820457 77044357 156121545 876653028 838393267 230947003 85236823 168155565 723116057 909422198 535658540 197776847 793931962 802181004 839838888 656428051 605236806 711728783 44432279 244169903 708877321 173497422 321944789 980750087 170001201 30657578 705542330 257862589 15234115 443250886 2700938 901857293 988494175 465591150 630127651 833798755 777088992 222515383 436505945 646781798 253920299 84799923 111545744 558095590 207258473 614907087 904843568 140422390 670670246 610394827 866623223 154254863 480854378 960948104 382675337 517707799 973419103 990367211 467830835 905544883 656583419 50102946 400258175 484824561 672484696 343817275 21476498 454291975 140133081 807497250 896877198 815361231 640579188 514394556 873778598 771345042 184609807 560846072 843918439 459385507 666864039 993190555 693712165 513164655 848418550 924005318 310284109 18719854 855261743 664064178 239594593 304743664 731265341 678727523 969481175 376219647 964221061 553365419 405051190 764512613 122126300 842438013 611248764 208454058 924722531 97216501 875512198 525128471 733286055 327712730 101422596 198858231 798357558 858111589 633189467 525751148 378791972 513551575 428961172 986469668 293972609 109933644 858493185 329234416 59189954 873130743 301462164 522480032 562817779 519459204 862970192 136160610 844514928 772417096 610901537 677904773 491168373 390845997 757665126 165971194 105344926 382428680 531921009 349968919 679484844 704531469 360900193 57695585 531193698 807885054 380281398 960226367 19809897 75935865 435712765 440670154 652624867 348373899 634233333 572782770 229557311 503352613 202131781 169395693 855872440 882072399 801689123 59435888 253270247 22873338 133991235 741582426 444252416 529180561 724074468 643171884 251760269 269537310 94929351 927067527 352240992 395099847 588509514 240790514 532753085 503850018 838841985 240652383 541300448 680325649 259634617 548378779 116430689 83731616 501354719 106869227 604416175 768604227 123912460 828903145 859515985 286090277 825107738 657286784 424461414 350550298 630379999 415556389 337476726 971822824 974343522 972421334 216569044 699135821 644858457 772297122 831397688 745269022 44347771 805426941 263357717 686393455 605795008 759169937 365954030 834056679 741385634 518662892 991338729 831789273 757381553 407297640 652530959 820502475 374281447 540265240 976924999 225906834 130387972 260660132 293399360 422321527 846613276 603014549 146985869 958033773 381562881 509952824 795158827 871495353 467975481 543900037 482136506 428740688 512848622 88126473 604989656 706510415 449846513 87932330 521544943 213606754 555937551 580056878 88828329 454628078 818241619 676779634 836972151 795145536 253250865 669055301 261083897 996772268 216003080 349158471 695082896 691689900 976388704 841426865 456420467 234191533 165607655 962303813 252063895 262540100 473231384 624124480 427238507 506188240 8613087 779240302 154876433 774862961 438362602 64757942 913227655 257310371 898087033 84132264 870931822 247921867 446431265 95248036 949060957 20173467 144931477 345538025 927487993 667256635 871464136 373194477 71489768 614002164 170151518 227124707 617693755 474053474 62293355 945406189 659089095 885359612 199676618 907833736 33379982 838934898 353986516 574159294 394396442 100358493 466696634 49661898 501481561 876055928 990543749 569176429 971584914 379216427 194657531 830011770 710380999 432983722 682536488 132624443 100534708 298073056 35828952 451546249 124427312 8023300 445067618 815387505 376323145 199065202 417356714 972584525 193402941 806341054 14477504 614481400 376883391 748063311 512498349 972646993 399334007 398433457 818610380 963747402 93570171 427097124 537673525 27774660 661380613 411682550 156243894 762183311 384800678 591086982 682772837 649170399 116400946 730917093 289451692 529760397 923771032 913585758 909784614 423341907 345121722 558368333 419508048 269400929 372883011 336590230 25196132 512289381 579141933 366436945 770470531 73726490 692998431 374212065 171064319 22714534 212563775 554392174 943614894 740085356 289966977 279398196 723893114 522393010 530506562 867550801 982140109 14574880 309591812 403423724 45741117 282683633 87846337 609392580 835124527 670255005 912153356 652344205 591518684 56795532 544819853 546097622 739241693 237551408 873447025 996305175 475384517 725320951 959370933 597547227 585111432 940878054 28317989 998786876 752623996 623085432 216347088 47274167 749332933 750562937 840613093 19528655 984753004 180762531 141015270 972828711 840399214 823251708 558234918 322807031 251068579 261989446 643287167 375341052 837853094 696784469 628972144 134457332 615463424 229812867 227195523 583235258 532544169 273575935 170282412 120292077 465974713 202951506 956552667 246210266 942096881 968923878 47472695 444791518 216223666 48160369 637441851 263993190 44311327 480691283 262800008 649742704 992509704 639702514 358977837 380091251 349480453 19743277 759314945 204695561 761865529 389963211 217794423 830525052 224959107 459545476 468103592 634649309 976948463 422181330 226126490 84876636 973716635 325705247 554483275 535573686 355725843 918776662 127172383 421625408 294262518 69877885 199724743 376392024 42525765 472326437 928069874 183920047 927661065 990451277 253646161 715504386 254689614 168427804 24439089 414411807 593384188 918853210 574379979 174097294 409474676 411931894 335245651 114916289 975870319 783423409 388078090 701408346 865288382 671495092 887440335 811380827 626756853 265040849 622905778 741723608 506237139 740040307 365492660 102019052 351703281 237322008 607069561 824302337 95784391 773168124 516759213 514470744 612036033 865714323 13277517 414458519 974918117 299663106 157967156 923328818 664379944 859253849 607018985 241236602 422506323 890476578 531800462 789889354 649270350 660020325 975133469 181900897 774839047 904153172 875880580 216099030 723892305 329230165 57779498 800259642 635465831 625942804 462111788 831109332 848767813 343842681 232961673 97374556 957963034 736296736 243113830 11294257 453441654 79493485 807610782 191410095 715103012 298585238 891418942 430208680 828838836 872181290 89587574 469263329 140766490 439520358 243082441 738119375 901149205 197904675 381535209 191050374 37122380 884523312 145596750 922277002 938236440 451476873 273998269 483459119 750187946 184455445 761734563 154223239 927453451 883655176 581515597 94652720 797050574 739557628 505408422 43654270 26343041 813841654 760477412 102092333 103337035 843244761 594576942 775022867 184818282 601228175 476558781 584677347 40776813 633661422 289605494 782529607 594885148 526115629 413082796 443557550 126728337 363154763 654895800 498739386 842424494 26479005 30902035 160922199 401937925 569199254 30746380 571670730 180197751 234358697 352362995 820709411 730337945 940081352 968178186 786894987 331383844 452889656 230175509 9706891 917310282 631140921 341114057 648481543 452840381 369425039 581470999 415923691 962970696 339126160 520939310 544811524 58602881 883127304 444430399 476268900 706935883 23933928 67148313 357737719 765938429 883099019 952842539 361485250 927879158 792104471 887393901 353944867 924607290 714750025 322802785 723584272 449664064 757158483 800893419 219044355 961872302 114425755 344528652 80034605 789955103 746890983 674186432 521547337 823645395 969287730 618640491 718720839 640211739 653495967 89879146 553986075 305416492 961720464 676358388 377316220 142688954 625814562 441318626 389212478 528974802 76730056 898356034 357540335 1752108 173575617 39100624 257483542 837617858 603136869 451825296 21510057 19920788 664994494 702513852 314423891 401949543 15007159 235019958 934626326 891687232 563281264 28454373 11218425 117929226 710045534 593440555 96005382 287315967 535479192 559736318 79951389 440381531 569790486 645318872 552148023 341157138 544406478 487829024 369546972 769660226 483559250 507449446 527273511 902131887 98322615 61331710 741257957 665662665 503824093 961196507 332697091 328423694 570379052 150060146 956315991 884952677 472837515 60747697 576829535 21555213 133514474 470934529 91361869 953085542 279576030 654115719 956310690 186679262 992273420 987976251 234585926 399419544 731141601 238242843 666800105 108052583 388115601 386115502 494276814 618902798 189488203 121745269 574067458 977948722 921619392 10037939 756700788 623191792 979152569 796673124 880503967 856809586 251904218 877391392 137008205 688566664 735732660 51776575 637904059 800073451 741713921 489208682 517765141 898745562 797917392 968980949 814131136 123779500 510135372 720594730 489004910 758331503 811826659 245259055 674671810 712870824 524872127 564141783 42070586 987790850 945706744 753582427 900491204 140000814 197943385 432054391 352384950 521823715 550550523 7605407 290286450 943412867 10543420 788110418 384970598 109256361 806391770 287301062 977087458 627746009 110538876 673659508 64803320 643634248 647575649 258633836 721293033 835090276 96652245 214153898 576285381 652176987 827098735 215286413 549182529 735016770 560299029 985901155 984334658 621182373 250586485 777898811 533355482 102142032 114143909 259413898 517753143 228947498 625947763 628252784 698552144 935525535 246512212 739066158 601909562 423432858 623019380 214434851 853103669 186944633 232909548 117354949 576779350 747281340 76218545 556230069 353218714 205796490 847002674 811829004 636643658 711504473 816835812 977279579 104428003 131738161 204008174 51737241 238999830 529633846 423604155 965573377 143511465 990665871 523499339 409742554 418168540 221192960 4324646 295126833 918504110 633150190 753672909 742925143 80395096 869193440 852416113 701066907 516122680 619983106 953364366 577161409 354151617 678996627 100141206 915455159 538444408 790624538 587309793 947208707 172031171 412700452 572422214 709423994 546371444 967672204 386600088 54277250 687024571 162350779 34579127 892584937 927760383 554218672 872637562 627794961 5234402 984519852 726940609 45815929 882019340 260783642 172811024 419136455 196694789 982797300 352479253 132352578 939076443 735453731 251018772 206257757 754554783 759926621 338844118 853499319 514502270 365443704 659494853 502193594 70783721 758452562 976160396 587290220 531339849 109216297 972137946 769927849 444950841 577282630 520034270 762288929 479475498 473022370 502489816 684702098 681158013 569021386 963743490 212398972 194107151 416340240 318908196 244077856 45974300 546602326 709341102 329893714 975667098 851381925 502995185 513895915 900539121 835842394 694532997 206069667 371566888 591808524 340386893 458417072 568549635 14273452 412907630 630748259 972338209 737350536 878041667 616505150 74151415 86751228 124336499 396494731 27766763 748859835 986558878 958163236 360851306 224443053 490976641 738063532 21019627 719844471 992624815 343778278 624798328 507452594 765381987 12373378 543723834 166307701 747096342 927033118 742666279 741488533 363160547 693016759 296978274 755463615 416539318 946179135 488275326 273276359 105578937 560161720 564163641 424263070 96709357 471994252 211081803 154939578 924838458 771569256 968916789 7201150 237844426 55604000 533059974 307216971 436370993 561921391 303221979 508732285 116036308 66778634 8716977 318579134 917106601 815415092 665070874 917922799 391010251 147517905 290821604 576440165 677224801 866179526 400281169 210528951 395339743 206454850 293808371 579395076 867363826 506033675 646783963 980787958 122149302 666131484 315885291 947653977 779843083 559788013 959440111 624800523 293969705 86352006 930408711 545900181 92159610 584910447 431198809 492231768 394076567 8174630 587580626 291176544 718726414 144935656 873984753 331506527 640168209 520195458 11479549 655359870 332776757 939066586 935216239 871787061 75722381 86022905 696795324 529385015 759180161 460182263 242003055 803722475 915098987 102582634 472127502 711227004 90376225 332261681 857670293 614106085 693143352 337672300 799128607 857760225 260367183 33469508 331641432 336562238 809427800 654415079 627886246 388253652 73419547 240849019 614056836 598376160 45796481 290157381 796290010 611568286 133224570 482043236 702318992 365504836 24186490 832751957 632052548 708037735 214417348 684365859 212835927 339377228 936988311 575598140 878437168 36394854 211528370 367928323 846216873 500106785 919326348 507131887 842548063 179377161 782141651 126831267 496738566 316586816 469413526 710552862 174111713 311362774 528214869 992788203 407812531 473179982 911335189 13157034 975767768 768478338 59449192 561308871 189286114 99525605 467148935 714614693 440930314 528079171 290550522 192097566 179554114 325409139 265561387 752832200 338759025 656537814 750479512 203775855 188901174 772488287 166785466 552823783 330166937 252124760 678879206 634519756 620868213 34743250 346232751 739762672 329732163 249695512 301716825 642877025 492791364 794774567 635432729 173695233 993874142 517856507 9217210 345603568 373831830 767994134 690925251 148898345 972654055 597649970 505505670 399470392 875822310 191207918 270749275 404276142 444214163 43468454 87302658 712959077 318939159 353811127 34603171 469471581 252279355 323198907 500221107 349836697 362146534 124351233 220634100 4893174 21850505 97180933 374006943 187505111 949250345 162283406 873391237 104045345 19590814 771565563 409051619 808726626 190919459 922068893 351754781 896818241 164774160 756886745 510005300 311543214 225440524 44374783 181610840 936042884 975452051 631809507 554986605 615101751 987315126 355082829 389837459 437817408 93246556 364987008 102424417 213254285 378823770 551919124 940912033 325698100 309081049 821881081 342471179 768683074 31395021 416080132 53606416 173425289 980645923 671226761 615689755 72985043 117673668 893164418 782095485 239663469 705993511 843022333 434265811 216511834 55251641 916766137 791097550 899092234 399216224 997917145 169014992 466136569 13111963 206458833 243042999 54098674 249696132 633205174 315665333 106330839 24175779 775968274 553884292 727724572 836784518 162133439 498392686 999874849 700874329 564864911 104945227 586190444 176886721 901381163 100504287 94542471 586020859 773123310 54381817 572496793 541120591 69086341 532318313 946497572 815177786 613437561 336590138 482393664 559674803 421793842 421654202 70978802 379677831 507910150 513005334 642416433 88674055 97659852 798189344 172528847 525115615 439956699 493688084 432253547 808282111 266923045 327475595 890072416 364460026 228656163 665778694 325979944 96767502 456382449 46758986 380446614 957527144 755164779 538209859 471305375 454906556 125074596 855301311 27764013 680999854 447382122 247698642 872694847 312098489 540012353 216134534 31951306 556935776 154301022 169221963 440197302 190700468 101933311 567747590 181257748 801522614 504127118 735042658 374044946 741728129 541531753 751726843 764199326 615575623 325032440 214106315 54677683 795542696 411744364 803153958 659464243 85379041 957473395 856269635 837227684 317363663 301383053 977339249 203849915 940704338 166181729 572600656 700470663 668309800 404001921 423651744 173486675 603191852 808508975 639150052 926982294 19851922 444886365 752849858 573272978 510535925 502342538 616121011 317636216 972191021 889624006 785207132 97218562 711042456 398153599 909351336 488443503 957166572 983312261 827976163 402682207 920545614 350676553 223719727 438887965 618746685 963990297 590835433 837215548 786669372 2384071 938834612 429222821 317950530 322088605 57756838 87916543 263214525 670871631 234642600 645828580 126901702 794373742 443176831 976694401 691436220 34591731 922424976 43793104 556804973 311439643 517373499 48618043 428521025 604037416 398200240 195169496 166778151 915833824 763329497 878470767 518083127 855138543 411528803 968706236 23902339 632285200 754484568 505611163 308121593 791472570 134350312 801329374 941509953 145749763 914038662 824646897 30338663 698946409 341631845 971773853 923794211 732066773 573196754 645411029 916741834 167047249 721326042 94362751 597852707 759144342 605815206 323316634 787021721 927235979 647509386 568473075 565378173 682673828 491776835 777934250 133754469 427813462 442551849 365279587 331158593 77869492 952352621 867698536 95204316 353438893 156810192 510167799 862378287 714359262 320594892 118491174 990469652 397478802 560659853 452356939 313264941 645534939 809841473 537594661 312773918 883010196 105238749 786862876 377630903 438110606 491289707 287844822 264043444 97354406 908927609 813050017 882379743 871415757 734808502 48556892 988057903 498800747 796498466 570180183 326077675 379855532 917756255 906527998 56531139 279847385 883990809 430477978 399204991 59328420 365290542 637746338 375354519 273564264 620457559 876324746 112113373 644726864 93312187 844956555 758086834 115495413 205541496 584110181 692656390 888857705 222026787 841150001 103952609 266141770 969927575 300627628 630873143 596481325 290156397 241709201 58969159 710425398 922405999 662170997 695678527 253080991 84144166 945179039 435368130 94451599 931161682 976522233 266916998 169140534 648454996 299968123 947092368 252802071 274694150 32323115 777240522 544888338 123574256 934349690 671562333 94100733 559757351 434789527 62498922 5184692 699851924 775690400 88271975 802403385 883173127 913642445 402603564 298005251 325372906 359055921 555554122 838562823 46238947 459113375 428766547 796930718 829115270 746786342 857070001 440742305 468311626 426631961 429264878 285672309 556389605 595679994 360322251 666898630 477055781 762650642 767629830 532215274 21032220 435634863 948384921 855225289 51154635 796866481 879458661 24272394 927526585 183419166 461310813 243554077 306747944 123714061 580590931 36886644 218120763 476384752 172699951 798734259 192703257 481906936 723487508 450632480 240214959 603613259 291358923 544523697 957623907 337034578 141610838 473512903 845450243 860887555 856743181 40145961 750392139 41818543 962187570 46089364 888110936 926512108 726622449 520998645 514338925 889100478 740071935 307189792 811626937 330190080 1611940 940213998 429253444 681797720 456014647 496788226 221774570 732677517 762485688 721149655 353567928 584535552 219349161 768542942 536567212 934280607 185345942 490889979 289725170 452362852 391233764 20639948 550910852 583284887 806471755 775077992 994909555 788364714 798729203 265827389 168305509 999584358 456683776 235941765 430984602 967263654 103227582 325767267 619109433 633799433 559655945 514963209 417104856 422910686 941050300 892547103 748903169 760285950 418907115 281711251 792371929 28096547 451388742 549548773 788028720 401432467 434218947 908906598 180819341 755669330 517670245 244312077 325320300 974440265 530605718 181434792 760961031 225927133 889558166 163592034 130834537 684525483 146855578 38286667 137099057 869130014 8046531 555794861 932087056 324850308 939539093 556073054 86065178 429187609 466807498 538660801 247761746 270256930 722512147 727621783 649422 838825145 1849924 299581993 794857128 31541105 989005601 520511862 147380619 549024903 469745595 274581203 512764975 819414606 355593337 246315710 474719060 176199656 519826428 934442699 694585446 894191793 498583526 311315067 882264737 520823591 796204410 652174537 520252055 274926172 149565226 871808363 401780708 473754896 714213298 623969988 721097490 69740622 724166810 654996966 869390909 246049672 192888451 252100606 893974936 817017634 914784523 747056919 580991643 176490199 331661862 872735680 72351505 11713025 321246262 296240377 299834614 38844449 366804362 978037445 189342833 545439255 350769337 283072464 496661708 909241133 833988185 158497904 748037548 564408190 170573338 349819508 339525041 739405506 634237399 342084476 256660767 484237001 457012614 398248037 659331588 247033597 146127405 576219670 78126195 308251714 911732073 859964217 783714715 980555531 488115011 152325664 529461703 214944544 523173122 577844366 525196566 490699054 417522707 535190557 287199150 386499860 821127323 403399435 979591485 891343184 760564160 457652190 434846071 106701104 639594849 582911732 60409763 621372671 687141298 336083112 926627937 277371991 177011264 855492170 340991381 44380208 652788565 19898448 498691592 896078004 339710877 418760973 7598254 616310411 771983077 631617369 111270915 780690709 733763736 802462211 828329802 858499139 795544904 926716793 357410737 156433991 483353764 821630652 408152829 219644946 354120062 735191624 807621767 41203045 627075905 858190830 505110486 813242930 841317171 266406153 370157764 512627042 25467290 311299372 557508611 516551009 809072161 930635836 343694088 967303337 712131920 391449633 657101632 413415764 602741429 614314285 341581783 581384086 267636718 284259972 714229935 476527127 746438960 74002063 277758643 639563863 280143302 172831823 928620833 950309059 242208787 222011132 977767960 339547967 179543113 924861061 853177733 728521756 999033336 689828673 419602986 257906124 962166322 822519003 358673415 379130763 938026987 423797884 710121267 968873977 739241457 521412887 973141861 270020371 566563094 659169352 591683528 206277930 201058151 738461175 804521561 224005407 575768973 209373548 305648298 586809813 519115676 971810630 505133707 879390829 757195536 593375959 632827801 8806804 736342721 727672306 793736363 271323744 711483590 753184467 813616676 966363356 850768685 925906701 590570037 113901695 254386632 673579095 330076813 430730886 151968530 102785818 618749088 548050616 171865780 868140264 446480481 533952621 274013511 332106867 418530104 498947093 678242786 683540773 253038231 611117342 174699811 564298651 351315475 121116398 783263735 231460487 684589655 579282414 256574340 294927516 210667702 824240288 501940023 448217147 134860466 101618665 831288411 815519477 420240443 227040918 433133768 261949774 483905213 881793237 632051257 797634407 279531762 677873270 764441017 714407765 612808549 458540501 499893167 39245465 460338316 879909236 256066605 861470327 32150474 842395179 665418686 766533835 605907333 210196074 601411544 871421232 918785880 191426889 106599834 206036332 575092868 244401140 552216573 847236414 804558336 717837204 833980769 945670244 371634512 453583166 336408110 204664086 925425007 938218040 537970837 522939196 737065863 443724371 547751362 757839162 472198472 25061863 724055441 127000126 599810882 102023678 170922465 124805549 363564998 429188722 913452257 139051889 139773454 149669659 599213166 366438141 436633063 180766552 189840986 54279984 675423010 841853384 650894261 573782896 860730564 444659041 911435260 442237953 624252684 435342633 221510612 925474366 711547605 425967718 563245661 445773330 658792966 547889950 459752876 200183108 199471453 120043073 945038992 138261943 216960254 897525658 748888244 636962708 814765315 516775744 644310899 308248563 856360482 225593646 617716330 957976581 862574753 132416275 785165665 166464730 875761117 281439706 28392546 77815182 820497524 884541887 984050352 381200650 437905639 975489110 131883189 847234349 460852796 608645964 501303883 617336253 45477870 678185149 376627473 997662820 576110840 831667201 998984657 648701316 99535173 598358326 414368567 992734406 402381137 510069094 343095692 166283936 919915832 635822682 150349956 83118798 812418217 391540360 883645244 256395390 83390648 615703338 502879341 828472292 829609074 89211649 345558686 655961882 485561552 367280012 709166682 457359543 57977852 400992793 12168809 363524524 89011548 395206678 171361192 971803852 608732867 119176032 44133210 894915676 711688534 912668151 55867958 424440627 702725834 785910116 178308670 871943047 586265257 871939914 28708923 111914762 736909216 980281804 570661345 109519815 404393102 730685595 136093433 209000077 686589001 357259865 701383780 837980159 367225958 770137161 498763079 417881589 347269162 630351673 35779307 322910869 934951136 413936727 884744073 309279699 131288558 754404098 736950874 462291805 93512894 636067194 872547211 465213117 174549950 108790221 367119181 324593436 677025839 968046012 662675749 881052149 301494149 356735799 950602351 431080716 993578334 165078997 348961962 105384208 397457387 9758797 456397568 164240161 353162959 349467773 542053463 562436297 214569838 817745927 106597197 575415842 64805473 191320761 74541252 127476852 298551922 794988120 125839671 726686952 781212404 722828050 531145322 842674507 367758682 834249915 794605730 773688946 464037112 161100486 825447836 152965027 955229669 823060993 856789341 845956483 726765581 953855833 695369395 336221212 468268112 458001402 272008347 56456911 53372131 552113142 469738879 784452280 844649708 864611074 753206771 829262406 818113075 221041178 291808496 473651643 308600315 7738320 591213511 551641270 908062456 701999385 493596699 333165497 13450934 272931166 381985595 216133656 782564742 898504862 209786189 242371048 213015134 299823500 270096429 699456317 318434318 377968125 451859195 671315908 762885054 495131497 367510571 813899360 557128678 560579468 3211641 10970073 671271836 436852673 184089957 527620761 744033223 942504597 202431860 345693458 389208604 376621882 633802642 420579456 381977363 917286799 80090736 859986568 245657656 631553375 42926472 799209726 513082742 150571914 872508065 78127849 651648731 778462555 635703661 306978090 495918234 472108766 678709510 684198683 485534749 930220027 449691626 428770273 533942376 83797763 255259118 915387844 857424350 559642447 686007414 117699562 238277200 740419818 710682319 725795023 610669217 763502489 760043471 955085767 801389398 198177360 664632337 174705014 376768035 771570427 190067879 97338319 401429205 94387612 843526241 362199825 558768776 745458172 8833790 944097942 475978895 507285137 530018978 1182089 411351141 790577141 51333099 173335570 433169292 838376524 456175099 11309724 879132391 672611672 828595864 606490653 898083846 615771348 386760328 818663388 859710254 995668988 788354637 797980625 413252278 603287803 926686989 715171657 721479808 52957490 119469599 30407046 157403421 217760485 725377706 745993768 243557887 970835022 479362306 378131473 4628820 31288017 504871316 394102900 629570020 775898079 557727447 420658111 970928747 633484183 855007214 34670853 662587413 206497836 295346253 18081403 181258448 794157274 593206897 467229973 552892114 285750227 596731647 796132454 756781779 650522665 53933426 958191926 822995173 654637507 573368908 469480770 761684364 108330879 725139858 244318731 283682467 995671343 534855997 883380265 280930888 473106465 933948615 982902338 867884549 510058248 154365408 587828596 832983849 9188989 166750415 56187406 310668908 118938976 486357732 457030489 368681224 559401190 657855128 419549121 959876610 567743090 678605988 721560414 335349073 579629593 894415739 763845722 472637174 175246142 280468062 481412139 652284465 766479466 837749496 904731241 836369129 148123393 674841093 806888560 215350398 539451212 524744079 264063207 925997489 380984375 527775291 298862353 904168876 884510740 587383536 846418812 388258225 251907798 515041296 662918444 636211112 372778850 628144213 790556787 699951127 725695110 885142938 235415723 126700223 614914435 588664772 127022433 646284895 776924604 888121014 376118061 168495936 163907675 139454794 857266048 707464107 848940343 317136907 702682044 216790798 538696683 782485155 414507175 317366224 39054517 177528904 305722371 466167512 512363156 939840095 287935128 935885658 283587290 208298615 847137772 662340756 959388486 524521726 243089779 299603841 15714770 352971986 635285859 622801242 300827873 947429053 801543382 228176439 897757068 559198538 886385956 540903469 513484815 897953917 584596742 260758339 473660037 540823021 64468871 874269435 250804160 470596720 948988066 471292394 755069607 411222581 633558947 211265181 531083992 789222449 784360881 758301508 423536677 407964199 378440601 919738766 363987742 236836561 538051916 85622184 595260200 597838975 52020949 56778470 109509409 421435688 800883594 796181750 3364735 225353404 476997460 296437045 7735658 797215150 724456520 116077772 377826751 859594963 790457608 947739484 558578837 428483921 527195524 276990893 799581110 57364307 406531539 355606122 859711819 21250003 555116454 611463927 395698853 116856761 174475165 987010011 244566325 104470341 647805586 886483042 643168366 853343828 752701888 39991419 68567834 845654574 661348269 798966848 474991477 362512982 651453534 797005882 734633094 976903367 937752490 751466611 57732276 480760641 985421734 738753539 841463235 338007771 960058857 595877057 178577466 390488962 316918447 335129168 866942565 868314825 419061163 354751490 950140608 172561150 963924863 374719119 436001955 1047501 124194570 945139713 710996003 331820580 19328079 599068137 638026706 230862308 183318276 761060813 307040729 61756836 811365272 854394981 515153618 939662594 120509589 205881277 690154767 126373503 484452221 853365858 80738208 796709826 53352940 812083721 344802997 159377988 841630982 620873734 468594935 56218920 55294320 603299232 605481442 838893756 286172553 137948146 170220133 316123404 208446070 688890029 288611676 116930949 568565283 700420923 534129249 249651488 671515228 566133352 766993683 344070697 689778408 381600899 741940738 457874156 210651272 285915183 234922130 177247726 247307225 279156626 495049133 916560537 433093615 776207836 14516538 794801771 578130966 249851640 896183949 63816703 981675561 403952270 673549449 289563993 85141193 435572080 789984159 209379218 715832060 351711827 421040605 526357135 555368277 331450471 847012686 80783486 158332823 471939646 818680557 323968684 586756982 519884417 235969927 99308033 567808415 282092565 417412871 675411456 738453099 257436150 607941013 205875999 461995443 866426450 392931516 425078501 48652768 251132716 506504215 263893715 500781243 409760376 890535864 846531781 735138759 875696442 305548299 686237046 156001054 743290326 363510903 630713961 516011712 383637869 887553278 719009025 83988865 131812682 447817771 668984717 830966197 628032845 654296007 277286975 632691692 960222178 768129080 898377942 510032298 37161229 332816524 48222408 395063812 466515345 754257154 994714748 537612708 789205109 756076217 159540609 584627450 7297453 509604913 507920645 136333115 17859707 406570925 736500345 513449592 374353268 987587506 70595068 28840127 197412418 544294730 215368537 652598341 61480460 452956040 889849149 399988949 461831284 942657078 249160035 324289286 202390912 693104162 668123147 597347562 879127076 81442823 732877316 548554153 676221867 775470307 496061242 162538335 896894137 464305694 508000000 333504599 897282630 853062938 166154607 343395783 209051098 942512243 55314781 719078704 421974032 919801432 727154052 498635157 758734223 247095396 502033992 847560229 186280074 739968132 650580202 828543732 135935404 284196898 666353202 553655945 959484510 918840366 113320972 376659829 298108827 492655878 494823716 233032303 911552301 342323500 640807302 604598471 747335398 871928587 277016897 908099237 476738153 241994234 759517837 499985523 698532765 391964180 444699609 745954098 360361158 170989652 493295495 534694316 247297185 961044667 668169355 93586918 677408263 446506801 907696179 170202581 886401443 649989797 317639235 24723039 730041246 204890848 38741990 241704308 189823382 728004321 277028632 82194641 827630927 15543988 876874523 65372226 242574488 935529087 480383005 62419804 443988239 247838707 647545268 422569006 372105445 978392487 122630466 873841693 652121902 673707267 957260517 754667315 761047865 92732519 296226607 113412932 628073359 352243789 858777697 534669272 444281017 751397221 834966592 695064966 965284543 142204682 186454793 852008799 490109895 903021409 622923288 548648419 6213330 297632464 944852657 928351134 825132326 882826477 612397067 410311671 825552901 999517709 994565993 964817667 395720737 486682416 902322254 598995548 285016132 182569782 334392559 80068757 771146837 59917576 587991656 172122446 898206157 799164925 648629528 704378926 420695001 887907787 978407060 345149907 451250804 45014520 805023696 844055688 737167823 28222741 537114190 759530398 617425288 428015359 625831798 577641547 126941022 789292658 162104691 809555446 987652654 796418605 975295750 862959566 120968286 56136653 31799931 170951769 134126466 492861290 192581149 444451573 121008670 963694977 148988761 889780691 909373284 282243462 374135156 822437692 350165495 785969948 82869101 287949866 682221965 502979809 888353286 740237262 226371353 405100604 299080452 352513114 795752289 656531223 913857145 41494805 149185895 549206096 630698507 414998315 599420998 955907719 963418020 245758475 31984586 889240810 429013849 614554981 277920622 308048838 852673535 566351036 743712788 374818017 869970789 897817294 399569756 239151475 752142816 396016266 625362383 379583154 490984242 647868136 667947401 777280194 663127268 18622428 761102993 368609089 15509425 321560497 764717020 770275738 601366872 117004802 312388713 524681283 838573918 455962981 410123611 904542403 731346154 881032868 623679518 661534313 871179867 104866173 228560610 398414122 812601899 489503569 313771092 878945824 873976157 287843483 706776043 729595301 161998245 793145783 500587402 13457422 219342980 931686543 379358543 291867874 687252792 953851144 812732259 85450974 321052772 699250511 364259510 609823501 571523699 17233499 74301 962387855 995443440 835724532 663703000 654006754 55363899 651875453 350661906 859215437 291317983 594776695 237707239 611959682 634134465 693245892 50494116 99218650 330432437 672067881 47309641 837140864 332463484 244100201 351768540 498801610 906289535 543162855 843367935 651486771 271381257 177767447 700112219 533618853 831118463 705233326 867773925 926081035 300668215 141687793 778272978 424234472 787188540 811728814 265669250 601225716 962113024 729345592 912447576 174794481 342720190 803696559 867921104 113170319 102241151 928000137 945967756 971632320 282310431 99030005 491623276 801079938 342294201 876400486 947481683 433426771 857965739 700813351 179315995 708923433 825374493 353082492 570347074 6774380 798365624 820169773 414502743 55622675 668007164 197015980 196828558 264463953 60467930 107109295 221454572 913216366 513569313 219317858 363629570 922147148 30781951 43384324 357110333 921107805 547068414 45867804 731476696 900829829 221605430 557100988 251477580 409776968 226469241 816133056 511190900 346496869 747257697 125109136 123257840 172957648 87189729 905858730 253287132 912807017 236872035 133001889 573385507 864442613 365415550 923909212 275378878 470981066 781211460 493068981 328460399 252078018 270158533 927950794 662364851 849994969 775853125 881535201 825163982 10193518 670289210 627297192 884048072 221006547 762656419 320708932 290318740 343612218 285154417 55936216 763516184 52458331 224756482 980519109 319679544 559781784 446199277 249549603 938140800 795579570 537066064 873943 508681703 544302560 686887501 497764741 501799890 429395084 936450122 38898572 743237160 432551120 523846170 837970403 443673220 635604985 345704096 49833763 818219367 227361573 660643402 496295623 369851185 154781218 168208482 188858657 15854770 307033761 659893485 388355566 518839615 240298742 731547117 654733862 600898618 654727270 345094305 294187925 118725154 180183414 317663677 538851980 783994664 629174554 496712124 661458662 782256842 554405007 666590507 249787931 78470175 388906457 150790454 700623686 302762928 131138404 672844608 908668760 35438756 479281617 88489863 405532329 373531559 582367728 391471560 437130192 715332432 792743879 133099167 104711794 675003154 644838397 572361346 607043213 694667568 798943178 93016220 822446672 247455948 87928999 322208010 888214576 209066928 407384542 801084128 894774058 572954679 982352034 166122758 369747873 411303404 760187969 50761080 644862894 779065415 327323811 469372918 249056305 741029623 384437113 955911122 900864534 486402574 95624812 861734554 582947589 20579176 685922455 238317543 756885842 361913845 20687776 987244138 281525246 501876226 901735863 368222900 572900526 254271748 782984306 905623091 912181137 572827773 322416673 792084186 790139203 40808460 592509260 408224780 167287024 411123561 850025344 316631295 914208876 344977263 135921190 53335037 186370744 837017405 237106035 134039516 130048307 529446628 957007508 86791758 686849498 670928191 845972362 589126331 116967933 73788228 864498036 294774335 103375514 815664221 818159479 73910610 96980857 333054526 179549531 673299068 48478480 306701224 906164341 724347325 63994321 77514497 819805529 865850753 592342905 478947383 260204842 212320888 845403948 374619517 543993432 229998863 384487461 472833732 774430708 413942855 606883684 436383732 159553948 999097543 74577484 891550280 486709529 634044288 846608916 517230484 247680405 33064144 791397382 917866004 374523975 634985175 406044891 931894795 468180872 113983484 229043438 113921910 870680797 261591960 843114537 163635332 58949640 119142472 605352089 362828269 754475341 994540757 684889522 80759965 701963826 182480289 282064728 79799282 861018490 69879126 874441880 797887787 620793891 192427033 939631573 266339876 453554284 236002450 650841273 103502029 208719180 924960921 248296432 674631450 652791803 901465265 993622948 242251042 649261801 458159555 638932810 16955572 165615815 235814119 848897955 666679089 825698254 935028721 373332821 958995019 894909383 592167987 958293351 306173498 246933684 340367552 854543484 389173479 950019028 981908423 188995118 51975987 237294889 733325224 847819364 561170238 243971481 14275828 945288472 781647377 586432018 71591172 40187972 785277731 327377384 834471116 6294445 513824598 326015769 90720203 947560170 78248991 542637986 700644847 576428342 887872911 5312035 71594456 75172923 963071553 81983953 224446282 712475304 731397130 933142159 624656680 208088792 735071115 169084940 402603232 354588315 6637202 851047704 487929121 618286327 648123056 865824765 664793893 309768791 649697635 99950081 970359765 9135144 447059309 978223498 438294663 590626967 449308851 593392754 540129581 222341555 282217479 441822252 275237135 319446677 555377084 613257139 269766472 636485614 316666766 498028012 39557388 893662069 33814623 649716401 119177105 545779511 975723897 531678214 604536989 596850033 647797279 114495066 968075943 398908483 636677150 562394627 356044196 351597637 770980324 230046027 434445282 155111101 167470524 722637514 556153164 46829447 248413549 646741114 855998551 932089315 565112342 776807858 420983317 360503967 110487681 545522081 183894806 251681400 914799922 470871538 555706343 913375115 863314269 719674227 859236954 666583981 317976811 996162000 829835239 816787439 873528446 299782017 530839345 68706395 248125384 659426348 243064893 867841766 737898042 900828026 932800857 15579854 977320646 447382394 64018029 713968256 405993931 922567985 314610919 43795960 49084372 696426031 168885671 459007417 468872988 415930830 933879057 4817753 389637588 1890372 329873891 238488580 976232556 267556355 29540452 456602586 474895538 303476848 865709406 895403064 964985815 297167029 9415143 24879879 189129909 769568185 303132732 67062694 139738828 142714502 360586053 253300396 169458767 399193271 383024846 929301202 787506910 893018006 589858391 368207020 748802136 562345728 379464169 451718465 251678564 32030534 153385456 392628493 438414917 831892652 637863266 572243652 881708358 981081673 916168037 502603317 315723232 561034460 698095175 458540720 666293169 369646609 951552198 244491318 962613781 12168011 177906849 226406927 381212999 802712340 935854283 45220259 537267863 550521631 703543298 897128669 931479378 83539818 220561933 1976600 677286998 915908650 348120363 241039868 747702099 346459998 430680301 305899587 684225501 675065991 511690481 182810905 903846725 757861725 292093333 981911222 485826180 391109888 328046830 897806686 618515075 278719018 127012492 170350665 851966015 189938697 930082015 150668385 141375149 343425482 767087287 890211087 706726820 408370490 276743664 741859757 82042804 465605340 38792295 668862494 134398123 937620135 475310358 277290909 27957862 643185424 251514414 725268940 543496954 946705448 270717036 837288297 50662815 648343329 96261160 69514420 603735421 584499838 461917282 755586670 711209567 894854126 559853645 82748000 48057313 178364698 316285217 8164590 13604061 725907485 809480576 688569162 526702521 740938620 720652734 125780766 42372515 426091718 456968528 83331787 629484989 578695218 21595355 82107353 399798202 945361509 338745379 503082737 661572467 223944992 671314109 271015969 351708906 173901783 113286997 377979381 445127830 78877141 184804241 875008813 339945829 460331127 867028996 533169652 628899508 382843552 852277468 190136972 367310143 400414610 887394041 678138481 862177757 146349307 981658599 776890156 73210781 766822065 141188253 314195395 683949586 882801470 374488336 278929276 273666184 108943240 199057962 712325193 133603901 523140682 402818610 305401074 958134490 956654009 824730909 345318481 322674286 118901747 355416675 209011097 726634844 916928284 933064216 33901321 352944032 130981175 808477517 601718123 929949138 281387180 782925248 817193217 602999877 854879208 448405583 560373720 127856674 177225313 465763519 175211082 88708625 163229559 31455454 780229127 280220246 996107255 472218176 890652014 321182785 157017168 124648471 572249810 356749163 785217665 622177738 286128204 140817593 719200940 888875520 439590489 969047096 975957103 943925804 60236028 243929442 900988533 498408385 407430701 25391488 868044605 217019910 787434122 143747717 779846312 542853765 406530771 814322743 700851290 142029977 528152672 495418287 888990142 321754775 660312711 774929943 406919992 692440798 759252177 565172188 14761867 984931534 927741345 26633262 757444940 802301643 216652787 77989272 453423367 127715454 629197238 762242568 615889155 840865646 426515415 673560081 671138026 152568981 355122534 569277596 929843735 752223340 953973115 134436973 90103688 898978114 403914629 131885114 59347085 562893228 800155899 617835250 73945883 338509867 682887709 883309958 637266538 392327819 673155874 25053873 408267146 384476434 794877294 581913667 756426367 384833683 729675415 586298158 595720192 947229416 981092154 814739872 990207105 212252340 295614350 729205774 761696435 395862761 844796767 675197604 341692858 828682614 712840460 22308031 525030704 746011656 642453385 242672867 781963102 861675556 19594758 112400021 998241007 154390621 110177591 741749274 727984594 173766932 899724372 327122818 370128990 627718706 930319801 744852391 25846833 891971252 16359999 906686189 617412579 964622555 390908927 453727065 695478038 707467658 907906889 238008269 317009164 445033532 979731292 255037394 848999523 932210242 340134545 803185007 256761579 882241093 841330963 709739564 9199284 297586315 931983398 115771070 487959496 948279343 73287947 590519084 278135237 958010386 21632541 237820412 777329022 29982519 854124909 887279594 669605902 445657488 510039039 895229689 103896146 293201505 529588018 430447975 95577978 210069646 25111647 698680694 398406513 453495715 379747234 289776073 952989741 440963558 961278404 901571343 548897799 40680639 20537532 483411629 57916023 214131956 728468660 499723607 822960911 744235041 26544956 190851479 107236546 76900042 950362799 362376448 607916328 68728779 666843278 747551645 602133117 752588636 713148369 194931759 696645288 629962265 641146126 681830971 606862042 443177814 520108485 586258534 394869574 723040516 487395014 829338143 936038774 361570280 364607806 215304358 640851336 305464029 305294895 518060064 724957127 66180252 631601389 13379321 842809199 615574901 746118331 822118534 324120741 938090443 640302690 533475981 800700176 286020883 317307271 100675498 520899535 318321943 6153973 409137769 847004441 106849166 494358109 460275272 365382198 426095835 481312852 717627855 665154411 906017468 386597408 471568567 793283118 502279797 437166857 170851778 187466952 128640905 606707756 501157362 606615243 773731540 30083078 419315966 32417542 880983691 776755384 229868576 62988117 222285521 941873549 177168203 805227526 864425774 414256768 398399262 281613126 691548256 661180600 535609533 14735587 32512065 978165613 737794244 431268170 883256474 988303260 563198255 385123866 818133868 437628378 408543226 240612499 715608936 261822748 527804057 733517076 347568440 806183110 30542603 413722869 410479114 108724344 995054657 407688499 729971960 863552602 177801815 535921688 174265086 54732220 451224754 844944148 117616189 990102701 68438037 940687282 581213247 852705286 423603170 91964498 502851109 421221610 508988369 992072666 148545244 788877956 600677663 643932699 164035811 480915383 862873847 248954964 929149935 16229072 794907933 153246145 481788895 241114574 77507105 67732322 836666234 275632904 268683740 686574176 552000833 710697161 23101403 804830907 504721685 616310426 759472304 343443067 137161216 159027954 817106153 77586873 889595833 742153566 118295648 811352786 357220176 539055091 165700821 492492472 32869795 746405267 791702587 337402016 620161955 531254832 231750787 368383793 866883234 149071462 648996745 716933457 381374962 692020219 642776980 145751824 173214316 872851756 190369562 547553658 227313511 564541498 209478692 77118713 823543495 202704179 736725947 749781918 516883699 468496255 484021148 321782734 944710176 956237354 327692352 5887332 147003093 715297239 542602790 876955166 314887850 181597618 358527462 558599388 585245962 482385592 373887722 893638903 215730080 84471132 974344496 180716088 509944884 482311840 558311682 193024184 252281707 34639789 857871238 139677810 277381807 290633626 411183532 838648351 868062214 468289017 919128837 594605833 8584418 906347491 819946129 571883283 569967830 147685948 596043278 709291587 369146319 433813762 988599482 595691302 306275265 862478148 328300732 310205195 72284085 779712521 126671534 187773371 321615503 225808989 990126770 552004903 769412493 891098454 680709804 628833595 266342097 809221818 332774916 171605018 767397792 648811495 439467980 51755221 281684126 386563119 792747611 515306635 989452928 519138850 389505314 22719080 177890012 832185645 159634291 782635644 718944348 177870571 661774229 481920043 599389834 229720752 632382730 737391689 694064152 237983466 52215743 683710506 808819799 420323943 944095557 715311446 826721845 397324770 501815253 684224426 567920172 61081573 957965194 857616810 659094134 852163470 787240728 97451098 835816697 937290369 797528294 234111296 369462895 768944085 417275352 963532459 758927395 467424546 478271294 732569420 594590660 293475595 92444660 227560834 505051328 256705083 824822180 487008997 907336889 477754522 749199614 725050167 719541112 572377330 468381659 65270442 175587996 368535047 898948125 142123638 639380546 422893448 371520853 660900613 969357889 65555754 824726274 654064146 275060470 37880604 243577054 817845757 62580066 544149061 630517130 56270863 102758381 616437302 640957205 694801914 405721068 358688051 526462271 9465701 273784491 593194361 847305449 442962191 158644726 539493099 768193456 394006688 963775439 865427268 136698301 924571099 487864943 959638983 39409790 818275495 653673630 602893613 6636190 149293175 305258209 155077458 653752778 292744187 588054600 144099493 5610355 254419117 242706263 486191814 720647296 362359202 925501520 384786956 461677236 638238512 454543688 850728327 592573498 215970911 143226611 920419901 161807747 160662288 103625614 876441491 98644096 589469138 81663724 943729667 895687899 879322286 578195743 353875520 688868281 65868098 476627864 365901926 532375811 844167091 596454460 318042495 565840170 181839885 121028378 548427698 299147666 102730905 647969954 533919734 656087338 175061159 619113431 906903020 180357767 886493273 105626378 205723777 376824333 204341819 345587854 916547333 431989925 42441381 628411724 170189477 124772982 798849195 721852411 751281655 165101091 688902197 949709029 431893867 258622267 78052044 186904243 929724849 285813804 976783123 111503405 506594982 757716089 34213265 463035611 509729281 793774049 396611902 464013678 308306075 213282727 279448131 244083782 289285446 190979027 615044735 264982344 103258854 562940817 23815276 93926618 587591016 872646833 896859398 44473132 197627566 188165251 460692760 475056075 292461689 246259717 944283728 520960108 896809867 304551175 870385104 940993902 583573903 587439267 84073028 264102003 41415530 747389040 75597998 734537733 703694463 156387757 925736149 985701592 591646005 258680140 770781347 848258568 57624905 973607332 140578973 186790471 348183954 96352257 546902734 82035226 117738604 130696679 643322691 427358658 131949504 974463115 913220026 764103594 258744715 491148135 180413948 871095653 272075994 652443449 196741403 229510550 578962109 529206768 222101932 856537875 231777000 664744120 474887753 778087988 299131686 382477870 257705312 757305938 443453348 663973274 445083126 252844945 135986330 453932948 823764315 501837823 548123300 988259518 600408035 93699737 641738858 941473437 40812210 714926539 264522970 880056118 182250539 68377358 722142468 28954864 123179727 279370579 669853655 604423921 930707109 613964968 185179698 537408554 241912195 908133935 221940156 41714813 11272786 560505562 518273705 547122708 127160076 682647257 720843888 556186610 896471300 828511284 355994438 358799127 844661432 253550159 92115546 389388056 658056062 58168839 989736124 613561769 263107638 686623363 987389164 145607613 214704414 9866893 527545543 137751498 111133012 709706099 269150525 476648679 722611530 893345423 273722267 501286565 742779363 598658640 833350877 289376972 586759286 340595284 622673142 268894888 820627327 930556213 975889364 855910949 133867306 735028762 894077499 237492998 689658448 898271095 874843328 310603764 692982255 850105279 665694846 880956525 518980761 698062420 800939812 318541138 236761551 978617610 920195356 477558979 913438338 804608130 825703786 210268198 903770432 171196000 904795836 329595467 402858339 328115248 372724844 111611644 539767854 899007898 833681305 569109612 57650012 378666137 902165627 668331802 10243823 351267275 69287817 773350452 351315210 935515447 421189485 708545530 233361520 854295624 731545408 692519037 763446885 814576882 581022685 814026422 849283284 758203045 531767347 53620248 582182722 496219296 626125391 700651937 582087944 164934585 523298731 874686410 600300123 462318382 610024196 449291315 764867119 88619207 73673551 894975075 944352540 22116304 185481774 502875646 776287135 137637252 941208928 182031603 34754800 208537363 387065962 507946974 708938773 147781524 932471269 659384611 198515634 657280480 375161102 360199282 48993409 559449070 419941325 251945398 105274526 748492930 461534349 244262033 333739531 287165198 462463865 225851968 251882167 118029053 269821659 473454217 823755151 583142104 224455740 590448642 541575535 32565733 181854942 277039933 654248239 764077468 377588161 121074703 17893315 370823302 747400465 763898571 587432092 884841546 739176439 318359193 948839988 246127888 347413703 968009971 838764097 199164459 435902498 974851073 121392105 482832927 509998122 529826631 80697369 464121437 752443997 389017693 703091998 561785116 232759044 115115830 935739342 628846878 824316533 476956316 576812270 123039506 261553640 465663323 325536254 156147650 61966703 102748611 269060661 445104177 881421788 210287670 814046389 951910857 249722194 72484988 912910021 391547789 638317337 110657680 194979395 540659892 356604555 784576214 883097878 975721772 909121553 733706648 880323256 999859877 738330335 352420050 850092108 148538250 259517307 968181654 269947742 912804203 31359741 144338256 666343573 299099709 191836260 613037325 849629552 789923251 872195143 71479977 212181719 76687443 725911270 69714788 581277195 289501209 503560050 792302792 816738356 364625121 469439315 862077328 57124940 794780893 283198284 264010958 653475181 839991502 780993409 670432345 633033702 777249153 870386021 410039989 367245298 615378070 32988747 454601545 372106399 830456647 122407632 745701306 220385892 430915619 948757747 470536135 379732400 587190563 451127067 134067512 139249249 42192588 491259395 328168281 414796989 308946859 616586715 576435274 170125783 338379326 42460197 198981928 646313460 230372395 392672705 166874027 405417259 745290111 736166969 905355050 704159104 999390189 507944458 665701346 158389484 593598788 135495473 433060697 146685996 866288979 406703053 288580404 105367711 2017531 656340154 695362582 7196844 12254111 998061094 868802730 978382318 805589227 913542143 911795466 467254690 175919087 225056939 218047221 159446500 787517857 505570920 715181786 871683679 964456042 650470008 998723571 276605837 392035948 159319930 513264544 676125336 670814873 906365198 635133736 20826084 154588483 676156361 162504858 264342052 331867217 605873564 256447431 39348586 917543980 979358779 91188902 974107077 936515188 173128388 907792040 741654321 135805243 759663300 944711990 888203059 822128235 309552443 575810555 27329152 937911991 821036985 946605963 613761889 977232719 517364881 142748916 924623622 411988637 216032182 985736811 51560764 432780869 857337063 860754547 428177287 635787939 860861339 633662714 749961622 505419333 862781530 573937750 549529145 397028440 165178642 60778172 682503117 677737830 858268019 984887711 584179499 536267088 50909267 867938088 207201418 608281689 888760951 200224977 916027596 487055158 590472094 878983597 67132539 894879076 486912998 935302340 899165200 284230375 524634212 32774955 865635188 102694381 613862426 665891356 868808786 322145910 221996846 644930765 838684883 800304934 432987809 932666173 308858524 264730445 621293381 454177165 628185866 918956506 776497625 596349023 117692024 444827001 854902062 436084839 773470719 80017452 373579999 886675161 855688723 478941786 93489701 68677717 841432387 222511177 269492415 925622545 741620605 700124262 690047034 430937286 136896849 934259649 187326845 884502050 323794932 534049403 57680626 548984682 213594781 950645027 602564768 747215581 469817730 820102465 377674503 13507787 652888878 190287973 315053254 753755062 527629965 243588850 211246178 445134415 665085341 134359328 66541323 368163779 548581503 162086177 413340563 752041089 311967570 418299322 88488145 260690815 677613916 666986040 645484867 787656593 273887528 443775980 218217071 885239900 697650016 55874037 419121342 444313905 639655707 268745683 669303641 713384746 566009680 436770032 336460067 992378391 506201830 423261699 345661070 297551770 171797070 691840424 841034482 192546103 389819044 232723015 774624330 421524003 939904040 971007093 829401108 2881836 738202807 376588866 952453232 240671595 317524492 409892802 267094481 900076919 262655296 536846374 468513853 252431898 811847014 245189036 753668626 200305321 533251854 92888067 414262052 126963699 614271727 512811198 982076253 198458164 564922103 354513888 183458249 292613362 148321930 280791816 918625678 26838349 135726065 96529265 422804916 751450268 882933900 601703525 414197058 86667077 520242737 366699130 979561892 651863842 393619193 818929202 1204307 241240288 82901788 328014093 92803658 406930080 743977955 824558352 271642714 326937179 639419963 629192425 207804329 352826542 730036013 604877063 366267980 402745493 676198075 560975021 438612523 922926261 418911429 473390751 674906118 501602873 434217253 330761457 745136529 379209201 315244858 342422362 248876878 287480152 915961304 107964429 610104957 569207698 203944278 784772662 140786994 411839469 676815158 382311193 552123956 228815928 169652620 544557457 677607589 14923365 566264257 22830791 887881522 245403140 545988099 835294294 375377819 590262809 465975668 176153490 157610604 899422152 358350006 500373000 682312721 384871957 583001635 154001820 634743448 895312001 395103201 582134378 219315669 150237138 588131573 403032948 73212324 116024210 769487162 900781553 731964884 804403809 94140509 983743400 885421297 47469667 633657561 641689533 923467 622193576 192095578 363314070 319821734 808016058 819089084 53010044 444152732 358129802 340483944 955838328 425103765 394479086 142863009 467373066 70334991 343472577 612843560 239589806 330500900 986494359 12784640 884766651 316572568 817960750 300556017 251266611 236309757 6700776 751449404 490138222 517466970 916193013 188939348 18619154 967486103 269710383 565168710 534573817 787780854 356531683 233550569 478024944 171229379 145274897 301317317 872064207 682294039 492141974 360751240 697502657 708316300 528044551 125835821 353659548 847818127 73955033 204128902 808381570 142852129 919533555 825213499 636931620 417670170 638646897 13709689 340078779 140911557 693334258 480164408 428551630 536372742 589151220 211909656 480653132 630285826 674384392 755694461 47866951 271130252 817582141 555657872 140384718 470972496 160633292 743571652 492025039 197745151 177297365 114002358 469359689 818477881 706933370 769070647 637892040 910428003 662487788 10792258 737206694 849577058 602346962 918059407 842224049 839035494 428996353 905580308 17254701 115390863 136535869 860270745 175235589 651000601 749942383 713711845 770682883 509388872 283600454 752401918 874510353 522666906 726961049 971079734 698116696 255619259 972161927 531941491 934927633 459749209 759485990 703595383 653481817 706796270 947091125 101683654 652720712 169810397 352031761 530422435 507467203 112047582 176592919 20162608 556314339 380604035 467324207 741194319 302846343 518652901 841469419 136977423 355401917 773250309 638139695 837687859 46798973 540837603 286571157 650851228 399108656 790406590 256980293 790880521 797499480 757743105 47128327 764992521 742124169 766258891 896669690 104848724 947266357 271694522 449193136 285372521 279819598 837130168 917142591 385683447 427185789 713108110 839076900 604579791 132150954 416587596 646514398 21096636 555676893 25757181 388006825 84579603 563664683 3594482 487614651 663031349 492523907 470171872 712014326 820948954 918868230 158332801 127406143 403409822 34797580 491865806 665340792 938676116 216275706 703410906 391145271 345801962 620236400 70683509 106135067 625485498 764810609 164525130 749602680 511774761 880687813 89235177 896085998 132133687 840586624 194333408 910327121 672865392 414036477 311333175 394521118 414486570 374252796 69790502 936412315 412739051 726265064 847692692 568980411 909335043 132573876 986406504 345257149 642381089 61089287 588833608 823441507 193366520 293208296 306919433 990352793 948040387 65964371 849164082 481372346 533174939 255341433 508981923 683345811 454138590 7168609 272482531 153016922 848978362 936992938 225806118 734850951 79586978 33597060 305795087 18987808 22612812 544902189 875568099 375889359 627551210 389348268 743659273 928156808 448694336 964712893 176374545 957500884 430309672 688411115 545765377 281313087 67161569 28976676 772023516 893241215 581202469 479225794 212420090 864165997 140138834 442624108 624711122 794223966 262759062 388338777 571943987 129302597 150106525 527406997 363400833 265617255 468302115 484874266 844155706 738439327 225556757 55533950 620797703 531872334 609043659 319099940 737220148 923958681 421219016 287641409 5073663 912597852 52695233 5411851 322233433 492966556 842623219 772335022 151399447 308622121 978390183 331270841 147881729 646236068 337837714 998350761 172156349 447083344 965043141 665178866 903896869 815634775 551026785 440840827 904981569 65541189 547388227 547612866 905672488 300632619 394907027 764440800 185360848 632726830 873364564 982114688 176656837 264327330 157193760 138025376 880419186 449043326 867617733 926870350 497971456 745849255 962323224 350359602 173995802 58499337 718743031 866374650 254412976 184755804 468082580 719077641 51688976 794840977 879160311 482726234 799873053 929043809 650112125 372673481 658996716 44253829 728786713 111548433 811468241 590379705 412296599 877914162 870021851 497667830 809251685 259003628 265337344 51097904 303920608 587971659 77535681 767077746 652267523 669372517 35813794 342716030 653154113 224041492 135382545 660883114 478282326 640457169 115188143 682105588 54700872 985253883 311480123 531595548 989207278 993023576 506523505 642235288 989214181 957763777 850615765 368316841 347080958 819394582 298808990 478049358 857252541 258808175 609833810 661165042 609036820 867992717 95295865 506108886 56819316 656087362 783899326 670879541 659309913 673687085 80715475 983807565 294067346 798848828 407442217 82062822 956776216 985192052 972140160 423599871 907941232 257094997 317640269 443068662 952563550 756064221 771276807 439082675 257685977 735212711 388045188 383091236 588999228 158988464 129410890 113298025 184195631 984967964 596101130 466578425 523129106 482343812 970970916 156078097 970297959 690261628 507246122 616922950 140171890 727285451 778279500 236156449 881342206 991540000 380162032 390083095 433567823 781091392 710963609 62040016 351754693 660369065 347746767 244500982 820898640 244244721 685905890 138375064 972975335 397504865 877296271 318830567 447105533 605229843 908737016 485304051 334681233 576905932 855243569 277467766 857778715 995081440 253117387 499867653 812075327 631063218 65147689 818586944 179028563 903478947 721843030 817783019 269440833 344196390 742594329 454509492 897566314 399016526 84292608 468522712 175369826 967251986 845680569 430725959 220846979 430943898 798445244 553445236 829263236 605612629 242218730 971884695 375083227 716890231 259074238 341851439 159067600 147661431 124862099 152380071 958970427 722951430 398154241 329968497 311750706 869455057 174415701 7376312 758395890 688933733 982362101 788392729 450185038 478662116 746488479 856465410 269310358 476675557 658988164 870499230 118907301 618639391 9265010 358782515 313028968 419367087 31168739 331716621 243337904 638099076 950675778 639393846 521294158 695538126 676546046 879210631 457948463 698609827 696259253 844510582 14577927 608235556 709727332 675695285 644098466 930385613 137706358 763062005 984650874 127022665 496887563 809977735 447578507 388403742 742411545 233731516 254693323 580842798 902399905 189952871 804679250 418844458 214318598 886591892 422221155 609638616 125915062 146098925 94056114 148349480 929497386 911442508 991610047 712725281 525295067 513416773 407332316 294029671 360021443 581147902 589390524 591387287 270197838 942921064 916807708 370120386 745653 432766752 316117399 60666815 527645833 968228949 923032925 119456970 3977067 545859122 94357682 937898399 899841441 413288081 826175515 686779365 709804542 410478351 512434465 722837050 815668221 715455329 715293913 489239788 692808691 895488284 700094130 876113266 195936067 299339617 505260584 253284453 239942846 744660994 634149288 975233392 272829753 876026759 278543352 452301295 348690758 525855769 370366729 794022431 559119518 899495370 938631167 158609869 881065813 394147436 303894794 515401553 793092017 698204230 231186928 574667716 718331195 256792102 766367986 145359124 249873381 48739752 654564245 954275963 358151074 610113740 802283514 365331806 143687055 826397929 467424760 98112227 336797343 58425125 361436895 610271973 735132469 296667630 815792732 618440597 378148276 169747437 431658391 37970994 202304318 521634070 574997309 435106883 737535719 44139516 775039696 440271740 749241884 840580765 238822428 634472169 270040789 553989362 459966385 920160625 517852108 946319509 372539595 511150619 685745031 646318813 195192242 970440043 907103292 559319767 335574177 990600487 790939506 412025242 489159484 31912974 718937022 568258187 146356518 669139523 921332430 666594082 162086712 370556255 369172683 805680321 368123219 665206882 209772553 240836402 77403423 721931326 747405397 93885020 791901427 904266034 220785007 301010775 526383107 629274174 241962549 797598233 241240652 608180822 186613444 487020733 509790286 10534157 746454840 874483299 936845162 351431868 295067420 870917930 666525225 800626579 39777413 894700220 152793849 506175367 938976816 549283750 217184416 277727163 334796054 28816692 842558716 204979647 424854778 429939388 988105471 819448644 467617011 578792151 92360698 36107634 310220099 48941613 7537022 520750096 926567019 242593031 249429978 19037856 319759347 788770006 974878069 218695498 285837578 426631284 827290408 563867148 879586619 103210789 956532140 25629732 411736929 937362211 847382727 404981482 872026846 464083204 70030818 622666307 687941536 703604459 514065642 753629184 987118624 628054157 594858835 454228643 564023169 770233479 334475051 866682372 968997858 110591109 338302207 681476342 689458319 904383685 323552292 206011914 5879093 502981575 528235364 541548043 605188084 638458766 848918375 414009032 324420221 894328135 926738247 363052066 530467077 192686876 852981461 403220440 243481873 513332783 761117547 929631743 594459520 942872514 709835689 356909136 328250115 102943290 27906022 101332025 124398917 22221792 485907082 390535191 78429516 751423431 274142407 831459782 599947792 635949924 758404602 24297515 796076479 880891804 482649970 681420651 795657528 315829089 972331420 726761838 594717053 308990387 241015120 460067554 499742565 513815200 22888450 484011970 839695481 907739412 403884246 59245665 841330524 534138280 92738149 107363881 710236057 615744939 430372953 562679951 707270580 310078730 33155270 641101562 498074685 370705598 224087489 994414994 413189177 415166059 572493108 445146841 759788722 337585461 650238198 410340699 876566339 587325863 788860322 604740308 220450476 775226747 540042525 130957410 443631285 213404254 158365373 580686073 676613025 171644728 823455508 693523324 664314132 4515609 845814949 31218923 809952938 999153341 810555176 653029475 723785241 17845745 661831342 318479725 707165856 986300512 476982230 510102657 511512341 370359057 589420699 543703179 376208471 484299259 647604887 784919120 868068662 553855234 450685236 301353784 828981526 126504297 345414271 898496900 751311068 943482198 365371232 809108710 681162491 854823904 534689430 879049744 873502160 803009980 397351953 442203472 546669986 126002639 941137853 234342757 507748413 417041509 203187443 807692724 40580273 657771783 744143267 655692396 994084134 740025810 115559403 606301767 890794611 143505111 10510136 703942613 761355653 909392995 552497796 779378731 389699034 116900981 101008472 142284890 103052346 286295785 749486509 820239060 340375069 76156004 890826523 333453432 799165605 753908688 460005141 185707805 333866176 937427190 694583207 614751838 827792928 930274030 594055053 608954091 82499493 931458880 673485427 876443145 864215967 934653833 896095242 925888215 283435381 801023552 87574673 335948704 813477132 709656353 346280481 438720726 822609845 577343691 386731547 923992441 669425781 319922460 720243629 542978645 183690218 10513036 728951919 604585842 472459585 131136966 968092497 16038978 563109928 569606720 426860006 335353243 615646582 455354378 231012815 852242198 142821896 561505735 394030267 509656946 119471470 436010051 301524856 399919589 252312909 439736778 630644188 434568890 135474916 686691174 743364415 280079883 434713912 361690091 215289545 832183541 413296429 364306425 98461527 530157986 558149675 729007510 370286838 211429267 799527540 433832703 647370813 428724829 752929391 96216412 317815241 70678700 830681496 820285017 940846133 688784577 18209080 950408395 10543298 916770556 365843774 621656446 169085053 54532575 170813632 898488777 420401318 513540822 190539876 344970441 639854881 805189469 44286204 387077859 149941498 265482209 277155570 247255457 954975302 177306820 890332299 394345554 612897632 255440530 260659507 460185345 127699185 360553625 387953483 868835110 90848588 18806784 482616895 596873791 488125104 735555644 673952026 470195733 702423601 941452296 778175373 947859687 251030577 324022527 703073375 769775603 881687940 266954882 398182776 942470221 788282987 470612098 700545901 442441503 415681278 483289587 751073037 862321633 927654149 842460846 870572716 586124101 84308657 664303976 237723461 5418222 124753601 638390713 20510114 515880171 369378960 205268587 232775105 786226260 899586464 922423468 659637375 632463184 935993131 549053695 545239630 569126261 718367786 326687433 457409570 233953439 341614602 715539627 367549191 849421211 680425331 849333331 258576149 515512086 756926089 648812917 536469095 387906315 973154948 285944590 89967858 936432043 522875063 73435342 467011519 460393761 387739424 785108274 996580746 17291088 306281469 793579848 42456666 126574832 757400407 550078907 412173000 614098276 772591058 980114537 4631566 78992633 994980058 35916489 41498815 977267026 338415241 148048162 301521451 994633788 333142704 711721398 115317291 816250366 136889168 484625385 8438480 410597583 103967397 716206998 429169423 853526660 649788182 79189255 619510669 683023518 798326895 790518878 594212529 37658786 349639865 190584641 80986356 601344618 440982933 268386736 861042337 891968613 787445809 563328639 656533767 797887072 198809278 221984759 156611168 194032612 273260426 764169242 241267173 206363392 803193370 565126357 790305856 361823592 719991204 787474507 793878345 695278741 740280242 992053623 915182869 889229915 735337067 466836929 207793417 424589372 302668164 245408156 326661443 625005224 908205752 6807608 309273437 369542522 114703086 775300281 590788559 141035808 465522923 800311526 396681503 455887548 416790755 114564863 292020380 352543174 161115030 605246565 485219493 861136109 224336025 236806437 188617434 930841227 767605624 905717284 806117902 235847564 548761059 84251510 296307311 912327097 21998690 891697996 545942491 528028644 839123476 59291970 574191456 259291852 393496397 775382252 392770992 828576219 468541339 752756703 908916919 898790253 211621255 771507767 707711417 227326169 72953468 144159125 914589134 697976334 949983479 588355015 713731767 750889326 571371172 100641242 109980084 360347810 745688525 699863755 716561270 212039576 865671602 89721525 502081903 618618750 953312212 123689762 537115663 741471734 545436241 151889701 616241800 717075889 522377494 12200428 484604292 734823810 748239064 450849875 185061851 764178828 325301987 553749808 983908511 364028899 27762190 968344188 439555903 132630379 628635517 248385972 167622932 446627899 269979775 940136114 855583227 594342435 845399921 700140419 613390517 720356757 766155121 569892885 317614508 782666525 421225095 103144465 629384670 917860454 581107678 166191776 506494811 854053007 595748061 390602218 132353356 992547944 423792244 220852699 993215089 242648257 866310456 684055315 177626752 348743123 898103334 530654170 144404946 425394437 78592171 673072036 600441311 659996665 771309408 525599137 12201559 45740641 144657909 719537738 590727172 717749898 414345514 171178340 64873531 689875693 521895928 259998369 754105426 697618400 325796676 439912436 167502680 80818394 643008943 934929217 153828761 131592019 24215964 407374259 752354783 325200924 890147243 375823688 737965812 477466434 664724225 38082543 74470669 441736779 832310708 563499479 862761137 506484345 945557687 478941703 666000340 731746476 800350201 753878830 911881607 152346561 630558242 216073465 658051933 924199597 82886142 361463655 707385492 684764357 283037621 290444154 551387277 484774697 266010999 417705647 568008713 502408313 365534095 95533517 496384577 555477325 844943977 285475908 385481120 928482776 438801389 854144447 73399321 273181413 254616692 692063628 317814010 432029620 605956939 863743459 555403545 511220581 69584221 307470638 170540852 228586150 952665887 782843833 159558252 307519654 469391967 900062993 20113353 807728640 102815329 762933432 836756864 28623612 235080145 302996481 3878760 901512928 423507196 908006826 828429484 932295939 716656232 21547110 964304020 207688451 592055656 512465786 583266495 908597172 143124655 144444224 788475650 492571535 361562086 967424221 955627011 154885120 634664822 634002440 380699918 154900035 108130073 501938961 58558232 654962893 553329792 845394202 781188983 581547153 154609859 9735940 134733381 873173290 229766682 219930445 41215551 536719975 684894229 961760983 839642714 559205549 794677717 6995951 736478609 545244214 646957728 917907485 990605969 319803339 439163656 422906608 356417068 573649337 125926517 691201205 325085750 16661237 322221142 886167917 250192738 251446630 176701516 323499975 998918390 171842408 712741562 530989137 975339691 562116371 805437880 438741025 940605832 9399990 800700873 14982260 291021596 661063927 75587009 202201873 357827346 619100368 628533692 802155298 226722549 19887986 447759156 218412454 992789730 185161801 433756104 430745203 95269886 903330364 920060490 572331939 427156561 849476153 686284685 447217818 183856131 541157224 635439763 545328107 67333903 66649131 276660635 451853021 259011510 69787433 930917260 66926742 420428785 884112581 21296703 279231765 916395799 150526038 436524079 462849550 962978633 487213799 266237440 186250015 738659812 355955964 560606341 691612910 515751745 663843464 841951990 241646889 89141771 48616582 221023720 123009918 19094657 641897768 770503564 889550850 237121460 163682888 8045795 275671176 533617771 275366739 143525711 788652846 88001374 403201087 366218141 846251036 854123566 595107204 529602716 793099743 155331243 261314353 811717067 617403986 470794561 765407932 418510771 135347486 864659611 787318707 258286481 567320673 47176004 965386628 800525383 258165567 418096774 563594599 440268306 622706593 269889565 283973834 858684246 654655265 208998106 361590996 444295700 73693896 212237141 53984392 193066284 317367356 571177132 192602163 676049959 821660702 960276598 602574928 222225990 963998308 58793120 808644322 920724556 371905875 170177924 492645901 873798020 292897057 612391187 516713882 976869558 425862059 837747075 4455434 199658631 890998078 139487489 499900857 828007303 988337281 49702232 690183475 137430071 393118988 205118805 148755072 599976173 412890511 528737918 447407053 670488418 76345855 169750577 507036579 249037447 847868468 707431185 277085594 217592015 763302977 835643779 339486879 93893372 799723459 930924616 162903300 256027869 62917949 669995065 183203440 754231134 269383282 651792827 693543403 750287192 473231635 425224749 321586932 17521141 446159211 785485305 829293783 131793666 633875716 714051869 448307572 201038679 310743969 655221387 53666385 347078890 449833526 177843429 672542145 380743228 316667043 62742053 282505385 955436270 732669048 31724141 446619224 45078089 304447520 140299494 696437739 783222540 362923023 783633756 819937938 727194640 184724280 35273652 73833388 634558551 884584066 957335088 594688076 171269524 801160289 495648491 556807676 781887943 321691057 511825427 960558385 941120432 275844171 948381031 732475464 588837572 268457851 763992209 593875420 65871427 431788640 326142720 508409245 797268499 633322322 642800635 868412835 715949209 331028916 560839121 864541206 908421190 437758100 189125644 408614806 459941346 33761053 912332241 359443320 862050724 415614469 501297430 332736635 632159412 278135253 463387920 529225440 669808845 332959615 83623427 677352843 538000649 254984582 374256650 161167740 885098476 865383916 468706061 325841619 308346856 477750910 808361647 94120478 386534242 840074393 54834782 26038132 740339907 595303019 614745778 462687190 5803987 363415317 728433785 363877729 142208129 875157899 211792423 602202929 585392054 30710659 359096366 359769838 414548331 107263034 708419922 399378695 528488164 893466760 851460753 474649504 733363289 208488626 533566265 249477294 69789413 926010150 5794701 174004502 823777299 609518653 362271557 256165765 734574305 139256255 522525983 329036715 689132329 973141988 284324279 602608952 917605536 320410034 361850174 389339586 507698117 220886654 966019351 63841624 456630834 919481941 763975102 387167981 108612985 990261319 977015850 545841106 75404415 447079858 237081987 256655324 373958624 550308027 533725838 757652839 928881333 752657760 3354440 613801176 411653067 107207608 546913229 81780382 439170007 89313379 967870364 559607012 761871345 75642306 710361665 718262805 408693462 647701658 333160149 282616598 12165882 345680526 632421721 465530675 635055203 391921719 529115231 17274289 713388385 326904296 8907866 32584863 991709547 799120437 836482484 478533640 974506381 904375968 461714535 752696425 348841655 995671822 272059698 419261532 970665138 412393214 866449664 656560136 398078442 647046095 195410473 541926670 278383675 116027717 164442724 936589981 3840262 21966960 438354335 534280200 231255091 206940637 214228524 795004027 231150392 283926636 686946129 408231751 833659011 45700418 398879238 940275408 398352375 435837358 456547543 199258726 713000562 687019675 880831115 682830408 176761334 603934700 115483209 931451675 70251282 77062061 780744112 939873202 197271119 574259581 530880444 644138857 275748870 781770709 316186944 344372998 486861147 367552680 180475807 262757757 121075868 338134041 491409305 336414578 376074489 206006259 431709347 352210170 194286960 54749538 123281553 123895948 25928984 904975188 47900239 612928487 744796282 690179664 682775695 34908861 596596521 579404083 294861047 188382922 686291171 269574958 689375888 63536782 154758506 880783312 587239610 510136732 155883326 453510720 385224214 583462895 777968489 93909664 721473546 932137678 854373507 17613796 283366560 328961475 666411416 796949049 253872343 407451882 89429424 297347807 831285111 638674895 126861433 182436441 852449363 610910859 65366847 690078741 372498574 625483786 66451684 340246743 829047000 228415775 98348168 370416203 963318933 400279533 86701527 581212617 74549539 411290879 199008319 718249423 444815575 201119382 888396128 362183385 279311359 887571284 471127318 131843911 219800234 920574789 348432516 42926329 445123751 375425306 808425588 807564832 280290633 871284181 914641774 138934259 727179731 24054817 308854461 972438160 641349862 589465634 725389078 279849518 5649928 369437179 151336461 589544134 771896093 462178539 490353441 983011558 553880984 976676847 822020835 606375820 333251757 606541339 697603186 249713472 478973124 685366221 753181407 733162136 766591485 933962091 708026972 29839989 778749138 448450849 145854425 516924095 311079612 912683462 318686421 495770914 525918319 258517412 484288563 877441886 218410453 1572981 818924994 974478911 247518589 662987556 742742792 229097099 52756623 233173588 29507248 440238749 903564969 128317592 806539114 334007620 542543789 199359790 806578540 14662338 200824264 554367850 728359148 271035336 812852736 961531093 30626878 612252506 671013258 491808703 903910262 720911030 619230108 782735348 367154397 26010770 364108118 754836786 406378507 762284338 453698066 794200632 916462276 896869762 377802920 502720424 879864578 131908679 343843065 611404057 221213507 752246037 302781321 792387814 892454196 405627815 515034701 161790779 31472044 552302504 398715125 623329925 277173827 242995749 811829662 955700051 207653601 982281478 697095251 473028871 928780968 218629781 947521096 596319745 463989817 48819610 862153764 865143224 817902206 783970457 933300173 956462072 32629530 647794321 479564117 88629409 846071760 564094850 828367729 362811283 757311474 28863445 768502296 653244701 470919061 961762794 67337243 172684424 456164906 72391816 696266486 964152493 654054366 145357572 810681286 315755098 578956253 484343841 185858134 590429640 925941321 617036366 170661289 875568269 765546600 943366059 393531942 795853852 74972616 221745961 789077184 95428025 500206274 852844515 527078992 408804393 961592703 133214603 376321227 309792772 909687526 146238177 383578750 283091416 936992875 766089757 322038238 898501802 360869389 662999920 262047725 352577600 376431715 660638721 801755135 630496764 211538573 193549430 91065029 514710543 423597825 211168692 304040945 435029056 171640356 837838479 435680186 489185580 580645810 112986256 419985105 16110270 751302066 655083777 739496448 164220959 312153809 378264635 854513364 328090574 421603664 421380567 996508548 470389537 849414388 942628730 71096886 595779262 240312016 261535456 196901005 686457343 538724254 311692963 396302826 850394492 644954698 43519829 526628390 556889290 991923327 190139407 203527527 449418829 695019936 705703478 117313090 572608932 202865323 272082623 910763334 897756391 218358380 984022800 482566492 86622788 813882655 402728192 172032609 148154004 534011310 653792148 448136023 502405137 913287086 134923642 169931 126288854 565098315 545218450 939277719 539751578 979834507 382852939 133813482 114045888 231428657 700991950 86970311 842258411 838298904 699456884 974123049 579703262 93743966 956064578 389344786 735124176 37522311 546957571 111259377 80318397 373686735 611793135 734037041 132725836 169372979 552274988 383660707 89391764 961412650 610808751 907195277 269740741 60898247 442401993 611152028 859775149 466088487 614312275 577013843 482728559 348969419 792136657 784800763 437348885 137854050 395250020 746437193 384059952 306567129 117176471 861862165 252338314 664025635 232545609 686528554 895950638 303690546 609804070 426319796 169675737 2513324 447992973 715849994 555632489 949382547 907175192 944548850 645954228 598104122 107474759 991389540 306245186 341155942 979564375 320814454 138249279 83539417 675318781 974841890 828279392 473872775 323148864 532871409 149299305 533823232 284375308 716234496 951748945 244740302 50057378 365849565 963739704 689535783 876118826 527485336 212107981 674072457 855991955 875804159 108056986 608767129 307788140 179248938 66636106 278173997 848912363 271869023 904621946 762873814 635759756 701685606 790018657 694807773 666332123 886336359 375033144 425555907 724780684 162960152 694513307 126760175 469988177 788701469 690882919 858725983 260070252 278330728 195621365 64009266 501501230 566476971 205145932 974653540 434837586 825389046 994351970 577916457 936233053 856077241 429745962 176463495 41118279 68249332 759676432 440117754 724812455 90452748 954895744 962997125 484846550 32713524 816787641 189555414 895533282 504097741 363066065 620791761 284581847 798016014 300822521 143982010 342839024 11912426 831673335 874544501 370179832 844570733 354969851 30094619 723033053 99487839 14822547 635461558 605317631 119397395 284152662 821058005 505499049 899476850 581689144 519431642 592108699 476899167 106807485 899800163 404668182 450924274 622912865 222942955 823931392 126672315 464439682 689379892 96925604 34887053 166408824 14303491 907385028 764287089 971001132 638595876 136421982 999883112 625305355 107941115 709718583 430620134 524290192 345061353 502641730 199466859 907104424 739514862 139988463 326997807 404411485 856008410 187250010 305709337 272142482 892731705 699259148 690214443 659700046 682819438 851411210 517286082 815109990 810836252 273671674 715803086 565443409 793410628 904088138 241789862 612344327 745529897 760322412 21391040 358445279 858362451 609572925 239649597 839253785 726157348 35477115 446357684 282892188 232100484 655075696 899739656 591520394 121700009 671792423 272034479 723308620 190466280 295092982 236474323 965995055 34168566 337665149 321644642 410911912 581205605 408706311 717091839 846449533 711128707 430668844 282224221 513052037 732147571 730937013 586502165 956824021 97912742 384142280 898388981 398183610 772116392 418347254 905127582 606247480 115283115 608509502 391246490 453119772 385677920 764901800 449106899 439669079 110608460 620147236 893447032 786867476 339710653 333701589 382057985 286036143 774417533 8173364 541029176 584490277 586612968 453388676 316077248 688138508 506382458 209198288 439564193 334993075 33275206 285306693 148006802 404344008 977304195 720935085 720805568 288309381 65278984 107286230 157214702 180181806 963388607 334489402 120323760 491963075 366197516 225777760 521471565 43310660 923723759 656815496 622383537 762650522 30114667 155039699 845142903 885158709 200571940 591669037 939420303 38276470 926757698 237538003 320826546 721777831 453704225 725056631 439581100 102648159 82148927 764154781 775869001 736979776 692962192 820445210 990754965 496540506 646996871 207462963 735363031 671072855 364549406 415636867 698775427 969668810 702747122 531613397 223119107 975878618 9681609 755984864 514936648 58001398 659312144 521356221 90517632 363655927 346958903 672235165 249064609 132753799 133278508 449134398 369615309 28390049 414319403 888381010 660384824 208742019 742411511 475060228 502749021 164306338 209856895 87342865 271392888 575385327 289785710 415853424 242741243 248415800 858783578 299771727 150607714 711235280 558680966 537494393 791425847 160065919 690941903 537682956 198493083 847219767 976750121 452467948 431923937 406972895 741543082 153846002 829359665 179777885 724668215 166476124 913010750 760798309 235364443 867160659 402412025 183456392 867781046 864078871 892838566 564535715 524742403 101273041 390112109 702005289 566003485 495887299 258244635 175953206 433763519 108797675 867392533 380599811 374556970 299250115 286249407 212002458 158427097 624363507 25305241 724646083 818000647 531197844 813386692 310523122 429724005 630850067 661013360 165408923 403939784 418807711 985983528 976974684 331417143 970558119 874538518 110000248 83055407 541547792 879745484 287549148 153363150 946932135 662722746 638571494 176190942 309927745 117425788 698445491 790748035 225787879 341826605 769433167 671912755 249661550 195309678 18443319 701303259 593398286 258447731 707845265 878585628 632007455 454257738 447123038 398464292 171268645 10951233 432384813 612632470 436050728 746379015 762433851 851795526 754233649 504278322 122303701 528955860 733415104 55578024 78088203 951532582 573481108 765546801 128924577 513122485 764274557 759597967 589205575 755657766 394494544 111022754 499501245 480220694 612235588 718960963 739412159 191301379 65263042 336971420 885339104 490735755 779941784 136305984 174261247 774948999 205502469 586587231 453612020 463028153 842209560 759070775 350537770 845526774 109403184 518505376 45912171 139805818 838265128 195746273 867654691 250786474 511074928 156836458 179322373 700851339 399568608 409805267 325622183 809246786 937109928 732676669 324330534 526346610 22877773 250223026 979777895 629675477 513199913 391980116 103068250 178024724 640122021 504932532 814824673 535553485 524484799 649287138 919331696 230365242 213757638 661863605 161309351 789193963 634557601 360401552 895582008 274299354 19881706 486667232 785319118 370508391 242568135 29850582 250002218 397879082 334407322 348918322 200909999 771992616 711189894 69397356 624694838 306841573 698294761 923466367 808034956 93576522 46972715 161983452 582175896 275380178 792513355 908974894 13247385 664423128 813351712 166054087 315625838 168003866 401120202 761322703 33339294 761947064 910117327 857932670 22909653 110810414 816216604 468837285 782556711 503789790 556396196 669520742 523716489 774650020 423190456 654516882 924668439 46609958 264856880 654707132 979885346 376156138 338385466 580895153 218741352 916704282 349193399 459667873 154042814 278613320 756591974 201274759 717905008 534248866 757234755 585145512 925104281 898592378 981233748 474088052 721856603 156146087 220995187 316484462 557300745 488662299 582879417 433216395 534170935 834248038 973567577 74017721 514925736 580260269 194855445 889637012 207073710 223765301 352664806 189670446 760319909 418673798 74767356 5302040 424488457 957695683 51733236 66715110 901986569 382942516 869560166 718866190 731824227 321324888 422129381 870513465 921900660 265121467 148393661 956670314 640113104 989930047 863400237 796840564 480331730 700226924 753716882 101390580 635227200 93412371 98773435 92762037 413582585 661031909 39496737 586284656 505473647 990682516 909831672 641976326 42581946 171369139 129353473 64365960 977870362 305383500 891580317 820918891 356088031 762362838 438952752 495560811 19743951 139941224 872649448 957493649 652009588 569020563 567542573 804353959 446818514 396222073 41057472 642823378 680027466 70826180 494315407 162350429 693034931 991481288 876998425 708754490 899755386 457839215 6651809 599261111 569935600 352989857 59165560 643529969 935979939 75642423 113798533 276281441 137548848 665882067 997586193 558793948 113944747 994538354 72936235 894156201 8346936 359237785 890025918 787493120 996873287 995260192 55007461 616020574 376648694 213502983 231347804 833840725 339594319 84265547 573479268 534846358 501563213 702516883 347518188 892629506 649120941 672639465 130752982 380732393 630833097 916658568 447245266 293469959 634913874 46227469 917072974 767312433 955087787 290139537 153806601 692975788 169120789 293190019 441498961 957776343 974810207 966242913 570773067 406648216 263256533 556055796 266224209 213990540 863541197 493757900 292218320 842522804 106806485 911759733 343978708 859609236 520332944 161689847 634088186 219940101 527640737 166833174 454753236 320002671 915330195 516243655 273643156 621563238 805156870 5559761 587975726 788017559 656380954 875133772 443019489 22031161 276540478 159041324 417984914 391269600 151754866 489758714 885120501 67174280 577826667 21989873 80172525 417769837 63767720 318125853 699587786 498702639 329943906 856382826 59849978 618183824 935986764 836738064 556947653 625132012 884150459 435720979 573712164 586453978 61381866 77796126 608842912 170795829 317267392 985248847 651061360 107346641 109699183 454785679 347061587 415954275 126247366 781145996 772166263 934608698 242890642 588922002 689614566 545686398 523062779 237652737 640123430 996127272 569548016 896642936 276950353 727704772 455306288 824686035 62729721 265021381 951347228 663421860 30959357 566474396 714223269 864680048 968016937 656393004 334793844 301094783 932079655 475045588 175158736 426303148 384191218 585372123 273284557 460082941 510145711 891220380 371685491 982264195 201383896 677307547 365956787 256883424 972121959 783236960 3411294 409321681 654702709 459478563 171996171 557129336 388220979 544654285 620345138 125450650 287184016 846659632 960260345 152455029 725740468 306825104 494263564 937807063 420677541 219769597 560942541 784046258 612547304 865127050 492449860 102764875 723042943 365074792 557302615 482108627 891495226 170507779 377278870 792802692 323320156 906674666 388261444 593081301 869586296 135570541 129067305 424706339 679554304 668884565 305833121 500196552 290434511 987478991 542542054 707244012 459884441 792345239 435464029 248696580 834670961 796656073 237622203 137415368 278070648 500791342 689600850 81392134 210604852 868805455 709715165 65646250 437002658 588415464 347198770 323071820 122895707 829225808 201189379 404950781 329810965 288540705 289095319 330467176 113774615 781229435 429219862 509540570 243597058 445906154 516797918 659231468 912892379 246972075 34116519 949984048 422433225 385502847 33918096 573713985 444829376 728714001 36974734 432737911 977280264 946642948 21842870 69266192 921165850 27007645 326800436 61324062 481242868 991520261 424344963 299812102 597208021 763083291 475917952 463498293 331331373 180143740 548075205 69769549 237962727 88207091 465469258 333084885 854329375 340470441 169651792 838789585 514935681 753895790 236029207 351984759 387743050 753358643 570134547 714452182 842611530 957705663 79650311 965266264 924077771 498093605 777875807 239056841 284916366 132815703 470472565 279948487 447436322 446071254 998924967 572328448 381585987 755796874 507027807 937511065 408486702 316231011 218376735 869071927 587935938 637588571 649914411 656440164 847673847 991356989 207279509 331500935 614116664 437837715 336153316 57807627 867131549 333679353 963396589 618026926 137550578 580441801 246750239 744664453 488871181 528364074 39491734 453400668 462002693 924502038 642169093 551665703 758571174 222456061 188595426 889286285 963434385 458769076 596815999 599079718 503863164 810391332 609177341 362979867 320204851 677716424 400766177 475978189 529743916 791667850 844503071 610400531 97824255 391808727 301888923 358757611 961676653 980226754 359833042 680128906 13222775 812784794 60129863 147349527 131538828 440365698 942269304 688178556 272121072 940834735 927270680 431234516 304016866 889644867 684618421 302651988 372100160 303821135 605213879 788449266 14641515 558571046 561028563 789002716 693467672 187800574 144036533 306239627 86393635 588818666 526724835 658313712 321955962 746988581 590631406 825367807 729907944 647572636 897817873 232654382 126896652 988351296 128369202 788201840 885226460 806068108 553659932 210811788 893770543 312728686 573710131 199797345 32675637 988289547 232095649 704578413 527136046 41743994 60869523 341240599 239798008 817548679 24088065 689382612 271269711 35150011 551303177 486006808 314559707 308594810 603343192 924528226 783342621 795467818 918060655 682601015 470876760 182418799 533949802 615999856 534289504 488573629 797195933 44129319 651151335 898414125 354786505 250190352 721784323 652880739 625650977 432493593 188354770 85449114 888342889 448136790 53530726 859943636 648897889 509395119 360258055 534456513 282309794 906682489 935812070 847223065 171531751 151512733 266463897 339511037 959090259 787309321 333736611 115898441 628819735 286531087 999512249 410542487 708477847 49262804 905732329 13851666 7972697 145902265 89674754 892769863 113761590 819816482 652577078 69604785 100745311 840800228 446063097 378671288 164644667 181802642 183082098 151728066 8235086 569266150 427998449 748993534 336793748 118117494 290744193 173973247 476264843 717774931 158226262 815326582 567659584 546944638 1345344 906611059 922249534 977171503 643790902 340340064 700616094 854934898 392963989 815506919 200079589 2926032 94509946 680865306 109800677 626448239 92619461 402962370 646070370 647559590 984629397 680428807 140130210 316677360 987553321 898754063 719175907 114864779 440070816 668866926 148316722 595198552 22065771 407694885 906241525 172558428 480089160 120924258 636019976 901756045 593482585 589039791 282347079 802742041 735677472 603649779 531025056 191006198 135531115 673859886 659458353 329500514 368163522 4657593 192514086 377954097 853955986 156651757 227433817 421842278 174723338 862162098 50214219 18693023 434326986 639724756 250609383 442308291 8592334 816825182 922216207 376073369 721790017 322319801 251368240 102327185 425351961 899235234 669415554 189046405 512184256 297181342 117801852 581016566 871294698 366311564 807176336 966922380 474540681 878824068 575962974 191423126 384145800 574243695 98485089 345651466 323078347 704590142 185405221 685511363 782703843 941233174 585632509 571652691 701456074 343737803 57732465 468996456 319935873 134528711 725263469 390314524 506216619 603034319 433140846 843530771 568741081 902869809 185700932 255197597 44041123 513428085 141637365 884005793 596718846 35446026 413699539 994253269 441733640 958368004 499185860 828613968 851422134 226681444 967014189 595854587 902349127 599305330 224385261 679595360 448994019 816788486 152754963 776426205 12036411 926039682 636871106 707929088 919995585 401590501 42175632 30408038 238666848 200479697 257473498 550316761 284637820 317538769 767049360 497311090 423726180 975087858 22417157 17235118 846451347 671273320 782826224 720660474 405679793 218030338 182943970 523676648 325108835 208661919 920021376 772472147 176991568 410521597 776146630 246793485 950213796 827867935 368812670 793016720 772249029 85889395 279048293 221689607 17059888 33876296 361850309 428513590 513822209 526166469 804952299 627861803 621745148 743088016 764725251 820410969 47580021 989315790 328329577 855544538 538489878 925232254 580798808 363632013 837050136 863326820 832207480 529590195 577919635 231144907 595770565 818147443 738241214 316296608 161933949 410643940 115836098 639323251 183945123 814998122 632881603 292573534 24863885 104442537 751525030 507693209 836023286 563440407 464137813 715927800 136877263 640269424 576126924 43958127 363582680 601930562 63610353 466571233 681010738 425251455 804548297 295682600 107272965 52264659 493798340 586802625 858712438 424109785 60464287 347061163 247950873 190905220 410442126 330483154 977408699 385796507 100187708 989449044 185781461 640816628 530700793 854562494 550856407 441246725 353114427 936217217 319344570 858354136 126952772 782575488 33905645 138658350 597395493 798885482 535245860 465010010 17399201 202277494 783370792 503812091 626889740 84441770 905920900 370027799 482946622 941437151 216322080 681859636 625511780 848327467 131949617 688885802 362562057 303630804 52331354 651044014 387259292 259557433 701817089 370601987 885678415 217385540 256045934 976256689 53387203 841778110 148105087 56656751 776847130 187637137 942642578 134496411 536970124 275351057 655996438 638457847 584879629 554633113 639089229 912590786 449336654 978322514 817603255 183720377 524360088 724673099 43316895 528262368 328184778 447866768 168014170 52780879 791939131 803529849 488747546 63282684 222523391 872782611 408343381 496016392 270502370 97240965 708932739 925828791 183189804 31540865 705364433 752654665 104772855 815782387 374453240 305365092 236216410 28551728 149762890 821634509 17814953 642899165 806342245 447665836 823025527 201275462 971068100 183485600 144068062 486529208 677166820 131735821 148694742 676045243 678975672 302371841 263016575 823743768 659488811 223009242 446708252 665427966 919917263 52461910 826807421 472580707 34151235 889264235 862613138 505090873 639200913 168737531 498944137 18476128 943853237 277968273 329218983 796241921 521282568 742423770 921009824 503756975 346118694 282745848 326933990 423713969 636760687 702890800 225780882 748983429 317037988 927344266 776097152 169497273 673020946 89831667 282224976 752641914 161562813 131865612 359127648 317627688 324480550 682742779 336961036 122784763 813781076 868329101 754995668 534004358 561452727 870250741 690404706 546263714 693092029 272807813 73618948 500437545 738866652 841286743 572020732 253682828 726401305 663688289 881721385 464155623 162205047 894354434 757580709 294009572 182925661 840769424 903575781 422088267 466479248 264934487 187066478 306965566 391771930 334066645 682261483 314051433 557401556 772069358 675319648 281370307 166246860 81125023 555677824 408685181 976116946 630718529 902747125 320124025 127318606 53171015 884512856 743277980 267768890 953703526 530810817 595860061 197309738 683065307 425894397 612205582 370451258 978868496 7569635 815238758 337320600 317151899 990209151 676712271 798947258 177700872 678608028 307826995 730769095 245441658 292425146 414935332 232809935 140659312 334750367 637410891 651618499 624080431 437471833 976229564 523734123 477895214 265322351 559690919 426227267 609028909 237949678 636744856 854575657 848490199 399359893 183250271 310695907 166527556 229104206 523156391 255223254 55841010 464565791 863846973 787704235 835043398 20436802 642168107 45760504 660017069 368958023 513286359 385961222 371006320 890065914 193578194 652085238 855535792 55454040 894695304 352109619 818997536 742608159 659863788 57357926 110835178 643377555 373744258 217342282 772989996 439050678 273098462 356613823 766304066 479315053 309199743 663699916 719891752 789372995 144650108 167410711 485526719 351733339 645244883 911971376 451140568 897792683 717943799 828066883 449595043 81165094 678396241 535370000 868626533 521243477 331774020 590014742 306305794 566905467 180968764 441887549 296157447 1238576 88202668 6824814 308186557 694935127 122498620 157776698 805893369 881078346 765845200 838251163 396939793 178501591 842818704 801244957 235665711 958015645 298217955 105838154 396884163 899116954 289175037 802144568 334078665 702100937 926829838 993326446 862901342 411416613 879866119 742962009 742437116 122108217 732769637 360134822 813030394 686858806 57311400 576917420 824057582 965980358 169845781 547016176 262657931 952322820 622484635 4929423 746987690 230240228 364126222 400357566 409731729 541469247 99511151 611126167 514352186 10252089 351904327 327993029 972026034 373423318 387940626 340186088 127091901 499386657 15191271 501429319 13433911 553029557 105466289 707875279 128096517 618609617 771877868 516260190 639358776 476556608 695237989 90006731 877753290 688244768 635301828 547131491 708245482 992716175 579172433 84524987 399519969 949601434 103656547 925846593 493690662 794674404 567814553 182807158 498086124 716392527 380833692 940858247 774362212 596101854 188442408 78823896 198759437 385883669 441799456 584159763 763989671 83493453 206411934 211958980 564478787 329055261 315762300 962263154 880151260 199942678 792095756 329761974 131846760 201717799 69165017 688086080 391020309 363589405 73357791 482483260 934818448 860090093 415244544 131489909 820224149 893101963 566240411 656722644 714674863 349356747 959662639 724406154 283975155 422977361 154740051 404282175 315032861 716876015 598087773 762993751 903602432 579649466 602987749 388670792 314421635 396121402 961403196 144225561 410620691 448735645 140251238 332985752 538052121 300143773 580363 373424972 714505882 909394430 63886510 503014444 526397729 706336375 466604386 850612152 386841229 167916148 333884223 67857199 93872067 817450827 287644782 453677425 510688434 106334218 651233534 134779697 110991082 755846322 201537351 273712386 187952190 80479707 969712256 193663655 786553847 96127157 283771175 737130357 371091354 113278010 364580008 475890980 770890377 289014629 876754935 810476633 267881186 187698336 777835267 741467746 273043437 883494510 988707918 116848046 543487311 481265908 782795347 511092524 757250600 990846511 953813335 942252956 355879345 534023015 985281994 477654450 859600779 831318319 131217749 704514686 756142882 849975728 597568774 221052414 385981503 921179000 939461593 959317396 768279627 837049651 141962819 173943217 726919483 748439575 460808199 738980114 507752891 236131405 227877282 524752734 445085414 195111749 862241537 83275747 107147354 824802680 186406245 471565743 742710488 183966501 909813827 365355387 122300655 23112606 882296088 429652988 627044730 979736790 7691528 466657016 37169272 579502994 977961197 388369435 442965855 362518899 919979254 607951176 773797493 398910720 108668360 259823922 223662110 635036481 12456602 132341700 482250408 105994678 974383012 821481548 878623943 387651062 45452051 300502627 151595541 646602646 336857080 424275005 407546523 906363626 556863837 956321811 848410400 21780195 697924978 984136814 185130763 305414468 689931101 770240270 559504016 742761741 270730165 786471491 815825089 318466605 539065974 422412213 411833781 31522578 292559373 798242653 335924088 391221956 253326341 91205399 246849745 27878787 991767616 349660670 756227409 455660081 782921399 644838267 263916481 554067884 262168484 737527904 939426334 962175768 290860589 761646835 267832605 605156611 330012046 253070914 425753420 739474998 583585460 142442876 445625626 228642319 806931898 2621338 737841839 657987647 851297722 847468068 167682591 152055166 591933605 920773497 497710397 257600564 798103462 515802957 93202337 33972654 456639438 527045698 503340188 795455542 315607736 698799373 616051692 645540419 587938763 297163370 917362081 691324217 686330116 824611999 517957925 917182998 27195510 34407505 44847835 779017879 858388705 346172364 369135714 392037791 570132170 976639472 116897659 352054153 749157809 300364916 20046012 576868443 937992845 124385932 510975614 919501085 778096721 812283940 625199291 140232980 77834472 913138466 352125956 667889910 64235628 302165587 789159826 637313436 957412803 238524976 550130919 390708392 896010329 467914535 547272916 364335396 987983957 64655948 429654253 977747957 98909196 10516527 719745933 843829807 255512397 544533122 956920297 660456094 850204024 625959646 821349723 163680968 279749081 200593498 864676608 483054086 253750204 401275614 170796581 717719322 402858106 953110355 767911179 387437008 198416199 804242940 507854244 365553137 294313904 107155142 81822000 56840620 482423464 780324454 844438761 429936325 332034067 540267266 827472177 665719958 19916982 6402937 350876391 285600860 147132815 981679453 62682618 951365434 78743466 235159153 13619623 89496315 421276904 768145939 297630491 381676770 536058050 333314184 810300132 206349689 57198662 627655937 877580165 578892593 901519337 488295081 30072000 870625902 187246074 102015394 127254118 141132827 26253996 911819038 641911523 927327487 467862606 218828216 16461746 261740717 647754849 477482557 579884880 137245858 640037838 715869801 964876989 471206334 388877198 139112965 813412873 149362847 947592054 571355645 860414089 69866175 250587582 38912795 747291856 291414137 556547765 374473731 287205557 643724173 879506841 784358880 850249684 216361513 326897553 599846217 155220860 976299461 403394251 443684772 39353653 880780894 644872595 41249921 850324888 185789503 383942116 65568158 586102582 840398496 520723183 305486578 129833513 922468957 417525964 354755298 970939401 859402600 749201775 411657014 579123923 569958107 79167349 642711085 772144759 967101495 926856137 521228085 969363265 491201342 234192337 632859909 702580661 692443697 446690060 963971952 949823373 901674723 339724473 396736642 597375556 695142321 701446490 607511515 837016574 194710269 34433006 903323270 356265486 663224370 320699147 85652461 569581077 969438395 423488988 869536318 121059961 498916263 472434516 856935357 297930494 118040683 495085606 849130870 673698334 120834111 583746641 338968841 158273904 474049749 369725115 526719734 904611578 131281960 25386032 170540842 377573895 589316100 996789732 166742973 897475882 88932824 464004992 621629884 838053700 706451880 82892872 568616488 636506075 761452069 81508956 783890028 725755694 701872325 629414152 770227148 800078064 939144779 165613653 891223289 167539585 780368664 697336930 253599451 604427587 179274348 123942413 173159713 362514349 313287467 577069666 685699472 48868516 455195193 78294636 877004983 63377335 918240156 53677506 562601737 864083536 673806925 922951015 452331656 532710050 577416363 501909117 95588253 336063701 122473078 25080278 899492587 20030890 640030349 252155505 658808492 103955284 706559223 804675769 348178212 32227601 344757277 357372356 952225147 909757420 174868404 475313360 649595834 308549763 759275534 718679485 435889803 626261018 239600022 863766090 497941737 789590142 182321140 425690126 933573726 170358627 456961333 18567935 949978780 59463100 518821068 106099732 677729697 482633716 540440108 520581855 827980003 778761807 460086744 246495977 675739452 770801130 478428487 840537978 358559449 202321289 538260374 865504296 101032964 183065489 814000290 939701311 70548572 176279973 176508706 553466184 44545012 529462433 707917023 444815168 294702179 484671945 610028054 30453291 36755478 42129589 612435525 765938783 978547318 154596329 601579479 536681360 817397049 202431475 363198155 402984243 776735776 773111911 201480745 835806082 964424476 244866091 373201610 555939283 909575475 971357822 491962208 793624081 348641028 108292685 482984920 509930996 16288082 431088843 811724693 316405428 965699934 79009631 195915561 169788994 847987632 863820204 91370860 497252553 879371610 438353843 723838590 98745873 724146160 448654695 90019372 643861166 639932546 236079988 127953553 421634799 962537009 278093173 66243273 158218696 898782694 497420354 705679241 968222476 920259690 357639013 785860304 814964033 943536312 736974571 358813265 339892421 295155244 149661002 929462371 205753150 456144006 285294369 275880551 135326106 466153595 875279344 224698521 659470929 797403160 974410834 651601303 818705239 401109268 655400321 697312434 993397367 424353471 876489616 38839407 619090851 345229353 177438448 668917498 902768775 766979574 783509723 460652656 944576698 905084873 274895887 263255295 693851639 649024070 561200753 966615147 536746928 530955496 295519276 358448223 428527842 555064809 896999193 372585317 947800799 205210768 600888305 43711803 237526162 557893924 495722981 810400127 567979669 257715052 399525302 239428230 865108317 165769282 133671562 675725459 661796490 263990558 135803022 795045891 749851069 853362862 376546586 606669208 27554104 76404214 90637599 609792362 929389473 112315184 109968137 88862688 75172279 646926976 429682115 840156548 866575098 219423529 894423189 391853040 941909169 747134875 638610471 958578113 605751300 993214053 863879405 373704733 312449233 445009015 45677978 418965179 538499676 835772374 774582314 846554664 876948070 807969217 115055551 272268271 10892749 874351091 225484634 547479977 866470146 521243935 307356870 402631068 512919986 927847486 826500897 758759067 604329013 61302200 599084979 250949503 516069020 667109035 37908088 985122256 209423032 694904691 102204984 103736818 515707530 535755958 95788736 37795720 979333191 852002951 517564948 731781957 260426673 472185195 87718911 373337666 993822083 584547662 693572255 668349377 201728658 592466981 421292587 66931236 925662090 453612825 139927474 351599781 615657794 451974165 657941389 681533743 935148983 716127789 42063775 573742225 780647258 476133709 262988062 687121899 92508479 397579506 955153872 189474774 214548843 845652977 989131599 166158781 649093338 210145688 416241055 797287668 214836263 801967995 598804537 547469562 57281864 997978807 887726340 492932572 808435772 294052116 86501384 494850045 91639986 558463543 934468870 55785176 888397837 171011238 841573933 348254158 442879326 492029570 885403669 745583153 231826359 600719239 64904101 984709731 195295430 597881595 953423539 55515054 179665937 385716972 618095605 164879282 383977873 474347887 579799495 649425957 529911039 741509987 808826950 659695046 838448172 6328260 394012367 353153630 857308863 105235935 857033983 552239510 374635252 317247334 178091106 103802899 965025596 972061719 830459265 290697943 175068300 342182366 880413007 462842472 716272258 566901013 732480307 761635366 4808259 594704271 388726219 799302426 126723696 507974887 336634846 112591749 75141052 19646018 633524795 200853181 166141009 50762729 144435822 3451909 675056951 581908269 623550311 299345487 429600207 921479630 724631797 907536733 838154325 955963767 489621797 25334337 900700992 325559550 846862680 990420448 210922862 861318618 470140048 624585672 90452556 714550104 534526489 183373667 629454901 690925619 145045519 320687271 644469260 137414150 628788589 668361215 726147175 553391516 406124008 615413517 302578406 641823454 148024618 703079018 676215749 755438629 505815478 372929469 602752992 200005787 316835642 891540422 452678708 229356912 452233061 239609307 358460845 310414514 23102682 704435011 199350214 392607146 693213283 617422278 426551451 201448940 910693240 274682403 722256467 514822760 471627957 214694221 422929170 542459383 513261106 567097284 547913394 876288683 840863732 230347157 969247798 96828147 86505833 919057973 836136980 743587446 878271123 532648670 864932532 187685527 291754105 469174407 626490940 798770431 582010601 847778922 739381700 964304984 123452490 87368390 846431065 540240892 830089604 847635571 341147436 145493792 435468903 845764692 423189629 982296902 855759196 998356833 399121278 223611538 666745633 314762894 333071265 413009773 374776223 645155588 75162164 867618658 529026172 745726225 468607109 638340813 330484112 535055951 576962845 32219063 580376743 612640541 999654044 209178432 448226204 950319808 354647376 145492971 51108170 518993262 712897651 817997411 134947432 567119555 582375033 737448454 736220256 377861709 829864596 230902342 16483541 110401287 599877397 569720754 530560861 133132286 534925969 475718440 709280758 531444859 392970983 130779338 271030648 266622794 722509311 617427646 721457413 26770298 395132389 85018781 751538101 22766176 347381627 521094462 574675163 493882782 416218840 761886100 722575420 442185133 876710170 112645448 181037110 290861892 288458544 800832509 592812562 196192764 795640724 754444116 790748348 801427846 917173894 813140698 824760004 580059455 438564092 957885499 20634933 267337748 748844765 645841780 372793225 310608630 298213893 424132501 192869565 283832428 811082503 987273674 141864170 651738211 365632116 958461976 283231110 850050457 171516398 85531389 998735172 535825669 716282616 434823255 145702083 709531143 279559661 893312581 888388266 601389301 871778821 230880741 880123699 159158908 489761992 220487301 687702450 394070186 109795154 730224973 383884028 124107577 532333252 957492150 776746779 383930316 447369979 794385622 888592805 301870558 353673830 360231413 170416905 706091145 726341798 961043261 126175077 652059336 744986845 162870597 32128103 81265392 846703341 158460752 959092057 934089671 800052891 624818522 163641003 471056588 451634988 444682767 176073807 514629194 302701277 70989645 943620916 675683476 382805323 40492589 971685510 344538848 787812012 696662627 131930836 769564354 128005085 26646991 363158091 609637117 851007289 460035008 262217022 553522042 893358092 362751637 478232987 847764688 713945329 645441467 449980056 193716129 479052849 276130146 942914038 954936640 412755475 833839135 528204612 611131182 140530669 241157440 380704001 307123782 144506267 75371282 579283513 125617157 826924943 312453663 772814172 49353584 426837975 197666773 284335744 252879423 528421327 265136335 118040874 556639006 922450795 621864847 258953891 467825845 106608700 341427558 352593616 844139716 591101891 365356203 858937112 988340797 456815701 333378390 220061144 233026775 561700302 640630012 535498845 541484838 600489592 960417087 121084158 358799963 576497290 829494318 774373826 93496658 780759312 601124740 509805988 620973537 503235017 513415270 166435785 168045616 742455895 208938774 604845731 608556476 752069008 416072131 532351351 952391193 312840409 646376028 100468241 202451126 802273518 960708730 560705988 860842819 673133054 631833465 408173644 824377244 133521098 728987617 335938215 427877161 592754589 967931008 155769488 993391057 805225481 254301339 57615315 834994098 162141607 184925251 707091390 466282035 912550336 746419588 8549286 325202402 836382616 936732531 871745618 973621007 573423436 623391584 27175497 884485094 862077531 943873096 646322694 869243767 960090979 214659055 870627228 678860703 555817823 104687776 464048812 813750051 232876461 954409919 194549299 533591944 519985469 250086309 640891463 17395483 177205261 60544668 759175853 80672271 955458801 363511192 629380803 344044920 34657289 441721366 955897151 240930134 268002378 649366153 583033097 173928125 337757488 771188189 745196360 80075633 927501931 861853431 829447291 833254877 793207646 801738696 29839975 346662245 212969963 782247732 29048967 791418137 771918707 756390859 623098090 54170720 358452398 777964089 459863316 964080254 26864896 708073543 609403294 803721078 87399023 415798611 427485330 495484667 122739721 391217671 544129529 379319414 761072082 997188107 284578468 528022601 717196791 899526809 563899223 94169304 367336196 789245240 440109955 118802743 39149598 915616865 462625484 28150694 92041577 205268790 850975865 196525700 803117308 940242920 246709955 338130072 222247353 545306299 707480028 818495797 643789348 935317790 880178238 778352357 595361847 701742858 547455861 640052158 72581258 222044717 253256010 316630255 589378134 224623706 924052252 709812915 387735321 874914422 418380395 54278730 837386512 710393373 821698941 967269554 454839500 289102513 341188377 423654902 17647380 1283184 461007738 336094378 713244419 430956958 75751791 711434997 666488053 196020345 169406536 87813366 661327672 865502769 951911265 611865763 473397526 390858120 922269553 842686947 553244395 758151452 60070661 546176199 587997223 352209484 120617411 973304528 212802678 14747717 388677194 542759014 108141953 695371190 241281417 750313319 649057316 927190877 658844922 717295794 217488984 253225459 942856178 443520419 602191805 465234511 907757290 370767194 726293880 717802580 495249091 621497871 337271997 674890429 237271518 262519393 316076258 250490087 758827110 639840287 616401441 980565341 976142309 755707954 847461499 762984748 830193302 910272709 699567009 207377301 482101998 65122813 772571312 215085683 331519217 391852555 621273047 875735384 634901935 586985761 277807132 252877773 412817403 211084273 75272676 86734245 694629427 679506126 306304118 819164795 877893484 294747822 962744839 702858650 927514083 840565122 484194559 376353236 898401146 188981779 947776982 57224988 701662876 511702554 41018111 763178030 27713693 147923264 258542431 223447444 137947643 990828204 228653519 196692729 405125163 325280816 836395208 486444372 469777141 320012676 515376146 495882085 214358609 543989986 740716100 754871703 423957698 524491284 597291345 418571417 982489567 887284608 651370552 514681053 190885491 165444073 613963970 553746294 764399821 66170650 266668567 527112224 305916348 220767009 535735674 347156672 819725334 322158747 797781765 936106116 121539053 977882369 914894910 3361274 701758039 579115155 33261229 228675401 904195269 186262693 466256599 317804457 238323530 726383448 531366904 329706740 374417982 930386610 758391010 718430764 513891925 828112421 524768812 299727022 47135120 619620385 954271391 513631859 973138866 511299441 841009318 978797928 189204201 782062144 522022898 426796021 559865968 551108945 711524471 272106346 406796088 506886023 991957832 257812575 781596468 894522045 891569224 167152151 487638107 124134741 771400103 168197772 398850037 395730965 120461789 701765880 644562123 237119370 849207189 540624020 842263480 294451642 981951707 493689010 383580541 441465162 612996947 854708342 773529082 63057461 656455754 569460555 851982103 584535089 243643037 2916124 556129726 495480322 799516965 64502835 250880484 724723610 200677752 840449911 832801190 553784437 577720295 258724120 342395570 557782719 955178545 633738915 644073705 997568953 239477345 581938590 814073837 241849182 68291205 670118450 301800209 122743896 605345384 128354443 226218181 783812260 899988199 787139977 378020506 307883038 549462879 464888411 198983886 975806809 24148014 976118331 908323563 57836762 58484653 595689648 427062733 880512609 40970175 305760262 794048035 533795223 731312813 466807720 34665315 483312230 97566478 931251083 539064933 154620285 632815729 310612655 506413788 72304656 636422427 566156624 927621737 896524854 190366197 53015556 286649689 207846585 255227373 483693807 694053181 398167110 704326220 129670323 370607092 19879970 971818578 908921024 143926028 550812507 648279374 115383268 230137220 682568877 66760202 110729283 338919705 271502078 740429410 401910375 847042392 24525634 49245976 99296205 485599681 45871918 20945404 138479141 385827705 915481130 690738152 189213329 245827036 723718801 779841206 943900624 756505173 846429409 858135681 185576843 387801156 68767622 430782684 134708296 367792872 108201864 200857499 488907817 822700514 767172092 60908495 632214215 980681432 631128315 452442685 117501509 454887461 523923659 923740131 882322316 747896296 407091177 988452090 851852865 777719341 4896630 792084218 330547697 478914901 505040269 352002599 35019032 190769336 245694376 197318039 795916069 700635863 989801040 351206393 317948369 849333952 702232526 249097626 734687634 109242838 205171454 248679370 499072008 23365735 450584128 710568701 218860343 109550221 16841694 129672640 217676861 493769439 946162016 839063855 209642000 472295934 192936572 452247557 92425015 832821835 613219308 214820658 996964713 238344365 475993934 348716982 559680560 288450790 330091397 511545060 210483707 582694710 230822028 171500598 981898783 867764493 677829411 953543252 894342061 80635893 223374092 322230499 123122114 646992973 425311927 22830833 282574605 922785748 188978914 308027288 379688788 75035881 51507338 433446324 959676184 951325579 124158403 970438544 750040739 951102075 867286622 331263450 483164270 555123557 173058481 219482016 373437219 388602462 39534477 648520007 713618946 120716410 892438890 46424234 158167588 931849375 733610970 721233307 290349086 646167711 97143655 634130640 471924306 4659713 283385306 757112664 650074080 401193515 236049765 83836459 931462556 248869403 394252811 873505294 947083776 496718658 997570098 480239177 864746307 90605459 67827580 315698999 567771123 830268775 309058377 674756632 111425208 530177975 880325003 241343733 445660230 645438640 705815808 722843829 723679876 38741224 519793702 45547150 333135297 423518712 419232522 718976608 582114095 378743371 901712379 8118881 590495375 876236152 466734506 563977227 208320178 277656176 885534604 403526710 484783638 596914066 657224950 655281652 618734981 162775580 305379693 738849076 336797500 786932423 5376828 41628214 916139693 132937568 614165120 548794353 216104539 598584793 206431428 220432022 390849995 174980600 770218214 111802117 566879269 252047620 611942825 651048156 221466538 921700181 574956306 816372625 910412419 372929175 212131446 8859471 547744129 424844768 339706802 193012342 267490042 120244822 695275185 861558880 775833645 450780341 699058836 142476528 169272943 762945657 298056405 872630399 448970836 967293396 934774352 745213101 458666075 65073085 202403811 814511308 253559581 23492478 236304335 6013952 246673071 713693830 639181475 978503990 103096568 186115958 122377461 558258049 779900825 532573676 873323852 410164495 237029262 405424412 625054903 422875875 386789405 99531984 714708179 908291716 232191552 432678985 570892488 144308766 468545422 336910405 799195765 607716757 124746623 176266546 992322668 534634912 241148317 947535211 61154234 707588194 227767433 252676377 523119869 43447355 815053678 224356083 106843868 308484211 420180800 474436511 932350744 27121280 777358632 315445101 521601490 806325125 237992619 795144639 990633623 974120640 369467151 295366169 718460386 857051168 534613693 749020141 477656194 863613887 901384353 929542572 572378551 992166415 577845202 387315821 911518111 769384436 284931859 535407275 714725885 805743242 878475772 927024242 473253572 888927403 114403127 364804138 294048607 459325613 743181226 361677691 636322914 251686423 416185910 136034443 300467083 490072779 662731238 602763144 944505827 480686269 400922175 373947083 700253228 105641490 164854440 113732036 271348015 498723034 211482956 774121652 297439831 374937795 707681087 215773226 148548273 309282380 541944104 96756088 358057764 762930312 829320137 994802949 612483455 791826201 314902880 629330708 356867379 839198740 102325792 600314718 900170841 693652633 220953815 702854135 581958924 88911133 964342916 536272380 138090318 819546460 744612659 652340252 191165829 831150707 777652144 486372154 458756569 419453151 259503943 347827073 186087388 593621446 538698696 304052379 969191472 889207924 159633758 888915907 181618792 270501829 719589007 972584108 639918447 870825178 364050920 810731416 474484748 537967877 440759176 153164337 589729897 883569138 364990972 162572721 389701307 992711700 883408313 143715252 577652570 524865304 562432601 581773104 755278926 438829448 40531730 646941418 527648594 733560477 682647279 294285661 841093316 542380949 326533334 252240663 881396453 1271317 467014012 355490936 380199268 210838867 287233082 958860541 235762104 689504008 380463759 942025087 219995589 667121901 532453837 68534155 312917521 875700311 834311555 633468600 440949954 263636602 222032422 767464492 405125329 521259943 222560358 348280495 464662054 886831609 968696424 365397573 323300142 729750547 774350089 135319372 302739440 864461652 560703230 60283221 392666602 490673080 494891892 397779276 908474083 151018682 874361090 166771247 351416634 227632508 36749473 103524696 576193185 380934712 167784212 44833671 926415540 854211206 213156344 659542720 523190615 739688920 620570282 748808599 326203647 133606308 885146544 494399907 910342501 884632833 100315416 880857197 917533557 242891316 530770753 987991308 735368096 355056657 999436905 242847701 169129069 538689794 949765330 382789624 329694840 918368253 259317214 839644920 270857566 938984824 112335045 919127258 981336034 812366792 97025463 235893049 853294617 950763903 594687726 827919357 729681913 331237916 761932290 420735553 171863709 815235610 895370948 197831218 326506950 749143679 364971925 371350226 876317211 845538904 347762896 173147328 873889860 49564070 621208764 839542011 940029849 849855758 479015512 489230143 733560238 545264987 450703043 123211568 554995192 383866560 670335057 305202523 455868602 884423841 145473524 856767173 571651099 961882536 14384890 598587351 932197205 404755514 326834305 808166010 443346701 979048193 542093367 554177874 12976941 549421351 897428191 984824301 427071141 399312545 384454902 158565105 461037268 246919449 622499680 354085035 352536271 723325467 627897072 334692875 569648211 330852952 941441988 822112435 877292509 697076193 122405236 852271370 38480862 998140247 921096492 694919582 858180993 132009130 973902488 711791990 405985317 877485923 611926770 634982865 840899994 739325492 982143825 459938446 119992587 916462142 809576611 80937215 441088021 388048417 608041416 806713993 907485193 807018694 796999982 397297377 336337043 556492123 391453824 33103200 108086795 755707230 602371981 809392899 637395768 627882262 122282537 595864856 989385822 155039149 38273306 545103530 462526486 567513628 614098239 65927562 564008951 361876596 916153175 692984472 28834376 266075948 905315947 194661837 792809223 225985273 301617630 714359281 301056179 413219952 559940609 360199426 837533601 722137665 424473696 584704524 779295291 229955745 424947321 196891150 303878871 539913250 327879548 964802878 951563809 71793734 487281977 3641079 389185854 910358501 971994393 816920445 908501122 558356803 76668827 310982449 446550588 767909948 477051949 839939822 417501676 267985146 184569372 446447875 827985023 489718713 256585661 453535096 86867664 603153607 925915590 580889260 833598496 910870445 966310860 848256767 480565954 592595755 15066725 574896309 796063390 44998797 362966084 256750971 324933017 396380978 214530686 777332977 143626760 782394592 615702510 858670654 216374178 618574554 766800282 475628219 554682190 667875764 887105496 96303155 581290765 853782489 767610709 240468568 787773172 9760303 513710138 953514283 141716128 344525685 725444256 895432311 444487574 18808023 694915295 854065628 455827914 13931292 199727023 324812773 178577862 582206696 424770030 812295728 989227978 993206025 734140763 519097887 320027405 915319088 23807534 301692653 244665659 830614603 341195568 301715939 592551658 546672084 621564726 825369878 65122501 191042725 379552741 611249037 182148278 90526461 955989269 285800815 143857363 619559898 151370627 427722710 740221471 553396327 167661343 394079591 642905028 675801904 192647420 638403805 114618338 101758503 518608971 127927527 771621343 149944148 81252541 911476356 541585727 300059815 347037560 247984311 751569620 432229967 475692318 846021590 838352406 644827729 480302906 95900570 819973769 888292719 82667810 929426491 266553127 844198669 847661278 713147001 165610297 90184601 759241467 761092480 909838552 235389303 977857230 76773937 386388443 985027828 239045530 137390056 300607614 904434202 14796025 356299141 880265728 113726210 603922005 503653439 265295112 775632848 718492259 588701000 524198862 669340501 181142463 937847845 256669386 546159517 560976268 258057318 731389343 747995224 53631478 933580265 701015533 408631313 300258462 102182114 681417842 751677500 284798045 727992617 715701341 86055958 613130386 752820178 26656959 154158495 756304512 493079419 607325209 560704974 35317836 485627555 190940053 784161019 967099582 907684175 188884198 175409294 515527674 668658387 725518484 185770402 424458250 195944154 647883160 466316892 835717724 131591838 31172457 644723596 754452931 755014548 909764387 518987294 452614186 723749694 67401352 443166468 970144207 621592972 687708056 211192792 776069169 44455988 947390774 821131404 166829792 169528931 313429046 632168758 793109618 612915981 384533572 813750712 189784154 184612244 304003748 638416680 655641714 240165977 852000784 729285283 543882057 357198695 443016009 289679718 470845021 716808487 946595888 164837795 586034175 673179447 966046858 224077772 824614348 911516899 542504492 563477154 534841240 187803820 104007790 797666019 498262732 707688139 343372511 742925913 752449452 828233277 962055982 282223144 517139805 437874931 561068450 530340349 507185260 877682550 894967117 277432861 914036690 213279367 130269517 357728508 71598377 869975505 809922049 373344549 914466747 47915805 406875634 709724995 854343728 699326649 669143694 932598835 457692998 323879627 720073639 670266535 891860283 893694570 815658409 125108001 84586891 375687121 446877846 865779805 878478975 773754988 350613093 441315785 435248784 983512331 880087769 738295131 877964030 500269291 283247965 957813159 3304977 193586400 251872298 614684308 895258109 442746673 358942729 708468122 317540028 381991440 814917487 95451221 252354256 344093613 293408142 702830391 729233977 772638568 333870574 842494020 923305857 204841354 941949924 145797012 396193768 484354647 382361115 312963979 999648552 894064335 964010407 276219271 586493172 644619984 427041085 577240754 298268572 310744274 610755819 20559543 594979812 210703609 5515216 578498342 759838593 461973611 189756285 507165765 643555388 175461931 540352667 630111857 966040743 893966954 224109283 978476489 980073198 948412366 656101941 380057039 504157065 244157925 365631275 917133240 592210680 535479077 486179374 7512908 368428513 59578692 552343924 356892846 742985981 901729152 688910817 122847413 818205788 419993586 385309903 561174163 717918656 990914557 152449030 561168647 248894857 583441894 596888968 315417279 235568421 565180686 580968302 91833136 7523816 928368745 589342038 497705927 221773518 825422242 262312789 962046460 458257982 900526934 239584780 584567014 773466507 379927673 431212559 963554810 401748563 50266881 392293942 211532306 411482123 371969189 104009371 476550126 876426287 648272477 317340491 238389535 597746302 932752434 339524170 459159698 790077149 886215833 695587189 770146113 580830885 293951881 909643379 668426025 239081949 47346471 176346668 775259978 99639339 656366969 994113769 554029855 651556466 521668764 364845552 579615480 738769834 305742922 384816278 16461656 94812310 967743730 449851158 226050559 950198560 103353878 502088559 254883421 494851431 732522018 619078524 23100381 638658473 525204144 514609216 810677030 94911977 979078144 279937989 222748176 125807654 824559242 905760981 322752078 382499642 487849794 270487423 260911332 76893689 346978919 662980905 618120215 486327378 955736179 2338417 519109490 314707296 460972625 487293700 996883972 782022537 312230752 566755315 781202462 181754854 535991859 613846112 733637646 940267263 264232608 898533996 847140857 900413362 584263372 602868883 552281677 118096953 397310419 425928436 896884028 581927102 42586173 964333571 71895428 816974674 970102374 731699386 638947096 735412505 656533468 131618037 350754466 301972248 806159649 797400844 523157936 636935606 688883372 516362101 341787513 788697841 11080213 610652823 920486097 344941925 464372248 882673948 631059341 266000684 976464751 779356521 308568297 133941241 506454689 373906114 150492691 810892205 315176155 544998895 619844669 542388459 808787874 900516822 18198082 267711246 29991906 223684879 15180943 487578338 8263887 195737176 206598707 785422248 290561051 803106962 233620872 988579617 742893453 32975607 129973316 717050626 992509569 979620638 929906690 504960992 938045643 643696655 652882775 380426086 725208941 425017319 98108252 487436731 584300836 866314160 249286154 759242522 440999736 551489594 761662389 106054116 788447694 910299951 2203261 253226659 677351119 225285806 116936343 836942498 734425685 734461644 165924496 882693530 657832101 790722498 478394284 112233533 84320851 727708344 680221098 842509796 901199931 259648054 566040301 749401286 872506490 685160865 360239667 533882558 935629895 505264769 246131203 352389789 329613338 427995230 412591756 785674935 492095382 227764318 620570374 926584429 221326992 540351128 626893464 684113677 97610426 996774313 51842463 872796290 625338588 774809210 270300437 666973274 568658676 601968990 243793669 328220916 651059016 421878290 370571680 42389121 901803930 513907452 92025201 682540715 458843650 619976696 741193792 269422356 123640178 771705222 43678871 852130246 43948913 328011125 407541991 351849405 38334806 405664596 85094030 349798487 760023101 55188756 879955253 952988418 236743172 465808104 897044535 891906920 304465678 553419000 74253124 649339303 129912191 86480198 227226673 54015051 967933486 537307144 377798894 979978521 321971707 127559327 293676514 223817055 544403537 826433111 943928103 889401225 328305548 756426160 582338135 469724284 921436580 672578165 592914218 581943526 906161908 500937045 469649979 464002141 433894478 934245453 450136982 524995663 80572644 129986280 846264917 62808182 981523642 554333136 182832212 101608053 418586908 804692159 693302926 481988050 29970056 706203711 267211930 265866808 898517217 559272036 905564002 172425775 875280406 992661151 656198416 509333482 158906157 40962314 433919273 803363078 435230021 200140949 169872040 594580921 960742679 487375967 655611279 249262279 851086077 122806221 310745844 208173314 141993241 178217880 987586915 788355597 828997858 55978551 420253057 157476420 682050688 701559688 355528427 637540184 401121590 373003588 750616719 995284350 353105046 387511949 329495370 665520625 14340087 57524149 92325715 31187436 851449250 366691346 757269983 793584644 632722987 311612147 560693908 377046781 740239693 183541719 318257713 212148288 426995074 886354278 822874998 345906785 178458931 582767439 330900601 260269162 152273344 293435897 65763270 100388109 761782835 265471055 455653322 647532254 5620099 452214421 165834268 496529920 950511426 791358278 957007603 52478537 206703547 768483992 578843944 840294317 793374334 332628479 126380621 680089407 896282055 73575624 246101647 664334467 935846405 429416900 750677176 245206860 765267136 175164936 702319800 387138349 771922049 941731457 138332620 799651736 571250809 814732363 670552002 623723216 662740477 964573861 830551 927378061 4815329 973730746 709632222 318851380 6158676 640896405 224830961 797031130 602747551 501305782 402287831 205375275 102021211 14252413 963276158 578484207 267696510 973033280 13642656 203244068 478445922 213933867 735187896 624192342 139765539 497509400 755525081 128201882 876477916 105401990 287847964 337028335 824869636 756570247 534638551 690948410 498216113 748575219 141153267 490550526 872701310 256392202 15684609 556871099 70915464 777574641 79415607 778752606 711503742 734728005 900743942 562166801 963841963 186765422 434831047 267763905 641506058 212809568 181799604 344198015 669713714 309651039 332892345 393972348 75534678 638034331 493259343 823856021 292969436 934215239 366008768 282548920 538382056 718516341 324923499 628000719 477719512 291171546 485573344 932979279 885093719 570014364 648554859 810074356 284332292 79416457 907118839 6160042 428179338 615249013 806314196 28098236 348383278 213028744 76989491 370516613 667089252 328573694 471704686 847006118 522045285 398977525 87150646 552215989 105602627 598585182 772752102 807189913 469658118 263779569 513936777 229095335 232526952 433440647 345153445 995258808 770726507 198548262 139422877 513386295 914040822 675048265 321748966 315162198 326150931 621738521 348908906 720977454 683709022 324059042 127329330 258858003 527130140 50179743 202979569 793469193 317626108 279548765 863789619 603330214 590192626 691956667 698373243 659328970 948296661 609956667 511372273 679291250 985216248 413873897 643941423 677702895 103848817 284054832 948998465 505318232 27761139 579433981 652098966 662433553 465927212 86128857 782124779 884224666 947045766 479987774 877504974 662000643 649798107 18612353 36378252 982699156 913237366 190642275 420685064 751383026 372536936 596879904 607928517 304957702 203349367 88577468 750920237 268661110 530609098 706296242 721576135 381105956 503729036 351517260 562270840 211788288 58150481 958931806 862276757 759972146 554520865 116911798 494646948 992975389 903904899 417724362 76764318 943322721 480701320 857921550 613512698 839124408 74097680 255252596 889053312 481927686 476330064 482065987 476642932 776166054 768557227 704503590 58512714 539377622 184240071 665290320 564162348 583813731 580270459 403598213 570108603 347601152 656388712 946821334 136485757 866158306 926026093 85123637 791085520 410909952 800056379 58859997 604930347 607501042 4757984 649843326 302442782 235875036 661000792 389251612 764355834 282540747 938712106 926158441 711499808 740856405 119287032 680961438 723107670 997281382 86018384 898271863 333186940 962403420 65880707 289606106 143270563 119603736 718816027 359464694 169808100 135470269 802164242 589444398 146641651 760935512 189409558 81745712 596729419 411592722 251534130 760804347 499054968 996608825 18327355 880809497 585095274 808709211 125937746 258658641 545732105 227132444 477099828 31519223 401202809 883903622 208964737 82887166 122416836 198906792 543012344 904835783 150794894 580449634 982403740 838528924 353783799 219187462 574031164 510158807 833857906 151178534 4033276 129816017 476279609 338339799 501551330 492915663 347825089 694716464 243991380 526866013 942806539 231694367 639091430 179282353 631666220 314065885 632658042 60840215 226230967 343953877 136055665 149249161 425994235 707613342 796065051 789733321 593783293 336457509 671330217 841825545 678794515 35991957 8042410 69887282 922502860 632234986 35437925 667997073 801227288 213647313 993736580 812202306 119385763 95047306 516617324 588587481 804657949 277969764 854504870 726627852 362931513 247937440 492662939 215781259 229829196 595469027 575104070 898005493 492626704 523285738 711283343 667655046 326487367 868232657 943871713 613591873 372370010 183386762 414654359 563213214 612783255 443713706 15963570 504998497 920539620 63831168 958053307 283880806 400053513 676725406 520483839 275579236 729522038 311238988 642390797 841207351 65934454 164054147 738548302 325051287 561401787 45075225 61174981 334896995 53185057 105887504 722828898 842062922 415080375 27207310 296139743 52148834 312968029 804268657 842864594 964192209 841505191 936678694 182068593 141622246 231386938 401267650 322624324 603423264 569636338 616461456 688147667 299775023 739296754 631822164 708053202 555443079 866702890 199752214 573003013 614899188 504463725 732274429 136015147 671572199 501360620 449572760 262630169 262964968 451867444 664639779 829572352 898034439 809085398 111714459 878267385 78790365 849812619 101806440 384699609 992453093 188882639 857947494 71997946 45334489 414288986 999072502 248295984 883627674 296891058 498318568 717548279 731272179 680069046 895587207 623104171 386133120 488403481 428675920 304390847 820543307 415077504 522186255 310213499 767798467 321072529 706446121 290940733 838756350 329379769 939472321 610499065 527537407 839814376 80219974 396356472 468098603 322746412 214785856 186614850 363687746 704699245 157362380 33466071 960736302 508692776 449412144 326712546 537293110 226803308 755557601 762035740 418381175 270091214 317890080 50617704 284683674 550964980 156024313 982421641 336611725 333518777 581141730 820173131 312199646 403266532 356044847 490329946 151772786 930755156 281598463 920361093 948590279 831039218 594904229 321798484 256123995 884076477 81771905 86470744 608311361 483251237 461011965 282215897 832259008 211912311 798250002 200677863 465772913 453260718 813223034 193587291 653706774 484489297 33231336 601001728 283288903 899443559 721429631 599581909 988649630 163870104 365873984 211612454 190364653 233267869 593557096 476327658 139660968 608026617 31998724 845100480 41856638 826217996 392436949 313746475 457404390 221797957 50815422 518555528 246212695 75473556 765823011 528738924 956763311 677814953 902863024 868756737 250739226 9372653 501351765 604030929 869733523 926492720 193263404 516602056 846053410 712958815 541973501 567477269 822266462 600354624 284385464 408291093 940909557 983131552 432885175 272788533 99848650 889846791 799508017 228007301 39667235 430346243 547864203 788442187 787692531 544611924 619315088 165434189 351784394 900798812 300538868 975636956 462547838 464911611 138845500 786442764 145415808 121889490 881624469 62912591 405399425 318924534 522396578 579003295 999859267 532364321 227273401 647299609 797478982 421229055 185363580 377686419 466991683 651441629 945240917 242283751 503477357 962281468 856110456 511144214 994677466 134426845 173515305 215190739 192571840 549003362 425512428 525037490 700926973 767810452 388840404 190160943 764743816 123211636 351264013 20645809 540496912 558208568 411477644 195776237 421291297 409585211 297718741 163327939 370269298 31534181 249387547 83832016 906770585 126998172 31221447 932055373 653664070 146280095 136282441 220429935 46977520 869617416 668396021 860837965 196831624 705998995 40346523 377023981 474671014 663550130 532336006 988342006 322638201 155009117 915762528 466167772 39908606 35742838 783510618 947265319 540766441 83478251 119633312 301692822 740951353 448539687 954108122 62546673 867484578 225254172 145022189 436660176 314079301 481258174 318502150 784338710 185656840 110782156 560868707 880209073 246231049 31908154 26964023 174576702 376284988 818649415 207130714 644615726 633388409 39290788 317715592 641944284 829778815 924913905 641055575 238044646 949772520 541534127 140394416 664107074 534125077 635284875 10573375 354151549 510281725 168831360 481661580 220332775 475231847 969249738 994465644 2654742 42633647 566587704 196212416 66182162 330755941 34761033 552653363 665080791 427835370 743824533 107941187 573983467 674155100 593450987 320303024 860669851 731840915 357633434 756139327 485966066 362391170 859925906 875847444 413633287 460107024 475826113 188598160 925853825 541399390 854738522 439372110 919284200 897170684 586378529 277913401 889724853 950938747 558040688 484917965 624546168 147690334 460419012 453432268 377247403 68960979 683799200 449642401 185832012 787399895 839804048 754182819 406536486 5383597 733333945 606369893 196149398 144449099 303277997 404656541 551980901 823647237 884099143 807250222 572013979 535859025 678316814 698315809 598619147 961354799 448833803 815404272 188060774 783973626 133002974 20393527 408532667 984858061 65023031 721859652 965064315 275125742 758060088 901814943 675010096 537852210 952327154 253625078 181465718 155676111 458339498 883692512 287057019 945972298 44318252 213256532 813147518 384455628 172301726 86730554 867601440 476229141 446478058 512705368 966293733 50113510 215759931 521282049 220860169 819534772 626448043 747155669 859735990 714986504 930093347 165938640 962389300 621473710 444119680 284107354 937920104 956715438 553018687 532340292 610450125 343633129 567157638 33556105 942944205 447574136 537194668 955637809 410891302 809207837 517068008 13359459 982899740 995684379 928517754 145713068 822756718 404724512 523049707 74839593 892872346 864139360 202838728 919274494 829857021 999725094 250628400 679076714 653622583 142888612 80278442 41183744 35160083 664727063 573126981 219341610 203935220 647557700 491071465 845804812 448375997 362419341 680904744 618030538 633749994 772166566 104814524 476134244 855613120 740468988 185638144 839654198 125116779 993715694 613512208 872707001 484983054 75365998 486278793 438121423 667120404 41232625 944506495 557046869 411861468 928162292 364309640 637574171 584819446 773436413 289333039 333275770 259076247 787213690 736086458 646846157 324058137 571212836 987738087 473529990 53337000 748500733 958673371 492533880 367727339 698224757 816612031 622056030 633891893 450403493 640998186 999506402 611452746 394085028 7855294 336149349 38250888 998697003 51420357 969925764 117858821 325175867 377504067 302537271 902700526 403569133 754615346 222330793 447222097 83697943 315444493 465643813 558651055 47902409 252914711 498041625 752062641 711706916 536719644 396545499 79433530 31699078 115449859 454533627 171744609 500160618 297011908 847627028 488315720 8670560 654385455 758650823 249249186 680944897 874981999 68268559 10774736 158818831 225054488 6682458 697741687 906606188 757802090 892105852 33018762 815055497 453250859 703471911 549483163 503535824 455211320 713315851 339341008 225792327 417108608 164617956 756544463 393449313 358984981 426059275 414241583 492483838 976676953 411993394 479015566 233276293 173124280 265112584 557230317 693310801 6758010 252018899 535383244 328050293 643819673 283962744 258467432 924691632 610690428 674958463 960308308 120748040 440200106 572532968 14714767 969849566 623847882 220862447 591746172 636627470 628663685 378780824 223763233 817109479 222123877 665131098 732835676 14485880 672338511 503117496 911746617 901338480 981100572 536179696 866206965 933494706 383302397 779560012 973332939 940516866 264545920 8529690 875379758 84521316 792739314 30590703 127039176 204991242 708020224 599295278 517340235 400963743 385482414 103578231 181503979 342298483 317035274 223012930 275237634 637311186 30766937 377336101 999808132 534083412 261642613 846741905 159362063 446982214 714075789 144304383 124296636 110947273 301035997 937572782 595032210 548959014 367694926 832281024 873031131 659950982 196490997 566674750 311327000 626184069 918026646 53874713 706039134 849634081 993537034 960100760 173452473 612245916 730627207 410203183 280989861 579957586 899888901 369206418 714387936 276403162 413810734 755834947 602259009 940697671 812995020 823252278 924173168 806048694 900698621 879940346 200484395 882318852 70395252 967752751 832169817 94914916 185882214 346646133 648209919 930712380 813128670 49483535 842387416 820521719 753935780 322367007 395323644 53670233 797332890 305190147 720659022 750140922 136895657 536992329 343123439 402496106 746016960 873097731 967023175 719145794 921254765 224800162 58204641 836548196 720053076 45286530 779669047 434442033 302703461 555107169 439999494 33694953 552922003 865122030 236757134 800608986 133265016 525268582 30168504 135850719 347743963 249322635 987973548 498752761 112766565 492054351 122648275 281601815 356975349 473884901 730278106 619414810 650923859 196910027 688489648 130590270 31827135 262417106 172952189 449382048 707204442 900692123 879636708 284609561 806542434 159687518 720499222 337905874 609724025 366298006 859773368 554287731 643477282 167571100 230022495 623853689 66008541 809552437 616538278 255542713 298854181 491594321 622815535 979248416 323098092 459671811 917868513 583879164 990155018 828006774 66215619 613086574 616563779 593172027 233755353 53964464 952148861 371127549 88847606 591211511 954367410 735684137 897774917 187062243 487238685 761874675 861948767 727541305 506102604 113004317 329533822 865875581 232773978 900231167 143040906 822804985 801346610 762426059 301397868 824083369 727422205 582253954 621540232 856125846 852680813 770330073 80118606 732666717 235694222 133541982 24697203 803963870 882367237 406861653 172983308 179171785 902578343 365576780 930748102 573990555 660487841 435569777 333081671 475882243 656282469 327299434 651769588 462194581 530695100 802241288 86923291 690476279 102923420 736897651 839622855 772796333 501097605 940057708 320680002 110335561 467194048 208136950 108651344 671056945 53045379 354605705 679934420 865864841 268876368 861696025 360155119 564292824 710580024 659818272 982624328 562203329 412247418 476927848 316775853 439658074 878935976 118900451 729350844 958483884 818133988 879643154 350796524 543991536 538262574 888038595 248249464 515560523 189654221 99866149 68557542 513346083 875209194 278453722 2306851 82414310 763501880 359468710 591009023 801438764 581898211 857196934 453300769 660382998 62757957 670429684 399978274 935205328 567282525 251794531 431699659 107752827 150001735 731818356 16250122 800178330 675909421 976389651 368603499 481034579 573311670 6955619 139929457 780602560 5370709 417164832 271845546 380498538 928573504 419879864 81212980 966405608 894748834 585786297 347177972 904926964 137757726 568937150 171951 801719499 696792033 820833178 298054784 769901275 426143104 55455980 296348480 201959203 654948132 975333707 915273690 434931929 595608919 928545175 787830765 516634587 426340461 767709857 382180895 964209990 738306996 412448165 87961648 850241553 271078625 49730215 131697396 819555776 126920935 668718885 611374153 817019377 777303421 344225115 529705553 188300227 46860831 993501272 536363958 627738683 740140043 818407687 624104589 842653227 1461467 863511360 934187450 298612274 549725072 264323563 429630538 815616950 644610696 89096432 318306396 283967710 906742948 733833839 658285651 176609643 836074423 832725319 418621716 198381825 889092626 147202269 624533756 814715401 488501196 626130607 945495945 800688666 281666138 975841825 939441412 912206983 307730467 425011206 295718992 554595089 575906939 693245221 148016480 31733150 305335742 401050450 183822751 547215728 723577913 687535640 945417016 173214639 88273894 614237054 630892697 508014078 563086192 429408869 968923557 169395868 498892661 651694875 117213947 643738762 36450173 865048583 554974479 626328939 828360253 437669902 544805890 797189741 570604644 424002068 397247211 19006275 415383524 866536499 189403207 58903775 919266996 826616881 636442100 368492781 69245083 875173534 6848265 63725485 93214600 611283725 901331546 930147516 850584693 348676104 662869775 673653210 396432282 960779324 466425450 809901420 334152199 682803176 181941910 944077070 488210133 672285025 402785219 79537931 498914713 579691851 459673297 760556940 443009661 395652621 691967332 382130316 412424732 360964401 679120459 856766513 984174475 552005815 966819422 772549946 964658689 320929582 1957879 496407693 880666350 709858717 266036338 526012653 919026229 518900066 554142516 484421 715486934 254722980 109674741 323434361 526901496 467168653 352577196 883210384 53101966 740630017 493604458 40834261 950573439 947112919 568316431 835729546 447993054 662138556 879952541 393447188 545390712 205891107 236267935 119357777 205195591 76546430 245540480 63923155 439748612 930364730 257007369 363788899 522119938 618344880 71742556 751099804 719501045 275447012 298328085 457260457 557830064 105315624 933572095 446019189 354924576 409672256 307049233 712850517 649593494 436989114 614361470 138946234 181673039 830185615 795841819 63647899 237435653 17973427 612909740 242412454 885211361 89744018 551586838 343398732 518545228 472161283 962811620 996892214 959138558 183402815 706733625 927818282 418467641 926317737 766843301 111498617 497281022 770271605 681886232 522490456 10593027 997657807 786141992 77190418 560531862 615407562 66581119 641869272 179389300 677711335 525775139 91962798 502351034 270967678 602919635 910017290 16718103 489728912 566325604 973792415 461277575 40609835 479915339 472472058 236135166 559192417 496192787 87347158 603056499 735990938 682817583 901989420 527168521 630768737 305228093 833683731 947586309 963875593 511400385 869261803 257004181 308711130 988498434 86028658 674759424 207653910 600835931 231290833 453939731 702277496 942230907 967395489 772052130 292760908 989389895 836208419 258550066 529024049 787059633 540791334 203769069 633098750 799108768 554758715 600824385 691989388 988843616 519531095 915861788 725677630 853711677 298460729 575062319 598560931 371054900 957546905 142688635 797911855 881358365 126507370 47295813 358088916 606197983 884323257 717852277 544414192 130515110 651824188 178519677 245407336 318768926 158914154 278035857 573350996 938688147 464574534 639607479 219663625 331972820 864726455 878999286 851796674 636833078 496300783 477805459 958237800 826649799 534880523 221156121 820559723 952310934 161255772 14962682 584716378 663772622 781532968 739280051 862576478 572739886 935859475 525242425 982565780 820389157 498773367 241669881 323680952 817911896 642654858 116385296 377047078 610702867 812423815 477226749 869494454 372378385 631885229 46711946 198705202 140326449 801100609 632158944 519895595 340740962 415496884 622142250 179881782 601709147 263806367 680619331 630294684 350187870 638668682 864296569 82999415 688127728 539797006 298438922 967744949 999079990 188604253 798744486 796817565 648122730 24743952 253822102 434328354 188575934 429869226 585529372 66602738 540745303 585620878 346096534 458114603 489319989 425210446 619077685 867036975 115980280 12801334 715163286 323394808 366833563 169827567 72381427 516092940 835026358 410861766 977681813 664523082 109814304 914756973 128945882 322449293 757967478 968552042 581777420 748015872 753186019 404437215 314920127 560639196 79640372 607423764 232663648 851414248 66662285 636905949 769497711 235328633 467341543 967571305 593523764 239601717 44488330 991158592 659550641 926320944 71973696 521996571 714566193 411760307 728438636 275933773 883364491 390719669 896005350 675395691 618391766 156097852 71145823 859590411 233833105 93364761 65809476 852821139 746232583 131167908 353672573 980237733 523372270 836516896 492500262 273239872 507614538 750418707 667214708 155888452 896425849 201320900 859393287 435339985 291093628 855134330 881451641 329909563 603033230 997999110 663835872 640370275 963766234 8577186 79214541 470005816 462369920 38957006 661776630 150489668 589618394 14399215 288784942 646064659 75091840 348749135 985455403 604520797 912643338 458273203 975067078 230293421 688498438 94559506 52873605 114675792 883776670 607121766 854329094 760122654 170689 546958465 568971891 930297657 747885701 838512640 433974325 517309717 959566219 592671285 612026063 141733529 440648376 962147674 473446506 104615261 555086009 253727228 743709291 887494173 469473184 379495296 787590067 135189068 946899737 365702686 75294668 345941258 892697368 813199910 641199856 17410989 386376014 453448259 448836978 328873230 485240113 737919493 906046918 766300510 779124896 870136009 695783589 994398897 272145121 554358195 651776024 752845768 798746381 477265460 50420235 446448689 70022493 962434153 724314193 671228576 534285839 261665419 77047210 123305726 15138859 680048263 222032015 42880930 505315497 258247754 887816728 358359990 738800180 403902346 956619754 81613149 150415496 685826167 491844830 758608123 565923837 801524834 147991170 256240021 320818602 640036438 951054823 283452595 598660116 970320883 786115698 282703622 863586800 885442692 57513344 489793777 364947525 383659238 881610462 23884636 178523527 477487111 689276139 53542889 417002854 693369806 12680187 309507956 351070034 885393117 783689184 256636362 410254733 610560603 553221647 608102231 636879166 153577044 448119707 49276606 340558615 430088520 988450628 685495465 745440663 703201553 319272719 898851808 418541616 756709086 481364876 509796056 994346581 134518953 3224310 300949269 742316034 886770293 322947699 743538369 553029846 446488347 986050402 686210132 301230892 185920960 411151661 554382467 890710390 819523900 63969596 630050211 781968980 280559939 957578684 365714957 194486137 850738022 748410900 865298682 931152397 272699839 308929488 276098434 529421248 594239205 878779519 469850511 507969295 429832446 514123979 956730789 352494136 609181553 254188260 799185388 857907748 919630685 106719810 712312831 100847871 8841246 993135596 938103992 658193265 267265797 575997200 616622724 677816994 865636799 521541630 183124123 156299245 418539101 383040825 374950856 461674462 211992529 801994518 363047742 254272697 595217821 437613929 790620428 233679262 581880163 939032772 185333989 23648245 808928203 197260691 957383451 416827310 238667667 628056795 535334889 964177575 524796194 1598595 535284853 70611830 19562435 165113411 697200141 485449598 800540294 501484945 168800523 700852447 437179254 857760462 797974858 237278393 315431656 4256430 447080206 158003505 250363034 78897060 721357369 94071756 704594973 539939621 667213295 447348682 492503423 325491142 836689393 34213649 576738604 509617508 91888597 392540364 755181009 924603071 640863670 656098608 828035230 977153601 623417159 942920860 468556347 708176411 968566525 433171057 922586574 101665417 831188460 338121543 921304959 331996099 346141123 277618436 86412099 799939932 92944615 858799243 885716743 830918759 755335964 931125654 36444511 227167211 978282848 231053106 787880959 455981736 153635494 164111308 721975489 895307513 550614140 442235970 635588939 446181662 432706175 676336638 315778836 31839407 13050827 948719030 553841294 706985626 128171149 95550514 524474429 339476209 698198920 997599211 510995176 668726133 566274576 812822864 487438368 428816782 342921631 75044294 522182336 810452117 617041047 367839034 530189904 722519107 822187908 437948077 148358997 880703539 482663595 415825162 537604785 593273273 501405906 342385 906646246 970835647 122584616 262593196 596288243 563560643 185758239 467546132 590179233 161028568 20848068 146757537 28670562 934180762 590390193 501419111 378717388 556693580 119143186 392361082 72097289 652953758 524895501 853350163 148136496 7860195 692137784 389699083 723149764 668683773 777016858 510637084 932228189 116966621 66476750 754766866 75798273 442567425 898046706 538532230 482956603 503043646 14833361 847033518 284998926 274970860 237054351 56869704 699031932 620718343 231254638 475053923 473990675 994567073 214970759 222797988 406571339 971325439 279262266 736423496 705040622 864682159 442364664 918204278 242554522 452260629 512966973 521859819 635505755 751878358 332897467 504863273 385766024 95809171 474632026 589665505 153054793 561235466 714634416 978827157 387203010 458911681 758446634 596983602 866172578 486928772 86903802 821647884 280193018 520983498 831978536 52603419 717080008 348696275 508264351 468359033 473753911 175722264 454120983 253885447 150418282 90642102 998096010 92025015 809171318 982088407 681835861 495564880 966488248 201492304 501950420 868720483 4850408 174129744 717691787 802584429 951082902 133108529 585053301 661159405 159164105 485874367 372598331 638820226 445226559 93282423 491375863 715521211 231297464 953971136 34336807 86253711 830779400 219520276 96190589 744840362 763496796 230398488 902295116 863379752 120646188 662500413 153366951 437628355 905803897 908551723 703812627 51086123 307144434 385917943 859801475 506793472 682076857 837133892 41605509 647260612 159068 866565837 559820436 192463907 234865129 6376432 635828246 744371842 332176762 286761547 675731326 724975818 80745302 906552641 484846331 655089496 287694484 660343572 394607143 32415444 701642098 120707753 842770821 150293723 21764118 564955360 220056434 411061167 321019131 80327881 934268149 672995957 66428712 228927821 547634997 124660607 770550649 428806331 886568596 316521609 498412818 94264401 790089477 978347857 807019124 63782649 796550610 443429300 873238715 424967275 185295217 203435361 468564152 4380555 36475004 31018584 369485559 493044043 310520528 612238883 601810387 431252211 176049647 935613500 634579330 803447426 620938849 190273031 341571922 872865125 682095878 598279205 226967514 562497575 104893735 540481463 41267310 374097510 190202918 491422418 633027747 587556296 12876974 842467614 240569725 960203810 872929178 733272398 801697054 386870969 781383558 498262689 531360199 269916530 19471642 182534233 67862308 752588609 522005446 805964773 694617898 141455563 124696591 828452191 14287786 311094526 985630811 751076034 856505928 108007100 891019249 207045380 131186033 641532528 760010814 722985241 67335357 216188643 793215988 630951458 950100183 970100424 76353646 84592635 946187315 372823354 574815924 751620817 725937080 115398903 85191247 251471563 707477146 887619106 211973955 397543323 493362688 273022104 606598433 193443305 172652039 463656423 900645126 804596464 899480706 30410207 214419023 638464536 7367472 160532142 405522762 216141254 554569561 204166160 777889264 693464237 318698798 646355559 866999518 83682325 168577843 554994147 295875819 625363405 87089653 958116867 805635114 489891531 981573938 623814612 617735147 470303569 523186680 213582623 400760897 460791544 899656517 367596615 788100487 75363279 862127648 59024824 899562801 562530272 948872009 970181727 49303795 861602174 14531052 291565430 86060439 849758416 460409912 61118850 14425492 435824186 969518748 883129437 785756308 761586808 766721482 279347747 779264814 303177146 681615055 831521063 931207290 948321928 639181160 280157056 466290014 93366039 409175893 472856070 359547409 507105014 984805923 403567589 701929997 376152890 191137740 153023396 110410395 91483088 700943190 686202973 543206314 422400275 791057494 424359641 937053373 562651360 538869891 623784268 75802717 32306025 912790413 190148169 897761465 429998289 657984215 700634552 947203341 664907814 106764345 917721917 718154587 491315094 758627540 112014311 686498581 271715981 957212098 455864091 262580864 362205631 191034709 791809109 144372692 830902643 86248434 238239026 404617582 849555860 809371335 841930463 338515101 772735608 595038969 2463477 56634898 682459723 666642521 668911353 69869656 574323830 993549398 668021706 596454040 172202149 656814362 241462250 537111115 839066857 275499493 373224890 304833580 494480185 653636292 944281239 974705890 110680325 732911413 750184394 448246562 347456109 232810109 224760036 531150080 115581160 617804169 295845161 445529640 777792735 295623349 945192369 160649814 670838499 547769656 158291085 849006437 713839037 266556162 327403659 479533714 237556352 102778995 101437066 746521341 707321256 856604619 690356483 937713342 947869969 720592650 573556546 708180344 981777952 208146687 402972081 9778288 157454916 813534406 127781807 288694445 325185841 475429199 982859501 476467317 735153087 878723794 659120639 697298422 509602406 376982545 928346094 74555665 725015117 765297087 518842742 614853521 187925227 329925350 365716876 737626271 137805386 365991233 8719442 693439124 175299300 835404905 39340275 933110338 593883177 93723650 620155760 342478382 737541763 102818936 695790251 460162720 149932148 719617457 922976351 881991323 674447182 389241119 652451766 825537765 577393473 247007014 277944259 240328793 414714756 951187295 863398767 415514805 998853667 571353181 16720100 537700061 799132810 435149295 501475061 403780877 559053255 681082907 987411886 205609218 984166689 547722864 940947578 451811993 25022145 606277307 137948729 890568744 932760679 148546942 526015028 599618707 219568717 223008737 184051564 213885968 751223728 605925399 604533375 287151922 339819291 121239549 523328224 639669428 228218212 564283648 408339851 453825725 246947517 112568576 682941017 115769091 110517880 914181199 192694498 901184413 585202013 558649319 740511389 943023798 467791351 335770835 326413574 992368953 678931094 306354234 177208740 178793365 944720234 662664075 974047262 737207935 188604961 167351370 544220387 409700823 827634624 782637354 80756045 653773620 794978350 353248179 977368717 271906294 713372091 916947137 761998653 694849427 449761500 403264776 273412329 509784118 497670236 495971808 97837183 821779158 864395973 215434471 43680646 479978035 82020578 401888560 168804018 204839400 35582820 287932560 336597616 1092523 443874182 7029482 362840487 447124627 856854504 818261002 823129955 910038312 107559839 318247850 91619350 541473509 238287068 780498222 79198048 288472807 44953100 920805632 369316469 312790550 680824112 521792938 943073179 292250144 311523456 281028828 993491207 810879721 54982857 140961937 133455216 825263607 314529461 778408124 52168837 289353603 163205296 875639972 475535055 503924482 796057699 34458778 549490565 448677007 967441078 519752967 14632209 613513292 851078556 806759133 956569002 802318457 214021797 797342285 972749949 53276468 31605917 418770883 165925228 474126205 370128181 442911130 967480498 230389871 77931271 559983937 29530127 889133117 283404835 189741272 308201999 168038605 686823810 733768930 626828538 772029125 789392952 109825689 278378697 231944697 114997167 757844880 53924709 611279421 697450759 400742412 301162292 107162714 445086986 284512012 746699183 256253430 880109470 998032095 231645987 26771545 31636230 573738567 43782672 254108426 775759804 93620591 107306174 790077740 221064428 528887924 931690113 664818184 601574507 26281118 176576508 611669568 872356887 234671793 719306121 411374675 723272058 54426655 727349967 862063528 608094659 935738098 395761181 219318893 137183256 492300137 305036453 768220341 502039843 681554269 433311528 150871923 896235793 121067935 710770809 572101133 827617338 830861159 543562865 77967776 706713326 339341768 481278389 330525885 768579792 939449784 901358226 813991082 488465622 291717822 88761509 512434436 138517433 385154880 37275572 528170489 647254274 568591884 469287518 31823108 842792599 861592423 367583245 680942104 991118548 213609522 867002667 744035750 493151388 329082492 282808722 841056957 827767211 512797317 463392232 343728772 237998686 953015719 549773160 838214617 874522983 492189650 609877606 333556172 338514966 80284087 829633059 55098721 952057331 869013652 940415969 547905192 305645205 711555891 401833119 114030476 323947243 446911563 170221938 336457719 285213415 800479767 812369354 245697823 250535027 241669721 455113676 190315509 901464707 156836456 857540899 468871528 532602868 549608688 666466646 155023156 142765025 745342564 289468528 329189033 463889001 110257321 263770798 34823129 882452523 439241473 295601742 955577312 497583839 808111901 862227705 549156214 428674691 378952940 404305466 342018340 9748747 71588806 946357922 94150987 517227539 415495593 540596226 525313540 32006492 578137787 39208534 258551915 662244381 531779722 297118503 621967439 939601260 835938714 441828204 244808374 260570901 395959635 399742809 233475560 446911477 358001807 774340875 741446811 624332032 147021349 361733179 546603636 178889982 799187868 533792153 51819201 984777737 86597117 536307675 654840688 860956235 142468659 633752028 419007530 758278500 862644298 733743046 124103980 195666147 366251051 908767905 39714376 840970954 797301939 713564982 446453671 521605924 658377470 353425019 766152709 54057206 471974100 549773498 375362791 757033746 320098220 380488575 441605453 477296789 885027143 883391307 904820564 982900191 837179060 108694470 368250166 70761884 39473019 913889181 685605560 191741581 209881988 693149143 336524437 39169068 852835388 726248673 580252424 920923178 87634681 705496328 615053055 135426363 725882087 115271074 494109315 417853075 381654347 392887575 208743948 279367601 374249695 805150586 272811977 633571045 710295721 970311988 968193222 328306270 556324569 6247303 809491947 772333554 396940074 210026936 536060205 255507257 174650837 503365089 30367669 581226635 369276060 425128435 730094672 401597149 921972224 934687555 485357187 685571580 373887464 367693447 978085622 851921859 664486748 859053997 533172616 252704892 25516583 149083131 861767673 692328916 813601446 889158794 736312578 575368989 413960292 745911280 524557206 939172380 787866051 682562350 638325434 458384817 278561582 925940975 168031227 982326101 662633723 301766772 916421421 971297195 971546393 238266758 566744244 469472199 899747404 374477155 349803195 693246655 956265002 615708002 232645682 315217904 760544596 880346168 447470036 915589708 391682346 290732559 128778504 261209542 447669071 509024432 648578558 37351938 793103900 884300586 808132008 991247616 907629374 519465540 478013872 14024270 338708862 141363722 800161717 84486825 540750229 671883324 66086732 507005528 276380984 562458713 544332012 798433456 793584832 292702320 949462424 383898044 943981365 301265571 186108499 361604090 278004848 475213998 281781761 860691297 972474673 470681471 618230566 939793438 630969179 876010972 64744812 275997700 982829138 278262788 383876596 497571525 658714795 405210180 294966415 457733757 254891641 362304142 236649562 505725988 193275935 939891301 104856639 309470483 358053940 758778376 672310895 971542166 888879277 635043834 548286203 150279538 570896462 692671265 478987015 445808748 321636455 932222912 320250816 784093626 37448734 375517064 116464606 306249240 819840893 767379077 232570753 861155469 48401235 27668458 189959343 793445320 83882521 524393981 447013674 622909062 589946037 475970809 951313544 165672978 790181387 140232696 247162854 223973595 584943701 624342026 886949576 772384472 924600503 970595532 833813599 815746866 424133149 562099732 939818793 418873998 51798288 156080721 522983185 624387796 751202745 219091038 225404420 465679582 178102671 814074672 617029653 316128824 325983079 385604498 522265818 941331558 544710283 677738890 441861780 75593192 415668512 188448199 252377513 92613253 842050435 825511175 208930370 201781204 404531394 377976222 677900740 269941958 699562032 75287218 380633143 87912742 519852521 750968102 793779506 544731151 120454875 511206168 867857730 729563815 625343072 608965309 931341285 210258521 361691979 703609022 450824510 126437072 710799142 300066066 183884961 839499424 391495102 476382530 740707785 279017686 762165695 715255932 225505035 798858574 607452394 164158617 145881842 522877015 720988011 381070234 794618090 296137643 330158052 335411090 357927159 236518431 357845809 151561029 947333809 161299686 543122128 534310641 866958232 551827166 650364929 719694301 542682702 974046240 359192655 422111784 851986683 321485851 226339496 803225159 584691654 254406389 599310106 105317063 967964338 737981277 582098449 571148640 273872717 304382580 244673013 91930548 471734906 238484041 195132113 360343868 617836774 469150612 361844528 922385192 118517210 968444200 920458896 184620767 407051549 124691679 540852722 649380710 946823209 957315674 382866767 135086607 973470614 793885482 84490487 566548598 592863897 117693799 437809224 35375580 495826006 701075788 79896246 955412352 778579479 173185942 947749595 993346018 161845607 680932381 529051106 290903285 690110800 205841065 49475685 424165713 17528258 772401442 888901428 584645320 838344445 687074720 666866071 501258953 888521973 25024283 364348031 70299031 473935172 624404594 627719628 186571931 515366298 503650549 887144095 880923935 67754046 66184229 937115757 568996585 597257874 670703433 540126362 974293412 126640217 870007591 421096126 641471855 915614831 57030264 102215874 279638439 128233460 639763648 323419477 617263259 637429746 656063553 773254344 852433592 559961699 904364622 497673080 112127798 273060000 653046896 557291361 840053232 578769657 583653167 130422367 99075480 569077013 214753847 220418844 810459871 471305575 83874685 180155066 854139212 241392643 605711832 193438195 371730356 708856598 642306691 295988948 532236221 962835984 345039090 544395622 271588683 605476039 697195487 91320977 341481890 163684089 335863652 102270850 643342084 985155132 613926343 379900504 126165857 679336180 379805576 93680058 177125512 88428087 249692295 167034754 618701017 238871780 662645539 684869040 925221888 851308225 269650136 171607180 31832805 477523227 473817694 594777241 893644187 270933829 326825655 285995972 730614215 663007885 394544235 975205501 979148810 724334549 800298787 385048439 706860765 992410377 274743439 219521162 37544485 60569877 462373181 699689376 15744789 383314088 777814613 653593781 310494932 227442203 490786739 151428466 199480282 533636894 493936156 374701954 30130556 94310962 668551767 228187558 576908586 658614403 307522452 32610960 775790465 736474246 790066636 86999955 969895251 347579700 949076382 190902494 109744688 964535160 459212917 462810037 755576720 583569442 625502887 63786508 331863511 976821189 154388234 554452070 843926531 26658922 448201661 312085179 686206103 982569825 161220311 589916707 831680572 226138714 530020018 787366151 786485193 327891654 69705977 443011760 638101725 665271086 77524064 357175355 869959309 788979875 620907447 680324933 807195555 159320110 20949179 744837217 496544238 960878136 199358447 758270090 149333383 138052810 458226404 393763938 56364133 556406192 186053198 569865703 334816477 860086810 260394619 232874058 333948556 893818105 89438325 625255871 304256238 363255896 972259654 821157876 3977563 851379874 690560764 195449807 103116226 597264477 596057083 285797286 870314870 816382105 292955758 21485553 750863972 304384704 641344097 693917308 858162716 451837959 653698622 986652558 163502589 159523969 703997755 985383544 615497261 560403583 463106100 149168001 285766470 650714085 91857410 460640462 486926656 333780880 284213873 230347382 772818337 970172843 107058681 547002233 605110249 377744607 376159373 11622719 12219232 194493250 64777018 259039678 442575408 36322634 78593022 862679418 903034321 567418319 720745679 416462293 531728365 815899280 314441380 490541312 317148229 957979441 460712432 753170415 298645773 8211219 251653756 719487567 162888557 647014138 92014475 396591216 407071434 206319603 832630160 467623648 693282354 203624944 469834882 109526793 175825496 403825167 130381789 265081489 347663929 131911396 972656442 757790021 530662644 342347221 896743174 698631279 830127454 793623485 935882062 601211789 936882563 490243399 956057128 897086534 601611457 586202168 401130089 684989059 213165508 696753310 658803463 598347400 14848804 8514098 964770693 458051941 980483840 765417225 551946838 240457628 518485412 609027395 267436143 575937276 645954571 973586354 762953665 249697789 824674795 848539969 895147121 955822862 720840537 199623014 801993025 820748272 195935813 778460964 626532367 912763042 225105056 654397914 557576932 417350703 867727822 260800940 281984462 170955885 666512620 414814501 293393960 618915431 39152060 642034002 628157842 687201893 414232321 416897241 764133275 767921364 914760794 626827808 15961619 796134101 69329451 863492744 613480068 791762058 396917154 84270312 710095083 252624567 66615195 625877727 619551328 357257797 119555278 229990857 392355084 22955350 975776660 158731558 811799844 694968888 777228677 800829752 712568325 295791914 487582090 14474400 394579105 289637296 72927077 744304929 549543542 184763394 45457374 838697072 269769410 412068747 942453675 233118110 761264795 796232082 701179240 754378698 71394077 73111391 320753451 22630885 829794205 281992598 980386878 362619017 391857328 417537727 903969685 192051456 916960859 5968723 888127501 355490696 303479249 310716675 204393836 485805253 32115668 359397583 433440380 767813204 211869915 706285610 398310091 892728852 735525693 653451489 147852196 339577994 469627710 308756799 276813519 871548518 60198279 658793114 709315081 209176336 899771014 696938650 348582763 308760946 632645610 239122316 251184136 756033732 495950345 808401143 26427731 416762808 552002379 273834751 770804508 73524091 809389113 280718319 759901643 833180062 318277895 491696428 68211342 453669412 351440065 8538267 776355272 596669496 91310401 382255841 529373922 915631048 370752756 729097560 648412189 349132567 10231196 834872385 473682791 832067055 928501375 120011038 501913226 677088148 196126606 860503481 208556270 877997440 10752113 824312825 840485956 975510586 681795341 600708213 167512389 173688117 821101664 807064873 112091109 21490709 236770980 418215620 168630436 950403938 502260455 173815118 128486641 23079219 827116348 476289110 160536118 126662164 470613917 868164509 839072402 841692342 26064878 972552436 47262572 953224531 47693893 285264111 738352065 162040413 168209654 653735370 484742516 796163174 473265576 357394227 138144554 682175557 432356792 442990337 191110175 306662781 895254634 443706581 704214072 869610708 52809086 121328735 553011455 977734673 538935896 475667910 636688857 130537430 845819802 770007085 806804522 543908033 971403552 615003529 229367257 123054368 399607333 479809930 532499670 956811877 727863747 651803040 84571487 174702919 669903868 65408210 231017622 383629395 624442785 475299661 171877033 746077599 493038800 135244887 189519315 561787318 127256115 228183477 187394966 417291510 162473424 644647222 122510963 986486 14475444 67204557 50447340 797761611 68357378 80525640 425931769 95163383 817044023 220219176 805242371 414207922 463996306 958833561 441691664 361047863 99063159 496725625 297643371 314513061 358649427 465386054 377768336 911594415 618888748 486688375 490053847 56431401 449958201 148142455 868437516 394469732 808737374 909708231 155061149 682280179 136813996 59411868 417032646 138680070 404640388 342360901 780986561 520465828 497557947 502618643 996650381 404933359 886206369 20257184 358751951 895515736 285249730 664160944 624670144 29064975 40216306 291150609 307475349 524432176 993983253 212712546 553498223 479282351 578586184 393050981 559565195 330181315 463778877 314768706 851281440 772014824 167042568 542125844 201376493 671168690 369361898 30934664 276627699 645672387 540076847 772359901 937467531 31387289 183761455 23296422 377081564 964744703 866893498 249604256 183523199 663859091 697030472 960908101 117057493 658244963 333031405 967505401 921870851 118235303 139511939 77919686 235479988 790467740 18460677 169340783 162092582 30557977 950282913 10202519 568155250 351309901 802626209 107517003 776820659 167678670 273930938 619015188 493069944 697999960 39222083 591527345 984373154 663167351 842614737 935165016 925857313 924585437 689449507 459559825 938244835 266681704 645932004 351436244 178769249 459401863 419431557 708822830 148150788 654366991 177079935 264886796 417112919 175914228 758312585 953681993 636594823 615180809 83128852 577335679 690388479 501013170 458145628 789151664 80227582 657688083 30810581 105871945 695640404 654226175 200994233 361437970 661101744 550280164 570044710 974168240 938036171 214110874 755908059 554978500 995048485 868065838 984193572 165712315 515092519 998765255 312971951 72076852 805924480 280847259 267055118 594254806 530175779 899605443 619315769 253326662 533974954 872225024 575794194 401263042 364274385 756073355 738819873 869992906 88575674 450752900 553876647 713501692 834226608 452078217 180063604 480919257 732892322 698652255 848297574 152167612 464522304 134146196 450477177 272744312 436912181 66312331 884355396 708608239 84559619 415879605 297306833 907750718 238485528 354829929 8165999 942763729 952322592 140267195 764496200 85269664 100602512 185734392 989656080 488662791 458000915 266328797 678823358 637290041 794465598 918714520 201986278 461475597 276229091 156190114 973759533 979441770 830259988 754646630 184084848 44494767 311664238 321715055 332489714 285755062 27280019 109362074 472575389 267311097 846945291 51845706 651008023 26728385 446266090 766198804 589563148 557372802 232990783 23405689 429755290 585121814 973653807 26327059 771370110 585395169 870480257 363875070 798173808 700843424 481933283 330427564 59543173 572076972 322619312 288610587 368181282 901510831 817112579 309295474 307428242 692551105 221443300 98960517 980130531 805254093 605516253 929406252 475533814 952481579 31833667 925872638 943780856 684840265 791081327 324707849 848015652 472133890 729246279 447645905 372320583 705559271 628559360 237930187 547595615 51578486 46336916 447514045 407319879 767050327 252978520 61923867 967120544 253579912 829885065 614005205 817210692 248703395 641570151 997848140 758169112 626690158 653994993 333237274 351494224 971278264 749726753 43273694 442851701 224666264 864285231 489915974 669750248 702482732 185314894 338067513 557633486 313643307 340076226 3036514 414783553 841962107 177383845 969144980 159041316 314660608 571443885 933116259 276229379 160446674 365223437 620991107 232540726 288639069 90182763 916650251 899473560 22844173 876616829 412027675 784380398 430840891 502658832 800193464 741554438 560052848 989549808 694736213 883899587 619165658 284499582 451075084 231203826 88450962 803677546 597066517 931660901 27805696 367008897 90083797 605317706 687398648 581188877 667119495 886408580 896539223 502775626 765895130 297144047 940396196 431854710 652376388 683094608 961144518 989902413 923063278 433454811 959646427 760502726 544104981 978882985 247134344 86162332 337364705 222164714 785258866 845592756 514635365 335742284 708753299 307409306 921802121 566623210 112607858 619358372 343296932 891443069 346958116 324831234 597534865 153010509 570723582 838707130 564010949 319959542 679000717 249163959 81854064 906028718 73411988 86754281 418113215 697248135 881898027 455279596 25101058 548236368 748883311 955689161 171789650 529035152 375816731 789262421 905151962 648597084 44385479 176254266 129760146 313830844 977508938 989024891 931297336 924130459 629769707 659640984 64333187 804066463 209586655 297525456 183338681 425339809 71081054 12778303 43029744 868345785 110155693 993522441 460005127 62919235 710618569 268806088 481478098 662523797 56949879 101716089 292847400 412927130 920976302 205618467 135780315 431106362 667332909 831263747 707413720 305701842 279294554 360288314 890283367 188947031 479771627 217629602 767572942 348540199 460352422 321541327 214696670 773472540 245328772 785920280 321487469 276103692 136918796 938765397 103134176 280955506 517142009 663055031 481613726 180824720 541297167 771854251 380035047 226599901 805345476 260179350 542568209 73615601 304239941 958701025 511401887 298362455 611061496 123083326 885391193 401150573 564621921 785107095 43401190 733353671 9276678 375287997 990330561 69554348 770855520 895441831 89554895 503014047 177172622 791147549 651990804 196975786 130054718 677336941 750159032 527109072 618978096 381748499 704727743 961984542 648612186 688182461 170945105 449366565 508659339 81785174 387072056 148076455 873381134 636077219 495450751 924677266 302931190 317363017 564789132 970550670 527926650 513857886 202019341 487498936 78345891 966993024 930652759 91408582 105264271 698110715 50673684 182167340 306686415 506280974 129210573 628266337 7182274 383637268 469055936 669650070 506457733 227718473 989764519 507243851 877892013 601006748 738974073 841357789 758778936 390369152 593556222 290404878 36690644 333629254 73153839 242670483 804139373 934321821 896015745 161397296 883815859 869230399 548087729 146829531 377529598 724650501 609067088 594660895 501199770 947902202 218174452 299553634 581635103 359081410 480705489 404814684 675987487 924599505 477022203 574849095 669799436 587353176 94325520 720208656 946232697 649378657 710516099 177952242 154965141 449846132 894028680 943713986 901219336 476283691 427229968 417412215 241930445 946522186 942043276 710746140 840066465 540728305 225424191 805862857 584246699 890125175 380876930 383031229 957690343 959427050 268509393 565125054 957210970 192290895 20068563 809475412 944423615 57855481 769622958 274493467 43985927 600601322 170526147 538960496 18967019 780747017 306608911 195240331 869201447 847374264 853088280 42087707 976851581 788180440 674608990 234192989 694863262 579958033 996476595 717332741 65787747 752678339 553310884 435496941 64096209 846012214 890032470 572412080 927052905 296757150 763847453 973942285 907755631 58648141 122238216 757477795 402849613 541971167 414127701 318661349 280152749 281771518 611350958 963455999 487117438 673460675 340112900 697422062 874566411 940937911 929135060 787026089 246085482 713352255 404947019 580061576 961252288 703739782 538585484 108153987 698602773 957428253 191489641 841858502 962299150 553939869 588987687 861813718 850611398 369812690 297998209 161431228 273421368 159353935 133170748 682628888 817408860 47273290 606448247 51208758 589634208 771590777 977960702 847622470 498534943 65382349 210587143 365673714 369178049 960803689 58317303 142684720 739471451 706365426 779953042 178002688 419054988 45669533 36041513 764926155 216855673 211864426 440374251 426865774 202004524 886241889 880652476 339794525 983631632 197664970 306927458 723232851 245974386 43234838 976243764 991798075 120140279 498761471 179969148 12291552 378738904 984476809 255493251 980596294 740412844 754720681 561027657 987844273 697730052 786237696 344599230 807387054 569757468 10955574 374567252 769932482 992484112 802793473 343662348 212054525 490499515 66365734 922242266 25116466 144493936 140676427 616956862 254801367 980568184 914532957 462360640 14525466 480723984 808075225 930066138 661792522 979836897 240210484 721071633 78248461 629301984 781898480 615429341 535764991 900770562 313765466 500581836 463602445 421418151 929176753 13990533 663656383 955696433 675811353 537102021 11289749 97771380 195218294 186632265 629752864 872228373 157663685 58562111 525694281 676314277 203929074 180718713 129505116 58714205 370097902 388460301 644479574 6650599 499544604 208032803 903749728 211235665 675981466 718089842 953151599 500554950 698332259 17086873 965060472 380468925 831387680 667955362 735773696 965079956 543804542 878718478 715837866 40992127 858985097 852548808 391226716 300404141 810737765 437707771 249251607 494661969 59834864 651533738 155047974 350087573 564741237 637203139 770291333 801634385 13733206 45769343 186780270 280666073 567326089 854479242 732468408 42675837 253907891 163226987 992011019 873068568 682690373 634702800 592776152 92309489 471618757 671152328 708288825 153172688 416901892 773243538 324596194 73237910 744111598 849745807 981835947 258750492 585758664 716013325 336466355 983892250 554137179 311623608 26198390 402048086 511213647 288281149 673562994 745861508 479392339 476747144 730631800 667526890 69373791 192558653 114659237 846078339 895604788 878584787 39740578 733514177 179092046 268893396 952113872 447833910 854000042 482085854 279756612 411791512 881485083 264423115 786146540 491755984 166132740 583052981 54096496 153631284 242709464 751413768 170075785 327394762 555538804 57242825 760189963 408162308 140515223 444694244 643690498 478034747 647898194 528654557 41837286 263382741 222526698 84361313 85713715 893240704 386918938 547678315 157419225 589148980 746718783 28700201 8019432 510354992 228067023 571595913 47351479 639451924 22807417 190027937 484382664 950719412 664260680 259952397 178891406 653649275 380292539 79525147 814122949 994260949 927574626 666367820 51262218 634748512 718246429 965171163 907650691 480133618 888749161 302135450 497044190 497248171 264468924 417352187 722134428 527859905 7355392 485597595 470249972 877308278 435641531 97623172 50321142 368736818 238757641 24853251 441329176 552489282 482751895 742597542 922879849 733352692 561277970 679089681 433695573 209235980 325386531 893137906 492317152 569143797 103279721 96876057 823280494 2304103 988613474 402214741 372892176 371822324 577337628 892106924 439230032 275743576 958347866 41680171 298382098 465826048 254466401 300481433 612852924 522050299 161047785 778089462 199098128 865913281 292107810 402975260 480546108 686602970 756243420 543919494 318094250 534568202 611101233 688207423 775264527 517535574 88803249 504582199 114758664 274985792 60489727 30452183 256306857 239840969 756195481 250978309 778318194 730632346 632832527 1048719 370638615 616707849 685539015 27290276 401398913 791270657 431702394 283135515 813157242 487220706 156157198 866163726 474283009 33590787 98634777 176385459 462231691 479920213 551522139 864641905 18238945 498997792 409544316 901377553 67865634 655500885 285369070 128036091 203369823 955027208 693181085 959864031 265283755 743731273 146819946 224681051 250435347 484213800 589627191 448720696 338835192 383777382 746182291 140330900 488970017 371870829 16257483 471269629 184223122 167351734 142380387 124264831 474875314 968832472 721490260 884165353 800865902 243963438 141254088 605523245 641357963 38956518 580031746 575729017 633560399 508603741 69697556 410684965 457648724 811012174 537536356 947235544 92915810 53872653 793517431 724158087 734739177 826253066 627950501 363705437 96778069 815130733 123403812 740705077 617881057 485466563 813020832 445000864 366819061 451078548 158179888 711126048 759898120 182713881 423115578 687775770 264485655 44498104 144300076 819584698 620288641 302948180 673348776 274677386 854925579 377222463 428901636 531696367 922027671 443693032 919978055 115923747 823140978 117185530 835083726 222543236 372741174 687445083 733486666 681510794 733997596 912320639 266463650 468465512 548172910 531198514 819194216 372761240 912823039 155594241 570228983 173320373 566923379 965630182 630156526 167028588 912513452 261304096 325844088 544458384 48551985 700892554 744130964 920108983 402082708 173729225 138419822 184931642 870967482 134551831 847193559 499445463 442663085 702530203 535590606 391355546 317930622 297186911 410990885 44462488 276069980 50102178 977566151 79969275 79321388 58378236 519595005 795785023 431677040 504811117 24777922 841149206 362341835 343296395 677991585 500654962 185600416 118280515 585205364 688316553 303041308 423488500 654955489 42706218 229073231 945843908 584002965 893457575 242916112 556283260 199426225 14505656 81922297 216216085 901224002 556489267 733820502 279268815 164411435 360331437 934839907 362547776 652062207 786814190 794877227 108178490 653280758 640171695 143623630 872876756 104583356 697968321 628720147 798145685 360840261 917138479 889305888 408139576 918253281 993451373 343141106 213354771 640448971 36101187 969385902 854695872 799684467 574803630 429147579 880938505 489994003 7549854 611296625 508500705 130275053 98090945 919041815 162676179 861358517 87526162 910609867 437045978 316358657 735923484 931348285 873523015 272124575 640085732 316142427 356899726 151602067 472405927 684376293 294893094 721906365 709059536 146303829 13092734 170296276 857625899 531829790 918239198 828717498 397290971 749739797 321791046 675921023 703297509 897214990 699313780 380299543 998216579 636689276 99076507 895864854 558070308 221317514 232546144 975216881 288615916 736740751 128935472 719027436 858174146 350945249 243158439 417869493 939150776 374118680 679863773 744908574 410960379 989632337 933166763 185073457 480969701 859016735 398210058 479738628 244668529 661315294 38470748 975158768 346689391 769851393 525995112 956092797 488603475 545816298 22681762 641662282 686890441 553500995 129452885 178204317 667593534 915611164 322232177 169897574 246847472 581344351 711286174 38619097 226356947 952563760 314583570 915734125 680805086 355616917 456230796 120789936 198174316 889822108 298649994 129519114 463063111 600458040 87039188 772030957 784119157 958296849 564053547 268187571 153651113 12075126 286375056 434885512 787284998 251183172 14073548 657440193 336920648 68790150 318668189 249448915 642512594 153234059 455962403 501723309 434888641 457473578 85000832 528675638 193305721 891572520 140327729 249649397 798884436 898120818 958835465 940504124 973737835 816837397 416171594 198323393 363884087 891568974 459380894 503129429 220357192 991701640 82958492 164387857 900629694 92885889 384067131 340974432 504463262 284138641 178595963 890207681 659080664 647205142 178866609 550831866 589529601 331692821 186403808 65122054 489187823 958457544 96552375 349002351 917027261 214814305 611801993 51001926 610852992 866532920 379124379 228034560 768396334 465425898 520823408 698533066 483077758 378333325 297145063 149656809 515765715 10124964 678340880 496978958 23424719 866370701 948851868 964555678 400044544 508873461 71840262 502209457 28903334 237767527 952158097 240103738 11931272 238414692 272567787 557224253 695387788 171497480 152047349 638959700 642709733 48906994 990150504 141762995 43225929 266315402 179769426 619820002 258599151 142606250 189160535 624167431 346771301 805325396 593116249 224457841 977223582 739695612 709851471 207901368 866728040 986680233 490512807 319743391 940501165 591991465 296321013 415807448 670874287 787861789 111832704 513538431 111353891 288481373 810628192 162435347 585731500 873842746 309745906 732549965 247235737 222648645 641431025 506404552 415157823 806821522 465387212 902138250 924235819 64077845 827439249 146178898 69698379 904701085 695442847 667016853 235571914 303464488 519492295 17034288 358268521 682416018 473093199 77906341 300847197 619131316 67985580 798016393 999014813 826889736 461111982 153394389 700069448 740770264 934094540 244275884 77060822 910225054 229646014 878021304 184115511 343602945 604355991 70159906 501273209 397338385 286134063 772926286 910319556 478499148 102010425 571904464 50849412 627415720 571821031 772004351 51275449 407432857 90777928 488544755 837591673 833706194 937306519 765579563 853173611 307706901 323838126 279917652 317132296 305559276 955225943 501007249 221241786 13683701 381392861 586554059 971125689 867126754 813682451 653092104 82807318 32349339 486590586 388941019 886456268 722677755 769202035 595388634 86162272 794548382 991979504 890901267 820326324 304387873 829119293 54447721 654792431 771860034 863060372 511623773 635331888 529527500 775933570 246170927 40077000 500263806 606120241 740440369 306293265 811569416 75667740 166921597 5735738 399835961 951159343 474669579 221197673 78107576 698991206 581786080 951757852 63346988 160949910 168193877 631816453 888165469 524517475 166701420 809545857 640502882 723002781 971187565 645720644 7208932 737542810 194211174 949475339 263767400 392757015 289150424 263310575 787242781 925281348 678015662 462747841 590242812 593863489 602692501 837288721 416643342 972896354 838326562 545806897 616199966 712026544 804102448 899162709 204570907 739676285 434166127 510691790 409034821 776365322 4776920 826711806 243036375 314993374 700181758 999359519 931303362 165920217 944498342 366120496 575056843 710800735 878823927 876154286 228095243 538367783 852804577 778645768 258255953 31457444 608578280 496940025 190230913 161894920 798855363 895236134 382790524 117653966 589937598 829611163 722964422 979493145 35927953 639160565 683212661 692295408 705132954 536114807 413880252 171840713 479790492 509406921 932727997 920006605 362469213 143909264 768265214 366711189 400772220 757239849 183356671 213121963 881911197 150923059 66494103 493512007 17692839 527219061 359143422 856496358 841571915 258664113 233891 119949347 94453340 618175709 794341285 132227314 614916422 899782325 316267784 18145726 376241027 708492715 923983165 969607932 824822182 804370133 792501565 882130153 405306006 158023367 173459184 939982204 696849080 72472129 194455136 612526726 588857313 671610015 93634501 763617522 114346474 930799749 613383908 186956746 695370547 686596756 313101236 126971385 565640041 132779126 142852820 237397888 40113389 49329523 724777105 73814934 909000747 453096643 689913804 303771184 28580030 61109609 50933538 220880013 885674287 609622015 147419968 49222385 862444029 764739578 464821530 571744683 428773839 804929993 929592658 710992164 841871055 283472106 41618457 325033523 812947134 180036712 455111892 469441071 144384357 903236819 595257892 957563317 330863858 597734271 688519315 810396415 694205712 144390527 261103105 670506854 110876807 923995845 704999945 897239424 354519068 475627959 262726288 299507653 767372078 258610283 349948568 861348408 377457088 893437472 983564236 708131853 622660273 252063235 734576521 357398412 356234018 280037584 369328058 174826922 878434180 465109283 481041121 695548780 691434732 308449156 372165195 623048103 801984708 366439264 244288548 597272679 276057192 743041566 380105341 760483193 639976072 550402611 892343267 350578438 233873159 857256674 816334653 259707521 879246161 217829196 715359517 681029691 198069709 269454291 590566981 700567842 767887196 151200991 324075481 103521211 561901627 26286785 171384215 120345852 432465350 521211015 698956981 436823150 282928424 832958374 165101700 232475747 11883024 329815036 526256375 798829149 321270125 9492698 943711674 136165542 420395599 214447834 37981380 597927020 844391960 451875578 311315669 942132424 368134569 782527060 101393877 667285258 657580196 585003532 773388289 462600456 830413371 709708813 352207685 678956020 391651883 228000295 152485772 307827290 71717990 645130908 728925282 345961431 626371349 816246133 591479626 586077646 730134646 8629569 154285339 392645162 930062632 31073008 976155282 549973519 597055765 64889085 684623371 779478962 29715846 711527346 705209201 428956894 622387410 668199732 696657120 301443501 537391251 809970220 998499195 890994686 171342939 363614016 394282351 110145174 662298 208286476 485229204 116287416 644883907 925371761 674797112 130721078 183391948 110841330 860939462 733579282 191765903 797706913 808932832 947808679 509516403 406977273 353607068 63416189 530196415 981370707 439220279 505939885 118391705 941502689 239395809 871949730 921664126 215119511 547744608 149448575 904832910 462926914 631343368 523213601 187844117 354029348 930783506 350941173 607418915 868012074 163459771 249256611 338171017 857178108 635187450 708634327 595481849 929368645 871389943 831440708 150706777 784756172 236261949 370106768 445111487 569325860 530128771 821024579 44978056 858701028 416127838 551972396 445492485 573193515 668729686 799660540 189854308 151188683 375769578 122106937 693429401 186493682 902325022 690602725 749433929 922241242 780133839 426414676 761780449 511290986 636445100 608365443 38329635 485166531 251641388 307839903 318196745 351061909 484064307 187592963 225338105 553317678 737856068 991706572 791866416 906533049 907070292 882156180 197854392 276752704 955846932 365317220 540888820 377464619 698747583 158032335 760462125 20611861 502912981 233200496 623091761 169228262 923309525 398576619 604582664 874193289 435981320 603830383 115076180 131148328 892044164 239982758 874028206 740878639 286517201 902118588 47171317 628330974 485208579 874971965 515090825 717138689 64298403 801254789 21381963 566291497 268485188 63731697 744493604 360343410 14846546 205268145 788658128 572658504 124647023 315338860 409052156 589238413 893823205 935011650 866471376 309890336 713031232 431283009 600269075 711296688 19984222 85597059 609325086 146527355 333580358 477161683 811880664 448186539 138577395 170964759 483139239 264904594 87525128 349377669 626351410 796740899 160329741 248027648 386606761 949401849 323930508 135085583 773213389 271153564 298213530 472721503 844573991 191584442 342953849 320791528 393372798 366609502 936841817 951162106 751125756 22820388 339525986 863372560 825697911 801984472 607417310 455540590 138394666 102380163 138682264 49106467 58865362 536044301 833949652 250551275 721752664 522305022 426550592 210670431 957083472 681632459 841576199 205276576 646744913 921964517 633416770 55812517 134009694 673319937 950236471 272280212 439452992 595658273 241273880 480075940 641634386 716452174 479542756 694686273 92725610 140180558 894619913 521073915 681148429 786047008 476756209 623632963 216836959 865086738 660105305 245718169 118764992 752285505 678233206 514266591 426874949 490776294 290627884 908823300 407979338 894709596 992917897 706039379 431773355 833755820 654729069 346126053 827600163 916650968 327374112 5389063 565050360 599496998 261965405 829568850 858118098 17895085 739263615 497232150 619137576 336815781 86068224 840211307 897418638 103167848 861863053 755807238 16271586 406089643 929492305 121275420 761275230 745673013 789743312 839214926 287773456 302992161 169184932 754053847 50273041 896779898 725778300 554638964 982407359 782354710 777873270 45478585 233662211 876256710 717479520 525792656 179151142 992482761 628254416 313558163 513201078 791587762 161944922 990102281 413237377 304802380 430532692 172525382 519537531 207038040 676552457 304620790 130979298 579837179 93201099 613024721 460734837 141470453 149285119 658657954 679432159 286845055 189887797 351720686 930801807 710258557 982574434 795524080 220494899 94086214 313789982 73077229 140286419 300078191 813688256 958998816 824291017 503421343 497687885 255528130 700289071 275106130 631129651 235266559 379107820 109685358 99122928 824149428 266940159 974067407 594301426 998922301 928477764 268027022 809718708 689352006 713093665 296969588 154469314 177149032 817771962 279521523 970625329 529502797 136396937 363157483 872283323 238153653 374250878 978196891 997674798 898535066 935800699 70343771 59091363 239071337 565494668 228765254 122035448 134634069 560229178 57889362 328141381 484990131 328462865 206089117 613314248 182658870 986688625 692886981 48947795 870933840 843283964 687912621 849119611 150026257 662619001 93943303 80014059 847904026 144091709 540123722 297134673 324275504 434497858 895109183 843296430 324336961 24531471 601490323 484968771 722503117 135870902 24277717 974574115 16250327 475954574 484270886 305583986 559965347 274516348 307330532 585554315 586922153 313348334 683664724 293973598 665787685 339661475 649978054 308291353 121314871 576234905 854446182 889829590 575618515 237223325 259036360 805695724 565087943 739650035 528220381 600088136 363570090 435539739 322121851 917732157 442121823 379476327 643050958 578203105 302382846 325691251 114181028 103701890 617085009 377604690 911276464 956555127 178080408 134063913 740342607 755571147 39980075 348955431 535739825 949229612 715869224 545540978 863121901 934465635 803483066 436592920 117239947 389336743 628878463 626014186 76547712 30962449 87398618 742692628 121225803 302483168 233973573 406524254 334674031 581703161 892791385 287102584 617683625 259247225 314316886 991536168 297715428 982062309 91903632 725879084 901549038 285196266 308794416 585218837 83499420 639517439 649226437 468426382 656809127 944369042 914539121 572382113 630927071 379201549 967990030 962755927 72991128 606096662 606600861 815169253 600246942 474833669 690941541 449639781 755036035 816437926 35301818 867607148 284535578 829043958 593512872 19764406 526295969 666068184 77272155 741832429 622536582 973085840 23090518 729413421 514367367 127788092 91794887 733410983 815200207 683006008 636708719 295820619 285693077 458581835 906853860 603652031 929891774 220843363 272945815 573288181 390393361 592289769 457628705 625110778 168450818 685065282 381019678 651553943 996632295 212425792 990205788 577315949 990760290 967331752 832414343 484689044 575272178 745884954 729724948 138589139 855369396 732388620 364600089 120260148 856072701 6372801 946688986 337255977 792844939 30975454 415260523 304396550 138941160 507760195 70647719 517416461 43384472 269473148 838849710 552784854 844166663 385143934 290256877 412774963 983890131 293078915 821992230 809637740 515953973 630346567 526175530 909606219 428030841 989992114 219265501 134851579 504022039 656663465 309633070 755098079 214533450 238091018 452486599 606985475 747009460 31969932 530241980 787726091 164830176 37683592 191983046 892813807 817451640 229635301 705612034 924370499 181654023 782261461 52343663 294057214 927814925 68792977 70753340 56201826 692392800 761044042 404442991 646335526 814099713 640851184 508651665 572838221 15525936 450236395 645153077 734725658 913654475 425408745 557993769 324843718 113310828 263346227 834446430 540420772 169988002 912845233 300942890 714138460 53729032 93754695 241794038 899016242 450281042 310806001 596158938 459533289 490864568 61749909 107267283 984921388 39052302 69653055 669332043 828218402 85381162 450029554 221687130 938520573 918513981 165412023 471707810 315171257 334026917 667471014 285584020 370464345 949195698 880241446 213173087 504830360 480364445 217312973 633295299 858830150 549508397 58845898 913244559 184907371 42565094 704050912 592978316 400015394 634365133 996246176 498472612 640534341 807976401 987977484 879895078 231955048 92959090 932786276 509171410 874228690 437766790 92782215 804424296 909892049 99574976 355367567 306885101 650377235 992672161 802866579 217750306 732127647 514674332 848219588 923404323 92595232 257111354 63533158 408680852 414468912 627619067 401891316 62737578 777134426 248743548 782003209 469223934 864113012 89639426 228334731 610785188 771996341 943161697 193723114 186497752 594652895 17445850 134644854 603859817 987557701 182868217 940613150 486789678 834566874 938751891 529068189 953907780 719372266 347606667 80795554 587751193 435077865 413221890 648012225 491630335 632761665 50859337 859067137 74844315 584206044 424044444 932558990 605978276 103700904 350453420 451977372 514844301 561500376 865326796 655725173 864292710 516779474 262373305 227081425 980832549 980859051 222259959 123924855 507861505 340974281 204594833 562911109 207557585 259000957 918281140 751751097 986427028 788009698 981840144 368695622 958298892 524439645 914773451 447899211 440782334 223102314 110200522 933043064 193953035 340542298 139596075 732943112 682488491 318071156 594228459 279838958 982706794 49023204 181110515 539649250 741452912 374072030 657917251 345169932 586518414 551760422 345392424 834435470 697659657 598678441 268960934 947437915 986004798 93994917 450076324 729935785 355215140 10499458 866960970 332170824 501774919 25517410 805871196 313623088 593930553 933140444 328104729 604580986 293837930 670187586 194959957 845465731 307094645 195694309 807092432 159046694 881693986 675720299 146782595 931649839 884052628 280025032 790890472 117600941 77486897 770220466 993149600 343035511 91475828 634266218 738620893 585582251 676986641 429166220 50583169 758547508 829502857 678737846 631789167 667547952 492195373 28094402 574652735 947657274 822942369 817756697 441428307 377755241 55301659 283368748 438979598 593708180 792253002 386303965 349405397 216467481 585745200 435758881 502959821 810084767 700130155 437978914 341027884 170405552 782675589 125862086 939405177 74899966 851087392 423619238 817683731 529816949 877375382 584239702 651123576 261679617 546386216 45545137 573704003 469700071 165788926 577699354 166708525 202135583 960326866 591900067 770309870 811044037 127445393 412754582 345178455 406816925 307456774 816607773 243380740 679057967 396472218 452600553 461945577 635831860 913888612 367289023 488631157 602933187 3733043 178785074 33569689 112678668 252243406 55978901 239250600 480397502 91484200 991988067 892383362 518885145 168405239 78712232 429155867 89879716 476238505 952315231 258171397 804371712 350180494 993107033 225697248 775176787 444995897 773446173 242012867 174160011 883592249 381295145 366206146 785729455 405763883 761897368 967939237 207999233 644113293 116285398 223577784 502168338 53863613 961055136 725287061 29785015 322569910 353465957 767536017 308055221 593128962 542984556 869072319 230265258 4904804 667049361 121093352 527604813 31064609 357617636 807835215 215619821 279253790 127989386 395179425 278826626 926984417 747831436 769186247 627907169 771069449 468641773 581862822 886923617 817286519 678680497 653998603 239208519 931316162 688665942 954014412 148371162 869291439 149870250 431195186 799915962 71190538 689706021 105825177 987196222 523625381 479289123 26161045 340731662 274380579 904788370 178636110 154996922 891716565 784512288 112805726 473848572 392323872 289076047 196310873 678983389 683981692 703847516 390848795 769466358 481084096 277036863 987320611 97347749 364236900 999084647 506429944 672548127 561153320 752157882 132240749 405774865 704172964 997473193 661877323 240283295 391553174 803611658 505792607 154850492 309447643 128338023 230843410 941447315 529054770 362321944 995747346 186255451 9594543 24982218 587467463 45813847 995265132 602589511 316130523 41330188 911029627 432822836 566206588 723044454 870820767 226785067 558407346 772477014 613668089 603983259 650875666 375216652 445560428 844713171 587694538 989112838 597902660 911832968 561980564 447830656 443410510 711952353 931191262 192221665 41636451 142274913 888670886 335917359 779067348 505365694 935349643 61441808 610960438 966483798 451921486 884284627 232099657 142590763 215050967 74340241 58596270 290581110 53184073 102428769 829948115 989901312 384908081 3560741 821609686 827843251 144206299 350281127 160026086 372973082 37544508 69759985 67743383 317584651 103348253 279503944 649989618 592160169 174734919 813759611 720413484 124316522 205388939 338580114 679433546 723087495 159693549 151566772 802455336 524132906 861430329 749886191 283960921 586660046 225921824 379146238 2752498 493439026 753740883 52292949 454040778 363842737 38831049 881163519 980672127 753081527 768639489 294386348 636760463 399691398 922009247 211747502 94555657 478955311 324085145 501911788 214876203 161982071 605321053 380738388 750734892 870115097 748928841 617857002 56015829 313969664 625410838 830034647 749327470 256530641 103381783 133662597 315838171 904646881 29253023 79655611 733664352 346430103 328981609 275007464 324075908 866837343 935555004 396760111 40724130 590948796 102690170 697968946 362466694 138823517 822807614 492637249 635357598 178288764 755536347 588706187 742697082 139753380 273746025 503991812 883337474 701335076 512783605 612210988 787234699 342755749 287377819 679883029 292826573 701493640 248076721 237723572 506916801 17004968 705998559 296079140 692897013 950981894 193840637 733062296 437225021 622324699 757266147 679109582 430226554 772586942 623494948 846597762 700939432 682313097 353964221 837510338 201552871 110715633 198207491 628176752 681793832 808159930 767651204 713426143 132270928 435715433 92983845 277443471 920245152 958027935 121291539 268836983 136192857 579948539 88829355 937456463 707200632 809571924 93258139 514143398 360169336 279893983 195770800 390635782 569972072 103071954 678336305 784563612 723194411 248075137 211960774 187721342 304507371 966626241 701205277 392375922 519806665 586105338 983689681 786923133 662131798 747618505 147102368 444187184 691560483 359475693 782660376 382552316 413891096 479421586 280529491 723597912 124096485 211073318 237306868 983677887 653831578 331770325 839688144 857723952 997053126 838273369 545042915 498302620 753729236 948070636 255417529 877675914 662952957 306551023 452540029 71420982 405341499 452876250 824512211 366915605 37204166 920639375 235477998 184133415 189366078 181301905 819010174 742970702 133259131 155396382 514209306 16743941 695270809 219717074 295482392 704586414 667836670 148004255 804524186 313295095 885545850 246736388 134135259 500295762 568679655 803279280 878399288 139320622 604714444 125907077 162017547 9919424 135112775 88332246 197860764 761559572 122860237 542301041 409456903 876947863 121646920 747517682 891615358 555883505 13089513 809612061 426721195 474339733 635454288 333390420 734489552 890310696 58018023 366985614 550066506 965833564 951006429 95155972 726066274 687065833 268374714 126851328 403415132 991810383 187967000 139154765 19651049 900482945 549242586 332881556 466040812 758215778 340517000 43642750 865365071 541369860 923956142 842520900 134122708 55072208 217211828 907275076 821097243 451496958 309435586 883711092 970480429 350055466 605079748 788317670 566810105 905555406 569382565 413105661 455296899 685642247 514225782 331381167 630033880 971835892 10127476 468476025 901261811 905460974 610550727 190967293 859672305 495942554 903297530 670995336 564879059 505094807 305056377 172743428 186748299 900756946 723887197 264947435 965543759 477241517 629020685 879111741 259582688 860651155 377247693 145460907 597383964 71107735 776061817 972509839 170944860 386541268 662303410 355365588 93374433 18904576 322948959 654228595 686538062 742285419 423403096 667170066 657104122 677020922 985749328 655886163 57279463 746852235 117291529 451504291 908945534 937999591 912637686 119471789 52477989 26269749 427741568 3101864 388174767 874087337 757983413 703770933 532021438 323370023 980549977 631547759 110445319 881512404 630904610 777036909 998216297 537617899 700993933 788870277 347332653 935077539 989553503 955608348 335269187 567483622 501186241 226420325 454881420 734513775 90647220 812009733 288683340 209550817 139047512 676205100 239652628 381154131 552638177 283356862 416984025 552065226 738647728 350334792 336537836 566339165 375926689 861990591 236956061 825443760 506980494 722765375 953540686 918970065 682546204 509742794 564527957 483412974 768465400 804160858 852115547 989818967 135084480 47599014 428598841 914439453 303142592 800419243 813456268 379057981 643137297 725476851 52173082 815902759 116531148 161772329 874115879 703582578 859760743 705142933 603108511 152991942 259665740 355079800 850409386 117998708 823864338 515650798 244949184 427826055 640945469 503348661 306326310 508746996 18091210 984863051 195969829 83512890 203060694 750873491 266118457 168022136 305433360 534686352 830433626 274509226 788971715 852307240 506435358 437906283 605910676 996789069 547225772 122604479 865755776 108995671 560770785 46840543 784823166 551692184 650241999 435494743 274438813 548767138 447662862 784299887 567469279 441615027 122557050 653996525 617179835 77012454 954190000 63379950 202829145 307003467 527055414 147428213 607930336 554594871 714468612 185464892 150140906 967900388 148440813 24731380 57582070 617887667 855509900 728938476 917455828 602160216 597466931 163456822 514234567 283740275 566526627 872907671 899237594 898477631 505118871 634312690 83184085 117761156 746362482 949376235 93114634 408914030 269343122 459360038 123252991 264116522 937882148 471484824 895676733 922815037 551928726 724315794 574142035 938213967 596719492 550618760 357588436 34354894 112268974 762450738 527894133 843300862 133775665 213568792 583593193 549903011 784324902 266386572 713730994 562334104 794914489 526852320 557355206 155130132 101982537 480394455 465957011 23494846 550277504 950828268 400826096 558161580 99878218 572795961 735173313 324914549 813336566 603814134 332044502 637045984 287093420 772019123 114948041 872453266 542169639 644274635 617426386 639947923 725688829 720064715 115529029 658275929 821532927 659550846 71797345 384624791 298659452 182720523 8735851 167739286 927856613 689404806 720788001 674857927 714647137 866173040 784198957 902827022 509757133 390216991 168921098 294377471 421375412 104456817 946556689 500681977 883367250 353525663 38457456 754804607 55158119 258661608 459818518 339133604 609507995 119584272 28526414 528217015 49674760 472870674 245132479 811622723 11120013 657297108 330939645 755949340 356294003 333270432 821519852 974768498 856201061 853111125 167217858 101811230 31639537 399100460 105499163 425190921 759724070 510852396 892212891 267430635 711965471 101064880 303230216 365645067 272696596 639710239 527471665 432839234 291929207 683952575 742358966 324300999 235276197 1472969 630783978 427294966 711305265 23556230 378792933 233887164 981327734 775651006 169879904 800581746 723465980 814175532 865644898 761310835 130665857 439947842 348161710 81455946 629969234 88682116 297710838 374031659 660997708 275394159 817948331 455444365 856052673 884201362 225676998 297456213 321673395 214949364 347119560 775402255 291422788 833771524 557645752 374183973 107282769 924683398 790596138 678012733 831549530 467523774 614159272 841543511 139458811 830674939 405000782 690637528 523242693 388991097 221557955 841701201 548975266 513669247 718047571 944500894 898675761 372507920 21374278 47852022 373001932 900166982 424918576 194836670 469544303 188176484 710509310 589756674 753248897 339249989 701905069 421830733 135450159 97552021 909192930 73399009 379926299 911090107 529418713 440139327 643600447 807017482 574275926 135793330 493815171 516649628 800233375 818401734 580212674 275259275 582895917 364502788 9630918 829664039 250020957 593830025 924034910 265452533 49974049 882688283 575149315 159133472 991147164 935378772 769880746 721193987 761395815 79835372 878261162 972561503 900807765 978208768 176194651 581558336 838508607 686117954 526654162 531755399 207744759 196981844 670473847 913514786 77526379 190364480 926591535 828081470 601565897 133888552 575686171 420969425 7085307 951662451 792145340 316070400 75978215 97940547 757381264 865325030 624124977 15793358 923254203 194642738 621480427 701502882 489831519 480152601 169486945 275336984 78887937 779829993 269221582 362871298 216859315 611528690 200948537 500122993 326682828 154448977 940876380 643555015 119624551 545838648 309058433 885377030 773743527 665780532 651412000 590853057 807601772 41026460 422473499 444199450 10202768 78348521 89481456 396509063 389233109 803236641 458867621 431674926 471465579 649487230 570809667 936985850 725812022 339575968 151266556 584473030 507375187 829015519 235675870 597576435 98545864 419613281 166115233 234526892 191727968 456166351 530305594 282554647 40144887 842963997 288938613 913072157 856135820 568966101 180807841 291225265 965885288 975361657 316178579 862595021 16086622 431853790 922642995 648257728 60748323 984008443 4142003 801353639 245590080 436607831 125057108 333378968 550106400 716406158 952744610 415112272 518471288 150744051 819605322 754659750 190735193 103425082 194680109 663224333 368645276 612670700 600945991 898308545 953080307 727450978 431218098 280366434 987106531 105856972 346055211 238753709 102330449 417113164 210661973 24431226 543147745 289081473 404285091 122073406 815215041 286649925 274047389 759804381 354332873 310248955 256357152 979445672 21608071 990845753 513806062 242931042 39043830 557304233 586841877 178257725 667776015 245388212 310274135 964585918 990950519 671408287 955542505 226399436 231946131 537659050 863796177 260350596 787554233 941928580 447261664 651633584 129313945 373877011 88869946 878133814 370403047 239112720 630062754 678304617 554644790 210074098 371957611 162604751 417088743 45193151 822184864 223698711 617460072 194585698 905207454 445003004 541798836 596671122 416396167 152388266 980438822 275153738 102595445 601994410 769582464 797101111 669854478 353686180 320742957 686505476 564564259 931849534 735459312 197713401 850331125 234716233 484420524 979327623 713095110 514931625 997809259 230751784 646635227 342019804 242494746 312516772 372678465 207908724 95283625 835799190 662336425 95814943 919585229 216017074 943897606 128597983 363686069 879689827 6724225 6841762 102907708 936127150 16344988 129998756 213152512 49817627 454502033 955339818 970407929 449732828 188714589 326233074 200705755 710022933 320521676 792894820 641777486 239854332 889185517 898929007 858896788 399998060 576445539 404147793 877241717 160857574 440028596 160320510 729485888 219776935 562375240 928699144 485742123 673508679 674732009 780764364 61382149 957705493 150513640 69916792 847453543 357090037 570351235 980800102 820835907 745332193 445261572 980434336 254161371 839616911 508803941 283750431 388003779 363804261 722516581 205674474 15055767 458935910 208854800 935628633 148701354 621318325 167541886 579098279 160175689 227012855 58504566 11286022 380211720 841339137 172442659 549849867 648943639 786420270 530966823 647640074 702928029 574689382 938879918 162553434 643309073 962314548 626337990 779143654 138184826 988018751 340549393 302370263 751001856 529069353 395869986 473426407 625949539 18452566 954587224 807811949 385895977 822125873 167493263 3918062 851811936 563495000 23069805 979613699 290477956 504202262 572696606 77897299 250943890 678407534 588573189 258696506 785991952 500695446 268815490 130936631 588696589 25515479 631434111 930008287 784624771 889527812 634738453 151970247 124841201 407726423 589371538 621287374 398537579 635126265 540681773 456715665 854750110 888401399 877415001 709497842 519548385 970532588 692450614 608449789 944605235 825561644 750395346 351779316 376782700 187443851 968692323 706635015 436747859 117481070 982359595 877346585 589377382 78953624 330294323 593641301 912023404 811000593 26738590 428758870 335983429 121404628 621493780 665533900 516320468 188952853 417022882 530108294 507397881 704100655 745283128 873486164 144932685 3397075 620939180 956025944 786657044 305073043 395310742 837118024 850052323 565477571 117301447 986238626 335366298 506602249 2116695 403976575 49947456 818683196 658233158 24324335 271019374 343773164 376350187 712904368 713512730 516311909 653442600 320297090 28761943 368430186 265593942 493016393 550770988 631718731 937836497 206962161 216734875 43599815 930945002 675615155 454737262 606948161 681055490 739456262 352609491 534140411 903427056 280083052 53398120 34738047 89643932 603367723 274692328 168864142 931422662 881358822 508043767 581833625 278181402 376039035 100332566 487058899 113699867 828703288 982149576 647677575 910076908 663030392 989301733 923835777 394748154 192760396 957699427 592979910 292056380 560620888 847594249 630457762 598308608 477200410 132147374 743539514 630672063 956293269 384949249 747009947 631180825 721915080 793418693 298903313 172651291 989332878 664931785 855669195 625316992 201039816 656155111 135643915 705074948 806975340 671298044 638397149 606755372 299152088 897467274 707870814 731241082 858966236 622681808 327217463 338400490 418838484 135681902 179567265 565297185 492185451 382141944 437805436 888746344 727279214 539707191 112645644 602864686 789373699 892533342 410488034 400823883 716828671 69282235 117607429 490005909 375129984 245138274 348543141 465618031 574790183 934261601 406201392 890679242 905638000 17173672 991854001 100298203 750729678 82906227 292770041 253815231 185429581 475914568 983822129 549527917 195598693 648004502 920272409 72008147 14902409 854426054 609887781 830775279 514325737 14154668 527461625 610933487 364584337 804680070 248834591 476470394 323795909 962508516 597676581 484930319 150418703 360838737 709016818 150549513 903632966 798454490 782416595 549180326 564843980 503335232 402264439 298723284 541468778 543871182 598781545 818448619 188915068 685751043 136604823 308383423 906520984 400500357 22204797 966203255 378405436 9172600 149553006 545726500 869039892 904455741 335951469 884045157 843550994 316076487 994353180 884472903 646119719 442179077 453300833 919947068 628197227 725698679 816058090 173659918 622165848 678108175 133805103 959662897 596560086 146650473 461732044 25792664 570305973 79393089 753078831 430367927 779979653 141685347 762554678 629014884 64055171 349429132 495531923 688125917 343303059 455370531 356198804 179576145 366717532 438932745 46941022 565979852 215333514 27385840 216634656 301639873 597248563 622648379 739961308 739381286 769033166 933893512 301651010 563970976 993183413 75386092 154255475 259767988 197788812 538534076 85181568 128058287 541765268 542949912 180272524 211482561 353980001 912105275 92536837 608626897 528233134 41588956 88948139 168765517 231674971 890829217 289388300 573864765 225286349 888923986 811711381 732649906 377812305 643040626 631413383 265726004 941465543 452406647 836692294 970620522 544011473 562133594 865223263 278024470 455576740 711885985 80810045 365553352 284093929 171091448 242675274 514700456 248803914 271474685 696626625 680328859 630707244 577840655 705825275 472023668 947261272 605101939 447708372 576574648 419270855 375820092 200461152 320353444 355836114 191086138 158639741 874218836 78871789 516243216 70188828 940287936 415577004 949914137 297109607 334273267 264019850 722005009 938603891 451814264 736297400 305108978 318474588 975359906 237136208 821697244 847480179 997073207 726431382 317561437 20666055 425845581 142817687 757087832 369692299 764121485 206361433 789525554 945674032 492890987 78245262 422811907 730561774 446857014 218557087 22988445 744254016 649552041 491229804 158364812 792454450 305830801 45930013 482324413 322215724 780688432 364443858 418377465 99404315 216262330 931827954 763283444 61071511 333425220 4757769 18903480 135926901 84832535 595713775 659317057 402902333 166014132 762716115 561856600 570552205 175122723 908477050 22589744 557654323 886488070 195342993 363785072 546205736 727794519 807857211 969588394 718464501 782623845 529895935 103674098 28894346 694612078 104085665 602087863 865203899 238169286 765758944 809892865 328550464 506787094 492618649 105599769 407730541 467381793 925787392 649721093 340140332 446864778 937410739 782325749 245416932 792746837 221245885 486574505 364545132 129621790 779899904 50272332 76127750 26963924 860354181 2946343 455401567 899763227 882381808 15535535 961359718 78605890 673499976 418044815 796025780 169863919 825704531 579679742 32982514 378913459 778116560 626103901 301759358 223263984 548313781 585150329 710701100 713373840 579002220 208295808 83984672 48003961 357144303 559232924 529817968 410783561 930027263 444682661 996398756 728185521 500552835 791743369 101253399 97960831 990299417 956754482 708668572 79581310 674853958 401157063 227184765 532036978 735497577 275928211 524499144 765826897 320246795 80508185 45568038 524703428 573347174 192320683 680153909 443639302 534526243 104319505 511139319 878270604 966362777 848356543 250091306 390625305 534850874 550011049 560823243 50163436 294250186 666694949 886520925 108811872 717705677 328807859 765287467 625739482 743822162 184642700 149103185 400615367 110210984 515974806 295382418 383680731 709490755 647795378 602178752 246663057 271800851 477293356 196306094 255888946 438287346 686562344 882479198 335533065 719230805 487170379 502843099 242055657 704330766 423123208 156821113 406741474 547001154 758685791 916991074 133974109 610691286 625893353 408024492 902984977 500112216 383276521 923340768 666446549 694440453 661485185 187154745 325612625 737162647 926665769 822681547 693149403 917918252 610803022 720249175 42514101 16934796 368572250 444717693 83874960 64543228 342518452 645573402 51013275 173400294 802804861 801066717 780157859 446754654 777604503 24291802 673170296 662614037 575550064 241510624 292087230 684883347 828484926 740456680 843192587 2741806 440574416 724824233 302754944 53231615 852705162 197370184 460197591 73228572 285826524 446286645 327584665 565531949 778781267 18996819 847464121 470598020 873149117 891684935 460609739 397838825 362490328 400153903 368054563 286585132 605218357 99386485 542789770 888002454 688838767 281979616 906745296 327489877 675742955 388229545 324038114 846990967 779015807 818762288 653495755 748918316 127375908 863894351 261622627 522615563 509697535 743400924 31200145 78395855 61271098 51492140 850601276 935069545 485012100 982582537 85581107 596264733 226079958 467267894 689375046 206489898 714921206 716399463 107447077 450650803 220329515 217196898 570190706 350471405 164149340 729373872 187196482 841131522 766804330 980749986 403851519 625712382 772135580 894783150 358907251 677266215 905840343 563601564 966785521 377243077 599275502 264870280 142676580 913004450 699688160 68136354 320478679 73318598 96843924 209658555 530173656 960798522 31886457 36830394 123136367 645856509 42287584 961489463 119470583 49930004 39617108 586825195 998993062 537227546 559994038 970907786 773314491 10764397 149197768 326145297 832082877 475349265 313576644 886364393 540800130 21620620 660271763 770978058 498250765 142048423 11502881 982615180 688279373 162306885 355670533 187356270 215978142 227234690 631591669 890752530 399019035 89526387 984056052 715608049 710058355 179475917 920366383 781153144 400364880 393578717 960427120 9364950 895970679 806730211 878954896 41382078 432319430 696899017 24676764 281875662 68875643 863811004 90280993 452969059 94628858 67856386 508232745 312537103 122677456 149458626 905644359 717797127 615830509 921558793 754084518 674601734 361309990 275787983 306703505 108393134 135436180 664022903 233273841 361170912 845612022 863298569 171485962 545382191 571723375 647266523 155978851 380146504 98513325 36488543 638126327 61505243 848706463 311040139 701867490 888486075 267518593 429188733 532066421 4743507 376394758 716545845 592246218 736790657 215535099 298567234 882428475 680068113 404813979 545918960 418076405 755984753 724415390 656811293 334294435 578907807 887949391 289316715 258771920 426398639 97665200 536790011 185607683 507244119 598168700 479740648 883091420 431492779 102582751 822613389 243581650 902292463 662544238 180419671 885255033 674929350 150731280 908044741 879072487 647100112 352974418 178839706 13939016 542828743 862954606 690106079 913480376 683540963 932278219 576197554 864279113 648626072 89116162 530999170 727910733 680145122 302185669 914193086 391475175 531909040 189323075 707798501 472161011 380835806 853010823 895288663 551969138 929063288 265444254 827732068 360559938 610067641 100738239 762938492 332014691 528337411 826666232 979807534 378410520 124759968 718529464 334563387 225674053 896009650 997357062 377039917 67435010 57250200 968970894 536406898 530109408 358031362 258050325 107448255 332205726 666123546 609573554 47932787 131198036 146364397 889423814 773347655 86908029 5721701 3542251 223154982 636433342 70885004 638995108 492102655 291240434 646221702 274377982 977887004 597705891 162014917 971521548 136090462 28849016 646292426 344559837 433077108 431256533 380126883 244082333 481129143 22524288 591840323 846185474 392693271 203831267 50189021 611806111 711670924 117659283 148482588 617027873 388253115 585290737 877545266 269845517 542878911 963684164 230500297 357609535 550660856 359151681 816966178 969938500 79034472 882069000 716839391 411375975 742654416 924781191 268628166 358516869 509939559 870892285 875027181 626299014 882938797 988310960 723987701 357522747 75445225 143711091 703491629 378380435 502404156 629101241 742432293 962650256 497825368 250049752 101169513 33765035 110899964 965317340 942287759 792519809 321569065 9217615 600154432 617135636 46420414 983460538 139831288 9585492 878239932 62319721 235343706 291208752 390566521 553200308 261650751 357727606 753348798 415698238 953345267 860395968 649674110 25788913 207858249 147643128 844847399 444013889 293310565 15526763 540975769 2449165 889225102 670792869 88195034 970657144 47065658 389410546 5231574 411501609 88030430 429642985 926158972 298383398 191461638 442189944 471736250 452566761 666607298 323088096 612090861 255760020 694593024 909671571 753938369 204298855 791143040 991600804 990074914 858989581 513654114 734718708 30095488 192608068 654082448 115630862 462376765 323069985 763821807 18657267 407191878 279182658 197242615 275989113 36465793 469269108 127278881 856433296 914226950 952959049 328607889 440507655 965749688 636467600 74346692 498269450 940450172 697310155 777085604 123850181 145519375 573259818 464851354 384957535 863666330 460684798 534317462 318727035 297485215 739162884 720801489 982407264 65405818 963734228 929959944 374609534 792432231 911150117 771197289 315898245 409329896 454644769 840134320 449010563 34791094 322758769 615508408 824227411 469513610 499261739 657529174 120205353 471890699 251412246 629738014 585760431 119835675 457928122 119991442 795369763 349181060 76880349 808882543 864759087 313474646 788635673 943566590 291242760 513326121 967954165 648745070 969622352 726742730 783147521 281192600 228384481 466964351 646226075 565198446 331719005 206595278 202332782 889987699 594239765 373444487 808866909 512104870 334885186 746767417 162332567 802121141 170603271 599443494 283931557 151917775 677315783 850408050 179526224 292504259 25967599 519191553 688653238 319122542 831401836 920015337 759213760 378347578 126398020 191554125 961174210 132070392 953035127 584884558 367028252 833722689 937485130 431051585 526021134 54750371 250699614 787286387 860597353 8854236 999225179 606702099 951956810 748922062 330398386 686803035 812875449 387255205 31867601 315251321 214574609 757081077 404994502 631358742 705532471 882662432 818053932 167982162 404780411 602324647 91129418 729991181 219338696 780987418 999897316 954390234 909231034 247311386 216797017 261256977 565728982 507272747 636703726 193977281 563588256 740250899 658124093 387640535 159998908 740747043 403967100 708790209 221216192 745572335 100663190 6477577 366049785 118421441 536600174 400576428 882299051 625555086 909530775 235484185 721590427 538855183 686095349 343918531 923358665 192391539 464996019 272253886 977222475 932428725 445401050 18484915 445096510 1589578 432240587 105992869 716362121 153016731 681791928 389632806 309232012 500274419 156790433 365741831 290834353 367864322 469316163 429931028 691720429 844894950 451754184 219145692 190002205 965774596 152468715 578555524 14861812 694658316 642324442 411716603 606618425 760273649 92210785 384942024 56548280 715845292 55165145 571793544 592517421 491795182 725704063 461020373 901561103 573889280 833523119 7035206 716689271 938982703 381387768 62276502 397451674 811233466 722018911 504261921 660852242 579448428 81625106 168519428 632729946 593120860 438933519 94022512 250672107 338424266 917431136 705993559 34090552 931605412 492675404 168045712 86186879 931197556 171334870 899723327 736997328 163396254 477783111 692379196 47785159 87677179 363417560 859865892 794898726 57471091 271573849 869070535 554541993 144629031 497919452 784380248 440272867 403773784 115287628 178936066 504318363 943837624 4384622 714741009 730281563 253053462 303361299 317886712 245600689 789345378 463074086 359771898 654161466 58929106 997655115 375746931 657124736 58544317 943460272 536039814 716931919 754868650 522477307 786402888 460679040 172548372 465522097 39834578 725812491 237370792 800340751 326298657 924168197 211320955 812338205 531114719 147614818 489472532 870815846 683166305 286881538 588820887 350879634 72561999 402687178 691578589 751378446 578470638 668452875 850129027 38729887 238947732 339798992 895972639 365951630 68099997 686722151 996791732 907709904 638604298 922092359 37263716 832929569 960473987 200300661 852368892 326750210 584544922 667928217 507068641 485117075 472242561 443230459 60682727 314432569 983564853 69787983 621844098 289062950 672172471 367845913 865136901 813894199 968077480 729992850 864187369 607110225 964714392 796878984 275733058 473794657 340610472 558020170 703355973 151619052 445757466 786795874 324298895 51024946 944915549 392993111 130456154 780348802 57789516 652854604 283055602 926990914 69498043 289535503 745456013 976921037 329976767 411519181 204488162 374708315 588545710 35710978 603499076 910870068 834430395 721272489 33222857 75612831 333723153 334436451 838168329 714747628 777948980 116709673 722157637 675172391 401166052 314646772 922741288 463175983 840934378 72636091 496432322 632147454 706978728 599102858 26649025 839233449 355626398 234525249 886604041 624672324 285853164 881743007 753771763 423727369 504196950 847142926 369881143 774818886 181521703 982345835 300581590 41090260 16445040 437918851 565273142 36357501 951073217 638461150 929587326 738422843 584672638 915383049 774387105 808103525 273384308 139141478 197074113 435460510 500929853 301582007 936946866 326737833 850204581 910914537 828652679 245571154 694283689 859805541 323884348 670026426 701487696 434674872 321912875 473277171 448684410 327171956 172383129 76077097 449283108 245604860 783814611 253620493 408723636 63164927 789063258 152243156 191669982 98681329 508002888 244724349 336662975 641173361 209383865 391177705 246120463 653269568 160428640 557541014 999850930 297537567 922719793 896591391 227553526 746980583 888838958 329751625 948903313 994176527 639421534 184100310 789515022 406034861 137618511 631226606 174310474 982585835 805849446 71637362 469428422 287774826 914712465 3997433 883187675 741833604 236441835 117432380 668622237 45198857 44272124 2196684 416930770 282040333 271499836 760087036 989299995 926513144 72229084 610741877 969316193 479637880 583968754 175251828 742582247 346742705 97999662 675843469 358064985 870260178 167598159 672736266 723155692 101578007 881023507 397666200 842885471 714584465 140687477 61466136 278672055 86792354 274486417 380875720 298871230 484813289 300109725 981686932 959811664 7844825 15172361 488623323 792864166 307713859 388626992 575699527 291672633 468939636 426215921 430094331 30721374 667338007 517780903 171846288 797096541 950784970 32087283 220537331 31640608 731932915 665827888 596453407 518998553 880255785 572687685 650098078 992110047 362772127 499823517 328148048 669584883 267234507 271479553 952379311 488055428 386665397 496552409 973410244 637551551 722475715 159029281 518928389 390722362 572182274 942491379 866968975 752412712 948413268 572349540 618922807 453151836 732934584 911324485 576215338 41026036 697265087 156411689 353996084 151637053 417011288 782997095 155554355 698069824 47757946 119974755 665555266 650664328 109996668 482271000 566416705 176492701 168241128 955426696 911538785 787218638 215679426 489721651 495668660 879726290 279810304 948529643 961388303 9962739 987562626 765220518 722639570 673316350 988601214 228291503 243747578 402998629 978109032 387666190 138724153 684684074 331681414 432942815 717932693 399061113 765073897 420086208 590384430 655995146 679093711 793284255 223518983 423297748 103999541 81469114 622508980 898230165 474749438 549991212 898142407 767697925 7548247 403332718 560603590 151071739 727140165 647722742 44250871 229604854 138614631 812393732 420253145 887761654 432259505 743341722 733130214 13173566 824996494 164774699 286358212 421800709 512215684 193228372 630738320 629104936 117508043 272503175 589273423 65658414 104996272 460782140 429729388 506354174 843184372 321099256 653100341 903100048 822258693 702165514 30399492 653716256 245901887 858936708 206442887 878054017 546344734 944427308 358368038 502171357 489257331 260769368 116719549 494245156 98927155 568881376 947971831 39700541 162913160 421596598 886097374 788680264 65387019 784132332 339453552 686473447 139139660 504380533 222735714 399958029 658451822 301806158 953678964 623497182 916454061 557108167 974434444 358701320 182205669 526734132 305350306 737824859 715785305 947685447 790819932 170550214 21382587 808974123 79488668 583731558 173843134 651900620 255933206 680902400 534014601 952822440 367342813 48535275 945047292 100008319 517014950 216840106 139088266 105333526 132483929 828600681 142226219 810363622 286114252 591465153 153297079 796743211 757239278 176365074 194372068 861963111 187075814 413702771 438331029 206584403 705293653 369182044 940415872 339238531 687449868 955624134 392464991 46565843 812840999 797709271 344577215 201296230 575538142 833675738 624376712 823396680 273488847 745178205 670717546 829978991 15400354 659785618 270516041 487233426 508655377 651442025 947316693 253692684 687577775 878814801 705965570 110356100 454926685 420532654 815717020 562738435 520524409 249263953 889841226 920075294 372831242 18551145 458588920 799994794 459751500 999284474 120736304 28497904 90550398 692309341 792154973 151931127 194072701 100931566 403832647 63011169 107512183 864756172 515699687 769356774 257680432 76463087 973980351 932607854 296255384 460107185 605689413 525472591 70326624 330223211 933417730 172445634 44014801 16023183 760402013 549600370 111379178 973097777 679599730 767340392 283048211 180078549 42844856 638387358 21058353 845256696 864858006 907969047 709659943 981735083 64761666 651186928 636234714 716776652 420405724 204589098 53173033 931102596 692706804 741823833 679157687 342688970 902304670 205051782 100309682 938194042 446473782 86322361 416011783 994708895 354097590 667553607 969072915 461698604 977633569 594991267 694734123 344498322 906079108 767791628 524429014 667106090 528755314 766758366 48845503 456080623 838006404 152093581 782756500 507531564 83361553 59298129 509868711 956945433 724997164 892665726 909001450 208298145 578822537 810193128 219195910 441897560 180617939 869634903 312593634 911073151 839014120 395598526 388292240 426147119 995432741 219453180 647124910 587640397 983069964 34385775 143327562 677278035 882912851 631924247 30341034 105130305 333656313 964661649 579605253 527022669 171653938 337320714 751786616 373437536 463256715 256817838 935159050 930499260 288435492 20490184 571317055 525159373 580065887 818913138 470122324 292320981 515368447 308921322 203516124 234039869 425964150 69290039 598612482 187475551 606384333 797784130 862521413 315137958 634685987 854623938 529897438 818632607 286543091 982456379 112267438 614099573 357561435 243775566 823510092 574495514 79616596 147519265 426755388 77023199 425996760 90909669 732901476 208096093 870829859 972433356 382289538 890196762 208945202 613964859 95543690 633750804 252219436 804780167 411061681 28435616 67236628 499342454 387327964 328850532 806725526 789043295 452491815 244597023 534040457 767068098 190571003 785394311 728197488 852741451 196968563 43005892 551703177 429272773 500175442 938133635 3813827 712184417 383512901 367293768 796886221 693992768 808071886 927373818 705508372 346476225 270826316 544574759 710240634 248803960 824920542 324924263 570575864 335929199 386368702 313801767 643169484 244803435 504505195 112793412 297158432 184048945 888444963 772170911 782262084 421357695 593004730 417305634 815382121 492481518 726918510 629146108 175712676 451009138 9450780 231990024 221863942 768941659 608889435 829830005 87354285 452961048 510615305 552249744 280443770 460233178 621088027 188133857 908102584 80923192 73458072 874314929 594148650 873115064 204894600 756277081 464317646 505851206 844320236 951983603 784155378 136422104 842858314 277847338 625514505 181266730 706959464 573384403 61211089 565709625 157152968 474206927 216534168 167256874 186993573 622771964 696949147 686635166 426503572 858500616 551782038 924626968 180953450 633299821 586665685 685957881 560949722 43059453 973791498 708420440 754881226 56800609 386050917 158826668 635834862 973378507 212652802 90315879 366932079 666296117 178685758 210410647 758675358 871940372 556741933 777752984 980345865 615667208 839984294 452533358 461380683 274857697 577565456 353507064 129636340 520396192 42502043 723551105 594931122 910020854 511165962 327259485 643592778 100677165 620867599 9494909 241157132 306486252 781404034 401555766 266099997 543963452 862211056 794278097 566691954 805191321 476121073 782690709 927335595 483598860 347055687 699007559 428047617 998244921 758402993 340143369 778853668 213999319 333985966 74665591 294537578 536736113 569682903 203221830 161631040 91125662 214373138 677219078 942890030 170938008 109895741 372817636 595934420 673537958 823212722 434238962 726514888 58461694 244410217 416153558 489369899 800312268 26942386 856265484 79611083 261494770 337961601 519260781 142369960 435046188 753238629 313029010 932148828 769141107 45070369 519748680 137509730 254595903 821979965 843665321 558274656 527759777 844613312 463882877 594020214 821910405 477508217 388246652 540015680 513445574 708725953 439021584 143521292 609589734 665086316 801534836 77977511 436196032 154777322 829069562 172437948 344881620 39076590 818916989 96988035 479919344 585513388 2358360 492063886 528725104 921548679 618300533 516203729 13037437 135192123 313130703 630623328 729417469 218817539 774548764 312847258 596203961 41692613 302858090 92751354 298097851 158314661 478342021 156488499 6632942 827903251 902536849 971485938 207082905 169745593 205866067 234810627 246433524 882360926 445296613 716111746 79171564 726849553 972464144 977443488 519133718 392873169 479714861 142355112 47863142 102529405 911609823 378254598 907159721 688003913 766309553 244638428 486799835 335391085 438834063 813778145 938928722 226765552 453275287 733168713 671960180 267615560 460264631 752664650 202567135 675906955 221821447 33386447 834596218 14354579 766863379 723644812 340595479 795502691 932711687 323768307 105312782 854738672 505370209 544791703 635247842 958505665 185577052 280339999 770095682 773383584 356246039 591443861 803877734 198667452 342156804 427423491 676944025 924473260 461271288 764564066 569799106 633198124 782327334 169043290 592549742 27224657 713416191 205188630 647889785 730042778 478101770 62549300 852998964 663437620 786934783 612685160 368764980 680457879 259692420 391102662 545177318 526570390 565961527 694752076 468972991 674241916 415828461 981799843 447473800 145194398 695474705 285699830 785895803 456831776 272320996 707122300 724768469 7096612 633267687 35945574 612149935 517284183 99770194 174274398 889364659 314945919 4218148 315146651 184253454 197543903 889146752 836442700 36141285 346230317 481957514 642903441 530415586 301619377 867266254 531289918 895062999 472618854 54294642 386400602 681757951 872638680 597903788 642952707 248146450 722814686 529817176 591424425 956145939 77674473 356204113 141010966 724231797 438956548 287824959 817493967 276301939 487235128 518567378 351693929 12547856 384917931 451446443 325927737 359428683 210847784 46440235 43003363 453599642 395862135 422100413 164582478 980893615 942749699 438749453 826438347 276509091 144468788 912050081 781611800 149830202 254153460 816559975 384572911 845796864 20628330 778350833 54437160 326745318 510073160 288655932 963018108 709716306 315258179 567772723 137925080 368385096 105463748 107859283 195493747 952756303 610792374 935972103 956119793 110059658 971554588 206696121 937975754 74764283 713960881 882501936 934263644 659489594 820208278 560659664 733974846 660709729 662423900 572533794 955791258 871344139 688135157 383620048 544677918 396697867 85936936 92609979 229822275 425579116 178954480 391723840 977633661 699890359 882895108 259789236 681440610 457255066 633247602 289714685 243852814 276758027 456058343 2836694 755278122 971313192 335052040 88689680 516426672 139425232 111830154 995416522 125164953 695767163 207085886 682839631 870401098 165102309 50760855 966724592 894212267 871689117 733507280 697105160 283607359 945223236 222845294 233611645 560516876 973923540 69733530 531823347 814492286 74187695 407369024 794515043 585950216 72890291 827208190 97356539 531645227 163962583 309516435 259327881 440667687 628115598 389997128 304386461 298868057 636568047 629206501 80933078 169639561 259157621 457828805 469342818 14631061 232046843 814708520 687536389 307062622 737088291 746181433 900961607 495217891 941146211 89363030 314440214 323375616 594888318 195087140 306543564 788790903 956589120 257493733 398564528 968580684 300645275 739477515 83522177 699313073 626878600 926456309 132384832 550367323 956850831 629720970 175994250 243415533 940236206 910031106 151150524 150090182 548507134 800942520 922477705 16197277 286162645 933611605 106614584 626436306 260442539 412515834 794806652 822265401 734188780 420226756 543959472 407611405 203876024 701853502 482529524 452936744 625853752 162944618 802695221 153339465 899465997 448579646 566881875 763945838 594988380 278059506 479394110 224831185 892067969 178181493 104994550 955336686 974401344 512127437 651930796 860595704 93313449 667969412 440542111 679985484 404524859 383557716 26239899 981060103 117934503 887671320 756763351 971987122 600580663 304815328 897150408 53134942 400196875 720505011 930594000 689271351 526687088 364064610 960548622 573619144 849068597 430597933 33164950 892292465 623660934 347523692 310052046 560130236 57934000 376468177 554483503 125355976 880240558 346609875 738590999 966672335 549578577 203358822 361532835 567049625 642284945 674517883 112443993 198741447 647517069 197745544 778665146 808054242 152524102 515284721 611527014 672195590 654256966 51377654 451309558 751135723 592115002 372519371 281053182 654173695 567126701 976434965 615657794 158062087 444862323 184977381 456756816 66287008 95778324 34667476 522942270 227417481 723074258 24785005 169836823 557951385 784672457 883800935 442654909 794227089 242322549 36009148 567958768 196296673 612461840 836111112 371952428 323713594 635100789 208989172 104204552 997235241 552415788 633910779 501261778 652334272 976549609 387992987 957258587 275662869 318692 908773371 297187205 192477306 324378249 652771022 529601346 426976426 40302604 809161805 204926582 726243421 935245609 348097612 25716427 66649455 518299197 79584405 616049163 154806281 959939230 262312664 996357965 912538075 883378447 302742315 177055746 483317429 647525532 761832215 274726159 285008667 809685440 920498979 119980807 156838015 910326000 300057750 791838782 684678427 939408622 209963979 722543158 9231124 573079040 997939666 101044672 165607117 14561327 264862581 422315479 246422598 460872416 970081434 871063636 89977163 791959680 327264538 877107522 539267875 185723829 194230492 792173656 990342724 382149463 450113178 194644193 340325844 289700874 119697881 727333566 230110269 303739137 167482585 352352233 306608234 636071567 415116232 526938258 545582827 993563672 174227130 429622879 281114040 177096975 896476895 913315030 53578788 514165289 733774049 136534005 913650299 673415831 48301729 851521954 707069752 808702866 322750108 724860031 147932076 226862406 157017888 419993092 475919319 100880701 755004608 510773965 814375768 198908431 5250008 902871434 139409069 1801946 843258281 817938869 26274708 77594127 641244292 885028761 911997817 708136703 728651163 338936996 280193960 168977354 460728387 189292723 679089095 758980155 578307604 280672986 328777165 845157508 395121171 212826654 575047691 471213841 159293003 230131662 292286474 438151968 419244563 59786699 682141585 9883626 587444280 859806794 996152679 986189801 699958362 816990734 699941815 346385455 898307450 775953745 119448764 666432966 9689780 95508027 269228132 181338015 923719993 379866646 112289206 13384789 944795651 193283396 107993535 686667951 202991300 747405863 159391296 234265914 795387089 861641420 837000624 495813990 779043967 685287355 832506017 882586869 860694658 904256576 5968621 96237713 69226481 441564678 359947450 31312252 633393169 919156778 693857082 57714664 174091565 168617806 524668040 410319414 277875873 626561252 332001566 10999710 590185824 234947089 783325762 895671155 458431370 173665314 235806850 676589601 43298366 262437342 486785258 632786755 303681009 211329412 668238451 931657320 954943595 819943731 738214218 753019887 599766196 968128494 201177019 584830311 799362860 928007778 662400510 639974879 417495910 348200285 143788516 510040343 238052051 521432116 238189340 787697224 721367846 960212191 259041133 521161695 138802217 413517673 350202873 575451350 823211940 665689593 674899680 426784528 872541467 690514338 392354996 642949825 467025081 776176641 245035783 778582254 154716123 678937442 778537493 239349133 494993875 300249313 631196787 756072213 794592868 171454201 395416494 549546544 779868478 653198363 13585474 821448711 701522753 65927178 427528067 533629676 688646917 37361988 960404226 541340347 523058404 852988366 391649002 287599529 654373461 570660843 926384433 393607741 677318398 875916527 341394107 870848340 205897324 137624468 736280008 770894238 963815085 732613605 724018405 411575772 585838378 591464826 468317234 426061219 814296880 820896310 993319684 242443305 885470047 328546664 412150849 388437807 933492824 767895201 903961760 279011220 726264523 766624868 145652586 415480991 568495056 832298655 308056608 62239060 599888582 890473073 677958316 728960011 818092936 817717101 316634100 803936788 478191363 596453536 63195740 30673630 800344020 300060315 999448314 654094828 356957468 335329238 152172191 508192817 386505422 738278910 802221139 10882096 82846978 682065510 1992357 342962929 654086136 735578573 545487166 348002474 878257979 895276683 780757122 34424615 878024640 673291733 305318896 888109438 603657207 446030628 768946552 812656381 23705397 161855984 177795834 982177871 676401959 798196105 384941029 89656456 183434104 53270504 51241735 624259007 243142182 360204917 818887342 189071951 595931340 568095597 134920495 291127062 391431700 255517489 258413490 908882688 946230313 647158138 807641326 851626445 196970911 46765579 631718596 956565985 417640871 336254536 842497098 710099561 666507062 74778777 907622905 504938295 199157749 922004223 567104734 779522104 799431549 414915049 503795644 381707365 515981016 231261837 652382732 117485770 168924510 249597394 724211264 111085250 337929067 361979537 451386464 685840100 821282700 678581777 919092635 93710385 465484193 111613473 647146986 609005984 27573284 270859778 752256325 775236746 406450902 54099397 60570078 318625990 298711418 316568696 245408454 74370078 391841079 120918792 101940219 870838963 343111936 910601062 875492917 11632523 700008673 479072243 452335619 241382274 694471369 519230315 435070757 962777654 764380358 119845355 311670395 220532422 569526823 684498174 748774991 507071172 897537308 872134653 547209854 813720627 922328326 17595942 172835710 582335182 138816509 788492148 864513557 582843257 684934809 302566530 170267581 359513639 771141855 898386580 490422021 284611725 785750368 805595823 961676203 418327827 133699813 617366185 865424557 787884989 623572012 534219337 23383515 603037181 982200816 67796152 96867796 3116591 39933082 398826551 376864720 415486795 706586736 279005966 952720176 364831781 368233679 767454292 124893780 15590259 701839020 907640935 427936804 510895197 675560407 278411449 440858314 528823316 315944796 612191955 534782308 239543805 202803231 688376020 214688291 502256850 384226583 600893206 8918097 108851528 36382034 880812537 834994722 987237925 643487116 971666029 517050565 578952203 794525473 570190958 611341997 778091589 504832241 917964588 96869139 20968118 401258788 556989900 456315731 204493513 966651206 451910263 913998165 534196706 269453943 942380651 462719600 331602900 672013287 273779209 751337874 946023505 363560039 609604671 639594567 574406908 298555511 676198467 13954160 887912513 633188486 428702031 913075908 927352451 284033244 914484472 617424444 868408973 349451143 28032154 508496155 846998158 130666405 217025476 907279416 366107643 453736315 952921764 852454954 633454721 690261073 830599010 461374569 230951517 394340339 435757474 981021064 698549875 157176328 165688046 721443307 333617803 926762760 738006995 708712056 206799461 62048276 25412379 175380493 870634148 625377 644829202 598568187 562538189 221105475 394598262 105395026 474812020 21983349 731492567 381747676 259217276 741881384 120570053 450727562 515970987 697575825 84788244 677678079 824738401 977985956 517578006 586199683 585229578 604055230 410283519 495098784 225333337 966581700 659693154 373836054 313437807 641187166 638762906 565727312 296465211 912244401 742888836 657852590 880855887 51292294 866714409 976776658 218639 26067760 151885805 183901922 831076782 18571192 851207300 310344195 233454375 280037525 889713962 547705709 216923157 2808775 58858532 217312329 454255005 657205291 659781072 740672838 794167604 13342516 512326195 548468270 939418517 96216099 947103129 164632604 941066037 46513199 958201870 53834413 373458929 249354643 304634453 212014691 49218856 356215576 992789405 975355456 661723566 310112270 844761574 87577252 321142163 512913460 648517033 865425304 107067701 312120483 164928246 927875930 426068189 498689716 211677384 722237371 172192079 150294288 499651428 661902188 872050306 171180054 11581436 877261344 866743458 819424313 194298791 795098874 905961051 883753271 546122322 214364433 734482033 310901801 987326892 300386117 146954014 925864103 962104791 932602952 252268148 472119560 37837668 898695641 355774663 580307127 965369887 836018229 920933811 23907891 713152196 646341062 582045487 13128469 486951941 529364944 484680655 879638079 707806592 885970432 154604776 251575820 366730096 985191039 339624652 576565849 826395894 283968498 776112540 474092132 299612120 273967147 182659025 333526744 151769476 787079952 301108854 86591858 519569083 993690205 241423326 209261007 27271550 353963207 997027886 660277272 800765072 962916991 521459442 287984513 229099173 789998346 432641008 834452925 825170711 757409874 47641205 754634564 697707056 916444309 279820841 169926092 822783559 749341375 290410082 447941822 488763550 783632804 829457080 209649154 674118085 888416385 464053294 905071966 77808802 781735484 226241474 770051093 320043902 402137954 680693506 186481845 331548312 914221540 362705992 410717613 814514161 487295187 895697203 503738499 631642286 4263816 921226719 952796600 629955857 275720334 662455040 665528733 732154112 318232611 151141847 123729476 166052882 332076343 696159447 243411592 186560967 807978652 59760042 73508438 933553924 350371585 653804627 333230089 474830541 555321410 356935915 158087572 551149453 533859827 435219663 79921094 58051225 555920806 876045473 423294584 508745273 107499025 209392808 20895702 279853883 282959969 273287889 769709049 651912469 402499666 765306786 886296687 872385119 151255241 21458335 632789008 527488342 910163263 135983889 846859385 722293996 252472482 572132001 100081999 779504397 60743868 189983349 534190352 29685134 299163661 594046633 225079224 423070538 392532371 822434568 285173260 371123636 709476453 705709113 190903368 794187553 363897747 456732720 335180487 649230582 167710473 859524317 328379744 972422431 690413319 609831923 343385254 439360373 696168450 211228838 599800825 868625274 938762471 373202160 212123745 640859279 115165041 281773383 709166762 263577295 92807293 339638679 765669675 168902843 428052949 220896875 856716011 737718427 765777571 970644268 883580840 750559118 706261143 42812412 211179161 645980990 304328690 591130417 920516569 360940160 514023285 269801969 440877193 329833659 847481818 51099841 852342110 484354286 85351895 577396991 704229424 47825666 686470627 960164690 209412587 94987457 206326068 518923976 618959111 653630499 861114653 854377578 219587988 408489479 395543460 766523098 968699450 649942297 558190663 69221725 678727392 194664111 263952192 400323162 896156752 679777570 445390728 546630910 451805919 278513257 746805624 932282370 648157408 931081085 518980350 476912701 118520059 709587724 571038413 453370572 182939305 223971462 696967731 754363635 4829451 965486010 694311560 377636835 448657990 923301691 933638268 442897497 727252353 620978848 58258149 991609351 297994923 911024341 854497883 146523790 604694821 121748861 675951849 139220590 500672902 838068387 185788512 406304558 838323725 364019953 14577064 288347206 29098922 453128669 156022764 48528733 297231285 146988281 735823788 263354897 324810467 369898661 82804106 138616970 651282303 346421214 782682156 928412086 103573739 784109867 158662200 473803920 443252566 46635053 963710841 654270375 89756677 848317764 49223615 407814620 904291166 98262532 852459503 14715074 408679109 693789530 221131694 201323779 717000964 102238596 840079840 55481374 494200957 202172594 881900038 407872334 723401929 322230202 885969905 289323554 175092496 153414387 98682519 31476934 505321341 430925868 108070981 387439201 982164708 840811871 733524052 123074079 708872228 941480001 522987404 353472023 906072629 502533728 716738044 921716121 825705587 673784402 891083430 969452286 489213053 612015705 309151453 954304396 76636263 276268864 886923326 353287798 814287318 188480595 507857089 305437346 404042621 735897330 635927099 153686260 470282869 84914846 19165233 23315452 478200187 526278020 693809101 285682445 36582436 942708607 500349935 221118847 678368947 465743471 262544871 854173068 626584729 895604247 166275360 785533977 379035037 557462115 615021351 35463428 512989185 430006704 747563220 442965576 382361482 532033655 78350750 807990627 587697298 85954607 207920373 570556800 995864643 499503590 212126684 52040455 306821965 318015693 547889261 477583151 697993278 648076808 486061995 572453165 206297229 671161721 644940666 624887751 786772147 462278025 210789975 472203259 507201863 205309365 565661726 411690211 669393661 58509333 61309337 969366000 16001060 291874103 251372789 379689857 176828062 824410179 218116341 708951690 880511574 969214993 298007143 763865985 360874100 270799749 685269978 142307173 452085990 949076599 500949428 248475273 519483599 221007879 334416526 73531350 363686931 40343058 985150844 593921957 664248704 916235329 858075603 139668598 762198655 457570224 410125358 471283439 741027267 623034339 978501755 560865617 474977897 847338362 372979223 876062309 28349821 960667090 715887035 123553630 228598480 207355254 476420771 776866141 888823815 919658495 970454123 264948993 180331991 293324708 268363584 892041752 904301810 655926075 222059585 62259929 418719062 729028391 141135839 321204773 102335030 396328730 120667091 1317682 707898191 352341209 185844642 841006892 515465915 572371544 956452377 901199779 547978265 44895023 569144868 480955359 383218954 987490817 690130651 575980229 73053977 177869341 152988082 336055479 222160101 605666527 106604361 378029827 7291192 127699064 984287469 864045483 15282509 914579650 522055391 616637147 355043725 280610332 189996119 333909523 916645315 543867390 370186685 36807492 634056268 440255237 252255000 410652560 533024138 106010988 899807722 368661419 533666246 186353935 423043796 830131721 910133257 210706215 273514085 281293286 589027053 228534098 681083876 874475044 493347143 274139837 245531598 366201056 89110549 944435620 20198772 685025426 526303260 681562678 553731516 351485052 532249625 833165029 599140433 618285942 154777265 230043752 139701190 302640990 740082984 860643816 250892504 382688224 261596788 546319795 215127565 418772065 96216520 439347267 336192554 719468783 616159207 160084628 321951925 487743585 134387940 249032358 362087832 405276519 393621125 615673598 285902563 588529544 723088276 618489355 362455978 295814370 220756958 663303345 998633089 650824474 199990115 478399596 302553926 158066473 605213675 419508984 858828977 458205866 131078197 612023802 871858872 340621594 874613527 990328290 310970059 206840258 670869394 972625289 674011743 698157760 543820069 839833092 681084687 972913957 745861832 167402125 825784431 977852249 124018112 124061759 894195832 887232962 674745735 984492875 945638972 217055806 770341899 573874605 287106315 621006443 377155934 677443729 902778092 707371079 552935448 722216335 209367888 943104530 446783062 54650977 198963469 887740625 676523181 434674523 569497772 743186429 213361714 192609841 671604969 65495085 223743650 335473674 349037784 314519981 436947195 916790808 124980178 686355202 999400714 176184977 409749941 202392585 272836337 728126008 852177967 184483815 324644254 466444841 745801381 471992153 986706941 962494153 427960006 295987232 268893283 165336174 610427404 395130213 977499428 837944230 930444181 685442202 980628933 199552797 104865754 449241312 728024124 259437096 37840990 851402738 937792189 83842844 775356387 207976953 774819297 587060814 529774454 121518688 377590945 957967694 431246981 836465716 24435357 334595991 607986159 583436090 217743969 250856230 418286536 997035556 674265516 726132284 208958294 385519262 639077897 24365202 455629759 711485909 823997694 31901049 379197371 848181900 480263764 592994719 129537873 965011075 377793852 686551261 460838530 149643598 691198264 997969936 864411834 373144075 720237347 564800608 878758079 716237608 798277775 262478390 499285982 643907366 828170258 175527758 430747628 464486806 532352922 140837758 588591309 860537577 432194489 357962020 909730697 814676247 849863357 318533296 319292312 372647609 408528961 908651759 381700002 678023090 354559461 807585488 414683249 544778903 639541137 63318471 478068675 767491172 479689088 718350319 73641771 104664315 805865802 103518405 249659794 871043007 85726774 933009114 396624515 410972334 213436416 248601559 286500897 25791982 462511620 193920725 404535622 436003971 135313174 735424553 809701766 153824041 507526108 612047585 44355297 8708391 71809296 927770140 48287763 821454350 768101102 947235938 375961295 757923757 389251952 962814221 352357356 801120321 683568617 13910779 573123902 911754674 680231041 556957685 574935162 359648919 529763730 433070859 107439290 358180351 225866275 877294573 87315019 951736244 274039465 855704855 35297949 327327057 768730806 150133475 957514766 841843997 831300664 24994858 415161198 940316487 674101472 262037432 606986854 838721023 427907213 342208918 886718202 484645021 323663940 824627978 172837872 782024584 779927602 509300208 420124379 870498386 575581880 269662142 610092461 89572204 206656119 365629330 104531951 301789668 690077579 387920090 149734911 201471527 968431979 243181473 544751149 991528564 559496569 554300806 272048101 467509125 321385596 370383681 669781847 919217745 756177762 774659963 148542587 108848609 236150124 952095565 98531754 301767764 566769989 500682882 956240722 807235296 101275797 350137302 850795876 188100388 669673555 121133144 805645265 16924605 781961731 178009102 841320036 112907975 915480149 597326370 121592977 382440100 424812279 599309633 582602429 142843923 11139270 938315123 615125347 50683087 953375300 775115820 669034945 390294396 317185999 338789951 544886118 617288019 669601257 116787165 338709862 174715712 192607682 639969140 603152602 761251111 272529238 273150702 986347028 651113946 443217272 36206906 101218882 961440395 803132012 710024734 67545099 463423834 298180023 501474043 240438022 287186659 806179617 886847123 400752532 577716042 416366238 920306903 77780285 395635571 442583521 119785942 244345705 673031070 971869739 781390185 708955097 138677322 259600713 403559724 425515369 605308904 936839728 97511478 480862589 450452022 709446872 390384900 642758046 365055185 30607939 290356068 400107908 595024630 529960795 532343536 308698345 619500044 589029599 592556171 533537577 843551590 994338773 638892914 16161189 859397441 915077225 989309529 399135105 511600255 296802537 560782773 991063432 834683498 187408646 813125665 73661748 598385149 13022157 644664144 613245846 737495503 588867904 577640 15523716 714086486 143033279 402211758 858337292 991557798 94426798 771548528 850095000 462794243 215021478 895819954 156332724 378694591 673417025 627948284 748159909 642344409 737477513 59229164 987354314 780889177 826387458 702651199 596048169 103998160 304973039 77673580 49257336 647419898 332434313 97158064 676325187 664803829 415561563 571411870 723079370 382907123 222898400 297128479 731054527 748792354 809093069 12689275 779325491 920711915 939401471 821730585 599740785 778622293 281817770 242027541 397418946 343683723 661065144 635034286 167957398 226737953 911330140 77758617 838598002 676272755 822162093 654914232 613404108 989859426 828426447 175573125 53570234 996197395 404342850 602995058 764704136 148561241 250155941 337554190 124197884 243639525 359977415 573102165 695306307 46334991 414864217 741182490 213604528 990825771 68761551 265316084 116094646 992676132 529922749 590473516 84479998 954604114 403202024 50633111 885182034 134403634 278833379 148735757 361015637 139707289 753173436 398861957 638984619 855573432 434991048 177638847 681090692 243960078 413752283 641610961 477810544 101548759 127026855 84607539 312354877 982326320 138730531 505140662 258387291 400698744 98323165 786277481 524952281 678840898 292859483 444373420 317510097 573369727 564274180 270547731 886801332 871191037 441556904 990276957 531098173 121404895 391643892 433815670 999497394 134616751 434065287 319099846 71175623 946088345 269413128 813574119 906754158 867439148 770017429 424075749 918918966 844323629 465915790 967390529 511051589 857130161 987928463 284866922 622297420 4861606 30003318 88137083 241034936 559500591 306861129 563805416 511831972 729002814 632979717 142763305 279940617 452387885 219239276 344968432 194059956 374096845 784769957 55839349 177482323 626708505 977005683 343508824 197663581 996889670 863201371 947810361 712041810 971761740 979730345 927005700 816002310 762353266 637095061 679658228 546870852 330551166 575854059 688157623 223210683 345536273 65501090 819846344 565176131 53631663 663010014 441134896 595808909 105175928 349726068 174453387 684367973 781387194 62967700 831589980 592232662 360760905 185626031 383171314 832752602 164212424 721517712 388538706 787823169 811996129 709311752 996261505 983859062 780993744 659009648 584149357 709297954 199888479 725252975 964709338 689935643 808757765 964058021 363810844 786140358 458587158 828103420 185926162 952510835 250027730 283798790 521855075 371775212 516481432 711831622 345431608 704395448 350671294 990973931 776107146 597140184 947054992 132307629 877945225 750221901 499157166 307189830 218981941 373821048 521720487 518028723 991960185 11165500 223183819 928920093 520825334 214418699 439102691 503019246 849823147 744416146 54406696 122462549 944077205 673341056 326375525 810489596 164713101 973234174 761108442 313280824 959056108 239645345 607527047 536697094 839902566 702078407 276157659 722278457 432722957 589999646 837671615 100375769 457332035 908351719 158133468 380940544 335430504 86490073 896544491 351833911 189285837 985942968 829628385 490472497 659079751 173001473 719086056 787959471 163847007 613627099 880429684 755499211 443239815 915978818 267516594 167228249 916034378 821771657 151117337 118296403 161742001 940391205 75490513 532304748 421953356 33762969 511549136 516852011 627613550 609047810 632969597 433382084 108471775 825877524 853082420 284715849 416142362 609603385 640418359 692086334 867191204 474095189 272452697 343943434 367789465 966041355 494893365 274348218 677203687 302553206 465533160 369238754 48984882 94681170 323001857 49817220 564862999 154187760 88917292 789034296 672156765 799755805 694787632 292467370 479449887 49257594 194965727 216090097 393709393 196952029 992699602 943949020 554871290 199663263 195101387 581995680 698042581 570158650 673105771 791046664 591642041 445110348 103316669 676721063 28878557 986423357 626026196 495046626 364745762 798582387 133881135 188888003 225660645 107803170 636035660 347886483 685354813 449122354 790029528 288562250 612354514 777979511 332427803 371916155 12373156 228034769 997192218 604330033 649943663 836137868 814542048 633606829 502649784 627240989 536112794 408325869 803718240 418527625 83369590 155949335 564593343 228531151 547594195 480459336 195978085 357701196 180317804 400344390 675547283 776759837 894276462 925622335 394358008 110501908 357231489 40925485 533445570 726691421 899132529 848154543 773639714 596352435 498890382 850970850 365874565 622006246 894864062 249634936 868003427 825689458 355509957 10919374 929139754 30911211 495636251 919336820 565906949 540998262 47480192 363339811 239089676 382988833 777238840 763257269 930339481 946325002 928935644 440565870 270106955 869799224 68949506 782437962 164803555 397277178 795622779 373888408 710488814 544297972 769637878 593373046 660096218 705470433 327808876 402583478 49811532 215371102 272003653 381098267 154617481 304782441 708831045 362096403 682347661 887721571 897491167 831787106 610518238 51237326 345405284 716308407 115930049 290974616 144934610 811546415 381300393 604587795 112702483 975383579 576423691 81228624 381048598 231932795 720691703 513454660 69842899 800875450 176441505 250385592 985488769 317277839 352295785 971706472 945647054 655032622 289330843 608592192 115347545 557075791 301189170 398879942 383577589 740840087 79906500 923751754 197981090 125752635 893467126 451733116 123431490 303430982 9305458 712580592 549051584 936913933 706311037 191475134 361761644 410774038 993928986 325975591 87063481 917167738 93215486 704987811 931078826 211483326 28629727 567140602 60563817 683581342 886675109 813901632 252316003 459440260 599623265 732651384 684873275 158900081 929717693 528521173 468424180 766948631 7988026 770125099 432779276 627476196 290710047 519382798 980165121 331323295 359317095 799783287 546094634 950759414 583123672 137594095 266548898 101740595 465259260 194798222 615436834 255734303 384716699 397871537 987175238 185918139 626360036 633613436 717582464 408718232 723383846 903395730 178601200 808881938 105307119 990472231 404624797 938493960 666003694 592905043 117794542 216305721 161996044 616319553 916004288 812305942 173878010 664595382 671177411 138547021 133314384 861810992 92269899 264831257 170374596 875223885 152955278 630264149 955888293 140171808 867879601 331586135 268342894 759994789 798906233 452301531 869105844 752195480 414577143 735635328 942451996 792770119 477302928 998186615 863118401 115863367 414154172 600323345 236390501 356869672 542559574 695601911 909961 128811664 874570635 414816579 904458252 507955582 573893823 442591680 777971517 596659153 425358145 249132920 646341855 800207533 769414327 133237300 883498550 754556007 448773730 27486462 924799428 623068068 124328680 665829785 947551628 515413004 67681075 11388695 500247982 831840744 351732064 330381102 834625446 457329442 382215607 997658668 156719053 878490364 64459400 309691839 66016432 332944146 211108626 926432506 379372708 598608512 368500559 481646803 575724315 910714006 493220440 742352145 830034885 278942452 774144113 545670168 138184123 962463374 196267473 757753303 107737114 614423951 963398266 910410426 168496713 366263848 813444690 272217490 997046401 386615882 515440437 711832436 820563148 822750361 420520387 842992896 268440610 740003694 317682434 410443734 665150154 636019376 305599185 687183849 53366185 452464161 13011473 844307714 595795020 658453188 37703692 429806850 992516069 812940418 938901282 392202424 116053553 738090868 768511520 115744652 167240036 828640140 577231875 325130617 587586005 610082348 153753455 236729303 409961180 82131462 866628307 509133708 82309614 590225993 844609154 41428519 37504662 841885887 275312925 530383584 397516662 263867763 384714087 756150412 12924492 975133494 198411293 143198706 231720917 997791231 747819644 892692036 232055098 789469352 813721086 107908649 23979456 631582454 113833256 589483278 452089924 4480373 542666354 850479720 902590005 17432927 29055370 705221579 434619399 965935490 254182201 796501646 945466026 943537560 45430511 542980905 398376255 931550742 384242792 446661501 195700143 234590910 160161763 817426284 878249400 715852817 781636366 100147530 215130126 925698015 197029436 940965014 549032061 123222072 759558668 108820400 917293964 307032074 126449886 86463141 410600627 157451278 754651015 542489043 698142803 292861272 230650531 397881132 805521358 136569444 929851679 646271306 8316201 927761727 219453014 902367595 531560954 837952553 769107276 910272396 321937912 850140477 183229062 341426328 579209486 277772969 577170713 297975050 664252720 404918819 444763143 823032486 489756947 317562685 242931749 926043367 935221819 91426137 269016464 360208147 263872398 354969296 777206521 867107629 710502019 244029021 822992654 788061835 566776546 52509245 6623236 591372703 325251528 127593993 875216546 227268251 828689440 738477045 618015532 408250550 612954146 584925611 261024338 514004540 370609497 742653452 295954876 659340608 337595172 14018518 233815783 333745166 698927837 689217391 171587378 520463520 435223559 795061345 68753518 952355520 699592089 15945078 48905991 795287592 435262165 181498223 341527320 28950550 134928500 326387805 934467284 193231933 667462597 904295668 166964841 682720094 344043459 180668335 393849890 89555773 385504363 761800872 40341581 164136337 208694134 121421966 333769743 388080467 935593072 66277652 358053558 29643407 872591025 553073185 608862618 932309284 740688909 889678341 454884729 626093440 471926952 424973649 292956454 432074372 335800511 921894920 149140787 463910796 363159735 655912532 51941402 478007218 907126725 22333538 155286495 985260081 190905842 168876714 741549549 40044830 920136789 963924676 500123750 89523473 506162335 145146147 771003519 61511263 451079096 67285938 120823334 806226965 23701744 814454487 536254158 290428532 838193362 617119949 900241986 638235179 686392710 436932501 936857015 991638703 108184527 53364626 67050997 448060176 97789083 657331847 71553780 199731736 595091921 488893314 173796794 399019372 848167739 116645796 450028586 926288043 732205671 959231443 872225803 777698814 706375628 251081468 835991062 87956093 382058278 917706808 235253611 232267319 373857465 886375038 479391915 502197392 580925462 305196153 545607001 54962894 183719878 419946242 47691112 505499287 599775211 911133857 849128314 350168068 518339042 325445652 641278079 232493902 961865327 979178454 709415837 823264465 194007928 838059975 562010670 783286620 218322165 767158549 222374593 996865659 826276055 969298336 746060583 776990560 881688921 338214557 734703631 309814838 376762794 835301667 250849243 792678067 724085342 567042378 925136849 672771656 192769722 354977877 184965096 567208826 646640790 807565162 488816070 115166124 213997861 962996514 75903021 87320926 13780601 488554525 299791947 615074173 538734627 206247443 400505023 197633971 340551981 9500687 3790037 707332246 558172212 587109101 991082603 760441435 590873847 389995420 626581870 813852682 145953712 358824730 141553304 967276382 384983539 738422840 84113003 969715316 616447846 223883514 670230314 203940541 256091664 54524155 42400307 73027973 220702949 462466163 616416063 859866802 70804479 131852840 250628659 420317058 779521438 575513635 61039793 170170933 199461316 819029731 96867650 264674537 624385698 471368383 38184898 983369353 833452457 356252274 725634165 528707457 345179878 555576679 791185436 412690429 113170358 174654466 74912970 204997905 976650356 132088605 54190077 747119456 252191019 585755842 288092762 589408730 262646549 157703042 435715173 254723988 472793124 860143251 128390604 637097144 780084650 804229269 285214305 405913881 435621584 697636979 788959882 846452613 714985223 748562938 315053118 37404376 168534305 958017498 586181416 661674672 867629530 579437871 770886347 953246146 809650831 811053029 594630105 790014240 494197182 272665774 511166685 57602139 144662739 314885196 139654455 153642036 873525211 210801914 816711121 745299521 589839559 462673563 458055041 563904123 395688397 103815742 152762050 843712515 147731246 405258188 348509572 73270741 833260315 981255732 130083031 233916623 80376220 322014813 670478429 378770911 314240187 52229598 528351947 448968273 582484766 606288190 616851830 201172885 280908744 485799729 122037453 680166962 102703830 673553847 603286161 834737469 253223733 205818017 788861612 383512364 719075666 244363463 67721520 674727734 125921012 2319585 411098056 295225876 223994694 264045199 246384399 473589672 462150487 831786289 350802496 405445056 294036697 200188971 319288638 465584247 132667532 87877536 378193129 614969021 376943111 970035778 37810649 491222316 526538194 619748144 806307999 3411434 869625119 545462969 741630841 891364307 465678725 255865681 369780242 316888044 53877976 361873619 946783535 838809473 774559638 142743616 537246212 454599699 810710617 767186978 643494226 300182387 529091190 616151380 24079024 451658541 694748431 459657566 761327471 839990683 585538159 310940733 41825839 726833421 397676894 359874544 218848642 867432003 596537543 616221544 336457858 803557639 294210823 58268680 574359443 979622676 155271782 983514446 582038759 858810471 870383105 620365596 726249009 649696169 645837479 27709429 559245687 427258448 747229245 675172077 755519539 393818468 511473056 902245023 94187323 435563521 454542920 273428483 664727880 581530690 395151992 188875209 580758652 810511693 120901401 298468111 634047344 36235246 161120279 836626577 117528129 761431939 679352284 733815343 5501278 361321341 333352395 367325204 987612621 613431680 639225488 157360495 103850738 905467615 903754455 432831906 165075343 937796745 108565230 232522520 443685033 219784079 593120297 488815880 187585287 635310623 844509002 468911716 566131441 393975185 410454800 300490882 623099103 637277840 872592769 109514483 310638221 293010034 928797184 747231892 731080261 386485172 134030149 681217969 466767896 916938614 931997287 840652227 638517770 907848263 856520819 821642734 591757693 695650347 900337048 745463976 150328903 858282954 53665442 801321264 882084616 17520428 710285203 432572989 693626077 868201627 842226130 256459263 368599415 697431374 865732219 228912005 553647708 291608269 744349098 750891018 714991028 173120461 917095580 915995665 109765401 496916637 387812518 758315903 252691059 550182356 37391226 619761898 375387666 634046722 503187897 171424565 438717276 885163556 276425757 4139116 904587194 838299842 11723291 391135728 965676173 259559779 404883475 622629594 919167066 918093373 242073640 199341777 759625743 571639576 486396422 905061986 87306567 799750461 92669546 531238163 774866329 994938469 281114836 637295455 639752600 579061836 323553443 720941011 755216765 746293936 815993728 680429851 577547818 183417734 755058654 33069727 769020079 364788782 730229247 807476339 55099934 521779482 490413789 498939091 948390925 71174863 779414402 205334823 79833874 36933238 150987663 593378783 230803605 263523555 640022597 917496466 865989710 497864573 754997053 886075183 956966489 913471032 219002498 216577590 373282736 36654269 254751915 856225903 653654528 459705211 982285491 638789891 328074233 760064447 680832273 290241023 313833542 270995270 490590779 835417921 217674578 137539974 412540101 932476723 527218015 409141265 601652321 483590071 863220424 776900203 985709478 663109058 597211676 283995752 357815231 584592325 818575387 35169958 17193461 293469576 660566815 381044084 389386707 734438734 126776509 753295125 166629422 479825731 318832016 492543514 297612725 771806211 548790961 915871272 572321629 288308736 177196768 123170524 107814118 545170095 381070157 436322445 988626533 174014078 229916653 434123486 497185795 386497058 998276255 747841709 989778998 21023589 195760367 46967707 485763693 278653089 106174717 601726726 675222731 367958746 5606633 756821557 162696554 104147295 102164428 212517809 236404790 792761255 723576596 859925680 904802086 206408625 916030443 689837358 454783793 115852945 455217103 988818605 514539214 213384747 130736145 888811755 959816384 80274258 374837252 662812731 55172792 771535947 87759471 673053481 290149135 288351045 437935419 320478694 537788544 823138873 802721244 188222964 604260625 133366301 545763292 185910154 253883014 173641044 382362674 469467071 740738241 53109784 333917095 197338503 237151815 157475722 787346178 829974742 617878534 769733734 442364471 180308359 542144452 611328446 429183863 108199660 690003602 991728783 601083262 735030205 436940838 741013824 836084961 852903141 953480193 393727712 390277973 961753120 394350318 924419964 493964156 702484100 884541448 192591516 111525193 688820439 531447010 661477542 139400717 901824800 295237370 49840032 662195901 446724712 545655898 742127897 591093121 448115896 850411646 203945735 963462058 703204386 246852574 539782714 239549078 719098611 216634859 6590676 75573902 886499753 60668287 892189918 225013862 621175482 960341196 877744204 891330340 823476968 344500903 426105229 352599169 173025634 394470691 217106401 8915389 61061141 556184267 271190449 757807250 115748255 704416468 274382052 481260923 272992692 774754268 40546315 812522651 955929680 842587627 833390080 61252277 697287006 974499376 298218691 10147122 339163149 359586007 766407687 269094524 571722705 119525189 587332785 888085374 783987556 458208091 148693301 803181800 843320293 194667973 900089236 454404877 52185358 344274535 375743642 132891946 534548419 403884365 477028455 606836476 551915249 986989100 174529380 348596841 932092525 353595178 420067280 909340532 589883256 810434994 418816567 757563561 63366886 130560872 583953252 888727439 136161241 121363029 661486760 36992191 38454689 285119427 404774886 525837120 270944706 288836876 111720363 244700308 422740895 740753060 416627549 101903765 820240254 902040924 323654736 784388004 140423468 926039775 556400631 233328698 405737318 997688256 676415487 504618060 197820362 809699204 330186829 592246491 329496616 537914196 336104204 847147197 499550759 818607571 319852265 702243033 541462703 189357093 855303253 43061960 979706887 786138306 655843513 855038381 458764617 880773905 270639380 815324474 298748632 863973753 992507651 174884826 513148425 872136839 747690151 482378397 565687002 746895716 269363745 316089103 370838207 124810651 812968265 252006667 341379958 982832645 5772133 638242418 35451282 269839936 652154913 347374128 732551301 487520913 537838462 832779367 794421320 353173643 636757800 504603111 370065796 421692778 155858341 643870138 776970596 922841516 347546353 318445778 699245196 957413815 649049195 778122639 872599120 667028988 851478476 780016947 76553133 523102247 754726799 181450877 114993906 763997564 466482433 2383661 158744938 213738363 524915296 189364271 694026932 188450746 386403926 726514005 471067079 291094945 435924671 396061596 898858635 157180966 896571216 576143156 546277146 674913087 361137057 213529701 464483864 153422160 558766720 513102827 133771385 593691623 690363446 906375055 55522581 443128786 797321992 82853331 121444198 314510800 756081342 926373487 498695384 724929853 772407516 114008579 457243611 938799886 41538564 140497676 788506205 100666162 733235077 550522874 196177979 469132113 922731251 231781576 975064111 399866670 102726250 129123253 258468261 293231511 677845797 67653407 284738187 539552331 309076615 79085761 158147625 450563536 99025113 412692871 404774775 613314800 81449777 325102833 813081783 132524977 694290626 700158942 729231427 679038455 973413643 679829510 784781615 703348397 619642733 13936530 173693378 651147850 219070228 775836348 908525864 86685494 583089415 301629258 968293778 76576712 333244328 302821032 811639252 303540786 585482163 45921324 984120154 101903282 1247365 742621928 910223514 102424956 774136360 802781044 770342047 117986814 752030192 444537554 694058296 799389315 487872623 612372782 896805694 757202848 253609629 477145867 137224698 53348213 183400988 230797856 485520669 983266664 757296097 772096781 662176772 934512734 787501 387028084 771008140 857518393 750717990 98348226 320179180 232223486 6468803 118804204 473610848 222423279 967987386 809234520 453544056 321751798 111779711 785835211 473235731 952765551 221182405 264914887 242830602 813954525 254984898 473331897 285707692 779638959 901306057 759177276 742479517 810893541 324809966 117697059 142381492 205321294 579739614 258511106 889989369 951059832 456890881 107427438 930588663 721222136 293940808 147185199 845227303 662774207 584914402 248331764 280234681 90183757 382208272 774840330 43619355 795848102 234003344 838363044 642895316 236187644 703057799 334208409 587881692 708504724 261022570 923744937 299326009 957146880 432885987 663040658 642684363 562998496 395264546 229251193 167837664 466335932 654619681 215572918 697112724 296292376 971034886 850400662 225902055 220674548 908577686 727844236 541263844 442673640 151806696 429869967 276643642 762816203 591584153 325470182 956740701 884815106 833648277 540290665 981614046 142289946 146865843 651728862 436800696 397111838 982640027 720534971 940632976 427765505 596697652 113308716 882093557 119519158 632424591 315863151 722330698 694106124 35036095 739406633 204264713 204798421 701624997 535301027 263398938 22597216 418088171 460713109 394022364 773853312 928394803 264231989 978794323 509351182 185899767 950280006 658767105 583467513 2919869 465071113 909512509 610998718 381700741 467847934 669113676 356729052 493643602 920613047 56511806 325033713 174918158 77811582 762218999 58579624 487225490 698632321 563655424 389073032 127531292 396820695 936867930 250427941 515918228 204024866 54482067 126968145 107661176 65871304 900239126 492278559 618027840 985213176 389924140 188566816 411176059 939427666 501198946 885574161 42340106 429680524 782824408 854724921 504639397 531090827 43288059 649723174 88332078 502865168 335875222 550656025 750448528 308088966 578461039 565577653 163883223 480289264 16391800 954642292 53738177 356961790 983124561 208833283 883937649 133081735 345665823 194868514 686714623 266785460 652106238 446575649 491999086 163344896 942364951 795217520 407565131 616948622 286096555 184354123 501159257 20750297 196639863 319926695 371714040 107533026 213067161 320603344 732616491 199205612 745691810 645033812 457017960 99290417 19062572 865389538 989917446 175872295 435481529 505284914 573525841 894734102 290641360 535056429 145159965 313464235 794934242 618982421 840330288 134813990 448121178 981636366 188539724 378473612 483284387 341599278 962853088 143302777 821711320 535413210 466765918 732436645 621353266 720973735 588239860 430093099 225449552 112999922 10146673 874429506 78391274 941883421 540745813 708460536 266332692 569934269 506003374 73227379 970203528 995494606 607027467 553665333 666551444 480412354 834429790 757124480 315565942 98882905 514036068 673288118 819717634 396850203 188876220 462874440 604576795 10684991 788854262 185375036 45464183 383160544 859787924 785747759 310440813 218665795 508713750 788502451 157698092 700524512 350879540 479661114 981977317 493462224 384621755 965705175 5398392 666926566 420777484 798031974 388494729 249784445 46623091 922817603 15926502 45581909 672575990 655004354 249965172 101312209 239534149 830081479 970712577 972859858 15576673 177729322 846432809 899933341 300652252 318028871 851902934 396239862 953864619 610862072 277628789 432902224 299162452 110668023 212934960 341373573 474650108 67900166 253870964 634566308 748618968 940784212 756305849 519645494 295998176 805597644 952271380 425973314 877712027 463252009 885611826 767920615 132115471 127386337 29292677 386726095 678731109 481596594 245444954 650656398 459607477 931181501 631754187 770704374 784202639 180179738 896050932 117236978 397231001 193389449 961902322 791717742 916848696 889144199 416961928 397678561 854206696 788944119 177368061 109550905 191295462 982621814 498605971 539466198 969762656 380614895 776425094 64176629 99482837 192631360 144138590 106674508 830276849 895677019 12707937 717637550 143005590 964132549 900628387 695648904 370914995 364668839 69637310 816122545 76328854 101772747 982454032 624337067 429832902 740169888 679668543 753837018 617598403 429063159 246948221 274699642 960715834 703343529 587292879 116078249 219092959 877177851 761346175 65786959 156054150 284717724 307502288 309846530 809653714 86265736 678137646 656770787 156733900 520684583 422994047 263737403 36600488 324031478 481948271 361917206 948406208 433166806 856213237 414703754 571047828 653740000 539316263 611668549 845771369 156337510 601278771 969553806 569790288 719307242 458211409 447565181 803198295 659638720 550267246 930564302 914645763 879062523 545829430 379358834 918341263 608976429 212270486 844483744 829784375 207551665 544273318 976550963 201943619 470000792 399053154 68070116 698923882 440302966 134855264 117516314 278284716 790632309 646554373 140614250 190992652 635279828 550752172 224038089 870995175 295499234 905916680 356871734 393796997 21455310 548200178 485664557 145420536 524276659 458056938 601879370 734813945 967734372 657027230 488008577 371632428 74594413 364627410 985142326 319046061 877616556 801683065 902721472 16670373 677755824 879111084 256002808 902038274 983149961 103712061 380859937 92574756 958597479 287375043 717640509 498176775 971212522 211567931 942607374 582085552 345653040 33920441 214095811 380152247 60243180 604021384 423542539 81815041 321053027 613817318 400194694 699729606 453092088 712959123 520299167 101901263 166329253 633389600 435797968 120968975 313299003 490129637 651840073 371158479 730314498 992192440 271018311 21483769 698770886 304224620 744728485 422666947 753912699 537872344 943552132 217813092 439794677 745720810 863191499 977492229 630135506 241529661 301158110 395243788 593312815 98785909 515117214 194009871 717597211 556199141 822573841 356964193 400095496 985405585 162796612 197318401 380935060 805391727 859483338 138954198 961421792 622065217 366703883 734194496 421835946 658533366 677522772 315203213 469917738 934595462 967983503 291245512 814492779 247339947 671308192 941910254 975416849 918642493 391717650 930656197 149176681 374005765 782286270 350416184 121863656 244148467 304234282 541286310 38163975 390396310 113959527 309986164 900939772 641032739 217060374 469916379 125491545 122677351 651407189 67857858 308892527 444637075 126842523 915523425 773297435 681371565 19692085 931166509 154289346 807880315 74485667 732538229 702885245 575818238 176942572 772995315 203593320 563160310 290442633 743733657 160569415 459267394 993954360 91368441 595346972 289664335 739068067 303342452 970674433 359213463 288861952 246438128 342238751 235041367 446414846 587042731 336859665 389688396 878155514 822905307 889521860 950701687 202355199 304387241 318402269 157015592 775473936 776410784 683510872 433917747 243606435 639617526 972922365 966209349 139092063 924826154 144618301 788703667 19532521 95598150 329746656 485766091 948580235 650842426 603301472 719859256 107573800 505752445 527160607 891028790 500332842 540787175 37495264 643237334 87115812 830859850 750231669 852219214 956348424 868333120 47061563 546619862 631103510 229843588 988076485 388497289 771365202 306174461 852210692 970104206 240427239 532674230 16175090 56240535 880595571 940838605 791679281 633633346 155119071 126666214 409559068 189847800 949930606 29190097 451441026 619416506 292155908 101465762 613299066 495528002 574567715 840977132 371522781 287563872 447725284 284437636 350824568 185488791 479043162 251039274 513525126 655592789 501893376 753412366 476309951 647458055 568978416 415435086 238967777 700429723 244478758 342085711 41580731 761545647 943004288 158988012 148723536 901056939 392272170 279747909 74321684 708715651 86224323 551276471 706763022 609000321 347062308 520979078 441579265 55663602 515263223 6325894 163335599 545398806 190251583 244138427 115872329 200617121 79148358 282336289 223846181 843401380 82267704 815604288 455505399 516794928 57528669 845212954 478037788 630952428 586569030 47374246 745107843 380232490 217436551 983727806 839865817 834149228 80679187 888900043 140586744 532483936 766583753 667112199 539778849 556410459 392714808 54366315 218468044 519377116 19783112 805281922 41424081 411067084 672428484 69590555 968286273 586769152 676463472 820439060 993394654 973681156 741734654 824368922 252738585 541774628 357373752 423205475 359329444 618204874 702223908 183314092 483861937 917790054 449997320 682518291 920858763 216221788 160439063 73088190 330829445 986390803 423342052 476153244 497224504 999889069 915949918 714505550 879761235 732645326 825236848 932305447 419395584 584371326 141538847 595724270 380978863 925344499 576560155 691069254 593859667 599019988 823827508 393201570 547380014 53664855 999559959 977270838 202395672 136251248 633290988 232177461 158788291 420177729 748838981 234889023 781213433 360704581 367716743 47810224 888899157 147970955 653712481 322532685 234347689 73123027 812298309 754753026 787606741 436329993 559312131 883597546 529142895 188963914 415048099 873215317 244353733 229235115 543797528 81269402 237001371 61012820 751995933 946084633 521258273 472239505 220892613 690294482 466724080 134699939 456884193 67901613 434722652 938836423 751321365 918897242 680189453 191286071 373576665 772366630 428060204 58659188 424562888 788449664 237053784 746403515 180010924 90102566 185710149 717468585 177111695 450182278 119144760 876537798 689612223 143802427 971885281 245712830 972388064 479328268 433488221 952996939 234367991 417272032 791147467 880296122 648363124 955247468 761639077 379580540 879803033 555891233 868819554 475035055 216581072 949399555 629777685 417402945 903273210 234696680 269801176 953757491 495352170 712506533 947977401 648088539 952528784 803806553 630700954 265443828 786547788 201684579 803713248 680465498 52995960 520069751 863543733 395337252 902671955 446680154 218352348 386549605 794823262 132237678 548204430 786589055 665685532 369523293 973228618 757273063 709483388 721083753 641485475 620447443 228004443 446969578 311827319 474808278 894899034 937346440 744944616 473817734 362141734 446252279 927421137 923278764 451685191 282188669 153113569 570173007 693854814 792287879 859655438 325695018 696373470 467320470 883509828 506034710 459894286 489471615 125114743 528861386 102913986 323098374 906403851 982363664 584645663 996467499 296018848 383023515 663015269 317256492 133386174 681191887 137149617 429220186 189495652 776546208 264193387 149693488 676456581 510777414 939184405 720027313 676250641 94298679 466728788 774484868 131841383 352375620 765119788 13741400 921094311 712950037 689052199 394775427 209384252 475066606 329874249 646330696 760377606 274145030 477685555 631901914 866855263 528467950 94352874 917695208 445156982 601687716 656790222 200365378 652207083 737980334 316312805 338807502 154934934 330897194 272494086 405259462 124678495 914570743 336232800 556528946 491934290 188201464 530418908 9217405 217778460 972230428 490121757 486105582 59532117 406401231 138340690 159406704 464443628 967244481 208133235 62141696 547455407 845004900 313810128 999750217 580539257 58840470 475809234 146869160 490491205 412096971 891770983 131843598 596173139 545223610 715606469 167147688 352788708 729672793 636034584 877507307 332780610 119974537 841772420 716909990 797117451 477196958 968126175 498807780 912955357 682941253 710463014 953537978 725940685 831707485 847245195 749547577 471776880 897243757 315672968 719763671 981361155 936142957 956347200 409637288 624315727 304095277 906195392 920849807 332814601 372901594 499121089 193927393 225222235 21419860 30030992 271455854 365503155 49251373 636909468 290387408 861820489 139166574 268134212 977598247 833713044 863895738 377988806 425700305 388067110 79145150 188384248 670552625 988823784 235247009 587355644 340375017 71148415 461039834 628689907 41739249 255141792 814596542 14227558 89830233 588477332 240725110 152691720 80077396 153199463 189897674 107043591 950420790 524679379 811166699 660422860 695650066 582072690 730332732 980820723 465430576 868659615 219325019 996885734 908637713 538567263 84532283 280768002 837121311 79316664 315273463 883954264 596274939 882613575 560382040 338608336 267818371 829797272 276283646 532148582 969418888 49037478 22519247 412054306 647011106 139026581 85999868 229748795 795713694 747498968 138315776 654452065 859822655 582751857 10696744 730108867 181955434 204187730 390631891 982871674 770780733 641261194 894192405 263628707 11955172 153143581 986855544 56247324 583893562 253902981 163614236 920337878 980971965 674842069 297310655 108067926 626221030 398979509 331890838 934092346 559924477 497606941 877981624 383633362 36280740 579890113 477570099 107421368 620890555 516957598 403720314 638146331 37794229 243726437 909734699 379221308 499360664 721451514 748042496 188955164 761698620 761612765 450024563 182616855 554214064 706518136 959255156 426718521 859558851 355077622 934086989 297971917 57874730 558346880 565339233 350783272 756806845 672462989 294803591 266892040 123859471 455203162 588382840 92957401 996651777 975746559 768676875 17807354 974118336 190394911 292206470 891764540 611649074 556645002 362315483 712239080 142515057 510780456 13165911 607156849 474122860 182705558 867829089 433940397 880642785 59561200 387055693 225203579 698959063 89762348 314796370 152057310 686145616 809100428 695333599 446914009 874239829 131420865 496326790 450430832 825590505 617073432 225820416 484805994 373547072 262934450 689600104 280989625 607475667 337969917 599438771 468887197 176518110 751162881 2512160 808734655 809379011 732387131 6356788 432919943 189072091 124333688 314932784 277831099 584672026 448131834 816637913 11614170 536817148 688152756 742726839 833392301 891073238 125810455 544005535 341171665 402656950 552000136 586812992 906808310 626858996 292533313 655116798 465894553 268017086 11048650 395140270 878461144 382028029 557580541 331011416 818277468 657453591 949345286 404811420 4851311 984539525 920759817 568912545 321335393 328938953 710324133 324655618 800443011 915827757 822834480 231052002 784295448 909658732 837043668 744033084 33512078 344782757 451599797 807946811 761900157 586648635 22746672 697537919 561355165 234388056 653150293 850117172 648218930 20499684 239976328 133705058 972988653 634937654 218592210 122826045 403372414 941021058 485436839 148435912 843040902 463311015 133280172 506585175 248477216 101264974 887395515 33656489 630036559 608327304 94948291 399605238 708013908 231438280 730641046 360110358 537384241 848045493 661143369 5537000 428166379 94553561 62962438 275749908 423287360 698294957 472079688 749494516 947103343 440993934 862467762 304221089 757803849 178904095 987734697 630765218 173321085 870119417 12670904 242872555 864128479 912663859 254901648 414135246 676579940 956576168 778708253 537384058 131945160 190545419 569218013 408480230 157247924 590464309 832150246 42445850 764073448 217786403 830949998 886469400 150113512 131109504 914913709 556857595 951089288 810167311 536860086 863447780 468196124 315665530 39500346 289181936 127020392 887064397 389567123 529316 726331283 80395524 540165044 747571920 426051196 672523120 335907048 187913244 903600247 759935899 34338446 526490841 978084352 171194827 878968941 273167408 842693534 398809499 631197380 907031636 708773742 553125280 4380254 748818379 424144978 345236772 372625274 607006878 499802139 902128203 83073299 193203827 409023189 900330048 622097437 961070944 197838756 386911039 592114701 859168558 201599421 644684622 109221309 409956620 432358566 17087751 301312625 123453228 112660890 182316235 399437587 265988973 424362332 880799334 204343957 940869007 909943942 887666739 317165794 133170012 725171240 222207178 317700733 68782834 199180369 854757894 847757543 121804713 12244750 436409248 842103365 408746704 154355280 453367447 158491266 588816205 471362789 343569288 404863288 499162381 998000086 450250300 802937313 906629017 566753467 628787849 363743907 580482526 629383195 543973952 750227021 16824833 593625831 25307208 383394158 629921527 15569237 319991894 244858325 910895022 717316381 410189581 20947817 848032818 277710084 774443477 983979218 463664051 699305700 118134689 836925507 964972132 242047925 364892309 817126128 908524710 22942273 972894497 126030979 598311828 630534213 515297435 491295579 82746766 868538862 284410263 336016846 106333807 160677472 924067735 225010600 324588729 536425634 755758234 704000340 37999114 589365490 187552088 141640951 397222319 334499897 157568243 413285654 941317078 775169648 170609934 788586540 377546158 377275972 199041949 754873023 187203265 604298050 435518898 114134378 381784899 14940736 191654484 118694581 116563548 293051389 805581521 855972889 611554436 349001016 838996411 123528244 523772841 488771257 925119816 550369080 388520519 756453303 135951039 564650856 838979748 658031176 115944080 128305194 790979324 942994693 58795668 726109053 955541933 923266774 676898218 683259383 352500359 894644773 293911331 778536928 415007976 586811980 947575178 774060560 950668176 858354612 371712001 505469483 290954212 343012057 200056246 5552710 100037801 588425944 275192579 747170088 694950926 726145284 299255603 578722538 986764921 794550872 820715695 57810350 846516042 658969154 653005993 997916970 342944886 104599101 127413491 24859885 148781324 658793736 114804470 186736267 346900868 815145385 132203349 326150495 708308481 32593093 782078935 207940092 309947524 924339683 398413829 382713080 479746420 934932119 438258781 190307798 512990876 167060790 757602333 640611344 250461420 34742544 661367689 12261912 827656712 172011892 761459796 131891429 297659429 383453018 326217223 414048150 82238285 252565250 570735621 449183334 831830814 800608247 935552199 280328792 190063681 257012931 44648324 260382211 791099093 26743555 29830478 788873765 458555303 28971030 69360958 89371501 536746256 761544500 772247208 408633536 431457814 972510070 884275167 838949878 890346599 691292634 702133697 927550000 693383368 109199733 141083860 888894571 279673209 611396787 229841140 857857824 87371956 54755095 16178328 201748803 39146955 138724094 735603039 10251207 793420403 492731580 40870593 421112060 715324557 835234016 107041132 925895931 171055696 475648386 449765744 553576517 743329659 670996166 493581437 716769080 917386276 273022135 64929468 873264339 898367292 79354826 169896212 443493692 824992239 132529281 247618944 548304475 772496652 294945957 558034582 688172967 562903969 560993964 727575781 501937250 169429731 737733013 138239955 280915343 726971510 569875366 475162129 40507352 459635784 50571217 716401489 189869752 344343556 363512416 658315213 681659056 571747395 120218980 422254296 381561782 562230203 645732755 50682103 637415356 603463782 970030943 427671547 286302254 242303764 672393960 404201338 518655204 400594426 525648546 670714953 759618265 708455769 935662122 320058381 935817623 47186893 370171365 511415732 63842301 301270745 81189183 725650710 253514705 289350381 82291118 277914006 899745109 878232590 781897478 642548410 588702932 977699364 46637613 99187758 21459033 832554963 679511144 354424535 995365863 907905790 476257495 36003361 114166278 236330346 499389583 196574056 808655697 120209705 254730524 179840475 412613333 832183245 564457133 350387685 352208980 341526897 80221920 432593139 463839602 556202456 834091788 477980010 516713759 246614133 424967415 624456661 319055508 804991317 288739311 470078713 236948772 749207369 323575045 676255790 673410484 876614096 290814801 706440064 99761703 821533821 96332513 240202740 295554467 58211385 92440236 809368677 213024273 470788813 386893280 373247975 969105552 428849946 508300642 783084707 27676954 433963519 146782160 88384586 91148385 357880632 97782863 398929490 303564703 238400750 222726323 840086518 941235183 977158613 402820185 894300940 726567022 241258324 901515663 822615440 924182619 661490741 630631989 316791154 423072154 709340447 860527581 506125030 459281545 456125859 232322239 32282430 931158168 180426162 883747222 115700872 431414539 106206994 532166071 568432806 913814369 259393579 758174063 105486742 154346398 810020825 205575735 538539657 714090598 877576771 717912451 241989245 823145159 737083794 178887870 518179589 114238240 344784990 425912611 530483236 936883333 210639311 100037366 931520225 872946509 989830009 833844323 126864382 164517176 858821972 774278758 990854994 867336721 51587413 233308321 847489502 994219713 626943766 740682471 643398476 284426464 845827185 539123108 727964382 398548014 418254095 711538491 223453257 676042693 669884544 910448491 41097209 174958824 287941731 157144899 71259059 51196178 937573092 718704157 682062987 201468530 640012167 782616513 346462491 244798519 756183571 972698499 223626805 706588688 585851182 504998123 101367097 215265762 733304627 991345924 653103464 97275603 214211949 672796959 707326697 754061515 882460261 930687411 962088280 424650714 266065331 82058855 351263367 299035062 282294097 491663793 495150565 627042025 566465239 163656740 204692228 71510783 507656725 718263763 544074003 699905779 981207243 427388828 250825225 494963553 618517390 759406261 590238316 990677191 59954309 544635894 691019795 659756877 859288264 485472212 349344056 228415529 684278787 276347601 827088568 171113447 788744996 406006601 274244865 435877587 463015314 336164887 385021922 706738723 52137017 111675913 60847923 792495724 993646506 201299452 629269153 854091352 284621340 882982081 226310882 986652365 72643825 101865907 375796931 668453765 354436917 195468672 458085170 422408644 534407337 230222782 995301722 681059503 717434920 595960969 277707892 504940556 90176284 428607182 535600988 688697453 939135206 105197886 533304788 868207601 235152626 755095938 59211865 415288928 775183282 25299030 539130592 972442423 153503801 352128645 521841638 28609775 206332690 18351489 984976430 328294485 976022055 548208764 906166505 275523039 600941764 374264660 416834772 189069342 651772248 514160721 624693293 887058260 73031524 711314710 923110206 819286411 671533173 832023400 826393596 635368731 942831005 734854097 580205682 288677356 902789578 264567883 993650671 354245333 253578879 267156393 58200492 577659331 501004460 316597557 227304422 341115860 993884803 403821755 773338175 130162371 13663704 830095466 273438662 214401316 573420344 220167955 271000327 728852279 10809274 493915676 891550922 535792525 510881737 51967534 845722697 427763239 269687714 157856083 643709513 396859826 269408979 884913671 256167638 62026643 289705172 838636753 516059248 371459728 285884283 44561854 706030043 395026426 327615899 925860730 446197663 47525725 553326860 873192950 772263164 818166811 75457068 942983345 896581900 926008722 128259690 245271209 73093429 546777855 355658208 185706264 855893209 905803556 908167699 577003158 721062140 163589769 274002787 766115508 180063788 816357874 92537188 75129059 954579996 28779970 7613541 128267967 41698742 390165508 700743645 431783365 456214241 747592507 369162752 686253331 395405076 931252793 261420017 104732892 230282847 771068078 616692060 661747559 48621269 709166057 166957966 467709805 80708945 215983429 20425898 111631240 684298560 360762683 782519690 633504377 708095797 748098675 166684679 338313847 304529387 610807104 636971731 888268689 406458723 689702297 424899547 756124703 281587832 748373562 854647967 367483594 457768199 184274090 307467249 880146248 943150987 208111008 332439209 120102856 995029726 391570272 30731438 577707507 120151718 846208990 222270362 949613282 12368801 577481723 866028923 53138912 557590218 496886493 978954956 917502123 82734919 545498919 414064782 956278733 189704865 630548259 488895795 490285873 226359256 620767723 971059701 295913946 459761925 570745822 413562192 253259575 8846901 516856495 47202783 307068097 941707851 708370009 639598213 607079920 786280372 157885871 74391065 745296480 706950992 872030205 778568162 213534063 758335856 749726147 403033521 185690398 537442949 76737657 635084041 820285333 461984812 71966935 926142939 291814006 216401860 953677274 349644382 872996576 285971407 499255160 308305935 775907312 491267231 165393851 257195808 740011514 59025735 59935617 11373606 84741395 8022606 38442383 279425314 846958919 520555535 523837838 228139021 658899131 550831775 485655002 312555109 37191055 156005921 733937229 589047717 125694531 861954752 568613275 52547627 595189410 41518414 400465565 133966150 529482392 250173790 529278199 645721609 33481364 640812548 496941486 941519949 384612122 328495495 318533917 777884854 373562366 830111117 816684429 100091240 373473448 279712825 988215024 692878626 249107011 890382796 988212697 443080940 247737813 347817732 630122867 934281226 714875209 929006425 490426053 276457387 904846587 226799983 68388632 72974605 931242050 888688251 900009290 597769027 698624697 373769349 842358197 576819201 640682547 795380971 514608702 873724444 982066466 209425403 359831588 977768513 96013435 800826407 409113060 13581244 643540526 664277217 900295410 672020016 425908825 13710036 312287911 33736267 958510440 543246648 688543653 649179693 755864469 242546144 201441328 653894326 624569571 648953752 971200075 710983205 866600701 58472067 267418691 757786602 75579155 912880446 898319280 620700352 611813095 29232627 507133070 885371196 198170017 415468760 370634621 731232641 838906441 960219589 497435383 834211699 339571308 891980138 511682708 733613485 880729868 19323555 236220451 376914752 612261660 728003936 680917886 573231744 712891655 545294349 508131387 661194760 424227072 316068484 545106838 353110186 409194042 336427312 723988899 313004306 313381361 538751645 551688753 580785102 397317311 239577340 451505004 399290743 83437178 5447939 411610845 367085843 980510776 77481584 848932882 577416222 317110253 280765001 59357631 778461571 717388374 251545927 872048373 142800046 522079354 953585759 572274753 47710977 738393762 6485441 933504978 296785241 249040488 160870929 565344696 459644698 398437985 287304929 283636214 485088649 517558240 439890993 40560059 787507795 41457767 306505051 38873941 194810092 298879506 734200607 110316989 731025713 451043476 346366331 887503526 577887997 149763769 171472612 981720199 725405220 905178692 385656339 413253906 875766602 359953019 587306315 127855395 441157647 761474839 267308068 658786497 297596560 243066204 643249421 151588711 389889391 746426635 406177983 632425712 105349464 985207499 597035075 959539975 701183246 507511413 930958382 209562888 422131039 323432651 591602863 478042697 858577412 47682142 766023742 799830313 447942530 639100382 489443421 738627374 217471518 121328037 457305136 462171288 661006319 868348560 85885554 655401217 88313086 208770436 596896277 426546431 718034441 959094245 687007865 876422513 299950150 131682867 296725357 928213746 70554709 500679692 27562328 247332402 542691696 934487841 578642238 82067817 160974691 41233298 861821372 187352617 68515681 828871283 793671887 251227504 676901386 531373737 725327963 46365839 834758374 792811760 725287340 810629546 378814466 237949307 394250008 292206184 244275755 725343369 128035064 912194207 711221521 504324045 926855957 438961337 759679212 163657544 516187724 481775357 52472716 300838696 917751427 170342219 264812429 287764671 178620285 314752530 640082186 537054250 817646461 916571530 31058461 650355442 882256341 645388129 920041154 938079009 291968081 836047541 531476431 317928971 268476813 534261256 797977893 548947622 512628255 400113908 312270013 170014168 177660426 945329062 49198870 379525409 620099569 909388847 241645408 428421420 451974504 590990927 842268218 824341776 134855935 929264464 47579677 820791823 631436144 130832148 716251199 542412646 265298884 566138130 391852538 995739600 469770649 374945352 189413282 613106482 119066095 319926552 649773934 256658994 244514158 73355360 543374578 260136733 724330764 352958616 95966231 387932216 645695269 126905810 663566292 836297710 533692543 370532442 36881074 113828377 558547819 513529769 3669102 374693914 731646819 104947007 22360057 590973338 134432059 283203335 801660911 46408419 572812982 677171698 781322177 360911781 746775593 856536278 858656783 648486818 515177754 984128823 508803970 455045958 515122909 997424660 997440647 197432707 317636365 592709902 751988788 464163927 820259177 319708322 972519225 953583516 330294592 749247897 995401421 797081051 731294259 3657690 550209694 941287164 540042852 923215957 11962994 523319601 635186576 104758760 50849068 132610847 122696142 567992177 88778785 909379061 156900908 511343515 457462252 546777337 76359092 832367921 69682458 772049208 209078750 662862654 103419423 143031276 944895176 677623793 398385961 367246550 952446680 960668164 560384908 443899266 96166662 94876027 134275490 692893787 653901952 199342729 210536168 548367905 123452668 398167582 322666128 234274289 112019918 932848341 693681022 25162814 597796076 879611015 854125295 211404021 823519486 593019952 455899550 509755301 957825266 689541185 435538754 576891347 285444698 543110385 322191031 526617200 646613915 83552089 941731028 130257796 608936567 427302401 267432710 586928283 743337001 546829438 67577624 641481425 526232699 687085851 447385709 600019527 341504541 105795688 321450029 606296776 542211479 63872818 728755217 627012459 823275004 156294626 660566270 526617605 151851104 238055320 211920843 499588925 60620542 196336924 261548206 135725270 547672363 678968223 249541437 428259630 195840189 586328115 704875130 175213937 969523312 295192735 446908248 191866795 780088424 381056414 102184438 766460762 429281676 572081461 13680374 183269646 284641577 9260567 250036601 849041043 952193933 674106333 607278682 640744241 288871240 336330097 870244940 588504784 868983547 146617057 928606566 877466520 522744640 710351249 381317264 478235032 881928833 157321371 318163429 817244674 199304085 214138580 466272861 386477638 177507339 115270903 86010688 669703627 362176197 326564104 865050536 165947206 465845878 885833695 984126775 936590825 97158787 486769092 731805612 224887354 64707039 789471012 940270798 395164958 951483400 388492583 407095239 558508222 361593033 925528831 188157830 535962070 693025157 740060234 208680697 381800713 877278570 573877198 178357193 19167998 120271152 16938982 61608943 102679515 846360560 37968622 635217753 395711720 565454132 933080617 873945254 593709584 216637656 762453589 561012741 579802156 467730573 750836251 695364811 915079884 194021248 260807218 281221867 131894900 179205136 893584289 987352527 943615463 107747628 564449699 552153775 589264104 955045056 963812607 675760922 845144700 872711708 522039658 860759406 399371577 908836988 240734064 290777425 12936682 892207150 187664486 430129219 442134401 141019891 864755302 37236377 761857130 16364158 215526280 302076717 730596413 974413070 816492219 894231518 522773382 138190887 127225203 173348875 14799630 869744529 362535116 768917331 987030827 151904614 395204091 186358275 141118506 865845376 192384192 597427417 454773561 86841975 975904 449416387 74468016 399574367 127984445 145514007 527793390 906804681 575320957 534910224 844315459 404273967 629782186 908625531 185152778 160967525 736879457 962319349 220427812 433497491 203150836 978451882 436357094 329942864 618296411 423389882 832306979 753190467 239879710 140165169 623501495 186566186 761891711 567078140 314573295 385935428 262253153 807633788 240450283 244716769 771820567 599845200 407675134 998496439 238608953 190827784 752552437 60955174 722195554 914943501 269619490 233698765 747626563 721891529 843141248 32513750 320305003 648544958 324197091 435576241 116292853 567037581 180990741 982168606 34283314 242447068 618723808 717764674 654930567 823151166 4678235 455020265 924906339 229256349 583212183 915429248 37620183 103817539 115075035 204025784 462626371 724867337 776664853 868857891 38409849 171658591 506973825 163028635 670663248 782157487 643434446 710362740 481275248 374996718 313225887 509838874 591027759 610907067 509930642 256150364 381855537 596045420 995901092 926393137 49206829 675679142 42756969 301590769 401142649 448597042 404100516 730514508 125706237 638089309 908671973 739870867 428697084 118182378 501907546 960790732 783267129 454350169 428143286 511848176 689301853 524080646 234035579 822178127 110635966 247779347 22412564 859139206 336866361 999134201 770674121 663379433 288652508 809136730 123472118 609546306 285292814 87698346 621865017 445453151 43118086 550471130 547190783 376599377 409128483 238512511 350254690 958028461 501430933 643430598 257012060 852780271 107392764 649727708 267268934 908853195 330953631 150407687 903062635 956565205 61185831 648925428 955862665 613850777 554324903 574281820 22097319 8514630 823022852 329974478 780073915 563647474 426869963 511537559 559789177 668439225 290640369 545322687 649658170 906297365 586932837 540055244 800339240 632916281 162382132 338529320 228941821 670870704 65354912 390963558 265698814 139218320 743740859 263503968 150263065 231132718 214379613 996683030 803414943 561750310 883995105 709249334 975924728 199559158 496305631 854484522 456428610 902623430 526994405 104902561 377558147 467905681 139139845 133171273 497182612 339930379 288690371 541112384 884016995 848970183 402568616 637401952 799160618 167129404 325198139 306120161 484321475 524182953 786735418 971895834 328010490 665235036 679037821 631354349 212153560 405113181 762421832 320963559 351161832 768054747 280521798 77593584 186370992 55433816 878822778 690987593 355523987 307769723 625874874 565975683 842507437 348976827 472180724 341343173 578820846 656333692 904632711 295232130 329095926 834400143 730122156 636536523 772831374 734582949 491303008 874247255 524226796 252315423 637550135 240864224 504471176 166058603 215469800 18639871 731967457 732437957 46396125 823031225 857394527 744269537 541856289 408644452 702853326 35472338 111759965 433582610 831553191 342252722 857341728 444304123 59906732 936028197 844837646 397819046 219828744 322157090 205816753 28235402 232205277 198590167 582427952 931246537 316436158 354687904 799043763 456595145 952865476 737509840 215459286 432769785 788852700 769313191 938937450 179522343 17013835 149186441 94939047 555847125 984774621 451598019 243995038 633365983 166557689 954337681 599625478 279898464 51102799 651863865 917678402 677308284 538357259 692731489 128597961 918156867 102764860 663340467 237657908 972817983 243254699 277946152 786058540 556466812 765066290 525159641 865278921 410953644 402444026 987074369 407193146 830223204 250792521 773892151 64787600 88539830 550072907 954990388 899239491 931606387 402359896 678236987 293391568 842519382 820908357 97351988 541152806 112842461 355621239 436717177 771375643 343918942 180204584 672375964 5387282 81564314 720009754 386440969 791543555 93056207 873782733 727916238 182017371 352237176 680583263 190927046 801780314 964418852 16646540 254032088 242120192 656573594 508542088 714625492 857632447 14028006 507394385 815515894 778521385 980242937 841376205 48340147 964377761 18720809 802449452 895036801 417047390 950625904 369304049 312045457 829425499 159797838 904744147 820142161 143446195 66119318 295637705 850198074 560111781 411291967 454574944 165547023 909030759 340569945 63473132 610449399 704151834 679577291 37507400 376808393 537614288 213803992 206140731 151852294 531130615 840608638 473593912 856593851 568033213 926614039 40486342 295453657 221279718 735831964 746737519 447018039 361445844 440871384 558453441 552647866 273626399 277334111 934911135 163475616 165707540 126596628 616207274 23416017 614792839 571089624 267164116 845401652 111401575 912251708 208060841 706984822 39596896 425710916 311571792 201867054 130728160 163235929 59581521 464132709 949566105 162442716 879064478 783737104 298010342 72265143 635598440 906414518 35287575 997058160 535288646 951882243 768947200 717714151 471877345 164549934 239462688 833996727 355681583 376363398 425992701 232582667 880533933 243258506 244485810 648587878 22444671 790836922 292674917 811005087 337696393 174729933 136613531 135364170 349276641 717166854 596879833 350338764 354248469 452882147 408137000 440671081 449780098 71451132 145037225 149279707 338477647 778413374 936839017 841284289 952180496 634809822 539049555 804053396 854251930 425975919 688818123 511495667 743223049 178975315 146585287 472581396 494462355 19540303 722780385 88796620 942134613 37095755 605747402 365019703 262493375 784959908 328867701 905722910 708805754 895873987 103779999 378029521 434298134 476616019 823595156 905239407 359355139 301087115 856691941 662903014 342875337 439471191 221696815 272515183 108089548 475944672 372626692 8786472 960746598 408438594 415160753 669680483 753920932 475148391 659743822 28574795 566991356 538462006 141488183 845345509 562024655 308179752 108973645 600070084 921176308 67919901 109259419 479391292 19359284 447047454 145247764 242785465 301250266 195955170 540310441 193331016 765347756 815351584 529534927 109059335 36805003 84847626 808299568 473627377 149477543 234603144 853001234 600984074 215357002 584327221 431816941 687616460 572545512 540067714 495551778 247435425 45754436 399055068 623057730 416394746 924830509 305726880 622601178 704576548 676241238 84435383 190815702 206193081 358971470 308097302 544609202 175145111 24467152 214560366 843844794 460545405 401225070 945568529 465662682 286546031 503069274 791080686 908697527 312938310 80148126 806042491 663018771 46132130 131743306 208389752 42405566 45618768 557409400 326391986 295160169 790027715 560196016 382283758 720565355 66870524 643137361 653375066 651745052 6864722 690568770 941301726 870575700 179131407 628920489 928926242 211640903 162434624 748282301 290645069 827948587 542935084 477965296 408592596 607059361 236161352 341207818 748822709 897395306 95454677 325214522 190271497 567705316 23684717 423522301 704999229 590993557 422189051 89094857 926829061 13883553 288463001 190507942 22647064 606642066 2921355 235263092 477469184 690490982 940843278 187613007 508278209 295649136 28400164 953682207 43052893 197210905 643976227 429004723 374675450 940752428 279017275 239553193 803469698 548297659 753526627 689270445 498177364 164263236 746733842 976015224 814107087 178704178 549412647 10696050 859476206 895513728 900887648 349215127 749946114 483966863 166389419 623416410 900987015 696552139 222754028 685871796 559912684 841814878 590296885 972860142 380384825 689299832 987190217 164545508 466933424 758736721 243893812 982698720 243974350 295135799 148264212 735465408 643687974 813027253 894832005 762185605 355375991 229636615 32332848 226394837 98964694 401877543 595041856 766589395 696259249 840191858 431507606 507777071 607636412 833324141 729482346 760983555 413656943 148905095 839622944 27952221 386632269 56817046 52505749 766773254 398692356 984729531 62769513 922677199 917065282 689091898 884592040 853842503 345852403 160569868 894192387 578415754 724213703 9099061 824035029 468892300 532893038 362597731 634259172 325559657 258391281 598680277 159659759 151824971 92978813 432996135 601522383 687727480 934253516 202374529 697360288 564427316 652546557 788045310 260296453 537580823 185103465 770012671 283671374 884152267 642269419 664982819 240465912 158981673 493808899 818012812 236498518 143635160 33761995 677482955 789694771 933922358 431879707 928521490 459021228 365334747 836367803 230389615 800817569 238697452 503990389 997804048 513086781 183297462 180066128 286276527 746717700 503311553 554062941 995122015 767694324 264916451 508936456 694784038 373808728 597161902 185211028 844376135 329302504 675662559 865003029 772455157 613189886 69234907 408180867 309169911 487916919 154165483 455882271 864607175 538462718 377932608 636578895 311480597 737669130 445720982 738400639 831720876 626405618 912137964 786988261 241459262 412365909 992203866 525718902 929266832 979198889 66432837 518514848 19748176 824215098 584264559 841370832 98636315 351016005 449577943 73592623 293472994 928313598 947658558 135278779 60733687 180112089 464322240 161816804 273958402 92601297 999738801 122564556 620905708 199163822 130356137 486063140 207381012 662443490 76376261 470529984 895709701 76988829 728174421 31167166 754654086 324049521 468745942 960554181 44529558 598727976 654038030 472624140 243629960 389294696 611721331 953187522 24879439 144399025 540050772 151677153 30770440 541983940 481394625 868085584 969644605 722094360 553875847 847893574 981670941 148431572 508277067 228956640 940672443 150989632 131868258 639345005 766884602 448765926 105000613 211567476 657828873 690815064 940702506 944140211 192667478 324277514 729223493 941529802 404056155 998678496 564717061 623819836 944818790 402510299 905220045 336442564 555356173 893669097 469389312 655259745 237721532 349577938 74787639 815348152 980891713 674222828 861766733 757400591 703076171 769656384 544381940 22085695 773740823 562223729 647245329 990949571 691515188 857573895 969268822 723382722 367970109 50903345 861057994 289677762 788438790 524079138 411108212 404708646 371941512 190495514 6805824 184029161 716249465 627530850 725926596 426371326 695915982 622978407 448616798 153545450 40436902 84791659 40211843 951078743 605112080 601178474 817311011 900494315 354656069 188046032 318361294 92101202 80820585 217353838 456666377 79280256 899769144 374258403 924947011 117477549 475890685 62430121 374119533 226310414 410431331 252440828 417570861 535294551 477689758 350912938 243387171 960404617 698011138 628381197 508208491 218516695 576717082 874591211 202384706 502800350 507638716 692628139 516485761 503769694 104682945 649522871 577520096 602744441 72475621 128814413 471318263 229699362 706089007 798306337 236691933 89778457 675564203 605768051 665182695 929865715 913985932 259711894 691705355 846626869 562583587 879702616 78655419 12339776 646270702 507973034 232864281 24781077 455300683 809650217 518188799 404004003 702469446 848812502 926179990 69561945 663701359 270643438 150152761 892975479 399738548 293087989 316363052 245187839 757387176 664910435 981794197 715897261 446587386 464331695 114390450 648455416 789074982 814966784 688124871 545189369 375371075 586838521 328418351 459474570 573752043 536620102 483627554 224682346 265232485 973823653 232402151 552699278 171978401 310071414 362156611 802232712 770486795 644698379 139139280 876679822 518196778 847215692 544727591 353900459 207839953 887209312 755167302 309798003 145394530 310741533 384642531 917292846 534689339 519056199 761646727 900457304 399840990 803364859 252741866 658376585 139247107 766072387 429769426 393495009 488922416 733748549 78531455 723486048 66723288 41152454 781958417 555254109 427343389 107975270 55139886 147627128 781346511 687869713 435861184 773634740 280100321 992070147 304913314 547272447 741207859 124519904 105008780 866089908 491230285 816159084 912850398 500012881 67434547 470720654 419024343 157577794 887839226 619575156 200466324 111915478 341840834 711475356 317037722 640068027 109715615 491230884 2135732 848759040 642338001 97574910 460532 113651309 43616140 33485703 516925527 729637405 520381629 763797485 410996404 204379093 221289971 56470894 114256670 45216192 453618836 310367099 664276211 200544672 929940085 807310083 342158921 160356196 702572965 947106539 654492865 7567220 359241971 763536470 210973591 640071360 682206507 359497575 330247646 179508146 942643580 458979273 101145876 252182915 539918302 292224342 854022224 46728416 983031742 402677274 650207210 677979402 80193403 622756299 727769242 560701230 666170343 409099042 950784680 535596502 771771022 811725055 989797156 72766770 32155662 350775805 831690543 320700800 513966193 923305289 560459043 714762665 379619368 101019030 226486888 942804187 22554104 649958343 591224880 27298986 545251452 245152157 918886178 743076133 383560296 721189086 415108852 459381207 919565874 489623944 5305621 645941314 10448189 528111539 570695011 563647584 903965164 7098925 661407675 637753884 579954341 584494385 185420382 919293452 73292431 532900221 485748434 961032757 186344881 91948627 606724522 351453474 216116875 410754481 235962989 195875880 489359237 657942921 885031017 500545298 174955188 544020269 44630939 368952240 912807598 992994612 532580846 906877884 658463975 558269924 289266620 700453026 145945361 165421640 853655252 959773731 441951653 21446142 142443205 851284782 561452425 516094858 967074395 456118700 899560457 83663615 436479915 83031693 515591879 266185540 568541310 752178796 155322528 699749970 568081606 85852719 756493816 153942067 757697302 111725724 861727207 423363911 656062748 202069965 527000980 983182291 486481790 631916073 713583273 433396098 506146133 203569306 67801606 398875031 827574669 363187018 957806980 551719533 851682354 527912018 467908690 511669313 695943173 451679201 780863881 772042361 869147394 869577436 304366985 852607056 900842506 820153378 57926194 959564635 670527270 960242417 33311146 438479023 55902910 741477487 655980491 527874114 621497450 394032191 150677100 604176117 819241555 451046797 391651815 24655564 347855068 109346028 391948896 93751805 10942067 819056927 21544188 50201462 860328122 708146553 793090582 234896386 690070371 937128168 876706892 3892474 359820242 655904983 690800822 199887396 740356761 361913121 594525597 89969017 486249696 728283975 270309046 988890920 461237506 415176201 406114565 939437321 661955911 892120237 706939830 948498903 368559189 560406224 171564802 913335284 793259857 67869035 541323306 175697275 655395418 185113972 144594435 307363673 980729234 908348748 348312324 51482039 544497885 121294441 530527111 767042457 680422129 644684893 653769557 837142282 814921144 371031511 922786882 600251603 915498819 621436061 844783173 937536383 2673121 356651163 790063673 277405460 291189768 480820939 936740168 303657160 980301159 279820446 892761519 849344690 754356951 916703219 716994187 942790368 779710341 988281502 283668024 694380789 764933987 988183265 633762892 376227025 863871960 64630282 542438848 221869851 890536767 765840104 187631849 994419916 401974023 258110344 316211818 601823591 423247165 74224662 655513684 9190921 845855699 142752296 175487401 138220850 872152453 982552432 376656712 749343563 957740891 314993929 160181652 351724248 370447605 47534157 279053219 258846165 624271193 668831485 383372745 15280907 607525793 514472779 266412288 432925126 231627097 81044790 18026055 443010070 533662664 203161961 289166132 233207487 67204201 434566669 931978450 641012887 407445967 255274919 150741913 907467954 932159199 615903636 962666052 768524480 944138208 19853289 478873693 841116696 480036303 23470997 259984492 169781046 482516111 232228243 718864296 168477159 99094260 9803761 912000378 924470971 564605721 663809630 803793897 299072696 439233548 466717448 450252412 980798845 656217756 789230598 651195348 314849668 426137517 479504097 949714345 42448378 227909001 818723927 596268571 847109200 933524181 116271844 403043974 354304883 431869492 192933072 453205697 747402756 352486817 523039520 606347645 650641720 56014516 703481511 215807719 253321057 181386876 507195398 748391285 656269486 399733841 622453226 873469039 518878259 481937439 611947517 711625154 491596519 762349492 342107004 845902783 881209191 684336974 248941036 488249646 742009821 512259811 589607572 156847761 600777911 205848744 669785205 725174102 451324816 516165504 501702257 565219924 815111950 597922163 780633162 460568148 275785628 988942193 590894236 100052501 471997773 808809148 778656827 773295918 961610684 672911710 817869470 841890054 662372024 677827367 99477947 362297063 429110725 696195372 552913984 946953366 657455138 101213063 777165832 986736329 90908833 579440438 700273209 714720955 669962164 818219864 364184333 982660582 373264871 928057537 99833722 197900097 956725511 317787699 477527429 628020073 172600738 86889999 768619864 576992911 367474343 41124222 901269294 760354777 552584508 934368692 880710051 548319181 873136453 247337008 526397964 768308676 327826040 257218432 986695549 31624606 457149159 269857736 605453803 503084038 915005792 173417653 630169535 518605257 382087272 492887658 960404234 238135517 281425946 380242428 46707748 315235312 625452806 770524738 813332463 479984338 426771826 847524792 743080899 873783275 499851041 280301883 927886953 149506939 217482346 804693976 533234524 907941840 153066560 526003280 763034149 254386916 102775143 60593915 802033239 792447653 379819611 350776051 720006348 761557684 886486016 121825860 118155033 941756495 152302491 203016692 649247859 524441245 961833804 46582526 56110884 596567475 86602257 279932762 622579017 839540683 394782373 484357068 547845389 863170275 273983621 236087435 648767637 228259613 494326243 195967812 948214864 443948118 279497379 508603231 437311255 202268392 26867869 718833409 820728487 250726292 631916769 305212427 519576460 596818843 703301694 60666981 337708018 638042256 604327 569886516 537753947 906178935 844226439 26924267 652578508 210284826 397412410 496462236 807975746 648529963 33326141 218495733 442498143 800440864 756233375 966302136 242699385 320995710 354921111 887711317 358850955 793896135 975984985 644348183 117693674 646439840 337173211 479761406 14047776 196931262 95454448 34041315 739489015 672561607 165986904 778304690 929493031 821207234 696198692 201529163 444655931 486847573 255270511 4176282 315377937 955389829 719187864 211302970 285178587 466942568 978366744 992073181 90981979 83280024 457331391 303328890 52844540 629062504 338900023 347064115 491668895 535345198 816169691 427499544 642177642 95635772 82834542 929239914 577371865 572387669 512209402 502104882 170896037 141796940 253791252 544388434 91783481 429347221 822614333 568340987 533700010 981691501 229028557 714462643 880002293 586545575 925636992 252983435 986266375 408077803 700581872 542281373 991035567 163277105 383996209 417798584 763883094 327065353 650172388 771943553 9307818 863459752 77025740 593990245 181341368 687029551 34870316 759742444 454860813 759653742 454408956 98947060 761435627 496896674 305193011 138593515 404179653 569511706 322553100 226765502 778860324 130607353 97103755 30770173 963586668 713098851 888032331 526001729 574013171 412657586 946940378 519441121 39908232 21836230 560226357 895700564 974633661 824298745 626611729 574511410 732206230 467319403 95276999 520367144 438318284 930961203 103899382 244293576 868534967 66199618 405725201 519889977 835235717 438782830 840401658 494299504 605411520 927181372 637743684 807030048 301309055 410782013 31666754 313797450 572661813 663709016 873064304 437563754 502585611 339562597 972394100 927111637 227245274 860193693 651381091 968672117 315581353 297141551 860195619 413726556 760969889 939227036 952544395 486499656 719150789 216079467 680696533 599901744 149299405 141443852 663996068 970277264 605752203 881337440 853416731 788633741 498428940 691452777 281244337 789697308 481085874 423747614 541744368 984052703 60250296 706509776 580425683 982448062 216847144 93030709 226630734 19063850 956359351 446228892 66446092 949293239 679548014 118094289 801826464 611599308 158438380 366446127 883023931 903945540 950395179 555148943 962001770 42877318 792412633 60719961 18588393 242761968 674359138 218475203 868695691 735996783 548461540 197482781 537938912 783799291 606402219 803197102 374827110 692247550 442580266 893476473 52059574 195966043 574038138 454429895 448340693 399308136 93184605 68634054 891920516 63196814 100958355 927642133 338790891 143856744 793300723 359288758 660094174 775570088 577377827 723269613 926262647 489817435 216164249 713498740 931430092 933416847 68217024 306777772 828954435 860946892 154453591 856112864 837725700 356347985 769064263 202846604 243804510 151598215 490068404 758368513 541870532 431570532 173699952 360391950 298910833 847793750 358810726 275788615 612524459 155490575 761717234 169719144 64045011 443962834 350993298 545508908 416095087 208291097 596377783 49637293 256820911 536698220 971010677 986960808 151120585 68293798 896196514 556571372 14031030 395323445 172752233 199482621 319592559 107210561 441679189 54527800 179454780 931040145 307976066 626547807 858374169 48536626 62361655 569333463 928161215 10012431 473153387 18502286 799971281 401426425 411531807 749039207 259454587 868397069 254997432 237993657 915881552 489018104 954015449 715438318 182313781 966237062 981015842 574272413 662608612 173128711 582218216 810864760 312791769 497805296 711122263 761000629 8612219 828963889 919072574 451388528 745085965 634191613 509896599 128351525 239313435 745925016 378766955 144075865 325411388 724554570 137437378 296330212 257786789 405532309 78674256 182718700 976468706 100164931 38923122 604216282 184834250 692079533 918240179 574239727 26782544 761294018 475235879 728542029 287809792 252896735 773716651 484862398 612851559 915585376 215965040 758638149 346307292 373267236 600156441 736289835 37493404 318760847 403600171 294820859 147090832 918484386 963060345 111265394 855261636 787921432 855119331 885466035 974863436 364139735 181852958 945390983 525681634 358185921 19272866 867625733 323264457 763626636 294111366 99061291 142428135 569786133 114501954 981822784 458101033 588541411 76296170 568362700 329018563 999038358 808970732 511728214 374533509 429342858 620270544 520031763 392622482 403704064 656425749 458325912 381639539 608994841 987282846 713111439 481202824 990433802 435781294 564235149 185314313 967881511 980296488 7019093 942157323 583618338 668359677 179611540 886247385 696761300 39195986 544382219 412804688 493298393 93672024 783973588 168182640 756000815 195268882 258077024 188706150 593069937 808133922 446229743 335504106 54456400 985946187 946555088 78428222 973779109 740871424 62575043 673063377 207235636 171363984 930796028 299725918 122258069 896660337 983971719 859388899 691107250 542682379 893169224 643241769 829382274 285507580 176004010 862972946 661758592 937291539 768720520 641289659 830423908 281057355 280284045 5648449 689993241 651552039 342798897 133737563 321059748 953480211 775366352 114267435 350358409 137370831 223906402 11875079 106687942 634265466 733062555 901892625 18120534 92621467 260450444 147471897 428147008 746292548 238007350 111569755 275150871 229260147 997580320 571916902 831039812 823855730 148309621 167119076 571829018 577021730 34423227 742333223 185980402 348708906 649494070 650274387 435825383 457594435 691185055 381030533 924153184 120250483 725477052 901105782 451744415 369472544 664385631 231499441 120053572 614930553 84057334 580539452 532874894 939579977 564304967 23836882 95943057 379853941 596467869 574667977 276970701 404703748 131241332 949275033 680807048 183066796 183858186 73073930 778769435 486058198 523730091 657820285 552021599 151730154 383924860 125608141 868853825 659828066 90944255 682089385 929204425 455864155 115709241 896992795 271960439 588767009 811965023 557459992 111949110 225274370 34376525 625533413 823217406 717294935 517094832 89094005 535969743 520695914 539596361 78149504 95791833 406880157 423603299 189123704 230274924 372116240 509080818 953793076 248494370 749641436 794108659 84959868 312228990 233049345 935881194 115374480 294345164 407924650 582768416 779228194 856122373 921078572 633754831 527082330 396069936 793786450 325042522 249468622 559577700 888829760 265133609 690209697 190776004 62873780 498680961 831360317 557365069 31572005 728887263 202633798 635669789 665964269 944855833 883026463 578785519 29758286 795744316 156966748 690982590 599465665 102019629 204387424 842767243 252345842 197786961 618384513 645074013 974803801 117009174 502424901 375806153 40428305 894486189 22330200 602280552 293131063 563763207 977302777 815079180 201009355 715164220 559558151 321385326 690656748 996691301 174322532 264612217 717627046 481109 789655267 888115781 780051860 115344605 217988711 711540931 935425404 89716960 477626386 753996898 659626077 744974333 138809884 992748312 610042059 732105572 685386406 878825389 15425324 274234191 504925751 461668388 827272836 449899468 524564049 448164886 943941302 894346522 622078472 786217287 350685963 789521485 456029724 973651673 634698671 748226903 105044287 994258444 300070073 622533956 490249749 761121819 178358697 254125170 662320943 116763263 912548911 89058831 662483573 708057777 563199487 733998684 945156724 835063738 208603264 643546343 46385111 715948583 95443137 798926243 435014897 197155366 993723438 196938189 592824956 413563532 673186449 871004502 500724359 11104104 612664998 308476002 18059179 990556619 501509060 494836150 270099503 493902574 145202415 821349150 268826526 499279379 756001922 697799635 1208870 121649322 550020540 467164365 534274437 32173196 239693371 533668942 166214861 100252475 837200941 86824834 238595264 925309822 81869301 162135871 453268349 378932598 185779631 516382322 900096536 547304414 242894705 164641718 70449680 870709862 377679544 251242535 91500587 110376288 229290916 14054660 876214725 100912169 274455403 865178821 292127433 186714429 604977827 530468930 85074535 643892386 437783832 526436877 624277989 501077501 887532564 475629708 964510778 808335625 617955872 286901328 233372042 671336033 292865723 233583475 600391437 834817232 36744670 589879731 821340373 46646435 662878122 662732264 407765082 94786384 369079107 668395564 577108689 121853704 86613448 766990534 399045183 271364998 198803986 303351464 309916822 183057422 639216233 300340937 413062665 108671170 953050849 3948411 209108250 535824839 506364568 340038770 127915642 676700195 630362770 289046972 243581498 49280276 19210838 814678993 245878319 537744107 503386037 186115069 170546905 287532249 848510198 281960209 269966943 523122743 590872480 131581227 469300070 202758614 203246982 873734172 928338512 276938762 556732228 210760116 479304469 233013565 9949480 34240278 714199347 663573720 311706243 838895541 144060512 708710589 225033223 314657680 684444089 364733596 546497734 423962705 611127619 719174730 728629714 638238881 722256478 352814738 408991697 704946689 765084391 752484309 931564313 238222653 50465866 7175654 699175578 764884777 68251481 290041934 84181548 649050232 89618045 118556337 510501180 722881827 872927523 722117403 292950687 283419574 262000078 747343375 416136851 213816366 873389699 306287835 964932338 356921962 853739317 853230314 962596449 291469600 838013022 460853640 671287286 92830340 802950566 679225347 526865334 121418205 982854766 645774542 555021923 912042953 509357399 807227633 591500142 711643947 626508786 170877502 683849139 506562432 318723059 322959076 107630838 859784393 510850209 558756187 692440506 978254994 55658819 58490022 836778483 106496143 291247785 470508927 480991483 278090931 900157771 848993758 263111775 162327522 264826793 470120401 361284494 491773399 527128852 756091746 407095230 587907154 660236332 491027666 596592854 593991975 842119492 964825841 390370289 746093398 876744522 880223186 621069557 948330099 497849576 69469712 911203608 132212597 57603182 68589651 235544897 842318765 641007902 997874886 274841372 500764211 494806223 240432791 626631917 222549228 149677109 645122323 488712752 682957343 364724772 21102885 906250993 405654174 51635258 355420797 857514048 185914532 841096718 76952061 735086622 53388280 727604892 920181886 770108669 8891365 547279828 652674695 82255290 744972510 182155320 188067828 794254430 97515031 504500437 492888059 723334999 434633163 683676484 848390376 113393612 846174114 309866109 367750827 723894744 391228141 972548893 733673839 598816910 143022519 225739803 23335397 53861656 738833070 247280814 123747117 201813467 915275629 121975508 211520017 16285701 234401466 665283517 776137951 708200083 999524789 682704708 952123226 398697939 95153955 492638922 354755873 972087347 908948004 707521675 930639896 377653264 454092556 226485906 196501384 273187996 964303329 51154078 898493737 825909985 70589294 458016310 217619764 564788100 642668218 61283282 610445486 72086453 892306533 59953417 24072288 393928864 544736573 506811582 84211634 771162947 862715796 784513820 835491419 975467396 373522117 843521457 442585646 884711928 270344031 485869191 313856875 330414208 833730957 70707173 655896401 724076221 447399375 25767034 725349421 286880971 484674898 59305126 27333502 55766836 418088702 739284322 63245589 583567077 801549485 949066256 55507568 247267223 58322582 740673868 551751094 239042511 878061135 226540031 55739884 739681287 257036331 478252948 620296756 937426254 481358617 304036381 182759051 316438247 450705350 863452624 926997965 776371826 342519031 833124801 590023605 767280995 873094771 9627266 231204655 330840710 424141243 994256954 578116726 11969308 225595964 50165171 854199527 289004168 587543293 221440460 533216330 991910047 299083413 225123406 647179681 945965327 790749834 789212024 22249853 223127203 199687781 112090709 111073219 23063785 5549223 4397313 838409428 86699960 77449499 108673212 141627266 174058012 411610606 749744415 982188534 39225354 911681714 906872515 388875871 249031389 857612388 542008135 30883606 614046859 697754183 717436552 118069542 2156731 22748477 488808240 388066956 50137008 785803535 638620153 300561134 95107734 383230393 110474216 965825471 461832022 893924598 332615569 441619218 658691272 173167763 814541587 410429369 983458675 275948822 641836974 157279682 907618749 287847126 90831604 645764870 403885682 322361247 726378470 7509037 82002927 363393239 700993311 813706731 200212875 916626885 936483393 129583992 63412547 275315047 545133848 292973754 62134983 31083489 167556553 514242793 901597418 670006064 378340811 918942835 579274053 822804687 952079640 517855578 132370135 700275699 53110838 186417307 35029464 168105828 973317758 688170442 321269404 802155224 212025659 638472603 848905887 942656824 851172465 622576718 686954362 84532114 650150386 283714182 271159369 350081128 241626520 888664810 525297148 901257233 368294118 97144606 126082423 280965329 461297502 339836515 288342509 408797676 505023761 685882029 456590070 861064314 956741035 663540719 432524837 843629274 796370647 453889036 256647343 637559800 749737469 366146985 761528361 320632265 457241680 126836591 173545731 846898488 478242257 352830712 569003369 442955325 874598730 107577066 644037048 255972951 476578644 255534216 57303134 272753621 665414282 286360123 44086875 118838432 73852384 835696244 382566878 829464465 851342940 112654415 332906424 78383752 601312389 841789109 630198150 639154001 162272267 383261864 86708255 744465377 339349367 230710280 752807591 177650096 208892796 588042186 649306706 687047664 319649558 10252900 133072595 2729679 315829280 237122467 158885923 521729565 946405980 615816634 690795944 87289898 460858823 788666635 298753654 771707448 978818230 142446104 58342139 822615214 923845703 645623322 537063358 918729628 579674822 329518865 95653012 883775058 558836621 356851309 823276336 711418917 323517705 779070093 472531766 999330608 297065703 389397871 646742625 210088849 479429930 751447748 37213309 521075964 797124504 357932588 585219559 627520035 684924197 154741002 892089844 718467103 35796981 600915057 104818456 728628137 716719386 167276180 466216090 146808119 939858129 836149796 892596281 366962200 483199523 10695149 123221191 375802740 286154165 96843812 744482101 712913375 995155675 251142851 492540974 50302714 30236246 550997995 832715942 537053052 296563804 145496412 52898674 578894356 78142929 833579306 399494349 568660823 777093057 979618438 284850805 263153394 275415214 907703823 430468586 172595832 4684012 488343288 766569368 675772278 176124658 513823240 255982908 134169440 492914202 163600669 149616121 552015638 80242943 808780708 400354993 681210631 312502973 715663279 785492333 982695143 291827247 110007537 669670253 874962168 985804431 496819663 251667809 988068431 799598112 440146431 761222916 442201319 939010473 506171781 605325528 171902197 816053464 831670047 254036860 948983414 81114143 793517821 454623350 838406140 834614881 363793229 864288404 374816361 504477413 706959497 76950373 238356555 704786699 482355861 150508083 753135795 966073946 646133057 369781538 824817818 271921760 321454992 130352464 382846556 94883690 673375792 659518688 288824136 540930578 849176217 199885393 383635536 722157563 815610898 950420609 80240257 15867196 582029567 196383486 287976552 474227294 427381565 558692865 741492674 567322139 247164042 372303097 423981652 447663569 543752485 566713781 283971397 312307547 687476337 694248087 922111980 397211506 948454234 415555981 998851384 523115982 585159581 66377921 81677716 856485707 45456631 148821155 822490939 576564904 699833545 413813331 752323387 742514744 163488760 707540960 879354834 774508008 759636286 785077748 408148127 803905263 780410113 311183850 496423382 931151798 110036211 126993589 9545037 408082304 214106735 290395235 403346075 542356113 436874302 121778402 238934596 419895419 289408240 403080449 1161312 950017516 739520123 64403715 225202184 215286731 855041332 235869144 628804873 117019012 595744254 755020903 37120109 833313686 157040280 274059199 495870053 717922026 896004400 235109823 166886605 793647148 443237080 647317965 720063149 183068277 987692295 428585242 380052014 434523898 606865296 505200422 745279278 538901083 204124423 15065223 462099739 47610765 267016242 889754196 115755760 83656879 378337048 741792760 413979901 147887475 654873360 949012679 49211708 708668790 149698342 415952803 411604463 898085411 799974997 563717767 217635194 111915776 84622288 424570919 368967410 5180027 317250117 244040660 761083699 504937007 885796205 532042859 353928112 611173780 92868422 570215923 40667423 304848466 137792214 15121836 385463449 563497071 414501944 538832477 433453653 600775096 590609192 604844945 57156880 414735477 386171704 98159588 451151173 848987834 906287365 942060912 362365274 396408024 858891240 316069542 857521644 62092591 434301826 176074213 769652002 438371099 997496728 817889715 219268695 337623137 39481154 186104941 729509540 652325403 680332612 522900962 384625004 538276709 565060347 147644338 55405004 566152135 851774773 202770293 384621252 991052160 25179092 712028368 295014384 136892123 363919932 4540996 102054777 799402407 228830338 750422879 367249434 521411081 106139733 189154691 454051828 756239510 589026107 384618802 28948572 76376873 769147989 688992054 403656371 922622440 180555063 780934713 501747720 970950153 868504148 7160268 579000792 183130798 853895939 698518356 268491928 298316668 694021715 997541284 170908655 22166318 116799439 192286061 923989481 173369536 544248095 151526944 606118129 664806747 173852089 121134339 590260864 639212583 461156446 827712708 761483211 685876168 453619521 537142624 533706672 223052135 396770605 7717700 444080992 876710028 787229802 475074450 71692590 408554184 804988968 292599341 65502040 720158536 89463236 574198236 112595629 503035137 296779021 842289616 375095519 864096319 938624992 112477380 710872503 298869991 424173026 18664178 429421380 453248191 118643698 365382161 225108003 833622169 357981219 289398428 783070692 173178579 83887642 879348663 626408927 575831632 249961321 636696963 830760516 99219037 126867002 503994486 687681738 991816776 164366964 728174045 628913957 789236663 868987786 799225787 864711003 204860230 635782414 469419869 69420801 575848301 270776972 65052567 425535789 952392887 480101392 651712314 492586685 544454726 353633316 248194973 815948153 134637400 116528207 10279482 671195457 101066015 830812493 170203718 380815207 361856355 973217149 964306048 775292405 720928964 707381837 137984929 355253347 759337987 922058768 596930407 905190433 199919652 264839864 374103764 812054829 506488256 848529643 299435413 329504787 802739471 853903457 198046613 462550877 9783087 172288915 215506272 235829867 607876173 77245275 564911919 831626003 879680421 663100467 524038421 540594384 430932133 92266156 21296468 83652518 355511724 45591803 390395499 63447571 744258748 14400820 132483755 372186930 693429901 326746489 793434301 351695692 930667462 962153986 562507370 947982181 39298741 155466590 129864186 604535722 540164706 436778506 439440418 777705262 174967360 540711551 588233558 792807223 264975544 126255607 581194418 522253800 962381718 335059163 998400761 734046757 518179517 36365677 919720556 15629911 468783630 515680575 179056489 201969645 948704952 817601598 273108331 307899098 147716078 507339819 670170665 990784907 709572654 257352586 143831044 119017460 177149893 83805699 47748057 259554760 720896546 11047457 866866008 670464271 21510293 259794772 20927802 837739698 526015144 294242204 758894834 810166166 333467196 219095121 726491783 84174530 996666719 194624010 807144776 212597177 28974547 518478758 492990871 529368819 13424331 55632596 224588045 397884593 620934642 857630647 610352609 410582504 515712879 755914857 258463968 838536898 150601029 520346026 532302200 831072801 322883259 710464679 153332867 654853880 750337644 631557395 225940565 721370747 500697170 903338150 551047283 176162251 610791063 311715728 21750072 919998833 225003335 445069386 517992142 788352138 432977553 109249562 991516612 807826528 805943674 811228711 853726135 888106527 915382559 282548466 671688119 16757242 656252678 873341713 591357053 120188117 104779291 860504865 232836417 345219265 904771471 182755974 945674286 870211038 758028561 902366799 724266077 264545373 220334210 53028238 363785313 230020853 133113243 911419965 437985520 724684483 188725579 707251920 191054175 75313225 226570392 843280560 434950754 439127033 556878953 876671646 154373449 916156812 147039761 725385393 924356145 751529623 894436187 946235071 239107976 948708012 955810940 160704261 939220982 772713433 979279312 93891368 239895177 390500078 191414517 350727439 580163979 697197281 301662401 558524641 774918775 370308469 177656287 685097933 996959183 822472282 309972582 934893721 671961627 696307073 579545749 884528136 549610563 55615744 344977350 98574013 222819562 702689221 478586072 993885775 241682809 827267472 805073947 555601705 319632245 642657658 382050556 108717984 93824249 858521125 501644192 792879271 91457609 604995746 389811845 564903225 433159897 633743021 455253139 545321419 878495395 306328683 617703999 482038236 316405378 42277342 488218917 394795258 973338735 472364728 622641872 613257471 599887893 899261010 805838868 411021091 10747212 888087058 725510900 561761168 777238647 934540755 479504157 403652699 135311376 436344394 843155129 758871522 660704638 625471400 785509690 951659551 198253783 417463509 504150385 9770955 809314401 493053988 868722171 48698738 756966123 282328986 478617882 778567845 96065413 680067147 457269223 769117180 131171907 443235466 663496637 605782632 343438705 807252852 552127517 471588108 411075525 765181634 852989063 608639463 738192530 887014086 341190748 194547751 674831986 403912822 313989716 846204463 678859243 446164930 270121734 826019590 679935795 955918352 273452762 927620062 439641834 405030572 23294578 366210942 435134922 766132944 276009842 582454854 410362428 476868413 500423598 856376831 218503610 429809818 928699104 859328229 372720630 42084646 886325775 767796579 509900449 867335857 240841842 934646478 925908333 529660796 282237596 136807017 488783310 748920279 659992907 423289587 84141357 600088237 267998539 886346592 808962207 651170059 853111953 153458097 638599943 474020347 786814931 310428253 775183700 98324715 241184757 260525671 334691471 625597487 304470948 987407996 972314776 496451674 380609048 848837252 874044864 837138110 576906753 681153054 908927392 187775330 642994786 340892279 95309763 913876636 374433596 864316975 572207282 574897839 509424489 360763180 389179580 919677931 412497652 249695075 283330390 138523260 355958753 777327575 993351184 525369405 340418283 513676165 216930716 204877315 583735945 353493359 692987073 628224684 233314845 109769733 529146833 175307005 981108179 256124065 591858640 917647829 315018265 696684411 617036 891682726 225701267 217077185 278142472 673154728 890755221 522519183 790211113 993633375 693008565 723576738 707622630 883469585 464401749 608538823 352963269 678576934 965738210 150182572 620931312 30216799 922641847 912785358 159446276 883459295 136266872 69237901 594923493 140697122 979024943 494225611 678073520 785050744 773621794 844928266 383112681 214832398 67165319 191572629 529100502 508667603 387692750 781768278 347039557 955560073 787697290 290558186 855138037 326149687 107484416 174365023 136081936 441019318 367362399 702401906 120504834 365988091 302295568 356941395 798856232 640445859 771388026 183703744 155912808 742361184 86492042 692954678 442124249 866488016 993768348 506555515 846230632 599079673 718901517 785087748 714945531 986191714 424047472 908839500 712054844 24546883 185778658 720415434 670653245 403319879 795512806 267292925 419475728 790251751 483265701 8187817 285199938 450037336 345199187 214019015 248115021 711224389 593096119 719182282 222633990 541085390 167883276 370064772 958739197 849271507 230747600 801271814 327034307 681530405 202525887 437350530 514585077 941668294 103551018 924009787 954483105 891848446 260254395 479385360 292847728 251380700 590904983 933118411 124384378 91247537 733635889 727234200 897399928 145286840 696992888 273639511 954247786 255302504 142231505 887356815 440670482 92537832 883537005 660373866 318568676 64169523 247340962 841188697 688370223 321529091 376161524 466593745 523120526 611968647 918964104 208023048 771401053 426812092 835457608 157938386 541186079 937441091 395164722 232888849 417280839 319969163 701727240 221553999 673607729 84513313 600348855 889341489 907142727 30343208 518647268 248297724 51233090 471885855 201764273 392255143 939399612 803178142 745842873 447933910 106707562 386250477 503878457 995698619 186560659 799644130 570633877 566790411 268713284 845426603 996471290 198632721 659093608 60600089 92112643 978971910 961569441 812443945 490917966 781216243 710470551 256172921 722205329 819826851 799435618 749492890 29763928 189100607 133796745 734348285 314311084 915013550 704887628 497865373 288727939 752932701 682258289 441730614 433074982 370257257 654532409 761161936 548188168 416926466 273559964 172614790 517732494 478339770 142393264 980454424 444602255 920324813 77546225 676685688 929456394 886968273 388066725 719436287 58201921 393662560 168935274 911209895 952634972 221873315 927232819 118682286 856455942 207619269 45631363 944792309 570894845 85242626 967945495 681474049 6763975 143954476 126899239 211310214 226705369 893180354 758337236 424318923 445323851 162984525 751378378 137173977 446969383 683838032 630387377 830035819 891635663 64865500 997649792 686879308 858396071 669375336 924123571 599640934 968316661 800996806 902448050 733109457 695308393 749269869 931737995 647386635 131093770 654508720 735720449 284343316 67214573 929990413 882198986 929815062 892451611 253015401 714597775 380350349 652739011 17738644 467756198 189011389 766171745 780399320 125832348 720750139 944744355 389929226 111184141 496937954 919896420 401223861 437047743 520207105 167220126 458818022 611351453 143315038 882054180 253315687 180261615 701430370 667339825 389601740 672721275 390608138 936640739 398256180 503377663 563069666 313646821 480053544 315828787 401959881 67458082 833905604 973452890 877788790 967829683 178913045 384789466 341352602 79686493 347115345 613199174 359621703 629499085 699396204 566181096 122206260 296953320 732513360 948521366 751675147 254129555 64136556 848628286 928968717 930815050 806271332 799941910 335852606 267161270 212973208 821091313 179179167 11583504 157987470 903270007 135373988 141111463 861042490 47585266 152913833 404593019 171764336 205632823 455539888 707979365 932774286 323533441 363265696 325305097 745463250 252919207 403980367 740013270 827901383 830111949 186576354 923042962 828968101 798715650 733572126 744494586 647667320 434189512 333913045 933542691 819939321 110607750 789163023 936700773 677205472 96737165 255367089 757595319 954063411 241928453 633766058 38609614 481606132 806983634 137146262 535959756 644534496 51948530 382581803 43458439 26667105 30944624 205128498 161202758 938417822 90720275 816328270 823488635 145649115 398135853 443197794 862535209 284205869 719889653 609628786 577144932 791012017 106214173 949966762 41394750 696683619 97444187 64832799 716588211 576472492 718522648 170142965 83469430 341504967 941897656 487642810 947426637 223171016 642508484 507006637 538296407 952792970 309057378 481070530 697148196 727950778 961087671 976577818 219018654 536257072 90379722 121237656 420781897 731444288 595343905 144285425 466720980 252776907 749280946 875746287 37034426 539149480 704077496 611440312 373810279 232499876 758002219 534272549 164279368 600850304 364297855 96627884 251443631 434924969 218642977 717479968 414275094 396506063 330944056 996453197 326494801 492580167 93947473 385192559 72979194 493443231 645842386 522671549 396155927 526595726 74137624 117078847 238948787 635100426 702828820 442569594 181887170 5511221 160926366 598977868 536674165 624710123 650226875 262953056 202258733 176274074 314173929 481422890 664388806 195465835 436045459 399423292 454879594 470857914 257306969 135643705 363235209 706433894 575062309 699796506 763115682 191221995 466601295 151647175 536752252 482727801 529366989 991536078 962345455 619027842 606864907 14218128 959790525 751670564 896622590 72369671 667435574 240055822 305683468 533831918 273308196 169528477 118523 160512784 17183991 683641088 732887179 177907095 263198748 209983865 824452490 289382279 66487212 56039221 916815221 900849353 666217385 702885255 279794223 629946206 855248439 839244038 321949710 537525290 700804426 404236523 931617814 749800913 33416898 359581791 531384236 500484105 716087506 767543344 971311651 314463647 370711990 660876533 474037404 492795746 59012671 60305903 201148309 505106192 295850794 816649128 715696030 531326495 917173442 693245400 290398213 684309799 533482398 73115604 838949638 845256610 498722614 465931791 315596011 45762033 824966000 683334900 281636204 856227955 435853709 580141997 455300094 753580758 36124259 367052353 419864107 932620836 198105533 195758672 937815686 421338361 451529619 625033092 727879684 149551177 859360699 25565707 481838738 992166278 252796871 895843626 812543651 554504249 243753260 320428539 256718527 589102392 803435574 762013509 981579309 126417071 93916907 923372633 544457056 202885259 723270485 512879457 305185103 284414903 443622183 227727639 594499761 301956951 978215547 821797047 320031508 975703521 770452641 674644203 59552869 442309004 222331382 869160564 757231126 967319554 970449632 999621288 314049566 328007200 283384208 633510516 394047816 74354372 980401532 365955672 187426710 6659744 909784862 63419069 536338108 320717438 551271748 584368273 172235096 720533758 374762950 259885472 6095703 184536144 879751044 794180680 631555185 494392543 149156626 470557013 596107324 217833747 518035772 875142037 934920007 806162490 869685507 400087874 402926234 724438782 661938157 143812209 31194391 990442125 576366111 612766470 933204242 118721816 236359795 436564968 136097023 130516135 59644235 272297538 56514323 437554426 703094339 473738381 806826658 205700689 241925563 981530419 630724978 731492107 314209152 872133153 904942522 166764013 224865137 734441860 702200802 501263836 897943326 558970994 282136418 303977194 970081724 776227338 336407545 201954051 439165792 879708362 325101281 717684409 758963994 580076735 441432923 974939001 537163265 691042810 29413508 259655595 322072366 797217806 442791129 182031599 482762709 789073856 29999647 361867491 939730248 621569599 619947092 560699283 995852356 180035906 19092815 554237692 912899223 452032021 18467998 895804772 912486631 514709819 418081871 941612797 166214364 929732347 487368205 459632131 389342565 601012669 515388784 162845140 41539689 630779498 870077334 753626671 444428307 743051192 713248437 408531967 327855479 34619710 769084753 838869740 896537861 454265665 616178016 221499343 225638804 190778554 12361248 764181935 284392239 370335867 640216447 458661502 26315156 572008288 855842765 339241016 304356127 142372904 581362928 93241328 109359037 247523780 197581932 286986110 155460126 283858711 227609651 689744985 908303065 11678259 526074771 387268779 810537774 689302022 551272064 640370330 977370735 726152620 478820911 225831879 93543490 386320923 908215468 638996703 202173978 407781307 284570503 542766053 968140411 555131516 629190356 274533969 21915192 362849051 193625779 604000767 282096184 539021962 94946800 641386504 313658635 95779361 165801950 221003234 79062542 555079707 755107660 41514060 13940434 304056920 45667421 458986614 875023370 433911901 191287525 631204329 79362241 236184669 902697136 172697753 20682312 789356646 867342635 232126837 882777047 887528199 421791841 666749365 504541578 290007821 444875944 447259178 673131942 25949026 263311935 74779697 89310240 493760539 319637117 382069574 364656227 92365681 60048217 429992717 209614714 263282935 816945688 439076799 11776964 861299843 16553528 955580891 492410171 734791836 170269582 668636033 596386288 615362980 39951585 391502784 109178171 679906692 843012705 278580642 393304015 180024564 68079185 732773935 633349928 16070009 381841647 85383972 195767427 873833879 904156892 409073069 621300583 317273353 350324332 860611586 552803151 891740056 328983197 673443439 385872014 900457862 560408756 17018307 924043059 868817355 284725473 480382360 768337196 189022323 10812612 284933982 42137320 167542632 380349605 2907336 764286949 899344769 102363391 815275307 661232620 963530977 594260287 406629864 618698743 14069689 662255447 104966849 574967083 635520751 568194445 999793867 272532668 543889006 956097944 737205380 10997513 623192740 976050709 709985927 161849004 466113013 683619380 595631567 992046781 585202425 176960547 95864488 880573412 298600977 66786285 783738526 56935387 185353352 571699217 334466654 104220124 70826254 846298791 799826569 556608231 68002432 639848482 684496373 729072673 449053955 753629243 621836736 292558429 572722367 273931371 292988477 180255549 899943055 485103339 881386984 189828058 616032387 679892260 741148741 45264990 762224053 810472406 473874377 297600755 70792203 123254515 401934898 986475258 742589193 962354485 746900279 678737672 828513635 427876511 361203807 896234886 260955535 762783570 756188645 459974885 225084595 104889839 851819572 612244589 46687906 787779378 593304449 540055584 207425238 796874565 572568890 75984324 353565499 870741692 462954966 990510748 300779321 889784163 347593687 990973181 785708649 588156111 431169731 408032946 234795992 425858149 554554281 923756108 474027913 693454304 777995609 358068295 110119856 214685770 776451836 976239397 124540489 349005516 22946741 127641933 408412477 99545640 795037976 830144609 910501149 615742054 903086836 84142396 849462056 238231906 596482627 122481312 676892628 663831458 243126826 717297586 779859273 339224009 306267735 45488871 989003449 781032291 874267742 767472575 920041448 561435886 859505366 134794807 460672397 644551850 203147658 172750350 663762719 43344811 286136006 928442154 68218091 691728567 276723554 37906549 11698371 585759891 536319757 29934543 653115140 93653884 574283015 66814960 250317340 491018685 654171607 370743978 663813668 643068204 925264646 136042602 180739510 563617404 332731352 970010772 70952736 218910589 992921936 443061964 878618212 316995246 89659656 129244292 684666799 762687715 224313748 387293594 510598766 590416788 741261223 704467590 669751824 312427370 581556610 941183119 940069837 175241965 817996663 533505147 490758878 76885793 752008271 54563954 880695259 726194520 401844750 660305372 118780274 454748521 473790148 625547008 446815417 696437124 389942545 833123994 193014716 150250753 93914339 788316362 369879009 190036941 219122494 698858411 509858498 182637643 293034963 801464377 796198236 448119694 628208463 121061569 298863567 558213604 417852962 759466229 163155449 920778970 504366846 802801398 91093100 363338416 848358121 426914325 38301230 49726123 866614933 487652569 389349076 202550410 202163631 176443331 545816378 853576071 178026330 172747187 403045819 871104250 678349311 147649481 821792673 526924355 46022702 765515871 429668267 634461262 397376633 550864518 856945975 107360630 9473523 569906099 294534383 86077056 520116195 197467046 332061601 777969368 750758263 174745533 943923963 20375694 288324612 689941967 490222477 331052593 789103063 18924951 324652121 677617553 880812937 621173338 823741267 131463584 310909708 752925536 864385046 872325959 776328194 17046184 728021354 821033858 82054208 204712483 584686152 481697701 408419665 343026340 682700853 569159213 240572340 985493354 865553961 966339833 134067474 214370558 259719223 218879880 834678173 334259091 635542674 600874063 761746635 565645913 950311341 971715895 563657170 750113296 343782546 274972927 801293403 706783192 685613941 326261504 164226329 352220015 391020166 407459529 35899143 803116890 662900968 128941244 192674468 21307373 124259389 583922316 994058548 294728712 145769967 286108109 788700520 969775054 662620358 984712685 157386210 263378069 762288671 913589454 131759612 866580868 517079516 523705319 113382743 161201184 934391347 546887619 441543003 767293469 72175117 142179142 944788989 61573153 618575034 615505667 573481517 167460975 157692690 399386168 475107669 494631529 729171271 241001159 438888045 345124552 319811628 718306064 652085756 280177780 908929776 297327704 395752507 89402168 516735685 226371355 649774378 486615523 336180402 24164943 764046431 246274433 931644786 819698715 875685130 117118383 984747862 412239170 878472584 872849070 354395584 760653739 257208724 612337519 638986964 754383561 641655731 86540639 966411317 797274119 627833498 922791791 771622139 819852950 644502706 948714468 133068293 843986811 834556093 629311570 746010744 857213359 379268595 554667795 577150501 66121429 495717690 735253491 898270867 72151990 422333605 264796840 484667867 878152807 969748482 125174393 294295762 409264627 409732263 736414042 633510073 188608677 555244928 982082577 123207996 967849012 147445474 793513846 219765949 267212846 713315685 20504575 595668227 626937784 557787062 5455693 116580782 163576927 211301279 64549828 923955057 897685139 58232489 270261082 322597042 984409606 257183223 683201348 868205927 299125332 46310839 315714857 242465590 614548729 309750257 425562168 132378009 380696671 159218918 37721152 740131281 832531997 729542657 183470453 63202201 738275698 906101149 422142082 824598815 2030423 82379893 470695875 358675844 157678994 230804026 189038926 115179548 738052343 531298867 299967933 202995585 817977925 866569285 999359881 562887087 922959122 980597508 81629514 339244303 554826471 22566250 906524280 960856792 690927924 883200473 762210762 573708412 447806390 182905151 437759944 918049854 735926590 339530903 597605295 868958291 274494739 153356100 320664579 694138022 549198546 514353774 771007646 674275825 140828388 486002255 837663533 106541905 74205068 587277826 217171857 222013092 739202797 43559609 359355953 665699067 159872702 591540275 913845363 993400543 117697908 970808953 650004136 650968696 663906185 705562330 999995724 39867702 443812225 613218353 72314612 462333312 602403202 650701200 311208141 359513526 40626150 354523131 547321413 166215519 956456894 329445406 151795218 709183318 605159937 758194277 226258794 30007788 333344188 716078309 137535858 785640808 986928484 973262262 379221160 852119826 277926359 12328420 491699821 496679231 136945639 979170666 225025075 115816016 582907545 791029594 191277871 155076978 311567661 455161036 53775268 301225951 1744494 407880370 231009572 818295605 159170364 75352324 434095934 769150824 831882652 163988997 854127555 196254492 647858907 417115359 727360821 533734568 575943259 867322802 739832362 266254641 256851368 243189377 868000417 264266326 614800278 192072908 199061177 851234994 788861802 900571468 446923615 685619023 133681796 212544202 363792661 872166495 951537875 784298700 743096301 619594303 573495852 91920028 370949545 372254913 771417949 616203262 826035624 842305797 301768348 772713718 505937711 916612832 601667306 806335870 419718597 42000771 589335748 20122124 399662158 54449980 938607396 328155703 831895838 798702664 728754375 839160650 358091474 151799389 860577205 112335940 852881649 356958926 853328838 572684945 620462419 404946838 530412281 209014976 737656290 110329035 970077339 374883154 371165514 328426190 620741721 906160243 983920430 531278477 744215126 431948125 70388283 802622168 423719017 939777365 451367041 78770689 299524687 992036891 327664979 69868073 669540042 448459797 657082899 484612809 142456916 26888567 999368929 730396842 623755624 679067380 538202579 434442393 209937447 680792777 527723437 766217610 477358229 148786113 81965615 187940359 41580693 838090503 638512928 460736716 996694791 382511335 535222075 920026936 166480850 474578570 777124104 740800046 974961213 882464827 333180947 110131595 976661909 645488146 138784450 27570267 660281808 937270955 218983368 334708122 493796491 46966006 209177332 928233311 563836445 247845714 4988840 906449290 207310070 457249165 328424012 82171311 31439197 907175248 836437851 73548858 289553650 197192314 39893808 849866651 332737604 92447078 893518232 752946010 547510189 893729370 619154554 170340780 807700693 3390740 277063357 96771850 313732981 253839489 366767383 3518693 653127494 761904812 666575624 644872919 462701751 554542429 469272670 554436518 336572498 819546453 240469009 418063142 496570590 441708546 136168387 892041627 609439291 628325051 874740983 487540151 660611884 772874716 503964 410946484 32188895 54773864 59506656 568238791 419546604 773664556 796663750 624804994 486444756 406941350 553563405 230349231 960214147 686138424 624397879 237394657 411833668 640184941 608224871 642212960 1120011 2797435 523422830 373664438 791035126 584386689 52580457 772489308 358303640 368403338 872701261 158791082 185950389 811047447 92722662 748628337 170834585 820647512 542264567 635482011 490785972 43179116 204493805 299008865 80295626 750220103 54194596 852012534 330910005 454821774 95870481 580765845 924617437 457056409 107610700 556202990 675071476 718169355 29251582 125297169 23830065 201698366 589722066 867989092 154347290 895450754 235803669 372609530 999546599 125201759 681891721 452983279 398067186 458839869 314402502 252193662 934060563 317224412 922987208 512691751 258741144 329359203 772951245 545324040 526579664 894626255 302218472 848332975 48951242 195075517 951918066 331671848 752148644 629635225 462201359 796234588 979221689 666709793 901356691 832935648 639767121 243605556 897394256 184740635 90775570 422125062 675121386 998046066 868073874 850950836 240232064 235976457 147689175 193839860 694923721 592691786 644832942 63620053 736668841 179072171 412244297 867141689 341202768 766338685 42781549 79000753 311186766 704009569 426489375 319898662 989197261 293251694 911008551 471315264 787436767 973959093 566219595 50655387 516537996 16458369 634210776 797270866 164529726 83696760 583786831 92315001 560480939 193610027 108048503 247413835 486035094 751454672 484316640 698000801 495910776 805662179 633944820 316847456 534749905 536780210 392901664 295349848 372776695 29575438 810524279 441664010 352082568 235058753 22529481 252845541 536917099 633022750 988127393 629684252 83082073 898639826 490758181 267265902 884623013 368666740 786020213 340605535 594861275 941407990 658603134 191856875 788887353 847698060 319696540 751337057 882018828 161101105 543615499 558504310 103303594 940129482 87460015 210260429 329877046 844818121 669435924 528808770 49020321 126989807 26373216 438139003 77425626 832783410 885081400 819482451 310004076 564856567 870602579 624014164 897046792 972868180 946549708 579781632 164586910 887823739 827338034 98836924 854290247 560132209 933494140 843082756 420237536 412082366 873744348 672080718 788163261 732826164 737717877 748769615 500094934 696217194 261556682 208895804 455046913 348424465 755842416 682829077 842466796 566117077 538137728 157352699 357947249 754498006 195972884 919407897 861908207 658172251 52766292 235821437 36265397 387511313 243542940 172950278 981214981 593011529 448081051 492082863 610083399 92157953 425490739 460645333 568354059 62460976 474729225 250392430 311934892 277294854 159775404 768967399 412718426 438705417 393920059 641040625 921331124 279985134 39074184 513293168 282634414 143272709 1321739 325607146 794079 860777517 620588647 217500546 643464093 861634104 383554403 861068969 212770115 455455600 116109100 592822509 321491127 403650226 674774391 265037575 279801108 957892240 435869796 546222606 396283154 948158685 940170510 222191711 1620294 435002485 807484371 987332450 448777714 503439456 913928576 813773196 35300779 381927189 445895733 776023396 429318433 986390634 469238151 715198538 184913269 234098865 105777990 579317007 354803421 880462565 993740899 50475099 155569329 25408796 599217981 657758226 896044197 639497130 511660602 283401359 96934326 683495667 694339612 573890045 310258401 113887510 125059903 212695586 641128888 538936807 269251677 866676387 403640190 937693412 597299627 73164782 124990365 56930094 589857214 100961760 876211935 101705038 604605635 500981869 925947907 77567787 657608322 548712657 336733916 767242443 437346940 245319080 687792284 785933392 387256479 84743653 832244441 235449506 170673445 10459445 882679205 53679923 576096719 89999954 494803689 208594075 553539430 782224971 304340269 21313126 908854246 598892757 692377407 808893828 654133038 753713532 131890173 731161514 295456074 896511311 397173411 651941498 322885445 264097583 828789468 342451690 304976745 97884698 789245074 410490400 554412432 409084098 629102337 20430210 660020117 789353169 897596667 71564259 437857079 389219884 859701843 854194308 982634928 707045456 346126833 744031777 331188554 131363640 350997220 535927059 497566466 712181071 511440081 406554552 461902835 73015196 197238765 332647953 775983952 432992058 703285731 730071387 474637407 457761699 777915830 661398469 6161081 495544939 388993374 297926950 642751972 907447160 721732262 735153563 437848804 343134459 261535999 982038966 174866328 90794644 926639429 538384962 256147793 340157128 473236374 76991271 330860288 869753499 606632422 909058940 53551898 675252076 27029749 394315667 623248321 643079309 408000502 727482405 441369510 11042678 959802859 80570103 851165268 590353723 341388571 364136616 582153337 244562035 528659946 346227634 451096469 962127005 516042941 557257207 750425041 390816360 110297176 162499962 38735094 133164246 318978859 449786160 370394556 170680671 378005335 505497169 345487261 731668919 583225365 247843170 599083900 352461284 196549935 433176347 90868313 637159241 536161127 889370401 499196195 287603892 897088309 599258548 375119358 620293927 904394928 772103272 422899705 963440016 236545760 793065571 133868589 635946155 360470046 128497481 439786877 155155648 898315606 923249539 108514192 781483425 947413481 717790339 955130046 966214099 62222563 496356845 861123173 837577885 468171544 971587662 807538436 15808271 573367572 710491836 913574041 56424023 655862099 762253426 423052060 20293348 958024669 969903743 308162447 911505755 376670717 885955019 397118774 482151599 729263388 151435386 434547362 192408005 124157007 420914984 776075119 832610100 464891654 985857566 19533232 808574588 172750954 884452164 840065877 638033407 926471222 163400294 15105259 649561209 929574278 363582422 242432683 957279311 369514738 891416605 810519243 451945403 940071924 149867346 275289026 793821679 357559953 388281229 929633280 857277172 882634598 694641088 972063448 47823211 837442899 534047667 958645775 785061579 412046046 97026935 535967694 715071606 29945296 203756065 570583921 703772251 992674048 29679617 180681593 716297200 324490499 989583731 330032817 588339430 904087352 925733335 377536444 39349004 259863772 416529426 25036363 413796698 968428624 701884752 627916894 681117014 908600315 682318026 178048921 6558253 801863019 909790639 40291505 608476155 52275558 40821461 417355556 650916923 600183548 404976946 420200460 734598516 612892356 117300920 329696125 717451802 299783491 74070955 771622492 332362256 158481935 286715168 855402292 347627439 876964664 684757785 682812056 340528675 246856382 933206121 437485087 539266493 453489284 391749781 936406099 32529533 299546339 514263971 388929639 241472968 750609981 113271337 694835331 104816651 842851580 37859155 369852675 737208052 808950921 273746291 264232825 426270778 811472548 840287950 160837448 309066452 643888856 833879815 293220496 783177949 898256975 107982403 793435719 720015154 550835863 82569173 872718699 738639702 757295360 370003555 773627681 570433604 727762827 425298310 982319281 168903676 969361380 382645105 951870345 582529020 102745526 301372506 21520581 249544798 44384069 33091240 477859870 842901021 338530518 796698769 801316543 694635543 412347786 357264806 125202586 720219586 666978123 998521786 768977926 591079650 169370565 596273524 452943744 803430671 778208778 226670412 350881542 542585077 763071578 807529160 381171891 900986698 382411446 241816533 286325506 580457235 776647365 421538639 840698771 224751823 19374318 898601221 387765275 394185380 720802516 857182357 655458853 866801498 431114869 308436470 932024023 657310573 36645432 742706805 703753982 578615083 79151297 58861960 962373325 824295416 151009048 973232041 889338485 996527038 507666620 20012385 395442337 593154141 874794048 127030231 780166536 396881103 514174815 101132398 516067342 679697833 694140611 993169593 103742710 340216769 407715175 798709405 906913654 936681413 995082059 551368066 532731358 863468255 70532783 303171044 17032928 963676564 81812597 905074956 485608822 892913642 423499145 338757097 21328325 788743371 334212310 330318757 673685205 735043828 987302018 318857150 9933472 921617039 403940781 451929730 631747804 291442152 845941285 909531753 41345289 335983432 241977081 790690232 485555361 895794163 492542197 897259968 647130470 282718247 461593054 703065456 775098002 316609571 689875432 939553438 894149102 843602513 599927760 602636656 168938254 701939369 458044497 324377347 343865503 447303954 524074493 719720038 283094808 975746495 882927612 568202292 934098913 51633214 443539387 946806442 717925490 673912882 644225918 750348259 5581997 394604236 751731322 596525570 541155903 498230799 362114983 105524543 201328136 317674661 244753434 360557035 704562112 803818290 764616917 923671816 771108458 618065473 395375340 402698224 114339574 845220987 639292843 475396458 156387707 282889443 230802987 903303598 144349543 434306185 474365685 547123376 777892200 1066580 542381013 440189958 970385595 941014672 223196626 625306485 684677687 90970963 347220234 546137570 953924397 932570008 749888601 273921710 706243288 487113872 816639541 841786432 805118926 66666095 632685817 523461582 849648588 843498682 580928654 677568677 270672035 94751562 933309197 372346434 770035182 215465065 299074836 607767195 515525273 603982664 87524994 254807405 340337225 965792756 766533967 883737168 537777620 387651583 58418331 305708528 616162878 620000132 426169349 879174625 2207560 739973117 890621888 97027233 219948430 870142132 196967823 309315359 474610598 796054836 267048705 366979793 6966740 177432453 150820196 65177385 468163225 399099517 992127967 163417939 557948910 432338391 736168464 629877559 608293636 286892986 619402054 748733782 978682562 415247255 336276481 265733854 137870709 869248184 191008083 570166494 259866879 743431036 650456752 852621229 448761880 819033092 376116597 426169086 467707610 341667738 573088207 772828974 176168568 597948074 303442382 637549672 740076701 257686196 539913018 890396362 746371210 995045380 4008440 366762880 597789913 306833770 145876031 378684756 496502779 763306825 263575847 415751827 359327183 276851748 877976354 517915771 962087896 185468558 929963622 281027159 143826763 531714114 799342852 474832519 864889912 690915247 57658527 235397730 898781432 850506966 771953377 617823957 493766876 489867613 611393119 461382292 345065952 865977099 857249710 887847447 985113460 462861007 888479765 391011076 25307373 300431589 311460033 536341344 341526859 201871582 788757371 529158462 3446731 75184919 907918342 306841869 514357942 205135385 14603294 826106497 822790344 548899972 589091867 277372052 692133936 171110828 323640519 680126807 410024 815795601 752039521 298389433 61949850 673084898 107231068 808418568 86028241 523482027 50468490 852737545 586995125 629024794 355193852 84793846 754099709 496084404 584104943 40636042 263279672 760566961 600052479 199055346 128012563 759884744 785852626 942923438 727080087 861496670 615118681 335081304 17538583 919746499 449217627 392196354 318716245 816905209 667001016 333177258 645367691 668978262 878809641 703922392 451237320 312527798 345381266 129347216 407639586 468145960 864526948 98974009 378040370 99718139 621680083 359140837 16886113 237197359 62365265 491006053 950778107 765788622 216780025 237119213 927806987 585447723 152978830 800341708 4056087 39389644 61109551 688274903 537220603 702822660 608974700 9712241 357372906 640102834 33054059 183140975 469669770 889189370 136304329 41866518 452243852 378968668 754832703 998232583 836065625 307607900 404812616 438251471 381781367 508823046 723858940 422737138 296439832 611971019 201391680 308591786 620225400 868934371 267721063 82166502 921857099 334515253 171112469 593178572 588785512 499271989 181694593 490864102 198100552 769448239 298146750 331234798 362990050 613522979 233131685 809800903 597628736 506278157 27542889 380182825 704573860 281866314 152695952 626271770 463921500 408499700 325176401 343268927 628988127 221591101 93129677 156903584 772000041 796893210 585216835 983954443 926338986 187395308 664745683 846859019 852048818 908894408 849423827 764677143 717240708 715426903 322006206 2680444 448631321 2013145 60718046 463296291 595460970 644244339 398180192 26309629 548383531 669208665 105121261 711797604 858348271 258777008 554942305 719963383 30306098 46251392 165857582 524857235 536054965 286777605 748265430 601894406 810514790 61105213 834498876 592896444 894397506 545970137 490331065 708450469 305939460 862175956 521691249 971721124 961807743 428921963 217871209 779609875 140005250 253016801 432139240 688038889 550302640 709482970 689781998 806772217 394173734 426004868 706621425 953276083 610227283 446644812 859947746 334035306 315883581 78552932 387788409 141364013 829966262 357631413 469782390 544041818 763791960 943577043 672275876 419312354 185897456 678573378 133598563 949541360 38236018 444809350 483875011 586204406 440044759 988186430 492529884 660363388 229772432 323645202 274880854 990643898 179172581 522355252 596717162 717811798 201767611 488460146 741851480 593987317 229825668 348144080 798592613 491211729 139640806 913410600 785260239 841644126 954869741 127326285 257278727 491555767 296133806 653361169 732890593 146823386 379090483 372714790 45236390 488990602 872389241 355907437 369472816 261004559 231922166 936747785 383826393 383379407 593114554 541988263 498145407 623658441 111027391 492069067 626480939 428835382 886183226 401009008 961911546 663818670 303318037 285933490 825681491 610679235 107628264 916740131 338467450 301529768 259350624 722621191 669592098 287844431 395819251 515995473 65612662 151675026 672321012 538465712 698703943 917992531 24217034 657289146 391132142 334416845 841220045 373453634 204046429 218427905 860188252 18609753 154138687 76550873 471118376 79477990 312347505 774224754 670424802 963155724 743453203 463271033 186204691 56044816 199307998 934220873 410069818 780892872 993303192 558921456 7873396 728846857 537191568 870792889 358131622 87391013 561597982 873267591 352383566 298542819 649287694 418068275 451330746 259160425 422592922 496966421 202601012 694873569 505433541 119445182 123071941 804743621 321913500 246232549 622450418 720157999 507028620 104325351 546655360 429743279 167505966 10018869 964663717 528301636 138273797 339706702 267909735 344951795 165690768 169130230 620860922 350058782 646395752 196286619 970234616 918569819 451315990 781472591 21713699 114882409 610883897 802732591 663589463 933215732 966646715 223400432 41959831 524006653 654984331 728579831 127482023 216865557 384090378 378167129 432399651 462342108 611892248 240469529 489475531 153704767 485290305 427214411 756297162 710985304 927362909 226979706 109067126 304577643 347336460 486728116 803526311 791980214 919646744 904600368 302959732 78051139 938626567 361040380 653654276 42363571 393308439 76004318 241231497 711113194 978568607 317028032 479542974 136020791 721502565 176825538 960735127 848422476 952316931 907519334 424206318 917396062 455839295 654915600 970339804 260733528 672619861 545811099 350655957 157088784 488175732 977090945 403107986 458367312 353413751 159020557 959295463 974341340 713274634 382500180 251629136 268375436 487044370 180481308 201460249 499928190 728178174 495280428 74623294 331367619 972309896 187848087 203955 267216650 194043830 565825825 916608082 517557641 967563490 615497796 720173466 818973213 569245908 257597063 819880955 478776604 177345554 23550920 776949616 770341940 42850034 829348861 676229640 710957228 326364336 258260849 73458577 619317929 118012402 391562832 919667332 735927580 728573714 48083523 915443139 488864904 681243722 688320357 67568500 461118759 380996889 638587256 23480132 122292761 957102177 842087541 377267797 510292502 582536227 188410567 113863023 659440653 233197578 458727076 264487778 190503012 74963915 529771737 356860088 918604737 131501037 453957659 15770750 778154383 239759538 511765899 107676716 992338897 43780900 320971457 626537938 954260772 627311116 527942827 799630822 759384371 2666924 508113348 444909753 156361447 128518158 438569211 14527425 502919932 126585989 79937867 698548988 917361550 828284789 451934693 325579043 495375674 681500264 763845036 678399852 675472973 703485807 129164316 155743186 987153224 597808893 929036547 601604059 285396023 713261531 837884722 722304461 160948226 882903669 888417065 374135629 711620608 764376559 526190046 657428697 241254954 188877889 678603010 245695810 990375240 945875975 284003279 65431670 995204650 720261606 974454886 852233008 397856974 807880834 636529441 211936554 388005979 121352331 372335492 403385894 231009054 327440269 720033632 146141917 798999304 777822032 770766015 630036777 992617826 196028912 892346475 734043257 303623256 893631946 472251856 966592960 537695569 470983403 624707189 789495341 995114406 618694371 519320058 694000608 682261684 513900160 532752985 346650924 402004916 24897806 420415159 578130144 850237569 392177572 53939166 140067475 258976505 432043985 567509181 228664011 716779721 526719521 576631478 125012014 237065843 471530532 718952282 982158754 564001378 558262528 69900019 170635747 481097350 656815471 106095794 599781505 784660400 715165518 36609627 681499234 557057544 447877398 60320189 233291121 281723905 60062120 231302050 903795981 353294585 146944814 180098569 958542428 460079730 102436250 993955205 795515807 654613931 590415778 241482964 307817134 619594341 508596156 364888813 124740476 463132955 306458924 472341955 64293762 944330115 167925806 149148948 57246909 383744399 447492712 105707352 245662548 94610992 184679800 139266163 171644209 147899958 825030989 848340670 933360721 528498306 922721986 407079310 900373968 629704951 472694567 54807609 195386563 260863308 825765465 451787598 897183782 866124209 883583077 389557391 586684356 831945230 673343397 315945931 715899408 776218425 751828288 424768574 875040572 240920497 968522784 627622992 552609429 2956770 257234412 347842717 142997944 608358719 321684596 218572269 530113633 36437903 491701610 61509504 507777143 413943714 875229370 306788478 708912655 486719951 92706383 98392641 402646513 618744703 179375605 64213816 727901811 367099160 344196171 549964201 124154553 907227927 192263917 609486990 543791986 516276027 73215873 873541568 345282133 956232111 722252187 916722958 382902924 341729338 814276537 352118639 898043901 159824290 168546557 701683590 53188762 625337034 821382463 881842670 103057158 328516077 385711716 212899710 969992008 573125584 296039812 429351361 651337883 607637056 764889304 182322120 68774518 287330697 440435603 883445687 634605725 163619052 148252903 187674038 810252138 408869091 95704341 237436156 819012562 479733887 714425363 205712202 509820879 425762688 109644434 846357393 116800551 492704088 556571368 749845826 899184015 265389338 859634977 387088647 884189582 968636830 449310557 279641705 960846881 836361802 124655043 149162092 591625576 681220211 142482194 599795118 491329304 908953818 569464430 281728474 312236655 343758543 995345799 30810100 130403318 926473209 98315819 577878260 833048415 513398979 471247553 220654085 111510282 973573346 333381466 68632276 854886366 317109618 115097326 241528835 165406152 318500253 182404346 689476203 149709949 321402548 620129925 206543080 911462634 348385115 637780527 395919289 490385755 616675279 837281879 885459867 389225017 756890780 638663433 111858407 918142661 870857856 401983121 350600391 418525346 294166098 613169960 753150860 692351674 41484195 241821295 368011174 108218589 781298478 850499679 816864844 24372623 409658760 4434165 782473390 931940095 195235115 305410197 672605124 435092920 322623746 341823419 755302576 297814847 819343982 323647371 661691439 542106992 126054247 136584471 238894132 559828876 143607174 461661350 659179782 287347552 265712052 379283628 383513723 295709578 9748712 470525929 875177973 163136864 460794612 802184967 753013256 642264549 258389112 518795607 37204457 446237421 852072324 148680293 336351335 701946340 725689282 418334967 448111129 285206006 734908143 798687359 128767444 235641489 782617705 161643208 471487780 315797087 430438030 150322191 888799462 547253252 867826482 684288511 95516106 956696485 244349532 208046735 536362245 650563745 576937996 203484512 698084702 243652337 403679858 748087100 849999934 311569758 820976272 528098468 309380168 824546516 149771683 733756770 80057977 429589131 695899985 567371551 512976465 699391125 340505699 93566574 423826311 617365429 958734736 430257832 770839415 410238116 672022017 100219881 311559878 18726848 728804801 338984200 320676242 107685527 542559829 926353952 828821314 57034179 825504893 151877430 776095493 744735943 455322644 307874547 920402124 526439222 285169164 930494630 39573461 148984029 186260816 601181156 699282774 669990437 927068680 661630891 202623670 441674695 999003484 526858450 784283471 154841835 408512088 83374281 636327733 887435936 566534306 304234114 771899309 518258716 249250283 188648288 589854731 637278910 836676340 242335796 588319401 233060761 404606241 263484246 204880268 810332009 878459785 511192916 558029085 168994314 466332818 695263887 743889202 968895538 135405104 892626277 344626617 710518943 831489231 678700812 55587054 976756961 428616647 625278947 353747975 5423425 353595766 166067648 283413875 715414986 788514924 640190740 830609601 952204500 106755038 653361867 289298027 98081401 343863413 887453713 725436736 600725894 766832794 146391613 468493324 726394141 200495745 907601599 852100074 181423312 641664464 667535977 329272812 358113579 898363804 620528267 60738735 553368186 452632491 70183987 385360737 381479459 500557217 761825319 233197229 423315711 173811384 269600548 606548179 59326075 32362763 432220185 732154990 362743562 690421857 405813086 540074868 179668246 532325577 322088629 241246776 553651982 192114440 707059134 526728972 677231469 47692661 154595994 711977721 519070273 319359002 123327275 514112157 705728934 615969772 965527850 871092296 589174062 87321076 285812886 402500701 258031320 720800342 658653287 467836489 736035911 611778995 885839317 741367751 47339008 615646212 347557360 10296465 844412622 253476155 905051334 439527587 118885106 281962542 380259122 935360303 883750219 834323936 48251629 665264892 429941463 507966731 921022737 371954810 596749636 592270484 110494033 168834793 129214752 639018040 74539872 135264032 560512699 845990704 800657395 118662054 413944608 63304150 231773768 452390275 100592516 206352917 221987239 327347121 107941675 667949333 10281253 106600093 835898104 193699986 334605696 681792768 573529549 246329343 726987659 551010846 744088837 850256517 564482655 696839998 84648995 838679792 730972203 847798184 561430763 186692239 373227868 795748251 134783958 119029986 13619858 531699890 790171707 185903406 822453338 358943086 591551244 23999939 663492148 452026539 80272260 656737496 369210370 518145885 920455436 158545392 413539280 167780897 70168442 44222677 481367581 315689254 669216575 328132960 703091024 454373597 62206894 830843212 601618735 721731508 197698384 222829432 321951305 687554342 627241095 451034014 640746965 725757272 167729207 649406442 527807855 407599815 946303845 846797970 199317415 121220213 239179569 28834157 754475787 690214382 987132219 525711725 995900768 683274565 774274577 352378842 183827651 167026175 944588423 326608210 426257264 382442000 934524731 700417886 927261436 617058218 25655506 221766170 481347225 857544169 900345744 568894185 434526533 730738223 765955480 884779145 962258907 106491462 890783153 328251358 708183823 896578599 632174665 35475897 245279506 125063966 952070496 82949118 80433957 619861149 76415451 917578838 800349405 589859310 730997273 334279232 996486463 104073237 139717303 836897688 415156403 157859622 995784144 777197371 623243475 429501175 658681836 146294399 47776434 873948084 930598695 957979295 234953337 13757753 920846195 980213284 595845159 296136487 216628331 406140886 692744519 176266302 437608903 120190135 218284069 159872503 361236952 499971396 218413279 214935247 544664330 823363086 174066598 109549820 181456272 353356959 268983964 68860311 605732754 264321214 646007065 159463277 958115417 335439135 20324851 277858145 369255173 420288679 333553330 530103840 4163638 700172566 526333619 804357460 372344496 911176343 426910556 956538004 817401582 868956895 183742199 453434208 237877610 666204734 569655657 639548395 530411420 383212249 663406094 185898663 344717329 93503598 516757212 606390074 476624788 313126184 386503301 402836026 141081402 412022027 367377920 939852388 51507214 372338395 8417315 262272541 238245135 561655175 838762033 331671365 971903175 705977932 858638328 447899962 16376124 201496535 11883335 791449975 147052165 135763334 301602978 909142312 60099897 79470067 973064460 24747662 713109936 513127154 287362968 296330642 874405202 938856085 889892828 314204335 408009249 65429149 59578034 393205819 905795359 849261467 224773539 415713796 641609118 823467361 950115308 550537458 797996180 29593355 943719325 345141158 43129104 6159573 398818916 833643817 181536234 663179227 129511336 838619252 211388871 760612287 518393563 867051105 437350056 408380521 244030660 356908968 518164053 548153829 990344070 354574115 76252951 950930729 30042410 267747295 264776532 867334644 720426977 720788859 814478085 706184248 93377736 23766972 713255413 698911635 708555199 606614201 124765658 917358927 647887211 179128681 88837926 519891196 157944670 85259674 598619553 852382053 333650676 806208934 758848872 44015951 263246625 133373478 270663070 53374802 133576085 423445996 772018587 426707431 450943824 210865904 112821253 139792928 998383461 387770187 879584346 558574137 851010255 986680392 278900331 236270131 869852424 50572427 813481032 518833291 992127932 811809216 332416342 742943917 910497414 301572034 972514891 440614357 706763547 433354943 975876103 644721671 107075262 249364454 563415583 296441901 130412143 10323776 761911311 475500760 501377320 744584801 646565862 240567511 277864562 53209008 896372298 745369798 112256781 936848375 800662272 974322020 153035102 952190582 786078974 282067606 115649600 721596788 52338930 564941938 93590087 708282206 489708655 524030060 858393094 254775528 383861444 837139654 862769434 626129695 563897297 713138770 213049884 423228130 232612501 728071571 857824175 465278442 103771175 320681013 553649372 559763274 676629252 642084570 382942064 939790491 170848800 240486936 515516534 70524671 736217690 873802404 55512091 421700642 423100289 485467150 580071022 587116458 287724118 834876288 247379111 164014691 415063568 133890686 446800792 54035683 677064957 380340418 280520398 674694600 189263258 111409386 889952754 988371795 717586767 700455812 331910957 763772012 604859668 906159974 505184774 487253416 895648562 369995200 785497644 642149669 307093195 122043394 421829418 791696145 827464121 455971688 865929699 552553805 4174483 93416245 145676820 633270569 379333379 445012869 741825976 603234784 69332968 381819112 399971534 927892339 5664008 464405581 285403322 801349849 667569190 491958978 95672204 464688149 469966937 698059020 323817188 162833277 26254849 742329680 718261085 585649786 119699439 653041268 478862874 631315405 841344758 306474661 509887899 497480892 167855377 445547959 450849874 597923112 37347722 450886310 476058993 432374206 116613165 49822417 315515983 823519567 637648888 885385454 455152957 969983960 986928550 640004410 84542738 968864601 319811153 736942436 968276584 751552858 529997896 523123648 946040343 172411423 429581712 921401966 531454071 591223531 28546192 936126464 198739603 584792971 991448879 995996548 966163601 481345716 712183351 947351606 573312958 920518116 124410578 971811247 602929959 12624904 109736533 942995711 794260880 931238347 457561982 257840041 227667236 724829505 429457186 543410296 877928437 150458447 570045252 357879403 377116215 794536521 786659251 880148980 946355611 512657826 710577011 992425338 389348537 198880038 631184656 660602332 322129212 299401452 943323266 289660851 814156890 971984710 572046837 820263856 986661394 683925153 875950916 875601823 598808859 277228814 379707057 618271648 406870093 168678926 618240545 627543713 105265875 795162441 117116004 151322504 523289801 546644437 328549848 559196941 604746285 184253481 581870763 40220701 458464143 52103748 308803939 614425472 510389996 483885458 145369183 833803488 391013734 222369654 856322763 371887348 369528997 925096140 555618599 910184994 600167278 668734587 414445663 694745045 970283891 313791880 523477432 707440219 944245977 682690630 992604554 272071143 289434151 121249190 650506731 39718592 809867848 747579214 327130348 912395218 306329953 744043637 765696180 295149648 982797307 336409997 182015193 489434271 29134887 638757826 562828399 135319793 744888203 744409698 707418041 416675072 746870946 928538221 183916942 991142465 919655772 18098049 259139721 706199440 351074610 992125906 897041438 387041166 257882215 249895617 449595954 582506087 674701516 292716006 305209900 149051531 870164807 89749507 906597137 64604085 473489561 511924542 643246704 398830213 659888560 674438780 541709867 228672495 194525877 253601587 900977786 22023346 305780067 347397681 386414501 818752012 130395511 471164097 472724675 32737581 890842976 279657425 676111289 722628248 74524571 420606242 731101798 446531819 192496831 335898449 268765905 964939911 662730057 812587782 748599497 534952555 781037494 571546198 422023785 880033166 339859965 436831546 792550905 392516810 439375000 928119853 308172842 816108480 836686873 176486505 496334793 938534732 722308527 440246909 284809541 571805793 135305343 245285291 237682832 732696584 593645101 975587976 893595924 901618134 344588801 16831683 118228881 598286689 820030759 300219714 944080313 387610495 239373616 511036765 348476705 396686901 417122033 810332167 547031092 214238550 983470122 929421315 140347303 840660609 995755679 736049300 861615876 410654317 127433809 448609533 493420202 536314522 81625086 730117825 388816012 480585508 19941007 253081354 828078425 857912411 760114532 908500738 50866390 321846637 525901812 910240377 810614691 79145997 131153246 627569804 427692347 305824887 65426151 903419766 419333612 252512489 836587281 771740563 489538499 166349002 536294261 578850649 77161210 627549328 140498278 394412469 973060327 470228336 306857873 224488704 252024920 680936978 793797334 658491981 747812547 843829974 972890859 150925271 514120605 456017084 772894318 469701462 851639229 613037734 33801485 363141852 328887901 313857418 19416407 488754657 291277231 373610372 773637579 644467974 181297482 797582068 6723943 315206231 992845217 254334596 861517974 456512761 610039338 890838304 467601468 949219855 490944538 966972644 703138541 149589767 210418768 193231657 200928017 292702695 823163258 935379721 97444742 216234831 792427694 374500080 974212288 979158545 591943054 565245660 955599908 615625849 879023166 975206129 627363500 827819394 301057562 126373345 707559206 609612127 910657788 360334111 788327868 562944210 338419047 586803638 933135677 208564719 908516000 353356399 322710601 696320352 464681271 572851179 329700164 413197094 31025064 350393688 479317614 545692314 379618003 779018243 518865516 162312119 62995713 147165332 157239304 972537292 945563886 979474018 993183576 874409818 440654736 799908527 7986128 305981477 374405511 88327136 594055201 127685885 577661803 396527158 847518003 663333113 396414895 564338756 20824041 950164856 719337636 54917617 197886874 168271872 587193052 307608658 979220240 217512324 264619068 867445182 81475808 335239378 632818502 185979215 758794835 501609285 754188916 926277991 605325710 892554009 490561846 762438740 643916475 348267931 748451233 734156914 142001244 27132454 135597516 820089954 53626717 968631028 313207443 359553800 211414047 707124737 802088280 538968520 480151726 937335642 187377337 718260530 861816556 402038132 74449328 522805899 47598839 455446477 525199829 311831190 643106727 597550521 491084637 199792614 454134018 738390646 273858893 225057897 473239221 692132246 851411955 563759953 488984178 959755777 556927549 198293594 284348783 770604741 376151982 830289665 212024997 700840518 342039060 429287618 339167735 825293074 87486618 190221248 772213558 219568931 795173310 663534335 653424005 408647673 742627050 427558881 286226245 945374928 937172073 75177152 900581725 548326854 242016193 74070187 504770805 729983487 775144731 60011312 814950391 685553113 147696165 937925246 332281513 992886418 946377402 313491720 247729755 923514307 888501476 154390128 422539580 824284988 11228012 78212720 133104197 947706213 185943106 638785781 431874730 855222898 73233155 367930449 275122077 334792574 304532957 624950615 719340982 69260666 176068119 852937605 202099855 808864106 943538992 172236979 351926408 980017903 836503535 645621765 778366782 547549631 343609570 528736236 956027137 635474470 311286406 472915308 4518669 987013666 803363251 810821607 169331739 973418437 749955751 444901402 151144320 199602867 729032479 438154508 115000479 531765028 319015023 493913819 286140376 895232676 460796429 808054085 75392220 77455096 744006159 970256626 781006395 391911527 972376288 998923128 162104749 251957716 79981490 338000181 686134189 699179355 262303201 456378217 888716699 698727980 321392817 988331825 484626046 73492563 461662991 260500466 525732622 796640616 571018917 794999552 213611765 69159750 12871386 58634953 154171918 389977041 860123675 159289831 903974189 68974358 678976697 744486284 902813211 400359605 844456262 121169688 289537614 756490368 553197175 921690801 475714736 835815634 455182608 574608936 287213402 100884157 190923657 838710754 951268591 10100163 73808151 205053324 470290267 853582983 138642539 631609329 135699260 678567408 949586490 896279546 808793214 180692101 526294399 500941096 626530217 460604856 852966213 508354071 199196003 474445958 390213522 288491171 255966083 271562840 78644610 670198366 242474983 482288163 109922704 960602728 945477338 314425066 369570862 82382205 853966431 560653478 932053334 204568386 226473393 501818828 434523109 248415283 356601114 574954098 725829824 733333660 721722022 882404964 506457267 538813437 284647689 813717970 111459270 673366019 27909522 318069158 367003271 942956877 404919227 682393958 419487895 365425551 81912234 437267463 71955763 383409832 872402061 794692960 756538802 756351793 125601452 38426410 636719632 137701564 234660290 717819672 448262494 403771513 666687838 952756812 142457847 839933859 336990672 157843022 989064118 196064834 801088653 427089846 8179790 29237010 179331778 85782813 563766434 424165339 229835983 453608249 833494907 50262089 348941975 537717612 282359432 450874051 293150032 320347016 991864349 777285786 15959703 743251848 712459191 132520900 479656790 957752261 544828532 581111881 340003920 8713311 23267926 376053335 743928255 925838306 413198911 726904393 650725300 687466143 325956260 89634605 88249245 360002045 70214691 34969808 565809129 157860620 401887561 997791564 416508624 809566724 47934110 328985758 372709043 412689558 817689980 103217302 931141165 239205902 949247213 466732653 810876626 22367121 325457209 812958527 239887258 905695489 14084175 918928929 501837463 886255077 84945814 727179849 766656021 561400065 410026070 469292744 230636647 708394434 574172785 579093329 792878113 162588511 477107011 994576845 781594449 341179817 965836920 234417571 995766237 818621633 299717849 800784807 930448632 47461489 474039928 23683130 912722185 539126939 322661219 238727037 953696008 184849175 445576356 674193726 200932936 206932174 167343422 578087681 208530137 708032336 923379137 174891766 181146965 529324915 146362505 57334312 34260539 324850585 586801146 254792239 915311406 574807115 135847178 817978359 133055038 806685160 321063180 806418300 750985784 684362883 127245253 642882893 965122903 272607791 926977232 217148572 509795545 610664057 74957138 288173593 210476920 642749817 75900363 1694246 334336957 790215712 18517142 229961877 934638441 776502961 17671658 101524614 929905759 622851941 88589042 44561324 705203437 961564338 301747279 650951964 939556621 36091292 969241344 584529645 878148078 976870696 525300968 772560444 908958965 874986460 103405497 305618755 169919170 522599961 637068116 528043676 368119460 62830809 197882109 717466865 887473667 920490444 289635131 107282274 22537333 641842460 2598845 213590455 329844360 987404649 89117192 364077417 720381352 682879457 548963140 802387694 836836992 839996053 723464630 301587817 947473078 276316496 941695659 808521299 633407884 602103660 185155914 439779878 718616006 893906228 88091209 635800586 25289716 768726733 984479041 881166898 675124247 991917270 834629468 49976841 640545171 915336920 310494966 650955528 819896344 430178971 799985538 628192579 341292689 638706932 433314113 644699196 615401501 295403581 880089164 806612200 6886583 148613294 342004272 845173501 619738933 694032597 136847786 582343510 256575 145342108 756450945 315786534 198628484 946555296 549222952 588904778 521160131 465303361 259459252 721314744 182909743 213854556 302209565 72114783 193164005 319145988 124207709 956166736 27731996 658590876 638277565 804216811 448643673 916901074 130070175 888792809 326601498 320452918 37779873 325677300 743613 577050438 666939251 486422150 695489770 24002924 27098429 642784294 340684446 483252571 551318024 599207820 951404399 397887070 857092785 93705735 850306303 769740840 60967044 480398901 596376918 240103083 48540106 897644919 583692708 330924035 147414183 684011924 698390091 221542366 910383160 164030357 149261999 463971379 402277315 916406809 269562638 136419496 846455097 682861130 975948540 506269473 788615851 255270426 824052762 501607105 719917653 908461637 474728794 334680708 619619616 235311871 767318849 886838192 344735740 673607841 56150171 831824306 401198734 270033246 444630063 856571863 110178735 615468811 847499877 509235454 540987031 84304565 671705336 78696741 39635752 514892567 745499969 282715934 749062522 329340310 170066694 443607706 288446879 375504093 349492034 272903716 648329648 993399746 803791435 987447732 739183424 166811059 262296049 423896890 656849765 376235766 262019410 878892887 578096865 138868958 880672403 615339417 901573758 24632473 788687719 746569314 539201584 775358088 344611213 10281485 319937576 988392691 66448885 128269071 24715084 781565305 750547537 952997851 738646256 960447732 407639680 513241488 8606316 387474093 669038741 206590000 935393461 777136785 44014580 362242369 354055543 143648202 291514515 720558674 897892224 464907817 707247038 213839347 775553030 319055387 20764673 298394381 132520470 74648916 82542639 965972958 349232017 805113590 926102856 473005652 392356195 302692022 340137238 287556180 115290091 324964784 664089338 289568722 461221635 918600184 7460247 511673533 940749786 217230299 47450051 324842020 660714281 766924776 173374546 831465131 738249373 90359006 162342612 191054781 887999788 99802567 279133532 343338212 177143019 181393300 696898884 836109394 742022413 723468281 50384664 551166093 171252790 852741478 907155572 750326942 687033505 137163554 656971208 586708663 136937306 695480256 326044313 950642626 705170472 960257933 87103841 600259452 166024860 27211847 826700061 947798457 586524520 310809411 634367424 748146760 802067404 776716616 787024014 605270226 398451139 722706612 312740619 302071009 244173181 395422413 624339128 902335656 687996455 93347668 623352658 299254699 384729115 698561599 143508482 327426428 281269652 629503394 387906538 669040800 176121263 333240042 147045359 189072847 963458019 691496086 492178960 471510190 39179849 39799833 187144093 257935013 751890145 46431459 538483131 863469099 265670652 624302210 51465522 339201061 627543589 772628348 348853278 162922115 307091522 71824722 575350511 906408040 176185499 97909269 537987782 240474817 567361849 204161358 588581361 195463529 92925549 382344159 230108855 617031578 862773871 124641403 575481277 24889824 404788169 723906560 943822979 641211156 694031593 869396301 153367518 159581752 896835434 734490375 483885496 208471670 445663615 696418993 929975074 902541673 668612874 958086336 226473632 523070673 114289074 651284227 26998823 911141520 125072897 34023945 38557539 608099543 915515409 482162710 409990979 167863009 924244056 283530323 748677462 699630226 526409348 514850581 243136370 201470415 245960131 992177013 538463309 526849669 499455550 647495534 912178224 34507075 530013410 193823813 487681213 158221864 85990002 406746437 501411914 894973466 538570099 621227010 694392641 50164282 629187493 33756970 348255445 342349964 365920231 153924529 852241662 400053465 714539918 205722689 325977741 332815889 518606437 586675117 153438490 379162466 129445029 906302972 330841897 523052509 423141294 400288798 264156983 591502792 961688879 557503476 282582964 608605199 497881475 811385180 82797976 263113809 345367007 197750681 788850890 382097606 688102109 97910491 891601218 491142546 43547806 932255461 996777658 788180658 771766269 286938354 941864186 167087805 699530771 983346845 588878362 678612250 939114799 449809958 314851583 623119506 182957118 181778179 27708198 559938092 728881432 4782890 171921723 927107702 668117541 260501398 843776155 49042855 477540616 916019034 710353176 757489029 278806573 274379328 542614347 64015716 186722177 805805111 487649514 876195260 299471363 203312008 974806097 988773275 216646297 901599111 922051579 226276206 88442615 375717952 730422258 46601109 916134132 339194198 106981637 926594356 622380908 284741533 210681262 588969566 716101739 156152830 498913561 134984388 28630910 393779429 283869907 96966742 103548370 145661492 5761953 856389210 423297052 361981746 428939216 860311182 866982557 345852781 496144459 542910762 659431685 530536420 136745893 671940486 742076986 362094030 618746733 854320915 377471274 557990359 847733312 38111468 160314008 570072764 698551862 4270839 149358334 405216396 998961432 415324558 897371659 947239496 457877356 254010892 122713771 67746897 749427203 304099412 878440621 273956745 777403659 973486933 180765328 141649031 431226126 828926447 638603532 175268218 575005140 345973484 533029581 21153118 602153704 559192872 799992578 358984342 761214295 677162168 843048396 758146147 260915032 214278747 266477893 71426123 586972165 619542386 283618793 346125800 142721757 27439616 652454729 414559600 363918554 897524170 679312554 72478523 72955031 879317452 331210593 811088852 883009878 64944768 721591112 787934125 763602249 33662717 189440472 807224801 972509580 754192838 486128159 697345345 634116974 738326901 647267502 351567207 863370217 812760593 215361246 287187965 524346766 198389635 633082385 680960711 277423480 973592117 731479750 841309488 716216694 459866129 639008799 592492201 344174468 475583413 926916907 414823455 91765944 890439934 594460141 77011415 562761613 894213859 385576682 612860086 296543225 461607393 712593875 390266618 52333434 660742282 534335287 231530231 8903126 158774840 371592881 956540430 161904863 53189295 681981491 174227478 600794854 120710912 65895765 487469359 688603007 762264451 426773631 392973772 625465622 729243811 846727406 618908822 147933320 961384148 353737128 193123965 741665321 647679144 984381323 9337603 106871932 85670197 495066025 290822911 308771557 936441894 734052043 110302824 766086414 998661748 225072080 512316105 825583262 148969074 610709449 230363641 737521986 993468077 453315651 111587670 595868761 781934622 154109272 49704215 319634389 56688141 247052223 712807954 54494419 116944139 86699828 991175723 862030778 193387189 718887682 476687183 984009422 307850835 116452834 256677789 817016508 290466451 57844152 467367776 241396289 356669458 684955860 878785092 168806211 995864264 717870769 759335203 529377664 527216809 51781910 780369810 638896208 241842498 479005547 367987188 409109715 764347722 223740601 125765192 66413328 872917477 53329499 932847836 253738331 272882145 270747080 606997540 615205565 233436287 610803559 589974171 138607897 971175325 385748870 134292179 768072034 269492055 42728203 683367961 371881938 232483326 56853184 225160804 731324087 281544746 467064052 787615094 935661967 445724414 588409754 751375620 643034373 201884409 174382142 185544243 741391388 11382123 599695665 745926449 326446241 301320807 980501508 190080717 270078111 34714226 780718970 176058464 802193059 42276614 156173175 527693270 48830385 589332899 731718019 386773733 337806720 734344050 858103818 785693139 329627115 724761438 388675791 437197994 25215891 625559528 623738889 263775141 782359829 976859111 581510141 157219128 777583884 775059709 239772367 909282399 933834817 860524603 514610426 70499996 120969760 678760447 665722538 673630751 80253109 358877029 718259225 472991851 396762699 254432407 183006704 978952583 568893699 456903694 125054947 105049340 395800216 517003855 921307991 533603521 281791092 503470990 657810829 853781548 48471213 315329687 262246906 699200755 91431002 228117360 832327689 112094675 421741455 22159338 424337190 984045425 634581711 356001150 941098228 138299465 752540530 853673329 51532433 208727017 122146795 266214699 773608241 537831527 352572565 875510886 689136047 794592002 893242625 987177691 250233541 72378394 946946130 506885745 226592429 535987489 544050000 934611616 716473714 60213748 739859281 646024010 971100941 667664313 824026260 990790288 143554808 164189928 573454150 903725207 567884424 634376706 728945589 773236658 886859207 923402697 524441399 337894373 979140883 848322468 348845249 546001643 441627023 374478827 650866320 610096619 476938777 781542057 372095626 476770476 251219024 183946490 512790370 361384097 708985419 158863007 547523850 10466156 130535749 168069185 311604245 75122199 40782604 815722356 926457168 392849097 810544464 750683393 674921329 885713064 40166699 670670100 480098627 983055669 930011187 830712832 724677600 39827095 156487131 66971603 833433947 682889393 151738168 806691360 3402771 649641914 264401051 180944613 569116721 543766562 152462341 813624267 325950769 401286856 118389210 303761612 782744770 429950478 71727021 866061874 877352372 497109749 344666086 205930183 110046829 676639475 210576795 267843828 894608481 576918199 975664344 377465185 952429381 910558642 3368593 812803513 597255444 150273761 416470359 193143466 344108585 451695209 69155365 560374988 557516850 261456690 990643997 635506327 419373361 169928614 327794019 769312235 435320969 504695674 569416544 211834478 752322793 991831869 148825552 636968706 690299731 619651854 379815456 271770417 860119318 854237790 912187152 502890879 56816652 803156247 796832529 975463241 457116025 398098678 682144682 333908302 874979682 980846060 164763920 74437961 603054040 155246474 39802543 841618124 727022611 288635509 896379960 58102841 497789582 556691944 378738051 669843387 895184418 379127088 336732341 623767694 220614898 670937261 333291982 999335277 816521670 853274170 287216314 344396203 645035777 939808336 713773675 810431911 382825012 686395160 599163348 178085270 368116276 622754849 343940240 26973333 5045773 755037993 828958112 374857094 36760467 727253590 522448669 238832603 464520944 720319044 663785895 972481027 586183458 962703647 768487182 183779107 731557937 570044478 239322076 598549400 524666843 842524514 789245448 323061011 972325042 91199894 660009107 318268998 35359231 900501680 771452386 942628541 543954782 347587798 543236576 619747724 568531520 21643744 685845665 81069806 10006258 254748331 542852208 534882260 470269358 778789119 433894466 431993532 331537096 176803045 133826927 414241972 674320960 831390833 689358295 434981204 956245009 579711782 46066281 117841061 629327284 509368011 922445210 865339884 652282816 198829682 145699165 104425345 758788374 845259093 351486917 565356256 508366307 770640229 47443517 347082034 829229626 632613073 729651407 895534099 710938492 706278727 487226429 403525422 338597949 253443937 218567592 202577405 180215293 328758079 426027623 582177875 690382106 611719391 830726651 105757639 397712590 7848127 415826732 618754924 27632925 230418850 359771895 131948470 556956204 299858489 635938509 966453778 54495739 547919235 544861640 713922529 210977514 652884768 139611086 934612386 63224681 363321332 119815593 873720842 322770238 764951748 466893465 214563462 578898944 273477246 356355993 435703637 601706073 279918364 362615159 932352749 181183294 8002968 206862470 8149905 859069369 357264137 351458063 783329332 243428947 5495879 533083678 564959876 35937357 282868440 446335186 542071430 979631355 116361864 183976111 647995961 999023814 240157676 302973125 520855065 359948909 43920621 864428941 739932187 312021031 616544562 426164873 798016980 582967082 558901767 643644730 791735658 304631707 136815524 660852248 200059272 57048527 407011408 101607478 892688991 243270580 178707197 841689839 288494561 531792055 957713673 298094253 340833397 755371767 530251773 742138467 693954592 938739010 848334067 722350319 700419997 105885327 537336022 490685605 704955223 375397852 807646550 566577246 640656035 338275574 998485607 263421451 393670125 491404548 750568255 563491112 716109046 796521087 540608035 705103013 18541465 901900726 954612332 602731189 317058775 790011297 805979698 113030421 292180231 71199497 586376831 5882964 696284556 33702932 943657218 419840041 291113531 732674297 920076863 521718278 440646706 517684649 607705466 396288879 335081168 430876496 897523716 303536608 831428671 663865443 899138543 449189266 733468388 151964923 586144379 629552845 844383050 865219418 724484712 21580287 537474708 462877034 162086274 635751462 315993629 296490388 489594521 350979839 385959553 988570661 425843220 529826940 258992230 225122170 858033703 868205424 652454455 898373726 489251234 624789008 937013219 951567987 133125921 188342327 391186592 737005005 568193432 11086580 762102170 948798062 334471242 620553645 428021420 776948425 331730352 614118858 522710120 31376179 696861470 74874422 642987717 835501935 573000593 498927572 678894509 491497106 692100007 805780860 180902052 460599418 930815597 179529803 193104982 518782180 420526226 870464042 98926301 992335702 410519337 191393677 809844316 987503624 132794577 393470347 292370144 104158878 317883115 454310528 935792177 405918558 617660231 540972386 989814779 442905581 52209862 567552477 298820559 167958663 984781894 433039075 20697723 626124520 806619560 946737335 643952658 616615980 422431556 418689243 602543446 804140359 486230041 222043141 29946819 770981278 8900497 907084049 944969176 966424040 961676124 394270984 306955567 153914341 200886841 439742713 241101145 987565448 559487734 52713196 977532035 305866719 295856804 240466209 728975477 395542567 784531595 640773255 242820615 385093652 992122863 272257616 813202112 476341320 755531559 754067036 844291394 37533752 13122789 987235407 837009147 578510492 442206323 852149731 724497729 62474831 530152199 913346834 526308445 422386712 4168118 724320237 571803109 847281817 309502051 55994690 861178963 972423425 680675608 524524669 598389806 847280253 283651385 6411759 542765080 459303340 620854152 908678910 88441345 870197297 557366525 596302706 43915612 802375053 86598362 629068755 906639390 619755078 865846931 783196800 668731299 611502994 943673858 783925433 27213014 359546542 351400723 246732360 735080402 778493939 961892779 754539410 421832858 128821839 166286998 374926077 519076496 237337868 839144794 787441336 579719098 682204323 195402994 317110583 204739319 683522244 21325539 912141159 976709189 672021927 199798389 784311005 692170684 408754174 872284879 797206594 359527817 809168018 465891305 503443009 761306578 37618783 141406404 469268934 961719862 573874432 254527365 695282343 309225330 171381945 235756640 448087687 974921994 229518714 381266547 242359658 337866519 559365947 673728545 761349208 683781790 694867619 903173753 745850607 603473322 25661153 540806414 433184599 766921990 221697045 156674904 452612107 371885839 720174235 12898431 852089552 839365624 565530477 144911375 400577807 848319624 536017833 480827213 408548867 757753723 452376193 37753450 513157669 845885619 793481113 604209647 998109160 15185894 509483004 318011450 389036020 555560644 11970172 68366252 31664733 903244463 168876385 683577112 750168646 863976954 176244279 784070716 54395532 546132422 941269227 430867169 828831896 589109126 451778560 274903701 823527949 902583274 637317608 434820036 870501992 899844840 146835582 397996609 178637006 303637787 568514004 316969558 257191046 662067606 792620524 985521088 845430263 584683430 488314382 32863729 548808009 6455518 764166811 727350134 341625082 288623645 860655776 744418464 353161537 871929946 312902674 590270600 51910195 47643925 452878491 251744815 827278215 613834176 87463385 320552150 911744069 573725703 799883818 564766807 83141614 594241769 634289747 697702207 791159213 896077281 717937368 291547703 790558828 830517383 559475407 451581752 798169424 467690709 573166250 41096504 360971146 110016442 465983085 489866491 771512775 436530702 852228164 488880173 786515747 102911243 73580744 899690495 569163237 405206657 725740246 335051206 533002169 765062913 560440685 814544781 897636603 719102556 872186711 766323907 119143109 176524893 724002675 520958550 626742757 364545917 975582743 650374305 472788085 541008613 191514565 167900397 759598486 379340318 501821665 99639882 532752963 807526131 573100810 218724365 432528814 293398571 506994851 525110434 723332914 620243712 725476190 225084745 65007883 773944193 608647338 726902983 393868258 903942907 605870460 972227293 537694942 131198036 578681116 319280666 449007344 537807077 270337642 560197074 360674829 775600623 675502625 626761812 738204530 575048488 862482663 292416935 159353448 759164787 628586110 192855287 391233243 243900747 627112166 194758295 585927895 601649211 190155589 399891358 313378145 743144014 705647328 827126065 931790099 663441638 509890677 936127133 588351312 294498098 431459397 347513452 540246555 198907094 212289510 677610354 372469610 474426078 548862478 6372 496709049 459068510 952175320 987384268 85328825 746813826 188768590 705730040 366476147 99847682 79421395 186711362 457722584 933892242 125006092 454659413 645214401 354830199 253388343 608184184 483543326 478904253 977252199 481740435 316301556 796012012 843114460 265299679 807422735 201471285 352207442 481403027 242457260 748473357 683769729 805481964 15494473 295068450 681078455 196965035 720513670 601499589 856778424 59387156 354894737 655144031 825617189 175828401 938909871 504434073 302901793 592062378 592103188 174639496 308470414 159480088 324582125 859184664 662973012 547536028 290476465 108207933 996304338 560934984 273585619 15730270 998119562 147602614 725167799 955534108 196112859 967571177 831542332 119883517 583192298 23992390 761920938 638079829 702347995 775786800 438438234 818681810 544385002 153039119 18974171 90052243 215872699 764584477 867630179 98261081 402198460 510190867 15906785 977889355 211536149 879357061 575371937 576895505 395670391 923318237 286892765 943072789 343827000 323454702 993519830 621287057 162990603 948890411 901306826 371783881 60392997 774285833 230425086 144991863 21753273 238347898 789779841 49101556 463201493 830427327 800301868 313528484 855470436 284785539 669254655 238823852 804074689 787621797 419558220 391041558 317272427 871842040 226494175 406193165 808084283 389024135 746783045 314400183 857932825 640691159 360361967 219664353 700931130 284102276 314854896 11646263 314890313 242167641 862860107 141198954 55364648 162160414 18137844 436844593 147822208 699356986 17220388 736675478 331189348 751470887 6136483 207535811 903821576 950537359 184565054 66920186 294398211 471919360 344264760 144939245 527728423 885450498 31950113 467612793 284059506 183211409 581418466 612115439 244230052 360902332 402956395 27741223 23209463 323424421 620625099 437085590 759257418 824623556 89079501 663971014 802086499 29406097 40723473 277876919 117109622 512366145 2653920 408486892 35900901 201558953 375524348 436230172 404441391 59258990 550634275 472115711 821303738 356767571 374614328 970806160 247276454 699635059 749106478 514870708 147481859 618737381 229534811 976519087 218751546 600949937 249336287 322188304 263431226 79341028 387763550 532685886 129920269 601662138 658419482 332627300 475645096 514969044 113333560 868575057 523659064 808268709 190536153 551888774 695653528 773238164 531693179 240256007 871118637 554879663 823847604 214971979 970990762 105914215 315512461 312876064 75200354 883106482 901093389 503948490 944292475 582159550 439650193 753855335 698958853 903402986 261816316 202527774 533186521 371259811 349532374 832513802 701069920 702206578 805621464 529315178 865081968 997845801 546169090 375231490 417080015 81788273 156683337 58380282 564736816 559665154 435364019 5923595 279711966 594918349 483287581 826272886 217606412 762652461 652722851 306904880 825555478 802299304 138711371 154714760 279672082 613258459 106362931 762741167 928111594 59549083 77391734 957949018 502478293 921802583 655999707 746431340 883846347 617390119 297975439 981323545 923220402 715029088 108191267 763847831 747822893 770830879 74522262 770898433 41241667 653516242 192911815 65544800 571597104 516108463 703686716 140281253 475895268 438790159 31418702 995897570 139506910 106795574 912772693 232252577 163981621 607884355 203763013 879426584 243346367 266796245 320533949 378967594 179467655 432354814 111625698 640553529 406150366 834140826 83391631 486326811 234216368 95104309 372664949 502161279 785880378 440515126 614428798 232880771 2939891 813596720 670002948 470851845 58988473 546928838 860962614 641703111 402369007 853069513 940552038 910803279 840941532 886422272 796669091 263778370 742718005 508516793 916942527 910911422 121012993 894637468 185516798 640097706 333929899 233279846 256721396 389243878 573290641 523710906 559013899 700732090 290858885 351508136 16556222 818328812 202434139 20395561 33239221 991083424 831413338 508241255 356558323 297287252 654318318 527659191 886855724 769485303 704025461 677341152 879510228 169163078 881971532 876939766 818588715 939256081 644291491 672482690 154197448 428856215 66123999 478342416 100320495 804329007 631633951 137205281 56779084 300874700 618530444 583932897 75671793 479391522 310169603 870985567 440630293 342253227 354311094 559732363 911855515 139594179 811034481 143787823 793974156 764510940 579123365 329258134 303098455 907355926 213990337 281211433 380727916 993914589 12163964 783217597 361311615 13592822 529577083 796588406 282616022 209128780 720001856 475152630 965665178 275369274 83256605 457771196 208886149 384190602 387689755 202499953 200130993 905428579 849855860 597236114 263146160 385267729 81363868 596821961 366718304 759486516 964157205 135379059 587712559 584459559 353193050 402438133 762480299 854236581 700596074 542426223 262428002 770739550 318555874 590483859 51594210 754180707 481576991 162099892 85504497 91889182 607807094 293227997 806756171 931045897 782712333 370668414 877714106 145372830 5278773 200718864 409431118 187159739 886341132 428504759 392845298 342541709 931935910 414075750 896915576 257805441 643986958 968657367 928406280 488224448 136175151 713030054 395316629 168237436 80783266 217792844 553367693 841628275 873366662 581024783 384091710 331781418 390016965 620474857 5206425 523348425 658941313 982050380 760440695 343942741 681421153 217024782 716009568 149634719 147835992 749125972 154464432 673638178 953067952 366288792 629336256 690589480 215847108 821885367 70062818 281256958 595584315 60914057 931457386 315186721 789535012 473041648 398597434 200155427 302190554 102657884 554550180 567592848 325951153 537910520 152839826 141857873 656346463 591801572 844848685 137185251 779762778 610318618 591896018 431709245 481660335 907142458 160729563 781842864 618736390 572343366 823940679 651250578 690750587 817812366 509874971 744742883 303204100 405735088 726670250 902635483 992632951 309226951 601873230 394376325 798732230 707111655 928959806 854095998 589944861 363838459 667605787 747721407 633869224 21684092 600946267 955741245 871807951 449386416 998707275 639474724 604534629 821270270 107712926 434133354 315754545 499975800 13957863 110805109 698116046 86301958 428535498 81502427 490245338 491227973 292172174 842455753 383679655 28278223 430932044 124719416 25182216 924720122 523169995 282149822 698199240 516980222 132776001 459167483 769489688 654163421 74363446 470899439 397641909 625648578 817457688 745199416 787910558 89708334 135887796 814401543 571443382 553859978 136818506 439888880 329816996 991745729 269623223 861030438 191851402 603371949 83742117 953723146 253179835 95596492 859115563 364118495 88287390 727560421 864069124 582333809 649371086 933011838 151141423 346005990 86913366 664860444 446837567 25301470 194441857 442907888 849398464 543343436 167998530 375370175 398921008 768800095 718003896 347093728 489952394 967003380 726651306 140403663 505975849 326739955 38443784 257897747 773658307 585017279 490373239 838809491 222134184 720205884 36883683 785541515 326139499 111204595 710105425 163711766 10684246 243163340 358483319 280817528 376842295 1716074 14036146 827654563 624499185 168754827 224455088 10205545 92986372 776144243 179778152 339093296 818598955 408003152 417566242 81684476 246002461 420384984 588979581 25155805 612612621 95127389 658116721 945138218 777568857 479566302 516634050 896441155 605895989 620026096 677620884 722952262 370913205 125465217 240695309 283077326 176364632 797715595 109939305 274174485 113042884 462476480 806906593 747570306 454388089 455886436 299714073 62732331 818019180 848950399 407320773 963211631 641775338 234729490 414354764 309110515 496250791 991702596 105748215 936038287 949926723 164982308 650044581 222323896 714575598 768359468 804540787 437318027 405102930 132170651 522445642 600513275 889903862 727050394 453400363 993522740 462958537 925245254 748442557 563084217 985643783 417786121 118551498 761241020 908306510 586186317 246331545 457220761 341098691 69550858 782851641 805433599 936390710 433274295 564968366 980365145 768599668 878346340 557046758 487440733 293553690 547853383 469881733 918963754 869104744 806707390 841392390 560303316 805642559 256197146 699563808 137288747 595590641 310329936 888197929 633781900 64671296 242659637 202562641 167295263 816133112 632033152 700984299 608183170 190088575 366883202 898773650 233062294 509863085 362523289 437289644 418976621 585487 145621145 523368297 42514333 866410986 307756102 372920353 17784341 30310770 637068233 927833355 9600622 332603453 259843104 742601148 961906235 332592059 749186588 739356404 910127358 254800146 382245424 943977582 810007980 666684780 720115528 993802430 278168002 597793758 596920585 393854814 555881439 491778321 626342718 609583889 275310700 848941528 25985169 950571448 733325523 597361800 254417196 58364344 838733828 746398183 383485600 45335012 25413473 243941068 193385686 31322646 758058138 49512521 759305660 195221190 687035817 186784384 121923511 668024893 299668349 878354220 483085056 122518109 761276610 608443358 314691112 742781493 996786881 10193712 649212277 933147751 160363123 416209871 140452152 367947942 812410243 360964696 861938387 894603451 690441329 763597626 453569322 592691816 400602283 855563701 678358260 289326775 771241253 836099709 763019128 700508820 107035201 994424711 49497747 773908520 22979459 823743782 9615014 943935378 123167946 853696747 201219110 377243792 947191220 393171095 616829479 464305200 709725009 649810958 415993456 757323936 734918437 778688773 101991906 210551566 884723961 459534045 243048286 368420201 865876367 736856399 293117326 732922032 102779685 646673595 328695699 363422008 942988730 338944308 98254011 261151052 254742804 547003182 636810454 288147218 984470175 665464429 474729497 263677354 580416187 342245668 220947359 125771349 92284319 164538167 43163335 765074143 518704355 622791591 928786224 323151745 912378766 734939911 436854377 614556366 387934429 476930427 875535786 528112214 754802568 691379382 963153585 633963601 616148835 613909301 397889207 203704725 436380692 640915461 133558806 255264116 369816258 685696619 798842635 421104741 562317846 533143169 636506969 760220053 698324718 150348238 295545683 984935841 536205230 489174790 205283027 262086023 628741713 586506808 69061878 949845832 195370816 802733781 929096191 213020663 385690468 743730439 575578102 161069738 711495621 355666855 873282171 286769700 559174482 337195426 502852174 772621255 240766788 926956392 182804584 953870792 240878715 216076936 728335238 346676839 437104047 425299512 181008187 252584299 255018548 227769285 946466800 958302978 783711649 215982876 283292671 340027804 944277002 847659446 975588960 912649425 497679331 763532276 849109984 514769167 437403083 958824080 259156955 164799160 672112773 728875956 682103672 721380259 199357791 990545290 257900114 33372437 220479765 350175167 909114667 427368761 579675980 646202168 236890815 148380623 849952787 203303074 354867852 223794001 635352354 74743314 457683735 171961950 521269537 383474002 143110504 602756189 782622491 77283477 440596143 870990274 165777021 41967835 468219428 155084537 531941900 160540812 718217953 1283655 523982756 667395669 401642342 555183912 626618732 775675027 15053417 892149237 255024138 664236728 705861074 50647520 678910531 590747702 603805842 576832739 193428500 3663440 898519831 888869648 767710041 27021415 679721787 849875103 164049917 92956361 29434936 673388073 84718076 571700907 334765545 963936595 194469710 855970220 226125297 395149328 654249521 964752884 403028801 443121180 678551179 841651063 956179425 684561740 940104161 917006947 441444658 932076022 483013927 642733685 124165081 115679155 903361512 540295143 781438889 240867012 149941343 800614733 598110396 318599230 132844996 853712227 986723884 600740872 389572834 428831544 165175262 449549955 861856931 69822904 22751491 593317197 864247030 276977740 253140377 434577345 637682024 150822070 953338503 32939993 819784068 34269087 21126371 568998237 31955340 294069346 668540275 188042770 401706745 140377797 773923014 704612771 922925600 670653716 890233372 461013546 204849374 963485809 302744721 132044840 624990359 652823208 868952361 275150355 336980652 960521714 252412643 131362587 486946090 315415682 246204421 10716912 417914819 108877043 448373137 445229157 933729358 95651690 902998915 51245454 482218611 622134941 272279857 641850498 982640719 475433954 653626869 913520688 875972428 488709735 216217573 557041152 408107247 128746751 91691183 500907622 820184187 260712213 141837569 576278438 109889539 270088472 627613803 869113074 333750083 71147617 178774039 215505168 156846440 622761717 899384180 117443028 616579659 914663079 309114421 877766198 181735277 789271537 523087811 678164429 984476329 134246342 912900662 659674021 250429744 873801445 764858395 486499576 761585796 757722496 115554061 332552690 572268366 253431004 881404909 762157970 511536157 254832810 755058217 403896746 559502873 958671799 767781448 745192227 572814857 434347320 286476760 930620467 193946175 590584572 304747255 790486786 625659049 667140602 857462520 197104604 505633740 326304077 749411545 75744236 871839491 230142668 645779555 280250055 628309583 545918859 755543535 177679933 424134782 953380565 947777678 726412727 602092816 726246064 288664208 533877686 750639890 659728569 452218455 972033187 684361077 98222419 488749862 612799465 511373374 202671454 346921469 610531167 354684053 888438005 163215313 993106726 354706005 519831590 483235307 947894167 39531150 133157122 897946333 724093112 476511017 26322945 250281900 573972127 207625451 874286822 366318299 529793739 419652763 445378732 190414208 472455550 338622785 412747390 234371002 801760503 636153514 502883543 831817016 772529851 459450293 742481504 136993782 48391132 903262929 108146601 372991952 160559223 452751193 280504593 473884592 716830221 890607442 402303731 118206565 87232008 720449580 266790414 977702286 987746195 869777032 870288351 509206114 145334916 389513809 901024082 358898456 454252815 719821325 851763271 911080716 135801337 936828332 58353562 448384063 982941454 608867182 723131845 218677827 433655783 82473616 388936484 476234795 630319623 167289187 44730674 378640407 921617841 216705852 73333723 295755397 363166986 491264935 982478823 893061678 957830426 722510843 443897882 935501845 905379677 840342914 602489194 644626067 200797800 656747713 591131281 235630078 359202764 90976602 22799011 660249520 133699679 985224479 970875057 837324615 289505196 889194729 353672248 805377596 42801856 256675527 582992181 161748834 448564796 857715566 263384798 171787776 993861863 407295332 861974482 194781693 91160347 249654541 725375184 320613944 283245117 158383500 222852641 774821515 835415650 673129592 859718768 266468398 782514253 17420974 196280430 719650893 718786323 298306378 130586732 598521944 625802814 84580836 758399043 534091335 702243148 488132115 187010242 652794459 540076543 247472046 648022802 607109739 22168750 276824699 137814846 706965467 40813222 470521168 896797158 668389464 576260954 321986959 770312203 809714981 915715715 394006181 26906637 226419512 237946135 78220925 42443958 262660736 320032876 862221857 550866732 395675205 561496458 969704038 42890077 366738674 718910890 151700617 171849318 37161882 159893702 45735381 569994513 946550105 663792702 435007693 70547649 883765693 378081559 729763289 677442298 21652214 959834821 355605501 400401975 179886786 992629530 560551774 203441448 162332109 219671725 430759826 931941700 519441852 892346023 695023960 59888528 545424158 367516331 323202921 186783384 990794432 598741149 985520496 320964061 31707291 270657938 854271742 763862170 959079643 914380759 705922899 985787377 425555625 390999125 197986809 587451388 195178257 768122884 938922495 270552858 818268337 284927714 177504956 685042262 353263884 75932941 857515500 548811803 947289209 524183883 409277166 246880421 432655498 497074534 949735871 955669211 177793176 406809180 677876970 292247455 182180951 754992594 463840484 169566798 854654078 818654398 789494696 712984116 719856269 934995755 78996941 656520256 616588706 447549028 895506085 605133037 702051873 36340332 665222796 808312113 864214342 26589218 218545691 177568844 796876351 723752615 534244355 651152670 142603752 65558493 846962723 103026658 823175489 929541892 659596187 53373846 648777675 301626482 715340027 294943802 671720937 110151337 885551628 606594827 670166040 12445524 686090860 42026406 482461333 792332679 319631392 10062138 37637387 677499268 707520636 822748354 525799775 15532681 688638561 480100241 656763807 931063920 901417809 363609172 300592395 915858224 765343172 167201501 808454945 884058584 382696091 570065815 471447818 515645822 179307021 428894409 261724860 566442081 34845942 458987204 241240555 433291889 457713267 961751723 695658502 454993701 416584300 517197602 449250075 942479358 187230003 59531290 591122295 593341847 692619830 490950498 307694684 897688918 403885962 832085443 281559074 644994489 600512410 109083901 314669595 980079118 947923156 120682678 744506341 91187524 105594323 962524649 463006092 54548779 710435185 117295957 37341781 657969007 68648590 905565381 155334852 765680522 747685269 20466511 318806323 671442927 431338449 980873066 845281766 251802100 93061711 276334731 322001339 805003737 359346642 881813303 460648602 187636950 463511884 107376057 814362806 267106803 232300688 676269128 277379986 68853653 92993405 18102085 82784457 788050522 600371249 487184411 712707159 325475282 587433609 734120588 354052861 927450891 157221786 765173176 983229563 913858323 983736575 314622774 761055856 216760471 283607520 126108733 511698676 529067463 360613476 447480651 976129872 205912557 27148864 479228814 126740516 269604800 735482769 863894788 686834715 714515155 715477640 828144299 487900324 912289491 783572863 920032604 421831179 239343594 595881648 398407363 301781400 299052268 696410258 162141872 63683620 17684064 606402513 425510997 682765827 954624041 333585551 682758686 314606515 126908760 837771769 160816163 844131604 585710913 927859768 568754253 494462576 431079231 983191652 552900849 119000662 92014859 117333928 58836257 450505069 369024443 406797810 679734749 493879138 339046114 846073938 274260861 676016911 228954094 233086381 807728667 215093802 912288874 819846901 957043567 793837456 524458804 479407952 631803393 772046928 119559810 810808926 532568094 46241735 669699230 836288347 474026602 941372627 549051580 207585418 459385928 349274074 502573058 995562802 211138051 766957372 152010806 828797701 549418992 478289362 365257795 342386369 147561844 788010885 517545749 120545305 495665492 609534802 46773493 635998034 675501641 108840987 707748094 925905237 793305198 483620217 901431067 664715300 387788023 483458697 258391170 842921297 314595047 916448270 554975318 965720508 659914445 850874916 718232128 995982396 720020964 128310167 523538610 794740681 709790576 354321792 920894548 710590198 885053821 785356283 246870108 651391227 531959562 847642926 345803267 389260888 570420017 208524520 342696998 342601288 176358077 531672439 509548068 437258854 226132420 452666956 606269016 181398243 650721646 242209437 989377932 269717266 95875928 920755270 635526501 159070635 511213156 695985920 121123430 792541926 675093166 87878376 179976251 461228531 514228248 446237757 419829899 435499880 651498373 681055269 848327818 782078437 678824476 183786281 313480793 402904396 506737474 154647125 840260464 832204848 390584456 319575279 655337996 756605572 654699097 77554574 92062965 447804422 333470702 530474995 847740868 963545177 928471407 649789334 904801377 312140097 893175645 304028806 943321091 270948554 371103437 530933361 775768259 4310867 953321138 222776479 663840872 160703754 671370668 113357895 804900559 267815652 989414875 696252595 940181781 407355753 552049596 764253935 376509226 474680475 882598718 325696306 328350618 940714307 398730026 912275724 904638816 636845096 463830705 20462056 164334754 765378583 361561979 109561752 173224458 173773389 85273607 703643676 133380710 932085792 414491941 532409643 250630479 358530441 646457279 726388304 113700130 930029905 733035274 176781126 343205743 179449810 804537485 976737906 657357758 208594387 199313454 575930032 716665220 285359108 897228159 555170689 523016847 223872706 883855315 754057969 417867794 425081483 79581917 265000231 808457600 128783766 137057674 658762566 626892690 478241007 893103250 551378988 576264608 820750170 953516558 146003348 149719591 782718233 76378956 890099420 627316743 907685613 714730837 625530171 176526437 21615962 261934907 725801940 765642191 900309997 302543474 902944417 20539148 554805353 948784583 293952156 866004697 177351182 649085491 651705725 476084041 839088024 379164247 148346587 48655219 418803936 329018501 738640252 5512343 151888483 115678283 587598982 117696865 340238481 298281668 157414091 816888121 654263114 642663532 310244000 611859167 566470865 807008810 398422895 309091863 499480771 320285327 130125274 297089031 152130514 730270672 144469721 768222341 562932108 419704580 144367618 380420710 48902038 987426259 745729432 152770940 582620245 219717369 549398793 94619391 111571170 590499597 54790050 5498730 991728024 701988559 993888444 58076621 550495082 556824025 725495829 172801656 858230021 442928379 298169126 203009008 44575016 48909210 701726238 555214857 927263300 942726246 656818173 332173398 431744774 833771861 447332127 515562042 568794620 782531348 197212786 97276842 553479695 871431377 440251933 813065341 309969743 194670541 281621120 938090634 311310957 405125212 416346267 452961373 3685565 297822557 731335025 979691878 816351218 27242082 425294430 920558734 973883648 481131747 263134673 345787289 929046750 904872556 674993234 145264047 435134324 408335624 235025267 413158281 973085438 95230668 617303711 955650178 531544763 425981248 713208790 742732594 766858096 852142762 122137859 630654223 879186668 817179244 60440794 933664697 663757397 777612744 457161697 868323021 237734946 535178343 932152651 58175755 236173981 536557349 101630282 564654729 198568349 259427154 690122314 36454084 843204019 27323616 229236894 613948658 185217466 915487503 483955094 78908119 423627401 330777232 27226591 806058331 613562252 551573956 391569391 224512675 692763586 36896831 223339468 267563725 192889759 217536366 735372072 779146155 925839606 588696686 767880663 87149260 338250779 418712525 869733866 981510848 2141943 262691238 935181577 716668019 312270807 314872186 160559373 58822522 820141268 190503292 681630284 696417642 511977009 519550219 742567304 594363706 931379485 559079801 959745896 672526952 129095467 588643313 397995006 161212158 648568425 551489874 98224804 257425416 308412723 974507760 324515115 156567186 690870192 264261246 715752850 725626586 362659245 890730804 271196890 355067282 114709530 25180381 171626925 463582819 308111720 730124848 763283024 131345631 710406371 787301294 449514304 403763055 211995231 17725735 665438038 892257793 342611909 540544549 580652352 737795648 362152043 295122399 703402778 987433085 444775692 859910758 378940764 674612264 837785049 145632981 42876963 17284293 760931839 126037493 405899710 898181791 368202974 667803707 107547526 623487604 937628807 646843591 94318589 788765961 500813199 659026433 117838293 275521467 969274561 771945643 616552809 59041070 691922746 431646261 916368627 472512971 325740634 194444132 840297802 582214069 98757414 304057762 86780498 502713391 676477582 578179049 902640252 30651355 765287782 315310253 947538929 654022377 767724922 484861119 259640452 813299287 212293372 416511950 681857870 61433536 927531785 237812260 723964826 560619565 417339301 365657864 220323359 566143893 745318389 824079660 698296516 91190373 656351611 882200219 989385212 75331153 2680715 989375259 530917432 532632721 9304026 782652588 524291056 34604367 847981128 22904614 205293006 807731764 408100541 585759396 800468387 2089036 610184050 893059082 531088523 909221994 258298532 656175855 722139450 141724669 62448120 387764146 763733613 915639096 790262048 56793866 56040838 44041249 40998907 244824340 396600092 545391531 271368787 421326333 958989588 364781142 390480210 927312271 532767912 902036946 625300364 757329090 463575394 422915801 599641900 204043588 697791772 827036108 434557816 683591496 810861517 563817979 833125694 491214872 542225015 295295990 337310788 393969554 539022755 812795236 592902837 449125457 19794754 559997204 849486148 970756043 830792197 798980911 792501096 313067070 226255709 879001918 48452761 939376823 50674765 663634860 402111319 926701304 204049628 637644055 523801692 854585002 205006337 284325444 405549301 37047335 402250246 487073488 221121811 932418564 897168006 366166116 904914780 462413399 562343657 941245015 228603472 384281551 713091324 14803004 133433542 247544983 899646550 224907538 393592156 142871687 390526114 220482836 367611333 859821548 286281626 807269367 56664768 444621138 186810511 431539189 290932276 41755980 910014322 905053281 731175160 847574470 84574399 474063339 792276173 767927965 119996898 24954436 107998463 889109799 804472092 924405382 811685492 124350214 444766132 337982135 274523055 698289687 57030936 508121727 223809137 530747251 788936881 628809197 163135227 394679306 868911924 587470588 513499499 178660105 633234228 468686376 599793773 475254276 621411969 555782900 466892340 805353771 756816669 146870077 400304534 297540173 527569866 847521866 568026688 875580336 31357397 288443457 706302631 522858927 181524618 387734735 290999494 61444133 548209598 157142294 202920358 364976135 490613646 556712964 518255241 844121189 269693598 501527999 462029179 229626511 794930468 725862876 969972605 579178197 822970957 718937848 128698458 63660048 400667601 817888153 545947011 403712761 814896230 816690152 983096101 385635404 452953329 76148878 384583313 565300350 923766073 543808481 141778290 774384509 102548748 502642503 733013258 679380433 989020341 333517807 850010971 563914470 458222283 395153297 468902636 596833277 313512815 375818500 381191092 59571193 897539119 432263219 228724934 747955022 360314852 481500292 536925017 364049223 699074837 885635705 637902552 152402467 805142861 889597049 73893775 298635444 329562679 283125245 939532488 908363828 397554429 113596503 306922786 320884235 158403687 551277154 177169058 514767018 622052330 715326474 290132289 672207869 377019354 707921300 388899836 549968880 525634356 766764061 320990311 982888705 584518653 564124233 472658171 462187581 996185054 393212610 368822813 206127097 42353621 352286066 877274035 151052714 412220168 484678227 220800613 934026998 889570936 491787962 47263056 17043690 502142254 953265728 264246703 898569693 663885668 738006053 624119798 797720431 41912155 51264834 550540529 832796565 839634343 949228153 978079859 55949933 309887604 5748394 300740591 269478687 769896104 12883356 199073042 686722058 35071009 451997216 119302439 201483238 736503939 290968500 564093186 368468832 149472655 954850709 854025461 739103744 403599294 840921929 131877485 880990171 649788384 890106591 983778862 570181383 736498034 98565193 738862607 728630565 158919005 437116355 389693484 830721970 627770222 896335797 554824824 67869108 901802019 568409031 303340322 562968081 505914921 51962564 783305708 724717322 274814843 613552738 490766222 466329800 185869641 466557262 406172212 769529748 394474461 305375060 786171815 738821900 133625150 625112989 531528462 653977914 795918983 770051965 778094715 910613401 561396163 471218938 202570846 931207121 478758172 746264606 875577744 637625400 300492326 968111079 529947070 888046132 765579591 465724027 221911326 715153667 19321447 845206306 802873566 446603830 880762450 605950528 368316917 887770409 509533375 640031684 930275485 763563046 315654586 52987074 523252781 779295452 182999555 658685994 373510379 341661480 434245294 525952407 486533467 500189802 545275398 152289329 645626159 773733663 756448579 250539881 932500344 64210295 337355445 69817295 274866418 402292099 160354048 206524559 892746762 559221023 699680043 930005930 314708725 752832367 108733875 826567684 450745450 42124452 828049220 655685514 596007100 295999213 468662004 77140222 379008654 435150325 988585847 920902465 31063090 525242172 175174726 476123467 797162700 445349905 61674528 286659090 150055122 7912914 643289692 807918294 496176360 323353461 475499907 767279635 374683351 96051226 770313627 458899570 744996969 564338140 355242672 4955481 233631962 571747316 481403432 289177472 609264865 439846348 59155919 152446409 853746224 843501997 687136794 355706738 361818048 54186703 229650080 606798173 496688636 845687192 85134136 182498695 825736173 307491168 906509067 248067183 461484601 154192410 589038662 801952369 365967990 258640289 391045779 126497825 502121347 605245826 383194471 456970828 866886749 274365368 404027429 152355754 307281072 784811605 959064957 591095230 831719728 414909725 918600020 154229167 338399833 156506366 163268099 242542091 295669390 628092289 698605403 254488033 410972249 584529736 107416057 764051821 400952324 401319572 366941062 757844288 963125165 401763695 35601293 919080117 994242677 578609534 787482834 593554965 5897336 757489749 176798385 383495246 239594470 815715187 343107215 502543122 19039992 228509316 844891211 162835228 261915160 522869515 965857128 75640120 96623484 493377635 877716282 504118238 961762980 721318000 333775960 958383795 255636682 37828771 429079328 749008648 637761754 529386907 684524954 867135001 179133407 884082200 413150117 883447184 506435026 173869042 824437678 581538315 433926372 903853990 568696546 991017690 859521495 918194664 141822360 435413344 559674907 794309797 366339667 316383523 41723261 605181107 621192239 781313733 60723953 228584299 317464206 815925214 852208548 961970783 226112794 431450863 228534234 123708696 401627198 299697583 366225235 565892894 15131484 486131629 328527015 35812848 347077104 698010555 700865928 593308182 833507647 895642798 858491255 122828529 339066351 685356521 604321677 467812970 503363856 704526377 92711075 629938499 643015430 741757709 380887469 271570378 214060177 962293253 626702168 297302485 643664650 469285744 463574523 858786997 57099205 479083518 2109052 205176042 472528271 123129752 350132694 495077595 181549287 317173676 672472225 56031025 973348310 198485457 457177101 589753919 379334910 796757832 955091778 474489736 235863131 834675264 288184652 840583435 89735922 778539619 361552336 972903052 457191905 631682460 208278144 484342915 556562089 862349672 824957060 657144958 757802172 815379559 31865124 712598811 537234215 226011500 675178195 934821440 215046789 932450281 674425948 664763670 127314507 316676587 493215844 7216464 996140823 228373199 286468563 279264484 502671244 416194759 882578010 709890193 60796918 305044647 770792286 184852777 271767020 25429832 485492439 297441481 843352429 449781485 438425476 98589984 274186958 788850789 492650596 593415714 653339072 318779915 531300467 294366299 477560660 46753465 675549485 230196822 35704840 391695715 753829158 64133545 406869517 313304469 659386785 634412153 587706168 258908689 322631525 412071022 463884545 944941412 869091314 49876296 806837609 335955613 109714027 632245845 490352303 758948714 784712080 772334456 823452245 898132512 874661461 157473913 747093182 202758594 564324120 991623397 222273520 323113551 806850457 264239059 25212430 228049414 887796954 498123915 38044058 18068715 921604781 306224605 375370702 72753858 40701565 862556390 120439172 272527284 66880471 156151815 353502781 818544688 524238106 262873112 520331199 451867348 66467032 499363901 140637753 567134648 601233887 574267643 408628262 221589053 946421697 491944726 314697412 278210258 838148479 548506344 200636087 545105889 912836474 408312517 364874224 277078607 247980441 537171419 413379893 292023638 75865918 684418436 276907297 259418622 447288187 787951135 475184958 44561148 147979229 542780334 331271518 453600054 736016564 227105862 555436005 826742132 885068351 514611214 178605934 353653431 490882664 108487816 172009592 397239911 652145745 607233080 38396776 469550057 623215104 531142635 989803347 345521530 588408847 608111337 8566738 81186751 954209197 106497876 570153869 619274019 688517020 864953139 138906051 19876369 903659149 26831885 96284390 814149422 78173698 356000718 927388562 815665703 90371209 737328577 32355834 202907508 681822454 81345512 483802495 547103820 491847187 914745870 512405403 960643384 10443935 917387727 280020114 85391935 419073004 709014179 248299880 819402040 299836864 505653360 388552194 814910459 911768930 218900605 498025316 719560446 810004813 551780188 950498618 320888702 408311185 611212691 434175989 919463388 260616294 894696461 955096969 44466599 95108040 828966451 998977145 461916052 970498068 520150976 294646711 294007545 968052104 663072382 953002238 546154504 786798103 339907661 345807108 39186038 379537581 673320381 69598392 242607710 662774522 474091843 470527840 6717801 682714099 381214859 175752525 207056435 19098991 439959494 101640948 324392360 825453531 904213232 700815771 598703121 623251107 336250899 688533253 593578142 531970276 800274445 639367653 924550185 452018342 21746515 209177412 73797628 408805425 501050395 712356584 783009420 915220896 974686016 442068263 318482340 240903711 553782189 474493573 570828829 783485969 32758532 205088364 574458847 895809352 759628863 74387827 424184824 590488295 253471485 344925597 291981885 141566625 917149828 487888903 893652279 253516314 999751524 921185676 762154452 984778580 238671187 288509668 420927971 32008463 279086981 539177810 493467557 137817063 416800604 116091383 121263081 401513257 378773236 796786270 763623759 383080952 228242458 455315867 415607009 432811869 387730690 687357760 549562434 876777393 751849265 21512921 436826355 182008209 259406273 105405605 442840771 310043350 247065069 571291898 917436126 528635512 802346133 587817800 42776853 832788100 24344580 182266789 904770902 871210668 342993046 268086221 482823986 548296615 297224753 305220405 187084599 393580607 596821537 324731785 574739761 133699309 18063630 253704060 919375207 689154517 366771135 954233234 663835743 518331431 929000075 388817402 639862180 539896420 83144208 30888242 597702304 181144274 17981637 518412826 429978230 698321234 966071633 165881618 56919069 984554982 876503736 96567096 870243043 206703676 779615952 36510393 524378017 966837979 490924337 180549912 937999460 982902127 463111504 304129263 194805753 791568182 12270004 556062880 437567840 180625447 774603189 344459828 742129189 396550433 926717933 591026974 251635317 975294495 601136282 950241522 378259709 885492887 447864121 735520312 498142256 992412716 846306612 246901372 729111885 891889209 990371944 544471388 936832506 732126118 601787940 6894840 155233522 67863868 843219655 748290279 59247818 955366697 960846156 246500653 468867741 220390676 915217788 606370032 545523464 202324552 704738228 465219569 138684976 187420547 237461331 7266832 712135695 528044282 88578825 561270526 305892205 489646136 229902576 926652139 601105584 196097215 81123713 288810591 819893284 810736635 363211173 879714001 972848797 46505401 892082195 280583097 674531657 470379460 40547621 986861057 393804366 138849908 125258030 84846402 493106800 861506980 413636812 711324325 565020698 562797133 80489496 842759479 627750868 262293550 659573260 491273567 843513880 694309605 372634645 416913912 78149172 549499312 995154981 112740566 275529614 392932473 457913476 406413714 486937136 941524388 97797498 104089105 786093517 727475407 961763996 281332013 523497852 913113850 435682739 47996175 268415642 384479161 603509833 339995731 436430180 570503187 708923381 348330913 864369072 820757104 903581942 738242579 694006476 333099452 26180041 95074212 890067246 994830535 262844553 390882090 407529486 224136784 662056561 317737111 348281750 358040048 7152046 11236258 394042854 49408348 983689203 372424684 444608010 620049228 23361796 317450751 443433948 859249349 726104481 328841010 754826001 49327135 793178209 519641848 917943510 610837038 314167845 978047297 501627814 296441892 905012521 905535388 279195114 643080264 659001010 3889695 855242676 830352322 50330289 275076970 292415256 386901275 398298102 841553905 543763681 149091960 53716016 293175 582785130 872967491 636236763 840652907 782766454 418937618 716596553 209813083 829412350 869343170 447979235 436063116 567802096 980686165 967019141 288844889 148063117 943241762 48017881 916690820 515950274 110366980 901962496 872922106 767259033 330708113 576440824 817550194 741265928 738634837 470101969 248302689 165466187 517140337 215871999 923806434 217977771 517783211 67533588 210492316 461230401 824979637 610236363 346709930 672063888 601898972 203316058 923730918 743980607 597054486 254172231 800786130 546335817 453635829 411211510 452586049 880299402 815606656 707866107 405728552 152743263 40687417 568634584 957360442 127091068 666406593 452253459 422663271 836353273 468193721 603840086 306849998 221589177 156088838 430881166 15700827 908901567 506741290 405324310 461104065 560224033 220485926 279054104 602590201 189717795 744751713 488828952 597760884 926454336 455294423 660007048 257818518 640067030 89430207 588917445 986342302 747848382 33966693 833151601 143190237 529953850 197504885 720886031 247491170 704841860 227546433 506592730 720228234 804690823 408481545 376229480 895396663 927790022 687119967 389027426 605230987 723815753 967705328 760963507 377258106 961478427 34937994 666681824 33620861 141345939 946364448 85260631 187298616 701097644 508885752 451852445 970415310 837751714 811751947 498552538 143280407 411684848 336648365 984094822 484873768 35798889 609531404 788864092 765305180 899984568 491646971 440532107 10950288 997098457 299523396 512710851 960270512 296523179 318022515 901992899 980087060 814245024 277858212 454606179 279848502 342397233 802912993 549763353 322742608 157112583 288309143 664378591 133840639 325698345 649393040 925826828 555713295 465029901 628043639 244457802 718646867 909965314 425996153 548432533 519877326 770268335 186577590 428767145 505453443 204328608 946817336 421976237 184371224 354140337 379746598 522043039 549741358 516716604 446576054 996052271 461971326 834502485 220221374 446119643 998478599 134423729 493524089 361303192 733651803 97023867 854357351 147407757 550150218 416557442 388562657 534413101 344718407 605925798 291809020 567953716 664844301 437408277 621842067 800195172 259905536 860663519 826912129 689594747 986611013 1733773 738869933 232662302 922972521 304447819 482819408 603963965 111838733 426410841 837562694 87483820 27798443 326636233 287252282 202798060 719371057 653019965 345070340 45476195 891212299 694372131 553834661 708353166 552475132 600294682 761944077 154434853 597138060 521065842 353778546 322686389 18844130 730603231 880452541 966282782 585604545 527509162 431914929 993226930 189221075 853494666 927373285 477999439 321939817 838950403 150100474 628896969 48380378 877789884 817782931 332954011 304552124 610071775 536484077 588836635 444820387 598687370 180437536 379454924 493125261 761162393 747999068 567479059 940671475 979104438 335604539 361785393 961025678 338573563 460654254 762416050 748992260 924496657 646956446 541165213 991804164 360982990 871032240 534142719 825479034 782308741 555336238 934652596 778117302 739536776 902030354 883166363 706426037 390438389 392989519 492037553 325396678 31371960 947209979 915250016 82299964 375281987 352978662 330466375 788249177 307595154 843816271 213701964 912026219 355725526 961520594 545889923 826394388 784066855 339838743 650179739 825957442 108015983 457728128 521976403 573616700 381826773 650854885 330117810 767486519 101988069 86475483 167455363 193407314 798839977 725410442 480919448 167251345 608420277 669648405 333915950 156674405 730690089 446566772 556956690 840851217 215500397 437666894 493720828 798130361 275497136 818265687 985661989 196851191 971733799 622802269 784110756 495457047 513911783 542059997 23975951 322112508 606620358 872877051 483869979 345884222 81962554 572226532 331631028 592281855 810113663 879173826 40814513 252701190 932807685 471149087 407623848 673407447 521496803 896454879 157541685 816691885 77331908 525872243 374057419 985514914 662200122 651677081 538902884 395661806 523336569 527269647 20993378 23069906 544967274 322850888 701239817 586962715 480689974 713531126 366976347 616483156 901163636 772545150 457504973 494799717 904032139 937135555 8471082 388825708 158147735 61922876 100948263 824579627 9924244 653264835 992040322 227078627 706092659 18956149 754226088 384462456 89803187 269464958 631226146 128155457 342632772 456861771 430885614 980126698 338516671 171196167 970666691 43478575 428318825 446616218 924356936 772140685 357197838 553415153 284550899 767261748 516809565 888880622 410971599 703492213 977490510 269552518 855834195 934008893 380967905 845531175 534049655 611953035 52430312 477599665 744453219 251692990 517032141 808767584 131152966 559849468 633893605 390507644 418329815 340802261 158700184 706737043 713117449 236896825 300831456 839047804 891016785 680885140 309436227 157649618 102719231 351498173 420871133 855624458 290189597 368864317 850771089 341603225 381819502 337023965 478264082 804228966 744817473 606094613 688536312 342350010 514311734 211185066 971379569 973237797 399872015 638438872 363259204 563826632 774804313 956333193 903611186 467561690 85153372 966282560 484450208 4371734 969952532 259525862 732232938 962681036 917387720 653760113 886862368 659579971 864093497 314361979 295896403 959138110 555168936 652864380 459759310 991362526 712799264 816595756 602087124 283549727 879536964 433375173 199806093 977255707 105966123 722072381 300998962 523434149 804663303 274206775 532819440 492106876 112687046 443276614 564495510 295390156 593897766 290075388 838822665 641837374 720475365 363103920 605159357 39418604 553373184 77749070 833886065 239771966 530060972 262807315 710229871 760556302 34977958 729412109 702576899 287804702 773141146 656360369 172537090 529044314 882814634 587881554 175942046 236659694 742635735 231123549 335720524 628236140 978591601 594465944 19581982 425826524 642118536 409495670 176456637 200961064 653155628 758033055 165377002 111101110 802975349 836279765 942958558 88482907 679526828 123106773 368639783 845689939 146570790 198990300 844248497 330024348 837528549 568175654 356302142 802809582 506230288 633440622 39214093 711052311 374369968 267653643 611239289 967559913 6070027 674084969 86377095 975814777 408978385 308497359 240669383 2870246 97603961 698096334 158745361 225404196 207925607 846572227 235603795 634877412 301567662 555679795 610780945 828277587 130328811 69405354 646754736 831024515 287552539 457325423 542835383 585529228 270374152 608102380 87803574 252018390 20024677 765741085 202039312 163843464 373367413 480282890 327905088 375672274 924729524 28137711 312165912 3198161 983518912 576216763 512136123 754930466 240217886 802602886 120663037 676145523 944717325 867947589 419262354 962296112 572832759 127261653 107756879 227099434 519957225 706804548 607943126 300402317 579636227 85380651 757644003 235136094 415622783 672043289 69932217 533822203 959956691 147411078 51326798 192593830 159075852 162522706 739727344 648176427 149472592 805468379 823265491 937056360 581981127 798530466 225305561 290764929 982247374 888291561 392349871 383233194 620982470 991111903 937300713 103649497 552126311 225234987 574622242 524821731 194293207 505594655 877396563 508622094 662242915 862430678 385804784 368933210 928732793 738732418 726869712 820834909 573986464 376073085 624390780 181155414 183129765 395251428 967424768 553834139 259095313 103319337 809848516 553140498 136152284 846639582 774684054 418038576 298404699 168581412 516430832 272279248 589833549 372059517 13101630 85419382 238478423 439704567 160140541 676856621 693196173 543728544 600579988 438449981 650675494 580265934 543770731 296315754 884210463 417053558 4629928 171515880 763095622 102017060 760672478 933583130 274352106 656073614 881883428 754318840 852659070 869515942 40075959 357677680 322244876 795117296 53418722 583132311 294405198 344239241 107056825 99589185 892614042 513918355 248786217 740916992 179080403 647903330 529342079 58804381 323730612 239878800 431882060 694825255 529426633 188109104 252389444 954281966 91739992 180325520 5235086 466662436 618899561 742150645 321821457 632804638 675077974 471715897 922054736 340654198 659620770 578292704 841596226 352798205 584802921 370007495 760778117 896765036 830294008 531274914 402359081 36500181 304487558 181464433 741055159 709483537 761063573 571926946 117994445 74048033 622280825 697514872 920691186 998464631 383283048 171362389 613182305 678718234 470528217 418244671 535217220 454061122 521633280 357370740 696050007 233065355 790620926 597373778 213870548 244574350 870213480 88671806 394750079 94141602 550563205 615418604 392294007 537181439 408088697 778229816 970257127 132542463 326988034 632800161 725660623 212602536 532012692 590880708 516742685 136375601 453187772 940397554 864592374 462771767 187378738 152468044 783485906 650765825 566541468 885508394 287335179 451151228 349125035 348261022 860996718 642313937 249400970 642155753 656888979 936365904 457871408 433328912 371201707 431590850 642870524 372010122 320321452 42528684 603113521 931045068 635590785 26926452 853664667 964684949 768816645 505781166 815100785 435231771 266243264 934090156 780704759 529518110 292870232 175477531 715851501 194354103 765173361 94144941 940492380 300485771 210023034 265662572 993584300 148209900 886672923 14822766 886678199 352998203 29200638 601692680 653805104 790028768 277869984 642095194 183317611 945856893 983861450 653066693 794092789 947041609 423376578 232434083 769440390 761570126 514915152 741124456 286411710 766078796 578852175 989790086 79395691 646152625 132401607 768702898 539248473 238011782 57014983 708962819 114144756 343050988 124385750 744061713 425693420 976884369 466482747 59365551 268568660 956044906 195490643 378305116 2688891 25417664 34692497 650765333 390161679 920732918 235260976 945117843 104902193 518729850 744510185 809191588 546150958 966826660 291879399 894500889 239211603 228930025 814725934 120421628 602924973 649332915 381629882 604146621 414761884 148150137 313080407 510585059 24341547 826059929 920299987 704426930 696001366 58873134 937603004 324725870 949308988 669491305 14304857 64822609 541479342 820621258 901746836 298875153 191518373 34617265 258895507 60929356 889226368 294586359 605591003 552743824 265419481 803366548 625463947 736668635 661747887 977283403 253631644 506696480 206548561 662306677 602921835 969265652 500222460 262324273 539194927 642383990 944675893 429777322 537928887 110344851 763458958 882860619 453259218 7528682 533303310 57194845 724619540 749164663 97935648 194115880 508574934 975663373 36041523 769631475 354738801 622649873 689607768 307072145 385865499 207417264 385803747 305547600 991644683 416267359 192074414 220649104 318564741 501406927 987802961 39292842 527846291 345126100 112223693 484685302 790096154 21511607 557590399 905262006 825735638 975876202 256528347 729220953 705472964 520949833 162844083 525581443 669403774 159810645 206249386 86606198 305345880 989133293 497307163 410682477 997319735 827906116 399274794 915522199 253518461 591396557 419339688 729025414 171027514 771525387 176755925 705364521 810843476 494109921 302118214 857938921 906157788 959799338 695208102 86381 203915506 11819196 602106179 60805933 291976222 706863401 104811374 713225016 900377151 175279559 267105946 625088362 947088950 277002391 602528322 203955127 345183890 652923404 551198721 809557367 87926971 410786911 968529675 317054196 668632569 380864392 731520680 387116804 369674046 812583297 392925971 951172086 523953515 764031930 630783615 379234221 620261601 513287095 843001484 904589589 600768596 388760503 945743161 36801713 178139293 305066150 849559433 23886649 276899730 123013419 417898302 114791584 156129864 33096647 813395254 341559275 510560879 403306496 408095374 654034565 86852253 588296188 508973508 484606710 636393793 548579309 451971139 185190877 532944716 442655641 792280077 533991275 122521707 59213687 600244904 707402427 111783353 594612658 422005301 468154031 207555246 993809444 399049246 785616954 381650725 352769570 894750172 255131819 261425076 285802978 102651794 43337656 579820109 497356582 245227026 911914217 863855345 119488242 541110789 492325566 796804964 448650530 99651731 303299030 55371299 809305105 248738153 575004473 457152251 972745624 19811876 692580903 909201376 816934248 939332269 659900168 923578270 658875187 637113774 377684662 42984824 585269059 898249814 60599637 404705814 42606191 368797569 750402198 261389385 943415254 551286016 206959454 644368450 832184865 938056782 151078771 484113424 554682728 709189483 47183442 141636191 438944592 65141715 587100779 622693639 220493096 448008913 815910771 802091694 177919791 689134323 208212792 23119073 938087538 533116896 608441050 630782309 469828278 358348340 521263566 593026396 716578306 77351903 706681623 200910878 521357581 183329369 808359979 838923419 403160380 952496040 975416252 705232824 19751670 95602122 660068568 596579194 332654278 557430667 940611017 987058888 750488070 102531988 269776255 777602299 250927546 732502908 742095029 21486324 589118150 924042301 214787771 338744046 341015623 849214768 123671189 400374640 997120275 110487528 858444847 257687448 911984949 828707295 480121060 2452520 594055021 237947142 926318793 544682474 604239602 496737506 751659411 630178310 248937997 540153552 745338437 412973937 556430562 709416228 343201772 213710117 261871641 102733285 198869457 829889774 708826274 856689662 526629262 197999991 505468177 562773758 564796987 154330629 888004562 28557927 201899325 391467185 821179605 32531667 194354939 243542505 937664469 457110625 131639634 265930862 796432429 916965315 678611178 903474790 871737117 513695222 791626980 424918908 357837196 745163988 493787865 805932595 689763678 73045466 134118221 598428692 416323635 850528158 310606901 797959775 173174989 634194565 44553775 133499105 42681837 47860815 227870017 799761571 596600421 939837885 692677130 289327941 284361759 294886064 513648469 474401078 440327382 696989039 221031365 76941787 239279361 466767354 370382364 624702344 849852081 586091176 337674688 179163449 769509509 898802497 679091972 457205192 519376740 454271671 637214826 319045692 626953691 973509790 121723532 113314334 318179035 768854232 39868363 744325128 959610885 66777216 666862195 989102043 856965460 652375097 891683404 526894270 647530774 143357335 817226183 985149694 606291024 417441972 205095737 55217480 549749925 232131702 821019961 557250287 727004753 684976952 177451194 119543356 167633860 743372680 970441293 420049128 856959186 889468599 855550894 6517497 732155067 89482087 518251065 873190995 972650590 506631578 524910801 434053398 314696433 834727182 577103116 95033555 727661059 211555174 603558732 212356910 584670803 843592617 436644848 699117434 350535637 984288256 288078833 837054820 515694266 647402716 42795598 557867379 657049431 100235276 79508383 41392908 804272742 971372917 89309715 112924437 333998787 537625283 938499679 912401302 716683743 105434263 751051881 887973567 320380902 638186179 5061380 76657585 581910402 588367429 354679760 689700696 711767992 834180136 526024824 623598889 817296511 638331101 995763721 67110733 767464619 797912902 786751541 243072758 749635179 65120648 141318349 640968423 264741307 969155636 403404703 825419508 388386333 587635391 748330828 707273200 888597421 26110602 406828131 492677283 922385547 532111325 78531267 81179602 172652035 812235060 934767881 37239448 976520058 209476796 190425053 143103283 513524808 294356969 705397317 761147415 657866549 389405458 9204576 712390506 435571590 276537349 622689318 54461612 75270398 904796032 734109841 137521266 114180248 964820768 703064927 675787628 628114176 116289975 743165134 895509662 496460306 696183295 999691016 917787740 722101472 891203145 530036955 916503682 654177961 338184754 461581711 283680863 847726210 561483663 904242947 74205376 238492249 576481322 633420861 686454555 881102554 710672312 289526307 641784654 53154149 666481807 388502256 379980100 32576204 98481941 141839166 103713905 211167478 570829186 113070790 775393232 657721020 372447604 15924086 80228614 257240505 678956201 125302095 326933110 692960133 809000598 519161244 736383957 727810899 72361839 908229304 394643775 673957017 169515590 33361328 739492593 258653419 58544014 407047223 698761171 206993528 964639435 791789469 859180412 235571267 638936935 149145387 724359040 333962344 77718915 545077289 464890548 490013473 696586226 105885336 893872576 757921013 490287755 371919805 589102630 213611289 556448201 934083442 975285722 598520894 479649996 230772924 92200363 673689018 585006513 170604865 501264164 711324609 247443275 264387027 606512053 135562605 938794623 684350328 365262447 973876268 123428733 380145196 118980889 863127092 256553434 362398722 396617132 664305416 862400110 5253310 462660881 544814923 671240717 852699928 54144266 279138042 292222966 576914081 637801269 632708508 478512093 258335606 203235838 841578544 638166727 393212296 126422658 940136402 230064633 326227123 916469757 339006147 207175033 929493774 791570512 221571802 511770361 535541817 338984191 985841642 257584089 871006519 289732653 800147169 854246948 409905431 738646065 315552753 394527710 845164668 312990152 593397059 945633023 91571311 445658861 563624091 85636516 29848011 731469772 972289220 672019351 574633458 526912340 993105248 844010743 566684341 672157286 573446793 390286418 66224947 404200948 172599469 393277674 570601802 935478469 769053827 116180960 580591451 770327605 761127197 896800975 70700319 444998505 960380242 419432922 160606700 295988629 778636318 96720558 661483615 510087442 162230313 110224854 636908990 487317058 57968882 128339443 206024867 896357575 929365946 732624253 491966895 100451037 119665558 988699064 911788716 62438411 585831409 343736394 400305705 600399637 904642871 948766288 126674580 10336919 256457483 856260082 112777052 861607402 636921454 898251451 434589483 480725553 920899860 549468211 32086021 430214812 641068586 875978797 630135178 358355016 712396025 327468710 883332886 862949119 444849301 458231208 810383286 629992268 772589301 184042108 929816081 1967585 900235821 61718083 708829321 355810641 883034458 203447466 984864422 955878320 49236781 190079552 682599137 678228123 249834725 709206504 695395373 377809032 684441348 624107833 480174549 82223130 752982426 758596741 759816419 607819991 786250698 858234333 874785028 255352505 340193268 843609074 341556874 618842536 278305269 495803228 121493003 843272381 546453064 356558207 603604616 979578512 659213172 131611824 343931266 407039071 647223448 950438055 270585175 9339515 414912410 55796445 847938866 51134682 80966413 560702400 18756618 786115408 543246602 626368111 477530726 900465856 767053499 543503988 933145099 97194856 80432664 530031611 796594704 946581038 853849363 9656992 830698582 454949255 852107309 607646308 866831947 79740889 998782966 682219750 8558635 124688789 490168185 494609840 602269039 163069027 623544303 284475163 567885677 176356643 268699523 857868247 487339685 83166503 994603338 757902444 889499857 192964585 356118828 664880924 785759454 997454011 930945953 538180597 791309651 189199751 410209328 495174237 965119594 465372164 307528770 525431107 560968261 428865071 298107254 651803591 361174324 803982872 170808053 811081303 892405019 26394340 217454768 386190506 848755237 503017763 507531128 730217046 79475114 369612735 331086880 780612880 856386802 329450221 164763751 265688410 97923231 32921503 305720246 753920312 960643985 342888277 574313900 320926769 947486172 506758621 870732585 330679745 188716142 130748424 404866742 440414582 447009837 481454821 857994793 369878976 949880102 489728142 479183166 546103154 629789539 789289983 224095964 820147473 204073682 805804516 804804590 797870574 530607695 303435974 164435560 43097179 875823974 877209368 916956834 718049654 301663229 131049543 336296088 1543250 913486737 243562918 252073391 268917930 173571922 318758530 274059064 212304333 853335788 527386252 412765286 795921446 202859735 466426690 674859702 39464792 461753049 652446557 564841932 896793739 124298038 30688878 706347866 801997977 395124520 729548560 820814810 526412698 553269445 160394279 788312145 719372156 964187255 589553869 127404392 168967244 212182038 904512514 975352619 536519764 377508928 953746629 175995076 759512186 694560275 107927995 85980113 708481115 76163914 65950183 738225969 662436020 479578052 331084440 528778262 283959171 986755043 292948314 392010526 114833183 554603741 697544950 923909259 766399932 563087624 232875073 428421979 43273301 260387929 455998075 968612884 328988648 914839144 822177676 169019076 149674351 182004707 806455252 86298910 626171061 347859667 201472627 126684375 651329459 645389464 6738013 945240472 683126518 263777571 507925417 121209164 732254323 268129847 249603978 206527212 772905343 565610625 719350238 58702410 693481642 759449516 840845062 759409767 234104748 125673910 836381504 826475343 925967783 396835262 768512334 402483787 87757610 647290007 298173688 739894597 635771527 675092535 559007029 526181173 589302548 705884691 366845723 622032036 784216131 885332861 182597414 371156659 21156493 253173325 942287253 997683868 724158324 434607575 419254538 670861226 91679031 358979480 368178571 75910073 175380138 34343389 207623884 858847227 311545492 877869109 305913114 197713248 743259293 615872615 564473723 203191370 578489160 351662641 158147699 368397263 276741533 243946830 765192196 60455514 865390531 896503778 592741238 899964651 224600887 450484188 74947137 382232146 517122405 796942667 603216897 893457247 710411771 80549438 513306487 559438272 958051432 824640866 302500240 30699661 403824461 404934501 111268279 39759139 689234938 955700737 805565251 837401601 856649215 516568936 723001051 697617091 784195583 941682739 661022592 107535267 351529342 946729687 590076521 406542191 244897580 222981132 963315425 169570332 956357319 81357982 792821629 239014890 213095656 989105650 746393432 631042978 387329504 243061228 328221041 961951162 446739624 182932359 236649722 608095601 623394991 832568386 725192112 873557615 360957119 978010088 879199867 239404177 766823647 796536207 951721253 433508973 625336030 131626069 209558193 409850345 959589379 855326377 521442650 761001574 908681721 236574941 764448959 929065893 176529870 391906575 789978229 249225369 271822118 792787596 470953475 396284678 761093747 560984685 662705190 837634645 895600857 252620009 413440417 807922310 820909052 161924672 509263257 734961985 271677196 973590941 286638164 527356169 773360677 960409933 396102730 818881874 452960786 964067877 691028558 378834355 887791899 79514431 547033639 988524761 470057886 402669790 582575801 715192180 229575593 66748896 81936626 653454305 509123988 166045166 331158722 938434813 334715428 615214848 320271980 347556497 170524673 606796838 393988224 558788915 750234445 710828753 179319096 804565954 103960545 302350792 82403911 152981532 274248129 712511137 117439482 821084617 579149295 523138044 831820896 471288757 888504771 259671237 483689698 155981168 311452210 494692246 612831024 673391559 749246467 936614166 35026656 978447452 665131356 533640993 40445381 626583614 709441271 496348244 437359318 89023442 941013981 644813514 552909049 17793412 180939936 895686443 368933068 228348862 485759207 750324619 531486090 279144584 590011969 327745228 605985578 984615578 820508761 254874771 545286392 653888031 757304957 631293231 820321611 454878944 860939031 404871792 735187859 84371257 936256690 354718904 498939351 493611383 698230277 910090084 561867923 664900879 104542125 112387116 800589445 92051312 720621758 195735565 889569459 988580943 287393012 633371807 406335925 411963670 638108103 995137757 961904491 49852348 746298730 976048740 361561381 873651350 983991672 682229060 382855745 139720701 214901915 734437822 715255184 797601668 545491518 493284764 111375610 954418190 165864039 494420187 620724732 74757570 459024128 443868075 695634030 743916922 221976792 96646237 20466267 345962701 988682813 989921262 784310201 913828394 805335085 275458377 329085369 336828848 439375316 632029069 248092316 964631912 363614946 737733096 987480679 897308844 464562723 287823989 444269050 774234764 996378115 838973653 831588990 772893973 970944583 985328713 669050138 702080861 181901310 232233774 166366254 265170760 756921936 973073128 638958528 126180068 43817279 928821134 793455531 225465993 912626801 535442596 803267867 146048929 848472150 54756888 196575346 787592265 201945690 208725862 464047111 226583790 828727545 646711943 56572327 404694024 103577511 379894254 939261506 682120172 154110861 718215124 206482340 419483684 362131297 299149609 945380003 963587277 639573594 585278728 334443337 629843809 83128611 762233272 190176542 737930046 297757500 577187373 512347118 281936991 546678909 318352108 31538742 579762602 744257639 31497070 152966741 437743391 758206827 428470539 421568337 289593883 635145540 712411645 764601969 639610399 980962715 674279245 797209377 898804852 963020098 990757322 583280823 738194670 962384030 904363121 375229380 528762290 430128644 787502654 582754060 599741921 193319438 844945802 40977740 627562719 933255434 661899242 915023512 828187807 515522488 443056499 135891233 846801509 514301182 724987259 897486481 148713489 562618500 514990118 38302951 118899327 628007826 892079743 308873978 347370474 383671572 795292177 913954692 322584296 113013982 40942848 322935006 662623873 561255742 703583322 298077380 625238218 847583259 791959318 692288328 740536411 348343074 28197736 912121023 554732538 394457503 574099196 865699849 335168623 696899634 361241458 871520828 445861119 252014140 127455316 311900609 697681943 41559963 300087452 146297710 244797313 833467909 541149740 966080122 331194834 45774840 764497301 415057969 2553648 139907682 510587473 912532574 758869530 338725751 62212060 61298776 554995426 819976785 278561210 314166618 125743659 203749329 957291505 386073761 788902568 961240072 899848987 31846977 230946122 833457077 625751374 931656543 218524227 648133035 648954641 87762625 272050857 227390571 33655380 445723296 585181125 966622393 319593732 547100475 105511378 965162814 122897068 334556441 54297285 637839936 343294315 837843220 536732763 8275714 141184284 26008296 326611876 259153790 636211954 961683531 549501775 227641137 692298588 440407957 241831898 505487082 491595788 836949026 323044721 112241068 216495280 874995345 998387805 363521756 348984484 323261214 604043201 383446385 259720577 206959106 717788982 124238668 258227537 778089298 682461546 96946124 881208829 154232931 613707474 641645653 657459610 72165479 82127023 725609499 579845858 405907959 794467396 224644350 548025907 312817821 143376036 37622450 973831190 297387253 967202339 998382956 436251361 312266444 313453156 853296460 479103787 363591826 156306055 494860679 177068150 157925470 335008183 558771292 373204943 26284215 160176413 816467389 338929866 469886019 345184321 973725448 809366607 794609494 254210706 989511308 708478842 245659704 332177169 447523449 620496336 105596403 656713593 490864102 322543317 81966508 683239580 281719709 214419265 779619826 245060612 703830401 180883995 860174572 408181159 998884592 583085521 332353475 429758510 98754144 392394537 341043508 393631571 407326884 420543788 625646461 800782272 676295411 136900059 703507776 783807951 898451507 454974166 218964581 404156189 108158894 569818304 90600670 745658833 586903707 927394643 970101232 307568752 244874985 720554997 156674521 920357954 502221136 260493311 178046635 128755785 842743233 46002314 388171674 268680293 846857584 795204656 455790685 963997131 252028056 755567813 850836377 89747045 91734047 810362893 678990276 786193207 654420766 800356749 496542751 849135807 146638547 166944899 150585420 501366340 454721036 258429310 530034606 633587383 251000886 776962664 968966051 66820146 465196289 410741731 91652324 620137670 511677594 296094187 385056645 913564556 719788052 176272382 159848731 521720152 444488571 571485306 431987960 66195367 420621853 943789718 824709903 748218713 248657205 270932438 936078630 77048556 386677053 689465515 374442801 623471676 346144540 406613058 11018035 139138209 953120543 905400602 358214772 512915001 621798906 592398541 90629753 633350790 241802052 138963031 145338713 862261829 613943469 681932361 704005815 56447954 60976100 963966242 462974453 588964966 151390480 485581398 642188945 641008369 11452649 146176523 962612647 67250855 243038188 844883119 366893645 187001247 975844322 737779016 422159983 661490786 828060268 818730641 579473404 282511994 870696523 817544377 283255367 56545346 371345668 931062552 883664966 149244987 404319750 962630518 31324370 819191138 317210362 159953585 292745950 33866712 533581529 217797845 538785229 245765456 290282713 247616576 199478022 498563098 47077799 257829826 99467765 522256628 773509144 317732899 668880852 873319585 842957060 476217003 226870016 833997112 771265627 856636761 360173152 275967299 254792435 671050028 161214974 669099291 540574451 896579570 211467994 82617126 50168855 399756516 5077714 437343946 247380168 326893102 234916456 762873822 239552262 829720259 83929778 717140492 391916717 188822119 109849022 885020401 159117106 968438322 997826563 60586617 413061434 96989202 169814518 281307093 335724835 457401846 537859879 812780886 438203292 263714446 376588331 292019856 561761960 768808452 745424770 307132558 25728975 504371868 712339932 249538553 807132563 578940764 788671192 890185559 619640699 866299598 98799007 90211418 484340212 556528439 400603301 228516861 700049805 547291935 607818030 720103336 641409201 365055915 886757640 340190269 237928889 393435627 443460160 126643455 342899613 899168269 921782042 564424384 224717243 502759971 631716628 942216574 581943586 596194618 221608189 634568771 514043413 925801183 995670925 467889736 134855548 640791291 447136201 146341444 362643125 825120434 144542095 77012809 297062434 349729001 460458894 600404316 781069852 419197235 15735667 576391716 302713457 617575591 197352673 539390595 557522964 261861736 941761621 235742252 63129275 436614266 623460018 893882865 234056028 853810269 888190591 644379221 294620508 342925199 376998676 980425202 73102363 700665171 21810575 136263702 490486637 427641286 706111207 609673700 562278527 361959541 374269890 473407044 505595694 879622756 497823619 905167041 106422184 993974919 106930740 273736637 488618431 238945416 807142211 495069874 687491380 155961714 391015569 642433577 699343481 758190243 6660318 714108401 323936180 274208805 447583400 510738448 58931934 745040772 564300744 157189808 26850951 992164887 170654216 366857212 131431119 227015304 762931785 327555396 116098243 561797459 516481925 584482011 898768862 171777072 946946948 534188817 960468744 144244332 257035779 813612411 711534568 454636213 341582008 901191254 711382977 310639005 228332242 265228945 844877113 72921537 743577920 665693006 274766009 115058974 324391987 943140088 318423551 803421724 524447416 70027971 403238130 205620246 245086695 605064444 465520095 108971649 524764405 477299035 584756488 248337516 140231738 699535863 690349548 228686513 706585935 30157644 50254473 339101413 471444263 684565675 531765028 596427707 213337481 32365190 734478125 436366356 236703626 380527889 920636539 363282814 880401407 420288336 552415695 223223192 945178738 505512915 891004207 517481072 582649758 367986355 711430760 858063618 800487141 42246100 7287895 211572689 815604167 167436757 15284784 397917310 46386903 535764006 336400358 966504437 24269436 467922905 409319818 622310054 199364420 962653872 160636396 863006581 814380380 57853826 492263251 419961947 849675687 359818919 532742989 698797654 925888232 615481182 852296959 309472694 692976215 816134267 544455552 26071684 436658514 344766974 186767121 294444350 880196255 436901745 243838312 526502356 700628590 542999825 718354273 151550864 944209024 511740763 928651846 52937444 803338682 510238522 601251467 878888783 337461323 214508860 739680578 996509689 282917531 115554266 140020282 208855506 228297425 120639462 223773765 713442072 927140547 303344055 742666620 941025564 123650042 50452984 526151863 953631403 553885371 236445386 31533996 998298143 187456389 305084213 585839563 647146570 379202195 372472695 986632208 972269464 55035647 285720797 771521780 303191530 968453557 297747569 73752012 811243055 351877495 396001834 607359136 967129729 106514574 591897380 991752955 593489843 757547450 173986148 214232726 34260194 940344241 838182781 842023308 180287715 366599160 803256963 445889981 941257039 323594075 165993214 484396447 931294247 635240109 418123443 692761758 318135038 505109110 689923130 923918376 444297639 314860289 921000492 946116117 549351145 395945630 157597704 195580227 553321818 107405221 439830047 949254428 698973564 831100942 716993964 267236169 741417178 528885644 115270523 427422301 463065453 85201436 612823649 799999637 867013489 643807331 135781342 639499623 896265475 274566415 883412980 836234119 66745520 192066239 752740515 393730114 481721259 80578686 296312054 937187122 569846495 100668754 96372606 718604877 346818489 675521871 594343584 78805018 787596434 444285833 62861528 257934238 674470501 615179426 638661287 824086199 167975510 989251683 467240010 503150350 95453523 387311060 121327405 499423995 8180912 591364095 449411700 297010554 151885929 913929795 397624990 436357607 465091144 292928241 345493467 674426570 453028662 725222370 632235056 807871404 447245498 894994165 178289845 189912584 775252352 896463389 28602524 46802771 681253237 476896053 88429748 468225698 164567874 1973311 276162374 484355894 823046509 29992914 370852185 184994346 816430818 766433646 352848215 838500058 747616461 655113856 821908498 465580134 500206330 672304745 44545440 488462583 796988639 595178066 802698626 309569946 564190084 990705576 600515524 695254978 382497930 45713568 301446068 157984131 792010696 669095868 74970203 550081488 682730773 201344976 86267453 736369128 422284702 916765863 213540049 381459308 979966292 884966839 622686549 659201691 608938887 970034295 117570074 318076190 206443841 45316197 593987589 806470241 873799677 40292399 382500717 660732344 983370259 624489047 250313237 2320480 807309359 637461331 496396775 241978448 238250301 680005954 581582330 720949218 509721242 307827705 879069888 570770742 79145029 67504910 523459665 801796946 517435351 173151977 173505081 219333674 197008337 528766814 641014914 942191957 3153479 665290807 386511888 664245096 885067442 900638739 917595673 909099845 825680518 429471474 617211947 722589961 833474790 25467926 801849363 799046618 326552630 823543401 309618121 282248911 195680860 52059489 646939125 488583500 11445946 801302713 658474326 80044442 966267355 28524192 586948028 162585270 615939144 325613232 645580377 316592878 952427540 580043412 335799707 357166877 738137740 724598501 455697890 896699797 958249538 61938286 212000980 934424264 805124966 868839168 919536860 100372984 614288370 801331281 478263028 145475584 395799314 524295162 92533554 17103501 452689704 178530624 32658552 658823447 699271246 795006049 443188482 996125190 842665436 73692554 245184219 446267806 617200831 710533241 257824163 831908751 452834194 289005412 391714465 318796845 201895188 128136001 995347055 251444651 457067109 904913791 738560368 72446285 925381537 379634985 115205652 196784810 942083395 759544029 825908520 121370371 363934377 595218523 70449455 831093529 396862347 519111312 4104848 640478955 860669937 639367824 67580286 28458516 927908453 934768450 589461471 625437578 499062208 298260133 663855986 982264131 913364247 663427008 832392641 599658830 646939181 957683973 989647688 986665574 728877091 757272632 388369299 665194253 781791804 970632097 892988344 378881907 405410759 141564519 399200624 393016168 607092890 693251607 426335115 212600511 700166848 927886750 333659184 206463649 383175506 46463872 476434426 209181765 620914360 987649103 861019456 759987157 893677068 938092285 371690593 900215159 59573736 56610315 536886938 435783470 433055214 535575321 775914655 252609492 684876423 38773834 939926337 186786388 332187185 218870723 585514061 717236695 651651555 808314312 974502469 492783383 198645358 88165302 571091963 229334525 735822317 695129045 547754749 786148649 533893993 393411920 957305560 616468143 953265577 247583241 763348396 174493942 9602504 39113208 127270245 529231461 126013372 226895215 6606609 217727496 600896632 842317025 805039380 908619275 946650290 474919716 915773077 713439746 198021123 681345131 942328678 671185690 158152242 741798368 948212419 973648999 436266937 260885181 975549907 545404256 22755009 48992057 22795698 300291586 705169211 706599451 422388596 338790751 563540917 853009146 954637281 587497677 127240589 25514377 788093817 286797198 307762997 991015320 986658858 665338328 862176285 652031203 901075879 680667592 347348487 262708259 922601299 757654320 76430193 624209358 779640830 993476166 869858841 204422458 334447340 959330040 158817102 77325390 21182845 114095944 945398029 780045082 19771613 340934554 476592314 623457745 380710975 108062778 231432630 932107394 267852928 929707590 724325131 771381783 246756272 216117500 384461107 358200020 771452060 934559599 690187276 1823856 27115242 341682051 654049454 153175974 778185790 418024043 73366558 949152320 618215682 214659494 235693868 911476835 83531498 196680290 101655219 448357123 120380363 324671753 202131853 692529244 364752204 319404561 904304813 856513401 393378729 65070932 167918690 613059902 13106168 775163386 615476073 980137416 518453982 819772211 412814345 685540771 468150012 368655868 313143887 695540927 657952811 439115184 261413749 74817802 288790516 453032278 493627865 197582370 78593776 21152158 556222725 596054272 382224593 410666732 905063426 427678535 282942979 295454341 354118352 37535378 508882720 395261518 362942043 902865311 493049769 175429383 178139797 891129167 422487356 738251576 75646603 434666028 526895611 808406139 470889713 487436774 878923022 471386479 241471126 293080020 48409459 554215280 35017138 403756329 918033689 755909039 790184066 370386967 327374535 919281967 251429955 666116587 71323534 161388617 149370595 668368330 718347888 184029384 108156916 355045586 596581667 597946515 342662159 51065087 347092956 668978209 447232426 165021735 677399153 326385697 295339708 173631227 636057084 749638050 589290333 254443489 921239483 32467009 435137242 932361214 854066055 53902549 519143059 840431400 806454070 972336383 130129804 24006697 628507598 203726148 45265790 115644276 714883409 484883714 290927645 926687547 655909356 607026710 186165051 9379678 501872469 958203965 106702196 265541048 299727930 681639524 163448904 275121991 476162820 727557219 917579099 824273657 8432678 127919624 288011923 951068945 236779831 49086389 624067293 380177102 395374258 969396960 755281435 925857852 339879720 512810079 544592223 862032273 900665557 313884367 157088513 719969782 309168084 936494006 380502793 186040612 207376449 998321576 707943474 221058577 760328604 172801177 119524449 352844186 506925979 3759697 239238198 190067016 18277473 102177310 895327851 684957833 71835908 126413332 43842493 641578639 772665824 743413571 653005870 267260660 274044272 205689258 912710852 232071960 888418501 309397532 847139237 951958315 313276974 247562648 679374305 626556389 461250240 804038686 473419361 746161591 355310843 996025044 275498811 376118536 371630906 90443774 510787565 411246509 431018614 349299958 786889195 68407689 765612827 455968479 822272999 923530547 720627125 97359962 754266507 760024045 721013377 472686762 485073990 126488425 607858160 963812302 297377411 75125316 710679820 379366639 62000388 254760998 190228296 784615240 892190626 694394710 288939192 973110866 181465162 769748253 720612423 158468686 612873026 906941554 454935853 763682444 393203021 254276886 690880176 997535005 820256176 703140875 155317169 108674757 723055064 121404115 779752894 9483488 309010735 423611472 326504957 554060484 874344166 713664737 835353370 253515393 400902579 53650215 577637961 866464783 237268742 575826475 927468900 29068905 304045532 963413182 27192416 352953908 809732173 14056893 785251044 527418143 221286635 882205736 379496727 230082207 360487004 865239828 77700613 373005152 381101846 97161087 745577172 971958306 561341664 432269109 726509819 435475439 383910804 321353592 608672803 119915931 129738447 155817065 587667339 708674870 533975487 244346469 229076841 42262650 597759274 997538822 688246345 747055143 710828603 186522067 888962418 954680203 862252028 143929396 916721798 819415273 236732337 449265326 866391660 858088016 835655900 700139271 161054829 100547480 461725274 713973255 632484241 420626643 893540789 182428253 572060238 817383933 645238865 861761050 155550206 333956222 361206092 341197789 477039637 278357852 633752774 841533721 532667105 572841462 90479357 29578367 323167982 266798573 192361295 809479820 796732550 218819639 643161524 535851648 427801355 455659300 117368463 781355029 279333270 703591488 520303871 732609353 363111681 683418190 850503154 619735657 563141912 657115709 264707410 560043501 792424430 651435545 131854939 572395621 936557453 748386818 79850302 308798336 485719984 538089684 771783510 985626115 435731472 731622169 18911036 943152086 393245103 417731852 223678809 771036585 367943251 917997746 902968039 653677360 607928865 318365312 50751880 182433993 492877933 635866922 212053420 756742970 510885566 666720286 796856072 333965296 172420176 497585544 754886465 40456927 434289818 730609559 756910171 287936616 550263514 443604453 322092408 548468631 578284440 897577840 939364187 139034116 311437131 222654443 988625036 246522033 637617520 628006910 356239609 231113355 133629113 696316732 231950859 196116481 760229497 728790860 413553502 59119360 57853659 147114258 930441033 137493735 201464645 245408606 996751930 289525719 241733684 120639060 90273209 685531422 781907427 286633460 815254724 911271854 337803384 788466213 720182091 614531215 276053278 93874884 72088701 201687085 350980881 400956757 67225127 956475343 922103103 466724030 384274048 384367756 559903330 426777871 135156276 84584467 470058474 79211606 260713213 246296003 260642246 914823420 493166208 392897619 402037100 199325039 193275359 615125243 585959061 349049487 885444973 520630034 188995811 820003896 270521455 426223408 835842944 615215067 931219902 129055816 103616936 176395432 982728278 206395991 258461199 876562495 862220277 975626620 683048824 660169098 831515921 646140604 206238011 11653364 817467240 71120538 27678757 588994891 399468924 803105383 983919709 538303549 914643149 832203681 512484227 16018267 516559302 864041382 73550896 466367717 17929638 19965897 156275807 464592957 835957115 587257772 380883035 806833611 733300999 313681934 781114096 829269413 566351913 131927386 507175624 228196598 536460175 907579368 459036962 927835311 64530718 905121659 15932916 10529309 857686247 746888048 999921515 795689200 437027478 662530528 259174766 907352408 725807738 364643250 997421263 697985194 967541016 79413014 545560753 202368527 69650702 593963471 772275725 859010245 468289115 628385254 290700575 996752537 895264824 564449682 416578429 147856911 802631406 707169093 649723738 51046343 401301869 708933631 312514846 36893200 966152501 448058178 469009006 868137391 644798999 12563102 178844347 971279907 773004325 458597519 440965077 783384064 24287294 82080085 379287177 240531264 314790107 485153540 921131697 257102522 878112916 798116392 966561946 550948020 709754560 570020409 579287096 9122263 708591000 526238250 21815079 613729570 535349465 939979266 706714272 307714415 87841585 969860687 499856687 283008956 530329602 994972114 677830939 268252605 335145934 268436999 565702196 735470298 38474763 274077974 205610795 383627901 128476689 497155836 759664524 854211752 139597122 564155423 417252158 248919100 428943022 712839080 317316696 939867963 729896030 816016845 686956947 464443214 523550912 205695713 460266578 603803583 841342466 113696015 67983695 342325041 975056683 481055896 839944183 610545711 481179455 201703355 766201237 361871371 210180110 830794411 379648638 691594160 35775176 389349268 346160276 995668813 170149824 320838438 88463693 69002707 488275831 524405941 490355771 818708781 235713748 990408420 407905694 531884640 376000567 32782627 388910124 850521166 527206145 318957313 532746309 170494797 25904101 339639468 623204129 227745998 614993998 616347121 294069461 171080166 925654947 902376870 89984331 869990395 114924358 642948339 915898809 215984001 623405359 56667859 894919689 384382172 122346110 127929253 465683661 92421623 534587029 851520119 226154380 700809442 860142284 994882895 735659666 794479985 573844912 335967548 744636444 895542169 731027890 133989496 882709228 684994912 6597030 766850803 86824136 85582725 282645888 445701197 413884722 881703864 515213772 294826076 486607306 162108597 681669462 56021874 404401712 215761931 930925397 319258913 498397329 983155270 288863476 403785489 750471741 732958244 97837427 496451548 339904591 986575963 49749241 431739908 669275821 442796783 20662007 232397748 266267316 800202497 635665591 958770565 348107857 151496259 48832989 12461474 35454123 183513589 677615885 961053994 382161271 719388834 926380256 1263725 261566735 57240835 192628118 964244488 715710496 624765213 592894824 265207735 600022159 12840639 283263019 150347459 714559362 52944558 21060292 82089711 358756535 397948200 172687726 369041216 591248785 256705182 183189438 820773182 550132042 412560859 862851372 601074012 887278402 456491643 927594090 254108783 844165845 476197113 770993107 120345068 901477935 783522943 1656007 373452342 410503149 167038630 439243339 918911998 226595596 706599481 851845017 32336299 256843813 408977563 158006479 858549064 471257001 2070509 718733538 669903115 371105785 706447051 507022255 692183736 117251118 161612152 574792208 7478047 780424528 241751632 897920041 339832654 886338093 587647500 446786078 14482632 634025614 586664562 185174438 126903008 213879453 590698344 190977766 598122517 186439173 612584955 110403821 360301441 719757997 109361839 363657828 265142312 395382064 325339517 750750544 680707232 480710523 179008766 487123688 888881500 397230151 598443931 975848254 377269008 173612228 264630414 596047515 523622230 989168237 465951289 608604974 489616893 983594168 567567403 835512950 120088646 881661564 156484237 109311691 133468066 789384804 296758738 934215888 690995064 42984228 757578450 526257723 95076575 452088071 337796550 162790831 963549766 432158684 305161041 628351020 432992529 3597315 132208903 849899551 445823375 77096995 161742196 97315491 105267150 249316699 781074463 263739261 396554364 674046451 323413979 973352929 821313200 704430052 25676485 80646157 833575865 422976138 53470277 352555480 723390458 242789414 889817815 123744790 157977908 825643812 604841785 521141707 782529240 524214784 163771473 966606606 80440109 814247096 678749839 234353332 420479203 678132166 691110587 943385647 222663793 857540023 787191021 373681874 166888958 879591813 700373975 734539015 268795831 65961573 700987834 927978401 56431692 703419579 348893653 62651298 782598933 714659885 562126751 277195934 309086108 499913912 658134796 171107737 14695597 804264370 243809756 708878150 344447860 765394584 160285444 681597953 417143758 121928601 561295393 499270803 546013476 368205798 414025617 414400574 826381711 971313220 103229654 793355028 817597114 441756198 168946842 769998514 539499956 689693376 717516701 60918811 206261651 206400794 499540899 349977322 702929288 247269027 645314089 237957776 343019118 509452653 673699238 160664359 909448927 71851561 29798842 517838582 202503811 749785055 703059456 922082827 207539368 88087137 904145414 55697493 755694244 516297356 369475354 781331159 911049602 441305734 887226072 904108255 348658223 917193371 973925937 197521385 369654511 991543726 784757006 46305779 484876160 219994558 336118473 368894934 328809536 178479804 59470437 768797726 319388136 437258802 560992317 6077989 95814376 376638715 552654444 459876468 260739507 976289442 197187865 234755849 408842960 265096819 642067005 834052184 403979371 768174967 637354879 888513654 455752477 834028290 340670702 137609729 620015607 150942655 566353862 751802636 744141024 312257644 801935747 889073978 545305544 476185718 905687236 238170775 584586618 947443392 731298541 687930066 468598451 664513119 695868011 81991221 828101349 641824992 878275307 718550390 317981768 599864559 293506434 484396715 728778717 203823265 197463714 357735281 885679894 68993691 53644206 455924133 682784856 558415858 362482149 403716652 356374633 84705722 173622412 136562958 367501610 546853600 125220604 609738105 207277853 699274214 461492424 206003504 455469178 263224354 363102540 918604263 30819492 243373429 12745983 248804614 285237601 442878392 211315793 37210303 409526466 552278041 307086718 666568957 114360333 169387528 841414270 898516624 88667531 14294542 703975634 120701289 393717114 505192981 387371611 623864772 144705149 851125779 122120994 158531179 618181396 719778384 306524583 961345504 388508446 435839493 759938512 110002496 521080042 713732456 595579500 984323250 617013066 485803716 591228818 350255684 204011134 53402126 392503774 947650019 856712165 541499673 280511762 143811435 197890491 575656890 371376401 561829075 848335719 596429976 892364031 98623164 160162551 520171432 904212214 235474886 175759620 795252749 852321499 660105278 475279554 290782052 708167426 508966287 781958841 558790317 307905244 547180230 526488838 279669183 981681872 401077416 962976200 686407104 535264215 861473175 52695429 473035028 26901092 90897117 881788889 993236475 736673143 747824547 341335764 530080037 40738640 725359222 205071257 946822005 313887733 324959166 840074607 495082278 915905660 847602461 499384158 803454011 421530861 986461278 874038859 48079779 152501693 571461524 466928507 882016509 464360993 848294127 298791191 689262829 231577987 438485273 940525328 496808856 113963421 962883271 816540903 594399711 701492072 770289457 366078320 677509211 746171448 733263024 743941984 362420550 735571243 658726942 313723781 453875267 524529530 162357214 203135948 618574394 279643050 922585376 885323744 342378949 30793394 871071121 224125237 109724612 984672151 771619769 335939648 635971422 230278880 199192449 100311203 448617431 453951200 524078029 452704181 126194793 344127168 378923526 617709314 602683400 105248420 716317512 117432954 476685764 30377932 380114238 791116119 781885308 650577208 958873525 787510760 626347437 685168 304371671 612770645 805038072 778697986 900431351 263974969 294969876 455724243 688680242 695007856 684229521 597110608 488827379 288271462 663540878 891380095 860375514 113925256 507006503 289649231 861053355 694217005 201198269 492156457 939508972 607609305 285460788 441330943 996561632 56274228 626973889 645047488 985125962 745398312 990829686 140360684 905361000 421787112 702168247 881504294 192795297 50009159 765783162 5093955 214234327 677619202 410190527 564311484 856024534 955720065 763812325 299580326 625399949 115996612 569339301 266599448 85836903 948585174 13928187 35121699 799049657 785765158 296164038 353978384 607987368 502366395 577500279 213468786 777596475 673328736 648767897 835889376 827250887 211720533 61914469 298091060 680358345 508173030 95521323 296470885 438318452 285720713 2103365 95387533 162567799 258565152 300366904 434299593 221272973 177626059 71192280 427082660 27288425 112167179 218442805 455432009 662593946 836433450 68731977 343827107 594800359 478482593 999120109 228214091 454991485 569805967 137049137 51360271 303342801 448413828 229083901 80521540 713332580 616081282 129205329 674247030 616120902 707891 691315177 45200875 257139905 204424241 214978810 350034909 529511595 110613844 390829852 764010013 297852324 651199819 201752824 544853747 552449421 985457532 227181956 61218618 509998970 511384018 915658508 602809412 695298982 882517941 381991226 313761599 680274199 581786618 965474253 30808690 475927724 424119206 608040346 871412022 145111516 728512738 817350607 80738341 783901414 162649017 714890375 22305596 869622330 997227485 566711695 151512633 555063277 303970493 102096422 233374265 106514194 1732342 21875478 304921482 417839993 507203886 986499894 401298310 147382689 101785073 686258832 545542436 873476210 396299675 396631205 534331034 617335270 907042951 527731244 335698842 925966778 635937872 99544482 405139855 960337984 913492597 403651775 915904685 212282095 800066992 495771749 751143183 779171346 576293667 928194422 532648991 956053820 301253925 377780645 760077133 795920324 730460675 955185689 454241012 602559775 648407463 93907398 271359528 601002260 726021958 359600063 3690829 330751453 523507304 446301614 600075826 281496264 134877977 111331748 332348155 257201531 582674894 841180562 556881827 876119487 210047782 118803352 854661605 851717535 793747411 35050624 379550596 722917614 590238268 655139417 173709701 809849538 681850973 183060363 372769709 417904150 211655619 809282740 282095817 933375540 456211942 769088092 367206003 57184164 891639089 683412584 830039698 29249693 83422746 78446939 63207590 166215680 386271730 684450585 718279245 282152551 607208046 987721947 718982139 111279241 147191277 599484795 222651546 72238535 851256465 587590461 935957182 893429472 487764229 520186148 371839652 443768421 210305315 715874165 28011524 207922041 188891752 853118930 864952075 271709297 594725689 109298977 560849551 870701183 649012936 482741238 386617850 655598138 128498775 615327068 586023850 921933138 168437739 385117409 256041614 880662121 890930545 838566144 976276213 959764227 544854339 677853769 259995997 99635849 28045053 693690787 491844610 328785454 192591596 109806041 531204372 754613067 262075900 681057110 441723054 716125717 22075408 80706899 522720707 626359025 377645738 781346439 421656217 397643481 631159402 86030858 447424938 169533245 232165516 324726885 97135691 242350068 606026700 371014219 192871749 630884031 708187138 875249257 72833551 434957396 828696397 223722040 540426357 392356695 417875767 452592031 909801725 19996534 828817127 849263438 264866550 648962124 170353073 2766738 421348097 430970096 99335044 144129592 519644818 662287762 415969196 359858048 317390354 13542693 243387671 789555117 711766457 739031527 591002006 165954773 444009303 712765448 964765514 663736843 119905166 994142623 309880943 731743444 354502620 644426668 611759151 196527187 801539669 916391461 174057425 108922263 107951234 37391110 377510178 681787778 138801228 645651400 367304507 899834571 811003273 145753158 406700973 237820908 526794663 964444167 923504221 86911175 601034041 493907323 422172344 471052690 320644547 737433076 424345581 537366574 956772124 662234730 241566441 627224878 918496779 731600854 792478606 705169854 410085833 550385688 78460807 982558568 87374066 985759632 54528646 890340202 149538009 515642964 401483615 397287556 190214953 892034097 652853715 99997241 642326114 241125624 973379872 156873888 5682131 816524344 370999203 622287336 410380129 677685038 872804383 416494384 516086642 391486034 530261481 719839203 567341683 243439446 900725837 186767302 304904137 764796008 239016947 269977129 55996693 548099371 636662790 992636401 370650155 922918919 536076422 573383276 538007850 63415741 229086674 823267400 212843459 635910751 7639258 410012031 699328590 118162803 920125307 556862804 895226453 100734769 965479601 380341617 24912632 176081616 332025266 522012058 813948335 814854663 196455074 298696971 605634812 682321185 15346015 302575843 48360221 136791700 636247814 579396323 673204925 288671785 308660252 872696486 150763476 203636128 182037894 651258348 363050961 594411234 152739340 754235937 759770235 191801715 495464432 152183708 214700867 81344092 680687191 273035943 516355144 829391644 946283569 433085763 896645816 304490431 15656438 161565380 824559467 299064924 587167820 504618098 858418293 431186708 78652552 333979658 157331390 249113522 625106171 882040332 518511077 904840976 100456817 139467961 892619492 674676521 895742628 463183367 239549403 730270009 243336742 960147040 472093562 81533939 153364693 47535067 976522981 88558364 75868545 818268985 955815608 156248424 677082113 181592064 973111107 731619268 256567002 393821916 978673219 632271613 607944530 429990943 255113250 269887988 361610288 486719704 278066960 736468380 693084369 859723216 540613984 384634656 584968474 713713958 933937517 408802267 616140923 855215790 417879166 183848164 587394778 746565142 723480561 708183766 351545713 135525041 42558499 111307603 105487022 583096184 425073095 849145906 629757218 124391094 13294626 805866085 381045337 79168973 746384033 277387334 31640765 36628156 403529343 238799721 581709638 44458499 700574191 944368961 414769152 77482245 87222784 453419679 435964838 688431834 180237339 349810348 858274629 489463082 905290835 631374157 218965178 181467664 659255385 642597967 95642148 621454093 19412785 826324586 505812359 815032758 482193221 34188479 479053409 447975090 653823078 723477955 801216207 677484330 107991165 812868973 118569564 187034638 293969569 241495468 113976399 286673757 924131016 288679711 222989669 993201473 319164433 866289242 394914797 729332922 824763501 124966482 22536581 834255713 616067297 307549024 737110874 309417961 165100122 169358661 149164394 155253061 348208052 865054715 364580318 915628741 936795352 747974069 379768489 740933158 20214291 732811353 478425507 566452304 428741243 930130074 833644910 415669499 669539807 54656091 587436597 678828811 947906301 440092542 372846336 583476117 539776774 548141732 45801078 428554164 636919385 386243033 242726020 240007642 943795888 571847035 846325100 558950523 795597658 635313476 593839017 96145881 893362516 495090260 230520348 263961487 87762067 14971295 898367604 394012372 717413289 760501213 894144792 815170937 523423422 418877891 563846017 95856274 527831342 387932028 667026759 773471914 530476329 296563099 29984558 983620883 464723114 595002096 69162941 530647308 824112727 103638321 429102073 632320735 236246987 941800854 62245149 156220417 859107492 881446173 528726732 951422752 304905104 778399692 380334123 688774664 100362947 962298945 487711221 626582974 788820143 814502457 473829477 808331204 353323231 261604304 54575954 405564078 958494876 95134908 765237071 390941458 721107323 24704827 849434422 701078896 150328712 678439858 507776622 612050220 266257480 882464996 91165114 478059308 339405416 202906064 339660565 943527586 394620521 243393034 640848157 684271483 166417561 926076180 688891443 615587566 836889745 362952598 690021482 269194538 635887105 404676224 163921306 358859407 53692223 179902260 384710082 458074368 635252858 118977689 106461058 593900065 194791361 893707489 202232498 406258892 953158156 677442442 733917287 745701190 896963571 776679030 562969023 274676832 650107864 170017130 127894497 120179967 865533473 131328773 911765669 221903592 430030284 199053429 111117487 762984621 213621271 531130066 282820647 968043045 598122921 586335406 825010316 629464525 288725709 43039683 805358910 712576954 752767297 989468337 142525360 467064494 502842022 118863311 565524626 105771543 269775517 413261819 194078270 227506364 227926030 763813488 29820869 865882355 467096243 470282394 641536603 236222503 583388363 413377982 170764066 653865010 659024152 789456082 409427424 480205985 676003443 885565308 658272712 577693045 396412131 953633961 201180596 952594411 612994076 192651700 857516667 116269038 811527517 196721858 328649895 395073121 345310854 184848175 659045243 453819768 676560014 684179739 603191866 982852174 691646648 787542968 109485791 891592974 999025340 54305544 716851128 747316515 306791256 948133960 863813536 241568686 503018941 35295834 7333559 970030643 364939022 713405605 505576886 428831784 707075689 73992165 940755342 566287297 917381760 48380287 45628235 186750330 528052649 336942068 609470351 547148878 921978946 757391876 601876790 504542530 793534701 766060767 669803951 91963897 709414720 405585215 995191129 716375937 908132197 342726009 589507047 987503634 895374144 394725387 935447064 266236230 762091020 540630525 689427897 889187092 549487776 709610369 547508229 617576489 826754933 426564540 854985542 571841480 456248667 2183398 611076912 273871100 768412201 110979305 667941914 518163822 122288809 492616728 653810827 500343058 155985667 572721960 682728998 378455229 18309358 732742302 512728211 972787719 25292397 18188618 943116066 123871063 935780902 238451983 426931057 793488206 330071752 289011276 251635338 884474537 916983101 297282281 44121169 798971123 218714435 297707924 909242413 575464365 14477937 487120964 679893148 137339821 613379594 331340939 442852126 750654610 935175269 207906967 299103068 801003569 802729991 10739663 364856373 997379678 579273290 863653207 105712070 889898107 9049955 556851219 15306890 993570342 13216654 477912892 767793438 737717304 928347121 500620253 125306090 126738143 793015067 741222049 742222424 424967858 842179604 870731596 476164892 561203595 688977631 677342099 999056954 631319464 920567714 420122811 829108249 744374853 108752630 247945382 961665869 588230316 252454713 609365770 326457294 440849334 654601408 373085282 955365885 119568948 592892492 681063223 23515959 70725674 10180962 888482853 579642462 904081347 896909312 108475588 715367106 14591556 930611650 866404143 275824468 86003314 534208236 130061024 327923619 7798894 693030716 47665496 199453821 474084801 487171229 662239844 904768168 485554875 740672766 78471103 349555675 259915038 10022433 510264172 845869241 7771390 600727092 120271793 214507831 550263394 350938469 907865416 98655962 345306646 942690155 905728805 393858949 553535939 177602809 552767592 978977807 632337357 107636888 407287076 45204572 653030857 643548691 316870848 363001500 4925309 375096228 960559035 4911684 932806192 694030854 79452282 529863854 291207082 157040175 587556925 956277240 740371468 849278956 864456469 276429888 982057662 51225176 180246999 23666306 570113285 306114512 188743343 413860279 149043709 173596667 994542011 560318150 657884060 977011306 226833168 981290095 122258112 804134641 692011345 476743010 653810732 370185287 339033190 911972162 358110063 666743746 49115446 411721669 186814910 936308929 227278879 911466257 50336068 822664625 987893177 322773642 470513203 47055829 871785287 477118240 845697202 152422133 881002263 136408590 827288122 415974398 761277300 471344551 79623621 467869764 376720950 890528539 806538808 224750832 544174457 405380443 744180719 425057783 861306078 972233837 105369926 613815344 628325561 384267756 828141767 337893758 467181441 211909437 967218945 905496381 107845072 435302223 33074203 761505614 787844869 381725687 356544064 226532641 970809688 857454998 557292975 874507852 106138403 292832941 198428968 389914801 826144700 348796299 669162511 453466950 137622168 816565139 612977533 686768813 18059550 100183911 304179308 125941701 820757783 423620483 806303386 121708173 634021680 850092095 518063029 542668761 30897411 161652471 781780969 987371837 683731742 56551723 627505954 180437926 370974938 773750445 377448782 985505371 486458968 209627277 929482149 690985649 564322072 704900962 686889160 452348331 348635038 796721179 539598478 982330595 191485430 239830651 204719653 769711023 375175205 268086739 992303992 411718704 57870115 948171605 563429505 967929707 272396628 41028494 772568830 565306520 698444133 633596754 712810551 971801923 240425883 654898983 730578422 494735592 773900677 213686579 486520654 75139146 262656130 595064125 774147595 819207934 69359893 401576773 276626105 24844732 925884613 308907348 359207349 285439280 802633798 401238893 872304076 631901239 498668828 454164933 244092374 135605070 144685779 808667007 300541138 572983003 620380138 863063619 240366875 997099826 809784375 613915821 16135329 859605423 223729127 345086238 59009564 239189852 211123903 150801586 733040178 778535646 379455239 492849260 224990273 880214704 818801695 763951113 103438267 993179502 925893752 760293394 66571018 49931793 739859836 579037819 255838831 993767743 451686284 698510206 425804076 671244431 104513911 616555218 998302886 197363686 599448466 272269768 832982509 471654632 998655463 844515881 727133270 488379802 56690425 536415873 133119401 550209166 31691547 479894702 698536521 781857343 769144497 35870950 720200320 534275371 531238738 204148731 886692249 774839164 882667647 913656244 760332002 682690542 697212915 608629368 715941713 537073280 835414936 545328145 207037547 127517737 822454559 578417082 233403592 932684466 910068512 197733720 126933836 658278302 699635455 860921573 937025253 204941300 224081926 820778104 60079854 95003218 960580371 439697053 455580829 544203786 741023808 973555713 404157921 170466759 578853272 600673399 606768888 184195317 547097857 180453792 176926381 185461840 579590881 290104075 913238484 455733687 992333383 129410450 682343266 230627051 575086332 148294747 14865673 385756585 988568147 430856038 580223690 524135138 678100214 590799455 530673591 36795725 122081676 753135318 559217883 638870411 338686924 948650066 873017153 952516635 688727226 334405801 501593553 296208268 164088903 369985258 430855540 216940060 165283578 353646814 566676802 519684851 991463403 75212503 833221843 939398810 309897495 506533478 562482983 651524670 900025435 911104572 829579116 142121063 589503656 188247818 381737008 669835363 246102201 371859833 842036461 905225450 806172165 476257639 222999449 554338954 954466601 713859372 534327097 428946467 323094911 304578583 890719490 175487372 472546925 174983986 588053614 916569355 878905791 62081082 534558429 246057925 574569621 449626057 968574453 498750333 342235183 136920638 309558562 917887099 57048176 496035870 834867354 270040266 771794759 839025969 904033227 346075059 359235256 252629848 882505830 712203397 379413026 684177238 376100482 619991476 736729709 478842127 162330016 52898472 778511574 306472310 87272406 839745764 956769935 186767344 458952659 72542440 391236584 175729002 272615635 873378774 525287181 867622486 255140982 847272541 776899452 120825600 224485475 774769467 929040358 846633178 562116149 747306583 979699939 42685206 488088588 864431787 478914750 289322595 909396623 237811664 509215728 702352035 149177208 187776302 312995015 726276015 54570308 690518721 22661430 38895849 601969461 553274691 211772881 505641442 638067974 624761138 734110684 885147223 449290099 360018821 489128008 984742944 880979926 459444513 564434592 732679008 571943459 175100572 542032501 140998888 784547437 944162915 794423272 264938057 297184937 708095544 702762152 801071259 387166783 715491933 142762219 317473578 754869397 228203818 865036416 328891174 614495047 392289332 683584480 979032291 213095223 330856756 864555350 857660019 888091571 53221871 887955996 294923144 424988601 254352752 83408396 569148425 556478719 810656318 331657325 749005423 186711098 620095156 718958693 141363466 915444279 838406623 828013026 947724508 917201388 402637487 313879919 353490244 960140546 823806402 84615856 830751664 593086144 434770042 178736109 988629693 719726930 349486750 38288646 242496460 451801274 906913844 405587839 317091922 324928718 384221878 180289076 898178931 218867361 789653991 740754972 889020709 97165406 196646968 246332696 333932576 186829323 273344110 375046544 517203208 930494777 769701774 816980996 908812991 185235556 685677643 114337928 614163907 389694180 452318069 38491175 628329767 323306824 10258539 338260342 890463569 247049503 289297728 265286887 221159217 458645392 746559692 611565474 441632852 995834471 726091620 801713748 272212614 250156568 704581173 855418235 775939378 843440673 286391478 661477025 41156608 464533242 128472968 344700482 642779371 676292341 730093914 958690121 233166499 499770933 829751485 768470299 744360609 20748340 769908292 911769945 803309441 945292333 496916912 865941542 738785819 93372285 599327009 826381807 621826082 599318518 181513709 440160767 769511634 603504729 841006701 863061275 187895839 424777517 511628650 291074707 669430804 51113142 213666225 892790731 410875110 816347126 735745451 431659929 472409361 802533037 978529996 462700883 243445513 266903889 673930129 616526102 614955933 903335104 841361344 368912689 907524753 246637513 676489408 412234500 261323695 45622467 322337489 551633877 960696837 217297722 836787395 917029546 363698351 596656579 160475615 228675161 967267499 598753339 692530711 527248678 271272415 453193268 681158848 545478338 736948869 498988067 135127126 929637045 202632311 518599374 577195273 336070165 56111950 388125101 412288361 205395265 341622352 970957023 476141306 764327454 801607369 131361382 56488591 58633863 87583331 48016603 652496970 27696155 856229836 289800716 761770793 61486894 179571620 270200263 656642486 637764223 263557852 133874862 843596332 177622330 517090623 875816048 58728592 774081197 203271990 142992609 74679901 287157447 882387297 254343669 644936996 462918061 441776095 77341712 180977278 850647306 947015535 761834079 164862692 353271684 85698140 677913458 67136883 635616648 495335898 362431860 507832580 103932949 223820255 347648322 190783947 558850212 526804165 31657287 833117667 134876610 118903385 835999057 153274826 976546493 837865952 5108482 498669624 658080221 490074701 982410243 938347238 711096513 380093638 127267684 489657712 78398451 101326248 42560053 589614934 286840838 34642272 760451817 399340312 120635231 754653445 601504134 694835971 438443727 316166411 923253395 400960564 936701293 679137776 92609246 279205668 449514973 618163502 244822400 597301003 108191195 839007277 587384289 798925471 525302748 854364585 353053614 89458185 572149493 145868092 885906646 431561485 964943246 50197000 251016259 834627605 85888329 577175946 225388729 821883904 173425187 906040272 949351184 731582691 664083092 160680477 943823887 842466340 147609381 745163978 462635886 267735913 17496237 739142931 193544568 885501244 366276243 120046080 856896338 353628797 632107572 941195465 272192609 921558055 664579919 944572904 769626613 163786055 549256518 335969398 396511112 272700302 826809674 353517263 156868489 333611658 176720827 569145869 371062023 848803599 607584434 848076694 445840155 780983377 200172061 174031009 827038482 820114344 659902901 96934206 932847921 820721177 731755859 679177535 89485498 939282150 215180304 237547816 864517310 786647562 815020697 13222680 383442088 82517508 663152221 530635 861845632 304665645 985125298 334060859 736800668 707000525 864694531 660404553 560388826 942732717 843910792 83645512 286694016 379073632 99254097 477428006 444919063 632452179 517522993 72224700 737915946 779320494 498134648 834065007 540634361 842869606 290990571 833275267 882075098 331813538 915363596 546277995 891178329 360422997 515530920 732346536 211984436 352896097 973531419 511488936 206223555 262651079 116705903 685331474 72074140 184271832 526709292 996667216 456004850 741444497 60551790 952551614 177462338 771075610 538357043 514969712 109350856 609220621 570471979 164753690 446786822 499495285 244123444 175677316 287392539 800410991 61247684 21813232 934808716 929231625 860144942 365181416 11178632 596805777 182347904 24745583 526256368 48675479 585007103 973322187 831383565 179853509 803231335 863938596 423068701 213562472 662857288 136887395 907913200 107098478 637876686 849568313 278128348 362316429 128371278 120870924 463617369 42095702 30142279 153786176 102184896 896718885 502187647 17702943 265784053 931514968 406540500 850505418 982726832 538755143 706251577 713029127 150871683 20641848 371405619 896083042 127136686 78487910 778710274 10089450 799764804 726843246 906266582 130030696 71637909 420966727 386950548 654220907 744536405 448748087 929583141 403970138 743675636 698207878 383862180 878471268 407411468 326755312 282756731 370305452 699355636 415603719 765054196 521078326 51398357 29286976 883929515 515339613 309693628 122814484 673678830 398127893 342614537 789695220 886993211 466969940 308721770 377563374 669165752 264123426 570871345 338653744 689988201 238144412 756328386 977066320 140101425 193063374 346846735 71348591 590080235 281893224 768379813 193767618 966857928 552704394 939994458 675387540 944058223 278594554 878405152 372964830 875386416 128609254 150327113 824375010 158450570 509110708 708097096 348783403 316163509 248781468 66436859 175350266 174916350 666130711 225594491 244228057 710593733 459411640 462894286 301599130 232432717 304315685 405450078 280591177 491242363 304390798 501830857 768055416 569999652 589043163 288752219 503593800 349170630 376370045 482123790 978954469 768538604 604572454 284151142 682370365 296477093 168107129 865871276 572096529 590727380 122778010 656369622 622285363 773548398 261553654 376908386 572111350 37891511 426300801 116766857 845451809 379285014 523277274 182922908 923658709 453508160 324082868 902260216 662022681 523107227 860814492 898926052 767573655 736774592 131058352 719357546 789356336 182435558 329299013 794924466 307608207 720456139 243308201 944371165 194131130 513589215 30598057 809921606 193435884 802865971 268039106 707948222 459399481 977998864 396752617 437543275 256521507 644336714 213885928 308939423 482453492 434319882 170981665 24854482 854952144 43091193 914621701 789738105 37625806 627444675 113812848 986725637 96713073 106058205 481672478 181539623 814541345 534454237 559099400 644708463 555979313 341291993 45076637 669952949 885349626 457803140 339372700 902894853 649039021 800418397 885571161 766794187 785629500 400075212 907298476 681533301 467654162 329359253 972216600 469908724 503670410 58339747 822740498 889409361 164194182 412497996 993078180 608112512 365034298 113493284 456015163 467711576 934183061 272261094 380898290 777376080 916575116 149408038 432180360 227742790 180513786 609078028 441345284 534436503 823332672 720424845 647100706 14246571 480290721 412749867 127613459 848887692 472507152 84116453 1135749 121000675 465342885 586365951 661897946 648759405 588306843 785322841 140890780 40145980 465487768 807880837 122220707 668738662 177098972 584934985 299320660 544463132 66829853 994816056 297420455 403042841 891474485 827771533 57135190 647077400 502466664 101876101 592384369 608725077 927506724 122483661 703399602 808639063 741537844 186342143 143376960 642625770 823691129 704918739 514177626 735926274 933340008 296142326 883141172 593733122 589277161 564313605 687223735 702067732 109530194 865653547 624189987 684750305 718924282 359832457 454147283 990195535 628188838 418232298 602034209 52541982 173059100 835507012 597018823 267376988 168020843 261752573 535862630 593442009 679918118 162630906 225730742 876174131 313299192 750253015 284299049 20717315 855405154 156444553 765846567 891751605 364967445 815862868 854571771 359481062 332785843 99328079 203737519 40489495 525581989 391502697 34674011 273172708 822911354 277834488 53735322 68431831 580187279 492928851 910802642 648449324 625564495 508985949 62534357 365561785 214834817 671439701 633227343 878562500 559848136 93944356 152991837 898710584 326252402 276193673 635908177 718045051 474232260 829015120 625090549 531222241 220526453 97295575 447971231 15973628 634546471 765709118 466682885 707888624 781433886 645141491 164757980 374037934 955845416 180245050 779505775 42455888 166140684 73897645 431291194 842589910 542753027 934329576 351876804 266244916 286415582 211025097 860483493 280339150 103994855 491990019 207162508 481244133 889844022 525745191 850758453 866193546 857875703 656196085 157338206 283589461 424160555 964814180 29071174 528652319 667506797 745738936 791294438 764197863 311829753 442807660 545457235 769127709 965685985 557570919 315518591 524441106 346058134 626039662 432705143 860280192 513945328 213627713 783522350 889408081 713355049 722907783 896771996 849309085 449578179 987889278 256121024 159405421 596417048 215689843 83711941 389589270 314549043 30407411 607941678 177654150 53989614 510356343 914628046 305819103 761648922 752911634 243386005 429905198 550397732 68427870 75993349 895493762 802265365 656772121 801852113 458700150 226274386 334079049 203759953 261042017 920129760 670533500 329946571 820642251 813408078 321911834 739738698 245483700 449022947 121044940 792429515 874579361 877995837 995651939 999302800 17557025 376054589 859455704 338123751 597434569 451439211 563499373 49734479 825138100 179852618 567739377 93524802 403187494 848843971 678891960 749537598 357202319 725967718 476753891 259725763 364114727 513540197 656982965 585253265 600151375 399152514 762935115 320731818 819611279 77173624 399600803 432491944 421761025 323624263 107312842 786957256 630022327 503491275 330754896 812685675 719999804 366888815 852863863 705686775 566252648 44937825 193141059 904594454 668349142 373409539 347885191 751408837 126800442 481905617 648483012 749250069 73935561 799842488 640458593 732272623 426978530 117777159 156480589 192092835 13747164 166324008 913298151 391515044 811933932 771777383 814450038 669498045 559867838 787627383 104268557 723117917 967534875 210632267 859175230 701242870 843130715 313179140 197818130 566948723 19903003 596021203 894333561 698622689 984150909 475230184 532716922 582902961 429828671 980087681 635025094 82284655 11258752 286724532 62131835 640504009 577463598 165793428 956759532 306231439 63281273 561187247 847999635 140675166 916017943 739733812 939758661 852031848 116807659 932383513 826091995 713063705 18610085 369798307 819241939 265703060 968236589 261439053 445824456 601378320 786401802 797855232 628860020 298259228 640056688 221435007 842019382 569229164 277983955 598629962 748460863 547841741 531142703 336226045 717589170 744034508 752014407 356678484 355904794 872762649 906564442 413107211 420323218 511908668 73769804 930408866 110310133 150474670 736341385 46798557 396152590 400196723 516274823 370217434 843454142 402550729 420786013 796639179 707221795 838427997 87007918 228530667 585921940 499356637 525926716 563263583 78974493 692017524 27160558 946198637 156011744 563616400 271456830 485753051 244896037 942705718 149572708 943220087 965718178 629426094 736734522 99510997 107026908 966901897 347765779 485438571 220624560 758217323 357064214 452951402 369265126 684170675 214431224 285015834 6247877 806432196 772324343 986697668 820303906 607967125 481127773 225987669 872219423 947708026 991335807 378831525 831853300 588728945 478472824 641181880 211206568 992474326 516702428 129623417 449811614 615490969 965952491 401299315 108454945 896139996 634411022 438752550 131180339 381131964 596661698 951112263 428870639 313656993 604165145 366842799 164352704 820787521 942758270 786692581 568259631 393361471 532829046 736423467 341413206 764652385 484128719 565432780 862092845 588682614 430274904 78328447 243931966 448707351 550354095 844704295 610596683 114469381 382732451 149165688 821739397 879751264 348712081 185140694 231183119 373843679 974587373 356112130 653840774 89205048 933654859 971292081 699971062 456870103 651730709 893119524 407792700 656315672 206635456 844865191 441210898 780765511 622224410 494426349 790447026 118150428 260179826 385982177 825221365 404726778 934936033 728435991 449270427 399221150 209066381 353004948 960411692 704185002 857502739 447289712 281226081 889525551 227380916 595202797 320789122 792993897 368467778 229518557 696933528 579569665 368096587 897197748 111379555 152152888 167865316 381149357 17723850 53308177 762555755 405004826 51815444 401617868 338111159 827490986 546852405 534447843 167714872 969571898 463861495 279444090 91268568 253954192 947678380 586111677 135422365 784559582 561981395 493455156 274954202 269995282 767903829 920955356 377035457 116299602 723810173 113960621 669583982 737682920 419078460 376808058 847053180 550421398 68643320 64241743 447365492 842147888 610163953 90799261 255653351 653629027 286739889 936122113 284841295 487071505 181959803 16778718 272954629 160343424 843528624 23431596 56609858 503214786 360799268 369633727 241999592 103485999 563519210 619333763 717430143 931989346 895884091 114394215 165135749 264663243 266400465 873445447 285838984 553897902 482720802 512993490 948736064 879026536 727968280 392787305 181530732 788675420 990619627 862117363 699873159 144273891 720011577 380694553 17451294 251579263 242329599 573836400 175308470 675648292 855261805 408927001 837270433 503421215 599243834 814045269 728140229 802045037 655246933 706576024 369207542 544619093 746882208 762352885 552754744 695015956 494791379 473252908 52091260 912940689 887283172 799237149 372632122 195610134 213608028 74647854 888368039 369216275 363091375 993707866 787436345 28039403 292575832 218478932 438129656 138606974 49716396 857498111 581899617 204204257 323651010 384641312 760377592 836903426 382368647 738049349 803868339 653937935 868980143 159263169 64691012 296168763 949097467 947797708 745719952 93052846 395957287 524995498 926805083 804814273 97231597 469054283 325159467 766462310 982725284 343772226 561623438 255057911 665179959 872294169 31061176 799286138 835665171 35877194 8619164 839811052 692737257 816257756 38101518 278642302 92398379 689876319 889114891 792660182 799206908 951040896 481692673 176040492 775342655 307044265 905490841 375429483 73506479 559886133 660787351 246595698 875992616 36727452 26691234 404282106 404785806 952156902 828065865 237670372 15095782 65303047 95112504 11809671 26664614 991985 46010567 189982273 724587953 225925474 496855381 175341009 741350741 158285585 476712791 432084575 295949582 217864354 590799964 49316357 377748518 694696342 941653232 116573982 508111454 236759870 537109109 742657449 603299904 707111401 605309063 849191418 771686676 653089397 932175648 22625424 613686605 53643035 355166659 482574586 981195844 303890362 540915020 156999427 245873975 688742515 715082970 717578189 851066120 534897858 68537760 367569083 519848126 331566030 530471862 236488688 529794889 739398886 351626278 402154538 487978800 792920102 206933179 429354119 825653962 834720263 309488981 642255812 622588232 92245485 233303147 222142881 191037659 570799113 906644433 317999784 301170861 900167123 439647445 119984358 59436717 721536 502464700 268760192 626032452 184892801 132867263 463322954 948469472 786602478 224214976 926230993 34572822 188623840 696376249 149406175 741379683 977616054 815689698 804164069 833356054 57343650 436255391 217066905 886232573 359530738 679278405 763083416 235179375 566782818 636490622 343273732 614594957 971009985 312012517 869021500 356603914 912026740 550591656 552891696 391212346 477949527 660122706 65281059 857105 619920246 512775530 421533259 331428829 578450124 249299486 585455021 213534527 166841518 19985079 220850603 897260488 41515671 832967030 424602932 903876739 835035069 48868397 249137854 186179058 1696722 419161325 753909659 178132674 829033238 502652595 778892313 475990465 246086055 450092127 659089371 269340024 994082765 170481247 279339653 374622318 416614300 87447465 827953757 170979864 27132574 13454320 539819949 886037550 238688543 401251367 932313425 6666853 62827355 871547062 865407657 135001048 818183865 259424198 581500558 334283183 833690838 392695751 647390381 139502781 249294565 575729468 212665245 540831538 257044898 407613164 283892986 203483549 368544196 652753964 225887911 754216635 466160021 106883049 452377306 478677014 85677437 812138307 296186845 536195742 691668998 990809930 421114856 412432873 578764647 118940513 526198808 195715131 185018397 755786320 811402958 231507691 123917920 645689347 524694349 223671996 409331200 918772935 63834891 264505488 422757428 332317335 817527980 227672561 766896632 644806088 57217281 323951794 303341813 11079576 60195618 262657743 675512102 166319106 756691221 240704426 994355214 620867768 211727930 935743483 542952103 894111711 484482405 423896004 644856433 73022378 855320558 339939364 574868760 862145599 285657141 568587349 964185898 463613199 450168572 888863276 150043473 860305615 760707457 968740475 255649758 730604872 144369497 288286377 886155382 799951559 681451134 565436807 619354342 508248620 4532106 779054456 704923736 254373322 487928720 731789358 216036349 93896299 592389185 359787706 928044799 628987163 124050032 810344480 161199304 973042512 24524924 720034243 376065169 385350407 518940173 234715457 959737887 678447793 648909916 726169863 196953123 923072701 790322359 500212055 651393462 985655509 454777341 878150676 785004066 976483011 709579969 229878805 197581511 80392303 909258724 262620694 969388680 821881047 539533492 988250830 495458186 923774585 648541918 491693834 562612099 352531053 668047441 734639281 903347486 810544694 671231341 421196037 411980763 711654065 266480547 154133889 370939296 844777964 277937889 830095701 883692901 102862647 190865837 50559591 316731108 395078422 340433328 158532381 375946406 368702524 301464400 980491791 169965140 687914725 270525680 32237494 874222266 652166716 228061074 863963038 988783124 134824641 641497953 510514678 383796651 372222143 194043216 681440753 391211349 147001956 877334574 242745331 348481070 884852415 770284098 67815218 601585118 118935559 58618987 763274360 838934737 637243084 131560062 710266259 711872949 558923022 610202314 876817835 671425660 261678453 432865878 464188650 924103571 885357219 64108339 460579075 656891468 944079174 682658006 937113866 443613287 983940942 366178067 645215296 675344377 800430567 416803365 47788989 317935999 296101144 255953752 602238777 841567434 754833702 182180739 194139449 677426351 80507138 166471006 817946749 78003516 156598536 829719954 691080941 710860667 816013261 131111218 103094400 66941696 65919972 2093448 854111340 967187366 554473038 275840516 478897503 438226364 773096014 973077591 676687929 674007160 45100903 470305205 673880247 469209111 860177383 976728093 885222128 801171997 685583702 234634440 590740858 163121016 866239943 78142536 314858432 870347983 68664612 762495298 253371950 611338416 474831430 782968274 900176578 772054386 32091976 413635488 478707939 20586086 651290094 189990212 629934023 143832355 900445253 155670991 988996149 717716036 149227209 484372019 465791008 384117583 648970217 279689070 226479943 858932776 403352489 91274893 791328435 740619880 582183951 347941161 192121562 486818773 368805773 428306013 898145823 600823015 922100284 289044958 850709898 621782018 570928967 552273759 882181722 580150033 279617694 854726323 100472464 20404529 172295840 535409059 200636994 674431285 94091498 84838938 121636060 832016015 55628558 520085510 115179235 336305840 505201317 464741088 974883905 794365145 828889820 751250470 628578311 903864406 532730501 558770393 711810666 633686061 726761973 541189563 757352902 426953899 934830116 718383688 178259670 430479963 802670067 868105276 482578198 101488150 350392828 973974190 369798990 536493847 914374765 18434967 452232991 429744319 3849320 189853532 339464864 576660131 68005299 187535507 293125279 301864852 382790125 613432071 887403991 81615187 396631290 873683078 801957279 461377056 963156111 303521477 197931920 955900143 361232590 7036491 696323344 53403284 446417167 32615085 959551058 210978893 512534678 605590479 996984850 5133171 872206179 381360679 222829312 562158485 838729728 265291971 863184913 665322891 623072935 376019534 256393045 945837261 565033971 206955783 528579665 600547564 272619647 547177886 465730719 109048699 122072627 39145470 843606246 808106994 545302749 290661431 426553859 51558513 782154877 430933893 342899465 654869297 735168667 266248529 142424954 995811390 340544570 689546351 580637036 136457831 825918209 742134028 669185195 417323720 733203729 122941161 736806596 772484704 987705248 220390310 39325058 364304498 456374677 130108755 796187337 126815921 643863257 320761039 866995250 52579624 283758486 590040817 815421196 916229583 261738055 731372138 317533291 546490496 780833329 280103324 103786198 604137361 60428201 888345181 478840765 423621704 203823295 689722590 898464697 615545871 193235339 89500249 670160289 652447429 284493439 108778890 128407362 618756614 335004285 620578447 609264576 684186686 946860303 9242708 835395746 979684171 958268582 971888585 947022131 367572376 693656391 613026228 772163151 281586038 817042544 830703607 289518757 413986944 547770850 295300060 736875175 348984757 783997027 85351060 832998885 985261293 3791439 192148299 747165991 19317116 58382615 653950496 935152662 914488859 532498704 706143922 332683965 10868875 601666335 967070855 20591479 896138008 331189707 449192616 282376131 709072649 48066181 591746924 552030290 180936394 258376213 399439630 577345595 855402771 56173832 968241455 236378040 364101504 507601396 371146550 42762867 500374341 596874641 286041406 57448608 88408840 617589066 977971344 960880835 496518511 431099179 295694802 560038033 699746831 584224320 922103587 605169217 654658264 221920493 11862755 944644091 27304848 293167493 754175382 991453588 667596283 241643585 422277926 834433894 703157851 740023722 185691528 789065550 252087922 490586963 896253904 496816491 125615682 534041867 486541132 107634377 204261602 763669037 282081838 75622502 36396275 765482061 988618636 480914258 113005368 680263132 526767238 183404949 250102867 446458245 905890717 706934417 921175503 911144808 986086757 835970776 436372181 618974363 376447301 635895572 658846391 585754717 383335901 366710194 139019083 43130145 629006544 892843276 570316967 41675692 973516926 663317049 256230843 858321039 914541574 215904256 754920151 220358214 372334393 906772384 478542994 32645362 304816428 900174781 512108983 961825322 953273126 651138523 242823626 94384710 541606965 229714847 703567207 84412886 740146599 746700733 483107585 741691336 514299177 750401305 263802779 559755907 685431482 583465119 462709701 189232356 101547898 196983468 288773316 888622424 331970401 621077005 169789137 765458692 878685342 473769586 59629386 776327340 562961631 938900615 694538471 56491839 76313737 380642793 956983284 831857162 661954506 162585724 59221721 511758242 552057969 682484098 374995642 453632244 757137827 902567256 649335472 558805283 889431721 898628492 759033479 25093454 573044108 591213249 812853927 966306652 493132990 993293053 114289554 134470495 818986152 381892664 369379621 219494149 444848203 816036415 946426193 453350550 736386195 19421892 362947435 972145273 486607832 701369487 573186560 202174186 516899222 677635353 272983429 296631016 650152454 544144293 393717034 205668514 623236987 708060729 305029805 342831313 155182728 663572548 308127457 179012626 87498531 270163839 147560824 295898634 268804687 683238730 149719833 42595821 217916867 132660162 807928344 861304847 761412780 835490225 279515194 601979395 17494068 697649011 172452855 992763569 921013378 642441227 671501931 368189114 707488059 976228262 256011134 473826981 178648084 316243712 379701063 734980507 141525041 475765782 802425798 281185312 21529691 809761418 846600264 537649548 377598578 916149797 917409875 938828884 820510170 403940301 806193131 319221460 522915860 465898395 15684893 585378980 634025905 536142130 17939913 351619376 462167865 977703118 333295879 742295238 161788423 119827101 692243480 236353318 453588571 465169114 992262935 968082258 983524344 756809196 879065800 948479698 413896223 828739993 109356189 292117546 39406272 191401553 930380777 353636097 653300260 584831122 885076017 119455806 786843120 859288805 253103467 571378296 471894129 563218738 881781674 370889619 611117967 81657669 50818824 413760783 74789342 42652535 248912690 239115455 752664865 235775150 294141699 515071851 908988389 528473171 459897766 773223295 257849343 520716427 693129046 152057552 337602571 689086555 43790282 880465761 912614471 334487611 695353338 623554867 395848864 469038010 555375435 217072198 984425371 986724141 42814637 809349696 94363863 676244679 946348266 965922976 388566128 1484692 584454151 782784231 809138316 190047428 877141289 496785749 926284266 675179833 568432126 623887857 3792045 621957884 806189065 802966349 846915570 675451649 293039565 317746602 9346691 998373669 26041133 982723235 543117543 444197493 534473796 318038586 126330816 588499808 571786380 13880110 910776378 544750047 732162781 660595189 469500161 338000182 568301574 834606435 282964547 193531635 5977565 385869913 983329221 433796255 458479975 352031855 95464362 85195273 719133106 14251585 557582169 164235768 634337439 525946857 241899069 305426040 592910168 151932856 3315236 46275842 784289737 431045065 760902400 850739392 113931762 307241273 927402771 690670138 121151060 646932226 839840871 83143305 933777622 791160093 917183756 651405920 604580977 864959248 446009399 477247096 993919658 459250093 183709241 927040482 290737970 910702261 739227301 196396439 110763744 362178015 11839413 226285148 534695309 95695731 60718763 868834940 116644005 263346084 676308515 769673669 196539410 316312215 570217233 705589338 803983711 590462796 934139125 469900582 37962351 973224114 491904434 565698463 645803912 361472971 881932611 574434237 412284570 167205727 60640049 16259466 509483739 373893432 426568251 665564012 706868273 64751380 362187631 834659396 213248016 787953401 298980090 799670476 660616543 689771429 751301712 427547256 999582454 206668759 805646502 850219165 646963566 610379761 346270856 22225759 658795119 434871869 828365135 925042291 84156365 208630025 333798140 44116857 170383886 245092159 465727139 482633614 707540799 966020319 916207405 913241868 913287740 553653720 333404939 611103114 121529690 92470112 147168137 915020323 364044993 432829738 909744333 4939019 609624099 998678085 200146189 385405246 959879672 397965451 198576228 563413882 281951182 954818221 385994557 754755808 435343573 346651652 426541418 491109034 962001542 577607046 272219945 297946027 35651955 965054578 523515296 975797130 919074928 146722995 656527492 380181107 388862924 872315930 572754360 890043750 860768208 257072785 8535079 38639562 564823772 347128597 866523495 973117477 277309763 591916508 48590765 294345554 237030875 372212976 918002645 155100001 490265275 260671016 2939987 504370017 87329299 902157592 600960488 305747429 189104713 193954990 200620958 427734887 947868061 33301008 874707219 406809340 94140570 760353730 916910145 526409452 462334801 273579486 73245090 136774546 547056178 775253932 789467116 185455103 163936175 294911455 919401698 297384796 39859583 778744718 288908841 984501431 230129602 935789842 80950319 825460400 262159069 654149952 164466312 678829894 837703821 930694972 217279824 574056019 664501525 964888899 902033470 790015558 208275850 624925507 425977429 297331287 796229970 679472353 63568606 620749016 137355393 387713611 792298891 807142371 302669775 548388859 528702720 609973029 805971582 223567204 589415387 506808571 885837939 644151831 210209799 531322818 657271246 243245310 337225391 793460982 472859881 706790217 337191515 381723698 703574900 946819567 122998630 540348316 147901796 753296444 503263534 159453380 316367627 769041331 858716663 918615404 751190046 597531482 613483102 939820526 529002046 456558155 313511175 152647391 318888154 359153727 707947552 233604378 771270980 155490069 650374359 487205550 966941892 249885343 896117625 546073693 51767121 161587105 848901695 764962560 128025180 514597236 146225158 1154725 242043241 163305477 2974471 584390657 926754228 911348960 905790138 549961611 880943835 248227086 980144785 17516642 789856012 968928403 969000997 925649315 371938159 490611276 201104338 815608067 93934013 168459330 624487733 951626521 920885851 145328598 783925551 316761217 421004687 238211757 939538333 787251935 76627009 290313646 184843877 311960137 591671094 431829741 956821585 929686011 298057732 602362561 409471469 716268809 666371404 210612569 109317723 486535925 664003623 415511621 942661558 921881130 46496555 114762283 53420318 339216015 711148882 406107911 445431334 193752655 618627426 419107751 926880683 946203147 149554084 244200948 814144154 729888537 925672894 25956709 767384188 518281920 351178011 152381325 227270351 286613715 368541988 982757041 126319435 666842250 313846717 163177237 38103661 857362996 555980944 25590542 332535731 146106921 502291798 597281966 692966995 647120943 479206843 957937306 995724579 478826222 546281666 938774605 621430883 454233522 100362374 79113838 331464042 584936873 43744344 1951719 232766204 642987074 270183598 997388051 171155572 815396353 911305064 614523274 124397251 43460112 246850051 854974805 938531502 357572308 916488776 901632099 314524098 350296023 915893520 753971411 893964891 987365882 365040053 914871437 15382764 310972308 57327362 351450959 269924603 388591920 578757105 447694556 210852367 494166902 6963447 596051462 555599889 854714148 838606731 562812439 288287254 627459551 276236758 21474927 236286444 888625789 118845748 835300151 854449986 145102671 376432417 345992139 491996399 213644989 550016591 871385370 128928061 343467652 479695566 822620503 20047505 158679274 415035009 812168908 409583050 792982177 364232553 542706331 713227872 218288559 67230574 354045457 116388964 228160863 816685029 724455124 136839009 224899887 344862870 704660874 835359498 446318213 924908615 154902858 991885815 705510956 793458610 889976051 287565495 499598738 586097899 239700159 233625804 142322920 7117332 12924644 257495930 395632418 942070328 447703537 951068505 859442061 584200962 704915548 595940240 948432100 417847004 989873967 201274655 966671534 873469291 792983090 992122622 910601585 433230905 536425261 109704141 205493257 401520666 656023810 747586823 145556699 463893794 850277306 938090918 693024333 726246274 383282861 929122398 793332267 285297805 255262310 557734787 569390707 160242831 243385342 966697596 822697349 622697871 207380958 934166664 922994262 142047974 893514073 286022970 649715214 328869401 508777288 583205809 477560970 563627348 345451551 626524432 683997502 964165500 631395555 413701684 533370463 52473724 451773946 181861598 332945985 631109739 853780633 324243330 602161979 266361400 994753062 155237734 799355453 647678153 159933827 694462519 370699167 954232502 193304656 483099003 224433617 953303339 987489141 408133376 1222954 771064728 590116050 43359799 347398180 109783508 774858383 153789555 542086006 283778227 672504075 866435656 984363403 652283458 911165838 654102616 108888702 222338558 378614193 273207340 302118455 254228192 784133075 838042968 919275784 411895016 657024188 871718586 123734311 760055929 21724944 77003594 245818472 407430767 819507132 888518387 609179626 988422146 612435492 471377501 643120062 665966193 250114892 778574553 864228051 835685113 492846361 992429611 94191713 21537560 946157707 614232791 584896937 389540728 21415936 23379778 795122719 672201242 623439775 499206294 305487889 870802890 357089517 918556854 586071319 445030307 63921072 947614291 343935281 467157020 746590318 132198552 314253356 173697421 875229200 711862202 52797764 81987685 438990847 270104071 154408023 210319125 144421492 758896457 916075662 915505020 96452417 440367203 576886028 256294198 794295623 660990315 91207583 760470439 804593534 352237933 692616814 7451346 837668811 263759421 951268264 325719217 926952132 940238654 86878589 424597068 482297269 816883118 134742591 975635443 642850762 290273007 62181640 660308384 712164300 293943068 775301826 393082782 796015890 934200274 991279528 209768557 742547230 344291293 843596339 445950167 212546936 128009284 551929807 606627909 259234548 837973405 232917106 236209887 252230022 584267490 942249354 534976032 414038568 681927161 781227192 701764065 877016376 457496085 15800157 832752354 544782748 897451957 123340149 820765601 718327205 681380948 751553215 988239895 40242120 393184862 587958079 970463105 858042529 39812910 914225394 20615047 911463584 391964209 908597992 914150823 905838996 560318214 804870829 654010714 58122041 733179690 115125187 736933332 162159567 842869242 191568651 25189737 523441307 138296331 363258757 357564138 750240044 176697474 209459239 886998490 432408723 153129662 584567781 443765013 482498288 74461197 451385293 172072286 621262397 354989304 311411046 55979997 637169399 973667947 106884553 355343821 454150126 527086669 818730187 878430672 355173114 502846059 498754800 750358544 456802256 131217388 149163935 706207805 608376934 869088222 931977089 685566562 753188729 734622150 746616444 806960819 694507777 500922847 273928196 66997189 981122592 346427152 568434065 688222949 571404898 737654204 649301347 644382808 215699387 923007966 45358955 538835563 937445611 84814445 786998168 253536286 987039139 954588019 344586013 7662852 444340085 699627669 735500527 523049803 34828303 93063865 639639543 618446925 358630618 128635680 848762344 377352294 316401147 767362053 756529643 620123301 29850611 350222683 368667729 449919368 786002735 503962694 127381584 440762296 440363046 216120064 876547002 6552228 138471646 781420341 675690628 135144980 792876351 359493936 794119505 721458724 291897390 541978783 197268880 610233042 93360514 475507409 175734032 409124690 290960789 782625431 20643462 769978470 893163427 460410244 490132304 304346955 505483762 297282812 144643222 227753932 979689817 381266558 642143317 169525265 876027590 400088115 644925404 204132485 312783281 803233754 960864477 900175994 519760677 601946666 608779671 893485126 677368070 216109606 406837083 835017166 103598851 92973234 76114122 773915729 832760412 901704234 47954686 482574893 107907804 118900649 512299632 769574960 776359496 437763993 230634494 417290598 613826783 287054133 327603147 484467590 365452151 971848652 182724290 274161074 19880163 252004309 905794855 335443615 215720986 377903773 893583304 143963501 280008049 436052570 37731846 929103903 868229180 613820652 168833263 705012376 749962312 623162536 663655374 779641097 907719854 930590062 603272409 979585743 514554879 664977122 946681769 25078936 469842147 151110695 96447263 564757013 675610350 36118998 642109237 369447432 918663434 840269995 54994910 500527588 494756050 601197702 615903710 737347840 311922813 370563530 687942452 709131567 410347552 366505390 538515070 862355904 212349130 310635591 878321107 578381117 345872712 828642318 898216466 652075233 204936234 505467867 481897197 849681282 515123380 282259614 193928945 646670333 685226458 120629969 640456187 102175411 624917050 890667357 251800791 940753603 896895122 95014160 516579427 797484713 593335191 579182614 69462388 490100216 354747912 123645844 822673703 108022086 265387173 319194661 78836950 537474485 831091086 847171901 317299212 309712973 484894111 532050144 628680218 326046159 224541642 80716513 200536278 568332406 87876278 421707917 728775193 807372775 390867525 917304635 133516253 914512759 571753462 18244498 936207638 514994511 657219180 876253662 850717807 865442825 341543801 155534783 335638296 655002638 70827529 102698194 66976011 636624905 839488929 453935944 167120136 968545343 398364380 869342136 99177645 381420375 857640824 614162225 875165052 56806995 376311565 436488054 862949444 691305117 121769098 107529526 580185438 760035084 766004566 150569383 363418672 134815731 190632784 41452338 541303649 303958389 729519517 718893923 12897701 290633354 519021601 466157297 710953877 848050098 3387455 790387990 659937696 658902530 299913775 305099854 253618626 450480801 968167636 414256313 705207032 670221579 846158358 223405480 88767526 686318437 25249942 26201947 891172717 717232817 329155135 193736436 764063433 100323208 887749995 824815809 189742964 766098151 475329142 344133144 458109075 552333625 167064502 186535438 496559322 767865594 638049018 669682603 720361207 438802568 440500575 536726982 856172521 35787583 502816332 253579750 80249696 888450459 718143081 397363930 518683438 259640272 324799328 285718090 802258238 419636501 855255530 398354941 694164835 572866450 865596569 988850827 774589163 30325898 273647434 817998005 461763969 227084556 555314165 970402386 976423573 923595136 561358495 966282141 906545603 162321464 471868732 450683619 174407459 376069717 498315683 97003337 12603317 350581074 649226560 431006443 441906912 906761789 674211071 613438899 394227568 292932115 778705711 691500496 81458089 138265215 110240489 809879738 261628088 25612264 761327432 806113031 171519332 880449815 849074120 916122210 970752321 561508466 548785967 96761481 139179457 43800000 108112563 608332908 69803638 534171508 504225568 784822173 990784275 626329457 649878453 760395825 556796798 964338821 884198648 970737636 350673553 863746010 573086126 114793081 482508609 526461762 843013911 209256114 977232858 658823330 505514735 458315658 891257107 514592694 336215510 422173364 154178235 94729592 664306065 323543563 42549405 401273032 812205445 827534768 921729112 43870044 514608195 774104102 787104835 308317309 502311166 771547194 170493273 405011443 867636299 993053766 647225651 43570445 176151854 238103611 40416219 263320359 986384722 753698831 641625706 481647070 202355916 717086754 311078208 62267607 949672420 2414571 920919840 641048568 356542370 780985739 564136499 312032745 772746400 854603707 273492251 164515480 892173134 211111391 382565870 402244371 415016702 53580082 901473558 722534447 46383991 691233468 41568947 258075384 9663566 933717569 185085677 864471135 46545551 315903923 102334981 293874366 99928525 96077185 284937027 350215050 346805993 790141089 160196822 549519324 417684605 354352922 335774662 989225389 534398658 628088324 13449128 936109648 512505115 107612453 202909991 378116339 109191365 841442185 875009438 406903636 814142335 208890113 705929419 588842617 867499093 853382190 341489437 97405244 614493523 632102912 201319228 797659451 865747212 982921007 401048065 209941879 242567852 370982812 527524517 741887242 210307653 559941394 991164702 401093018 959103600 960293092 106257897 991522685 911196152 435677375 711861001 319701717 764222227 899684144 789829226 632985835 362489471 922897040 476443672 859002125 441427645 334686966 141696929 750689389 842164444 233722928 303013137 567826817 522756443 323710067 326596606 124256475 866874068 240069945 34357309 757184159 474223187 788822661 829322720 853024059 553112979 771028872 76676753 668038719 560591471 900381899 714413077 171463171 715418394 238598049 818438170 792873283 958891079 897627941 389228057 868445189 572544831 719726004 336232186 719271816 268829286 608451922 24745144 594878032 579607624 418130539 455457622 958379939 823561940 858587992 510735476 145688786 319384422 485949250 58571628 43445702 535302538 820403382 901621380 664205515 125575860 514371206 143214615 980132886 637495383 195876325 435557005 477916283 66018107 804548925 336941728 377855203 994560677 589912749 124222898 463656446 701781251 574738178 993115360 118944144 623366505 97792266 23835882 18196537 137952753 616255639 847945625 50441026 598039742 180931725 23879446 949710524 701497707 205955949 800042886 238554037 126588175 880540264 173910929 110427341 900678103 13995547 880876097 491266695 836509089 528242426 575068178 2479882 515438353 856469113 751586811 996434452 319179052 648715905 412021427 256101409 4712923 704370020 858263198 113604752 774711697 435075452 562610134 271910158 662405879 572369482 199271692 446667689 404673573 247849534 801401847 152996785 763058777 580040097 329883366 164002900 845248535 329399116 835048614 381858507 938082040 290523335 753609814 482817745 975873963 27817672 653236869 171566156 581097175 65807418 123993518 399578821 46377437 107921954 207721785 159047485 407648922 203279151 392123466 467201968 943886299 146844050 538967757 690802616 709956611 712110344 336675306 353275937 728079709 68871876 720082156 836271156 460815615 387985882 346791904 58590352 816814863 796626598 713244609 368861417 969627665 281580919 80594323 859905089 457690359 623298034 637972325 353776242 129151915 244031976 898237673 779519271 584230671 174430857 337889985 232485034 589434335 141369400 909093657 629297187 806455590 128805715 554068068 341939529 874232023 60122757 500911043 587983064 959705574 784023205 610328874 710918916 178004009 464586809 58681792 952612546 531864251 98693197 735788364 320369163 353527567 709865216 339701772 977260482 745234323 365007404 226261431 857895522 608787814 232070707 583778964 603224245 486563878 573524007 950697691 993987753 187452300 166921996 468264127 271345393 53292161 550374563 518450678 643217731 4795792 568592430 973237351 265669506 657076708 171944072 855583792 898426910 980878243 65484817 810189117 434178229 258089328 886193845 941154785 973222344 51353395 535915592 636732282 709820165 303783865 496569155 304883502 794972561 695906023 616731521 857776512 143620898 331173001 866669322 560219281 197741070 461322559 517726225 439795688 83100036 510378475 645670726 926166533 666257813 19190928 79049228 475748320 545985115 164622619 506215159 281212403 629137120 786108263 361887741 55525593 518473822 44065508 882709346 977914243 821565669 515284770 969263209 280807462 542177866 437593550 35258040 998058330 894354452 760524146 768101201 547339793 596117999 789007333 940587628 501670046 934426540 317304499 201426362 896260853 501861131 235747182 94765186 472279323 820437674 637852567 140381373 238468264 469868763 494196745 632352655 592479940 305227679 15181467 723818303 784840601 282625541 437866298 134536408 434940419 266604687 972024611 6038806 404565271 963907169 749699769 952709621 657025524 313696092 864331328 498132797 852299999 868574833 536689398 208706445 615248767 373845249 560090388 282256396 598105599 353628659 79093947 547668735 108407276 273636344 730878321 123471157 623833391 182145354 562265500 224845038 839048179 227582521 73695603 107481666 813828286 5968639 740344090 159705788 740163452 467789082 295622284 11020477 288133200 596717751 112895628 487760108 298690954 667520957 118164972 83814800 265391937 238535418 5851041 826926767 494568797 94875495 763877489 676706235 744956647 963302725 131376750 188572761 314394604 265674809 969247551 564182141 382999934 979813782 674265773 49181405 372290959 239533276 753953863 489065522 101513634 277430354 595381073 55982463 923353015 426766559 833502829 442065194 382147409 357738082 286571209 418883412 620050517 178826339 495682383 317581921 721339694 977699602 248281318 552461485 383894276 982347278 66741296 641326755 974706733 316152285 630675525 392330941 720180563 572482807 451691768 342935179 81614476 78843920 319998624 884710976 117749794 494575574 170269129 224518705 422676757 684880611 68136610 373825519 296458901 530344353 82097236 544126872 711201929 199085662 832774468 367055213 464515493 976675176 659724689 530190234 147221179 149634741 167843424 356958218 867165871 892377117 362026593 449589284 756206555 417384223 54910163 302293167 112700698 92661960 362913558 375935715 694309659 125649828 377064062 686544626 635354859 226884982 365361404 70064167 105347212 511233794 628453700 854748517 100252737 825800200 477616347 566033990 920637330 50172053 692776381 948638969 480841667 170010606 819258883 236381733 195319830 123947687 655283702 243998395 862925889 890303624 491414398 273247841 216160677 582145002 621873180 434758156 836340366 577494235 681606045 305375239 502732960 505666846 822776409 566417894 960265969 97156779 962739052 347718595 632576968 886609088 187545867 98145873 178339739 211247313 807282710 314965736 920811809 742600530 643284468 144108957 194266568 546294335 231228866 203830731 320160121 281599789 49575846 782545874 756607106 849444744 2050050 567029089 612395207 783486409 79983129 274925381 681675862 411175890 255538702 160503756 157678143 852400907 876244925 935122412 584951016 743829277 883620450 115467131 842375482 788538951 790636137 568114761 206481866 431251969 528640649 808136525 560231844 317122366 31411343 355727908 665133874 521854986 45315682 156027981 79242767 506849496 221059401 3055717 871758524 233099018 450353270 805639723 413429215 525316515 944497195 313641804 450886859 309469704 367367694 700095006 604358836 871712548 972882711 25917988 366166287 114038676 587614872 720988000 402905879 618694670 467007282 592293297 681584327 552784712 373701415 404454745 702398969 241114689 424883386 246794026 65644316 220453976 19076781 740072452 769686962 904892822 65351812 519280117 964284820 145072199 908028685 486600687 488329036 297729562 459671875 958432222 943952788 146981403 543403507 138484214 558074306 678717566 846001312 333984753 36899864 768247658 881877181 460140775 561177937 640004160 74787418 172591802 685393829 951368548 741325039 754495680 300944569 183858802 930083148 97172640 509482937 691972882 782382249 527285982 557679918 749079559 558887058 628485405 224407791 439438474 270133103 873219598 706465723 626222919 604708824 479087105 373146966 216311425 576453815 440426567 190298092 187869077 60413520 799899838 392740744 284788463 563148795 786484703 792469129 999031841 935334794 762670603 446577389 4184350 393768354 543887726 482887126 845555567 731636830 913232081 822387904 677945276 415420453 662840703 483451068 21901897 384008933 667179920 69502147 412702049 835476628 408338169 776275413 549338300 4717391 98234653 201510964 476648491 353662487 787736648 957431204 160477120 599252941 380422373 867663297 939490579 246294507 633996283 447201847 879467361 763185159 725078747 447631959 33094690 102791797 78360305 908207268 873040784 367555957 967587939 581783668 141225266 579916375 425648169 717196299 263498898 787290388 196198514 548614125 206995687 376729479 632817700 785640910 673367457 768857953 927916404 551315330 574288495 213154255 387344434 977168814 892181547 805015539 453136321 220975548 469496905 314529674 270807140 883905950 577015080 1081073 262647206 22529084 857148112 75279236 968496827 348695307 780711448 562242644 662245801 663023313 284609683 96431528 740564487 373072997 787865676 140706431 301297656 559488508 195179477 207081930 777432069 781403377 474423034 429234769 775563794 356622158 458592044 272308650 818866079 766848792 66437145 700021679 739274593 799344207 178783927 652382918 667969367 574478768 894634647 571319589 891591142 460890373 88463473 303049975 34080422 316722784 451872927 209229435 863117975 786989850 225346019 161520711 888710505 322579162 912970565 7737613 252641554 188032064 690976001 514239556 731288164 730144829 639110719 383848711 702430877 196237458 303624496 398962419 658077728 264451089 477009793 692467675 441495250 10513144 828910863 760861383 469326268 332036512 438819289 248754493 424281373 70206355 550532750 364881719 692533695 506943998 428834224 362061977 28409582 738918638 269318060 414413355 873699938 752616882 163404246 160557149 16577798 724877705 515599281 392678383 273324643 291520140 662950901 38577309 545006180 927710639 550124722 726978701 297940495 505127556 734759946 302890425 760771511 28594935 569979109 457200024 87349566 412946972 188262307 554431317 765636174 522597671 441244059 201934281 3346285 455232113 513778372 644183478 205109761 896365405 153422261 68490732 76245547 152116931 121432337 443048105 862685921 827392633 171192706 205981952 578247721 284231283 45900809 807585579 431090019 140317542 19221216 182449634 266557438 569510182 122287496 862630199 878103474 131725350 369422911 870154998 618812946 492337540 49090091 623145017 437005561 683861796 148439827 820817971 98786084 478142303 960397480 22014931 613069313 9080908 921883031 190245697 854822994 981069480 838492201 303112333 936626722 267962218 224856451 489262844 368742041 823292113 106210335 644601545 179521634 298039990 694283712 775511005 472870500 743513312 262740727 367827812 413726388 931069129 777426713 875136806 894388472 256211164 864463383 511762403 562977332 33887195 322486544 553454834 297648589 937999850 1826388 609371483 440135916 58652030 972999788 918619116 170383025 190816308 80935980 581168294 294938244 64943358 420875767 621594512 276957858 110207694 390677100 398591078 642236203 433898575 587650272 710481541 613070091 921263619 32453588 3084692 230023525 227115726 779606378 413069415 55736875 765018005 395184043 615905532 450326356 789791020 170275385 968270715 636032247 120549923 895422229 866163514 245659165 785554616 406638965 972525970 57213156 303180903 271488878 775876780 395487182 565159051 768774109 300136042 627598120 861240737 767728087 399818907 791652986 624406760 422160111 938782969 791437822 653394011 855208857 794256994 677119832 822904208 447836692 498998230 895670246 871773582 282998278 701445903 234372967 982267121 387015410 350141044 698528171 395045429 746225657 151485394 841646490 553957257 544873626 292760369 637197968 94818049 539917321 706273980 351435392 446596467 625866148 334194479 376769674 715661174 551161028 416015939 811406509 949200899 940604994 208942116 714719464 756389364 514734249 133896684 103506234 426612246 955036541 726278872 204660221 502790926 348814723 341067257 903345006 728483457 602453722 678514565 269804120 494407929 227484049 159776837 426206282 16487661 993839829 159570857 902327132 255122132 966938957 294906931 495279444 421738067 2139395 393643008 789912261 264465087 354357489 246809266 834912848 913489693 414431665 871679839 126295038 334626180 19808234 693559458 815216271 819568929 413655550 618042026 994557539 993649234 466957762 370264108 245426146 249910687 180856213 134850992 94782787 264777295 284097100 474049291 42561952 884274345 874105439 754900629 266668695 921790631 378743781 278452528 260140211 368196239 588567871 669025107 471675548 319417970 831862791 929993164 591795637 771267302 803513729 957845280 608615351 649400573 519358279 207053348 376316603 234271658 722893588 580915630 616872876 43384838 446963320 406219135 945200397 764851274 708727946 221850941 82541350 934713045 817104587 177299761 775428637 85795490 677323279 137512699 503476708 456719743 175957092 671704139 56751459 88637075 961839291 616485650 926876455 148792781 329077081 556640116 903953472 935156676 237022549 304416240 734440650 17792338 267807835 263810312 489974633 262644305 268990545 465464600 679513567 780927998 70159997 826295659 47586934 695989692 757962544 257421149 320694463 234686662 260589191 771540363 17651243 692434424 14238290 182553557 709069357 144012603 935900102 249465065 688411404 440421950 74869190 426994744 276967750 345725157 524389784 196575575 600854147 74973551 286531755 192481192 319902834 772246995 93919277 338875564 908521292 741707480 318182760 457539073 76258115 275270249 277222619 434052907 345433341 737563483 716167456 136076196 876689043 53438250 21394774 838084477 625303113 807328686 525597585 733225980 358120169 473616937 701259617 559512272 243328602 252913838 96307306 283843338 601044846 956938373 810890731 414092659 715852593 282353665 2294545 798450035 514149887 695980017 367877443 677946828 330595150 255846049 768796439 77509658 866856780 690553615 262121036 804446133 373122234 550368285 260105173 805500894 54625530 356634853 157815477 101862756 34417392 991472999 539958042 499440667 139391337 65625495 69521234 576420226 494540307 119516225 674814943 123800102 717690125 778212832 746944238 522598188 179384737 847894679 10330713 593618658 821384926 991104713 821586380 89304948 590501684 903177550 210311745 144261390 500781659 898760999 70282104 273563413 136686395 501998775 865199508 207776847 994983091 379427927 54421401 697835291 632165593 702703193 695081660 742886015 379241841 100209750 327783580 776455221 143141919 472935927 373806107 794652428 468980096 91788943 293036567 917177627 761164922 66360093 936405717 211602020 366465886 147205108 563215947 600862666 386288401 80079557 379281226 239797809 37895541 456600941 980529925 774122513 570487890 766712646 728444293 245699771 154070258 357004988 624269856 224614465 9447461 760384517 177543616 536223062 79852184 758653521 988141439 183396742 25187745 527239006 302333321 684804102 226746173 715574259 812477373 228546907 717191794 197001730 523702854 303855932 182701828 715508810 228243644 73864312 22448842 776824082 517718050 770256572 166751836 521635379 490815808 612336247 741505409 571234282 639153926 478846872 828267135 979915507 153706181 133118693 349378840 277864013 782392672 74330271 933427196 833293900 464434202 354627691 208185976 190853978 627490819 439576928 58474737 654958283 70094228 945200864 900200032 236244420 389121958 717358791 962997398 616534626 208381952 596832234 722497169 375810652 721906786 788785700 785234789 439191906 503575379 635775370 892822016 913327212 477170596 692602066 722594207 46593896 138278104 907775578 132865508 636117210 879541727 889883603 864537302 55065956 927108212 157977060 989886901 484266159 632374612 214901189 34817663 994120896 47338000 750035051 521969132 214651458 629169040 168705987 407901374 417950001 469870 546969300 850778316 636473693 123299589 17712713 26521932 719953212 81094458 551156528 95825853 889413811 516721508 35651557 317719631 582962303 237090421 938726776 541824181 94719483 407428351 535703629 732399569 308278559 874900333 450917965 346958492 427930426 854535600 548376583 380588041 754921911 840102063 367330430 674591307 173835737 715597725 701320787 561554917 972409046 786754587 359026819 884321265 849713303 830274908 439627610 16228726 322243784 986355098 266356155 750059674 868523442 634614906 907223680 808514581 408124355 481135606 378365676 796469885 553828248 795354105 215247418 123408846 205240759 847630375 773137125 135531199 226045429 929407195 404299768 328700438 652294372 824333365 388440220 719422959 184086062 724149815 633152537 714962651 838183196 76103523 89002460 605054791 822764513 870465040 705614061 938293340 829560809 580321326 947796137 88312321 385418742 93433730 498803180 124743520 176744291 436322029 473959262 2275567 532555481 796949507 155930427 652297411 52379563 464370401 956599856 113688482 664695671 424886968 85903730 802008424 78023294 129483209 113126289 373293938 812547021 817115541 45099803 306197276 614938999 451448439 368614875 179605557 719394040 220097367 591526872 506002851 92450340 613334471 995488448 353397852 411182887 578433101 232820457 936059560 744208820 469765596 678309855 190232194 821095918 377521255 905855661 322259101 817977191 952800051 338672494 326796857 578887741 535899004 356436165 737942615 92992788 174798320 926604198 345494106 275165863 230615431 982076741 60417807 229648941 646681613 920381090 608796520 13466578 660126869 344903 666300389 718174005 292929199 17862684 221641910 749255784 686495788 942179534 152055216 872143468 875424468 858782019 644462074 662993778 136968427 177031019 753823336 374087996 417045664 515696860 256562203 79403222 307409649 829000349 177012164 470929575 518970810 143045032 927434988 87204715 457935848 46026011 253726586 980689688 66056365 26219165 746440631 478977578 515581542 717250603 143920102 879243122 591617077 762630735 996336160 673827030 426066264 313727433 515087492 196122085 860802787 911733786 664375645 934211611 541462420 964141404 109763264 456922768 627366594 634786289 878162568 324577636 427328773 944183568 28961512 135685869 400426606 360949920 463195859 872849454 550892961 295977486 17308607 893575623 224060875 462344060 279675588 588823578 853557127 375903321 887439001 356930948 429493722 729890941 773002765 872494489 540397659 259126542 296458122 814993911 287640261 752353006 591820892 51952092 521423503 648466708 758588139 472332941 808903202 256890254 922826435 220976238 503765189 489655100 803585662 595044469 585742811 650945759 867779867 923935423 533314590 987446629 614865414 548044188 774829819 942491178 935641929 942012491 203979664 766275857 356094260 279574980 199006537 106925492 291599044 690813764 434748712 511453799 189836742 513153452 203466060 632023095 157041021 766424271 440463990 888295585 495095843 250523828 555477508 334393655 929318075 961639482 803181017 378234413 596520207 560286954 835024921 418656850 472237248 602166773 724531493 891354738 329011227 793921253 846125068 183960161 517242838 557379363 941448949 732917397 545151341 701538381 269748793 695597694 196061462 699829626 407587662 354521029 766298322 615996298 837257128 754288591 218472507 458882691 913033842 334271555 198314044 24717036 544581438 781695354 140173422 38056488 527034264 483764529 899630732 825486207 8479084 329361325 725997124 997402303 235869761 222358170 804956166 53263929 840419594 291022904 602019878 426947443 686276662 275014177 216528119 637393594 425996128 429210995 503838208 639859099 426913516 948830776 537517952 707075059 844280046 675460785 685790924 36278527 869990176 418356748 545495666 952783213 793357310 164169286 558233551 594179984 743701469 480267753 259948259 235048501 60367915 551307684 445066049 554909455 63107302 976966041 963931050 583624706 68080493 925060111 902559786 999662469 302929243 195197363 878125902 886978355 129103800 302046043 789120655 292999016 226752079 255609250 347490598 911297151 153738412 290970362 518668065 288911658 383936236 870576625 788808414 470815315 568685664 949680873 909564555 400271372 371304516 898089180 548877710 240532512 113243473 635238929 182128943 458531334 719249077 492672365 163958049 458835709 200556389 332224579 474824772 528061946 886258585 374377944 583315518 652359531 718841554 924785714 563981290 106839472 1086020 298035053 785130017 506549662 652772895 780068267 519102058 964951675 737797341 793999350 369016104 228560301 962603323 458196614 167727279 295288427 784459514 909609805 34041019 41086849 525658566 720310931 652202773 207718215 901966803 668888240 570774874 495880897 979842331 764094136 843229556 740050947 278032545 480852262 712663956 226215666 665715730 647015696 218726175 143203295 723713785 323606320 539309516 450020202 696113259 9031025 224939375 410147780 798023891 463632724 480446270 907149094 854851587 525519051 603886388 38273618 133240977 685745381 737724801 683998772 836705015 46757202 115585314 195987223 869022442 599104664 399260713 6049975 408449280 324507336 564981500 112853953 941690426 798530061 52774411 708832672 213289076 495670616 137792890 599355947 714369394 948395480 953145433 716561045 661404265 592802381 909576002 473062834 999387042 372958845 257230017 805223554 534556873 80784542 716165965 519044425 807746120 858154556 829441332 730761128 537485498 698137874 737827016 235408155 634122399 462362104 88177165 784441514 148731785 20645541 324922129 898075733 921832565 233525242 243594650 601039247 93864324 185783023 667559279 539293457 876380346 350378644 710316334 419115942 925075760 758511164 115652965 177520897 463582650 160731238 176153066 948420995 811772301 420311771 261773068 766834846 447601882 311044635 712305157 774491344 335926395 872580421 518096399 920529395 20009543 859650616 373374026 111407520 109917283 460758022 441917822 505371970 753682979 394755625 414422362 954026674 866776231 658026075 508053441 154971823 145400697 623805300 1928197 184064302 605748004 477475610 411279644 109302826 296288899 517174939 989048921 166531215 383596587 29785995 812747523 716800305 722240591 246710886 506667634 678130218 96234730 966993385 835721885 404062212 144897252 122875107 606235218 119325408 858767532 847078386 682778559 120990251 985351468 72474248 860373155 461517608 601887185 271753807 744633154 367185718 583548667 538203480 582099350 107497670 169051493 400630427 731591133 721677853 587031150 374212399 280561331 293630388 105532087 121574121 268058916 286104918 344162524 440893885 504806231 615029804 721006657 491877219 155960689 996189155 923439177 504584698 957501907 260628084 968277099 319509789 632678660 475148371 157771528 409640644 688479934 808194805 73864599 758451658 560620847 43742588 998125458 407904219 547312061 876859005 134427335 378914296 844032537 615797042 594885198 682567063 40980744 465662617 134118113 799360382 413296345 304491315 86693484 965144860 423338505 885036434 356212911 971455475 455882029 324157526 266668824 536268277 985484374 983828981 981197580 169276694 766333514 343601913 288155858 618467374 357737549 870369167 662865377 968169377 574538487 16275148 432857414 308168068 429424289 449931310 925006300 649787246 785534147 207494460 65829060 906927636 858019809 864179968 52560542 845696713 289610617 369533742 368289230 11267047 932376462 583204332 635923284 33779072 345037076 355120757 929578512 172433137 994255420 786564753 872625251 303118046 348631958 230410476 935143349 175481705 761305860 21788934 790801607 271460738 970803038 664828986 353751677 225058121 253875615 681499155 11479422 673354446 452419832 966240607 431791116 923885231 516572104 228033290 450035045 526015393 273420047 493747858 248841099 881753011 961288581 902299364 977715675 836487565 548399048 836102176 839980243 505000836 135871048 672931571 504942704 813732867 930232418 447283843 766662930 998719583 726546097 210910422 121044741 938319919 909697880 732974855 181584370 831283942 487763347 662124911 532904135 52264437 312620226 887033823 296750055 338607657 359695957 607779459 478785524 690836817 225925245 324051255 441932188 439232821 379398472 425585159 201661441 685574524 704812861 553006768 465284022 73942784 416837682 961419239 945465731 786029485 256545973 863926457 158190403 210719652 565595161 952743078 369042943 853310579 233635779 220623913 337117309 1492987 20957740 695675467 948426440 960345906 43357824 311605644 237461254 808670165 299368611 808943765 734694480 64921437 243394579 156836258 535730456 651967210 586501444 692259622 340214481 971656660 169611422 543735912 9567105 919768973 667296016 548432236 701644914 269438623 648920145 463189690 199966636 344057621 26100631 246338071 972850690 246604906 177690449 387303935 205605407 71997071 989691663 529044595 322882654 830382340 311231171 433988177 275601939 600557977 854987500 175124837 919407134 585674537 779176141 936086830 928057802 418810955 477523895 694222524 196230038 70163149 178067339 286702790 649096858 697209229 862613386 181689623 626667489 15340327 786586807 124042097 441607859 24081927 773688590 56748755 258542620 687244791 456074400 193959021 289911710 24795286 422583407 580233459 203661776 602364327 200186092 822070341 900134894 68550192 365917886 214864665 927113476 734715926 356047694 185207747 40174238 337924681 541090048 49593618 116864503 570518517 881423095 91114940 266953550 843111109 940200961 783239219 822522648 423484079 243606225 557377729 688718540 503628473 554449687 297731690 259030869 392801763 177857664 968831032 371275692 912218899 337282450 631073011 603153872 29576135 773190073 715447835 393637151 636029181 308148994 147067289 957457316 873934535 520020116 210935062 157619007 480321788 572967283 664006177 563106604 573345075 527753610 547229254 289784914 633473101 416972388 758933425 182902622 865448881 221008920 846239383 235899887 529239277 82552559 593970466 407744591 173580539 452626546 924494834 190269359 181068777 104282349 17639257 125401885 630395093 364263480 646707706 609906843 678141486 412164731 476720425 536628217 437803017 479622816 104830083 578412737 825380046 220520037 669637765 125698582 385908938 68331176 168734556 210786915 186204886 207188649 838806088 142391407 213977977 604605218 935152528 852147728 392300367 59155100 70226578 951996021 517026718 733552994 767805892 59046140 331274175 802319912 658598964 314377085 923513110 946981403 938461616 742224601 675157155 127912887 743103687 142522320 488361107 226453878 287476613 357313086 527584594 323394119 905545847 553632336 977833121 568560581 928269774 550369796 10836870 443441997 962637334 342598904 526228917 102166003 55647914 729721066 78646142 874060648 838630211 3280395 692016618 864664825 5013397 527797403 206474045 728495167 832626494 301422859 615355973 328136694 338464402 887018592 114603107 118389407 766598524 183455185 87785958 683037005 618313654 292467606 712980710 344234238 242518133 732591574 926184166 651330658 463639877 182850925 551883533 821394917 422778773 53319206 423314774 422195847 501550034 618785594 384952177 490755222 857428807 20353880 718980513 992001613 833598018 10032796 29706000 326515576 453990848 226408947 610294101 612846454 893421932 377488206 524969323 343592089 645632029 747219151 527616538 538630517 559751172 938741416 450865483 391969728 450299914 874658485 659838568 377659246 1268931 533115131 640462476 112392864 192980341 593584447 92812433 114593467 527499073 115864902 868024891 225302186 21364991 405705354 764255697 760095592 780888567 157808229 973465460 854524774 87381343 74448716 589882495 412276587 737745654 623411963 767905430 564184465 278860608 397147368 156458240 64491680 150165262 257524379 31710257 347345691 164432176 69864216 186483929 792918478 755808535 114252991 443945498 282871227 485768311 6379411 567582990 821979716 630222275 388763097 19537582 2241873 653864442 965804278 876892740 717175131 700315698 666330597 664401094 77237573 88466074 205958639 844076055 382581963 87396599 256300185 664075286 54342723 872936188 240931967 88086 325951959 389489199 210336185 925790364 598692647 368061443 312814674 959397472 291770268 690263705 357470858 922245550 344146699 905793701 886737772 371231257 156031394 486626370 990025789 565825430 407151479 928764048 919025271 400959096 578132517 404855621 121581403 386340636 462242981 427429268 757360058 90506799 576497661 458628019 430068625 310861941 968980840 912838347 174195429 84005657 804781893 276340834 514997879 493029743 84165060 975047608 775742187 235833590 406444419 966552577 594857061 117469777 261330482 88790903 130969339 207561448 971516738 225569701 644647446 644556914 722556918 427177319 961670968 750135515 724205093 171882346 284641100 680905257 683207681 148435567 365268271 6650616 675302070 783375426 193487549 972174593 743969475 266418650 109982059 229725851 828978364 710388697 602018105 913615335 701707998 303012950 901464530 503815610 771196395 835417322 631288040 271862977 263255165 886606814 497896135 508524114 903610643 935468617 59264659 992628459 974344268 618961088 594569745 180212931 881546345 639303186 705410275 765495091 315723816 599276023 246133577 602195892 374402295 656575805 190917895 657120350 666344578 514383595 340124596 592086013 420848711 236278753 74309830 546573798 8761154 307130232 709032665 630509341 979135159 307805195 719468534 714829033 493499725 239364463 648426614 683394381 491928464 142659279 972683365 77361149 866517819 286103576 437454771 430999853 404660510 946565811 560098033 205547527 715769804 827829853 75114994 41624340 374660632 589542149 321920621 456185321 835262493 213576722 487401263 385941527 454296176 852477007 736795136 465738334 7334175 74277095 889192226 197579316 924023850 174596289 26182156 425624237 512180840 974815901 220717619 331641600 258509671 446655622 751076696 6618263 674062761 269520066 229329235 771988008 977209324 278751656 283236331 828429113 684381316 656287437 843840864 528694714 356046455 959928219 939439519 990499582 86156648 561323137 535140023 330880638 509136179 810174889 491465936 970466580 167045601 447320890 931133681 49266821 425852330 391845381 860411353 800483282 62747701 702178523 972375931 613064701 148025825 621873379 115198419 895121288 913645569 752480069 135305122 274825112 740867575 732250531 415245417 953993732 305355967 193935783 476039864 261034604 781280452 187388306 808457773 173959203 887278135 678816888 776591204 72655627 752891442 77060230 933440756 696983075 661586657 849583532 211427988 14858175 608053741 93097056 712277072 155151058 525273617 877068839 838856121 179321712 934955708 799674541 198034311 775253680 718187915 85090965 984941438 972880905 835018793 154221246 94519762 184436789 847794989 719523891 107453441 409259164 728877240 608201250 865002026 348166047 861630357 253502230 84536462 882332207 755566832 424517545 322875239 645376981 335618190 942686046 773880575 681281499 679173982 343275213 281110589 457829844 917999240 601559160 139152849 474797145 198882986 571603220 680457608 320556415 777543948 391456323 604634412 259736329 372128408 850637014 401090251 335765190 282838050 264630527 630488833 107948144 727896841 607247803 530303385 258574383 325284496 937343140 671988440 610460750 401538549 731644347 126080399 213469433 892295464 42135649 998526480 481582552 470164807 356109341 631202980 131880810 911948611 464198014 337166523 928159271 429494414 726889604 556376578 770718941 244169581 42030866 181166155 583747277 289241051 383623514 700473455 635574746 50860151 72930412 506168315 395022760 719591551 268593326 572671039 655615350 449265940 59493873 509291525 748680769 836795495 452626850 369857779 292265920 405049169 61464038 700779449 974519045 677604616 43999461 269394807 821693186 494093370 694756335 59079027 170584433 577602654 499795290 488790168 321386284 532856677 108477128 72708492 447579396 449596297 108759226 232444316 95481477 1390896 525022766 553436385 490735452 938751622 753627852 189311031 784749657 571714404 730008009 11999400 586731660 126508340 802510456 767832191 575417563 84349046 422668171 205926317 83279454 577476448 536625991 646042966 577207301 513061019 426344669 59806061 942673859 133567063 390958922 463888691 96789961 806007540 800705127 735035819 474324676 496349685 678383445 256063096 994343150 974131343 234191789 11170230 9684734 439621134 978446865 812741530 804174262 631779821 85756441 617013784 480097063 169354200 996032460 442782102 446485295 189094121 137844095 211647530 33288531 313990212 544949948 729950067 737471424 521540923 724264359 307760989 843875651 13021004 900668812 277370776 154381288 401456087 696445733 587429171 622890636 31498284 783665602 369080870 627722596 375917067 258193861 673772238 86063566 179008117 188007203 36060682 313952363 864977478 781835419 189719168 823540246 853219839 30664642 405932839 6759731 802629106 976205515 569995686 228729307 476170257 138287853 324258269 504885979 749751115 556487677 599548986 161355875 466918672 816736973 298286856 676975021 241314976 695092474 900665099 702500401 97098859 558772073 613230016 931423056 702176285 804740198 438242245 498835194 410377990 813918665 577252618 773941945 596203962 390734273 864873426 999868886 658367511 490788683 810218370 579052548 994342142 59858117 684462093 565828747 891455601 357796221 33465944 567335130 588030354 483032105 766871649 788371903 118215735 600143735 22248207 29167311 291173716 941328703 915096140 526746406 876290507 495745909 884951187 890982147 379275554 731785305 948137719 179894274 17331440 393600458 246284518 735530583 740461872 982757958 82636149 775297830 938833528 610561485 531232203 2124361 52698551 457729718 577804039 320230467 787200655 985325036 604440839 112247423 763151929 751914213 533220915 855347481 602949821 935520412 545912208 62372065 19112353 825146109 541486002 32258817 499617330 358986524 293649244 816748091 243911853 828102850 268326271 514693393 447217267 661811109 412968424 150491198 398050730 982225606 984911077 513489990 353812635 656079549 306872165 72396975 239453662 618053912 976509953 315277259 6321199 816649561 223263708 465964839 370318935 646930445 983825684 816068578 573009080 480595255 892909486 12878611 542953950 945934887 939292205 415534606 577790778 761725663 9608815 934858347 305410035 965228664 522976241 945631515 190003472 460856665 567240563 697211379 868325567 38051368 794599647 637117741 893085535 412095508 44122868 982517565 437303830 418978817 214515971 423985847 761008386 311561962 291545153 857861896 568537953 454216625 553488978 260684494 335996987 352565127 348678278 675017092 674062359 1115663 97981253 844681079 216340574 706759255 32220155 407960844 948527521 432940765 532524015 134655439 758375066 325979389 777222028 50832238 530994748 632590496 494506949 740601375 49272598 488666936 49775930 131155920 298227394 658540454 850233217 62784813 752130052 668281373 198657104 653753246 862747828 522005192 189599631 339610432 455616428 596097419 158366260 901999054 260768052 146165765 321243372 909229495 327244350 157034101 433037546 465094750 147523716 400434514 549565850 418069004 279548031 944203679 251072288 131128256 460689166 118784283 603307366 847216634 348246735 230111710 287569884 275023401 190906974 605244873 759126104 603335638 187191812 18590474 168694005 575455762 759908974 36427554 681597688 215644962 597763287 364839403 982395724 166484316 113715354 456742329 857274495 659001040 168460589 381124982 9147975 637963439 846560395 89618306 779226038 796675700 680300748 910918010 475038711 348389814 545437349 749204203 719181570 524908114 151143135 660276678 193061208 475377327 143089098 754706500 805875714 215274644 807570002 806244849 932579621 517277287 721028338 521756660 472522491 4722708 39685107 768525998 284551425 838156897 966729729 460789383 194248771 11923866 392207299 504510451 933162170 68618562 381763548 312891023 499864031 554230721 913024771 304081252 45548741 556312760 245210632 285739806 672627937 537699615 423864971 439875989 204757481 742930794 977540592 638740402 82076549 848081258 497700931 322306309 452147176 930805743 606139729 113934853 974281330 642977730 10421330 756808870 657140106 24798898 809321540 530698589 971522703 919955964 816934295 811083110 646052903 278045989 631786905 160731264 245507611 832187176 918998289 706619989 320510212 429683610 224924433 38485302 572973512 120223925 268614009 917376124 905763774 863296669 849236286 835189457 932871424 605959637 260870030 219099509 611544788 316708756 832866874 898325621 78798492 135511838 975190487 692811 428580625 166702247 175417306 450517948 62018058 34401920 183962427 409641462 816556912 724249796 643074964 936413111 58665036 399724382 284183979 800964954 633162785 95620557 793900935 566888963 635965101 596666899 950578858 861709054 375188374 235781937 530766074 53672758 182970989 381639312 848866897 398520064 323814127 951371680 198462438 469951896 930512281 802842218 992979844 216008556 929579253 283549988 204639385 830312084 980029241 488646208 824717935 79801001 853968970 314609432 485387682 658856106 557571834 16221036 249851485 102916041 991571234 472726374 552460620 756085747 468222352 631652728 76404686 22372844 873219371 288958220 96042166 113518002 934843870 202161278 752606219 805889075 927751867 785237623 142364048 167485909 407422686 840759122 578799493 389509590 199044400 368931599 632571735 91776247 190855133 966911559 965321900 218666568 151908276 514348772 291418900 874388724 199714807 166369578 602799122 568773876 682112731 801721865 667492972 622651118 793199422 228810678 391113669 493549557 485499104 780352699 628501864 189572444 663992524 614391756 701598753 873841194 13029838 895671824 943038864 780930190 689977544 570439445 387293384 749335599 787810082 110426913 387461787 629845701 341496086 559252285 723562395 238462269 5590595 124342652 803724686 998201367 383074310 324605096 168349135 88247813 324909921 300042650 106354924 482133512 80277114 874940203 58334220 922854861 55752352 357731033 992765210 954618362 40173395 618328635 937724285 485688615 236509789 530552757 970021360 784597025 91646684 478312364 33130318 459304479 842826088 649820363 295614470 509068559 325449850 11203741 105850888 92977891 203217845 601479787 244265906 120542229 273095868 623509921 765980292 632150790 38234220 573507258 704408002 900650999 51838710 403502101 562855909 91337824 953481188 645254848 526561271 983349176 514005998 67174314 862736948 771051392 20207554 550828373 540397953 938637130 361022779 629173208 262623833 891347204 131587308 680793658 457883533 116266811 513544134 450594317 608997288 355830396 463462764 481369804 391041109 618989407 394291592 624231477 937503146 740050392 541589213 970192166 906815323 555726476 251279444 742662982 443377245 73148325 627256916 212100838 53734829 739436705 877341108 792339362 92091115 606854216 114501603 906992628 123570896 129000043 816968036 501280878 337711974 551622892 106283442 997655584 173951780 676644233 300715599 886915204 706076158 360990420 557366171 606186685 516846351 762899597 945663264 211783216 971546895 336654529 489677762 651099455 558408835 172238808 229588990 924701793 300488915 749936155 100026532 688556248 552929960 740032926 564952205 708162573 459769714 13534985 68281359 856301958 637759918 334866068 522930372 507611113 323656235 289856685 798614162 425081403 322236857 898209717 371227225 875795860 299213214 186298750 565159512 893064185 16803330 233395439 736932626 365773977 829015334 971203315 455043603 761467613 842938653 999259664 794530759 86238197 984944847 356356128 782616751 338367375 34178127 709780561 483338366 646987034 827160379 969688270 881885508 584781128 296643901 91269105 6103075 203276926 82327888 45684902 866591536 298492007 185525130 1039388 254627902 708835261 727766 217589507 904386792 913534372 601761222 582659671 377715960 182237123 901919326 620073918 160251545 182588399 268878283 503475697 144974390 342522317 574587004 638963818 831845820 472757856 939644382 83312774 861664759 475375309 435201916 626441181 982317900 698647430 959585804 965583422 989044151 269404658 178542745 974089936 809711106 189663633 612528913 122561793 497406678 826826736 522918802 707969632 34200829 532928615 147509069 896872780 234167936 697390368 803696594 372157524 642653214 582382314 520977146 844089927 108530821 8143011 757765585 672985083 727527894 81530254 950981112 908093565 286264059 397218169 173423835 543420613 137720552 146433743 853711574 652885180 56808252 295479627 64943286 718605380 444037343 730284952 242904807 697178389 801735081 467740402 887709477 68377008 185449024 264036488 101190237 381900097 603723524 547040793 786471195 299801107 332945818 663282613 539579228 342433392 200748282 208990383 28085085 935781038 153499719 718053513 557862997 760341019 694443703 566173405 277863861 189065097 119857994 340139946 317654645 71658758 435950895 195268397 202148761 15580353 136990547 346274020 368444022 144012076 530658488 103683974 859708411 940670005 308808662 5910203 337889625 436557385 21789182 860366872 395730762 93393435 391665404 68766232 329873507 300416783 86848718 781124787 337402396 407006297 28015567 406987762 553607655 459279713 521490348 71886266 590365582 880527068 526142342 798392667 142394188 495598521 686580702 726667726 777983468 620181625 851716188 227412176 201918118 606915519 479420405 900591498 213903233 323462391 571583668 405420484 289836222 862495890 410167668 738291242 498153553 745701548 286602557 234985445 952127054 432171140 672292726 596672590 199367099 168878218 611070351 612699568 195565866 775298232 909220435 234107608 473727998 563372938 224409048 303399758 719498737 980017920 518282241 230113194 755442496 284432304 8017631 851725509 372850630 193540641 223061920 535973195 438971616 366542332 600418251 451003194 614248582 873623908 858046959 921677561 401928895 193921414 76953872 544240942 910576193 728813748 304429908 445137024 841175699 631130090 760188086 214966455 82458284 769558193 111378073 360796051 477524746 538286918 450161731 124731780 822772142 510731484 737758189 878138315 553967447 760023036 67564951 973077173 186025754 293203213 525506950 503417518 565483807 130163749 241323443 975155826 669715484 592811407 385147125 338637136 447772891 904498757 212917131 263342612 301508921 828532027 646241765 953555645 923825364 552490997 268719550 456400877 596903295 374086068 952966263 993962991 625808768 734359153 907767056 483581274 389731136 183264929 452319100 448688524 83872200 637984278 862275652 262942834 235152148 41938669 71274656 151778094 286201350 249373355 283750155 515221151 923937649 192507126 924486872 394563784 841721167 203592121 329816507 691909312 921294724 714169538 334691582 520424288 327033872 353193518 99944591 504753774 528126755 165700305 442091730 675411343 385451080 943251988 775660907 387368563 224995751 901632779 956099972 60763720 839070957 128768178 973776112 59952400 199894959 281166260 595158664 183687370 296176741 836960894 45842428 919769727 413940117 109558828 579000041 193742106 700296806 802873882 35782533 792891434 65107800 187556258 755483313 923807136 865764198 942294957 604634986 985645125 172004719 740735997 73099707 882560473 117453655 981556269 13993015 958999936 91166043 444564960 872013294 250001588 385251287 893964077 85069375 338642548 143409167 289252554 777569989 971324616 622214927 526863138 416236430 471530609 50830882 574882977 844642394 280929137 524034273 881127497 386019804 182121638 227398009 896892652 956702866 208372480 52991518 526227354 925643525 17253440 604650457 595445159 922828622 493405132 403397370 852357762 596363430 365589335 485183626 776293656 461825046 621915857 229444342 507160000 962351149 219360869 20260228 697349192 458172320 506639118 936930030 399246392 858715233 149388507 800133070 764913516 45996477 598220985 292989206 621470083 392622158 266659587 11832893 645216176 553134742 296041159 26077426 195616924 103884543 623094873 885938714 323544307 548054127 348856541 531665209 652366324 61559798 158229633 115369535 953941709 660019666 933848748 129152127 808504481 569603250 471448790 264206098 463973988 148491624 195585426 252271559 746939266 626697250 474607102 866867902 398701971 816464066 204076035 54076399 853902085 544473424 985198589 721839065 668898972 288794679 834738541 706164951 631846096 939216141 853024547 3604709 956497163 358619986 312917425 350044691 554239562 829059535 344452131 246603396 537474020 682975056 605699635 218510285 215278265 500389076 623288469 731491158 657223869 171453084 860453212 170261425 267277980 758552699 202719122 852475126 187117971 879036548 823817047 412371597 418759132 322949010 334972803 454031902 756519129 42203273 828545300 777652857 841874010 430255276 245613234 899121795 283690366 491393975 122647604 276928669 936408572 124607525 730964915 979581089 758758328 400649968 989090102 241952434 294039381 361678036 936650677 24795537 932388125 300836602 953187798 367582349 880645240 221371952 541629550 687584020 734719826 575967963 439494203 230022688 622978852 263813301 468253681 41771133 601639665 586013130 732615672 47487340 513434286 742856733 130999670 422849835 718163787 926614425 607891709 302689794 12892866 347156156 761037197 793005832 17344558 782168983 754218372 11367964 310242725 929581817 593972308 85167129 883693126 332784153 78488580 543957887 273930890 41889576 709905898 465517060 860522757 326832720 209686589 950065473 661399970 271616677 506126540 431529927 14286467 445361004 113831882 273722856 222093234 957898314 250701265 786770854 468059340 836887194 628111672 663366444 763587441 130384731 856805637 571377886 564012712 629246235 716556777 224408086 619846781 540122190 995757389 306798492 649629332 700369058 548947189 574425500 574391931 21899631 745723700 990065275 669308777 420785767 466648735 991792575 256496451 137081581 218064780 793910691 273081005 120129215 193175525 314739021 316085582 101939296 583008312 605704542 901363788 524603386 842679310 742697568 646095638 801791924 229080991 571477571 912306561 960599479 622258194 159505182 527157910 720277768 295603730 680633312 73967805 985619384 530566763 802396335 734253444 727903355 459231059 729026821 416376435 569722298 617163368 16425454 950463469 874752527 872516823 605582041 603976299 92480970 231766140 54538949 871414315 93395834 643956504 15328952 620571733 983752517 66001625 973670862 107805350 340263268 123997401 965154015 682468440 360146246 324756440 594929504 325460190 975088035 210461019 973444345 634606181 840744171 197787943 590446277 805816846 847211547 427254997 520921464 219560404 88589009 498270567 670339338 29324880 928697359 40037624 144261647 442789281 485478808 558297335 749153737 32785235 573332251 726112462 945671689 795308638 926835745 40564703 66451207 432294585 449314804 905096148 39881561 617553013 588802301 611806450 66453919 581127030 880378525 482093132 528396471 399255251 651999141 117143760 407684660 65638253 900752056 575305493 200272830 129496787 217129432 457980103 357857419 933716728 762583186 424405461 123389877 2468927 390457070 458299879 185641537 468916177 970171353 637668142 790536445 434601787 27300564 189413519 511384498 118915694 664044925 878034731 356943221 975147883 497765891 263966426 442735496 258883514 913568514 569557935 681246226 944241791 682921044 871080438 496036766 494892169 556665437 98422782 275892658 986492245 503177472 819155549 206863602 440750919 365381350 339804914 817675121 269467444 411712196 983053983 507110 254301489 964773437 777420431 500412934 782017236 485032979 257026347 117082453 392309494 137925795 927764610 384811013 734706261 996840181 155639256 167692126 107328013 209746638 713637421 267200510 546185242 40544233 228919051 366922776 737726335 774645049 401336994 41631515 466147097 555272323 768515652 564353115 534580210 882409108 154849364 129485880 823208399 626804000 926169135 830375797 441618817 92653622 719838396 750608978 728049803 72333482 145506831 215818265 888092358 244864506 985710238 185165431 40822715 830311621 927082740 895010692 806046979 493902701 347082476 991184554 626474829 287989666 353591355 169003841 936235604 651118926 575885837 239095064 80897539 879416368 173670944 499497001 785992028 879891876 302229972 331751045 13182190 578339189 977465999 508056433 122549548 716369747 232289812 114915420 257977680 910501142 33365626 259071456 295904036 836399045 317925780 531204872 979826182 253942395 652745790 476238643 644019996 616488564 106841518 954474717 680878288 811390238 522216746 82896048 298378420 31026268 438665253 494626881 9576601 220013671 759016788 909844887 407857722 639846420 822343859 203387968 728097413 817301661 85617352 762223502 582513510 682043629 164374729 496376815 297801062 808165374 404813740 46218327 687122097 970654643 153388154 461424962 91120473 321034235 139366100 633537191 185070314 780806219 978167128 778385960 857171413 208245097 270426441 13534543 988797249 439447190 710060705 269819081 554131816 792398722 108108936 447073648 626126634 719407183 843773584 142943061 377390258 223433571 120013903 427307018 232791022 344747115 515962639 103637091 731677446 812020016 838229260 862919957 583814152 87586779 320931120 544476273 586260420 131797898 809386244 392839550 574272018 850922536 783917538 781301321 18677566 76393112 66388447 285571266 665903721 984268263 922776907 511357409 833202889 845058948 936881909 258742940 795488 443301656 395430889 435297629 76715009 48153568 188587195 338958549 391873618 317905968 474635757 221552538 510505719 979905387 752118297 843396921 245008512 151226691 393141823 204115423 13571127 87853061 923769405 737462367 742657804 396389092 420673903 324522161 250759798 359089721 381099717 247836506 696281266 627482751 24970273 753201389 526904088 897056628 233190853 401706391 487872746 633427541 527957057 171166529 535728328 434698264 581566530 507862074 47845666 296734093 853631746 968303893 306537033 258365373 504071776 670609438 876308485 2095403 760701911 143823621 917328397 418512313 795069491 633613668 984034477 666184490 191123197 212496843 357183573 721558922 399708125 520355933 190713933 915060876 156641947 680303192 175965571 276673877 805385662 79951561 313742754 236979927 637670568 914333430 609174778 779692717 726555349 865446152 613892990 990968158 783896337 912707573 672100675 111318832 903941244 944802539 27703594 274619078 730606033 601966514 737557097 508954624 811477971 806985177 414353809 814435588 687891010 666038365 873292485 195243892 171895407 224111400 34309284 641086147 510508710 272848971 795964602 810827433 187538162 730805015 282015205 661396257 663792608 514668124 980171793 933094955 321071666 72394111 655298928 456468607 452415931 912256988 231879859 274313195 178255396 709017200 366771057 909988278 576461275 527063017 370366337 418972440 108689034 716692170 468251275 396927186 664521547 272610624 739257606 890736855 309374676 787707352 843267472 286009889 21926576 242539895 229639572 775252116 27381353 967310548 483792894 927184766 629420564 486801088 14332222 659374321 461957354 525235029 985684129 955142319 629548669 699390566 321512714 570562514 661001843 553771997 136348504 705285849 891195269 201103102 570528484 258126667 120516886 196003825 14938274 697760620 897974850 800457968 851939548 471055930 319149309 112774659 346357862 149767355 957028664 430014777 812728451 610127144 13963303 206512887 233578553 765683029 924898408 911302759 672450297 795637000 966122713 506984934 785721945 693043803 118175252 997961385 538749956 683980445 588392662 408080405 162764536 230617791 157758541 178382406 465233048 138736851 511661050 143322938 980810865 593118440 513930396 142285548 4652530 458932081 208223934 603334278 318606208 299125692 876774765 513060783 109828954 759852502 24549561 803190742 128738971 263455124 228764947 749615966 43711281 688625839 877633345 269936327 377672767 239505812 774612127 16722408 7074999 764350619 537006919 705591655 147892253 948331874 263004213 785473602 563481690 707495962 657723508 176350622 11639872 933900992 98283970 313559847 562799509 956333405 931792312 779284503 339745709 485816852 740330980 330508461 32296856 610253371 978679514 46002368 193397997 985882398 971589713 975179545 209566577 355046451 480871862 894159882 842195191 122533344 705794228 132314830 430739632 164035152 969913408 497467562 378814393 236407436 64935690 761673326 949213031 904368670 100437475 749742823 753101076 643974992 163154167 291874410 553211668 347470405 4963633 57288899 178157626 301908460 789496485 614727837 351999643 884661496 509331884 290968402 477805829 766144821 924584405 736409514 417100827 883984385 758112577 892021223 513917008 596309179 91581465 286356938 219799361 441125275 604234009 754815928 234158894 886875661 609040886 517967610 591294629 647764879 379680154 477426385 837884068 56398546 457583841 611778012 581774929 524492753 680561818 582343216 368961037 210861896 177062968 252460862 388183519 493604255 647351401 262452849 378693478 31225782 917395047 95392831 663220883 133195746 922325429 478920122 759414175 513655296 244652674 361881351 451080790 516965518 803978929 747974773 169444512 443636446 48219065 471627128 923053798 208926261 431753848 308887423 155675114 270363604 406617503 587930617 312571450 31610515 654748041 549386161 767779188 888442854 84542838 806744168 887409627 52189747 763905991 704614807 426896350 766775319 452469227 686462310 800298613 204450395 520952470 29194621 137169849 691679401 993392810 932886802 707339797 674736682 450795423 6611808 941042845 992632615 931346793 203359460 325943184 791352010 855320630 451706470 716491117 338530006 738853057 993503843 79834983 171823315 274798227 256101371 590821243 349194187 369672800 284094276 94811639 277438024 765131133 97688780 826375816 335415898 161079281 328464361 451925515 977524845 753098371 300380797 669170130 259621966 630614372 638177147 174804376 756945054 627429666 443712595 345581332 252703951 593118545 779743927 278471651 833159314 549250372 575083984 262186170 619699846 245952083 552624566 266156320 460771619 378309632 260873457 112821791 435004280 426898376 782997935 200777686 640637395 38745016 813706299 321539137 683991520 865797147 391083702 152875698 773975912 614494152 864767906 903009714 843447357 874280172 220312337 852078830 41757167 655103720 784536644 264627325 253082541 254358349 766982900 435888219 793621651 55109350 454599129 532786755 586360688 384047803 888189041 454665029 24869258 814945459 297785974 716429179 842309195 819974701 492251529 296709653 951264987 436434222 256945228 224720331 664891904 455898315 296579332 484581434 144766956 729948290 328632784 260935598 439288365 372518880 554656752 609881240 333111606 174094194 594071616 687928009 361914897 776165992 977549895 137995125 632904057 478462868 592160030 469430529 937142811 190441550 551676647 246363966 585857486 166927266 595133852 266156228 21991719 992821858 787679462 284165593 556743191 283661394 186873726 730260144 111781622 689989265 455186641 286202770 41167914 598048119 730174201 634098277 862727688 660318294 307752210 700901553 210649738 558158327 918946468 172290225 767457476 913407615 787236671 319600571 464905443 573621049 801135436 932463499 526758428 844330614 400701671 974777439 671154642 91040156 720815410 225704022 836231079 57489864 374807193 732031373 299727162 522868711 353140774 760919109 342760433 833830399 329527203 41376980 43828030 244817245 817450356 941248221 534478065 436163323 436636083 829641574 490009931 98868742 445084143 187825928 649478151 85359225 791924895 891150379 383282995 541056623 88879748 375642014 521969653 795239826 457956462 478703931 9963641 458145468 945183234 8241525 20659792 671584132 312790423 58122773 423734892 953906276 890209065 356844614 721555999 69414799 809903563 142489159 26539212 141034521 356061435 350693291 810310189 119378523 253671581 223434702 751896377 681590708 150153933 69893482 259946378 244721485 269743378 16684340 721175385 542945360 209844430 23797341 885306751 968131577 357332602 596128052 752697019 81844618 785053718 523599841 436612117 279701998 338363833 724046047 893226893 536864860 77163869 140244797 918279940 72997417 653622038 854455154 202356999 296634704 442308176 970458338 705682037 825860335 723841185 425257879 214079498 595824943 384188577 766671002 379940814 452066194 372031142 472772974 757753256 517409136 884161723 188857565 245248492 184602815 969443273 720557106 174865217 155895516 356718110 840278156 266653550 206407497 504666615 318646749 472012633 641991646 965396885 812911028 388183301 382252076 405470382 823395771 798791189 461661196 424591143 720669604 131509567 827823268 44647641 753712703 693195033 532432143 822184951 473710910 338921534 588190146 448624069 200538787 835497148 862018371 355158975 384551813 320703949 322932449 571451849 440048879 876308373 257371449 814550786 412496878 866468325 653880824 133309412 720820923 23087949 26837182 980898794 644984238 742842958 147393193 321876277 292521828 36621344 845729201 441484611 550408843 993083931 611876773 230835417 333279793 107544979 23607472 572969032 642705616 515841402 455877207 452690905 997852807 529056375 618385131 59940061 605694721 864154781 545717734 44190423 736667775 385658038 851660442 465972287 490602961 833389919 498150163 544826566 547498290 990543038 451280441 506569381 469476151 840967167 580211343 885185446 126610194 17896129 842304611 584723134 155746256 742113731 866548776 358700103 500713385 917702130 615153023 98340943 769983042 229813223 758564719 750492984 41928985 328807083 926686338 388667598 346427146 966204674 139637444 204283443 796410195 628585518 837600500 79611378 714916048 672446051 596760290 895036653 297122996 753936392 38365716 176698887 603913279 766745555 670402812 564672232 937384734 54177139 862960898 561454956 172780236 269104589 486135415 785186146 408952016 103189088 371108776 793504422 401952349 556999400 318833787 553914314 895393498 229216651 634483382 282037638 666760193 70968071 291418893 541134749 857214160 230389448 207202824 634893416 349142136 309907707 825749077 926301431 350247483 905736034 106153324 692979617 995704277 389038708 614546353 971120346 424564419 199687204 905841203 839885764 998345959 405342674 105339828 686532856 14229767 400532647 991003790 466926907 427321465 80910698 102591006 10078888 534504099 350000356 90554720 695507524 186288067 162590635 502263659 445962223 911264581 250945750 298829059 418858605 716007689 721581731 406456943 725728648 612563718 320233171 286462952 878138971 110486302 224552528 458299124 157658904 290908465 257889767 194754204 389248941 138806531 705271276 581873633 154549993 184410430 166144812 833704926 696636384 145441006 578646171 989367059 658045416 931429805 918848386 681444832 283012761 637192303 343029412 308429501 678445153 276264768 976461826 784241617 678862213 798806327 900372890 423888830 476677308 591011839 32253307 848547886 986399481 277145967 152195614 568207922 93321814 399355012 988190033 704749883 346434965 326811820 119268910 62205498 364475891 490084061 42256746 423893472 711368198 632566583 818013730 893261016 185583551 557300331 295638035 73947680 787576427 244841447 149891239 614282158 510373334 859429383 565633234 632773387 118138 22419111 397148289 492791748 207049876 730196074 381301879 457605394 163182790 633154736 355753537 506356739 258350241 456795699 39483088 524763796 461339955 852748968 633599902 685621961 206918226 499767127 55132413 78597857 12105717 966291041 279495734 705816373 965785767 278722179 990874040 942336540 219397709 825455065 237367559 358422099 239597323 904402086 972539036 597152462 983395297 294322732 626865235 440759354 263651220 914183489 290533153 717549291 942517459 173599555 359167621 601748047 791612124 966948134 492998949 112603561 278541183 66480808 67825536 299511916 363418577 292236594 26211060 222468848 343846807 218338995 576257955 761961849 326471702 697831193 790156066 970771942 157602715 400516057 678986745 993314131 864545430 472338493 724132818 932379815 828820193 160482316 176070203 600586065 676284974 349829946 915205354 943377115 353780188 915279387 419790568 533763860 213556502 589610714 195655081 418501549 701834016 247016731 655440659 843172719 849438817 429209357 161425829 750169713 584166727 777406495 431442157 664023222 682901726 321508809 593987945 937501552 166820324 690070025 543648375 663787777 998958876 488388501 535917323 676550785 466541922 716757273 920025753 924479196 855768297 872282815 54525626 489654415 50577686 106090442 771865471 714648015 35168621 925444429 195587677 645971356 598296239 20741097 734755331 649889955 326632307 388172889 239659208 269800819 53409336 709515451 505196905 109182658 706522257 839032574 714256926 262707024 522612501 789828286 572985708 810249028 601501731 922181984 174645847 224413617 231538052 230059812 732931324 226184555 174949529 656416381 898126161 174200849 852550154 3688373 20087667 639416955 556634644 169201847 435640336 662029597 930322597 571047251 366009592 318770737 538670273 147946506 984232757 229164406 172531787 957841850 450600432 88703212 960891963 426516221 86535949 330383889 738774248 646848067 648393298 592362737 739498250 644408651 236079489 610628816 6184097 131524832 514023631 243455287 799251450 893514610 234898554 3006370 479696026 966301883 273951493 331874871 336830290 6163689 41160723 116632188 426370301 380420202 587040851 649446907 288026876 160486485 872559712 380402755 288023166 77956426 762636637 19648176 870117946 9475801 896974881 434430537 352715845 252411796 58800600 17239307 125766850 587357244 865258266 212686610 354190891 208489220 95450144 1063896 9883480 156135816 383618310 959691909 546874995 754618104 618358181 240805958 841219695 602448904 61468320 212506394 931244683 866927270 141164930 95578045 722412364 848571931 777045645 449188505 932068154 154092431 783007209 677766582 493470847 672498762 590595784 531070243 693412695 268891839 121112190 601233527 574054808 850617136 742286237 171461987 607143767 675483626 306312312 701413635 787081817 104280449 385175328 57941752 562887234 40148168 438379693 780990541 143250879 813351099 96349274 908841443 216605567 891929964 623766485 965654793 683182268 730727687 938787840 497559825 724508965 987336385 420729770 154590956 419574986 614430059 406266798 667125669 812607022 345143353 431909098 955726681 739203225 850323937 387593632 268602419 971552624 805256628 675430681 504567982 667460749 73468422 554494595 288816892 25881277 344114337 304544494 629488529 830381167 664580692 709777259 980319729 457190458 378713368 87364740 422469048 593243168 934435638 39497723 12952950 883060765 739878004 723957831 569155081 207711922 349879453 139190060 150244814 344401545 721232363 368487529 204258228 35861799 611605837 362263524 455077203 622622832 568376999 287288541 888751395 962170662 105633222 15175491 162225166 972932540 143701772 680862500 379763807 342480620 906201140 206643000 381759189 482646108 435246601 804220795 45426067 923621088 882715334 206105813 54105436 697717650 975268023 611927000 44501402 592535840 300017565 353405732 762976215 460220983 846552347 713889794 68730043 855902040 166046821 694073859 101518369 44498322 160558256 849589532 79111684 881818961 150329267 966952873 830928498 669448804 819194848 540251552 983904009 2617229 878168518 161819409 909836989 866066223 19477508 734174078 248830608 862615102 922671411 723907127 141489078 611777280 107189239 116041631 799094855 411789484 230123934 23929675 439947723 833186475 837137338 543638356 878363154 491428580 366078850 18926452 682904321 123146946 665103894 364503883 667109263 424616495 938225606 361942485 861634008 376982338 4907274 829084100 789503669 810472280 628822881 951893420 662803053 716622389 240858449 64519288 905730137 720170678 223895418 613389316 771359958 402684942 581469355 19396994 455956037 367461528 291162503 698943402 217714187 260130252 758828417 33703115 803199736 325435827 801375749 381048582 594232785 347497811 874089119 900614307 985531213 717501696 480132928 982440468 552479822 483798 53262416 266146312 495486892 670679054 345347721 722489083 150801039 140016937 61340147 922388389 629835094 961839227 319982018 395291026 660417880 408015874 655380993 890098200 295106151 565395392 848761140 850504201 925215325 187634207 474122501 246933631 213615475 672765772 893643454 674576049 454619040 731054318 463902947 534536260 611783916 176538756 749627560 871301365 388742103 130122953 423777629 736777075 92743559 748694131 123626111 231936850 896323306 85675515 385430243 562292373 359242387 63810867 404530333 652255371 503726958 748260361 686376311 939030077 640819557 467299839 873048126 582794335 297160486 683865182 429209009 487496314 837145908 400071128 266049478 551123578 981527876 325326771 398666615 772298425 592127421 944966258 164610674 9047153 855715675 660901870 379770626 755194286 189156695 194701501 862994168 401729676 511332025 640643052 441374707 990492197 429083982 271363449 743056637 344937702 861322273 823988524 614634722 965949728 307062587 668417576 60254234 368591034 520693317 6057137 308035729 403263227 345687724 439839721 771791147 552331118 974858660 416676347 334321090 940036650 489525755 242211112 133738719 189183909 879107398 744128806 37849074 356561436 302093004 132514812 645922438 269156956 555212854 395368240 378976076 736526570 565706750 346183241 894916376 853663413 251747893 523997580 88747380 795823025 365048008 737849828 232836105 486159192 926701893 188766976 861066027 94986058 519513758 514718097 941952501 100808903 947555370 826773429 120996931 960750609 247247903 694975012 432574150 9060125 569578305 294906341 923011715 322923226 49026574 854844388 98707768 987798905 558786772 41106012 338061883 59639846 833798969 701096265 630915285 189068239 939251562 691781069 642147213 944929639 273799140 60282842 878828068 246070213 700225983 209898813 903632716 696192628 5612189 454867611 402620942 306301764 327269881 152388559 397121883 639287095 217951534 332303450 149622728 928473568 146484566 474381171 323097702 268696863 126194276 210046682 557629546 807472688 962154454 255259945 352785607 291344765 393493210 446629724 319869569 277460726 420090461 540812861 359790984 743994598 192970491 611518493 554564547 282484627 594608690 433497928 155646456 275601488 915227490 2172654 978298326 935235856 686844977 386708648 214853212 133507281 987366960 295809328 772410395 700827350 177072128 85401485 823350285 992037275 959365219 308380551 69826261 183589920 483237108 36713463 128441257 285555480 531712826 235499169 849561636 796836521 489542320 849946452 207657813 230735778 368957327 738238040 664905101 939240720 487101020 980992269 313543309 860997919 497736955 394358249 542685803 27610938 825144070 823571780 196407218 362127888 638220496 64282316 94715313 897192956 953480300 28481855 408066571 376598292 425651432 594364654 453616934 532638094 55829245 834724961 282998346 595635596 802495975 867182812 484701133 171147523 868782488 191663394 618512883 696234165 799345890 136166797 692530279 421566320 502467399 428715000 861714703 54836487 298261281 252739082 961293099 189298167 711266173 442416713 101265446 374796099 936175455 272618570 329073561 920901376 642267928 642653578 218316237 240939213 120365589 59083047 400336942 497978665 864615836 629032809 656216500 386251032 517801702 286171575 627338580 503419226 351790333 248951166 326363450 388559315 363726897 864263067 739934721 32983181 1125343 551018421 923263403 804076675 932876771 162360873 160407028 955917100 648887167 938484270 151561790 852646584 537211971 479357904 137291109 137828221 427678449 661547852 975088844 337391683 103179475 431891174 980784681 745112083 1246248 287345125 427486318 199773328 624839166 615007397 838613668 251259342 707425222 381872278 145404958 452803288 511870636 462113932 486890210 300471725 827642271 303222438 324670342 576185182 860604635 177721541 958178435 162765310 664174372 113186284 579092741 748609788 429739946 801782946 916526025 173623628 835518394 472922310 913273264 508915113 401800960 387146537 778157110 684966611 765608354 966978569 375362811 334706474 984709716 67112123 491730403 378037183 439588122 999625718 565513727 536985272 778924398 794378855 408314895 718284844 341450631 921107973 95660464 128388458 343736246 269179662 476177042 314622011 891540163 798537737 487048668 835646606 59342690 197888664 255466433 479491457 375229343 750377724 251532915 355573882 339331655 663564591 105544667 805792422 108598317 890015297 692193209 594687554 726049929 403672082 764064286 593549189 978228324 840004562 580962994 947143536 383892929 94475997 757971526 129450899 714802350 801852645 1325813 107523841 272755928 324767690 535490511 105253359 736450393 521938758 336895163 347011255 11469339 971403802 522312214 166495990 142349852 932574773 164262360 455895770 345134281 769132519 470668924 207579502 688710883 895677189 957897627 334504511 910148741 166307808 984741883 37257476 231224999 103992568 470315295 547097434 547685383 252909246 200928792 929848110 458454045 500133074 366184752 714091876 612523259 862663470 300579208 362164335 571060282 658235143 817062665 226633118 53246341 389046518 65569685 712219861 280823393 491032318 603859266 484243645 632869664 939933801 206730112 549679874 958508406 225212732 659685038 371677612 330741443 341945828 113929562 146565438 652635768 76178662 922485104 31460221 980014376 545759963 612905207 895962217 645083430 863232174 712469829 813696268 700399953 869256676 506894452 870254899 94656488 322993710 499435780 870828422 361442606 845747234 960299692 184351832 870785378 241728191 797199596 930420551 748703991 381288204 282864952 873788739 298591884 339024373 508821534 910732091 73257949 315982692 186319213 119195371 451027704 176860595 739096505 833415831 120070627 162919597 152994278 222179438 169468673 989422684 562902476 587131088 538922284 627897168 111893006 217990075 520681206 107680883 645178847 590607624 436290792 659371671 171536773 660560456 392626468 769502558 453504275 364109658 725366759 820657118 286747673 824873686 827233746 169155188 493719154 66272864 120556537 556261114 524622198 534154241 623062670 160139602 190533807 367427159 999644334 651378819 863323718 163073105 865182895 431950098 331682161 444848000 862130182 138452045 485016251 363059450 377477263 919891191 869030331 933020307 229609600 554430559 624050540 508833945 32842062 570293216 295995034 10820675 657752643 941599918 291822813 321974693 719290376 540400928 862939802 916526913 8602567 625115413 725130225 142546682 488538221 13251036 833394830 819602080 760382532 882780828 957634686 549835049 911016953 662578377 520872625 491105016 365335780 822803847 209848138 921786261 966576282 463819563 355849416 173499330 464137927 619535322 930220792 52133551 250322538 735153615 508061118 418441780 813858477 991476425 260027321 332427459 867791018 782956923 317409482 642784761 11451096 528513152 207282619 975461461 118561449 659156133 297215287 859250347 334086895 26681205 982168378 930580808 665013005 653086172 275156383 71055164 970466547 109607520 756937138 869779944 558313224 112976555 400203127 344326151 765018295 135692056 222752258 681527910 610788599 22273445 789901429 835429688 910716966 464281453 643859319 638791511 387445274 16594808 359838164 959409711 879251941 545419901 575647934 468308286 762730686 177751301 739812793 45597837 857942931 71128894 454645328 1981808 513259677 750645443 67350482 811390493 647989834 334767326 579673175 138232666 383918507 422511996 451573823 186308299 736443597 712078879 899196163 707315707 57133121 869639804 815873778 616215272 967802536 591926726 129274113 809976113 832275823 814526373 444387210 767531771 325426848 552916867 509697591 922951633 956825526 143757742 478827430 457741185 617735930 13326391 811731233 623624007 889028764 573780237 406469358 313227293 64471488 681366153 520062639 406866595 219176535 532163399 264566147 861167577 522131860 76017594 320063222 468832561 477654706 325639536 525959085 598740808 149403511 319332646 156876927 552329658 935545593 845629952 131555893 943321426 227807743 220350429 221436029 340769385 415014851 396266052 525243254 678893577 417862582 323921369 62159598 691727635 874849136 61657470 369303383 389110915 90503109 282902180 309955440 840652231 161498156 74787773 651717656 497501939 372360508 538416631 564684276 773804384 432434925 636120477 617631839 600140108 852977448 250143084 671100608 459964109 738598829 223628889 755899461 373245661 109698490 613814093 738837851 882418417 888310114 881587053 630590900 404859100 707794297 209718553 924293791 884704161 693127808 203550988 477739441 731498509 373475005 554337837 123497546 196680600 112737788 148748749 247490720 181829798 847081232 330258548 403948749 525516666 332354035 744697535 443295963 952972257 500255655 963027402 840481189 611949461 989697254 12964685 901005867 313980460 191146509 803843181 495939472 813071494 419395051 110820410 444512017 512438098 579645764 536791533 343257088 377527953 855345645 838171263 448108281 62867103 284856548 915218702 300641281 833060960 493970890 770956723 572673639 703401445 488972644 173047073 310137472 650887146 519867052 986808471 20338957 363611194 551553188 335916511 733747120 382180730 868529356 8831659 768110497 105405832 834501808 760845419 908536289 661703726 90771389 960251779 511885862 475329484 29297009 976380089 119915666 238836761 481318312 311444449 39161707 701494878 81839494 770275744 362500976 597876392 852938511 603407590 320501173 198151819 472365724 47969857 437161845 638773655 651487145 68646039 142295210 103135759 327682394 12565602 651541375 307931588 199859897 524888599 920158330 220735277 341925466 420358349 360031047 149190975 927663769 105171536 178383334 755907368 649664703 443415680 750152091 280234399 381199402 891637441 683867973 118005707 101321072 830818601 643825069 712758063 457445764 608158822 564252803 356308128 810624315 262462075 293849531 889750312 888087475 36406301 532704474 883340957 356428817 412385936 373945290 862137803 38576705 50052707 805541836 267297396 142163665 677294814 706383687 462101532 454660863 959618825 446204557 219723427 493207378 639214430 513801044 12232849 502294429 656604409 445050185 357732545 221974682 750903229 410383251 359082776 696659264 326067106 726835453 345506665 148212883 377625601 377209563 240974711 586307399 979096340 744953750 732337953 103076746 618577325 856623148 768835052 571543789 571494738 362909666 492768670 139934616 864342054 31697284 533278218 232723713 208145220 509719419 425398358 225509181 897431695 264260399 39509239 664455072 10633608 180053267 994271060 56181311 893291434 863328390 244500063 627681051 881236231 929145669 656408816 120262011 1602019 732888862 18900201 521090361 533873603 243257754 287014949 975927971 678166483 342874454 599582806 381828830 776610367 207037512 2305355 422437333 401109005 331144638 879610149 17362456 730153565 370189321 471617164 394964610 134750182 488396150 562467835 314138332 91658121 849985829 231556573 104451467 599573612 841836610 619815643 310513845 590773918 96879462 743211722 880373198 785007974 118889122 225224209 359708010 215883793 572333630 850929554 395737063 753914923 815662381 647163972 277143167 523777311 206623708 659528338 979509988 487069978 40170503 794652943 503129581 572339851 180316703 730220747 198151926 597009136 609056305 829550080 933595924 691165135 311084154 259379387 163731370 405856995 33844588 348555816 967806975 191011335 82092493 143248222 185819278 101173558 625202410 254697481 497580743 688581214 854276785 582319098 32574363 637344976 577023095 369542055 874666176 285109690 827947625 776251297 610753145 834276827 928700670 950566186 480984667 190295944 48259983 199530200 800609570 104187174 644613797 987398556 818866218 712007038 518849615 43703578 956329256 288376350 79687159 150557185 446621190 575073841 991214950 102177887 661082046 23533611 605415625 979563452 797478095 537820190 123771981 640930087 464828971 860794912 559102735 450767348 227498234 264038561 506432756 258997859 87655456 930157039 631579592 551556996 437371949 117759611 901271653 744637649 914119730 502570848 557806275 716371397 355396765 290343723 439521527 110073756 104724123 535841027 782783270 255565991 519907107 246544491 241533410 921894431 195153374 206472357 548890919 248966227 527236474 750567753 809040241 583461844 350009785 850273183 856098265 205361964 999520854 411097945 134266622 716015544 705431405 328528204 217927466 383731244 931596141 780919293 796345180 792543350 66354543 359884417 824637798 438927189 635310755 812283028 176908463 157986228 430768270 453551804 301442810 659154571 648295081 997349260 680130585 418791089 384491924 676601808 898442485 597115917 30227991 133139177 364319892 942081465 799913959 973016348 61782381 5192768 944077764 444927381 168772007 514497558 675798278 598381612 693711269 354743306 152298958 908864410 846391155 591904619 911321748 461828227 952747267 8045128 101610948 901343346 871472009 430854635 97664959 769208367 857645892 310183832 872428124 815889794 793108764 239404879 303403315 58026006 686984139 913471268 907311915 297156718 613267461 931928504 548162212 158647323 48352099 620890991 229305887 692709446 298620211 977222547 346940803 46343902 9158026 884496050 771600557 634661978 643772700 410708669 578499510 982202329 45318962 406074348 906288690 45322240 982459118 546884351 896927285 129104410 304602207 796560257 420107917 427766368 729870396 284373243 872429948 367500653 989907654 346564784 282891197 510542391 15755874 299351304 964196981 194739474 716359754 911721970 398574163 514064174 871959741 805068019 371751238 326008864 183904500 560090735 803600813 432279567 723502308 930601670 521432788 491696016 951010524 8252280 403159449 736224554 247631574 548169536 365241497 332340775 655252878 998604606 122882637 196623112 646314521 641356846 771781452 163567322 145611511 942239122 198812500 660798276 885662730 836713914 48545706 15381838 804065976 843857146 984958292 81365550 691870976 305968822 736381233 667557102 693547009 752094122 330093927 844836214 667512021 618707734 412946977 207044274 254053492 816932000 844280952 762303414 516871142 58132424 115173089 575967016 137788348 321226945 971883196 112306622 982440404 578871143 764757467 69834783 364131693 845283338 108609718 323214598 905314637 491184080 789271060 295134281 885162608 314248817 623177540 266791146 494372805 23523843 432955217 944216367 636717374 511229904 228423145 287767540 326232627 34997836 553008346 98868328 54043251 543570143 619107011 199581599 474904992 821074788 370993804 449655897 611926951 527929762 13518677 954174752 915868273 795406657 463228161 614308777 340635211 316232292 388428548 748730717 754021039 961468729 704146560 527636402 329599022 534735246 18883054 380516821 567025993 824173181 280324725 991209603 320668292 751069170 38658092 347397602 793972119 741862217 346743120 102958339 940006376 479362667 600668127 605357392 342544308 57172298 443290339 805715034 218932917 426117798 95534134 890424998 254914059 356690622 983819462 315788335 999515812 602142040 700325323 61832865 156388447 844443080 957006531 507340028 464264581 880190705 893150995 94929442 219132505 690332474 254575071 404898649 134089819 299803357 818521571 68450809 72638361 508797869 549550226 385903137 490448864 315104256 897343163 408934171 582399416 703501943 170688878 60539908 697927065 855002299 825176035 662436201 546793395 202352105 227879012 672371096 316615398 947310272 48627115 120566637 29505683 399990889 517498840 473084372 681353030 836220304 741837657 857013440 296850459 235150345 613565368 289781825 442841962 274473785 720485165 824690319 305425162 838323596 206041664 879075923 517099455 702687852 118967229 976029742 437927368 566555362 907149324 293796142 261612653 208476505 642017454 468646094 269656118 293197676 117618796 746259230 343893860 994764261 376813000 661062367 664775837 798721257 509579883 808963 700944782 965483430 586347260 954998503 941286491 998914506 643020028 977578057 789581889 894452610 250873083 259703149 628970698 316482888 357566127 477656628 68146308 631117972 434677661 592656430 125465076 897158607 150851111 24929142 55301370 580248438 140263731 388292434 761010653 86963058 293480809 460571560 829425933 554070011 871591577 281722806 884691838 204934984 493349636 210224082 194056794 605090358 297731004 465327861 487629494 450056307 316420609 921259420 848538999 58293676 665105751 775550365 106763594 337361652 486118646 249631500 322005485 393615238 408983060 848108862 753208544 67877387 686247124 329125436 716696681 311226808 385191159 274654286 129298480 37159649 804392557 115531339 911268465 577918554 788283022 21668320 245764937 62179977 291758369 233658551 8278348 828349990 713523737 577808020 260807104 372977197 913177338 544456081 922915759 208732337 199851688 29805964 691676348 616467565 247289839 596789021 634974133 673886875 735076726 450242394 441611429 4365500 24453207 109008736 819032714 837152856 133331988 323154532 500670388 587858905 862691140 462878460 52670573 582336332 586792736 853151111 864362684 10801657 935961285 369647402 471253087 275014445 868336912 516747715 67759880 390456991 681873162 489345377 121656973 381759037 376524895 384678532 522869809 968352459 580938808 600462813 186979032 77184506 557130664 610480623 527663156 851576333 458146761 842109879 848357850 528457038 563568480 234365728 765554581 402523155 854912033 668402712 424150920 763479159 605685036 788328700 352565661 73476304 886160519 469908929 104311282 362222558 531109097 44766748 329904219 709053507 962944359 186099354 137376102 155375383 328424032 340298350 286109408 975417695 115017447 129765702 583630726 511296616 372867631 357980541 247709698 940205536 702165809 698105997 453025679 706320654 418741725 859114199 73881630 798026595 749044963 613726159 290543081 415570507 466755588 646384606 783299771 688661553 506224861 172982067 846239356 575974513 553600505 124405322 281726774 855721069 820464330 630940555 326018230 200291407 485101483 539120727 954526572 805301781 330551754 954392674 797475747 640487968 928943082 681316078 201051837 780721884 957052141 143174199 764626000 248089247 462620876 488452531 304117917 821887014 525456265 448533317 666221566 50632814 696498757 465969587 333511998 723505305 472893063 125981590 798183345 18650320 388623481 175778917 516343457 3786618 141420213 113398368 18080242 391912616 236380833 424558256 428823328 285989126 33484184 588637544 958722179 686605152 567599814 395888672 995883563 682721313 736394835 664627295 884826047 257341353 127109437 808815917 698347307 723424323 228244375 393947193 336678577 766461365 890061619 871866133 371707875 351743452 664581350 282043637 667299417 301810467 617537509 673889946 725704875 437697483 165308917 155152120 242591219 44212271 590172179 344269585 906697558 56705533 429254352 317886509 193223914 673173425 963372192 790496550 503558863 87951411 288564000 818598223 277160939 788671059 328812411 950243359 123179172 47422061 217637679 75824957 358668019 644248511 222477946 617447093 971837805 760074584 13773344 655013753 612098094 966024265 94522524 206581624 598629707 691045629 616135593 602338601 37328443 230180824 438424401 288508230 435935891 421259553 661243246 774329068 502611665 22691628 122384793 872022591 300828829 146081922 344984852 761945707 19847327 262641212 39496462 317634985 151664663 734958336 908232950 850348382 16814586 661272082 300091017 694117316 730424389 43429090 953156874 192720905 128409901 612592370 238997971 926222672 604519459 736256237 175945120 429254237 258506980 935604190 463106986 221321120 313195515 793659855 802078643 227766441 574213137 445180762 59782859 529242592 489529867 717439233 381093939 841594742 400615828 51097149 565176492 535939975 555043992 894875769 741598068 39811253 849151661 772253509 588579709 738078124 979039216 406042555 258718419 424889612 687204324 654203022 22580978 348200451 666456925 838679699 720860799 377164489 978569511 940813434 639531872 963699493 157780589 795409809 415291293 497847454 317694998 976281796 925320319 390051618 456726152 989708594 643151458 702570635 686177456 207751993 349430573 157702343 861792478 270050760 949213424 59363259 404624995 548646092 399812515 380806850 500778152 56166800 685347476 710038556 893482081 512292583 81345902 293595707 756446793 818606567 333614511 739607593 316921101 760291373 356790043 671644900 146952462 251404675 597539881 565036161 33442468 565673668 353901740 579374844 86473806 319744364 251324374 241687799 504012703 52122789 590497654 85173687 124682529 589103195 600563678 569388050 200934356 840368841 605419158 704268784 170747682 788231626 46293877 330399971 332752874 645300605 591007099 372021022 624474324 229642496 591576390 695322920 969842922 263301160 443867856 467797579 39580783 255764033 410935320 279187767 453949249 946479439 843114447 324742557 33154509 677940670 215675150 960114716 738179315 110929134 531473334 127421265 170508557 580984742 596130016 762014128 513055387 404792257 859232620 696238107 825636818 10580739 268997171 712004324 844057281 297558387 80857454 780733444 984827256 247473477 463172609 322145775 546920531 589356112 978543677 249522892 407661153 745644305 125703293 93495111 964237383 836087691 770906680 373061445 948885702 787215147 498350271 673170782 80598996 409837696 73160529 654266735 128633202 803507324 248827018 138858031 650155172 974496998 927779259 400565467 530946526 930511294 214457826 422019891 211954277 86309723 69781154 669483899 602013534 379424284 940299658 283817301 624671366 979474109 596047523 292030860 621973244 320381697 640034147 626099473 971335533 893151112 722070759 973201106 806835430 515572202 119680852 870429993 210572072 385849025 225925312 221320659 950496646 5823431 63564775 396327339 862023271 769895564 364941326 288325178 980575503 456389177 573082407 968882395 591530925 764020870 486496140 629041815 329303647 385921589 50526397 229897237 468998801 368654577 241390253 406699699 924710232 342853857 453825927 182565558 562158006 807046038 311387130 781065740 518250805 103510483 433760242 203542091 823001788 460729414 364244107 435384171 823770201 521347042 932239863 725753346 211423082 942431115 848143777 114903596 903934923 169615525 972389005 274424937 451047271 319841416 752761430 859548970 162300714 191756097 334053200 723268283 818722829 311228614 190259357 580561918 838214550 416851375 668588671 882925219 456550053 212820324 146368396 856923148 867615848 675155945 414806235 602102036 731787823 917496732 616386884 727189670 34145312 598953182 214193744 964713372 697714414 284946679 555791886 865654571 305324761 789979414 522752458 844201035 528257441 491391670 205762141 615444144 974715081 798041562 84312669 853646458 400882697 24118558 778719466 492843512 284219423 221502205 756480012 691077670 395038491 324904083 122962997 392815577 183092071 43939284 296729374 682518150 80223885 696007022 562139366 67375440 599852363 161898540 663637809 21104365 582394627 868133861 213267223 399274080 309203364 831176244 3169769 806248387 998289346 748295951 934538244 779915295 748354215 535040095 654466750 951427834 284307441 263679961 898478043 389549399 850436726 855887009 997195296 355773594 132990787 343520297 603050065 922995336 421652029 521474065 557528794 152448917 814736445 199206049 614635077 510595204 62861647 115976294 967917955 589529105 380419336 149108089 43634923 143822639 742244435 858802523 369212024 357712182 875116498 896762286 554947488 405980426 479054237 829420948 610208586 1845868 79868577 560226152 587573426 409889310 476398780 435211545 698738686 409849363 996202291 409633013 600321 184833608 275969430 206488580 655220484 97502316 711573644 412867742 259834329 259935045 922072842 541080176 470510981 67638865 188513944 594212528 349537545 707183911 791540926 954386595 715517016 437912612 12113507 321257045 731376163 879406141 279707189 683655622 747081475 470790102 619144379 455768387 22415155 391858421 213378177 710036369 283719948 519855664 462216295 25241725 903246471 463038682 224762212 709585503 492075676 858820329 874153770 815673978 445170435 460741250 467048553 427920463 197520532 808478715 100046822 368930042 910754135 799918088 573002770 210053458 827523144 536647291 484215178 620251505 501740881 60203434 335638936 604441408 155493293 657963645 33461583 63503941 739641409 733616246 652315336 183037122 872331639 504960076 827247484 565505898 141272438 676421957 508753303 86099936 633737126 191197833 190575281 766740130 596370507 873847212 89041002 427376941 292416819 376627452 858720385 405579792 726710877 9788983 865298021 759048358 766493064 658060511 203102359 292080127 902836895 478941522 600218836 537497886 891206406 352247548 303103895 362514669 69613094 648332782 913635110 693284062 64310731 783652858 950436261 751311915 564917813 687483060 48974187 69915456 4778043 796583256 257636203 804427804 590773384 416300294 639181673 636655667 600997343 89504713 255357197 756560245 727633229 538235141 232279452 368798987 548743051 356106380 418506186 735520239 321016693 720109490 125871530 123540314 567194787 301767204 297432766 266462831 711057257 688232383 980059189 697939689 410344075 97794448 555940978 648884656 660052131 453529897 124029406 608018221 412353148 742546702 599766560 460832535 988838408 669402599 828928928 224790544 433096053 400747583 525265182 684714975 408821856 544094298 749642993 661709859 526745918 32761022 792167665 40358024 102423835 55714196 171839051 103695412 386628512 983222992 780775205 135140384 899202683 687429596 528774522 93939556 993619611 942356343 993289599 754003174 98161969 851965905 641189409 589589733 28930150 688845493 322967878 179968591 66332519 223609328 268739868 154220673 481554144 600206861 824692872 779199218 611834478 69648820 801948976 533009635 801441579 882212764 94794426 579484952 148548881 526332023 898010465 221624973 992137300 431214123 318962482 157230593 604422190 46772306 445376183 647070017 339509838 179547975 933511455 148210026 465995770 722401176 19190378 510411569 107463599 11683315 320413214 903128653 109812090 718526743 600649377 874477481 543548003 690062976 403610952 597704838 602978104 258712559 679510891 161446458 666436604 235738721 994594810 215549210 585691080 897805314 744453352 653067687 707935404 656274822 183017984 616287183 489587200 535567826 609999867 425456865 30226 286876533 986747827 997920024 168821430 934112244 824568183 933271342 637607869 911362664 584822734 945440121 552895564 735843394 87298374 609234246 290548132 906306643 613477779 111893867 239668925 773045063 830754960 335904165 282430558 5738642 953759566 508224351 620099700 478267701 657305948 312825716 115577761 722149618 999669451 840802777 417511105 819582428 262983690 514207793 409652800 214181258 88253965 505416693 814402544 886628045 593313505 480123778 990858984 147661961 929554724 645564968 228928130 763300621 597503773 162521399 337070408 902982292 96322391 694412275 8789274 564199486 893475285 887523836 884077531 521378873 852312463 990577632 829272412 588315090 406876562 176441494 82744928 264099988 93507741 776982718 204408130 686000156 16445363 733319929 597765542 97798134 489988266 225998343 24482407 97389349 813752955 821060767 28642131 363063319 480254069 201017206 723203168 419401584 69538096 924585902 358705191 616076043 406910254 850099481 2187537 95848196 769398125 150865746 875479018 641224471 808330124 956799417 639150513 164806167 402309011 124665201 784597873 984484708 244136383 185395311 624017414 971862274 719159497 237983367 205920201 234525391 629397976 575443803 764787565 407526069 564076600 750042037 134165842 114968673 758459454 889709484 784293969 225992548 689079599 143947263 595085805 793156266 953996461 387222167 693951817 877993250 131206453 369533201 687372363 287388720 63905850 788058405 928461831 363584817 671145530 164267249 232013139 315910159 948804638 388768486 285478057 486372042 347812280 915159137 169124812 167657388 424340413 106640259 26441447 722160143 376148118 58795736 624712918 605449115 20064865 264027067 890572412 405662475 284135860 293140503 646958257 805622365 601680316 684295913 767493574 91801934 459050549 508438816 289101092 152382266 159859021 764925745 979639817 587808411 734491336 289310327 787016329 334053255 706511205 522808 655800388 270559021 713085077 515800948 685661532 809538506 805545905 992563063 410529690 164489252 285023592 145964947 993876911 68460322 273963286 342239509 841306621 335205584 693500455 215401140 942557086 806858606 226709357 864081864 146124315 202199822 458100651 855057737 984419842 67121632 222078620 155574745 475549390 495756429 433203505 178775752 654824565 71662248 133661562 529526773 325194577 877557214 301080270 332626184 324392506 544869496 558723367 701032572 387027069 64251921 660769726 907351825 19470199 145989756 676083992 270727855 543250103 991933780 674771889 179077467 169019398 644349710 810317887 71949302 148551949 336874347 795496763 978788889 772310049 406230585 599572048 422988139 320344861 943756362 854135424 231119765 986530189 843037772 839870153 390317856 902066152 217973414 838190938 533623597 30869092 930824444 287024095 572245150 911356786 126250999 251211325 333922424 965800621 835440324 886387357 864607303 962916048 685232527 271957456 524554158 673030499 380582933 977740526 550516905 530159515 101366494 82949354 599696396 833620232 458961698 939952485 447340521 220621521 653399287 955184225 483445450 17530147 950856463 33147405 431203608 429744676 267092288 66304060 70049055 543886367 82981997 808133777 225100631 318541655 100808240 409284276 503231069 121058615 19397598 831550382 111304643 127711770 725380817 231013170 324252325 258211751 933386642 164728253 644909610 300516556 802668644 945788891 235173018 86237196 32277136 984231824 776454046 909463419 408300077 377632236 209430345 887702103 60553610 461310753 422345413 576920579 981105691 267852229 650571179 191836237 156717872 106796159 36580825 384039020 319113715 623703493 499920927 168308312 206092214 913973531 141259732 25454911 90238824 202724150 785475863 364156834 909143889 771745316 234909739 296384455 550367081 755376489 420498817 272172315 61565575 185678691 928361901 834857463 697474398 885360016 341440145 287048247 970430339 285449499 719237088 496073719 509517153 24377476 551276830 131656461 504333564 6484950 365693110 89677549 633489101 727989394 598030550 796871603 410974045 957797513 583963914 965870726 915227163 247308164 867247453 881549464 935096502 665219301 801758835 965211682 673219157 466810612 121655609 436992364 598957039 74245969 424738885 934686870 368955611 879652182 755911104 942943989 970546528 584463618 154524557 682369604 253018758 453160303 558060976 825639970 363414523 33076914 65714076 466868599 57459859 635341386 872166175 310729715 696596676 825790385 259075626 126772359 823479273 761441219 217289319 517339737 559824522 78265148 718377295 384026856 69433027 326187776 673243844 960752031 380200296 824083344 842087833 202162926 66999772 457998504 88040864 496945353 733755287 360640786 358734735 234982704 336623056 187627727 324020112 319665926 244841198 783451259 63762977 637015509 529576402 81081879 300778738 923899056 808640538 668991344 934844668 309758702 923519479 703557778 790282813 563238227 767085495 120032902 984334056 656277894 632653258 118774749 598260905 761780982 416378810 849547036 601552770 105842551 836695531 8272782 256343402 857527404 809316364 301793539 660573908 258577104 890777356 639337283 817270512 468234902 464256536 729672808 454843898 226384665 850984783 557927290 712102796 240673525 644924197 527892844 147507610 880830356 126360667 576093682 709434472 525164257 235242124 6153875 115712596 604357212 402467815 539547281 863866803 494087640 69212329 501146744 402300225 273818151 429295356 492468964 84623825 175639719 210209747 562907263 286643873 448384019 501263691 581496629 906564021 555497730 205570244 709754106 52187020 317255469 848256158 779445066 93590914 126991788 719955589 150562533 380912646 8633570 902865578 572514961 220840597 362676076 299070033 316093482 720778884 437173822 282241420 123241879 350730292 258197950 178365748 667556941 678796889 136337341 262647015 334920015 550949184 762745228 597221559 732054095 26526903 202041694 782548984 744845982 706922983 550136998 396225827 506105448 969619921 101852882 234145053 358740535 706713357 801183570 958530647 58270618 117141935 386682761 898260941 460372649 214026583 94574460 634931413 502535775 546670245 840941354 21772790 363537027 79516650 315391454 941394910 849732051 577396455 3546127 312050981 280215315 446674922 209614356 159076798 372650600 697844493 53222181 60721860 134550128 250086407 863539775 9115506 668714748 952356851 689976072 130006772 336322285 903839315 166343617 610907304 982845801 401709263 349011461 245699250 98897882 117310421 98291303 558623625 170346310 582379665 737430236 523320418 921294147 290729687 341660880 387801644 670429086 518092797 588374096 558735401 857089115 970020567 453989236 631707485 302158468 643332535 174164092 412149013 741469448 986736120 631040694 552866810 88585459 179077123 161423528 946411143 376689244 540470214 39166244 76071598 188446573 538637972 441311474 9685570 290639238 86004966 502110866 809435307 684124207 997644599 576892759 843654006 846588317 57820524 938318961 107933464 786277226 300982916 752000380 385445465 774416561 723664499 725894521 822324465 909740059 271714556 155255641 204636949 494638693 809148291 713036457 313912126 687284039 921658061 555542773 308517833 376810475 38246074 205331497 29565368 310707877 62583725 646345528 313772194 807247075 989055874 741320885 839996060 323670695 166242934 189545593 503520114 263609903 911146145 533543917 421998180 468698023 309603760 75469190 840672946 5589150 422052016 393986735 254051225 454427641 15491832 729665151 60808387 157454942 838415975 663713781 167913967 1202599 289952565 944627373 91249581 323198899 353602240 956231472 361099774 453926549 949350949 588215588 747642785 759110448 555974931 418725765 589144494 51935352 41363392 474251126 423750245 135017933 837942651 535691549 975216373 426225727 125038886 663410127 697620501 245324059 864939491 605125359 506147188 188271015 566322293 185202951 768892742 513325409 872886318 449973784 488213556 211858395 188659511 942298593 43463318 215583563 219520908 858555976 606157016 879290847 716752139 560772706 416485260 513756066 901718857 283677145 75287939 569721027 660555671 587842965 665043569 262664549 755327944 321606249 129898636 547921482 299768565 250631782 154388455 665644798 12065007 522983829 667356300 950314849 245015473 967773141 202679285 702034998 4373288 19165750 269842441 56970841 704962301 200745170 7309300 750371784 41792498 57083681 501935298 519983415 690690272 790048996 481272663 243855276 52845078 797925856 897772927 846155106 823970363 158666424 564857380 718580156 565347325 594142875 94376712 212568935 770285690 196489117 240116729 858515407 407232556 705486421 322506052 961495077 856040897 488539112 626123123 489058485 784448154 248725884 25917205 738347394 908957622 485451797 520886246 744782797 731316348 177165045 183524684 890971372 325663587 633538972 393439204 529816711 208146258 537598884 540191097 680708823 565028093 653758750 599498856 359419640 427408916 843069660 110487717 852759203 879873866 46435959 889138175 323728509 165588098 942236732 524056748 68021300 215600168 59386452 818957501 989174952 166348214 561078734 439006710 759388627 431401185 331512577 323951324 631578410 806050158 326147465 291125638 613740090 442343161 591544800 133470550 588423094 362891278 581803109 930117758 975014568 916148978 818966127 395184304 190316647 952149085 721208376 942835808 117007881 938815046 193274157 817178455 4722206 139304649 419974197 965643628 742406926 965462340 943178329 845432198 562805608 513641586 676858111 963921921 809302115 809692694 425588681 563370558 462180727 813916520 461063019 789840546 781534736 382082577 314123343 69768108 723078512 535959077 526793383 660627458 905088419 201210779 329795434 760649007 245958810 924628756 778512418 508942240 906286170 983741567 259623066 477676726 485793837 160504498 10415894 165100823 112223690 255016951 991353267 240816170 144982590 988761864 752543456 495974271 673213069 325730868 531057606 917833087 363162127 964644411 631435463 669811897 877231685 363017125 227978502 947968190 832062462 985190275 334667786 102642583 326600684 244637617 277763377 177275485 355765984 382674606 749661547 94392559 834947921 324748556 837927436 516176723 646575948 386632514 469017667 531823050 53813463 434781339 163296488 68618666 329893837 682109527 206448680 653689159 688517875 996476014 148649864 392004106 495730103 471077362 212854032 448338712 611671465 944403252 554714027 426621225 737502245 446805369 41881042 722977348 283597211 836666055 449306665 885345232 696299182 434032131 465479850 362337842 616649544 918140084 236379866 602836172 930441621 143576875 595228150 913262067 307030986 271660678 166447777 584981467 933884247 851586996 895268666 893955061 322252667 892710752 590018923 74528821 54560933 407569599 312240393 986906020 698366365 518870745 394563858 196999214 707946051 488431079 711129449 134930907 311705503 246486362 485669679 369807986 482331786 805534100 967857020 791007184 875673354 90082231 752495485 6699324 624374466 817569474 929409454 425589509 26770566 618561158 628793027 454489767 582832116 855349429 400522957 436918524 725305373 717761708 730265743 351507478 477260539 876451779 259292954 854017905 267544471 83965944 428483651 285032311 59568769 434379308 188804947 910177731 237567999 505024363 92192369 810690575 146107935 757295715 270021725 814180192 167445673 460688797 565458295 930668000 216598038 424534013 738880740 730086227 529755462 513456426 723830344 998856507 784728608 536707515 592044178 830654566 101732771 612505545 977256416 241473601 412059608 546074476 73485947 411099775 484727111 885881270 64829475 479185285 481480050 181900808 17420546 896839895 667850673 467058403 958087348 477724129 48625259 680381204 959984145 633251265 996678492 957502222 870321195 138058412 270364826 273655518 323130288 247052171 48473374 290445808 142152474 134130765 519224177 963325985 169665239 193527248 61715064 458343538 903784237 317958691 155109765 992509403 477842997 117947137 520200165 88526790 995848664 919238237 146109450 792261215 185124807 894424534 687126179 480908863 183772136 103298830 742485295 632665911 697029250 572299974 643300933 618058921 303519129 838745551 561981142 188857074 49507504 382300407 40727252 900503732 240890827 765200235 186799706 256173016 187878178 172365041 782474669 774580033 171334121 486567909 940249741 937179050 79618911 782878348 431156276 916256840 892140230 427941577 39921269 329550837 244073278 700337971 539721055 74341310 253328927 801770469 770810335 421653342 808689113 646305428 785078755 793674568 190172957 290900981 41820618 235249119 474371009 786421698 39202270 331955809 483251676 25868202 786979895 854118359 426638580 645201636 677211728 376837186 41121651 700093516 77037100 689168575 76074703 875607417 150588473 89929218 735511645 548503559 274343932 416496591 174195653 10740740 45404404 865438702 105333817 341480910 334376346 61533534 788567999 83021654 381860519 469322225 935709300 116123151 524656634 961547707 640279711 661456263 366955819 969560188 371062171 382310069 599771381 498913305 655261837 5297425 55865536 205833382 749344125 40028519 37384221 508282801 676035734 40908755 528199549 753846839 592455617 603365855 854437802 400991945 223281260 265915842 503096280 523695829 719701257 74632110 845450353 616381912 898214968 607330502 955301983 999022710 424758699 46896545 418623722 662565035 352505361 708915435 712029235 184264642 130630603 288562989 399800039 536172340 79214033 724912400 151890562 34132796 358797451 571691093 611259806 449732107 407598469 377158831 287566217 638576028 541427345 95004207 538758974 706600369 364178932 9002014 241855363 59055659 614785407 947448286 477329774 88106221 473804725 21650968 801435423 759518937 661231474 239781424 884070660 875350277 978347643 736881163 90391728 956814839 245454505 822560199 956405230 333292218 719813743 832208611 331454260 392425238 760937834 895333445 467779838 533304969 897087592 432187822 228653802 484912075 784515305 261192507 724367328 797177099 773263121 632546580 838647096 137369989 901452950 361171806 920841110 368859722 742058779 511576710 13141216 158585079 600539330 293887314 187433664 820158906 367414232 246634150 268263419 772934255 993828444 963885418 393085481 616397883 141990731 525117061 934186693 175415869 862472311 252869373 563975089 768384019 684016780 294277281 176763126 934786637 251629601 888865705 250543129 826381122 295004319 289867401 519450524 249546141 498404948 800624485 111122610 411735509 294703755 656689158 52438861 670789433 377643812 631488766 111999883 120066283 378983327 697321533 347660810 765370360 557184491 370757864 913165988 98702524 247921845 594655004 939114002 811152826 611465772 346182420 986506470 698383753 654912405 620053043 7620038 790867587 173304819 851887857 120216316 344036763 17077679 91730864 234479552 72298603 195465029 416392637 403274680 366134120 414204612 175212981 508932675 869538335 566428906 721163151 247785742 906894619 77696790 541985074 218794266 378658206 292040645 816097349 828223990 773215266 385160531 750789188 233615148 147219408 513245400 375208364 992580142 596328273 298391472 293228572 340074416 155513026 291657128 326003080 415473733 634162906 957841199 444967944 298587024 637374447 29057233 251914769 410801044 842936906 642199969 141393410 405589513 368970502 286395863 99109361 570348541 207079450 315996080 344619564 736079219 470925595 789242781 702245091 111768513 34766332 775799124 185155749 23796832 656743872 491064303 439991502 595583730 715043197 793484867 64714670 676870030 988392624 268723855 253443895 78087383 19803486 974383355 439600756 555945254 811351924 276007077 651926932 438003463 866474145 373199626 585447333 898360552 787441087 723722388 103609972 194317863 939302826 596183901 931315433 563221191 294373152 97902675 98413284 806416790 778706931 723976445 595506965 885130961 482858552 891911532 671670782 809973407 481661634 191545536 32659924 465398568 785678884 365873981 544205642 979699592 791624083 626163765 129344018 917922869 380470985 311284865 657359806 609838917 210533810 521330043 715335375 386583068 854609165 905631303 548867543 218586036 314410900 300046799 14883031 17092782 327656797 179644606 284431838 44370055 108536765 698660423 848808409 781697372 53751495 455010388 397790850 756057209 540263436 101333266 8632250 235476230 764615511 947228931 771596674 60619989 692902239 257566875 737291579 984308655 957335338 245001429 72777965 365572965 632806745 48853888 674049223 449591740 561241589 310900426 471152612 376554708 649301648 913879881 734441769 561469872 306346959 412274527 637470996 228906164 951051890 972297670 609289934 703531658 434160580 115198982 912478591 15695191 410376946 452617473 973453472 95754573 423871417 587160042 520427581 787102304 543656416 631739088 165221766 651161348 609798807 101333326 622208382 453858231 823726121 730767870 975894628 166818000 16165380 294246716 767723944 683433060 433304620 133089799 908630062 230890524 189811128 42298009 554769306 93069608 688698354 635386637 82135538 864469214 710334678 700267690 952385104 716299569 581723465 768098220 728883574 375850474 41252590 58147693 860145603 933391166 351793413 146456558 901323997 858566512 561555120 202744910 177971735 354242037 905838157 28391976 316975974 163180755 4553060 295584740 941093169 380764591 637684848 704140176 570054917 535441001 731142771 615498516 366870802 81539509 596619021 202591487 548575640 80165867 405854698 371517285 288887424 835531298 436278763 588934892 385607202 807642954 610156333 953648723 281065296 274063420 395651474 436745241 230472135 173268744 293449594 795456684 859554377 827984787 987368061 917342538 250882844 612626451 913116965 968334236 606088858 243199322 385887213 582596050 460244352 293995690 206924794 919109024 603475361 888913306 424705128 493271827 17427974 236125921 189502529 698959107 375094039 657283107 422345681 280425826 780133109 407717726 682693610 367683217 899581536 49930397 817413968 514430785 444569471 18757631 509787198 584123784 471875929 589840176 676160902 307972354 19632068 142382188 787645752 422784126 715036967 602588944 654672757 37985606 151135793 166601758 883538693 15124734 4699706 576915354 757769489 723896480 12720148 413342614 667735760 627589580 223012886 594300334 16679801 322984859 680715400 159119012 587739203 647428209 650469776 286330263 385967570 529667837 671303912 426404512 17389919 246935284 555129484 606765052 914292314 119768786 860207001 78838380 252438012 330564813 250779401 733943522 923470088 907207703 311334108 761138332 67076189 157740911 759435695 440110482 467381871 357713116 25826646 221619912 154518410 305663704 94927601 278075959 628758936 386928873 640025916 962339585 742194785 309215645 758217360 857816513 814955844 173175106 853731041 169050525 183398069 793603106 538890159 326124995 882108565 538566320 52342553 393301415 558032666 306638898 95958124 302891272 454546397 942425297 858024198 169599405 329816409 62094832 475582349 24828184 988553350 621757408 53476719 750307081 795549627 927507609 620513565 115802085 301139739 276553844 813259871 786310022 388650518 561904589 370585831 286670337 902123399 408103945 195136369 702702586 807665101 315817428 713776485 512998014 680282942 786069722 929023403 898600298 260256819 532854634 788015213 837187788 364323418 865770325 131201671 119666709 393853372 887734478 563216983 611936362 775112933 515249250 563705980 673323870 320527711 378356463 580350679 181100207 71076836 998797800 830379039 462120902 50455130 552589411 20024462 790646837 32394696 735244133 402565813 482504965 563330796 487397851 624589109 611423346 641340157 515487138 611500270 436224228 240168898 518027209 242362650 471480857 328174842 489176900 992841349 493287343 200182224 645587823 662178451 470175501 14722690 669459105 487215348 58554356 779517272 647096888 381762326 145531998 156662336 715242323 297793198 502847201 548519166 891088090 632700987 572755475 486594544 105695368 348452864 599969155 25020133 902971692 879766871 725115348 397567420 481678529 826660625 438889536 520187768 666352661 588246661 375080517 59507865 376292752 622667115 848685388 43815029 93440871 383951019 300302369 356047371 369355448 455450842 56767051 465819554 679850257 593532143 971678972 779340553 272046944 924865791 450750190 236644843 274426530 406820903 805554619 62628667 264604487 922083412 837440882 654731981 692474426 556638403 56410284 33149301 872990686 434029920 308831883 294854878 542689532 847471481 381080512 260210184 553593760 400891878 417043398 535805791 119703257 688673761 497305740 754764483 775100601 943498473 639199850 222166754 648092004 504604485 949712436 494331899 30946076 47531821 27007775 963164264 358028604 268825777 50955123 501421023 847099251 382938025 98407609 370955343 51224930 366537501 542480240 571461835 589942499 20809181 392341596 285342778 762003434 995834655 337265154 878590455 679894459 907908685 874423557 342912500 877054966 969426621 627011821 509740829 96528213 58655791 9874549 648968676 521008530 665939816 875110796 264630006 208857596 404748230 94888439 722068800 505273780 513746863 481649612 452571288 716405228 215504782 485130613 116178670 172832010 883401767 535229873 812897788 227424642 783497505 813431586 569930293 985113515 873731853 650625194 589430766 778136615 881975015 149492102 682968267 325105324 634172455 851664601 175942271 833745613 486849498 496054564 554882350 667682919 790800876 228374354 922991280 880156212 402377335 229686269 822478226 921565591 343067381 768258554 447414289 35873147 866943236 468948639 256150477 279806195 194144702 931953065 818727280 216598164 962739212 456800417 795454245 279136288 70061548 478706041 595768154 600605064 895884946 528042469 826807578 952202750 150410782 393048758 959052475 131804671 308216692 454306351 937492771 744707598 348775957 251134064 765994744 192480302 354235306 740562347 439696586 406443100 113136084 995299924 134698559 422229706 145962622 381905535 161309405 379234880 293459260 828470980 580811807 725422302 418386661 740625622 347003655 856823761 826230202 218819841 877252649 140995612 935674843 444735440 669461100 678389861 658134393 310454471 959648714 860365979 405960756 988410052 475005595 570419218 558049075 648745499 677465661 818964099 668176306 582913255 416305344 646306043 989462513 940757410 128231026 302217231 120765132 241885376 459170830 732512140 331117746 994270197 140462294 799284903 634926854 891149114 536687819 816464333 99020989 957329004 611801261 830429913 566741815 772158756 912521235 879485482 736574442 529973451 660247238 703390340 135793251 864041722 13417215 301380750 663469121 633418065 75722165 153679298 960132001 589765257 5135168 608492634 49525941 329570306 120461708 883683209 943891894 999467771 489573409 363757121 70806072 235421211 749507013 232144822 420719838 695171162 572662607 904922761 224100097 642971143 824681622 716022320 785426932 526714657 152051307 139183582 663097419 485491393 764120753 949865463 70730009 670265558 303572174 347216413 755316277 560245252 876757096 401939899 39083124 125425222 940789297 519630429 757526478 382531859 696106452 640389393 656202658 639900113 363133117 916953421 299607984 6308141 547593852 575364692 901463387 239085723 771073294 41642196 973458904 69432614 242359930 171870599 873325527 339141723 269836860 49290334 819110717 106359262 139484567 300482657 732740531 797852447 350394280 293374679 744597804 808624264 540629890 505081997 238658363 959249573 808222557 735246733 100731665 999861384 316758113 178872491 356432047 892927579 287001401 977942104 508708489 719934372 482169973 385383240 455179570 819322972 979566097 278296887 338768719 557407613 894181006 663996853 838887737 361267227 677153588 152452098 155585778 657280152 227082638 986220723 353010292 159240222 612864551 573688031 696310684 449033323 823216645 81013607 383917766 233384463 610212526 717889173 112063880 613764055 448388666 115919773 90659524 133363286 942027714 365936127 395821711 620621294 23304802 983960587 84941355 280282581 73212980 905949050 974442036 675654590 776788316 760360166 803128183 682998244 376646159 345787679 698909329 151003640 510456647 211159735 386357835 117070387 733748892 670596476 250365653 426163610 921702863 684598139 566108275 513975842 591741149 111113732 383675238 597323227 998764151 194199359 952649354 289233988 20670271 538306585 637769680 809298078 475106626 500161988 647940478 663604420 156635317 73757259 458029226 996426740 548328579 757969582 521721142 283433827 231427118 511494619 393374145 211318763 996324811 102958477 44159486 838116369 362935174 382129584 717117979 357043419 30502031 696144702 116375408 409822377 884854989 905529119 712555627 947191632 900441558 311299007 838600655 203907364 983291615 920807309 727683611 476142152 731131201 263035823 848815140 440394441 792661803 50421559 996580034 663410191 421282802 452048270 522850821 681216871 689113037 682696832 860261476 906829735 479399056 689410254 68255478 247182376 381177291 128568555 497964154 925152073 808568660 360088576 504943414 599303712 204771571 233133060 5636077 78126786 218391784 662474988 113635481 608255894 213213472 616423496 685616916 257595436 417137851 954374784 121738903 330413088 172019986 837891085 721774719 577760244 465008 187281106 394047271 320750121 394861858 227349215 214272489 849986468 819115924 91148103 876043216 508092658 105463223 716538586 507588694 994545759 276888832 112741570 585184212 900623476 875175966 874105425 565650386 461211522 925801365 953850775 816605285 314691969 965334451 461659141 34340253 720383412 917222679 194545397 69873031 426477435 149695391 591411546 696937200 583962803 903202365 678053797 817689527 34004692 640544462 993495130 879911627 29936423 522501217 325371956 298933168 932535408 649363072 310825320 44123003 691031400 891024521 618396638 784729635 962815540 740387400 917267292 654566439 671392214 257990808 867328081 722267310 360587451 305479680 653182782 307543677 100893315 221492424 864539581 355743685 70731122 212338971 275501665 378171810 449421227 411827161 257738295 60256298 98033686 140755416 134601465 8205969 609690931 643606638 794408011 478419833 252516541 448361624 351902264 456547644 880966436 680078730 345199097 136296810 470354462 457990030 285707284 592956108 321212164 872449138 472494118 906877398 601345285 124095465 599732863 919668735 788410061 816264933 564316244 332459474 943784160 715004019 804316516 674255161 679438588 668763016 100558596 671881957 946821992 661858971 764554302 137622574 84079437 698007011 257192730 312329971 608110962 25139556 421914970 184442378 849912352 452676134 92479118 839246175 139709984 347196652 477113396 110225030 699242355 767297807 165277035 265854024 992862783 225332674 898826885 464054481 854178023 954230985 1945013 303149895 529598212 60428182 512692678 398327439 868473757 149693550 183341887 256811533 313969542 598885340 723995004 456768094 723636175 187194070 573716534 903663379 907540373 409012324 728849561 643913907 535658354 386284794 335851765 400858930 717957406 391350188 401977004 248203236 543300802 596653331 620079854 342608928 812725676 951192089 700971088 971225126 6469048 775992413 325055767 55032165 226875143 867904496 843711298 492122229 754805546 907299081 192749167 965598257 977142625 790167661 284145883 512766830 194537293 466937782 589214033 375135825 32976757 412260730 521925272 366118349 5285767 164181037 277022577 191257492 224242964 960714294 703864820 199584567 226329801 3516780 563450208 305818391 179116302 762448067 6426242 19192398 228993973 287491549 64435404 866524614 504225345 678948408 829903443 146907891 479916269 991996855 77701145 958670593 490627374 561359403 565286137 64709857 22740672 569811409 373609721 868193211 168619745 119793412 879355591 921506660 423613163 526958816 416632432 205088977 940058373 262077915 762672343 728163633 35142084 901640557 140699623 254764921 775205106 131901203 405134550 175758007 986897561 910828712 158288622 379147981 749352340 921023424 886470026 515047433 900317184 118241460 434131571 944696815 591217228 491911370 646719956 409163817 641162058 330216910 199662907 544531460 741282357 812925653 379865384 839846952 273566994 919321736 937973073 331586307 427847420 464756581 342766901 176633168 894112910 321065782 134064946 953693307 383424739 374542949 663678940 492855835 639534571 520593979 757096839 916092926 577024771 191909500 801562417 878807955 111150454 143995019 568213555 560807920 755223433 564655830 985010786 130484458 600907062 884366638 641028256 526545449 993529207 873368495 335717450 424617529 283985808 139470391 762307759 553779954 145156626 655835233 851956859 88518814 65361089 107889809 225305270 430499772 773393069 284082522 400575226 282048231 156214394 499237200 551007033 776126488 948314827 393745228 146830188 231533291 516625246 732269553 228154823 815345494 576923842 975946903 472938616 680382686 224529625 766830787 627535299 847264965 590984013 181095799 387872168 387556881 563867509 414019500 982430493 84546535 572919600 646911450 448930297 917702764 355243265 866554444 276506391 163792138 572572486 909532176 500594039 769215289 975751497 588690322 150378687 900925334 613274581 10487237 456745081 620665887 347721832 281169099 393324719 418028162 291698047 68738707 520461411 443657861 416813134 3170320 125656897 406594655 655523652 435713934 344775164 667041203 934666874 243286894 979216598 979927443 141730812 169763032 914037884 849958405 299562657 804850563 716377688 633285193 18579860 797926100 463688904 426640165 574538991 39890716 154487610 979378412 460267691 108876081 385629176 520432053 7941075 657462581 669416833 373802980 987804396 976183949 600994592 342161707 987003684 121284133 169799393 664805488 127071151 418344014 887218696 306283875 593802299 707621904 272439225 6518990 417773972 950674281 269910732 108694306 680389242 121483739 855634439 659872962 87174039 766512637 998715199 493625808 404833398 267060264 532759299 245233110 279131343 366647418 909035042 267010883 596555033 415200119 641436643 259182444 290543311 257468523 451073391 501428687 621251271 848931607 438180373 790929771 829016627 409009257 408889009 284434069 494806424 893840984 513735285 934144123 636257095 161339433 523385170 978159436 7833637 315722100 343292284 180307793 126514468 939941354 789641828 599198538 506987401 113288761 87568777 938051679 913994805 901350105 570324150 505836225 868717234 66877983 240950947 522298778 66615875 809509352 757065202 56625640 125278641 736585813 918835695 40303288 462783791 117668976 235048733 33174221 323043559 809837898 207923947 335986225 382089900 941290542 534574433 302238680 444713072 485525405 976704519 892439978 455412879 843958965 21889868 373208163 434032877 746967841 329890336 568203198 482253744 160187733 118285616 306853916 634496094 553371759 121870705 765086034 881346596 549811733 883390627 906440619 33156608 923006525 702871815 718341252 199378491 374539073 334313411 106875321 594557289 51773432 551529685 809959979 268145322 230123938 475093525 626354638 84638225 848762766 625667984 270042998 571092921 736887806 987649488 611444588 625821275 524353582 497146864 587402221 407286111 274109788 112686393 712294527 73767611 552993911 94173561 768267028 540880069 889891322 850554264 442174144 105069927 233437614 844821448 448229724 166454394 661616456 881783771 625898410 559964847 810327841 159650334 52418710 993036501 574435464 978040117 307019067 862534441 487936028 882123301 446740893 890939951 119728790 735872441 171614289 127734171 362512887 240314658 118462335 415363862 908372087 182376846 31585565 188431936 168630309 61955970 505347935 886454432 583585776 553356737 786025229 810963106 509858880 599112198 565587837 764045177 11787257 304996782 941111819 501679430 663300507 754972972 181371631 75803691 81654866 136212533 877493552 717640607 409690285 269309208 352835518 115067553 145835049 388012697 787966434 375421498 405990170 36061977 579439350 922198852 727796747 975777655 956453128 901088813 377886569 193641050 626307966 939766121 837952979 801324283 363216155 109925406 461466636 13012573 810674519 467421846 826293159 918803017 110509821 886204024 510050569 511210529 149467287 749786118 239798058 688691012 906260454 590109076 777911159 490636607 616439110 567499602 156311254 516557968 329927241 763762937 521070327 368553376 321213920 102864033 846416143 882900245 570188094 416388211 353196518 934066304 791840338 554041970 357460366 379555922 5693343 613733241 198576153 576423928 245070605 588151295 946161363 170623733 975022247 596507951 976051409 703436927 491178448 947533689 234019593 833805371 308566704 775540329 424746210 784117388 415220843 510877292 285227834 125380349 347440455 224402187 898285916 786916070 511274903 347335950 292623279 628548783 63869433 127664912 90831615 388615997 286171128 263960717 842306001 571833078 57445375 723867495 746669009 714191548 235789888 56679285 145645993 941007532 78622144 773264187 825794342 134684691 567620127 662007928 977307863 495129767 3806623 320292245 804712580 830472738 518861442 945404532 58840844 540671287 159942322 953793622 642141261 858889993 631462737 238435457 787591213 795775711 139232802 453337499 547732698 445908807 884909492 985616434 463368363 556510274 276106238 4127572 647617629 942555474 735267179 324418340 532547819 683591293 397962670 457335818 190441102 139470509 452080495 110753149 751853129 340919334 362223995 838745989 695667350 586942780 36451722 476124108 211002824 846232290 117460133 646469703 612917530 54483002 449073828 242562174 257234766 46662152 428682255 794069285 643387221 477430199 774470935 753771191 325897290 716162353 628975910 479220698 655569823 619842198 217681667 457585826 65995805 366853823 598437960 733382357 898139154 155892106 864337544 119294556 741435767 789772741 642971689 694392702 240898875 355526058 659738357 205432470 507670511 194800534 157400387 237095490 665727316 350315660 386756515 678631293 200231111 351759640 549148887 97038026 356933956 393696422 96365847 850805585 409404564 904130029 140557015 95099192 993805042 941085483 766457628 571433737 780389323 591904397 918735922 516696831 994970515 377029046 90364304 560379402 435702632 395212333 159766867 74099678 847393967 999596549 515765259 850444532 424621787 352757482 229575156 587850748 203581603 49871891 461077195 625208316 325975025 605004199 899098157 974444520 887104398 209781868 343478381 388139445 942612648 955932104 436895093 234975299 300489076 835813917 217978316 409925993 949968912 863807118 132119298 303750820 2007316 393487695 285614469 475508930 939111250 513588650 452997842 981393173 538051605 959562822 409848580 619060199 243082859 301334265 502727304 513593517 177636008 652163029 930113667 427873742 374153341 800930086 164426192 532622245 257560707 599862357 12998258 98297333 290573250 938009874 841304903 828686641 23757210 703747830 517077803 921573497 988185321 419042476 868841713 946386151 809519761 262889302 98466035 677043863 209013231 782504084 281774427 392541109 357806164 598009100 298410357 512232962 74587146 388471642 709993720 77253120 165823736 48847240 474827412 145745123 83123900 114058708 31941207 928744381 40490875 980498015 988450322 633543026 570733418 587355959 461151557 110864451 363541888 977434695 5546664 44194691 542968994 60001957 730726998 500731812 731294038 531340848 130067193 687225413 247831310 649740836 768378631 711987689 679872859 337800256 99785624 385262318 730619774 646612278 116413871 338588688 236101614 355276804 153622642 903250526 932513550 994856595 810012906 78548903 257231481 241160228 361791505 142871610 738834381 89892110 850133322 695250635 984777611 398747103 613551985 899879259 545560262 366812784 100174267 582597318 785374827 125199797 783858425 814898470 272991144 631481667 262229646 203037094 1037947 682151669 553123672 944712414 931553403 835712580 273264200 448036388 323440767 124733974 409338944 802325123 60031086 713955427 873874762 879832107 742664706 997034510 504099311 444132633 751054173 629787495 826447788 219166251 656493844 69556644 427578608 407197788 748617425 116973653 507175506 45188057 840707139 285077374 308893030 422903593 505805287 385390585 756784354 65010139 1104133 407996832 534601423 966214180 331718410 513506522 230222751 945332418 141864948 834370356 642039441 639185182 551972513 411206042 609870584 508724889 252749456 533029115 173904514 855616358 277865856 171027255 149781130 164692082 56041033 48962225 185874017 968572523 708372365 101983025 781112414 733325263 489410836 755563462 784361871 621590696 572307723 573436246 807033191 453315738 777779176 886161966 566420294 336755333 38403825 160700792 770913963 577552182 753459675 470233910 805095097 85495555 533303457 365947364 261346233 917436958 752996087 509669611 603236565 946060209 865946699 53754671 54751208 783808979 376707496 9332337 827910722 205037368 747201516 646300856 835014169 114977906 676626869 882199613 693816807 628571881 356883692 353797405 144830553 539245711 854043460 895267575 704224225 234221351 36485380 49812771 667525815 171117225 635595367 991407958 110448614 61809269 776836619 448073630 164742048 653607807 369587542 115984946 176918038 385755492 526741175 559492614 901612997 379230120 997367251 454367123 48228362 230681180 330464994 87506150 489502249 15380236 541612069 529587982 580971034 520063380 270302209 740267066 450362922 586847111 601760495 83232256 13395600 613804071 793245245 744663177 748322951 844650476 904642536 664512846 940189441 784492853 792741126 226030033 651382312 88360565 649939020 305850030 845120032 294287381 225852295 30444646 926555412 67599490 415528179 539066013 470422303 936459573 745296000 185085305 790300816 934322024 264348339 942066803 429513364 459445181 353103545 702006610 797460787 878791527 313352700 519279993 247171647 62200299 844241938 974657911 594955237 141327117 6577560 501586357 603771236 814669261 916215429 482904792 94907989 826084131 357991260 842862357 604974462 201555702 402573774 413180385 137207034 508129951 184550395 954839628 461589287 204694974 267427690 919737595 147513680 278269785 50264653 162832568 633249878 504014081 435109840 319884814 751896791 636016447 909878101 934077619 538150530 752224658 409059182 317740514 993469467 963270086 248918656 80461861 929053151 957981303 125393487 955986557 556016490 296354761 248821925 84773088 204540910 279375646 163468928 542651320 381313637 542453060 780438198 734249304 106393834 894666397 638430160 585243408 718708909 291665360 682164448 263501774 24072920 938352173 106547617 706261739 642826083 557042565 122824947 822649857 81727869 734521196 33320261 247904938 906700381 12429665 840376156 759741873 460827693 110580110 63632103 607601586 701470097 847603518 478610670 981019891 8804217 267381882 641497622 581706716 802237598 681884845 634723221 500677984 607900841 102623501 217716154 10565777 943172348 632380582 89104093 325092451 432361935 644334957 899817407 871247232 538339835 433788417 330004592 550052588 2909095 478561611 341081140 272556495 335481706 619218740 412739733 399370943 525920236 315634313 478311440 853870610 719736393 350299357 837451229 304371098 130109785 843305211 670080385 875130238 430380204 962857340 604183964 666553679 481208913 647630191 474342973 302884895 860703189 430865435 795469207 550188695 351868117 217127245 126094385 124580822 340849028 439502009 401102448 47088503 471394611 177137642 964593181 711797717 818104886 659724592 488149874 796135151 587314301 375564575 460529189 103982503 487650774 122962711 519366349 824259060 310398471 116963467 212130055 379354172 308396144 475005258 100903912 683332403 128543848 476757324 386617183 884618962 633605614 714636654 428796871 29375628 178018379 304886112 742034345 443861531 844726434 181558027 419251537 341500358 603048253 594203993 541715823 329754194 852830371 802655248 567842523 987972281 587319624 325817436 994194482 368708448 670256191 473514319 113491485 314941522 926731095 866381984 408920686 224286762 859834761 174025841 449728640 803379342 399700700 684643958 696814138 529724504 673404625 644058760 886961904 935669827 565549500 859355524 658673873 534946992 998968927 807820343 952824915 278074645 67243275 27999233 976192129 598445247 372801076 147813806 883864689 122176202 337191156 229177120 648345987 699631727 632013973 54594243 752916333 57295754 217057032 763164753 680017017 671186011 361416865 219037902 557795416 306507532 700494502 406236040 697911983 868013455 97479439 647308925 106403715 998541252 535209930 224978436 287028221 618876795 636813102 206867473 849576019 194908499 530978566 963340700 153760684 743232943 327462616 158802741 244329787 811927813 704495455 582961489 100907452 929058772 73272749 245653102 469027220 258214048 339831740 604820834 594402042 124909570 58393843 569342933 452650660 872857378 372003234 650618817 9289035 513357632 164406868 610265857 904557851 298712058 468564631 650109519 930206189 269267883 889494207 72521061 161787170 795641665 45133307 176004370 792918863 317237773 903721777 947087758 352678125 740243412 889126810 263170004 685784928 854766131 960424314 652961962 499868229 904329964 170226416 427381493 432782612 130669605 895439602 857327622 957184893 941101284 443394882 700743174 319920659 75537994 802470695 407183935 570511842 820521656 673420921 122612055 215150155 50666314 82332871 937557381 42152858 52126751 184224291 96536520 878647013 767486998 587749103 593331124 354855251 436723687 890460336 150795632 902454240 736041493 875907430 767623980 784243916 620667404 888427274 213327302 290359357 817181676 985571969 443430305 642011416 778520589 454607570 129724668 22503915 336243620 807050201 810228469 761946602 940789006 314328388 172386856 159294097 924541087 650097168 83745434 309983775 27086259 140308864 304036686 964354226 456076776 549666351 780054039 522987859 496782062 524204848 976688275 231219194 270616925 493768039 277510669 534790827 722040554 249414701 525636675 165376517 424801789 673671453 108935279 82844831 193630445 208703495 647263298 463212720 897262246 194720963 20978483 414043823 302124193 535013215 661851671 532022917 159173858 773018299 15628461 192222183 459575321 592541644 709299255 644562022 662888292 867281652 91599948 739284637 82012301 27991464 245639033 561474931 905276482 204716871 710572259 929594984 682417957 453453712 816564096 213771816 850565451 230224454 583307083 908385705 937338382 757440491 74211109 85780599 650424146 219698962 886178666 31302134 534246651 385161663 599265980 854626280 940244186 834106785 970659233 553665979 971717892 861645522 367255704 188002980 109163752 196589042 535571559 145812269 479508262 50975808 742654403 566163713 996645986 351898314 945129218 358162048 524680047 410045548 582938255 419455252 782426387 910270859 957342600 163286664 908596162 574126501 692088525 992268314 513068619 498663612 402481161 972222489 954063553 92183962 892376743 731007574 470876129 655075193 272829197 338301599 275986687 983214836 978195832 680257226 145985092 765009232 312722597 304023266 175755443 265098305 401831816 392547413 166594144 432246014 120917577 344872685 981182672 367290286 533743467 546226524 664778015 447621496 870602735 331382449 310240761 775843692 286231698 528544281 752477232 80015150 354677582 624375199 934855307 588490011 217978081 319793464 637418810 371803224 277029381 770723939 887513506 392131225 306254485 319403438 465540668 324794631 625162525 271963306 757746540 573904059 559758319 731353590 244390848 483350053 703621023 209091032 850660970 964798092 959726198 858978670 916242804 3895427 426077451 144673790 699797172 761015319 445204849 431008335 89916525 459282271 677368859 906230196 971610765 665267262 907326660 622704455 793845071 488494318 335332740 63072674 691224433 997277768 39020873 759407958 224235169 599729385 680738446 971244341 825693806 523034767 599208415 954888792 960967033 200454345 500984089 918903625 84232926 440212266 592389898 731121338 718272194 459770369 110212977 817641148 640825572 681652129 329653119 934192385 200017653 958112121 18612199 751252993 658722926 729038926 53148044 568278129 676944376 55354206 406061449 106629066 940637836 42807954 342366284 361557709 268879845 284143521 147281490 141284518 440758854 562139829 489577262 620983967 121462243 113056893 822943697 275999416 568953915 579561933 824902178 906557733 72595102 880239682 979800360 467080529 487943713 313090748 901608872 904100586 475437466 633434647 98874230 653396214 178506941 519235238 816336156 482108190 214477034 508528628 739009145 293598964 678246665 491652161 865430201 589144270 353862364 835739779 522677596 697375925 2597182 342799231 655975731 467582944 188546408 27677383 848565681 684192076 575978708 754937497 791434364 471086308 654616834 751599135 474195856 533898110 147040595 52353365 950744005 358061731 369382665 337269684 304830047 589753050 159731534 744267118 979401736 274416094 77720115 739801850 974995218 786684237 722409911 824944161 528081901 698148810 570052591 455162676 619064865 885929202 913729978 669836308 228877074 927820857 681810966 933403347 257761884 671993733 198847894 865741695 698604065 729168216 912722492 351978200 407494278 326384653 766803717 802887641 563404263 199236595 115281686 271366303 480770398 319552295 1696146 782602034 8244361 922965674 522511618 934528142 133232034 79826133 11651856 772904396 582487501 943054738 209938133 760136283 765634730 718819211 525534518 78367363 83055310 84075328 422258708 692054548 720488707 808848212 487273485 664827529 79956624 53745960 702627920 294864407 773309135 215774906 651215540 599067424 423066025 318566917 358147299 980534744 222478591 762421459 402412585 344732359 411157015 821330001 714258346 162192953 594899900 81400920 377482698 712674459 518294862 38880581 591767301 445323794 69530218 417701446 199124805 105073480 695404917 521573919 125159529 14966399 598804665 763174165 383746386 120404482 448721750 257222306 63882060 380711990 206721588 712137716 331047502 30611297 772781864 416610945 502690082 847020661 894939129 663162376 178064680 536024488 759217015 313373702 916518239 630242726 914391906 623133206 492129658 733231913 787198303 234997122 320043025 11424860 385535734 432494863 385389570 611246124 742991224 924993036 171978989 456632199 160736925 338235567 401401409 400924968 846792646 738189874 152727159 400678584 929888321 274998786 792483542 949042700 422915832 264394629 745395634 875931304 894488901 101062392 135984481 514135850 67485929 416786780 849262940 719822815 548457992 915497134 449431922 176316898 659740810 116643446 381404263 50120438 347897603 566731179 262963627 807439892 631274849 313154711 71509761 295394038 204436822 563895199 846527507 48374176 80864423 997816995 135386835 992486034 356726427 502835328 946356687 399912375 793512200 764968398 378059296 87264092 970265917 525197631 942232826 550572337 172045970 659706058 431860105 706444825 283081832 143265993 938552821 178804203 405297336 533605615 261288599 451805545 820288876 48344118 333907115 193633305 276807641 33088727 534845904 383301140 753252260 448860011 123268772 875620338 581842358 772105761 941596449 176407038 807963862 783455138 166523071 584189291 612175853 781794564 562598113 329745356 804101760 153645686 323609168 812887263 307441643 283267494 934255748 810191677 800414868 588772990 546587786 24676335 429106743 2609231 505232612 83511534 106563838 363844231 677781826 584089436 722938444 491299947 516466514 812729545 686864159 165466191 894488301 898653272 732201890 55180379 75932861 906248883 150624564 878430939 346072368 511332224 21584199 172797696 582771583 311461469 782698863 310141669 922982396 992619659 828147623 733572790 280546748 694958407 671596084 120294858 177072022 816544731 327236382 157206751 598436933 158892386 139179654 346459087 502443786 743812239 503151394 568824039 525588115 232991433 669643808 800477802 503205234 330255177 455419091 588778310 181707994 102036064 264259008 648189024 493710763 427461407 671722427 156020487 662182051 349808261 433002067 275184440 882349865 473258377 393008631 443332823 571245694 780573878 119861803 754934468 130634302 5884801 525980086 526716105 818652041 920812578 232588848 54813203 460426264 307547669 350539495 259678720 302605546 727621131 925294912 686626975 165658204 702527021 570924161 609902265 456751183 270624153 21944276 684667633 93105167 33643834 804124111 232540422 633199710 345714758 694221304 263902095 911343866 488499351 695967949 347381967 159928754 302184668 510625084 672932078 713113837 736109876 538554466 404069801 341234677 63976694 903743753 180045559 173867659 941290741 511878287 292649518 210136714 747931518 697730207 99899279 37876739 654367225 516881466 586532433 665839956 231487059 794824482 823023911 180320776 273439760 174832961 529471236 967212758 302222861 632441621 524399762 476876215 651513383 121509220 818026163 473126044 317313537 476266837 371269708 687886152 110194410 400532145 648003718 157273434 892061248 511995452 849925123 247943444 424036014 707317627 812465142 253715319 388849323 93750908 222150223 276188450 90528360 331554886 142523133 823613078 170903390 842051142 190294570 577761036 306906193 99313352 684395478 734387740 130383216 652735015 644342919 35084065 470166221 911582870 56758199 403219477 674761692 120333741 333931989 175609185 452730300 656930133 794852752 377062493 899505956 702036977 353643634 428487093 826583031 23757701 557251958 945438946 36298720 726181575 874540772 648872966 578034498 722839083 491875566 621614839 257062729 921173273 361819583 612189313 630735547 255595308 405494063 319476794 805304262 191091925 387893393 417254886 928581242 838536677 255104076 617819321 280252981 478801542 376902908 48959109 466560213 134199907 341079172 409517447 280888413 660913959 709038679 798977987 987396387 374829314 923925462 794403426 438901104 932274413 74811787 282976501 356646155 372549841 422763456 825429394 735467309 129302589 538380393 149865593 28596512 428049135 633874169 643466028 26006451 33004025 590889760 147767065 7185089 791500435 57908897 540210711 499672686 343438700 842866516 611053994 454923555 884819351 309284055 170224723 142800323 30947272 143499262 14371286 198567168 683787577 749997175 940966019 569207278 868253630 160028421 437131788 927769902 526459551 301429519 707265896 484717792 803931417 833070112 826015912 663279493 576447697 184138650 742130055 901519624 676492203 435306287 583863864 317207248 752563248 972010184 340488955 845756292 903181942 885391914 182083254 495724267 31977372 39947819 21818378 234101436 34205871 679051922 601110373 862912061 238267295 150286612 624965771 889728588 405404613 154212906 462852044 950812471 438837375 415156298 176335854 285689893 138037934 917802827 485612956 409785360 227259331 640812560 528327436 34117699 912201822 731594369 157639545 946016825 689156132 922906819 377782627 943935819 215277354 398314404 685108075 50346726 787959350 447411598 145361015 329754282 218495836 107549755 331531502 335655025 248767501 408455376 171244527 495420539 146323545 881326990 115747287 357893179 288222993 348787183 494521580 737470317 956350672 28153913 259581972 441270259 128005837 383756839 205834593 927740957 369697501 453778544 300816281 307512684 391399367 413174393 385102512 855582057 419067394 692150788 16785095 673251222 184858128 577414947 368351673 739117602 15591068 784830688 763019314 947173041 813397134 548711914 282832066 439780630 312721021 99701288 461631750 230530830 214783031 668244790 714645967 515073891 390509033 406531069 60921348 963675967 783968718 927228284 811933508 789638984 66411989 143996427 342057526 401738635 340304213 951965131 147993885 804352613 149506142 830740258 920498064 828222119 687533658 219483847 537259293 686901027 453151778 898637675 892851288 369675376 410795777 213289191 103625536 199697791 873157257 971727106 320557845 418602922 215160717 4367540 703044712 432822835 191986418 304912191 347527732 180884501 879636690 372577822 210560531 111411362 819120761 464537940 24371896 535812106 219744336 453823346 437811800 784711381 379466703 4346657 289226772 40739390 577310927 993861146 410596726 152626603 548933068 517415000 209973272 959176113 393400140 375482592 490569813 327864665 420733958 540360467 445613890 714924788 11089797 991497505 728441533 510490990 20263668 114406570 442345335 947863227 697780641 552568260 679557996 11963414 189513771 251091164 338853735 717548781 726062707 855867803 166934893 234927302 16066148 775083560 397310230 622964199 903033028 937768683 555953727 479114959 35938596 643706855 886238912 854111 257608003 33670730 718099066 342354576 443213376 919077722 30750561 530527733 356444347 318731143 52221686 148839591 718224514 347100785 798700616 957839019 674603956 953622762 827106395 896359162 271824871 604195382 534510516 182281034 800560906 19748869 96636343 528081172 41648695 636160598 855249522 946944189 806466615 961991379 289567331 612774673 82557435 894819672 476928497 62456489 97780218 550292479 607597404 366563304 899049625 304521165 226005362 507316679 240763897 520153549 357418478 384991050 90254711 717142882 489947416 629200935 626711632 935030250 607980642 210973362 286050559 588099199 726958322 227649708 534567766 626843573 32144875 964480528 517735088 724503124 658251283 576585610 947557002 629444402 803621699 564868626 184039206 7035648 31322980 658768409 605335469 56148968 122718374 490567347 816817523 438570866 769903445 392883613 358031594 872847445 654685359 788197447 231494792 84636901 32352087 427204668 187536635 232124629 88071832 676739010 561218959 462562228 658088435 580436706 311315492 330213396 872181973 651744626 436649467 493968760 621526572 17617240 703630557 593465713 309661220 858013394 611823315 11688560 957087447 97043533 266388392 691731769 822074391 603282117 813532731 963397385 617824576 924733545 659126309 806035665 418818897 786562046 226335030 946479702 64457571 204674658 768932787 834487694 876845285 624929469 494660093 468830186 991363018 226665599 779195992 706141374 689939394 508869415 661467267 540019977 956352798 498018815 330994814 955422978 707876143 688963780 871589859 3730306 788150161 228587385 925936266 43479844 736233225 797466258 277896639 313293637 114693980 200736308 513067799 911438557 305947624 952028124 60432120 592228595 439627365 829062910 349641139 875267850 274150447 316830762 108456033 944662563 655974704 791487247 471433357 621279771 264821681 504319352 649380613 546782981 771715209 72069057 37746796 739637585 942715748 764318185 857236576 5525500 505969070 328497504 111608552 498994384 662740273 447865397 716591709 804337102 573430066 117404875 738303064 653297873 858223031 875798136 473049056 129849065 753225252 270606870 573485670 496281005 635500443 10081975 721281953 821239597 356266060 40429348 320368200 268686625 176939657 897678830 958252654 739363325 365644236 722905563 427816746 820791539 969751442 624611101 391608700 309425519 836821819 843509136 732580445 85248002 542990225 857597090 249439614 187480329 383163228 393807834 859370799 77045407 764171457 105984619 158872351 157669747 113812181 472072351 645399853 385335882 621708836 986671209 796075337 547739689 239933272 831742758 229258538 184213524 382063181 51058168 352773000 648375530 589537688 750664535 746039760 122775370 7888345 297091803 821183953 327680699 432529200 70352305 239879857 529018013 446828925 665796371 599265508 113944795 392870801 864920894 298157667 854246862 600512349 727387575 332901862 361116397 834447071 848622181 708069579 263899854 657562926 775521017 724179810 627247500 45890742 240632175 282706122 390374173 591966545 463748429 729855993 227610544 348848277 87976511 579717757 538346832 958993522 91169236 866214419 835981219 284509783 437253570 592450339 601228766 142754557 773628913 301452846 735450018 817683479 617194324 724761324 88914818 429189671 741381519 78920873 505975857 99455169 741244857 926657086 423692569 586598284 215600553 540730061 71703102 470498290 932979258 838639506 133112694 425131695 599032499 432647250 628121142 245836366 617523726 860115780 53517471 898572274 599324751 227778136 893501870 465800915 443577990 662916414 681688455 986794188 653314255 842727785 106766978 149760739 335217880 880977488 202146222 83533614 865262781 230742760 292380382 738795375 629487230 480388926 267075318 23697212 221379483 622999714 603489446 858716398 967130266 691171516 150551248 735389682 10360038 23842343 363408744 60984149 373944118 472802817 892930423 510077859 815520747 924657205 935679493 732009038 12908891 759496788 888442810 943847180 336627672 580564799 181590571 788325466 134723877 773391319 522506913 232505954 718212277 627811637 551594526 172239447 802093887 325857814 800183856 770374458 161829903 325047404 710998495 556540855 184095039 745273311 489891405 54714629 827770849 904822550 441473326 910403374 300936292 38746270 935876130 286913890 804351184 376647067 254639209 943438067 532825415 140216210 983828334 826841312 527384683 465932944 461373994 965198450 512448502 302879016 528804153 368151871 272365678 226782736 255296696 451526287 715217873 664617699 634856476 969284460 129047471 12526716 804258629 84812277 386880356 305629130 972195731 724104230 17916243 268582585 115670684 514967647 827020831 901821425 67537907 333331451 823742086 543170029 849229637 852254898 300463034 727134651 569715997 685908752 923336515 715320653 785794661 923617682 579638749 812013395 224997222 78287386 523521719 847943493 76447723 381771601 263957094 115708889 542309884 155190184 880564735 489739813 31359146 380339551 761031683 519515307 572446220 592119226 390809919 411698715 503737808 120422768 98734672 854375601 814475176 340719261 454132576 572017311 164903913 467427831 960672035 404059960 64447459 400579620 25924918 228954616 443850166 258152707 737011957 847694839 330132065 471078931 770787445 492737176 559390100 282786636 355047404 199681151 61171371 759180555 759817795 262778439 1202728 817012449 663585590 805609384 105113109 445951351 734586584 211805208 293121457 656128968 886395280 339870730 381612776 488003727 424676390 720283166 119845894 901772089 768139805 665833895 614879764 529642555 295488639 13902227 365386310 713941306 222027155 391755046 499087106 742036992 122108007 95669283 880011190 876683456 360813450 654847157 612064991 146050309 366560119 753772266 791763294 586280048 326418913 803223509 467206220 837521708 437250894 356403192 200554606 23066578 640014045 260589614 683200354 132845319 485924077 65499727 202708613 336489925 501016379 357864767 714098785 888429970 526768412 425548819 42732598 856130165 475632700 413872538 847943562 129911688 923280692 817716557 143197890 113991354 545100643 447538015 316672765 61360747 928733513 875905470 852131713 855921907 926576339 618148564 787069366 610761339 519107713 885481086 709750886 504235562 800965431 871057357 728309160 556892859 851421889 715917682 968811322 840162153 766897869 784299147 87354989 252516663 929903375 945659689 725447942 260996643 901377448 957079664 890517780 547259575 647747583 75187478 948550109 664665934 864065949 216404751 996430320 341674908 9414721 920812692 422224431 685599055 816872112 708978750 345499564 193761558 658837624 161963088 622526828 249247318 302334280 926620024 904638063 122759613 69053443 433529030 599215195 562464999 997807426 484605498 751314081 210610987 472755900 909715537 874024628 416963641 974958602 249307735 74494158 425481353 661417851 547582929 394595948 484617520 506449307 51422253 299802330 162114433 308219156 775295008 905288559 239218090 455830111 777577561 386263599 753532688 313282359 831631624 628508117 968704022 278421583 430504603 340378007 98457911 611156932 787014309 339777069 948365898 525947999 111989218 853363693 285311485 516499731 929026344 797606171 142471267 986649757 97975271 85659643 39746343 181714205 966397165 447449252 321666258 283440760 252655571 806984817 804299296 454082639 771063725 108747504 128421487 539692806 740067012 323580965 55338131 611927949 955277315 356523210 468535827 123401264 307975601 520482697 868432782 166083800 885359319 611094376 849050431 7818033 260796951 984360803 511693995 47058941 233500611 31952143 900014003 393845169 192452870 681149344 152611155 748976670 122168047 172903851 721717801 855863436 675551222 646720937 344913052 140953444 592604589 401899177 592194896 774768589 405471148 759316873 989198821 10037917 26355058 913690663 215568883 537787248 156480145 950883874 382276703 401762102 795609436 524128541 486367722 318330808 69171941 714821316 784066769 852213781 42220059 72701638 183927851 997735973 454412102 824136153 942358997 80434539 198386905 751705172 723522880 817392012 390066655 564121276 593025615 818459893 365193817 472742574 519177853 886058164 663075898 610557802 793797692 491914305 667144695 205052650 795873613 180153610 771070515 280024507 54824578 521550100 792047874 769557530 941241323 579681369 527609727 647601608 325038629 9175826 264492596 862047125 34855001 663439244 277798879 27146193 411980542 105507381 566623945 434952808 433575091 601048662 228974460 665371328 474192020 308444525 337410785 996815088 60344479 132139551 839802191 629959674 850573722 442864615 206877810 610690170 804920797 657674273 4328430 287321988 64340386 745856722 901961725 145114396 186478744 747746523 636747669 798824639 764071685 354132308 925466053 245612203 341440622 881220831 269160113 16420094 116896628 212026389 66317612 59230972 162778236 493916170 600142276 181779970 414402271 37949237 562311990 131880050 800042144 873538368 6560646 300923205 38408226 443961403 447874014 570989151 849697559 728568219 774724043 153026755 720792147 703008551 804553992 475496198 175340763 191558904 790173771 10209191 976736851 625972629 718629216 590088316 659348768 357385804 3394746 905245273 941560909 800536565 422187050 852315826 215520823 799282862 138125402 529215522 152580135 625312686 132590130 86411516 323335384 126822733 405224486 968555461 597378818 83100009 152943554 985009676 243231755 172786294 860914158 565202631 263974912 441199634 680017945 843662807 138716816 23442576 513122512 869859720 191962419 29004398 216282244 740500531 927400061 488730325 382084724 411560693 151042103 133334060 517630527 737939 851849045 484051828 837699268 49562603 301618194 73881223 8174768 510384965 232324921 537521771 339569948 284965510 795335037 419756986 120686700 698359380 434259634 930316227 989790581 550032677 311185181 45082959 985776279 433830447 491112986 350346116 651440160 960778567 603854067 948380020 455211756 821645934 444923033 973808367 70316482 867842327 624624308 326072506 124269035 644113537 6304628 889512668 990072081 580275589 900210167 620672697 802924373 934329076 496014422 717103443 246117210 307175036 988918222 391256386 965732754 825340518 179806620 149277984 31232339 421339600 935228439 464973503 345395834 321041932 867587066 131373662 959539254 878203348 458075391 735746572 728958517 372161380 719501804 198108437 835907431 825994153 610912702 763666240 265155084 123905873 959322772 51768387 391599080 442648398 43391175 375031004 623787710 948474006 365304867 946542005 677235255 441007611 468727294 124514098 880151533 656496994 301226167 98308742 482729615 87014694 106502386 961480347 30922637 625176837 373578278 772014079 386160087 167786983 319374729 20721604 910716546 298342269 830473584 564889923 399135836 94662084 228968603 419326463 200897034 601516807 425073668 707802198 252840290 590638488 133050502 906345040 909624693 111231495 968835879 994524762 156980535 845742694 870346675 755738210 248196243 663285738 86664340 192626328 7439306 303263378 770599573 803371139 696837144 853837327 246853747 860391956 278309962 105550741 973170703 144062668 886370137 295815191 623278071 390848769 640395305 184986761 983213388 910310158 613507335 391442761 715861498 729555210 575398871 33050094 207201724 316547611 118619935 724347242 499264140 672553852 767096159 612329394 625247844 353194891 10835584 168400030 746452463 218352430 33546531 905682777 825999619 770123773 444105794 863004018 909370491 507238957 860322244 440769489 964628496 161409248 806945484 144339647 47826443 980740488 882005772 433006066 758341164 572043005 924617460 230298000 21215519 265111775 96651162 820912798 112627310 142708293 14268868 539941866 327479656 396726474 328015737 181637055 612451159 731642778 387613850 608111910 209938646 783257614 227395098 292887337 754198509 720630947 996858490 724816083 14210532 444037587 902468783 196022295 495998186 871415256 392866362 208740875 831076606 260010526 66275065 526278405 286707865 963252555 869216769 105183324 773312295 677663707 795519442 543642974 711184725 251604149 331114656 574292163 683538505 715746548 178671656 424908661 805668938 965822001 919506077 575778845 486162757 663904513 753872639 268274979 555865085 21075284 841478435 572074794 805669109 969272519 415382319 446956749 632474952 647296408 266405446 935467393 586616889 455565486 246011429 800117632 816674328 291482713 824938298 977735414 369939326 136683963 959253669 122394728 325181343 681168878 898989190 560833558 956651519 401158604 926529634 426537920 209708905 565503947 500824303 71421999 74745761 19804917 674357997 120190534 601482482 108631063 495500453 977339434 881135079 550786198 425747671 176136511 946992753 280722216 623302032 489558488 516105728 745680768 716198234 621353315 573996306 894720520 711127663 585547762 868153605 943056001 203005770 548778336 163076890 402023295 250187556 944361515 273474690 280891100 934062103 417436301 431787986 302799480 687412307 89676356 432831289 47319474 749527272 140356005 17225365 475950075 181931725 825934167 314845449 850941018 925973628 723057799 599110257 53912288 859406901 46439688 507564602 570251858 668370012 292786779 734813993 240745613 679774236 936953202 181407690 13638423 140913036 872733282 588967022 162636441 874306008 459371760 296042558 706275316 377135214 154680886 611271619 558408462 135908095 823257160 449843000 715357248 919425449 931218182 358749995 124735002 842739979 621884776 696422998 618585982 284382411 760082627 307385387 883304350 559740084 95491627 114006182 39498155 148127159 676418414 361877391 553800963 239908890 720262925 647805222 714292142 813062294 827326605 480948136 864588926 911905237 773923798 509416682 446038273 949303641 382305995 335660240 327070655 271094438 548604184 181925312 285979350 396212079 564270054 795847708 808227851 524001760 730550924 392252751 206258505 492063056 165053158 268537703 416655352 74165798 635093746 86684129 663347102 73950730 69872802 257953665 589646223 906957657 377648329 133165442 394934226 826271541 23404584 327932461 14489854 699806917 905545379 183065832 176878417 419324381 978440400 57789680 270426913 316948567 229074488 319368916 918849501 531250605 970986722 262031889 356317177 18743623 685110115 179301720 14774833 399027654 200814769 157778217 234482764 442867021 591165634 943938677 42920094 477358762 867210012 530145427 968826924 443638007 22903551 104737617 407344227 73272358 143605590 269418057 262712236 482079194 611646451 19019399 661088789 342124479 954011319 41421140 162925131 289917068 435153357 879501296 636517274 932270322 490300316 124921707 823818406 610295454 978661557 237093256 934199110 887914288 355283415 45209520 543221876 516765817 193963965 874811789 280878452 633584929 877810612 712778983 524938619 196430878 205396135 243577104 166188532 534235446 700412909 424971883 790784727 705168800 71776176 748735880 727254279 217622 606580479 296582636 955781820 763774536 155093934 393219583 255588817 209071808 174164213 120919568 846247226 803579747 195482625 382502816 723587204 914789312 751651781 24157019 173073026 19195559 707523540 387924364 758057434 904449186 80604216 792770087 986192374 413128316 854812954 628831126 740544769 581796808 783415638 547946871 510701991 542064158 751364714 665100296 757765519 940321658 120200731 665980462 344991146 327792691 503164724 686953772 75746693 262415173 416414779 656598481 65925879 270494208 932688814 17321477 211985225 266016533 111563318 738033585 537476389 348328568 363375018 28318087 420950156 398830709 894595046 999978619 300761377 816123221 329691063 70651594 767867958 150785596 334983896 204195692 913348333 967937331 760065636 355535197 716723544 684031194 412476974 411056468 764504011 210791156 449131256 417988081 351551118 320799928 188861804 370003945 765938243 37330302 593112118 291625903 772694727 682451219 60646597 760216990 742272008 57937286 436540774 218712206 537630883 598219754 238917364 988041568 246217244 228857683 85842389 383201030 505503112 438732117 887974256 423678905 853235664 971890783 262705637 97261786 511545200 235070632 567814910 966460153 645176376 93308652 576050368 801614771 929980182 164744828 858029481 719423321 2208188 584214880 728308248 22445189 840106860 916061926 644587503 740255571 370513625 145967002 486063104 349933000 632803565 9899571 554463971 226496208 224988827 957106190 431426795 668744439 762297415 524775032 55768435 119021602 574899773 959957373 735822591 777156867 720271509 448080464 513693331 821601992 704957442 145377128 847597153 475405816 201306063 313906343 733657563 157413704 74583588 435772790 608544625 593640820 66254008 479969068 66482872 126218742 801693088 937075524 311107437 345362 383131313 102743781 547938867 656133880 841743759 705590702 395875893 836817083 600128755 799613026 592241096 811855204 206703547 807361170 816375280 14793302 324458641 369750470 899145912 648773799 102962633 468908836 471920931 381218780 791883493 149879850 582664828 888840438 649818590 298169844 809761718 852528937 330479833 65643619 35650898 280175237 573100088 491843568 556709355 714080788 152343655 920204596 154917341 795507854 862534778 445781558 826447415 214918234 605218471 747923538 472009739 81303596 989881528 614734515 585385196 832142598 812983180 91373878 550329935 72102501 427407290 708413691 413802540 326126061 659674616 160088961 735681205 799652902 23363891 179562037 621686519 268256667 44180441 900695763 700292653 322447847 196768882 213474011 714204735 30577923 365771083 217071580 346827398 295101463 236939850 327715339 476781468 81436172 565284175 996160371 884835457 894820111 34072875 627492853 345926380 218278357 589781962 724283892 100689972 80277277 558254294 592008158 960245240 858539022 313609894 16762434 388416894 386097113 220692252 577219781 159570879 639583257 998185331 212971810 120544196 32197834 248000052 554766314 302262164 832093842 344207259 425983852 655483166 462935272 470269691 120177095 916182596 595138371 119420528 405262183 492566815 581868398 837965505 19754049 625589171 999780531 201454547 187060190 304281133 183482855 551058725 473692466 211226943 999013695 242453476 106287825 496633769 418679652 952633771 713403727 11130650 941181525 258455803 533542045 204232106 370119552 376412990 742671197 971445735 837741725 620697629 307828260 588969122 215971118 778564516 364511832 67958308 85693807 205395801 531831684 509194699 354621862 111359461 387716813 840425769 79606789 181832856 876908362 287881309 983176365 565460612 728236966 130187091 736493067 113522057 248580188 69761602 373446149 593255196 924373534 77094755 6394953 506471632 62545124 21491452 967096854 694555871 518123204 401013794 763803111 985181517 797943920 931897520 43501071 435938246 517122957 504457776 260464968 859884957 319964750 354155990 326911326 293458698 372248453 105100894 335717061 436023447 619916136 104476932 47184657 454485514 51006481 13881579 416145530 428067459 332093055 793936944 23402730 827838608 845314176 577130881 131890129 134428823 515838930 13878960 350828975 637117554 323279054 327415079 528084056 624685513 52709098 552496359 702710350 940857898 446879664 128987203 671237052 708482371 625616123 829384773 248305932 833790275 635316214 580633671 286537034 121443384 197755119 569833937 132707899 780660519 44043543 236665484 266498239 999758618 25889741 318443219 270028672 777720706 801805772 14504427 340990864 51972688 148681635 179748839 662382162 940078545 246161361 178015966 514081890 883370565 843092892 190197714 259978457 318605963 626442408 311325162 793467302 592680970 870253021 13967092 316629009 910605950 520167717 593538569 813454293 713717675 740873647 449402613 742726068 65245983 572123506 632993977 39243797 332463695 338002574 254982707 11324056 441170525 431047505 297093539 954912221 270316061 296916312 395803719 161799215 304683531 330561888 759767394 867790017 820008602 681410114 971446492 914875486 811622285 565150911 353450656 277706927 306263067 666536449 958739062 84245281 972325919 779217631 327894755 481092012 770001683 973979410 448159877 724076382 317477330 985548699 360170369 477140555 414412913 382013201 998186691 589173363 772469729 558746545 912619218 451303772 400027165 36743909 61946689 238708833 549574247 854147129 240585077 460771953 727316505 460485207 801885053 662857466 877357314 122645772 125847617 556529529 867874807 900631451 766540358 335265791 589754744 479349200 307409899 341225726 965965579 599891159 746482489 122259643 404974063 138626299 574525085 207893345 190570022 352207217 229689508 307105497 801138228 764366713 424369214 583774184 775415500 764850964 365985533 686579679 34944906 915944364 385985534 85224327 431309873 670779071 913304599 801031460 64493822 286625189 463400030 482291449 753197267 859037406 738142164 800072977 289475143 969628190 990916168 785522673 857635183 40285402 86797129 621936312 453454202 812466307 262519019 417756899 731019063 399978188 761087566 791537839 879793841 294209945 276157184 847390109 790267647 623148036 598570172 866316274 21337282 878682028 479921 660600391 177107916 375962777 438832241 190997683 279202188 176147981 836346443 101982392 650499845 67826009 385720813 305633613 430739009 948879445 682096113 164686392 1678424 367345894 757668938 490367324 135972325 704844796 899908593 473818419 618699727 544700707 956406598 89383034 547587623 307052054 123240983 47190758 308390674 725319353 128251571 172909005 298068323 786699810 682179832 434125537 703849504 464674806 436434635 905880660 968287493 709325907 218863721 274062879 372613219 31067463 843699221 504484205 523002855 279753430 268641078 409266709 110149781 50199561 534168345 987737848 745097626 749718935 125307748 964588709 866989937 75365382 161985131 154159597 28618565 366193168 702191024 955171065 496854049 331847222 797306419 499599162 614093041 189219817 782388487 748983058 520129055 820414304 935620339 732455486 538800391 863379945 442124677 990399669 57757626 625928692 517536299 743918064 251458534 432592927 32184403 771510766 863688837 356675965 392133983 629298594 661154084 351920158 843033409 235699332 315157796 872303562 788291076 271679562 715263701 621750271 519383213 1213030 468637112 548570577 759680795 55231340 590036332 851695215 985554429 759757361 389236695 721586947 593246599 449466062 18589441 855896053 747874749 476102570 735233982 572103003 101032767 432854012 210812050 554047319 867767604 198606726 785645324 715639399 176438155 34463533 514937377 508446656 880102013 859997978 486401105 664502805 262436688 715951395 471612443 841913266 601563191 741413521 124221366 960603570 221532515 616011289 278246273 930075743 952637545 101741950 456623105 507140535 265861004 806566745 684851882 236629259 284931493 500461197 729397178 663287596 535829336 773985741 951351978 739263967 7030482 601048060 275454873 37363483 360872667 704318599 741375487 911260425 70404270 390092261 680050429 729975347 747910222 784161575 924350295 959333960 189892211 168703140 694501203 869999102 827399074 174422568 918059682 366006798 862383789 812724745 820593270 925821482 998261270 510555376 362490945 672647739 849535524 896093751 276922052 372247057 123001119 144117388 240894940 773775589 665174605 583316299 728695173 27680521 874648665 558639507 504194415 637869790 773007941 25106160 167844794 716284121 851745246 901277947 309842506 997100340 879169468 593305204 426673590 831835149 400835885 862181579 883133733 100968728 871571376 452857150 941987277 157331046 109471973 262371006 87888945 426892554 538077803 967996349 633270432 70465891 651385888 475941667 262098238 83070162 9603223 798960869 707924593 351827924 339733215 304982780 692671094 563833699 3099921 363228447 686508318 741480987 812293468 66026191 424325457 803601756 161101960 595470414 558030499 653087178 582793414 516556908 70631735 982440325 819768414 732337073 381227344 951183498 30263683 275383382 474249092 222237295 541214506 63479523 489209756 123089213 413501761 371748323 370186421 573859403 632143376 89695070 455235119 356140820 86254604 110244750 472621441 942639199 550700352 658146433 715603613 508131053 678386884 492155659 580894023 300615312 220431926 54463640 293134534 75332418 24461754 569759117 905094277 12476359 242575762 450109156 955201379 574193674 207644096 47589491 485199433 184403445 858631295 309901206 30342809 635308089 983709602 917541507 634458793 748230892 784500678 661482351 370755524 551507163 846211081 980992618 846559326 401203676 173616173 499981190 237489831 139767993 767458537 19015544 639546256 254429927 694860226 223619293 851533079 581478350 383924009 332137778 874908072 143960886 63152727 50216773 920184840 741858844 299872462 282744795 415779953 940799622 14426880 487794577 293693114 219432417 138424867 856925576 376483359 879167457 379569470 504789161 214884604 181761076 785516102 872875406 282707486 787182651 151848149 429334480 946690244 980237146 128605485 75393665 513519562 817212741 293846147 561525258 408745362 778062852 817377328 926046576 736511936 98217560 815265747 906371586 186674542 773570486 988855699 153888960 789869195 294507378 974144584 12858831 332022577 72309689 908200912 299659587 409063376 699040404 126368703 777241404 332452748 785041481 482886590 148257499 311807428 204361287 602274590 864933653 487522031 181180454 334130492 187564642 643595548 210823956 905495312 370712882 757377807 633549036 669312965 8509731 920017672 60361071 826821629 97610978 69403885 278566078 17403678 834465847 966151357 618003101 430264481 972268406 608067819 457884430 327519287 218322326 688146547 489192524 208114572 425136185 597858788 592911262 840528545 957321086 461096063 844912375 895692015 684804322 555023322 385658646 467934445 866136325 387822183 130935811 476873147 335015387 746593347 608308223 76700 600940705 454594874 277854676 726864574 123008629 52453202 698585219 457690125 755018959 456369431 78612601 456158951 864893547 172470867 975579524 851981838 881066554 347263473 898293745 863560848 616962258 778030546 596822665 898379893 819392540 507085166 856384133 491910879 139743647 210151390 899668141 822502498 954426343 784514037 890441865 554862596 76863011 827815894 311160321 675606911 437095597 662879470 337757491 539111335 175165001 157629144 26708791 737866961 434316949 753215625 213816495 347241681 584882040 598825550 888941197 850639405 740675435 169702791 799714226 51605701 453570550 749583657 474546105 541844249 857195521 779546203 27463586 316639384 998206118 909626016 798316129 764415721 822639713 47567516 688355130 746319749 59606636 963526364 836701797 990023275 242471647 752431419 147590542 562107176 920030842 14411535 271705586 478756847 978985685 665678223 556380465 949602800 733329146 162729570 555408747 608629740 618832707 843098062 77656767 114961178 963299720 831856322 323187269 173749053 747210291 197417887 322291289 747368650 683049346 592259573 677105788 637357375 684458764 925787497 609688227 897007914 262616822 294325961 486305356 245830527 465880254 695605578 960194818 644415659 705367972 749821170 720048774 671111469 701347543 471147525 651149730 159969404 125701450 904132616 491146426 816093511 912078281 529855806 607840481 468634853 170606289 412114399 912722809 598746398 669999086 922365148 757570029 670493697 135550933 239298286 452021009 1762761 661101385 303753759 206933022 38796430 529700497 832075815 55306589 625210872 160496163 596777210 218541457 477811274 244542058 87822815 341668779 813453796 576418202 936263888 127995441 556317681 690388587 422104341 971165593 987721964 852575135 548629506 311596643 103032015 465271559 63083527 660408298 757843275 160628350 727644851 733958098 43017005 757718841 59904974 677255218 659440260 635587136 84444746 999259174 5172995 418926234 276318530 991887546 601874423 655815500 166211826 348878050 917378876 346135548 210459447 378503146 995460428 998934275 898316959 74850710 135971905 744090017 354378703 550834514 859007277 875363716 948695833 590969390 634149486 334679479 117524369 904377919 380661570 223291216 867290594 268462214 751157928 11985236 921371356 519840182 507530920 180885137 554552670 880919459 903073445 834163548 849297858 266038912 999531101 945057637 765272022 788409423 506623978 6730901 133337006 648623519 194787715 890645715 30838349 742154363 283405757 154842002 869312642 455570351 231740625 813172606 329283602 366191267 914118318 339805653 254605556 728097276 127881083 192317495 195282427 82146476 549569874 140547623 235517010 788233569 349597889 935440255 453540831 918080258 253143266 325443838 91381952 126303960 757466165 626342817 128201309 571574559 376735197 476948308 819784862 239330503 888697314 480411693 295409204 632058334 502878306 886439754 337875338 413067203 619998214 572325394 560433714 574685292 468635379 547189116 756765309 498939335 64716954 207567212 851485151 521267487 933134306 128304898 50397483 497736952 876203474 28318285 371456016 411012316 949128937 75565989 111575543 503186757 727874055 596066962 617145344 322970799 675326929 856855659 542072334 137825060 291308274 187894376 108816883 126285544 541898356 783481905 590720703 856038498 891418993 70770862 802283218 943138842 416171161 383906094 618192343 151670053 686542190 150708418 240350626 811575442 511407380 592644200 784621848 847534026 734676816 61140821 57119497 612747109 478905355 171494683 36582406 292421580 789357426 419281243 689277389 717087647 471231037 816701917 188841603 356074891 40953156 869951879 436645019 638977658 441091562 337789317 25660427 671437515 649600149 835018470 225346873 153129671 879804435 635054556 381512294 135525743 33493316 490258318 95533053 81426272 240668694 938860355 102997344 138820755 150272231 186602946 411465282 826376709 258755946 568952356 415631975 204169943 257395218 431459905 133959938 442024845 207462352 274446334 738551423 836170334 449161827 800577612 555917635 212816748 348697834 184477153 30363795 793471151 499673594 547378115 521625666 573860273 207528003 958636464 454643047 20922267 817807400 112093337 856301337 33629639 89098171 322983121 497091174 557814042 110540773 908731909 227086153 711135250 888437164 590518965 809307011 39316532 35367528 454879283 988937240 730176727 815857361 472647833 529460615 572254107 75229808 439437348 136342841 435372992 944239339 520655395 529175658 28325085 292464598 163488064 195803640 392502733 602715887 727872845 784706727 817534868 124591557 846862218 167866175 401995529 53509923 707464111 252444559 651312091 484903737 338688464 649540249 727107884 945692143 607236483 332261100 553829247 399250216 681423694 969207300 837727656 159394851 266762739 14418343 395418339 819696676 252548992 320907354 650857910 960651178 773093596 637495434 554358999 558413910 754792526 135809557 557273227 113898790 76078612 53549281 287464169 732902163 93258900 357298130 709811710 963344545 626444937 983950100 931406489 702206334 748350407 254469505 94691965 970881665 400221288 745892488 306702489 602619586 146905126 546188574 232123867 836317958 98031572 61700736 813256598 107365568 730226689 709126682 259152965 416753614 566146307 298979437 995325928 697338267 443873854 283430509 703446129 432135835 985812965 970347817 280146706 381412450 47209164 807078562 860515513 793701509 387289455 121856637 623916636 376145643 552830738 163905929 825129349 104547711 241980252 677914946 600891029 729702267 50090008 161490780 762879711 208732948 250066560 255530563 700232122 220169023 658907032 740114854 665428791 438895092 658479457 715309390 165540470 474528042 863991300 559155458 483181468 830894762 340356908 775642611 152491730 397871624 845228599 253712747 929295294 801198314 847566827 156255940 111641623 651329560 16096103 247600938 514185022 455853312 784228102 552888534 561226912 219401473 980905094 440413864 453251941 610214529 708938497 336454338 778214989 923743681 86822548 44964477 152487358 574796680 483080804 293705008 280575685 159354510 875104033 22445693 883853581 311988023 324880255 679074490 979993171 710866492 353756880 417676483 24299673 899976757 369645887 281590030 812121796 608757711 898136231 984365440 291055226 943125672 265811003 700679436 663029191 570483907 344372034 430443559 419847916 141998415 280798024 788055282 915002815 302681409 972486615 724177075 128359805 628248558 557762141 299609154 415816082 668040750 972565128 59310699 579361698 452663429 477687255 638542779 285885403 130960856 460967257 774066334 518136989 128200899 886072981 641048610 124573417 544874411 878633827 234541731 340332019 900832357 947898783 298961877 118719791 37598687 801160814 799367650 827441634 15746079 973440064 263210834 458753994 969311361 938815428 338518451 999598395 321818743 672461886 928535310 51015730 325155019 553702431 314827876 777182355 197708944 946291788 360306184 344745306 106784053 530118460 678582054 136372466 894517047 920347344 227802134 856184177 739315400 69600130 582130816 487001222 10461459 488233820 372982315 481719585 649495698 268449877 431998559 540433635 845796406 488119616 490976016 366095279 881021137 669287020 708632387 33476902 695010899 285559875 150296111 11369053 388654939 28907999 143611363 11182045 523151273 410557050 586845873 570135495 505499450 641702162 705322035 625859634 285444716 540193048 476655469 192296628 919312368 975347008 896061871 218554763 834800312 121411409 68411223 408331180 582929140 905180441 5735626 356580653 874699212 805520173 273947444 893320048 996036100 172622235 660309349 763520984 407450355 382981740 6293346 784166878 158091101 489936756 369063098 336510338 668345570 592038604 684290637 967239680 956130553 854172892 178030081 21909891 526780726 831806367 330906251 696429664 341865428 877217746 189684137 165231729 164509329 20013900 741639587 745010915 116365622 192980690 751438609 408934540 622439248 613193306 898794858 683986565 347029357 900480557 287119049 335835908 625746905 766902045 883420253 10332886 967012539 372708025 361134126 108927026 590463893 30781146 360794088 970268123 933252696 678355851 557934626 677594798 49705300 900197152 652065064 202370897 3810286 283396287 636705006 853210498 357001132 551473695 418066483 432049415 678631563 986922392 718561313 905674945 164425970 326290131 632968844 198517297 961412917 151582915 249312849 84319274 425406605 296375644 789611813 61061155 426266080 368381260 938031544 421818829 587754288 223691766 238388740 390370787 590700875 521748000 484327296 910623989 738692590 626620421 981837127 927769591 510316786 941867519 214306733 51397811 295466237 849750384 995473839 66263170 182296787 974455552 810596868 82523349 613546167 759971377 455102796 136340954 762051358 658749908 491701747 31198081 884647458 962091775 873118336 106772465 409402285 236961608 377186108 593963628 258411349 759799843 998309503 495536756 646048035 598810873 902815392 984550738 394895695 876353921 735458500 920018104 469289244 964389005 282020898 42088786 5205963 290840135 296867213 936911016 311865740 464762949 490950275 848914642 981769868 216412953 36273584 907802297 89620518 333261783 576241720 855559131 325641093 73386476 469928504 75398101 756870321 747123660 518253782 400740934 671275384 332808475 116920762 388818633 641025108 95274108 704945321 460837502 115356972 198399071 259539175 652511965 405538886 233933175 437352251 448416214 868519533 499844946 712978243 725026466 958331585 775060302 631953196 327919491 604304834 633509943 580588842 557130423 337561338 457553778 941186156 196868639 281652414 191705107 524838935 728832800 902003030 631752663 831171463 772646685 407191823 906914757 74239268 69019624 964277081 341092071 315137198 356671175 792932230 829082858 954835562 508886541 431332367 525223441 153036022 254113308 404838907 796721336 575891162 680606979 832639598 597601856 138401821 331449780 609391045 500788357 686596970 794889054 158634665 322237135 232190270 375521972 27456637 788961681 199303470 380236166 634744614 157181753 46203876 159425754 394510850 670270602 719412849 552311893 746674632 79515142 101009385 112225839 498130388 222959770 158219954 207015670 549647875 805611236 251464369 202867521 775336965 933890668 313272248 583739586 718431735 639879842 442165737 657551089 619411713 312349586 250533246 588754916 964465869 942529886 590059168 193552243 165284329 259479921 767700519 729489797 175893200 550072910 608519040 188277269 555478715 991436151 974301785 251641709 501872070 520241314 475660772 524556346 716578307 392552251 419310749 636631660 98194973 879024148 263052855 352736230 290466821 698691926 456715293 442576570 904781141 346436481 377117595 910525895 683317181 368862857 93698343 137424348 584162670 511365342 655505319 327268799 74006662 34096576 141209786 592597477 107892005 794881539 40733136 625958853 740316871 124625765 963609924 9524540 614939843 608371541 415027792 951201152 643810707 966598782 999934558 227823286 955951468 850540275 482527860 694676322 47800180 176445277 330145461 617399209 390385493 931265492 457291658 343003210 775490867 483419981 8046230 321370114 370660177 271741825 338056561 449989666 561901293 58910247 806437684 551510960 126168017 965156256 976820201 783202931 206306548 130628922 848901600 111060248 595790182 821877009 72328477 121755890 288806399 454913391 181702992 75491358 252899532 831312638 461951915 323382383 448087045 308426668 930796207 824533526 170825824 45628081 993058282 756484482 902212350 368814543 26452898 761217632 274561331 897276330 428419515 790340108 158700555 837426963 449240527 71385532 32440090 569996824 141934756 866252670 435414090 876156294 583076704 938315613 745678859 114959099 839153389 259171882 478641684 597437276 798377694 709718785 731069512 490833256 573191239 43608997 638022709 911729350 768183808 237127500 358281897 896656058 56625423 355765927 467266678 680823656 350513008 623100906 12250197 366693932 719731422 466153591 618620695 294641138 843911079 622424993 249990056 190262984 114267355 958250716 847337337 875516252 986070498 586901289 147599729 528870742 497560167 368045191 545771037 99684286 356807191 890865300 92427515 513895469 430319642 401744235 144996641 978886993 638283565 887359140 87093121 194523428 632431809 776448846 983798960 169730758 730127474 334805786 987661901 722151348 352265247 774328526 102029668 754861408 7475121 445739633 78442606 958542204 489399842 154307830 159653436 919572799 652260166 980752874 241960351 510729486 242703867 758978194 807635487 524784480 253842207 807883673 373510703 554926321 541468551 819397824 752257114 821236454 924560956 732895091 808558010 104769478 597408106 927630515 498801836 677005091 708182623 465094925 475784626 285084365 385054041 812605357 821395224 114761664 237793233 802397325 894602955 659070171 614581407 948819188 946444657 237702592 117506568 752705365 37414553 223990355 824819796 420835483 348565627 518269776 878890290 186526882 93916201 879299502 22773649 272003594 179595855 302932255 342518790 195524215 50190408 237017659 853228313 263668647 167412417 483228451 944225936 574841963 236624100 866982211 681130027 883758181 728499735 915271072 712254099 625479755 183878187 199533433 21374759 420405912 934984519 488886576 226042645 299004754 600169652 767293489 68825205 172861912 323297670 950574452 843870277 119196002 422033455 481797110 184829958 108405656 902583379 749488409 173459271 591149119 741948285 379979057 648935079 491591449 125248016 630486821 493819194 253598745 342382396 778043822 668911582 884955094 270665226 732190285 651450681 543790379 193173539 494623718 634387281 928583467 881172475 494107353 117085687 293209638 250526278 957517012 942832173 292721709 139419615 70967778 39909958 205855377 591947803 634026044 642759169 547208421 745257675 667114385 725164978 498801391 785384174 809869353 707501933 512432716 925889414 58698541 303526125 265879458 600260003 319019017 863779233 180210689 54346527 501956057 321254639 646235588 506784859 973899891 253905908 737669485 428110981 939365985 844699270 976077819 520244390 185594079 869636021 637530823 389529328 378790827 270999375 378956646 324522659 601372634 282665479 56139703 450206419 603479249 774485255 533551114 512694277 30830290 579290241 61332189 610793848 456302200 836270984 621240703 275342331 253851438 676429146 930901471 763676131 767099533 382772695 510321625 377591853 729518865 338613224 402062440 948468026 697782394 420294030 836276723 215573176 724901437 439106229 682535458 384766917 243846658 71886315 756908280 863025875 900559179 189983996 174694033 474694694 324743904 189943615 613912873 752875097 677825696 75462047 247609466 560651207 120512850 128313554 994916162 482019228 699831090 270956254 888547578 223987653 607774257 453027395 21697924 589875938 283358404 538206400 802954638 520965641 276003794 357596846 226556782 366376040 720424456 17009288 479682588 250201814 60221540 363066501 585682733 737150996 747884767 238947076 357142492 247561838 176836468 816872012 328173719 837164668 786993192 555739455 407261474 155717269 691544892 267363513 546897048 388341709 373075428 832981133 823965177 291791970 977110369 917898082 741651036 1884095 295470822 235040444 683390877 38070224 623595114 453738048 601246870 794460274 667668626 352997571 216336720 603509963 375398170 607930986 155822219 913157074 847317304 733044920 958621802 77071678 751183114 594157245 101846217 73856113 33899745 104647747 963201047 559059804 590231589 911304709 72024355 703254087 261662996 626341767 139152038 848133925 429352342 436367790 737562778 745554846 523068228 604293412 446260633 964619414 639114447 476972497 764925570 483853027 938251945 876887223 839243951 61066656 815343265 67723841 947091453 539012380 965695491 867989854 60612546 944884792 262632110 690488156 915759933 466452121 584922687 915637888 959145056 788304317 555471170 318689538 862550987 204997030 260382960 710061151 409223112 976607795 705113162 6506502 540840425 206314175 926206177 734783565 190419948 399085647 213792126 607979883 702390430 847666321 435462 793511338 962243397 690344422 284938277 92886198 856294165 212944435 213345212 556485768 275609395 256541167 533099416 292542554 382355390 686383100 651267474 635790442 581478493 60946786 53082833 939960151 761907299 553736960 302314467 626128344 496741036 508509850 559447657 186587597 734824039 679670586 652168453 891668886 276789860 988346415 650875702 229051122 676893424 502306951 55089113 182989322 506610727 445762424 789847013 468224693 206415227 303547136 834861968 469941800 419302454 776026395 852365191 717035022 590584978 557619473 69850855 796292559 378934785 62770568 49000402 675628734 957842471 893607731 648969733 877953059 343539989 782755290 749413291 984111480 19760391 923032140 843997794 108304494 430394931 159304401 841191674 929295905 390112500 577112000 995553251 187096838 947199866 399195316 289605050 501396274 21196098 439883550 227260532 375875302 809302961 515040166 613095959 510570691 52286867 74566540 677252559 270128398 822486688 490296049 214941967 346437350 243261657 439686843 427247472 297940007 819667687 503346471 754381685 711513833 892654473 321690524 147569487 133296821 442961407 406669947 835665732 933601004 646716509 911086235 851520054 261245533 477064539 325157942 684238490 199404387 176169738 338266391 372193572 142168271 447704135 156145454 462289886 24033114 990273597 443529012 578048794 453199731 586475214 756414470 281000764 21935734 62846187 540585987 196083564 101955941 460513467 953374951 869871101 869505284 256102337 59216602 668494821 692784276 777752273 638412987 244003988 728274791 428888422 673219438 855956940 420729741 839249640 906160433 360170161 235831022 782134783 95611316 413010573 858041054 73095213 865834190 193511130 93771514 568450985 640334146 801210643 568775929 338178111 849308289 539123439 248037793 252854782 643189224 606026806 314954853 767404426 168645195 407681980 290169564 462224830 83804129 591699827 232157356 587327431 920853245 938259304 546419681 829453939 469477203 427056661 248443236 480058683 657885926 248824095 334717791 617364325 822997022 628290935 485170759 265983069 248426477 466799065 761962432 953119986 506635546 705657735 694692688 987459426 150253008 398337105 953085356 192039831 316394436 588048388 745884553 379902289 493616346 858925144 787291829 411219467 469718028 679830631 600332571 711002892 928422628 838314461 999852195 165330539 196953624 253844894 470683960 181477023 92601724 8439311 146241937 966450849 176531356 264667518 953099031 443296117 679478861 572282309 12694754 342038167 752121334 539517069 844919805 631627447 964296124 247483507 968778712 765071590 472891172 870968827 25566976 349718666 608741369 905254055 778598342 899000964 359600499 54615436 471255683 37284090 331733319 232381148 143563254 947461052 3579340 848179556 294993870 952977110 951860429 745402676 410271993 638460 749678157 932009273 907329123 576588364 777989446 200694342 617839549 800669806 94302116 640610029 453034264 45224609 568550592 731052189 251993996 893247724 73045760 261966904 291790590 978086146 722804104 912424601 368913157 546092581 284214440 573155390 210194087 443061956 847867453 838645835 348276325 641428673 677441105 673233937 55056288 942016733 439996836 151125349 368988499 400896016 669698963 198101663 658812054 516381610 721177659 529692623 638968808 475071134 437941216 313709766 620332495 198698919 986802016 61346212 541772511 405289149 877465038 278964193 122779810 242367625 64757542 968308164 830280691 135775574 536451785 297623361 823644024 773758469 367470509 995189189 877675931 458417071 73965479 660587229 849652616 555591241 466599677 258737984 848737161 358403895 25100186 747848771 884903164 47191448 694334667 848353490 640446251 272226511 585832539 395075041 166350570 570483908 375848538 881861698 730790133 666645762 269007416 729551262 825174816 62737398 723356286 936107928 903065763 723965576 319662517 839108050 164737203 519710142 36836851 481260352 95190352 84733387 554487385 131667770 787924347 1146673 731854056 825604636 625918997 82273976 768879753 513747957 843957645 417059429 776266434 853263347 407222896 686942960 608645581 723886937 546540522 10559514 19130378 993880422 300890410 110913985 115029423 600996345 630363544 360451737 146370912 610625046 870283073 392240774 59212962 614135477 81498872 504798861 59183734 198159771 188639121 81177814 4450383 659538574 993500296 981438075 387270455 672532170 379764597 106181165 708842075 258132842 228173069 751567339 107517128 672137144 587373758 849438589 46240727 976590838 10410539 858293968 536734504 429983955 589748671 368950079 787145403 433800206 896328492 899673400 418850425 407426033 145585904 661693852 956766701 187511024 731404027 370021308 850653429 913132295 599606191 368115219 205792743 644327699 142755287 767053172 713423992 139336626 62461184 128910737 532980281 714907868 689212766 972568655 177112425 791575961 555434197 657867706 951660771 130776466 945217331 418899127 409600006 337389006 308329182 33027288 334812730 494949827 930905454 582087217 58125191 435624152 999214749 38587551 530866294 47165150 103115934 543811194 853635457 932553063 421225005 519754939 79452000 185724375 737853361 792696659 269969664 714875560 790342760 278816794 586630771 826324001 752522307 405149097 967264548 427378023 155469271 659330127 859343227 756164430 257239195 525256313 684850000 361574537 957721681 856217121 315284943 588217297 857221664 953087988 806944919 540384560 306829778 120089890 995765509 204293972 885157006 51098805 210557316 227162413 222645221 78857048 278282835 812917984 974958806 484085054 286248844 436236679 818647431 282384462 944821616 969779985 793136501 88038796 45063311 17572191 13674060 436261713 768432894 985526195 635018724 510730802 568352732 694316656 598423197 481612321 285748705 121377784 597792343 300626972 966267380 413155450 568201726 38956915 375964125 996621759 734248319 415611820 280219986 467967355 866609196 110080138 432589547 845306204 973308608 486471896 216733069 902082434 142046567 972867125 19558769 263445295 858730733 970858929 837257660 883064906 914816168 717627607 402153278 606001501 122137544 566857823 978372430 169248417 969645266 599710191 73063791 672711613 737499128 258076223 375891786 174539187 30999212 913050204 643205734 513387310 62205631 632397504 43033878 276597551 56951924 103179930 513651634 147440010 696220981 79441848 622355273 281227396 531678367 838851842 951203778 934363760 452829735 245609206 207815772 757377421 26863583 817256332 134133447 231036889 702933837 390128367 221675450 260011434 749107051 408494962 157927050 508155575 768533142 938780365 275705249 193247082 808832562 794187147 935266188 295208363 782902871 542318042 57555638 355512257 183622205 51959608 776126235 575728003 797852951 568405926 367249945 549903513 110965406 513345226 137586674 658875402 208726627 470133195 695055342 164643330 563319044 80647036 150944789 442557235 606399129 271252106 912755280 544285634 391342933 582063381 910748702 453090849 45980063 721248310 54554141 108347196 264971659 707024744 520186514 795861680 533032152 176730183 492109224 894245671 264235155 141495784 260981613 342551685 903620592 558956795 498248653 27853857 865010178 830859841 580518262 227442358 594786501 921715436 91919817 583303845 800539987 466425841 716934474 945796149 925091614 612446534 863962692 846109108 359101655 36966568 443795830 83692583 197075574 205961253 818162442 995142759 804657220 899220474 206931995 858464109 203700831 176568662 946131509 528374928 656722489 415064321 654932443 1128431 786009960 630796903 254560751 724418196 491921555 358122845 580148662 398189940 913251684 723839579 704935713 516726645 586218880 55826531 260509037 186765873 944690802 241704335 844943781 766942456 989017731 15128169 483450859 576832334 342107957 771252507 801391523 238116393 393742076 598857453 417324626 39085238 11483925 318448547 67571652 485755402 192997704 777492122 887849024 413170928 545932689 896873497 297441520 788500217 144368072 85716241 488136301 696067294 813813827 681009474 812413847 853947453 213834584 87639756 699769222 280867788 115944642 163327984 975485271 915192030 300913296 16369753 814379857 962586149 901965796 222848314 846725469 598193734 617343495 399801553 3610503 410516621 196403229 59048487 169551892 307859409 403150149 890473540 488647961 128885337 221720220 42916493 940145760 607015559 511151653 358543545 338073650 464635604 480707845 720013287 937173780 155015432 701966885 645734695 238376859 253087400 527779991 109707805 232564436 819028684 913391412 173183488 297331494 413458627 250992132 479486905 349650669 415283334 50819113 92355082 928626637 454998323 540410282 3755754 693390326 976571559 14820324 268762276 892968287 100762264 540426653 538068930 363157563 885588397 495370900 137228352 352857107 564584122 110927453 54292960 157915588 606308629 183929622 933404038 91117230 824832630 582889256 144562377 327230952 781702559 856686244 814825349 336627166 732205809 943221743 366309573 252322262 243459785 228049902 178491005 777955864 189637112 664618197 662890092 578391656 819362381 432900639 445698687 711124514 593869875 259370512 68025689 417837441 121975570 286494026 542631284 577109666 545772798 342388157 944755205 632188715 766926145 998364511 947090811 593452651 567073166 358901399 9070705 944980305 684907747 315411354 958793503 914318091 883715260 142878391 52770996 241438210 284786446 684991278 931261991 262357831 592677858 254951941 73838964 373597532 651377657 827892894 517296766 613538124 806993483 748251435 946024926 712104384 387271498 129504334 183001667 554221411 424871787 362260368 366567545 916530468 218671079 649759038 74323141 167616574 951960125 771512572 156996098 642693508 817948555 862086893 129612065 343055850 378636846 675338304 984910898 826060616 962745496 542847960 941991525 202833630 366565699 741850450 910347732 137946194 377325622 448461026 709778306 756996612 868336954 456848892 158862951 854071455 856016126 935908770 482088630 766881221 430911589 991236461 862024977 43506529 258200645 76103022 162264704 475970397 355446194 295037242 589347474 430676189 364524692 231059812 505393152 413688729 95790662 174747622 803148368 452906301 10505164 401231548 360609353 211093590 851646880 528549075 935536646 3861888 502277877 2764859 719605351 117063672 776055380 806804464 243445962 396671000 714105158 418169630 6004905 292582031 251469475 446633419 431945955 362022090 585308756 485615762 551812467 702673113 927279738 806917915 565729668 913043725 897964115 213125362 529797154 170085997 455129693 660700852 853138381 52344101 988570619 238596347 556758077 654637374 81430487 861025141 496098294 957959982 15107904 400990981 760684213 502696915 8029657 162413811 617515610 360880083 365321140 227049181 536841847 443832817 535885494 220226473 426142423 944865626 574468852 512763762 305290320 118369871 104649069 389373764 828514316 778507201 454727915 617789797 113206723 640866022 849946788 995519815 833616447 396182984 625234543 910644303 564375966 671723508 928138663 311008469 50736213 327773849 360738021 139123683 89097983 890121306 9037976 665767245 271016714 637585137 442392191 811706221 582961549 172640964 504329551 387249498 384225768 559133843 315989687 814514768 331082279 817366520 752606768 187012572 170246328 39152193 608643752 52210395 34757794 516321034 579346894 240782905 449086596 832087672 683228880 957714471 340424727 637416804 645267194 176305502 80643073 395515839 487989519 309066430 551132282 954668838 797289085 810036491 305409656 345142724 895466789 933635111 70927816 959440120 740956277 486374259 920293994 55146871 526212349 486613411 41318049 939591104 929696421 499945566 39110442 853833804 571303476 109040993 871783586 296728788 673094742 112384867 67059101 717832291 39796180 64174947 453870408 403103751 144767685 44831490 68982225 450452352 349765654 77261107 518114442 918473405 786300933 862221162 353165832 318308938 55265014 103672442 329366870 884657315 956277061 458779983 78938145 696559530 673194569 856177412 626965311 282429234 711817428 827921681 261155339 147317938 219285652 176382196 59738993 455341557 50830405 508098470 308453036 790756389 491748699 458599886 426966108 725603989 376412000 387114821 67660889 966792636 243396741 960791774 313899263 950889422 848415856 976784336 861711974 363251865 891019261 13004588 583953074 978915431 394330662 529829851 89320873 34678132 337110383 916436711 904165445 618979244 453900092 614571525 897592578 646247109 726863889 905742897 172933833 438445156 905153302 607625762 385852717 121326798 200439524 828231103 134174369 595481275 508933975 997584640 322462163 622009391 579327982 826313152 103525640 863011020 639468339 840290764 832151568 127888968 580504787 621671817 748022950 970394670 527805547 767908685 609800559 264561534 875845009 913451762 513434265 856362301 673650824 370929997 596942338 562291526 319750166 123023002 128031734 274182359 91250599 357424499 704887594 500090103 878147790 282555561 905665486 877507072 899266554 33911783 228732653 170739843 103329244 351950035 35437397 466273252 858793907 874113687 166310507 371530648 720968302 86812003 332447179 640552359 628549274 991567121 739806827 525177925 425097494 418980270 131964654 188747034 442682932 452636270 776189770 382172480 978813493 888883526 506400421 25289031 43923095 353827611 26946572 803211355 255963183 947231255 70050167 115307910 330126139 170617652 741537547 958206818 907576785 982388602 364525943 430075252 854449565 182233490 42659080 570645432 340538226 55922640 605612896 621740600 470150144 747237366 618455448 495783075 893541503 513692273 573515494 613028060 522350644 705627550 168499173 646013514 642192053 478742103 692252007 142082572 271281587 159539097 5848441 252413822 844095943 357402443 207843533 743173783 6443117 670275202 411527831 499759804 628877138 321925813 722509434 986685405 385023265 766188478 647044917 250494585 579008101 913906825 236288160 872548266 90443451 832762717 519242055 872804928 341829330 759013696 903292913 896311302 455699095 505555578 469176575 210661760 774658024 373842601 39940384 897213497 164896170 175483342 823282563 250703495 46069092 251407729 379494343 657821221 919079128 421433282 255481832 281270272 917133569 379196856 197476890 76314166 695015005 473406989 818641741 952629383 67815653 785698909 234158996 195340159 617734720 833580603 953406893 995115360 806019872 514063386 553628181 850902519 694347399 525195586 567178895 254854254 511590104 322595487 770878685 332104671 439335263 62457932 909263353 172106404 182647607 844858405 730223355 605817127 491375037 404651980 305957181 598945471 589920987 867943115 317252102 585801855 951747649 236978252 715908149 991012149 127929925 127557399 166509676 716419064 616959910 206765686 365437148 262622602 142379815 551249626 705886202 391041185 439897121 786307162 476608938 468542202 362392946 166844372 600842428 48490457 655525396 516021980 327432139 41598159 737687050 250621044 208051484 730850621 193383835 844064684 101462939 702669886 303195138 968101669 117104306 425334435 418437932 177275836 729881992 410425746 219398533 555856725 130468056 42602946 818246441 512269966 122571468 429006965 524391750 310362088 983428850 914797476 593013552 860248140 515523069 48346049 628850452 777932554 910288374 588772134 570883856 832801977 320816475 421197773 717699046 70988010 170569455 391786058 718380069 801033015 217901756 832750896 726285698 503190296 660720691 798957596 901406392 437441617 970593872 792393960 442432894 144888593 701758985 325492723 613215477 362493711 130648219 217291685 892176115 490670495 13935136 911100624 668386964 950052099 870948682 211556664 806844078 317116572 396106669 671547690 792850369 385161993 850266606 173844912 377216063 576864258 666791428 9110267 493354170 844949245 964086949 555212823 402636253 295109063 825127735 720320447 151610852 302147345 393114549 875917838 354312382 425131595 21105010 132484416 101145420 486241035 572823671 865792217 577283935 290804066 219659188 59693476 801054026 293634346 459147321 861322674 64920639 220448962 557345304 796871770 66499805 78917656 583466252 484700244 710758423 487769955 185494130 911194152 955887880 40028297 144682571 170331661 764246244 722002036 291109995 370424165 296080356 992084332 427543383 65363767 255574204 185992134 826363059 575440155 281470771 211703670 153775009 205430254 385686508 836774235 825969177 763468262 2759037 422787240 345622733 167482486 277610906 338119729 801194764 165626128 998214037 269942979 296245962 29574292 968517025 641350888 974397448 738691636 902673378 775307318 485200927 42349195 488544559 332098927 229697013 894026455 733310315 413905975 3652117 446335597 277804335 682358703 629429929 853149141 380551346 886000986 391733746 17853694 183476906 186541033 490649481 742748332 188773668 78267635 45114460 627544038 42471490 588934326 19716008 160116578 454347477 452375966 831923251 109328329 583783706 201056480 867708456 251027291 550411855 48321027 969829146 413697904 637220011 625531371 566866681 970203129 407095177 242761326 95248197 10861918 310278960 769627145 250065168 115177664 60073972 76526485 89695108 431249160 997183026 965208179 906581220 211590795 209831002 48448225 614872125 200667045 417180054 206856870 37646418 798644570 939281864 147030044 731377015 677285729 92956383 801671600 106492802 435678576 123842396 43795706 831534821 21213346 198816811 672426566 379951306 967082582 138714057 123494201 5886278 497724303 382166623 401317947 310866538 407793996 437537318 791518198 49807045 254505114 917316506 543068255 987042242 805055133 90293351 551390805 252029253 660989217 49208375 20227807 716596301 454434709 163506134 690410822 283763138 367824220 920624654 813753804 434863013 260543585 633380752 976996586 461513033 239119118 152891563 185967565 374120965 679637204 613771558 182508538 883874468 455231922 848813225 400242790 933661449 371911528 819927000 506845473 562659106 756315117 158776635 366745797 28725503 81890342 109606830 666467250 754456655 175101506 35166325 22124940 285653034 428004026 219919722 53572496 607586376 523241716 462014205 738115782 836634463 243527163 780700410 88975863 242242890 584720931 957092277 626333881 853761130 570945825 593557793 131551826 367108345 683036763 338901064 488535590 150203269 554015378 327436191 670749318 646424930 600084691 919288701 444194147 160117505 971322639 666640271 634436338 778634946 540080252 288013030 192033833 713540151 81853009 57891605 709941163 863282245 661873416 465804457 858938300 974087819 176712459 599252509 244816898 969693029 162974129 547331843 993350327 340147091 953551330 683156485 513467732 40166472 736888437 775929656 251473787 163878265 733399495 980389689 622949997 380890467 848198201 638736451 413853383 986220431 771432015 702845170 184147383 851005971 339757653 442868591 308291782 72039674 434537402 587701471 693045724 791173341 928619119 966193955 581892917 704732028 199040057 212724628 268595296 502907536 862554947 272322319 91254990 481000076 667576200 815739812 14867424 647843338 237155851 61844647 572169558 812000842 538821353 565418714 867034089 653387013 673387570 265812404 723280786 725363758 968230731 161076288 846236480 708870512 394066981 504885732 23032586 787390372 901876375 72518036 461951619 914932352 772053877 984268827 573099769 641961214 994221285 889872182 278755733 481607240 770060362 833615553 812471402 363792232 830865835 755118660 645636756 325441635 26877580 86160627 770338811 524764349 743360155 151043614 485447630 912456510 124750158 773646424 229666713 740651569 321632257 959428440 89856441 63132212 654917642 683169432 378583264 385509040 975387573 538695754 112905059 695072533 994429777 268375284 352221497 873993343 106316523 997038327 345261770 800512742 377403831 974027254 955680414 235729527 23712795 205204169 109768883 52734787 203273139 858589558 407649803 67739458 898529274 42985601 765761528 767991352 667838832 910840954 341423188 895237326 975401393 299007849 506357833 36559990 206821478 758553024 633577561 752424644 755293285 18152994 616882734 494009027 696686377 458007985 48359287 432841956 820934655 69859365 368266962 830441107 710825335 795125417 953640969 134178530 792430815 140585468 829051454 113890841 494032876 990497806 73251543 426159926 37999892 217275913 552238788 650575673 887669870 762990939 277018276 896060968 869187536 622319251 912773954 999702937 380438376 993790709 694471117 571839078 316636126 548386246 742773882 5587842 262931222 683358801 329857694 805009051 632610683 904054109 725157460 176459257 708983343 441080959 31967688 630441679 515768113 208428055 288404663 871443604 520897726 368824051 322844028 244927947 62483753 408845177 691282277 826828832 644906550 447736769 483000163 240730986 379577613 69868483 853312989 274516880 484884064 402617066 746245323 648016634 73147581 69201235 199742277 852648090 594569594 721941342 198278595 692456944 540085385 676061564 255398819 104043347 820597121 532579581 604553406 663812338 630047526 557282988 869193780 701030524 707828455 862913588 2055875 111920644 332585689 856263027 274564894 373016508 941138106 806431259 507539011 584341650 62696292 617185640 650934235 952016061 504414009 962737884 675997400 935227306 937680336 164654818 892891319 379306722 363107117 371805985 155281565 196068479 16158446 980939398 67085432 103963709 987218614 300661098 64754398 586312411 713446247 903907155 439582371 816175378 794945470 114464018 305667192 886706739 644543783 733871027 535855731 161706363 895980159 853233289 961052958 404531047 219312478 413430114 686103346 322617152 448354597 656382803 11731430 283559446 300924063 441518111 872222858 86432442 171695600 420260127 453775966 830353160 506648204 400624234 392381434 701572091 825247405 726564073 871972388 169981870 961692429 568353521 852063500 473941065 886941400 946338486 503744015 544572409 867815481 201039071 242119633 274581211 659787617 592686111 7378488 978312849 178706198 129634437 447550881 850139133 982825996 758495124 475898378 806284258 542159536 124362857 901132744 656799415 242731318 910316063 983366472 628476491 487518057 2404050 368901889 631171263 140636139 953747904 372794763 128228051 240581823 911673564 802131569 615356591 877400725 386259596 697696362 758828445 538787454 788995365 959264697 334966220 311424881 405699690 636800074 768965518 535370058 653054130 714322679 962314702 697306054 515269227 509931518 596262032 820061080 475281353 259999653 888958444 170332894 210357127 604037170 734627332 411377166 977095679 834480430 525323630 320660987 914539382 366597403 604835044 509755192 237414334 938674239 404699697 865577069 436430943 49051789 542812470 860520646 808822717 119418228 470258140 647185067 182700852 398271054 993834822 731398272 291156909 939264760 289031122 987676825 995139917 365109385 307408324 355447868 4129977 695647374 156157146 525429028 815004571 643886533 817916986 434847929 670063326 891109721 427855121 443867024 288116178 205360858 182520244 345003394 642233327 134706290 257902612 938908074 799057414 409414770 164962899 81395064 225782825 817228005 99754459 183041440 938165089 913945788 570553776 849563217 866919878 919234789 910307075 752441238 831288128 601358688 411432655 6923801 366260614 661678288 88686538 776397142 861108355 834837897 222533656 298272428 7728908 935295878 874769901 500910857 183405298 452728151 39864466 426375442 9802356 394474581 564173000 834918504 617610649 922094805 805830643 250123211 294167676 994020546 80786490 345897857 689488815 372384790 128004127 445750670 877228578 981534024 92913167 503634127 727121240 252007428 764361288 613506111 691953591 554752548 559118892 475798574 985065659 800422511 424144900 108892285 629204955 642028825 71277517 480353404 904579271 390212164 883108160 125896581 986669120 747876239 415042422 922747176 580077144 901031444 255460863 592924241 964232233 5335752 547656577 430927746 254994633 849293108 950693408 299619679 131783684 474033520 613413902 760758009 664601914 795215651 524163345 151749029 185042390 424119350 936833874 266779673 222532518 662216487 144863698 419453672 450190439 89783922 870077030 469066013 494865592 273147285 990311816 617989064 619003499 669200437 164310910 184766842 496334389 90277559 509475398 300109407 616424811 316168669 724805284 913684312 859875750 374660564 834627571 40513174 363876748 196916072 440564283 478036934 549138644 657864322 379839448 214790211 555192740 90525905 487320178 959093752 343096708 796404434 94294861 802928254 934490264 157825312 966415875 399843898 992326045 969893972 814574492 84962539 982828590 85475987 41423655 311424956 686922073 321935548 71725328 726184304 487528619 263506047 340563369 838979799 862917017 517911973 241557442 850830646 299066884 214440052 445221208 238564853 827164531 715686443 604394095 925022713 306469879 869945990 641930944 821205521 67971100 911878619 167203514 877101710 325101637 563578528 790122189 250605493 300332083 745022188 415583948 339243229 400215788 558100929 910831299 311410764 646712180 311540621 762895889 383802325 848452105 313409224 588910806 238235249 477846088 630922203 693985710 694945072 528742457 345759466 793355246 11863773 56776619 185662336 108291992 581367972 612250682 514830100 566514629 406331977 325379396 201314116 277878687 576522532 254634103 374364540 883916089 247428689 504474791 823606334 212070421 535304081 131812595 946857908 61266524 453362770 553579170 11654727 539126393 121299115 631387237 278656038 25931517 575155305 98966415 570858713 942090967 87002506 48456383 914029395 938692608 540209054 824381129 484056392 593143645 577867075 314917335 911666276 426762831 503917689 23675693 337538353 470643056 417662969 248423482 865623755 617137415 295538724 18195726 422866597 538446690 590871496 136718983 988360305 616243400 943231452 325817736 362225505 755143342 9859925 724388371 622407473 345887512 426196203 879231254 953717864 324154263 588508874 775871859 17717997 435353440 464018 535939201 129053574 139726218 71670397 868753736 464735920 117690013 680373924 833102208 579591788 803324514 826845282 985778795 71859301 463267423 34926089 209812830 31758215 268443574 767201058 647395898 645059750 610977490 952339637 551961897 78857951 218328290 374287334 557128832 512017617 673149546 868851893 280556750 86127616 517855624 405194030 409505152 867960960 675763266 141846886 681771503 994646303 287057193 335248400 626415170 377625587 176905355 662330251 516255665 505810723 908683032 995235496 109381996 405671796 568009309 88611722 821657034 178870259 608774651 743672626 930083899 859923255 394729231 861638189 338857191 517030954 547784153 484149503 186564767 96818463 264342073 195123264 628055335 195719630 453427901 740568642 935343581 572650874 123106225 481978624 465641971 161065530 467541684 617813107 233992478 735871942 639620777 82134933 425479778 628882933 72585159 890056447 518343208 576748862 927628208 911216776 87965344 644429465 759631441 136707811 297001762 567541127 337178116 842698776 901141764 747139543 963490897 90179442 535982479 719602643 792277425 327787267 78731329 811558610 529250187 802446387 78532291 651242926 996784397 35392985 252415975 378336388 645139123 651203199 524718228 88110613 937666553 22299463 795834947 274707789 173337655 327216268 333998250 11607040 409819359 956924639 815780307 687905794 495852434 892604448 467672835 946916238 865085372 282007375 271157110 743881646 18483519 972810252 954262783 500311487 990487233 847638968 919190410 905720620 752940932 538810631 131929052 538216376 659175332 236631389 160637010 618477509 683753343 128861398 867937564 685903927 578114746 399171632 728180046 368618561 981563780 826681907 949533484 136902192 68177686 30323177 815333117 671270681 702819062 499284423 599965641 663914112 812972207 821049573 237996007 660386935 796397105 436213429 682915475 430883198 401341511 750052920 196673350 871236576 324340898 468246489 789912663 926480789 586132026 262662212 722701563 963017345 723766509 394241887 193617351 937891931 643511235 580377725 936429699 463455194 994897724 146996455 250142353 136355487 11004585 693703802 326789232 996231500 289215391 596801272 502069368 315206387 964674138 206286465 337989449 690735561 572622719 209547678 722529148 4582871 247337084 591594702 413171496 499592338 981566541 688762406 120313719 822256083 51831044 153989835 103215617 521172901 699970224 576168988 225579176 379619564 654484014 795655164 290120697 584050538 703642138 715320473 60235298 749652749 376307226 828515337 815486505 160583568 782091189 96448586 31209895 246613883 509933394 156124818 506668749 960465768 660954346 362592757 660609104 241133062 726341943 779920541 804915843 153737320 447505474 852755354 228437745 955482744 64794365 549438189 626148584 472018966 110375090 137881650 783101764 476385544 179706433 577946428 527121322 212444322 607738713 259356924 56967915 286045325 53209699 299290260 785197800 660587499 765932575 142693780 542836035 661474703 767330480 509483737 990971227 85179712 504574125 197042594 905962567 588319491 301077215 421954622 392487338 227304228 646451183 261605233 298713286 807570828 513403440 212813942 263066320 282662869 947128049 716947852 684386807 20343756 73461739 11331169 503749332 83177201 433828153 566496570 509755696 702431416 899953607 696965196 777394819 346480131 823329383 726050058 71965176 439320182 366195175 872891583 957579485 330980199 721024097 525543340 5044107 446656033 799088145 750513484 473498691 972026920 652969575 153671461 637987162 937289545 457170527 182024129 730073739 140429814 548906645 393582096 742459152 292858366 95842201 557011335 175341060 116160649 692773016 122742622 462595163 818093640 324416315 782831442 753474615 583736772 457890601 160017920 726764968 106325965 413478555 828417409 102581503 934000980 952954068 247819029 719448078 20686970 287063131 337086475 531452387 197931956 592889589 870127623 760147825 689901626 257414972 295686233 742328627 791141014 311549689 944813954 49286358 397787894 391306062 830762396 410740099 931072966 838401892 887648605 554902342 440160699 620739055 613406375 887594504 146925266 237732630 579725355 339152854 167074678 470734012 860233463 514612167 966520525 770204583 567139000 102695473 413571399 654655254 710353711 698940067 488826848 482321428 535729710 465059928 807572124 278051167 521603983 247137373 489924179 794778089 378301443 482375601 149751468 929761324 158171486 5019288 159769091 393498094 682042514 271790510 788779227 78551516 905029897 462283783 921065540 823205793 358649597 897058068 583928039 280415996 646871987 591886931 219068699 94637058 149271592 117845424 151252696 19223541 213286284 247461088 6084413 471234294 601544336 14676194 332125312 751336424 30259500 72701671 883586167 714113772 881450113 360817191 81180431 584897406 623273420 587358550 591546091 571457837 980584507 305293385 124451960 925757120 599508007 553854530 318391286 754915723 283862687 974592694 534439661 661416830 767846209 869505179 588321067 336540432 323470422 473407659 21059780 974570996 584260402 687466380 526760557 636728562 797474920 635661198 180982544 159177404 294665565 997445961 889140033 255476290 525831985 18071636 459666579 961916359 67792724 873420562 44439180 803850906 518542101 71446681 630516545 967769524 356498014 253578672 404295804 573239232 180191582 70424495 388205033 268658459 124141041 797824974 525961100 579935080 14485092 595968422 976308630 167231002 951412937 712689080 497287941 256166031 608997656 190561378 358759710 215031910 520109414 982993316 599065789 226689437 183814037 316958951 340359092 240541566 552553974 547469963 550305679 572727315 913835043 513213692 595287138 56102046 836731345 113338329 289464774 285944966 283124855 201834491 201418994 849263910 674836361 355133813 704267727 587820877 773853548 144574159 243361382 468845145 955922984 48569521 576773473 422719012 385796265 508558156 591371379 562946430 30434025 76634561 106090996 543141762 906891895 530469133 363071014 456812358 410756910 19850506 285057196 412560788 287730712 328217675 621706542 171894299 720037303 254211496 965651956 843828253 144152864 90830707 668840091 942597431 869933914 47949821 692968557 102435999 923351438 977820560 434087035 909668527 676500894 520450160 185271648 86293006 742559361 142116486 244331551 166127537 459610651 381568566 687152537 577112449 381521605 960871701 31900323 280142400 488085893 927990853 647773794 721866651 367241511 628390436 286541899 847935256 718230192 127292915 162109950 595482205 566748996 410889582 730930367 624888617 714759539 800345878 854571519 718666942 253154731 532718890 928615279 745507518 626535241 949013794 229815769 521045453 635391697 789673435 532389473 982572004 53894660 546425377 755788520 523001359 95753164 964723602 564868686 890748814 983325861 20886121 173253162 935155781 572560670 125353791 333584189 597787489 257915886 377488070 777959850 544802615 621109523 561410985 37564125 87775293 399840763 520036693 415340884 257145369 713579116 882173107 630011143 263967487 412814723 436470010 183957545 583353114 568053145 624133213 470288919 248386735 39455189 694177514 849521385 612085030 636317512 445712559 769576402 204295532 5383868 173298841 305536205 465285634 771273498 977922475 791664796 999950048 162302817 575748810 406309107 135487937 35689157 231309819 6889119 204307447 305374202 345280700 63772619 627282905 993373903 236470856 712974697 165789404 767492098 765021241 731365021 155285666 41193035 5319591 425673681 498109438 453973313 718196305 233776300 601810536 468585904 263536820 934115253 874342249 923191314 644881641 317154672 45074442 872951839 531994237 644224101 606411321 423230694 661553467 784373187 336072553 441888208 764914127 125941939 159644818 555225292 327762683 12883039 979259039 261696869 293281509 688973707 541116573 455650139 524442982 392548242 49151798 923255767 438152201 925235545 129539648 571049688 646676955 889176711 271772038 637616874 793057822 175340292 588356710 374153055 509409589 947782279 117927109 245528943 52825636 695677331 258147046 410913609 708219450 572780921 595806348 162671194 806098413 921809341 416884233 633548243 550035760 341560787 660742057 765452980 843355959 146289480 900843363 408880034 615856040 568586763 129822465 464117347 439012647 546764679 252727246 355372671 827590484 894579513 455364216 409590264 724495999 105856459 391009933 10257479 956111837 439011655 918578002 342462067 393740753 675436881 238714690 959726513 207262046 10382163 750973602 988542315 650177301 600573587 418715804 702448728 219371642 263797409 314959885 162856674 205630187 968462827 668359898 203309666 676526511 333585937 47718441 644868598 881146220 729383221 167442729 630979845 157523894 71971499 791720422 105791906 932367481 974866199 4877693 692634132 43199695 176122167 953231478 894693956 638252013 102022148 377855670 752287536 423682032 362670508 887690583 722000202 807241331 783526802 730599477 797777803 920819383 699059829 914051222 673195362 409624917 243702820 485875952 144377325 731105679 381643276 788097431 647973694 630579439 966045858 932464714 351035284 297509157 220641818 794861256 80160295 528049486 242935762 20906498 604854367 785426006 214191939 50032264 376118979 146570824 250133318 907721473 911965411 530780837 595332682 692030715 564370051 838624457 325021881 709459431 936767593 157512209 956805286 227753746 631416944 861773956 174233256 916268352 530327166 796416331 53153238 331990995 31810868 77306243 643919829 673910550 817795681 372024015 62090212 671453834 814850719 844901222 422236579 544598286 154652149 732311789 413013850 696182562 44400864 632619789 24761821 191786965 1999580 176979061 356905428 670561816 283926088 366790442 129331548 440701693 571322480 630796219 126290985 895729116 509563816 401928685 499883059 836707227 898704131 626858817 560158801 77798509 157121544 737368247 170657332 57727505 477649441 735672309 75086847 693650299 181366406 899927818 883569338 640957448 195038134 249564587 163079763 8205971 47007868 332478250 387344431 88136711 283208372 407072535 640260465 746291216 44870513 94116849 817125112 541996330 557172278 473318102 496569821 668621077 681014924 895099253 823192978 403329117 947366290 915076270 596563130 312002713 523717958 516803856 985106028 44390582 488053167 710248766 536427147 215443763 897385645 144896503 646749338 907651130 69196333 262087785 817954296 238251247 485560433 738738220 653548966 551624898 363728575 339692453 983562165 604650589 147482810 704533910 670602324 239409001 616960919 106016202 174965629 977247784 943095638 734774878 846543399 389051052 730271091 464750860 991272719 373420016 493480432 679595403 747673569 380427382 543378541 694772383 319044458 12817594 102799822 304725958 648688860 363942222 410485875 161115402 958517435 178828790 161608361 154336669 511731067 355590103 225191279 329642811 946644055 944387355 51441983 880415858 751704866 265085633 400255946 796846852 615110061 382154870 434646410 705382306 135393713 797099591 874325585 576617943 602954392 294429338 895286909 849733709 115421731 265161993 683905342 542783103 267235750 196362716 668339904 125958863 592730143 914967535 508902014 856464902 540718110 210362979 340177969 368015317 149124326 105425889 201432265 449626998 752431428 365642745 187824003 758017061 411858071 175731393 67688017 629193808 81189783 820389748 176917794 905009871 503416274 912068883 601851799 483981296 631718356 774551684 350821758 156862905 72923612 338893216 971883182 991556486 853826040 236960195 562527402 827821498 931422069 705201397 679276018 345652120 248148809 271858080 730557126 474833787 403878606 346087146 913661663 768400084 961118380 681479090 206920050 211974155 242952432 2510536 904643303 775833983 89228766 209761536 865083669 289413723 404510730 932126014 198302740 672039860 386764327 91584650 785391513 496185999 663712507 627090206 869769805 325426640 473170704 133590894 430630758 301452616 618419058 977073787 29890827 140799073 980583339 984973344 971505015 449399225 969762540 432949336 15555777 226761309 60846837 10501441 479116501 477756859 692043517 573045468 92651038 97058495 208303256 749431231 863335981 203582216 781867196 731055117 132957762 276352486 421946796 715743679 232644604 756424015 256501305 910708622 544535810 724264627 740948779 364919490 743147622 335598732 620468827 346356095 960978042 452574336 141525679 134199337 808943381 947848632 725303693 829658270 742370714 25256631 829208848 72284225 416442711 954714762 593479959 27880733 72819979 833225007 662097616 811864100 279709696 584308206 278761640 295774236 810972497 29576892 549792771 320064516 715849589 833475201 930610591 364809975 480254197 641550154 475565609 887700808 759247296 932400744 383247261 667484542 234624556 75428825 342207133 692238737 342715002 558143421 923457924 875247402 517238293 184456900 774604450 107041591 696773628 67881006 596087151 720706077 81437543 841836271 826163275 77109384 785350330 84369252 328564224 31314412 408102696 838020711 46905728 134788764 326025109 344419171 524964665 697501790 999376441 657506683 376174859 279276235 552980307 85639634 53046553 960066849 395454415 428654648 346968077 503366221 686506738 646986180 581988430 379040580 652980853 208993370 421358970 451362879 929239603 257607669 662977660 671207999 906453146 391600210 656987103 779225628 680272593 847890614 633749826 374403302 290896983 880691398 527957959 55947223 357954561 717255787 434604833 780025652 42456643 97251949 866863680 584249532 744783011 138637520 532668032 763629933 75659103 768696302 924332526 414236530 421094717 520726932 350212655 677097477 124331120 784167695 279144163 115983584 345577630 491231296 876562193 891538743 582659825 265126831 385643241 801605236 185315272 907996581 780804387 128127537 404865249 55904035 470216376 177313762 10124647 454985318 234774941 128572913 890782727 77257193 262756129 896860828 668109807 642312906 660039323 125799200 135365222 765629449 965232257 636800247 599634907 627319335 172615138 861121928 672011342 783153527 521586336 922019893 176076770 897732589 357640377 852743952 458108153 520320602 390965428 590669936 654626132 720104519 769501213 509145701 41320075 697777318 636194046 152188723 897746883 385825248 397920331 338090155 482672096 166391254 567563439 483729978 36837688 643638053 844666451 299629995 648076062 823276203 793176423 736511768 464277208 988327480 403453717 583425402 688803531 677589401 107498186 16730334 332186346 25002151 248343011 176737649 843982032 852116292 95356291 257409636 407930715 347805339 715337826 102393700 767760215 796740694 896267841 85420136 723182165 950925966 249064026 842488246 458251822 137225433 221097767 717293660 651435116 6763195 229690231 493535703 25186056 42425590 361189791 500628316 110632777 655729287 706050341 616586276 814854243 791300470 586279111 603809404 941367557 323684273 905153912 744625112 648733986 484722993 126884645 257426296 149394532 50387642 65726894 210270581 484499346 292237951 255015886 583927419 688315710 550548084 956400079 549178426 444768819 826108888 48348071 456014920 558721191 21270439 199951004 329090258 661873772 42753740 614737710 472071745 3664826 946248586 710015347 674511 462805116 105073326 291734925 306631586 627760594 589059973 640232833 484297421 849258963 995561179 994875735 455314135 890648804 305288437 808941117 649623010 133137475 581262552 357979027 976095968 456192503 179368263 677602494 22953349 758419594 36207902 668767978 957944895 732165139 321507954 305879765 242858470 745201508 419383295 248549720 500850861 868511355 609741056 446167621 185061993 810106351 30008282 716883920 767185919 297625862 175124207 721940381 41358982 252865242 471671209 555604764 488017831 951189075 374289283 485376691 61236320 39455839 160425645 682809852 625763413 657787277 391080643 168002912 162439566 106155331 805103607 50319986 700105766 451911520 483043372 214606027 599915994 623938725 854379511 821697546 442813991 746595671 11474925 350455722 625573757 262258401 54511929 341024293 791646643 786126893 286811747 234969055 987368336 790729592 687517414 937975169 623066963 20584921 32400093 406727777 850303980 710774831 137172525 758554284 836837744 383072415 682509833 932666074 50499438 772330639 953563725 811963275 898912522 495794617 780903731 882973208 254685202 531533404 730211295 803092452 987585262 350751690 383454612 238567403 486562769 892628003 885389977 69759719 347542336 29261085 929056200 886938074 835804885 557588277 765330305 724257264 354336716 616670209 560627021 671342568 144859876 726199835 625472288 673768299 875501517 222323183 84390528 197218684 478649776 823685871 655665454 811785887 823635596 13310918 475211765 477193476 868630693 896180263 188434687 613487744 16177312 545182343 67648175 131832686 893460752 997346990 89708891 268505426 692066882 523537046 718815527 809059713 396671740 261946822 420257397 605573502 418275389 315257196 279019141 9719825 641890649 320894109 852043868 932770647 405502736 209035454 299311539 373698342 841169181 66504620 131870164 46606834 878707903 745998647 26379947 694832025 87805938 867144163 267751884 537747630 609689876 7389218 550923768 117249385 364175892 544997602 617572325 487965317 429162398 5073339 19815048 539591451 372322669 688419344 163302419 246838767 432660383 144072736 802105309 528648834 360002740 133338207 154470900 326505460 174897455 886166853 518706137 600993509 162368389 116203180 57833745 369934538 300980361 66049044 437766494 424249303 860928084 938715252 578455915 217940067 930051672 614188212 713583556 193135857 37563030 711898936 873479098 982649339 674516708 141295855 127967070 58833673 237232554 282760184 543200982 655719779 687124911 891390074 933872366 927978081 612917426 823779336 57848945 84626930 647143383 655146549 952972756 122903907 71719048 94716722 893406422 424406339 732215361 180642096 140715951 193952863 318093318 556400289 90667251 822722226 207760299 46064830 884963913 123854639 501122639 49497796 529183778 860159483 917727517 348633575 40872106 947792069 957744494 465906701 922002768 317772297 747372754 655099097 581403957 423839420 906279871 610737423 974872651 429707333 23418776 603534498 208886830 354391815 991777614 546797762 183595573 149928232 173272708 506793378 434583319 161848643 637075123 379842612 44399203 554538415 286458152 389737430 719025541 960802057 223851559 874487363 672501402 912985910 650824808 48032727 84287255 582027564 412471082 6553543 654274618 703951535 949620187 273969500 46214506 155029307 983423977 181456709 889363531 225616687 909714397 439190339 935711169 491339595 227126521 700292014 469591957 105901469 987434093 47296145 85026487 36779290 421162871 146447776 198397049 615409818 289926472 803222305 755003471 887199674 8041707 418985367 599766928 63976833 519150859 214406553 93690151 433333415 569584090 702342531 924962842 316082052 281677215 681580299 820164943 420475288 714830931 99442501 849020680 984837248 994313885 109851462 641411036 905160822 937709486 437552409 516862424 35072393 760040936 718080180 798249443 469863225 535309944 47701315 138939102 905782582 511494811 626302106 559532023 418433109 217749426 119314454 985783374 733623919 442249596 514093058 399929607 274005144 580884652 956242051 49488565 682607623 590181890 776744442 990844689 435210320 836559849 158121191 712038578 465380890 205757733 764053152 150475665 9531024 559744990 95406414 958796750 628853959 117440265 561117032 827751314 359284274 837888663 270856773 922410208 426440377 617167945 303158210 302925384 131025315 397759601 260837640 455814545 500004741 597772009 652887969 523741792 473569885 683331500 83345722 315643818 956736970 801293675 800611121 636461760 257775040 978498725 416788467 607070596 636873191 855095072 728286537 61730092 659268029 28048128 659368451 959737494 441540680 868186509 148171954 487765324 226111437 121540814 347196693 138326617 272639937 258321223 255014567 114604736 191317586 589365601 629355641 210265154 506377737 927187481 779542764 910512921 164820995 84221673 436835627 177089050 778435335 253449994 9541703 432952058 347328509 753890872 128013343 614415042 275276016 863381043 480102654 501710051 362288625 738125584 595484168 645109837 12432356 171278623 884325425 161056674 382903958 798831867 290293670 296665325 47462057 543320767 834157406 653402827 618267372 991885600 593972860 738147687 863543765 418868502 114113168 249387808 619722128 609784536 959881032 599642308 226120988 802777181 252925428 640277793 820038917 897009247 759150459 339949396 236764245 537376946 446127890 897207042 541607099 957739383 82835038 488350410 462054733 427071643 534657153 937835051 700029312 968354060 42637610 161044304 544054582 582614718 529708615 581804020 331219421 742524820 973979916 642302466 166516662 75761237 524236657 829500322 817630600 543926126 638893962 177509520 398482975 410115838 871447132 649503789 107879613 584172641 325993655 176879691 387195 262414834 52024931 505349392 696331120 703208001 104067414 128245157 797136369 612482851 189800801 600089081 412889329 159428151 212863332 788480304 613477252 784998527 698883512 8074300 331564446 310129595 843024977 172896884 910177983 391346884 536612954 341185817 922276674 175550482 69237028 442731283 750400868 867171609 373238588 191671635 105927600 84217982 466849606 15866974 998588519 195019554 400221221 62879791 858137650 585811008 580177665 794854371 164117667 762694500 542181088 875753932 76322121 877447728 312232947 229458027 8032157 6604674 385937889 214818184 302592180 443604702 323888825 18799023 170370562 318575057 355552800 821791651 577495795 653580393 388251627 78008576 118165630 613608829 242205529 405531789 241069416 490924879 692286176 854775824 162567368 697816374 323951719 52354513 880031116 23054483 142951118 501687923 143450855 127457834 267634959 428146635 997474406 416874926 285494083 213521398 903067332 163518408 842397204 427730916 335211837 33750418 23444104 756837766 269164476 553910572 214918839 134242298 114342275 173278977 136253789 901435895 945626227 752368225 900008071 526661157 790429297 334111483 989041414 944932200 39596951 759127470 970176348 249058336 795372245 771004644 588700702 546851511 525287100 339051623 596193717 628592362 243797869 663690441 418162258 808896748 400204369 804975289 249836548 300226943 719655780 34112253 37187531 465286265 596665929 787023505 268921095 488397569 758595966 563688487 30768978 291496487 126143367 823881351 988972536 517534218 863038401 992574749 486341321 221863689 138389418 13670291 209429559 115868532 28739206 600350898 883287859 663869798 401600444 903539012 441911732 793005836 696763096 618516917 303881543 988436818 478652864 468362820 478084743 336817807 160497163 147037748 214542493 555709558 74022126 900138210 975810747 725422095 510494948 519144947 39883112 320714806 702840199 787753336 595697793 879458424 300362695 729608586 11050121 165232666 100575905 920589566 608174860 963168706 344391343 334064194 757645912 403062318 152956102 850903430 761821902 884789887 317280391 400167075 759313183 631540501 307287668 524448648 992189097 548276124 158709354 920827488 291059224 288873104 714282809 686192094 808845824 979888811 20378008 563129881 660460632 914094248 503192694 476644306 100823495 842562669 613294287 610001189 602133263 789455485 859829786 795735204 856689745 253089255 757241954 808824328 300360036 347093783 164309164 857358330 962535537 788691108 570781170 519928807 84188048 582453113 579612857 808865574 197608632 377903040 527109588 138635036 474097911 645257734 154096533 669292338 490427903 438261642 446181130 427619969 94640755 722192187 166530996 284153995 794624884 617144484 644824365 168507097 520416807 406123867 984164345 560788268 234687334 946278572 38525280 940496584 372883433 20321490 159426516 143097430 989131616 670505187 965780039 919807451 839916294 739997754 836571164 835823519 249493471 911999868 469175946 865836651 899592845 673240728 94800723 753023487 717104798 227338243 828715860 83359145 367126129 846176886 768871949 240669572 824200321 787273343 965783677 627084210 170165360 963460635 178216913 692753680 953779418 880598504 919050622 109002505 890598331 138322465 483113937 548861933 997153847 777948879 658510007 121682432 927003846 344562869 273505109 886289729 572832902 971033636 756880592 818576591 300874454 830278261 628438672 989880242 617452287 515841539 731652964 368629995 86915907 743246675 537257900 703345354 809282169 143976351 29980861 420516260 480706710 268771519 904689357 215131697 179565665 679894717 843805114 506687192 427262827 879657317 160649534 414876502 663843548 571978377 219206126 470374382 101308241 345208380 309566035 233307545 495438736 405278458 504680588 612849655 768297618 308392652 451472318 45502279 556921267 265138078 543134960 586826308 167788354 765070517 726055375 911536355 347984535 694686879 187756359 532003671 455367014 826487341 646121377 598570095 299274588 106061328 631580488 314532550 233834041 53914793 57262332 672700844 281079805 956307934 92438417 763890670 424946683 167967017 593630331 540424695 597091368 704328288 852794012 460817514 490319729 967396296 79644310 217625349 739762318 580898188 871638007 581912525 366532044 299290360 635130431 414429565 57339117 320277980 605075446 398303577 28154430 108227002 359423278 886906100 783099691 839842093 252394041 324934057 167726077 557326997 64446049 72417581 15566012 655199904 538065582 711837492 303338657 421744708 382490315 547897789 492747414 107088544 225071448 764597152 741363641 254888416 205831558 774520988 464225519 576812453 90006040 109875712 343547124 633379885 444650406 617374888 524980836 28818677 175573034 844300985 722919279 585007362 245966657 674388977 540838879 656063491 677978618 496114130 743783277 500447247 903754178 672515074 315962831 284321958 279063864 799164697 137032527 431117648 315028510 996863673 750615987 572699245 412466799 827938045 669136957 777380484 867056988 674175126 926453825 930363930 202560385 349921378 678446637 393599971 511577249 173147265 328027630 100230501 321168399 72083495 897450963 198973251 400598228 165779328 241493473 746011256 689910454 780547388 270200396 197309702 804497417 511251680 457662879 123094608 84472967 993180289 113260793 576697150 278249892 292533041 735524241 308534323 379002506 340014901 557045892 962065596 515266649 188300840 195008367 264963988 898277982 760952187 986197631 825163792 985342919 238896952 427345497 76240203 386792635 923169396 498366126 885646328 290074555 494716532 620219923 844011190 103775141 173427737 17728105 76350301 928719256 716022340 221569461 792223670 635669026 710265294 219724130 54595931 842052594 324866794 859111580 725746060 75856872 69229409 885297929 760599519 335524176 514626393 137847239 943620040 690199389 681490135 155506355 191395682 538143006 162372399 338513113 374463270 617196599 227621578 821957969 684949730 232083729 163908018 217436834 153800392 18925837 554839203 863724441 130214045 952386315 548913093 166943638 942119174 237017837 608370829 445611819 374826295 629497511 797041228 400164857 991096436 291422909 804049595 72867442 793862933 409139335 45761173 930168294 898655628 106278741 627327274 317026418 423462549 733256872 591241310 309866423 428755119 866426737 921276474 466394471 494185732 844247004 626197723 892507466 939880783 335818853 50738290 721157150 770900139 534988165 898739421 987639840 953657869 714893848 474240142 540443924 1625158 912831609 462108596 344603117 99490348 235144747 569146072 595938308 212007006 325714114 510702425 84365191 640183637 26555173 87631724 52655444 771492125 596747237 696994939 355262924 652647904 579719444 448420624 522891077 353566545 208684978 519940112 676619958 447581567 383403699 726510304 995561244 302620552 243446488 674250652 437213316 258449284 493326976 107597594 952304770 284193215 194882650 785958287 105596204 617422427 715106366 337820444 510741102 70465757 375039358 223567098 570217958 382368433 823253050 336751570 637697154 439444563 218141216 956548204 869314754 256264097 435754631 23620034 761660533 737155304 177218401 317152191 307054379 434645334 369492062 518056637 905058114 792021924 613788123 967579950 9887235 656839984 299577800 63084261 182335953 976198146 96500586 631511160 122243729 284731352 161337642 503236433 586607760 17695229 302107046 473308750 5320206 285233486 964817353 455718998 327504858 442439072 894129826 638035980 383041501 112910932 574349000 244747927 719884322 365909626 759670804 845037638 422095936 631627015 378411690 814721889 750205298 291047063 292406980 111407529 709097754 220253500 796252337 5924530 411296639 939470444 32870131 269483787 420303870 341626084 385746362 4133268 195380092 444076849 528300005 573704601 770875683 517112246 706380112 2058450 262325723 834120676 884754988 932883495 30183015 668183373 221387867 157361295 345684210 225086429 934837729 950247124 229330376 82497 848886471 18196415 350111458 694030761 437446018 170475804 209322900 201190840 309439440 671014901 684368998 784912628 613321242 748228007 645315902 865531779 222263121 755689801 444262189 253647153 744784307 587062153 305847537 191604431 996101315 194180101 574397660 870316025 713608098 429317383 948640143 28681547 813876067 999780656 445674959 935737422 395340387 53638787 897787830 669888760 528842013 48680071 362914044 578957713 405737845 738140 831467399 254332521 707228895 723809225 67121508 890416561 596592802 33772081 519662591 758872352 497398838 664358249 312782705 801360991 321099678 408332483 329164053 528546206 29361331 118969924 256765748 101484817 310114043 579976484 478696661 549133341 122674158 5971303 93625773 513401151 246629146 616184680 222376707 904257336 7340929 722346832 875665103 476923869 374129079 518197533 490137051 347222321 123377542 751966069 764150356 271245958 320304358 455781422 73831010 302052003 277109779 874544092 652601980 586087597 728551602 719490204 808161535 374605686 218504194 946977777 647184125 907104292 557670344 706812497 113204291 30804157 607695956 821242146 481756234 855380522 28019776 174998241 430649129 708076432 353746612 509805731 887930882 757360355 566835195 432081825 422960761 915268853 724875230 107153774 774187001 742208577 458322796 667007511 6226536 103336376 597304860 284093123 57595543 64906772 511530387 619803170 280125430 834058822 334550428 302852815 783594910 121367204 282864666 421996683 486909565 65683684 148141819 654964376 247589713 282069852 954485155 810814312 74524627 319633150 230764846 882490821 439724153 38404911 424770726 182020893 311027853 835579937 24574073 226055521 555974899 914556372 880541844 942300908 891448146 186809949 476007840 405817569 503172593 685970199 471778353 607446669 638181494 833629865 95895765 67800406 841408273 565493771 232110458 412203441 346631444 93341724 978186695 367111147 976002031 670003711 46382881 889521433 688819661 30232423 44674056 557097849 568323548 329783321 29213147 770895518 703345524 809538681 111318196 863127132 126988982 883127053 802101355 816184815 671793594 452184728 970309278 667864281 214593076 712016416 834128104 165022827 454555712 957901521 700750940 514622772 39993554 817421213 536537975 75124191 919529455 465495039 243284971 742610276 575527302 596100782 872609634 453101395 407908907 988019504 78932773 957899239 722700084 371103956 92057423 859801914 653669641 195040975 389879107 305340958 630704586 124229520 503744757 791043341 927427947 953563437 517526806 767230271 538932880 976455174 961645100 571300795 24781813 243061891 342755517 833029537 608740826 505588365 645414646 626663609 598085735 234151755 813524065 533739652 706865123 40173387 895185866 21713852 602965280 135866584 180660444 270570988 834223530 601865259 933922559 611547817 867088649 508910116 890859395 75021446 162735576 189145389 426622520 656273666 477890862 348170551 532169765 191295765 584698623 614861639 466029264 912649744 461016770 246274387 936833167 812679533 48226753 40361598 901020517 328304609 142226895 684298808 429481422 13632756 856540012 916771658 445881903 712393661 344716458 687678334 144972860 94239342 68946805 534506662 558700072 498267301 48479189 23777392 723824289 483389547 814893259 946968538 188199761 537975677 414845585 176961496 8059081 14102049 308741492 422937852 388230768 887407299 769462427 588589061 125396093 108470075 676536075 748502194 295252014 71331172 696259309 754449370 122081553 380283299 490700 402351086 208021434 97095719 31287902 947251386 552133811 991524986 381247432 600752757 762970084 247645552 522199266 532511031 755184902 735642722 489158068 360338559 28795922 604139470 405164110 191918777 523023030 53185765 382215887 977781898 179240235 442004933 208769518 612283893 690606746 216281967 611034178 972114343 561824698 521229372 214944215 440085242 73558067 98036598 354178444 676102802 492234786 621084725 234037109 187728031 565364638 433539737 79203419 586851583 464200784 877493070 54380585 190450887 741464383 962156723 717890468 345287654 61752782 710502997 233167440 853905007 480570205 831808709 946276269 486270489 754995350 175015318 84915084 244570028 475171432 77627896 480557526 53374301 97940279 303431624 334171733 876171625 506890164 142049539 768699578 429749017 522081419 400024190 838468847 753774317 860777927 134240206 114887584 550849544 650600607 73340356 485860914 687452165 815222971 422344801 625467050 133709258 654782893 233539305 964478748 54040852 834993621 756457245 558651809 746528418 561603055 119586009 978504653 135311281 853667869 276593103 433984454 920726585 674089099 682842565 501988315 8577837 56084178 441807573 351019862 342157386 490959774 825201943 229140408 475914539 175336743 271568079 834821736 800115129 811913034 216553540 114886934 737310598 876724225 95170447 139917394 304993313 759968372 623601534 375324364 169511031 743271718 690566099 468643118 387977298 756213286 897269497 389269840 214010016 193327977 711465866 371379231 338548791 728271105 77323867 438739178 3344613 197167793 455216639 280745402 721375345 408498893 39458978 3007943 461151409 648980141 742782237 457886632 905598847 868099439 262945418 22481022 967228349 987606858 580500235 621011465 758544093 500566093 684251292 242884311 41985998 450917719 362719925 797821426 537469161 98967159 486086871 883039677 651938328 820322820 446919784 558122398 411565838 18264676 874063703 290667791 397226377 448111482 669429100 9837698 175153424 811875685 696508788 304815444 418015527 967682326 341076525 303929380 403608664 219145032 622256412 930289093 646994008 729140212 580724007 641861862 298472013 873176710 809548173 513117480 260972639 859155020 312726476 526204542 164525115 305335730 899934610 187251420 338093905 844311313 550792184 61941244 484223004 17065743 994048944 908807137 580096854 835243905 489529190 769357284 67191403 269182230 554577010 373465008 781534607 626347372 231543723 462741008 58478985 990874911 941901683 678797379 76138275 979402266 560284727 156215209 768122614 330751994 162176239 167301304 803031533 680230044 796099500 284529853 202194796 436651122 13520599 444215909 51614325 459500617 25893167 877459826 246818887 165773904 346786070 337127329 635519378 619849860 312300088 493397393 792234417 907711568 986418344 168823209 812802955 898350965 734879151 564109100 225292137 883993991 435945896 417783483 88062404 98422560 875482631 256683718 755167830 208584501 459029910 127510800 1016099 580613734 721050382 320764458 769811245 648610874 13763870 887661968 421317679 944491235 271599711 74143878 241568010 662244255 317732238 290520223 899404681 486878401 358657088 825895131 999670102 887123937 905061920 873555589 388969357 119431578 278419700 58087867 619850594 99100187 856301124 74808645 798539317 998097488 68883049 374963676 218298248 779723624 463608759 690232509 523618152 918751806 611010307 794206545 169220133 344982852 776360872 404224046 703231933 891430016 930550920 93266705 163191564 229718332 73469280 943006019 501359743 760802543 22508533 671673047 456225424 293106287 185841453 783007977 334708645 754316226 54356879 85532791 352524577 194335257 406557672 738664377 104070601 794018679 411916859 589576096 329806855 277351085 41548530 400839824 374262952 753734987 408143057 762760072 659640498 292671725 112550295 404233792 487242291 359695335 936692755 535599703 727932963 711101216 230932369 692865030 963169645 160158701 483379039 917045204 821931445 617528843 663930041 522343885 717376174 734469332 708228521 180752013 689328013 103724605 395021571 489365606 509643653 836466461 888584265 447246635 494732415 964825808 304801908 551532443 206649303 798525985 871188766 261659571 266220015 243563028 832547675 563229402 834690856 980887314 12523381 796155883 988901032 981557111 808675357 643614020 230115226 540114194 175470039 780652557 161239892 712933232 538000187 595725087 170360800 941036696 451943619 399306373 162543557 964133121 937282204 552865721 533093598 199913770 257879513 615511447 790120719 159755818 964099528 282159624 123248031 241313090 868954298 340224113 909533630 115763388 85789049 497178539 249538049 867231300 586035969 986261555 382909069 989210181 524574634 516773891 159837184 937480313 695413730 832402884 793515762 994609426 109053633 477955270 970759267 13869699 530069426 795040388 519648145 966210876 681699911 683696778 466188601 956837442 742279965 133155038 2103611 850464847 436007914 378125234 38682410 522785021 19914911 226146746 629248942 821616027 664024493 115225923 549565113 909832121 184377639 724560203 686689111 988257244 83396344 366025730 801940305 628144211 437022017 806736174 437727697 650730069 100963899 236547680 40057339 678297789 962248099 365188512 975062426 904314553 886258008 811464119 567619306 121296658 997370581 83753308 224283854 63290161 62687324 984311431 70409498 347028253 352157409 363363401 729547818 987422559 987814781 370434116 472698485 576603285 955823728 492169749 22894485 818067192 721935398 283192041 210619504 759374252 773001523 353743441 117059764 888188798 473706654 614257439 951882227 516482265 843053322 509987667 29483034 78871791 551632787 987805228 796008714 569310814 354456491 99838732 323336842 374337256 509494223 917729605 927520520 717443095 553178560 489211745 896599230 458077848 45665178 499092690 973904313 185085056 134896877 431663151 96821183 919099707 428869673 860341045 550227300 468787905 779647 990463216 959151557 137867243 351875880 416052854 122246398 864217875 128959494 892422597 15814466 582421302 361913348 136940454 958217911 683005909 515229421 205669834 976316904 235215780 863782259 986504543 559824253 488581764 557661688 105528676 951042715 512258745 673993480 425080750 248859538 368331990 219753743 136406170 101121268 628072873 993144768 198320964 731260358 812258724 501873669 872416104 922547648 23389172 623017583 976431168 532746941 685751829 189858831 477288180 802988367 596283506 27969057 778210209 867359004 762466229 369478563 991960368 836741655 746441968 906241721 127488929 288697485 762369408 516355741 534415521 182048193 889634146 408450658 789323430 7800892 485841662 523046229 568103329 539628999 926159253 758049993 716661784 756162502 901695522 61712453 75222174 206220137 954446150 3135103 381756816 281845136 661951548 93760 449803050 358534901 818125269 616740819 511850935 722744711 783953534 748287160 286578711 728904111 346127409 473295954 743428867 454050630 894451213 951170109 394017455 930455394 218943265 561454215 720548199 237015321 692825798 277916979 373254101 663280045 299427901 210513736 989927190 815793921 572300373 218608933 986022423 716623060 727907684 554286516 450455863 158037078 782447445 594487295 230726242 832877501 359992039 921490701 316846164 551121328 469628743 38989800 383813674 205744830 792216009 955324693 297083774 273438394 376939500 843793883 195880536 757275246 246069294 433529266 764945804 30680293 317959636 495628795 200044768 659392706 962536862 79400645 218797684 868296629 723264752 27322148 150103187 846545067 785998329 842660416 879780364 626064581 328707247 762042267 918976283 574488737 946840384 986259157 270732555 437012855 546827115 855877689 875402747 808577536 846872233 696499754 84449848 283740492 708861945 744893590 323935430 574841333 803415359 888775905 883764460 94966436 529537183 439405021 261898365 582341928 218631302 889118408 513335218 742912542 214155228 479491377 547151191 214649118 80660182 940984562 730966889 30242053 450931366 321169688 223310523 598165579 214052951 992860655 267195268 649153950 298758717 412428508 687588861 796705142 243266204 148235841 886912766 506693291 969894787 798906425 432335507 779843557 374092720 154485942 598573882 614399942 406650515 689964835 443251530 317618926 555049274 177817604 745700134 419461198 830643327 168907795 79380802 865945251 708536498 960457698 603362585 870918243 153344770 352618393 293479926 722386122 5144416 501202994 966960278 929847390 585791510 778350940 392320109 218642338 763322975 970321723 750515024 507301992 931606898 633489479 808575018 813039037 50326536 999811101 400974854 932601435 22343025 537479412 465971117 94030279 135761380 577493950 698843899 31189573 952922881 783838948 45018999 909325660 634853265 669219517 146943365 221943906 955129159 520602892 361956177 897493243 609842277 437860938 174904698 667884730 248415240 854733041 477781562 432814711 386291165 563470990 424099859 265411281 783293192 910588086 366090769 888445009 42914550 30664893 156866987 761572387 27345122 566541149 321913411 143356660 770101836 627667728 773082340 634955488 497532110 193469936 233514187 548170914 180296113 600946616 185393963 651572745 345778760 348456267 273002290 946315389 833596705 193820059 283222993 901321960 698853893 929546960 700081270 699080089 570337595 188034989 843300480 925720121 668129028 797741591 970379295 530598641 704740576 676262070 839160390 473552931 292367615 764119296 55517756 85157978 332728530 278515436 65640848 733445132 936233563 241593213 127090408 742306634 541971536 847969030 11407788 261645669 457440677 132411626 469313213 559101696 790323377 154294393 873646483 937167680 333597325 773517520 703748136 767703680 62868966 441768600 154325282 259395163 231261180 769151971 488810316 523553400 374842242 318875708 892889656 166796685 632325803 754793072 405103812 880700072 290794258 154444250 31015134 206290420 377207649 897712160 363290464 901815996 482921453 682203874 748313625 465925897 917017512 450956776 948133601 722977336 473590329 795570437 733136803 669362365 19625478 339383049 242241910 801951652 533819123 127641909 906642237 689997538 257942632 18978299 685978983 913983864 798230314 515495431 83404873 67382623 169735632 626446582 919130006 215501739 206900353 440945913 567787751 522052538 556458161 65080398 648008050 457840116 340838166 22021683 900134436 194566297 84646779 55756081 660226493 976043186 259503279 708888539 633817269 741031093 820445330 96994121 472372993 849897058 22436189 305706129 268608867 569656934 292825681 591813207 235596169 957722558 872415595 979545086 205121262 634142067 750145044 743002014 307644736 167641993 961545565 93187598 549729707 535821083 446370380 945454241 866680191 926334274 438388421 569746101 34150334 962635000 744055619 377420498 205452574 730188355 740890714 288735743 287184300 26201098 562033748 451394728 232562963 470964725 116707116 861524811 473778577 418017735 814405006 37118578 756086360 318091016 119545107 660481793 884551791 986493569 629182773 821976678 258208069 200248364 38783304 492875363 501413042 949067555 605180747 92744848 437277992 337296835 61643661 546521226 370789323 310489128 376079283 937261455 821675456 667209597 485955731 33459497 586414740 700947244 878086865 613252417 272366647 162492588 12009151 537074841 206154762 938586523 640947888 939934643 138804672 945878584 20838236 820451746 405828057 489712489 850206696 745563257 523423379 671812663 332922666 492401688 470240677 796384018 387384640 339847813 349989483 621158066 944013009 313621217 307222832 239201961 579929559 49425158 834844466 958419713 570724800 59907656 854149656 34141683 599442831 105145873 458713803 112218682 698156523 818085555 127512183 782379072 737437306 556671561 151626968 775624214 266342077 632408125 288149062 388632160 628973273 247755390 404067532 464588239 616901473 952450121 638893255 498297337 265237273 298481150 165783023 755338879 838430530 156441648 10980025 500205770 475532820 968975475 251305808 998204829 861696600 14440508 602741091 231699449 489201513 636230201 323286127 176649953 28522048 884498943 199428590 474598202 663872957 494385275 153293600 788229790 441919591 949376583 803875031 986142817 958172711 830185079 264970395 137180320 98493164 380012712 104205941 335734323 873620865 834454745 358672577 233259035 251368482 817939821 907223723 719161590 338496351 931418305 895111993 737796209 216934103 413407621 400414491 372865842 535240735 212871676 756343650 716840827 4326514 286659844 762339001 66173268 697226120 978873238 32059837 302274014 146049431 646574714 945615142 840766604 649372479 88459776 438973240 543873856 702123428 288715812 309918719 4819736 197606452 100973967 895286398 755321227 602988369 980009184 433138631 832583506 658468931 833563978 153810172 170976633 268253466 536088094 265837876 68143537 119744652 901743350 185204307 79182868 954407912 907190930 392999608 610137786 244707726 115172679 512417127 935190292 131919038 599643463 86409225 686177364 871884296 984647852 922147230 986996167 594034126 287861281 478706908 426124852 982772981 959595870 262327818 883963685 968443032 688347519 474268256 994324280 16702258 718259911 78072584 5029903 789574330 432887331 591054482 810710874 783952398 394765736 40993114 570355749 585456859 826371548 439403031 4362469 712216087 824174934 487802564 476954815 774919364 36095023 485278732 743965018 43061196 73197286 982572796 738336482 12932109 523485893 989803656 363280637 930950725 531548844 884004032 96126814 68947510 437170737 277660520 212038861 303858635 301692086 554185278 46948618 292579959 825004590 704270452 35856345 676609977 644120026 45429124 854584974 492869758 324478122 833044594 329622665 780886964 649653877 976592005 52921811 397087137 824333652 58773289 270132762 589287174 606447044 632079661 568323951 408528803 180211065 47312393 884808038 79553 689466839 699776687 560506628 549751943 924215932 868582737 339241189 532852747 449010028 392138656 786993818 54727243 609058081 367019134 960704100 285565729 343316203 8146007 185705115 505655275 38316737 585402472 294335407 461486910 118754914 285201515 716356931 374369201 25564429 846775119 284245552 149097475 736207300 917216336 618132656 334119290 735959108 618518412 486765081 110132046 817409834 758996205 47579204 891031260 232310126 906921891 783013969 789496605 761275310 669995203 667460536 452413575 45747495 826774174 944281159 805389210 767065849 108320786 740216598 843954780 948868167 895233843 414665869 261644450 183818619 788392376 330707956 786903467 994643284 848377088 503033918 212873617 75048751 982275842 673580631 949082129 461629485 660084430 925906686 37494203 740788574 64871445 880098995 263052673 738596432 227315444 134724866 733094215 510025506 787184296 223710988 910128239 611278067 314021532 691143192 450582955 707112879 549885634 854396764 103969560 287436260 629493160 878083133 519362753 955200441 4180234 674353444 793872082 906767552 393719584 341628214 887389390 3159961 738701109 361774638 81696883 948533027 839759669 778507225 679083353 328917051 341024781 164578556 59789618 927102931 600393980 969096320 923380243 737079795 45482048 554590210 601959148 456252324 71402381 614621482 435584941 204493428 17327730 164706634 701262705 372534899 665561719 594182771 466974842 302725574 79028950 919642093 637874181 705356220 705872230 530277733 9482205 644071901 201979195 108360997 99425310 181538430 677679174 185473985 281741673 76021901 96295231 218378060 844133257 261945345 630909690 450216978 470143164 225319242 686932005 939480238 72837632 989862126 67946928 359593008 752785039 434479083 197822677 898867225 69042281 978203230 852158705 2658338 104359850 821920986 446219930 632472811 561050013 602264895 192459621 389233707 807450675 248715466 519235891 500466353 237523255 379567197 629588094 714660345 663191599 175650956 620220587 179578580 53978032 947998591 73028150 95000390 758600093 89759958 548069887 463349238 348380784 54432751 688816844 368622396 86011744 988496950 48496086 747764026 561649711 401968794 297643280 118927486 883166992 441262042 301587440 448314034 404848970 393218425 115749508 811175867 373093522 845205299 372482069 647064379 709063928 501274783 980529709 473817317 923798856 339159143 997961617 921402704 27996876 146455085 26529529 354398872 430166882 330940753 110373916 142016986 33833939 983618192 344104611 635390738 374903148 952917375 692932272 303141992 394684173 395710625 902069758 640613609 398939591 570148652 410754556 227857646 485456140 281065057 307774370 105147684 985496911 232191677 422546933 975748632 765036571 769819935 23302893 887740548 656457134 738985214 143467096 486866376 19866779 592248489 750190942 588481880 212393527 85945837 189623660 310828303 234577399 978323112 53445800 308347043 447351798 514291058 420319102 671205074 416289088 107786165 865166145 12455333 536900325 610100021 719467119 397931977 503804269 910359203 610902927 275915485 167377310 170832473 80133671 911316202 114479663 727093678 735266199 895691262 608639961 819396532 302315839 136405109 63695956 808788209 466775788 674012741 675182767 811315215 29514680 624192545 23290936 453627468 315543969 50613106 468959843 422050604 725194287 279281656 904432786 639599833 220058312 447359541 205514793 825150361 334767854 758887637 416962438 518470311 991151701 355496956 703481 703467274 14837268 526191832 457218525 456936111 397291523 208846765 754191433 592194787 659522691 191051961 240569853 427105709 623822280 817908504 91920 559637381 409302464 980224501 161837708 313507984 664095216 526316017 832548799 296309172 168980359 512164475 755702322 848666329 873601549 815938671 547810420 81894771 667355078 84327305 908175038 630994778 610507208 63336556 172211790 75451753 592297338 338419399 92537136 652152766 114460303 133905754 798385077 85184556 608797622 391526394 741787411 651142350 561494879 380548519 806949702 664935591 387446987 162139107 977751397 646805894 133771400 833053545 272862270 400691496 618961603 8975751 271072132 689709458 3352526 494456741 509888399 554048476 536798478 432350429 402408444 856759043 333416157 122399750 604907439 975033899 980099054 449005202 628776101 909952384 214205996 997708440 315609550 382748711 544633872 157167597 883486412 391242681 541252461 591165186 429563226 253844455 698040559 488586896 740739191 970795632 912233381 771595741 16082727 815377797 707592661 301199471 958184603 731419539 955006662 38455950 610493255 89547641 922293195 350936709 173480122 775210442 707054739 992231562 563005586 918029273 789859273 548445339 971881877 327855377 85726066 954719296 521331942 226871134 678385077 785264429 659901065 413791803 384577943 267388906 255122281 792387296 883946697 413776506 528570417 936868756 92779242 244265290 401012938 722325032 539640793 632152528 344024521 469727549 606938823 118339158 713912996 894575900 493170019 160123656 876162954 361874354 513095674 176498042 238862613 472728642 61064118 26478798 793619605 312656485 431070272 182894796 447915373 929930885 351891529 391613425 658813039 245677866 583338917 555443727 955033847 79111310 294577136 281655076 665344996 70160841 466442166 21951496 160037728 911768448 580643776 393448275 462543178 186914308 456331021 534693877 423785713 71783090 14238220 41628292 629314454 156714725 978849191 72002149 736941061 357064499 531833716 771311194 735334134 327970219 576666450 49512122 833948969 646580128 146753186 408509856 66926828 648994444 37465612 425537308 665615428 33549810 533163404 165889498 477713664 468891692 741951755 676351549 877044042 928957782 527150470 861386578 190631772 673839852 815041035 790580959 95846973 8341700 258460765 510014902 83546493 616802735 853730379 670083406 73716824 185685638 998317828 646587361 709262278 239356200 868343308 863642232 263403131 137613337 879427217 203036864 831682014 146394983 362646836 978286852 809585827 222646299 39586790 28500609 620451697 842367905 98793262 363765086 977085431 812549673 695562914 885122030 375889846 943894450 215462672 883307910 833920287 217096714 722811299 75127428 442940332 450232414 561047889 456298377 721045920 757850050 156404748 276809407 773048430 156083876 427922153 993040264 783666923 659421285 304169628 463353936 723053625 86256831 449777023 99824249 830389673 195904328 402612327 865788999 31353137 387240275 870822164 805374515 561752701 373522976 877756176 454291878 881069396 366106255 647009623 146275834 992367964 459189575 418564664 499240765 396376872 71309141 408499998 819252399 143613289 424024798 160160950 376692077 348155686 396784895 429282341 28233444 801100039 306950509 947961169 442945333 954117643 513644814 710998193 13552230 59311059 780960857 596911562 467113898 797782262 723659276 715888690 582685888 593363938 58807318 992513998 831324853 252757763 286341920 397065827 404597473 876357995 920619074 335125630 442199399 947092691 615587539 19389397 638245023 867486581 429958430 494716652 252971772 314030314 316295801 271580608 372349750 920639183 102283309 631748621 528544274 887427487 265024896 629551434 781058198 36663161 183319518 911523193 749455654 611927490 405678349 811649392 930043604 134308499 71775877 81074906 845284641 504708323 577799262 896530662 460249613 195326197 894180216 465415298 450956948 885421326 650574112 473359675 243678055 305704229 958732017 767493251 896050733 831731422 179810328 350749850 380247293 867207333 563980205 931427463 754764103 816611021 379959417 703193501 626538842 517612146 930147245 467925607 834778198 584569617 234657221 551101762 615981616 111167315 165614882 296729232 48961379 472352311 765374974 424355022 827167249 821360973 281260898 316656373 546412609 586717193 532815913 242327650 906888662 67660176 571776289 121241456 243860849 89257367 21550374 954902974 336106994 561381053 717059734 420597479 505739943 797940726 186879009 161875741 493102214 977375113 437274117 348873291 919253913 855991774 148552717 14947970 483888817 847007044 639930327 523173918 128114540 672734287 183748962 759529581 959860461 668566625 472172001 303791550 612299772 169864199 938309540 777612469 773689397 768019612 802526893 406089199 798277504 689433245 692819747 952946658 408414168 380691805 934658841 958712751 288518853 998721267 436550994 47493514 914128708 455964725 901344710 829638841 448877241 504427290 447683817 122697747 402166911 123371385 607767106 838440003 597188689 359399789 187667633 37877852 380961766 485357014 321306714 780137936 120785819 362599883 881696867 182865801 335643391 842313778 281965881 520151688 458425446 483241852 189060296 993913135 188731840 485317018 639193485 607568305 167741019 913438969 880991252 641191096 504915365 177787769 357843726 558087793 333250049 520968534 711925798 174587501 550501966 287533581 577074924 710259347 720131890 28876711 344227455 451947124 373073064 40420110 437497926 610594695 521032439 872496816 479187321 82680312 155805465 728126510 88405065 159004340 653497468 259991594 600907028 71200733 483568471 816434120 441415495 393222554 556660237 340430579 375499122 323697534 723687839 448390204 516167793 35127750 324005610 612117950 167407292 47491164 73912371 781815439 112484327 393838591 956988296 953169710 292190283 133842692 595163666 903665623 482880800 82653692 815171548 824251446 989089794 27989777 267525819 794570369 675429751 387561625 152836071 364317681 825959998 132440279 629680242 477685687 143517556 113279960 343609722 366190207 679383326 153171351 652635405 794148436 152828819 148546353 797169552 151001779 276893005 269943049 1184957 289524411 908860589 924166733 568187435 804303130 268510370 969023008 71091165 908485017 880190413 222113700 220971333 838843730 655243574 926610651 325624327 301469981 847788021 666865584 268844071 41871951 43423255 461192458 644455340 739138302 265852737 95329541 429181207 569212577 879735296 292290711 699686948 383566830 956365154 968563813 873172909 770285654 74076882 770281591 124594745 810047197 907730614 502570623 414203847 580446551 475536084 923657061 834265765 230311401 201073104 880014219 16482686 247983884 968793910 992762529 799270550 592430385 342683208 84906443 780806663 283106764 80156810 760887655 148852471 490593378 52067706 981458454 188140398 917668110 838129107 507795914 65768029 975249919 317054019 505855022 584038303 531400972 430399679 590496493 198963311 790664670 457351807 272508528 106720518 267802493 367182030 38129869 919222422 757115737 639750728 349538375 255024597 16073985 242053509 207423874 137731190 503944408 224712265 276221208 466649689 750800286 226836726 376788652 635908336 369131188 630684752 721533162 691071999 311708024 619494930 861145199 797101653 546657957 220047418 776001585 36712973 704049018 557428529 845418227 554969051 76925653 331626846 460836419 281587953 779477721 888693495 193289804 543901876 533564748 99891591 967404166 770050079 673778764 554076553 108099192 458535483 645363584 693173492 134058190 20882474 238223169 47485202 232615950 191733432 117459174 428647445 493309002 535277266 77227395 164335075 523187161 563540964 832655675 502488173 375041581 335742539 335541031 538160892 109695269 152398663 760855585 417241181 353911392 725949715 650217996 111914872 750941722 143916387 298459186 928137731 650372793 339076340 937942146 376673931 301554015 394727904 645879191 996899767 293211957 486514027 515655651 72358402 56383555 899997279 667470413 439125222 361739548 865791118 844432851 239632107 41835521 734278628 129309552 124327631 136229591 922747930 809703044 573079149 677534215 786837420 889782630 218085431 146631081 410015816 493932060 83611679 13644944 329566245 494874643 450586651 197107137 468986120 399834784 773696651 65580976 372723624 890028318 25704843 330442537 854188770 252628437 318581610 943561472 245504766 453492390 39106780 195244772 986794838 769035051 912562236 561411039 615726587 911972821 5348152 238328120 813960051 233664836 374109940 540782518 725145710 228732511 880396082 498865829 16759642 776711307 661753147 210594657 589102862 27678064 323723094 208144066 396589166 691371346 2077613 168199509 978612124 468148145 321193160 77573663 627255009 213170715 652704392 824904916 167780707 238588548 285048706 406152167 505998902 353139376 841877413 153041670 920465511 182260188 608514077 551524092 764941927 607770458 313766364 196159733 123718702 840543861 860129288 491729866 762900315 978053609 515431516 493988365 820337004 424928516 190760289 264889479 291820960 511086893 407044647 493400283 167432592 557479228 742286359 589395776 409649902 20092748 144482868 216950672 818108235 877959708 729780919 432779406 81213841 881681704 261820198 384439514 729440049 278337485 290790996 923062762 868708398 458087094 181815416 155540477 610505370 995838574 744812535 488786623 904371651 175034811 456233422 960220122 373119341 806659327 962704698 35745549 254093946 823399259 490697355 981967994 707757609 32626542 997037883 388886935 53368109 712155530 207301228 16619162 613429060 204147919 944155460 662030553 924909895 393017961 577260208 514848621 751049990 876162918 633567050 830967479 620705559 341357446 996461841 845725436 652636438 613671687 275394306 734209718 702613328 520560503 576029541 879602894 444029159 625030240 973112523 983380052 893686467 263313899 256874966 202471460 144880059 529670828 185740576 366806829 285442984 683981209 717949307 73615391 516641578 419118417 414125172 442724873 227067109 929251626 183562185 678937257 374502066 885608637 70285598 396045187 131170786 135945470 673386270 559806130 259483035 221013596 89272785 674686645 168583193 268309621 304948031 881270937 239512270 277342291 672553925 866210963 402859002 629057551 554349759 754997258 364945835 995440404 346099626 416635942 171293677 276418523 390471970 747359444 109885703 151426936 956450150 288189744 415581116 823384261 734253057 691062091 99343180 474957022 951255559 388685058 272030845 667734392 590111582 874669460 142126113 531389026 254070321 300634037 593853889 486934205 772506049 869922309 364997387 889899752 728421017 659211557 88407330 237985664 793077586 534636424 295429822 867284929 460870487 670133855 307721195 725021717 942538799 844318039 879353811 716732803 593427896 197385637 835680256 126943096 41141921 686310121 776791810 365173072 677037480 390298178 482625065 244123341 291104899 249693806 240079011 596684583 62199770 120812951 712517797 698014805 309491994 987747917 350518712 943927944 741645889 944603877 215753950 126939336 790268426 916092945 847269885 588763115 401822042 922257585 938936631 630251832 88023991 181495349 6192823 105133432 238615005 280178684 561568082 790893718 617362689 534477482 567713509 894249636 741055606 40128001 766152981 601706677 643194499 999998852 354941594 859858529 420675137 24904868 1671510 47005992 19304266 794760151 247701705 475412224 312706814 31724496 736745874 687619543 835711234 526279587 723920344 408425449 728379802 482983184 740609381 213739097 907362596 66068298 473783433 477314382 85393820 165035786 319668873 721369766 78561374 72433454 832925074 262317756 773086217 360119272 68455509 913895644 570537862 245428838 904304043 619003897 880146412 253770957 100423955 163639030 472039706 260864502 943421024 200766763 358665615 436145181 494582435 73161985 931191009 50260473 331513308 326979267 22427397 340211205 936010691 962585937 38603479 899566493 707321992 760473592 133444336 124890211 192536546 39538261 784823116 989792470 42272343 890442612 19229147 895416571 660840612 532783663 639334475 450498110 721268041 961328969 858510525 222831612 947891028 409384062 841084634 306549094 297216575 891013782 150450227 628742192 522917526 7132988 61293630 502994462 77468758 272308928 41486844 791888175 485213588 464810114 674083249 823728674 836157886 200113434 110556297 942091890 312350833 393945991 842987752 629544988 636776302 350305473 466491284 435303371 156666126 465174903 688914499 9560517 39235828 683767843 620537632 535695040 666002095 139312495 45769761 915280933 819025554 588665262 599725974 324953690 151496281 855662007 940242641 598393262 150361626 410632512 388816538 431769788 224819631 293594347 692300511 561231103 341895689 776166016 166864413 237069504 507846286 463937373 152514914 992535240 898922735 242803751 680450413 294073896 816741948 576508349 594184611 516569205 311131046 217609748 369617614 114476289 898930702 484872987 973778093 855817497 48050186 637489764 348595652 891377997 148770084 58082984 21554118 585324973 391569777 41472463 443758408 480837957 421097109 613388297 815240340 910093717 160354162 953899213 962516828 330982901 250879736 441109957 180207665 181771384 704059026 822118784 331527393 681641547 210832866 619436421 391935300 982537851 867522118 77181514 190578221 254325924 414165139 803062472 387747431 829491558 490669110 499028389 53174244 485037764 398982212 409263451 594039081 145314554 530049749 377870390 120061139 515283515 173520306 353783627 643436701 19070745 668295784 340322965 551645874 160803159 764920236 855593037 202568266 925462892 670753131 101906420 540768527 630888060 166708438 997833514 304145304 43308039 24473495 69903686 281537189 568867416 656031419 905406054 951343079 242158577 184923637 619718900 112666016 116655700 412493393 906508961 848906792 565165732 677483438 487147956 743754097 444272088 88398130 643198215 966938299 300743677 302435674 669915498 785702781 102136654 584546408 600777065 543817483 366682716 381598765 625431481 443929657 582612437 153398351 979090540 583287271 214782796 164186853 543692419 360722411 854808042 217049049 628563995 94084660 551850850 53333790 896284246 661069762 459080306 136090934 793434747 88778233 522680080 767214208 461369471 264383219 996011572 331880224 242985097 660863614 575183748 990228978 772711247 535585687 709087210 908311119 885603291 143484441 796737915 944929237 788961507 227617975 680060803 756265433 781602516 786473063 227701031 824436098 358636315 989876759 948023280 17997749 669027442 365449086 571618767 141201797 535008456 741023735 391445438 290961502 305755267 135911485 766842146 914532022 476977676 516534493 181175997 476859724 567842096 997810402 401907857 805646562 437912182 458962844 557995121 810575684 93529342 653080126 22676066 527821856 75635145 804387158 703582476 399581800 788006434 790748606 443791978 175777106 695494667 526918967 582788362 441928363 908111275 838366956 60578768 602280638 203417853 572525267 543861443 79702173 884068121 83953997 914646519 665875499 932346276 974640233 825231944 736441326 429264482 944824208 342788077 699475491 119729168 531482852 521410803 394378732 363071149 332019663 895297967 262388220 642110429 945617314 811746665 283406365 914117551 160419760 916802053 227172251 762686516 238697479 679350448 850711338 471727612 12807460 232493719 129595268 76346118 747158742 19668048 627919093 381880058 835368171 444040062 14633103 986591867 288389889 259509179 773109979 722991235 6189348 87905246 63106770 802328662 166498832 64710590 566073296 337328407 117561349 657049936 872348050 419478003 83832977 751171701 716984680 38254840 127420599 834769689 597873273 983012706 5706272 143698229 492209659 157343814 284383455 932236972 125061215 365365798 292615081 986432694 305486718 718607865 992595975 126515182 868343333 767826595 877818459 477594006 446724393 387325569 6248867 271425403 915878699 680242637 585281723 618421745 710500018 492286926 544519126 107497060 574956702 586621656 405422836 700304443 991087182 735212300 424793455 432508477 613836422 269352273 939165714 573471827 570451753 602284863 327281811 267536059 16397246 521804603 282003493 698578120 582016338 795147589 636804275 650669469 636883681 122824390 692887209 291963706 349332188 98391072 688105656 571318888 309239566 963474505 507560407 655904126 78601434 357833248 707977900 179317798 161233916 323551605 405938944 884996469 442194465 824388636 472177764 613882627 473462604 563692302 238925211 844040558 103244311 62090175 806504767 39092412 555033242 731562761 595470835 867318164 679384040 979357654 624361576 982213432 937457571 233819726 349385215 83062303 543647629 281233336 290333797 921729777 875836415 599137199 684281324 938334431 550201981 903652086 675016878 820345586 758643957 567066181 357777062 675737300 457351200 256287479 897231581 80755081 966670193 562130504 444772448 381398135 415564649 532878909 334078803 365412319 651000717 298227513 623906757 953395403 483164513 736864196 462121652 796979963 186771370 157167627 631585448 573766960 991960172 737460894 560270936 293170871 717820959 652601145 337765039 493618158 23365255 948337909 213361776 211467412 957004163 364217076 405751835 475401223 377585253 52085252 442503791 425660667 74771598 275283724 823789202 690471266 956728578 416591699 597841999 76929651 960523935 212833382 961297288 960484360 823913099 90869374 452215657 188039977 501318169 246526405 1510304 75963658 920975295 280898060 728038316 338126519 32885428 160068826 4748315 231083308 642933582 332577814 384918273 562925895 631333005 682359407 743934272 580063905 852655129 390100090 480691147 58717709 905689518 862958967 571021121 789344004 829340075 228771487 855343330 755545632 25935778 512767518 550624500 922890970 749973401 374654631 778534878 379818743 779141407 16380210 370648476 546106547 551344192 376698904 765344264 433862516 847354921 758911157 377615561 448417942 445292652 537627019 298573872 981004367 805935527 550443409 110665179 833887958 369211338 155728742 699397589 834427377 620221221 362334971 970803247 219757606 483135536 43852179 44828150 722987503 791390535 986988692 445335550 571780666 886168416 163801074 103788087 368698520 734031595 422736926 853238311 62831555 149528916 696115169 635574286 36932479 307141646 353203320 844215851 264396237 31271959 178278609 589001484 229502475 193809431 573979884 86671600 132260322 364851763 168972157 172052388 420409545 320205387 691237465 550960215 569391758 404311297 139042757 735136024 513238361 715885075 692636749 752686661 999324426 639122435 149150320 311504049 880041712 115576483 620950480 357091207 117744044 109991695 328866731 610259287 375655704 662455515 375648944 736815928 822409145 286637349 315216921 755517332 602347574 847417909 747927445 953027029 395704020 799843364 623442973 994481998 427959279 873624456 919328572 722277515 699183330 860471402 271710037 976698489 654971068 338936310 315355643 713731140 364562459 822882340 593987371 453324135 148371320 172899786 904932268 406757963 301130248 970457599 173056437 601284529 635459765 950092006 861905074 17005664 697361712 724011959 712388651 121342370 744749740 622244632 688063288 181953198 355986810 204033773 97199149 442125208 231363668 568243309 102805752 359513590 157702023 506908367 28667251 560876182 719576188 188328876 731117765 493019077 437944152 356209357 510262826 50019072 41516569 55121586 839931681 691849853 587956142 519460419 821810571 46388721 772127163 917097081 34514410 41331121 829030928 494688556 18449119 395537977 333360145 41759713 978778313 475982817 763546528 390042491 226969014 715378220 459952211 683406067 790424280 909222865 367156303 889560135 725791192 724443785 501553252 960487878 741043653 799081817 510239010 320939729 185710495 535646129 195826054 983769858 685022873 66030324 651959832 623763291 642547939 607122234 206343640 150378887 903122393 485618378 983662614 479254334 665955154 815923093 407826209 493294730 303796247 153118617 982342646 950607424 765907950 476271068 455269474 210257349 783298603 360335030 550565454 15672358 804555828 414877605 255337069 347684372 893936839 534622585 383668241 824739811 99599950 982487446 136728533 978398163 955334976 861739772 164403272 109649921 180965516 150224011 162344242 703391888 403279393 896697509 474260387 945773951 414111069 757827524 668267085 130046676 82020233 959353182 803718343 774580427 322910537 8991009 873544728 276765016 864909899 704136298 419185745 307173230 425668646 360891185 242672093 718961501 222265654 276493751 562021278 752471944 647068956 330047851 44288875 459828032 388051126 470362582 495858464 889002812 574562069 187883473 79949869 346395042 467228068 590375085 422058989 900780871 190174843 481232796 452816844 326538626 865586168 819170586 42216172 729954603 527698000 11413869 429464953 414600774 33607351 13619675 366834823 310359142 81196635 995548528 586038156 632568826 735338673 343846439 964734146 707061831 315530972 794358827 905948615 954013678 933275420 292914522 661623136 352357027 538173771 697237964 997033875 97135975 405943871 890036770 96701916 359026715 962860504 355343206 393570387 545475109 957268774 986435349 963660459 574303285 489987494 976815837 642820462 794245580 333423489 714320854 156961941 921837769 973264732 784086407 481547664 709814995 269396432 861665297 922039497 260568454 429484037 638565727 577294520 291798184 902368704 414559991 353144342 737927792 779090257 463053440 607798195 894237336 841268203 586664362 429098648 295253112 975997830 760115912 916777046 555495089 187608853 440946365 888458598 218889731 581559116 44308883 793262762 517375830 420835705 128532379 939682206 343790088 896135014 745255491 176657232 625723157 256032240 903500095 815120758 828727216 520933927 284636530 8306916 86789547 796432926 184046369 162670 791697706 942300612 212256533 499369428 195685979 180728051 98486653 722499344 494493581 987748274 884603270 40908534 140028673 534980113 469194575 434914165 790200978 885455523 286055149 48457312 744009881 917855365 805807729 243761796 365513080 269350770 298689724 111877370 758438340 976674915 114061552 892376483 859231137 576875081 438849098 628869882 438360934 100893691 218921805 28832593 119052690 753217629 43459821 388154453 180719448 443175964 653164895 345752987 681277556 624869386 205904486 162228415 793985134 419308873 596798277 326834706 787727852 468068561 335895355 956556251 669618062 866026399 631551326 848425344 55218002 676566379 582925911 795279027 290904674 883749151 718836606 808254208 290284629 168038285 541623001 569005895 736446852 415436500 883890675 850191576 791800291 606264584 352904950 373984318 613592940 796279438 175843532 302602312 546584661 933357101 747586410 883844330 892131170 495860697 398098367 321246345 600901121 66289305 227176127 692958586 701438597 703419574 576685466 905541656 211011019 681721660 312631319 491228164 351969250 623336079 928027055 393425100 809343046 555928347 553940955 860619303 341599501 969975818 778436212 721879834 184867823 192315542 453187060 297421100 733242949 569290171 816133582 89863206 982928779 601723294 329888255 336318303 534379569 63621167 590140645 619455098 690876900 972566706 550407349 477951034 458573252 790498759 49036903 739302904 582937164 393494736 189571155 492011317 278418716 787292007 664768280 272269600 505322730 666124510 903912711 31138353 67717443 614683992 78853657 377608942 780074784 729853416 141702184 442834578 641430859 716711262 98289426 427775516 142743417 478434267 375219997 720223580 763476432 995077239 93974526 542280414 730366703 605703354 574237624 778617456 41771894 21877524 87552884 150770275 519647286 986419459 749731862 13097408 700286961 117781146 812097007 328944747 538800283 760215283 998896870 1671069 238251863 81813269 714506614 238093078 165022683 433206128 551074639 613345291 649943135 382168096 842474917 740675302 398793625 572516943 57766567 116153338 389225917 362696244 353950929 892526145 696914079 332875866 212898362 57944201 288946090 759323069 17757827 574547941 444618916 831627017 855142183 863863748 597751369 246586581 605483577 108164930 549972759 203496237 243835903 408998959 367298660 416294959 436257420 285835259 241442452 728308620 229091590 386734880 760553048 624261758 965017097 186870783 745002294 298697905 610656626 129435001 23361700 540705951 426768733 703255414 216385145 254311094 883560529 389091049 581414431 829242845 825418563 571083588 932337954 203897218 239185397 942281431 372839827 22496689 24666570 953952497 673977979 82822642 889052492 981599299 259498862 861095438 833248683 454964513 809419903 225866836 791795522 313135500 223547373 648083926 706950909 192767818 169254920 430943262 456361631 574273983 304682196 640160046 220588604 118376879 99669393 424455146 528723709 428591402 799288793 741896332 778813808 125481519 620558467 753806455 118689251 441098087 798671240 598507202 296088717 570511635 801681045 683727576 951421622 92868809 298429169 223541348 567340833 285450082 662983705 595975988 328333765 681930528 194390770 975562680 773762196 444191915 480698255 311565091 554873412 270967219 675560909 801681514 385473798 448163632 626850366 437034577 792029240 157709729 54184688 94596993 754152465 127766865 94742396 753536832 766543947 503879821 361071796 567897273 780409920 388518530 754650032 350669544 987712853 84167391 126038403 126511434 715428567 535989068 830437951 275745263 822387878 639371270 788639705 939002944 50575900 681092624 72580099 951730514 333665890 21208860 578223122 812012672 270578490 972353638 587396238 18781516 378708853 633058966 7818753 292564153 809582589 161576234 114748075 299544628 540917125 628515539 449341353 93489448 858380404 622175259 606925764 139738062 69384671 724811448 485229309 198766481 116808145 532764112 517957366 882197575 630445694 905794099 810736873 57332262 139071097 179436188 905563750 821685629 498441334 216578784 664939907 110464718 998616048 195173891 55441048 68951126 451084498 622895464 811172664 573428413 356266641 863728427 453562715 592341389 362076371 953833729 633528668 568864781 41056319 799748205 783088383 582773213 924539913 768246924 336719277 250015199 929268784 353211131 55413813 895873445 70570298 488727669 302407513 254228348 980990064 97902893 171710986 806233457 148328794 990423734 571984988 595311974 9364036 867385339 41423444 74790986 65817719 180227649 97163156 711762890 841420607 118658586 356570652 602107160 573338082 348013124 295249424 537863811 1273263 299748802 54115220 789642044 647018652 508587424 908303143 823354433 10118511 209938470 835469087 274452747 84400158 307486462 551905802 698024953 914907250 534913729 220665591 310376182 954133684 324039947 2483869 786601675 597712551 998183417 705637880 756252428 481651870 623509995 108654077 536504290 218057158 106054014 996745597 51126785 738656046 148050704 657382409 304139278 171364459 183874609 654226579 501030281 499412878 131559179 326831622 952832310 314354745 753762660 949954758 131254186 167999757 643498542 51256175 231942432 329558681 114836045 939914652 500491417 920645047 391663092 315258636 345440741 166512456 53259364 789976683 111067483 365969837 384685198 356122695 357094030 975389834 698821824 609876304 604720007 56284919 523450140 973815893 9407652 881347904 910648857 583303516 671087957 679749767 986490453 336817584 883189378 68267100 985652345 772454696 297912376 21956047 776598040 447462442 833222294 758459981 709396342 849765820 67153742 977776019 98743637 778651477 580082475 37744896 595451469 95954415 917221329 216927045 76938111 777925733 610371411 647461999 402589178 950063530 140152509 907254881 872175761 462003516 4977945 431762304 57956465 671567372 546975738 384484965 827453536 409628654 73914249 490348089 725991957 912673250 351888262 402058691 183529065 835955845 944406101 377582651 793192612 180105711 279881193 31365471 375284660 574822884 486266108 412630560 939565048 357456206 988728159 429883644 608190379 164862876 568400445 310906490 656348162 911768469 895319471 864801893 621819324 223175295 562240532 728159725 252574425 767197394 247091596 756816695 963896589 11651410 327519019 972720418 650846478 526747205 532289367 938207474 375491845 167817835 154141656 8882398 96390708 637128057 147114899 92988106 71445568 663995064 230386339 29725817 217928859 36482730 175910795 90796410 739936287 739630594 822821754 500929883 568652118 665317287 430841032 110252228 494209067 19643041 510075701 791518025 822000304 926456053 461359724 260309885 647027536 14475123 812830444 652072842 414083468 794518085 279109935 831372351 261800784 375246895 121425039 405833934 212041479 181232280 985778910 268543084 204485349 320969745 421963797 673060992 413817821 597544726 458887431 350601366 400945936 900116130 190038531 362837880 641216857 922550580 537507234 718129663 892871282 430023291 479926555 879780377 176534310 757925564 552327917 32696810 340554263 703665433 162358838 81863008 693577875 819778037 104741157 170107931 633211574 350371666 524168796 630140307 583751238 432865022 469011739 989587804 892241470 254853651 644775611 419585193 137372270 628586495 258734037 522847871 589882770 431003415 114435754 808000900 685842068 53512058 263185594 861710709 90452303 687743787 20542213 471463963 666331009 538737029 966641374 248796764 505723151 82521107 792038048 699617921 6452772 856665361 269778641 327753738 672707031 323053629 447773544 162743313 426065780 668752729 44681351 989120635 82242727 561524422 93990329 180918337 431759346 312762926 46427383 665592217 247943938 939120168 433593207 983559625 418602680 801159775 843549965 340041259 157650320 828660765 827278108 490767889 491522082 408413180 727811122 762223924 425965976 837901506 524587908 130406372 746973541 68910154 327974912 510487026 987214 791423949 421441578 763168053 508855464 55882683 548701020 526864548 975536737 454049037 190006543 603143280 658241825 618326157 204625167 109491326 688465164 16312693 123838748 955069216 492522572 932789209 817912386 553099138 726678712 599877884 858656972 902663232 668071204 96804537 104031859 133305032 914722713 284961873 666961799 317484869 764120892 540635554 539278806 828548043 724164121 284826513 728820849 792649030 672065962 115981756 294500034 358667066 327185587 960990598 471832016 775517393 28274709 615178491 675225274 273659258 215549509 105639357 518841874 334353957 88823447 793101202 217151647 903789360 607171332 232752933 831102103 538206988 373681029 623014640 540888471 902258794 622103555 590458696 538866396 264144472 357915176 954692369 958775015 460298524 348439081 865648348 311471463 958862394 821974973 454756105 584194492 66860654 695915472 951768942 595956680 119963141 369303503 217617589 362786501 551304468 570543089 493080657 830968055 674307145 958841918 313736518 211376477 885022550 145789448 182163740 258633362 378922288 441655369 734074028 354741858 679208169 433045613 92760521 89814531 371243955 278036115 168937565 571693033 695282605 223441509 439217221 554565519 38838015 287532716 91815063 926744922 159435535 382596325 369650164 175590402 136716034 555432574 658856201 750487650 275322313 655166425 836252728 330296613 584459866 255351778 305732365 210189702 467161957 24020422 606736797 867863253 158757478 191841882 546909902 165847572 989152143 713673877 87403692 768532930 7543546 685692415 96372183 751043115 571750108 204127873 18657528 114066078 398160420 250644128 541588516 506147459 640976624 184579076 742081486 821448412 790629389 843434394 844553236 768838397 718768377 982163959 893615131 646779294 359513893 66024551 147434841 976102097 117057786 456447499 375742389 721496901 931459262 216969815 211447404 677129404 490276560 189420998 696562907 298453188 725086318 770161122 898828893 316863870 448007911 738924519 626466432 206562896 445838172 170093160 205528264 918481973 850682624 502349247 875958833 105781154 665569724 721243921 365502672 122633064 502645797 438975473 972333368 399715937 287391268 209308278 502109261 636123598 364169454 430151502 4014905 57915837 212519664 23512667 586495361 290748403 125284428 204786440 356902335 105703543 503336649 173615622 196573741 961336157 950430242 876005048 529423722 677069126 701448435 670276944 133362262 301722012 399540428 444143708 686363685 238210537 529555293 531620783 873755639 126567133 412380620 308247995 216666690 891847686 567747952 801408958 443305517 917335297 743739585 258350831 341915931 3872134 178307236 276429080 726125443 732360321 790816581 808741275 592278968 517529828 491627385 252580510 869496878 234182160 175603250 42636571 807450439 673691325 791667487 750270551 874138961 817569129 289728763 320172752 202670302 377376869 735451256 788080140 294828431 235907791 471851423 788493485 317429660 869513960 383697707 74719544 919993519 509106810 693603660 663872900 561729050 787339316 604986870 504260587 908137109 654217375 682612253 595605778 599792410 627498767 848290489 76786035 180887386 235619663 144473542 692402727 753893651 882181719 479628144 124391168 39463864 565270443 251750311 158569238 259382539 508756796 896372503 408214815 749128095 805209406 543577507 655745160 192483236 44811379 579799883 252044550 540302838 651847549 360033248 213951876 776082956 869830238 710456174 762240359 199403303 220588706 528373977 719624840 423336306 154999230 650889520 94253670 802498659 421351019 59525125 447685571 86191599 156787612 868041823 212618175 132757120 144542462 945290406 258799116 842103374 310808086 926808922 566520603 957116212 267249302 321919839 379200055 373067426 234094009 195760586 153862931 731298225 776073175 672133375 853594233 847859116 154645520 300201392 317297882 168215996 283800855 988496261 254668586 799381335 73093913 988862894 415776085 467687776 41210262 346553744 54882635 146902693 118908870 704876828 428436747 43220273 600417359 548630863 145572271 496780597 699226698 76131161 298323769 812336284 39910935 335363350 502753632 787761584 338702360 20118881 770790012 65149743 307870348 358775310 915201894 894581301 538794096 358058435 547156307 885604934 406010582 166933758 204873719 861499030 19924427 180533620 382720469 485578917 256406056 514374438 98344856 335455111 311706160 805308032 170801435 169486201 657337821 686903774 296627150 795221789 609083710 146984280 767428285 590985618 628670356 592027582 167742433 859444324 822190358 252190417 734719092 110820384 154768857 884767058 115435252 446905095 93274281 950564611 582948592 189958109 974462436 398204825 154446763 549005302 55683136 408835520 142752866 820726706 190652663 639771775 377628462 614230514 508114222 591607819 493360187 108149934 233942100 556563155 192458746 286802411 236292136 292841108 539681835 37879298 979434905 626410275 367052220 742760907 780638301 532488883 634559493 763023321 407905871 649728649 854857492 907747415 212809043 636701479 886245847 325102694 597171445 696313061 978931298 463717699 999711613 665216607 170488677 206235626 785941070 925206896 238789288 153495282 961630864 183721365 453533178 282273276 246563444 236181961 649236201 427121612 372269776 697407898 371275704 702737190 233922998 126276975 900721798 899007387 894215456 908997504 795511496 674509164 923303103 428427572 325434389 522305450 737281024 638402545 428045600 154157246 759165284 370523449 266809348 347700250 224270408 343714960 127515941 31485466 444733399 328417077 415593953 509718137 557311646 941885741 177394633 567904938 570849638 276514945 717318090 499545188 993291767 431456287 260288292 808035011 669875089 780537878 716651454 477978583 828323856 725504667 345205126 65134071 14837176 236572630 934863889 983873243 653328601 649808213 435939675 924582005 917129039 24353362 488337893 973010232 467385347 163219167 415403773 749045003 9963651 634226649 324978471 266853892 594855624 169736967 425091451 935808865 355987531 896175330 790290644 504437100 246186748 242061055 419214557 736266895 151462541 259780091 465055316 667627000 239991535 107524637 66097449 300360562 137940214 577036142 876064601 613876807 364487898 543561650 965151827 980462796 929756189 781778919 593828866 99681677 21580983 374034875 210952624 398180666 67916651 147551031 805483180 758635989 198620139 607457302 879732226 356778963 117522628 834981458 659545844 451162554 853949536 150711498 6548416 778307522 606750945 455442344 816699316 426968698 557009382 702127221 43690889 636244475 507032987 552514292 703012216 216187883 713785278 747374331 662608176 783185686 838559868 743492787 143941280 99790932 824395567 959698239 155228019 155014232 29294836 676770153 717433357 953072505 846763871 744460755 3191545 747171893 243732897 144859835 485394554 977602266 844491837 468819079 560702328 597929033 684074933 245919780 290487146 809843700 784588950 669816351 149941640 483680403 790892825 904387028 115998259 426862995 413003855 325025999 182763163 203069478 14457457 108378068 703594460 501195735 577240562 564120214 849092982 930501625 744568320 878306599 992530908 161855245 994591778 787259876 199347790 914528877 348687683 437031239 464277554 377663225 710464893 934810284 766357443 779511341 52746560 689447698 103734341 704840895 374447327 98947559 83857335 16716977 891542220 408365126 393812292 573692792 3593774 575331665 360503044 486688110 539344084 331895143 927499887 461190538 372625645 402268110 842776098 420428915 558656618 830595045 800095059 248506633 637291802 765945306 257414020 933881434 807472517 451044655 385032613 133176633 922240828 300831133 629902403 639159994 675789809 765594578 709141546 892079633 839771814 774092719 525044430 384476867 674012004 141629046 888398363 755255007 170241985 134986333 346593016 272090491 999202500 5032347 681580631 113890649 965612006 455222089 233356816 192009485 984066483 943768581 847861288 613384819 669773527 764098390 498295798 532138167 918501056 133666233 609502215 973447911 743439523 801075591 989566535 116741107 226204418 747941066 605233332 234840659 5546434 145920712 718213404 873993414 800766446 988905617 764675893 605889769 801678182 56471848 778307077 166407433 761649190 353423295 647609446 55955839 471176812 40545374 609762755 599327187 26043390 478329938 808016245 173925195 740863884 585599065 902306960 663286411 714620726 725072985 556228868 807752587 244302388 930367997 19642388 333349473 200755491 818771305 902026994 8174209 250645449 802217299 236002638 312959735 494805390 687337025 14599673 184590488 928538873 444649873 302306084 840138689 298777899 419598145 446970217 23134678 455231421 472282967 566401782 416296664 936752047 178925391 625327310 302757749 724810437 319370561 598904895 324286885 344077370 958490395 125130743 75884194 188406897 293371756 83977589 573600014 792572635 970329292 659553383 688793680 387352936 448182449 635593114 597159134 285810124 596250328 194964266 853961029 830044549 33544980 475599329 986067612 459530395 334079384 131244023 89036022 601655570 90586239 481879937 567384784 685210092 403874302 134185397 435231855 363490535 822032617 763103620 309590939 437589428 807702931 803192219 281555364 316454911 316086933 970855114 573445337 824664005 534074695 995890289 750767057 26419813 224055951 929728285 700417366 128040570 630815131 639033062 312204776 903170724 82251527 8945966 406494812 287007095 44668073 573395371 87794823 35807615 53548032 714109440 715099796 691304575 961787572 978718943 130611523 704918238 938590885 289243834 588743400 440106581 39167727 137262120 83723315 978091869 21666277 291213635 887084054 10599146 484236118 658479283 214183819 885245315 136846100 339838183 520087995 62151403 821195931 429507860 231601149 426971157 792457351 775602865 703068487 266497206 450124724 19632670 483789281 737320457 780612500 476268294 34964712 157343789 395392310 834119057 800259749 529664940 490057577 907375620 561834038 56961847 717889273 563470196 79541715 576877588 74703759 744122316 695650385 859070590 141748438 562091511 128532673 397772628 718612720 213574691 305716089 837646585 315445270 481509361 336934446 796153357 222085096 311494962 549394693 149849556 509271194 631845754 440357519 554197703 555820400 877903737 163083279 99927428 14974972 596438305 895761589 429100365 102574718 33692504 881045327 562518474 675687322 801879496 955579080 826858123 324517190 847666609 854840732 757628897 374623821 668876203 258108470 431910635 444521996 684662546 869816790 559419105 379839499 208918849 946056954 567362145 210695219 637903238 92873169 104701206 657044944 890634223 385800362 210175097 692585630 252895003 270557970 290955922 500121451 793997668 366189229 927851618 488945144 220414448 279212558 807539518 185645442 387145548 657483330 960362527 614762168 625028313 200873019 231017143 29634203 142872101 471613590 166453859 464214969 219692227 108524217 171142609 882943554 257667495 118129048 100337212 787287320 461063868 405757662 741149340 844100514 189486188 122270686 618545412 122990837 998401661 939409129 397336608 480007396 729550326 418267143 867958446 380621927 583202616 246450702 624343970 380937303 376679110 707339991 73549449 495940875 474106131 150336505 367390905 525350271 662745941 410358530 489160904 29309879 910125296 113607129 969371147 18482330 498829609 46671409 903834916 690609329 501455982 258614102 898057498 420644591 579010996 443736587 270122060 253738202 347384933 692375825 726650485 114167219 49557546 274900619 642313377 18337194 544703538 656246725 285610226 762573469 429938276 973894303 719779693 442948885 720599629 436687777 72469289 120504405 80926198 34365534 350263541 986311512 464006779 874959248 169016836 290505270 470088442 432849256 215620795 739488036 334927059 281284833 211106506 602475480 593719511 707196404 83880028 54264550 976635232 135658880 395255437 317967845 914029371 428227428 285938696 840851662 991824853 904427666 779445937 316494005 512279963 768867511 909519666 981864586 443431406 77414801 113124710 700237303 609948231 956776598 140968847 819291364 252530927 595327464 314735081 479055193 441964780 102468242 803524103 717227670 931280750 161541669 171898735 180482634 887730678 118574486 783968500 475191173 213211404 364191494 703186963 587577448 787013768 679427895 785074604 777707393 229644925 927531537 961385916 178312550 940045736 567192258 308778998 248049577 890878429 297882490 595012332 299740409 105791059 798876785 186065490 809120341 492567523 870251969 30199011 268011196 583528464 705170659 69022795 660139891 839780021 751699429 145400910 571505447 194629497 76410484 592381739 213759661 347378252 440182733 269595405 908757545 81771548 864927180 924427160 51005446 511226469 31086098 695341048 596574265 670923354 468093039 278077534 124112762 900929336 336051647 121828498 576794079 38700809 273155884 515162014 461873869 684034908 302412768 422989816 630391176 199596937 423216558 776310905 614534514 253874053 973959051 907186046 135106356 344390974 810799508 479435905 245920364 251145212 27658021 647110443 19851334 706890063 722979792 101661604 871215943 121668574 727702977 309075446 926712351 703592820 562875113 380782326 677347446 860214700 356360025 469302124 949901027 511353424 738619097 310428195 197624761 808489428 336831236 375601492 124520673 828818465 648246650 924288505 570934181 245313781 344235690 792540288 826584754 791082672 546500507 8988341 615627974 671060618 826850 319350906 209394159 829158218 922557162 658628696 229688645 750244707 162972333 55193600 46821226 415350179 36652410 470174781 371378724 638387356 268793986 57358090 708855696 697839473 734117219 739801296 36108727 909793691 356824344 984731547 268644932 771372669 661551296 509106487 306742889 214803733 290765232 290723757 443989249 690049170 69186230 891447301 113659066 482188642 616953898 421564760 985183714 108211989 200000631 46186198 119109266 402547130 879466717 224823236 79722705 741753547 942068117 17609063 277908793 484746284 312474940 513713425 947879940 821838050 112462388 855510725 408496775 832019939 268309585 757518464 223167325 293030078 398221314 364255540 800296571 243205904 185591557 590084945 725087000 991286239 733273370 6239086 176963005 588135998 768335177 755330882 32218433 386647806 463756416 521340178 460135073 891925361 651045570 55019718 481581439 581458626 459157403 494525666 437348363 230697539 831401200 448225891 980531487 209215962 992617899 251673022 318567150 344888982 700288753 71109207 302903386 371854021 288157691 977621978 241733240 457181698 224158635 869631723 869703888 473707239 577515166 429583479 150868124 317210403 596510271 919936092 106924483 21159325 948490560 164853287 913873342 72844830 404609541 700595593 292073098 104437775 710698764 120309735 153344931 383290871 198764436 378884647 670128645 105814419 719621253 935916703 159171501 354289328 230789537 315029507 267571716 289306189 784890225 543183314 528566999 445083443 582200199 108310118 830210469 410643639 48492123 328757534 924824197 760632365 325568202 24357976 915803109 866692481 694418891 245812121 185928411 6748832 835979747 956928502 663785458 915720700 89294518 509572418 954083018 771150686 99016164 86235122 469202610 365608829 71420483 608677295 569859694 270962407 260240117 684941323 261497754 237038623 457166312 415469525 23753452 988320497 517219820 652959014 779474086 804193592 547644473 771851657 215772996 107986304 954455778 789107563 459697099 436596179 468574926 806132016 943817775 742386650 90194204 767726625 447670291 926595690 579817735 169584283 596655581 164295256 330549177 78695308 302858595 613948494 524956847 988889147 988195972 921860520 382057578 818846699 864608678 488933863 901671918 902578512 69099599 376715652 30786843 146024171 408843051 926718594 753762766 108706339 651355440 929440216 861484999 258354645 301379091 788848989 150744060 992725383 20761684 980019856 775041846 142605029 502562815 669845732 707103680 885882701 262830547 284169642 831684586 24645625 415346328 816657338 957716378 208340715 183727288 859764774 586520380 360606370 51228599 17349951 470302882 835747823 602210424 916474621 209637143 813331760 796938458 173714611 78772197 642985262 653233836 853670905 225401511 648494415 535243930 743576179 370617541 633155730 398508047 192139363 300820530 657574736 457545224 193663545 527370625 558279239 322028937 314686090 953400862 520282515 461101712 81731611 380241004 995634363 313455192 212843011 648735333 937975217 837140249 97061901 664642402 244265788 838557959 390591495 607190372 575977583 482878306 647541059 231422368 582109503 589153788 149190429 876582654 976058174 315899809 917375714 319495363 884247722 864700035 624845558 705259316 84049830 740174505 585679179 519204285 469261705 107528403 156722157 240420521 967280009 429144036 618318614 591996099 890598212 859564069 394562414 236402000 778285867 769013374 460436447 13714772 995515219 845680191 697042465 871861349 786627139 48853211 629243378 315500029 733235888 480045779 22781420 403527668 870729504 708498606 924222885 722255434 759857036 55418131 155291748 54696064 173636770 145010134 542895057 216994572 835965295 518764256 940303203 861042318 329507392 803802005 814040228 105572429 415108246 224117042 729253598 406306460 243710808 98608090 443213938 440714844 553687625 250683542 736860630 453920654 398587774 533615001 790652157 693664045 729955769 561998699 734522777 721055168 459168299 416126182 531978316 926989098 36108040 352764366 25395009 866599607 13898929 946269561 46343879 740740693 509493243 128597200 77775446 57634812 269246993 505914651 872235511 519665182 477087050 381462528 299675067 197565666 263433792 364826417 169586448 192572762 441840147 110489968 461996226 578690534 887388634 446172993 297335217 920765709 954992853 139715049 534159807 489744734 33895415 641917770 393013752 685643494 977414416 389816554 106832780 585146083 846336907 290762143 433989660 374928494 393763339 626554436 173428843 732886218 951156735 364991762 139518269 40414807 220689123 980839987 53515811 577160384 876164702 304175785 296122559 171299588 394382449 161820869 419041109 107534134 254759604 98874696 220479003 202409740 726942365 329081189 923479463 751984227 695055599 709989928 346136234 301359199 269115161 334485553 812263405 701266285 445891682 44984937 936509978 487878446 640125668 714309408 160304946 127244596 98212404 699906955 377595750 389550858 975452199 287502756 553294852 467713980 583945755 459597839 343351495 951318167 85129445 809198028 537247224 596463466 511621908 496674487 664483605 324158467 445275983 316563246 932434315 202476475 987328072 66142524 437565839 629792958 557308456 977278017 874215486 222513759 412637132 715986614 307148837 740688702 728666270 820225012 247110577 19283330 514001549 295822527 852299365 433791972 330935450 461394473 579884931 475461003 723024725 60708626 859969816 517379934 382736414 89702355 621408967 394117678 279414242 719510920 174896814 501429260 205416988 398234614 752354506 614509084 362477451 460372856 223323230 110357107 135350442 92831705 79279300 51594634 281259519 225959166 338553064 582858331 731309915 684510884 735478750 208683106 43197917 241862575 806284052 335731699 964158046 629039015 450764263 860926216 489958093 789696021 182472704 722234028 910218144 563044401 260070725 259932412 570048741 719784565 981813751 60731396 972900293 681502272 485012481 69671273 831022641 762213796 494331320 734304926 436256087 561110130 744292998 758805442 97115842 704189796 832247037 271473003 308544701 870426370 697026574 614246902 760485436 131041439 673194768 974367842 95611882 59778550 714063373 403927086 900740290 875619652 412999379 577219665 414884531 258483104 672278156 175940373 688285269 703459125 976836376 966784871 295598624 688862655 455323242 768126380 217345594 460631001 626593567 699788757 918167839 789629686 42502254 241398593 428066161 345397949 336003493 1492760 605200220 656742455 960858883 271903052 828135063 178931054 951292118 878126513 929876408 443450803 548609418 251671553 141765160 819730259 649218586 36554799 230982811 55741831 454941908 646224158 782863629 715830241 486046746 428784083 480769992 480959661 354409982 18459834 972706536 563152556 447426165 349208744 82193995 55611930 296619923 701004868 905606330 966928079 378502381 203149498 634117172 368405664 527276929 193733409 464517151 155798770 978548440 853465048 709119704 239215308 33276424 175114619 28394608 836855434 158291980 336022787 281084818 918916731 978245569 568149270 111065106 128462832 610077571 541882703 670298035 607204791 207878965 9244615 963592464 843046901 947161136 991547974 473531307 486511154 772748979 582844567 820697747 172439599 502977837 880677605 492063853 17990513 507049607 613308590 555916635 29739753 856023454 719766075 208973723 856946440 491655799 524930036 381347586 901850935 224856636 618112028 315643472 763276254 507412885 745670193 91514389 954440997 805200746 380793896 947294377 787493137 221023661 724028269 919799 755173599 939927283 548635570 901077449 944617034 768631094 218959357 73831250 830546146 764402974 134859222 103565117 678472701 844927380 850610709 82222872 423307204 878807802 104286615 511427592 468599061 11269327 799421772 240553928 21723447 994383779 52742807 204111132 353430304 907142333 82384631 369944234 191497931 980373370 907855393 62370339 667143689 449585113 791882621 90300952 811672533 581804484 23758334 451321570 720818943 635380432 302330743 759940777 605645849 883023442 789632662 665488009 809021835 374090512 623055418 744648038 887886313 814047252 401827178 229686032 43818413 137514231 161220335 109616560 504010557 549965121 264171439 150349698 747919190 314997807 102716228 945294255 738534699 215888839 807180400 135401435 81211026 467579269 55607811 524242990 96543985 266692820 417030431 221594751 355578778 824392451 819995536 897075515 60023406 289141532 644660469 65154762 5711784 992577662 505281553 546180229 991374685 112055264 824728622 762754054 916071296 107115220 30462134 880973219 872365809 698141081 719350938 275321643 64623329 208933207 628694822 863370545 664492419 853302613 934219698 338467462 417434124 348443590 883470094 471921769 227197414 932610871 957361337 811441074 762541738 471178838 119919310 703825422 764171517 546605690 12943424 480202675 519711547 729860835 22964256 986464725 200405582 714376387 534085448 239028145 429795990 667753615 57330708 931487988 679211948 128713919 904806351 582004194 552683150 949781959 113353203 121800447 650896352 587466589 315750963 527648329 633777157 223020913 593224317 929568776 312520408 467769712 438439314 164180083 111611945 586744405 597261095 483932256 517440657 782343844 6120275 980726114 39244224 19176147 77549368 733887756 16432062 161229429 960546115 542432571 69354947 561633145 980733544 37768534 499160583 773826238 461746730 124470500 808903959 69118050 944792540 587096945 262785839 612562223 249774569 992679746 895617916 553967283 137530504 705467641 94342209 264515730 987896306 712775635 498860672 392594195 285458151 847259195 406698991 32948207 689433718 654226932 26936557 172379532 660645798 845634349 946363590 758378643 569210874 244638523 509265393 811575363 135232650 488314135 370099429 406458853 599852285 736648320 994331758 436056181 247212457 737934857 479954541 11257083 491230081 51804765 310812258 162428716 819408762 178929754 42771464 24652523 537267165 196001875 60823192 349914615 432072464 386488072 53662510 129669201 988341187 534632111 669058784 601256006 189396360 764321215 865446224 368244788 613941648 65069549 113283057 859537894 469483456 759287470 695543662 537869381 769768096 795299065 974211230 101845261 985497978 77069985 835055901 536069649 766840033 843095015 334985764 84431693 299920341 449101435 529218079 868740566 221411233 728020923 709591207 324228758 87397525 871886420 702329997 944523039 900152792 243068983 991938430 58312575 702832413 554840375 698457780 37605233 694333906 584578135 365168072 71498858 164500085 866544871 593277539 581272804 611653273 356413335 159868980 265331248 528099583 37796679 772049318 349376103 895615292 672181053 964766250 795926028 320715900 130252477 176959530 858793509 510346087 452014553 283916492 722416298 723070813 822065060 532825194 546782940 762080564 247637208 213979945 957991319 86675549 843314060 913554359 738228846 566994510 563742448 990267281 735559839 960624764 72686524 38048996 899944687 340947919 644513470 196341042 714287918 686345634 200646023 245986625 421520344 816758622 261190435 65012989 881083687 553782891 984838333 898208428 60484447 629957530 646513341 115894499 942083136 808517821 84249471 517096905 777145190 795469188 933987898 664639269 88495123 188848975 802348653 906560467 738859554 235488269 165474685 537136611 173752362 854451200 929986078 192482114 816139098 745381409 964348064 41646032 46530532 620059594 926290973 646102875 445585536 139005075 81242061 875956007 625304476 457546099 747630071 262899359 693548387 608150412 697625979 600300392 782228773 16652166 515411637 226812318 405669792 496220592 677788601 537596028 652771875 588946706 757822673 215441010 56022086 105979113 780097999 702456814 577034369 351162082 910468202 301180595 276610924 616715134 571092591 438902356 137266574 862229969 288043046 41133711 165480220 814429215 69293865 965823351 849238409 12397170 531906392 221687269 759323896 656667046 271616771 305478012 553545630 596608432 962726605 925205543 460487241 231063 142486925 903683378 937799310 27326586 794678770 592766282 289361782 431634284 102776539 429034202 391538212 6723757 145198681 310121377 518198921 815905641 439991119 605709051 339664813 414237790 220833710 476566179 729773093 29382808 362784415 402719358 817984284 376540320 131224962 353270680 910065979 224053359 952992065 793284622 644245591 805344356 172548188 909098571 295279876 148928894 550332561 105664040 722715806 97493428 506879482 793918355 485238030 188085308 627164158 10975117 74607435 635228608 890486945 399540627 488393599 292129625 188374307 821416856 490935483 638540518 734370244 347209367 287751242 275858187 667019239 309646159 150785961 745356183 257414983 585161016 224515765 391375136 456199554 526087156 208623636 796382082 869653121 7820332 670136365 245608674 451206979 620543613 152098397 404050754 690594866 356597229 70522602 92865694 944019669 915405731 893486319 573009940 144824469 604085206 633884389 978614770 42043852 383569704 879290720 95588192 623621417 711083045 498456528 34913826 102847528 648386538 752189527 202671733 641471959 998916339 61978693 655125610 147977128 506496903 254934034 974278583 538954225 631973359 890886580 363182880 681602089 848800548 454946922 252434831 936925711 847879751 358908776 880788766 417710274 87709046 165307162 860097453 976072266 645431815 52812996 678699611 442745143 11117245 116872980 626003834 212368413 649799830 221616964 502937282 677104914 920931193 442529229 834077472 366336584 853009309 363145686 712745620 750468402 652126384 813821083 513658774 771023328 831830589 574711040 929619201 225837963 182763602 940580070 182260704 522430110 211541341 641219535 147349484 48608318 170852049 315761733 387961475 986411908 281896648 223688268 750680564 598737734 546880446 781602841 385522882 762517180 813094034 419766275 808180974 624174631 851464123 116949282 362173133 770112808 524854776 322501435 556912989 895584104 268311611 609156437 22097949 737427063 415850268 691618999 729756129 421563592 713407759 506162959 110702351 957463190 130653810 391486881 174679796 22294903 289818283 165310378 437586313 692757607 525796054 438478268 774816005 101903512 995641971 517519653 992857045 636005011 844138274 745872538 75377331 122090858 408022827 198310251 817132891 455246379 328324471 214367983 187148709 174500221 647855714 817943947 450421565 62866249 858374061 417141774 459296642 101417254 89393423 830940367 658552673 649410335 485956559 323036468 952628872 237650682 433877989 297113759 595328488 108877496 891221227 157983428 713885797 400697648 428183898 17571533 795396343 311262788 296872392 295375928 566495128 969779049 911301442 650243552 139705568 868488620 602801760 778536261 81791338 296307856 924164122 242579920 802395569 945742056 189523902 599030526 146428911 73179471 500859579 996445545 451916280 991970623 36151132 314075034 607424061 540447779 434715301 166496018 511760935 848164318 321956019 75020546 624995184 899229350 350094375 932101574 266093551 852765517 758926059 183298214 99286297 908759242 996602023 991981591 219774348 884657681 473629769 370923547 979069043 814192732 105463742 480694082 974113850 424986492 466504129 138459159 81044151 797917907 904613979 554337180 97436975 837490630 143145260 596996852 846713627 392828078 34067049 576027378 438608149 567185384 186437520 756634288 589289110 107746691 467006503 363887715 707991353 261690866 477081569 219341842 469534496 808122710 360265386 298374925 380222308 988280163 239588509 772268727 155848223 853496778 495059292 207193146 453608857 203503581 267580330 644550152 189334657 332961514 408700635 274803636 936260185 262697249 278670480 523384523 595808475 509715062 859297994 224971893 249944745 156472687 323782424 791327935 384449405 931886705 710204592 924877354 207029747 488799772 172757307 415189403 445552151 559054949 829190441 658924855 563469344 819241109 982475972 196962103 27892750 105453682 702971076 967653927 74527659 116251436 592129241 638025655 380240163 370825679 442079740 311021894 585896908 398561834 104374491 966724705 657424158 140293391 713187185 486888892 77036755 493882162 458992435 830444980 373148627 768587561 627452470 119740783 104210388 482810261 314965387 556268431 323262574 607073019 163718440 944709576 969315888 271265332 704516018 908841975 189028244 780521711 190525709 441614807 201272573 678519821 528733819 544350959 920662519 943226992 503878339 661046207 239396187 459512246 613472920 708877279 962643947 769902391 809467473 856497343 742290294 840834473 766961470 284322705 458872029 670150910 15640481 488592550 322264636 518803534 62690069 880770132 908301639 203874670 540996988 322091447 292539790 655803846 159835707 553011330 686041274 427074239 551191127 557213570 335760944 379163965 303587340 305137065 626343589 106078629 736819688 27736197 217566578 266864020 274062339 755168796 829510290 913009350 323154585 507759666 811751413 964606255 498443960 287286882 185228127 975504944 557468631 412661447 573506853 957922683 594566219 26490561 918365181 410980360 889800139 395555250 396741902 669938897 228392022 372478568 126101170 923892812 581809081 573698390 710736768 307314063 116609467 353866184 387252947 799832079 259017170 927383088 292704529 640888103 952054235 269191086 497549874 770025886 586141044 291959744 485883964 59152321 201453391 887287149 785312029 958068940 629388708 784695080 39278790 712864353 296205717 525275540 377457384 166742102 96582950 90370417 332526442 215494805 710706241 37835899 780701604 521377152 42936618 422475729 194216065 207721968 841984967 146982777 295660578 703732512 139622364 924291104 320736313 363597966 607898975 161145172 476281110 440201828 980327201 793032157 207179521 81745554 418179729 720323055 151603513 748083153 756781188 503171986 745966968 383520399 139584706 272807537 718321201 514671294 423970361 333734022 676776979 809662203 675037906 935835623 510147203 763677894 583235904 246982556 420938750 68305121 452935760 206326106 786987811 439720370 936776177 854145107 362202694 635288207 51562369 887675879 973417976 807076352 387151934 767569989 282252306 506782854 563946984 203315491 834779794 488016152 159327228 607885063 140294994 147695618 446958068 608640560 288469152 884385157 411302109 774416267 26823277 899439548 345315240 298429101 785115789 640274716 131755150 840635583 259676248 648269201 200645755 874138714 483848343 227603429 195226751 351325670 794300896 29507723 88310260 589696194 631937892 100421953 488697990 615551740 828732001 780309471 787532439 685637077 366019770 875425620 481179062 411625555 499917174 335346232 738433466 579220299 883164841 958797291 486049624 408760300 70582656 660749676 561131846 416112649 923532143 261572929 154054412 485238198 781036790 235050846 676741174 572006480 101830057 790621567 706123953 354392437 868182541 138518188 940509492 110483607 566783271 853461491 448151183 62464977 44337599 591233515 548175038 671601505 206268543 412421187 268763107 372011970 965690989 996768717 730160159 3186635 789362189 947076121 764400675 992909518 893438109 300196678 850617248 891287656 238702209 927887249 373948012 582380350 673822005 661885415 185985397 755996421 606933643 392223059 387282860 361940674 555449944 858231475 464930098 100730550 235753215 751510666 100900823 198872435 592740155 724604609 861099329 990972527 318032649 539069104 245688199 609199073 123661029 203758493 554005959 557072513 243615008 708102896 464862742 48562272 710586994 105902223 336612288 278384359 537126266 113488971 610124901 595864892 942782194 893063616 358564132 268135074 228828810 53234761 406896588 525390135 579201993 492226833 935899416 774035738 556755841 483526686 803211464 352735983 588620555 27286008 799160106 921048566 303279676 308810839 838986516 596644306 294861406 806896934 182866626 634306968 130924582 640450088 209470382 949968273 204974383 171680965 991647158 539682441 589948203 127481555 468559504 98011579 794531528 568828463 331341886 390722816 797704605 711343844 862488821 496424945 945284323 472530512 111713581 428024600 466926209 943617771 657977185 49849217 102365949 857362954 678930276 242292796 614389003 378093862 526689602 7877687 926272001 501455609 222688255 710002875 131999338 139824125 766726453 708839419 853630827 48003052 962910021 506065770 552126538 705956450 645963660 826874307 484366758 616268144 886907239 776444411 925218675 739556342 446500596 932999245 324764901 702963055 668526598 844970327 626929262 558418841 769436557 548536229 559777862 65461629 937101237 546304099 793055766 31438903 374368968 619228378 144868250 905597162 451522142 490598148 491338131 436158939 746962770 518336301 788372159 348520205 628707520 230041329 508042607 250290193 659300876 105987227 796233140 900811590 354200725 652279226 204941036 335333275 164060443 584024746 318354894 251928113 392810865 686501667 985577618 788487133 214505845 676721922 35730095 855690169 553940427 505192182 764602549 865800853 51104910 872363346 690487114 100513372 904907789 246743136 673061468 335626200 149662895 327114408 158918027 758407841 925300586 82489401 45397790 449085802 106708204 59390482 244682145 53098600 671548877 691944724 118623545 653600149 553360503 717052751 314694292 751718097 614009764 2423244 576065063 871443145 659722711 547621644 722027638 219705901 454182224 427811543 228693238 793012894 248812387 41873777 633607671 859388052 505704835 768591231 258213979 169822125 770711712 764816760 737115291 330442029 81397394 901470320 552742688 751139078 1409788 170601122 755096323 859311563 505023417 247471196 465280926 593974323 638131479 22094836 145259621 916363177 683370671 175636752 790705200 479204919 648255194 674226234 613311182 224139451 411601853 561913266 903558228 362593787 692796040 336360105 983642297 761992571 923305779 457599269 771875196 556902273 534511364 754682987 673450328 589231039 835316092 714816133 683153115 164062671 447460300 6494113 243486412 327566264 558522130 965114783 403202561 51026593 507872756 961588788 435950161 785483430 264519147 248078147 691755548 811998363 208112288 837481707 445377615 970432767 133822655 735966490 169236964 419913336 757309939 210402176 413734023 24546184 862941574 974370594 859461991 992350183 14000731 734816993 850740822 784200257 82118965 214680793 472423120 151878963 904258714 562821007 434727370 690370195 745080574 215909179 838565218 892414452 20614720 13569768 484484908 94764625 824962741 110239444 572916130 365708787 833744932 985296438 352928827 673109168 16851694 399800673 70106217 398287232 752263838 782968803 356196777 90931210 650238979 258220296 808625165 889620716 921060493 680349616 552803878 747882083 457870329 438543972 86987376 712212096 234431384 740637548 206672824 812969858 261288589 165201992 976333405 123287840 330088889 599176927 752365210 385312709 605074497 77942221 225401204 170533794 277728257 217555731 719296796 487857665 298089725 550564094 892515790 119078688 993673895 264975748 506337097 588147715 52710586 389258941 344784031 472159740 7445398 290538173 522057465 320911598 250556760 245597490 908796043 212403630 905532204 21799290 899468618 146264550 639331163 682852819 645062012 196747116 18321644 973749059 81021978 722292009 335224922 661192527 319160930 307373473 590257785 451634303 427376603 84603167 45518301 977143396 418660383 310488389 710240976 901901810 673653613 72235897 262542617 575308433 164310917 47500822 37248554 402692098 756906109 861044055 479018478 756865163 872614215 457366656 765020050 346990594 309519568 62808284 171943457 341867263 701270689 436841409 147302964 422039690 105807099 258491402 712756674 350575819 126227901 30802940 46777034 17053672 501434683 915052976 794359321 372999817 191636783 388152324 443121142 618930343 59296614 739325884 343788044 876039015 638948819 441542322 685219336 494494844 606344663 655995199 974109327 940242832 161581448 822804704 343705435 658015588 182241223 903040714 797486219 896994000 497054149 875752550 681193283 749412445 958811753 428267722 532878040 450572237 473809700 609079359 292654350 135023566 356685120 680240729 658913748 804785180 224969184 112365810 316418363 954492215 479883960 901503772 81620652 348324079 800331228 727570569 160009560 951794637 703715855 212408251 275220261 391090007 705616557 477294050 447548452 557583877 386944038 114842612 674780031 802587469 800796266 919888805 717458575 194027432 965107980 767256055 570498166 392187928 9677130 851041274 709638434 753510294 746595277 232015160 553376629 712636960 534967093 866152803 975288153 146666249 717054381 976360380 30076976 964704093 824076453 232819175 784106735 881047470 141708735 293111686 134297773 631669220 293934679 553697390 885761399 56716106 815136335 551871920 515098631 771802088 171490007 100192973 512726591 717809707 647885053 848353036 90787413 990151176 741357684 850152371 961650617 352598417 750805264 401107613 258855963 901603973 772829471 967053240 799818893 799585767 181028242 28676089 579711440 637968957 605026547 352265228 552011365 159334824 660485244 397625471 697354191 461848036 902852648 765404611 972586520 269721101 316088218 685808929 122290509 997290291 175958392 296980789 57613811 316610555 406123077 961499285 900859373 232391906 648048088 791975122 25398359 578307907 670475814 327756961 748718500 120253815 567083422 466951516 945153451 877866953 178734124 783107176 776272409 72372433 359329312 896563760 930294546 142070049 342972900 31833259 185266596 908580357 795753619 873566213 758977574 692179220 647397361 142597497 712999410 27659938 623007196 731471862 769373487 966979643 226698066 499429787 75660411 921969529 437621350 138382021 27101080 525589567 774218514 784108086 854487000 276868948 765191968 693468001 502197137 13686674 928860471 601886043 985436721 512622041 140601667 478862332 340199158 641305438 995290799 75720432 397162176 371401499 182115840 26273281 688706578 508670849 931250969 970963082 905840687 726223350 670872009 192931460 562495694 897566478 634588651 114310468 647823543 578165513 453814563 410131301 34921563 592855073 665757831 529915757 688302178 737555811 417637746 919695878 504771100 344534251 782255087 377489290 264552073 906919403 261490648 361557893 779758020 385128271 205775994 947063856 490103829 915410559 962181683 283625702 198811727 943327883 935951643 371396806 176820907 973939666 941053635 642225554 435138789 796111463 553929394 926265695 516843695 258495741 531295926 138296314 219633209 129348329 994192192 362121669 944310119 666364654 470896668 753687988 141557057 862893846 613038322 763328568 736047453 625018661 455632187 839519777 541846211 499795928 386927660 187960441 147215929 606483207 273087772 37402066 634472091 268487900 991068780 817543483 165075897 942361963 308776373 683358911 117853399 528341228 203554771 404178010 93771346 984988304 469122005 625380320 870243748 137107170 982117346 164886407 720923954 449189367 726106487 563834838 870952520 522056633 207157512 764256075 442048849 925752571 44056642 35180998 669870339 848116288 873104252 554942226 747876009 807477784 965008762 762249705 895424915 370242420 699135 620963952 695161155 79668347 646427493 948671625 922779331 307785207 494221646 350305467 474893689 554070974 244810517 672190434 973705193 643964372 980688313 854671476 802713056 606221540 662530907 616685128 219682096 924223366 335980298 562100414 998761861 880962425 825087378 556897439 65063723 624069733 793465180 598200639 99168839 293119660 927944229 30000083 242839761 718428845 946905503 821613961 667031142 173458013 36782032 854674563 673142165 794817237 228744691 663132357 54880832 793521887 308503020 834709569 833013697 991666706 830399718 64355647 828440533 426348717 554314339 412451285 165829315 930686073 592712355 611620711 988076156 203729091 802007399 769905771 634991889 752351452 922838421 62983168 627503247 918791893 745889882 964190799 43477058 431099338 343016800 119134613 239184031 807650271 237671537 869006213 783210399 66908564 358235480 359886922 91058390 716624280 555148507 561094283 358228118 573042517 103790145 608272034 17573382 112103357 704585822 159184210 450217270 874742385 932635024 402723530 801935719 130732311 110069833 46273605 773843017 118164766 221803418 863703443 628128490 430347534 397022056 165626031 299447218 769183032 774999740 430121532 60557669 211077750 484762583 379193669 318085577 937882341 924957508 60090295 709148220 194650585 341867394 352030944 121732321 660061933 246966013 113288650 345552025 964764621 606427883 776479112 435247220 443934431 125814474 708057917 936788483 373865032 433501026 29042075 955354495 788385333 586518886 561504900 339055358 890760353 207620767 160574389 969250791 787285644 796861506 898954518 663531240 288173047 285753163 906568649 570683004 34265983 486668188 227455085 632567202 236298214 809359380 46451499 876067686 542000751 506234064 11056586 281178438 685959314 622001256 837845355 329821689 378355961 30204842 413390945 609528 132720953 4541330 653627572 540663980 611757438 183399665 491894762 864618591 320115169 578008105 490839320 792690708 154439383 987845755 155623906 80652221 328884636 368507496 108032441 734365577 342849353 498793176 845838153 99341127 60251010 727006199 373173642 267614899 531671286 391861988 42794079 209865266 866188790 21789704 739727574 670089312 725339581 86310051 266501098 821574799 463064168 353735074 626350869 623963397 900282264 886425068 520671559 223327750 106166270 272343539 304299972 186981417 544370852 650400845 288694457 990455764 663330802 209710038 324253129 734877845 328292153 817192075 956395388 324630638 760572913 80780252 884669511 843438048 6653613 934579238 659294872 829113444 22626640 486857959 440485163 142894306 282664387 800403539 130497234 55448865 617436211 466541369 720116244 638597702 774218028 85203100 692685728 481169337 552226553 480463305 133405457 460378137 409206222 220639961 979509472 92120361 685932475 472020555 265763578 819301066 127069704 457251898 421183480 790648101 662273111 885671155 927209267 456189176 503380797 619204445 904218376 731356193 584110837 616812403 166847188 174253436 409753476 131340984 513181417 948767457 258739390 188227818 489238715 83623460 490950520 512423668 390788129 508805947 429311977 406595295 216081339 157420668 612530101 531613530 26451727 432308071 545202419 851476700 706612387 605556752 7573 453855890 942449113 715818475 79556364 896265895 719697985 140244113 122643934 103625317 214507771 804967510 163583435 511501979 768082892 156210673 757212818 518487919 126953193 992759952 702565154 864504615 110535699 760219042 84381655 292800801 900947086 305505704 474794777 752021254 433752649 809120222 264262188 583940824 977230846 474421291 474136904 93447211 561642870 788559626 806057406 947520322 295879020 23784946 540705712 719679959 309009965 181133452 392033609 197009216 672287532 884048486 850716784 526105500 844280840 759784523 430823870 248945256 613997810 44450732 632268785 876379881 204515347 881274077 475282534 595650293 115498620 790309008 680358381 803772383 841099111 315712411 795153654 563865980 267002348 236550282 10022854 375993855 878805391 937677767 543521190 114739386 830857932 411200231 523010594 156670902 739244690 861724195 940079716 878519692 506047284 536929303 166583692 256006340 830498482 601952811 775578763 739352373 681690488 570583983 80109181 429112410 121108468 53520592 97448485 973184835 358481244 335225155 573685969 715327336 835701859 703672206 6753971 651921684 776764553 756441565 893920888 621701526 749218522 697037876 790586851 234369987 108658824 798718402 97520439 163449414 903104478 629470822 406797905 182359316 57629811 754480314 593648850 977813293 265368897 223463544 199824769 399570858 797937455 834536764 337808041 481852802 458117448 136863940 424926835 843189843 747787658 377527175 365993695 392006817 885204601 982599717 776656736 734026661 781759460 747489167 661524600 107756823 417830289 864486107 947070909 682776150 971925574 542078935 95430248 414237312 350068250 434932004 854941798 813988458 437409290 845515437 943383984 215942589 97487148 884740642 875701224 826249462 843556869 758702035 472526134 631348213 672491910 911801334 754311147 427918869 31795957 584094861 250715009 109147409 678645826 776064459 503419001 558473981 492444600 358793464 711532143 589949731 673854478 647058991 697773157 532222510 244318641 890514162 820445576 591726522 568955296 394617653 280668442 73605834 943078082 945644013 768569866 830745389 268353265 111252538 3203421 827862291 324470980 460753490 309508682 813164111 742617566 722776122 745517891 155125118 362280201 579518949 340661750 597955415 185842048 541085191 624920237 434394261 861705099 748628597 771951817 595163783 625723453 193462066 452858646 102226479 95483725 564474747 400572057 416888388 789822144 835747251 330479516 761476758 58740721 271465304 541190443 587263918 361964867 11942745 894545213 239931794 236573297 518541508 907879176 338062887 619878401 694487655 328590325 213703197 565828189 335738810 719525461 577852854 171433859 506839316 296751517 328057011 968932988 500814201 960604043 908311783 267926731 214560617 382553821 861274445 792040745 243288689 346285703 610445030 250185405 286413405 535895274 980873529 638974657 801880233 419618915 49775397 365319699 222391810 33549745 534069616 28351258 907410841 768855851 377025480 945493965 239139279 20320660 697114350 410060666 671701740 645925572 742534081 719095965 217060636 81802751 293155103 280519587 900963900 311920886 170613390 883151803 418460130 380664907 833677256 911001376 69408766 465093238 61957983 451089490 831656597 961701950 767116455 579727180 156709876 149456333 18517054 106332497 227860966 819771850 963482021 4346052 239493298 953706056 769713000 824017826 580164066 308015348 648933906 386708096 844810939 369057556 61770290 583047270 656460911 105271087 575589339 123223774 658752745 754009435 710296321 190061224 926534477 675180963 16746612 601830552 562367567 478748442 107344584 115109794 192242404 792382056 953354390 153939016 489802695 582133982 707690233 489660074 81722159 559688066 547486870 428461842 138254235 146901647 114860306 886891626 335335124 919064242 262799240 367573002 317464447 118335361 941438844 899528986 404591458 87143310 600051689 704941391 866694369 721093988 557626533 607395354 830691723 644589403 250186342 174613404 253376071 494083945 72643591 581258228 68473617 606035281 43446700 933701557 416802330 713974793 797477234 366888928 581436852 779035448 247685759 464239423 782729311 620477789 491074484 933874637 834798432 481913566 143230501 345213050 100654830 777114854 310692475 555733623 351238300 117147338 466397420 511878205 417869322 513656776 413826924 543359021 29606752 693136107 570574643 432347047 703273877 871110282 930767348 76789386 72814667 374220702 369420564 225667699 803019125 654512376 160355085 300460825 816621267 609752893 752632717 494327478 821847559 240389809 560352892 962760932 417323232 259246363 869382399 965011710 468506909 471105547 63220879 377799779 659287542 213910747 115320995 654925252 136872829 925130217 146521708 843402890 542977530 752320075 682743419 698971887 173389174 987055407 682372672 783372349 176335225 938093623 942254133 197201817 696590998 715207646 837315851 994301708 381936245 132402966 965533183 113234143 495705684 35498957 355521582 698653670 381234967 692758699 853217678 443380060 182400140 318497044 614153155 724442660 480349452 496410286 629668779 989275512 756612402 145507191 205251011 34210734 92503777 679043528 223676743 810129195 323838337 630540099 438605200 626492245 174335373 166183660 865041501 402136258 238963073 152747147 320413769 713536696 20068371 749927600 301500146 90219654 736345800 890030292 615482154 569241731 676324036 603922006 299529671 375802148 506178829 414850165 185978267 116282571 616120568 423333951 193928307 40856015 38119 385291727 413203095 164358024 345552448 577592606 37882294 795757692 179732040 140770756 377201964 481453538 468917053 678745002 425071216 557915858 977337134 953583910 625044597 285466825 77865114 12018367 865538276 572506330 90030001 483533268 454951422 472490627 678769918 413765859 179049547 569698094 109857694 169656259 882775793 38733163 140779867 683831147 244423647 535966682 572033140 240190041 405270384 453816451 531146489 160156260 85753589 648698718 899539070 332688612 650328423 125369873 583740735 512398286 361434310 609768426 328161803 684458405 562371566 67930350 952192275 885033905 550612182 619391284 509974027 686814122 318638487 120457981 360351014 747184299 385969496 114038094 658939713 959444521 603147775 130981329 6089486 996554942 876295072 545392825 74890969 933235543 187158214 373075207 595734216 589597604 231025495 886708397 509488710 481193311 385247925 516917020 728638489 359074348 859479633 439843531 249405380 733746017 42135697 545292584 289935246 615375460 938261466 53424483 838166463 102539626 773576784 562656889 993054470 352994258 21304865 74003344 765989961 373201748 851838823 637161323 310568756 246188935 946809133 479129505 606325356 840817337 75468497 532102088 478201873 717449973 527966927 270940049 199816331 756681354 743262539 531569145 156815009 29106014 595743785 100144994 128461640 401825421 278024786 976778885 348253268 656686483 160696010 960767804 798209991 424977486 330222857 206956984 125242814 17366482 189731366 434771759 808483739 35744354 530777896 34601151 61451563 133978894 827425892 21078599 684422207 500818765 365922875 740817920 380012463 120369247 746440513 795223239 664973379 988960112 533384555 538704212 28844093 732948867 773282876 618858158 192183966 954786593 199465732 256675706 959665428 933614761 916690945 856456344 630133490 567989367 193549536 459135311 570335001 428646337 173749884 332617112 299552789 707608985 134702940 708395489 912317175 580842577 342074808 393733918 347236053 923497993 99548017 967850292 950106158 825624584 319520634 616902172 782303545 615659727 171999775 210058340 299192597 482257155 190498755 786659017 695672564 826601583 602767978 791559825 718957586 353126413 270702272 236337150 619161184 584357637 797578260 111129698 882561005 719783416 876180059 606081780 801775121 886615161 908706506 103686098 820563519 813053843 744558685 205617070 177963710 490795218 946465412 203103240 414812009 178363646 342015964 484015744 176909916 521054341 137320402 513079584 766986502 243908044 157899694 424796630 168296906 882887229 141156545 51502206 126161857 834851550 120554863 428501737 793579238 271997762 237530531 153818993 394496203 197708834 660492974 660258421 546582414 583358206 839707561 999942663 899934432 65398676 781459608 661783592 294808503 978457796 330604740 331802999 410707753 150671447 401722125 548320720 425684632 910557003 169861813 975269187 10112479 145690325 311046960 709502983 724507470 125586933 189352916 756520455 852925976 261354022 336270347 554435678 453589023 78600744 338986705 407705794 377583447 219462676 855564570 686710778 745209970 644219123 361256760 655599084 146377718 930664431 761385898 469222089 490130923 798378514 387943896 249693627 970043614 150195542 98828154 529768692 935093608 398605319 945389165 723578609 529684300 32281820 616252133 995777418 957268520 347549534 205885433 591320105 278290162 467800484 498958880 652605647 410512728 22376007 22081852 930024204 600091095 915482855 233812043 662431248 683336850 386612376 785508682 414221751 506022528 443169968 422578670 569045579 486544752 856445995 775531013 227764914 155152580 928294862 610581416 946428715 491370113 842261669 839168073 788939036 983049593 980843499 555528964 256198899 340553522 519567969 993966064 802096828 345401616 136437093 242642120 708931249 641195271 156067929 615723558 102799007 757763195 254146338 672887789 396624142 983376432 683460746 129069698 716090210 973538095 940188212 890113177 545550274 717453781 483166227 721329332 135899687 583308602 693252359 304206131 353902501 701114596 882984427 690797141 388377902 970766455 115222096 217102677 52324285 161324777 375996177 268152489 782784197 479519982 190867357 752203962 722409707 246247351 9417886 75820830 644972472 325311492 783974455 896587308 166564741 624452025 823740751 854608102 509856359 887881417 350072925 239239743 396871089 618986520 733245007 427943726 836109035 564197364 323630600 113690948 966412050 945500500 710689194 702346656 301919569 459770473 953611243 259110705 190472579 747597685 336939003 461459945 368539975 290633584 679384658 688547436 371001240 468554616 994035873 687064925 569051945 208574627 247079449 921674749 280697807 457952499 383430452 270886031 951960654 98733747 589033613 126964792 299979974 650291456 948881139 902871339 213564719 541443188 418418443 31637178 306948501 250422867 183342850 295229081 249708038 158782743 932704711 704825475 126820478 259462687 920142829 196483178 758392743 624024411 489439720 354714265 790932071 260530542 879907121 593453229 830006907 496569264 86933526 885836195 579616254 793514392 564417700 916043972 33728862 467035432 502325219 114644341 912293918 372547980 15023397 528954707 977983563 461377703 646454965 578758771 594175721 90560920 284038217 640430196 286001985 690605835 422631286 764429129 374643011 363050720 909636738 213383724 33656339 506768186 47433309 580928289 637335960 978290745 419058465 261590095 787695701 934781651 935813920 169844007 331879160 629247187 467460408 295344584 200890936 122959077 462285967 108564754 847141726 134095115 154543287 328885413 982524686 32066238 911067701 301776356 954465511 589995223 999368114 786205775 907757962 109515325 146873110 436646239 566779218 129345158 762598272 181799885 647695411 207527846 205315785 595484177 348998981 205694210 589120313 23396259 484856659 188389077 735787767 674828723 829217823 275935622 802823192 883193020 489383656 448579028 42274233 750473466 286962250 810144806 698099772 912894120 3652314 5165751 644462288 485028797 67022742 595506517 598314295 346839514 161101599 246824844 499454522 955096756 497551941 313290969 843565118 388460824 439057047 203119865 655097454 389228320 224034151 170242471 775087463 412549892 53106046 216741226 360729404 408241381 287160980 840294532 442619776 765628127 685320057 154595419 54241225 393360998 261464897 225818797 815634702 84741464 848967060 171696816 982140735 125537620 314330390 307514422 293057483 690521132 816809140 441484058 132106616 816229844 829682978 128978290 201969046 595015193 939282806 177686877 255313135 312399129 866568973 133407826 799375981 252964474 993001302 301211098 836219420 218803233 361505344 638689214 528839491 800768647 732911264 946974694 656649416 652587829 249417879 750420611 83748799 391022781 830817607 818495809 632035968 295605335 726193701 481793721 730010006 427643985 323511096 385279537 315284789 408294099 746091613 841561057 113761771 260267229 764267712 621883841 403450056 758651893 875325444 81241775 45205371 894035050 648347892 810944553 255501863 347886312 208590069 935928743 908884823 983054995 133775859 366923447 522287665 204363239 295134124 678228407 984872597 16577339 459069268 786508625 379731140 936393083 50390967 75864823 397597211 317942968 894130236 375273919 298671570 558385606 418256067 557372781 564018243 927422421 589383315 153516544 183233635 955914420 923767425 148585561 319574873 589478349 3254656 133082664 878411855 829376807 591453175 306078862 145165523 916003813 566557931 592636835 240445516 805709975 136500819 494252479 966908791 160644500 197303192 449708576 561501144 428824606 904074193 605400871 15620383 593119232 326401470 260845461 789612311 652872319 990755991 87711781 155502816 382265303 453864323 404286549 421043655 499326609 645488816 557549614 850235258 829993431 911004991 287272029 157942261 233882778 453563243 850760186 909989958 158471902 276981402 595515615 476071160 368618515 311315853 149622943 154656420 645862366 443497505 530392494 14133972 888285379 654429968 475280248 465449809 773213029 249664230 917309963 920601953 220344028 217075832 83862945 869191369 584950100 347956364 790153712 781752143 883061028 268228744 871853955 479592967 423986150 851333619 521543983 778154967 115666877 838772702 396068699 431224354 817074562 70271002 283120900 94979323 961600412 619196007 561276113 689371995 683268614 148610740 553917198 389776349 762681042 718092460 886015820 770972305 666764270 333069162 648808069 996228931 855625111 666548678 574828042 948418396 833786203 148871725 342650413 822930823 791796535 874456667 254527343 828417760 31981732 80523949 15651292 372229074 971196721 581904204 294724660 693694463 274628208 223686386 287626348 261385467 976028779 647234901 194322137 256207552 256572701 604629317 558152122 216319762 502893010 954342094 256685288 333186738 546581589 295571179 162288857 480271582 900876809 728774721 942949601 653308230 980932417 833309721 262572924 950441382 391502980 730618682 583617305 335173022 483222756 707321635 465727043 312230021 10227338 967967354 869204076 673095145 974429643 969465421 180227460 143073854 445625333 918495413 519907399 977493022 827018754 449331515 609609278 172530495 66057550 897989387 515520211 559241366 489197737 526394901 937122512 195649001 328813190 789989431 446827083 698372702 854906305 680647282 88343357 239410844 884604950 361316307 132939854 534360751 298132447 678306292 961478268 297389345 633150888 192509208 955887281 724636472 371008158 64789571 670876200 665887245 538309543 435166503 163562785 47712637 19269267 300484440 339771144 837813570 999576042 701059537 762374393 582892325 236482421 804977404 82992613 542797338 308301011 261796173 530361472 297132222 655682051 198903616 523330875 587037590 296039629 767958241 244547832 59244852 955661426 830420389 585519547 610115474 868695312 397144608 214422596 374272219 502515506 185435272 229902517 567077913 652095495 652469749 71423725 26673212 778640238 985348648 328668779 756815667 168416872 218653231 16792916 838160613 784803081 345806083 408536204 42993609 49601585 802531930 411559004 450628387 253708967 683396531 253386448 862794433 468067367 488329244 776106477 157012967 447472914 901181533 130927055 266789740 174053641 55851799 440447409 144524742 211734628 804989724 373921139 872688406 749045345 733586053 700328815 899810256 831289247 767218698 827310723 78233887 78253583 403748314 513961833 675149875 390866270 550711592 509589352 769510594 113007228 767828525 968279978 517365530 982998758 165121273 122962420 256718228 946325094 16754247 702237594 503432806 705916755 302947667 983014892 128662791 197346058 514290876 117366123 208804129 515669022 988865907 715186969 949752636 960583906 96362274 535369676 391209779 593146877 785188022 909896931 33473467 290219226 648196579 197888086 58679052 47608424 242361102 262361567 112462535 54713995 985633613 233725019 799687153 955340560 787230246 720971644 783436530 917930800 892249804 51384051 23418420 847119182 729225623 331484523 465400199 718730746 633864300 971511432 847943982 894813159 384530118 944146710 322084031 400998243 454280071 592616662 580659150 582876417 175932274 859667551 935407324 457021783 212488357 277359975 537848564 611060549 438852818 913687227 162264561 582071059 38855801 77988996 447307654 283817294 434655369 19577759 119652703 331303281 536961119 682902705 872479754 721779289 750549829 316682066 584561132 656106538 404959917 81989897 474253153 561171995 229654110 576131458 709490853 214351245 329536779 484735119 317075330 513786211 878946697 76524768 476766719 753520753 44159595 416946453 587409222 754887124 755464960 993245399 101561708 989006154 783825498 641084741 774434441 701338601 493639736 209985351 98814841 559819784 856505882 408280048 51476405 492099130 357128223 912111649 109978002 146871938 84212343 482186924 421265406 667644896 433618735 995118157 353036999 482787823 1942125 808372249 336446811 292290950 21333315 848184002 578155822 792351188 44640980 937027120 286384940 427951984 185401556 698834016 347655922 422817458 681485179 19749929 591321120 280180482 409982876 835686808 456022717 664388350 707050649 94620918 744639180 561372122 705604827 113246503 466578564 32128267 632375975 734118103 103766195 649992134 854159841 899902181 474007740 741880396 14672649 99271495 809108641 918294525 986828947 123252421 111720408 897101683 888368136 266816807 821712912 146773334 841927918 846570977 373453280 804796703 310147322 483189098 159791363 44109554 537180711 806809755 64378610 283961501 893310003 225482350 729086855 353871840 677794932 314333181 743321559 975274786 523786651 235086482 847780759 440448629 924491011 843633535 251206738 841508266 977896609 323942059 121902802 309148093 54951041 189654185 676964861 589170959 766788372 89594337 756416568 623745704 248506698 392595715 527196850 191666689 276384926 922746425 242257591 415624845 102976178 240752904 638746738 150424831 495937714 544160521 412747114 414680438 418968236 969263888 472508403 149389474 708048434 116768585 367113167 147713800 231254988 515804731 251965117 327365055 645218845 30775094 360522843 95348085 65004516 366588432 909363040 115721465 945473525 249843051 88180554 934120737 715730521 278234730 988129984 694529434 109465854 938575716 697169950 524391578 664226867 916393521 271000692 414249233 547318041 880946115 137821638 665393741 385085811 636609090 529937329 843765793 184188436 546003288 858144374 892540425 889688426 610892110 849816760 323716839 299187768 267121256 578013037 921794985 693120389 856480998 283682124 774223428 665618798 766746410 796962100 950857256 356820804 318162431 119826418 148006083 812732031 30786028 800778849 695042680 438304003 444894654 63404127 849510728 167284872 807828370 550506033 507712545 177754851 364191255 339605473 172781584 447677161 56959071 766420829 384464664 945896284 327987416 185829972 577662243 609797705 437384963 340075224 216113925 565415411 24578154 913733556 518794720 988875477 913187539 131619024 200136892 287069556 818995703 899742297 545579419 81655025 188186706 609405393 116117853 52283565 563488242 226506463 734982600 790006853 999820944 765888319 18501509 500056219 714305220 731660998 718882925 165442824 499321138 467086834 2212020 428984353 126648168 747865774 973925666 694064704 49142993 913191492 667937082 959898228 700557561 60790923 742407876 201513214 233553471 779479206 851611023 464434097 893900507 225562720 455486615 19060250 120689190 356693811 315446779 359212617 497576948 124382003 83102002 553358818 798430855 552493824 932790091 73670392 966818837 599812335 666330102 526224462 245528233 182923151 686276955 443413689 976900482 655156303 802968636 287738783 548258107 738289149 639055468 425986617 101396478 914556579 532556222 861714217 787241553 980945332 466928574 856864713 858635871 372986744 521521012 428181983 983748352 464935114 668938199 90917637 203001734 376703243 448610640 829366552 778778518 10963356 376313677 383847938 578039459 525952469 470506582 990525190 785620793 476699664 751487653 230934166 295857133 106753813 710343317 37111539 972738005 622870512 581792377 993224706 754568313 630585187 611560272 765044620 749296601 751014363 17158669 658773992 488155399 154279852 98402599 673046425 979286891 51089583 947644890 987066628 555256935 527953279 613478428 2440248 967452653 559241573 700445759 69734507 921625547 863614517 153292244 554621990 467000461 985260657 691484478 118839730 240022204 467517411 193853126 734326089 573983342 657755292 524370649 233235069 805776728 305464867 133650355 854499794 848320508 50592479 34372147 125720172 206694022 240788978 247175374 466595666 613209642 518772425 13177725 321058771 219234136 316877318 246450510 144144411 842764107 241846087 726559693 617838195 371532364 448734081 676731754 745639909 782243868 106441006 479977202 536032908 709061350 860512231 127804537 61669991 324478861 509598722 958126205 260015363 765221241 345159550 209828330 126469498 409002042 245896626 353537720 450462242 968772836 290537482 414080463 333849896 649003189 246362432 82611214 425227906 804957274 729590720 168823711 472302485 200045059 681171269 112132216 518886488 703247425 58937237 182514887 141243246 177473362 632293379 463802602 712132716 236322827 153423449 784399488 99749290 429673569 727530268 258538619 786444902 872080713 848521035 889409004 507948959 422685020 707330681 170589322 765453236 354548740 335522875 274624830 769329843 735229589 34500275 271181590 287609105 289047014 665375606 129849563 706516776 110690231 306772297 495083514 951022041 959251865 785226405 394982105 864329950 474430714 136269026 841390516 330690641 848550223 372060218 3076212 363659267 120343381 618636303 548194137 217545771 300184991 876742235 108862681 29618524 550753895 839435805 163149050 442986646 858022880 20310279 355228838 870324130 802425755 760280857 522523698 277532156 503708165 238856877 217047445 15915547 355320601 935711660 695800219 704479332 491442962 499988687 506949048 159412226 182568982 938744039 157218598 449711270 806882983 211694182 261662018 550187640 13890239 50584171 821806495 327525742 781481054 418258058 686102315 241004521 329144593 5333002 962003350 982225264 1455606 673939037 752029096 502345827 863207118 755343178 445179511 487838262 900227377 89209149 291479318 52663269 872039993 999167758 797740220 535065605 372662604 791372153 97805040 209785265 419053557 321896299 779014732 658046922 135625281 628675282 476177403 836195583 113630751 267295457 883728528 103125281 184974484 238110405 48708942 453544270 176891845 740506741 430703317 317218401 785087519 132089989 679512536 443531470 83640385 313634461 632494658 418855756 170614421 872054850 989524417 771589093 492496827 413164056 15001187 367280099 925771167 721338127 583139937 350324765 738310536 698315339 51006657 710418361 377537798 935360073 577905466 91011643 542567282 238580093 512316483 601950177 348906786 850437354 231860958 551649569 339931231 180034419 120040112 236048441 29455128 755268184 436156137 716269882 77894234 702668210 223174143 566605354 562355239 596861474 219240243 310308480 535527178 193910011 193669835 341715472 299022371 666259429 275542261 297602137 27836497 846547198 126850369 651714404 14651973 156923338 884968598 590387082 203520362 403168566 976388442 356462976 888294122 100102595 567958148 544014307 460175170 812578889 533254113 247768787 611659846 728054309 809956532 5037930 899910019 169178793 387753136 231700161 531143435 512833565 787587053 294801991 447679250 171260402 709695675 885055642 482738690 711566382 710442277 85670070 307020625 927179475 271178641 154263383 772763136 600371863 427792741 527836729 981341581 120677372 517918337 151887935 897356379 91144489 396468991 51767127 882410325 696586077 463007888 419013552 309229456 537579244 230759936 680024779 447320355 197787149 741982582 749449418 682605984 136966273 351156262 216895500 953367443 197768252 270966006 71814205 928774297 552816321 384835916 827912559 192650583 78741670 260003090 328693781 566248475 879874473 381513946 341436805 272616306 785530925 225526560 879233544 295413794 304488444 575309974 435168911 335749066 529100634 618645601 871284853 114867460 970134285 527955745 627654734 936185418 399321349 828360013 288900017 173215280 673187805 367633224 874586570 232035140 29698371 839570976 111566538 679281175 402784571 420286653 376353281 450298897 536670657 166256410 335960663 51647349 519970675 654450168 271619653 159278484 525784797 497208908 364656819 699900051 459667895 128856838 653862689 716767637 170312467 68272807 240136658 16724918 400873729 980896105 314475293 890222702 282335098 223958634 942011419 415939417 352156035 478612009 592064343 255182898 475263860 352140761 449665500 494645915 670830314 656214745 467166409 811281948 801015894 599598060 810098523 198562035 146032195 118116135 614554585 918365832 479706279 381834249 87987899 350101133 48099649 618973627 350353742 188471740 390286365 799466414 56583236 615733526 901744397 816445474 495312387 35255481 322760462 440308625 858827459 567424776 622565423 588245296 220980077 315055570 49082989 743815334 498597447 404740207 89617789 264241384 786210203 441173190 536071172 531914899 419507334 768884176 195981498 567781127 652338001 904179556 69526244 391255665 500585003 204674780 907613427 522255296 386053323 265614788 927955522 364773949 684049275 669273802 980572603 284997221 893939670 692259631 575072963 536101581 418517997 652407691 291322709 745035206 624801137 515903544 394399119 152914334 638643632 354715316 408946015 979640865 850359960 737289856 350632850 831316299 121710715 437881704 702344910 273672643 46741957 786960396 621200942 283596756 228973867 843047822 68693181 917771354 706647927 600330017 624876360 470183698 727561201 302846704 968569551 78533669 336494095 378635257 464080888 84109467 224946088 213628886 294266124 106769276 685227686 621827777 702601213 998646118 782628279 549922012 638477448 44284799 484286064 344475076 551701167 987338265 773367571 330552411 607304844 427822161 92660283 162598162 914016634 939927627 815455365 863295794 916130000 699174469 62494650 741873129 442758755 803714681 591922051 593956394 608297967 263370854 280045240 653105285 876705738 421987802 960495335 332467046 809697111 338047869 238968214 231389956 487348225 717166022 539706629 983870665 710024059 500254666 568492054 857083348 140881281 853600592 606501692 779168461 7021601 433606208 738695658 156418366 396333741 475268485 31037103 645441744 705282610 405983959 628047569 548755517 880663259 129319466 322697822 291411616 384331945 972576834 971230094 759319287 221943769 299651371 665322722 633674768 775505262 984872815 104464029 58871549 959736271 628034468 109766109 714114525 995779264 811195581 910154132 294568958 229525695 149212352 183046238 519263813 244888720 614946437 151053559 678352263 562560005 308546163 895147528 275517927 518985467 753131957 531325803 494956312 520401221 783623762 543851822 864047932 574222255 486916276 651752393 558808804 680242562 613089353 544475922 402570053 516128008 899835413 332183097 554745309 147121586 651800555 418128358 741845972 71439181 92582047 823774482 754000876 59177772 477899387 28317687 702786516 731446830 706861193 891635309 622867137 950370073 624561437 608720620 393996075 822419177 484719228 228736930 887829890 554912425 345162957 533241729 141741702 645552108 77191553 777627693 115391757 310208721 661581052 758819522 272332070 321119788 871058261 819907523 226657548 138797845 492709200 67463614 514568418 76271315 671883019 48911460 875348423 804765416 625407413 277006939 625834345 330530194 409030756 176237781 825584749 756186965 323208881 583979131 730854036 272588649 914920013 971600535 580571633 943782364 741850698 475460640 926375633 388033429 792041862 33060833 86550566 995255764 614141937 887541198 945759881 268286721 715575355 381019155 731335453 291990428 100990433 976609810 880630062 338319449 846168568 225942750 611615502 551733974 648524298 202919424 113706419 526333898 358125640 558899905 357755044 669651055 118833342 592093657 115581355 527635672 143903137 768994544 171717914 752350871 732897902 920470895 728718924 808080915 812579215 704857117 753207299 180469914 646261417 827245586 153257912 159522635 694469822 524968201 986401778 691396753 837662093 570962360 36445641 459248548 109335754 593937638 673256523 769125856 201904564 223753920 795423204 771435814 783892715 826510012 908271237 48789843 961690405 859945992 353318731 363962264 773765469 416818626 729284868 684534939 747088344 9147455 889382503 110566059 914870918 358227058 108302203 610377776 943839372 28887573 636239541 376249307 366185592 609035308 701503107 80852936 595640568 775443372 423693167 982106014 346958940 505716567 406086388 702167596 131294032 589257873 469668024 867309062 89419001 678851273 54334994 316184782 720205987 745104479 931041226 655081724 451549233 896487412 896806710 789462369 345338647 386238410 751058103 947562889 654320409 706184126 809676417 348997703 897392157 988906714 863864670 379712012 186578907 961180566 753231827 354293832 749923354 861659158 383154411 995196050 361404306 791174084 862300592 619469347 353297267 555026972 170136655 597898773 314485895 50725117 900939737 57133981 585823401 763694344 798327028 411506715 757773566 926433932 674188819 170553186 541779088 806608145 586912637 72032940 611565437 101558866 840485861 701028562 146456264 318616209 358562360 905008699 872723052 488776629 87830392 615160242 188567271 327011685 59700146 497454769 532060663 935227930 834617048 339830592 710444100 608347804 638543749 595356153 839144967 561979976 188461113 147377674 611469803 878689948 651896812 781131718 506546807 249716476 847430280 232131768 662195863 948951772 833117367 385897653 251799240 859609545 290276036 114646725 928140461 885808886 212240403 119159958 205385661 547395785 911017301 965466012 382653083 710465159 420032974 665288945 484191253 373252720 905360799 975572103 319348913 99502795 970812636 56969717 473040405 834567212 730829869 899613878 663338050 388254447 754473641 219628111 881504993 948595750 970531500 181531966 923385751 682892097 986862926 21243293 133142436 72658110 534948528 822490919 77315728 571823041 678517493 565122649 172990307 445541105 443454177 496017888 866893817 246927650 558009389 363922488 510243493 113240248 564878398 908154810 595302931 106089653 902769052 111541881 920852085 705926394 625128060 668025415 263538799 694271769 152549584 550569142 35898500 454076614 948301029 502717552 240025106 825972239 159531454 999045621 534784515 889068876 972761631 576788103 543526817 382741293 550448576 645394491 378137571 594145109 557343254 866955375 152619295 132236789 619534089 793727868 896164735 348760593 581360816 454978448 85012946 929089056 719806112 133215217 822283358 916051196 685212009 155279846 890669197 33000869 658621792 551067134 299597199 225717021 777530011 248215760 230749739 863257059 873682280 327136502 778472380 683911677 711387877 68184569 583411198 341970423 851857926 623567204 109910 750830488 897024909 554587388 37327582 958864912 874415144 7044187 164903479 463410479 286043124 3759696 577613472 962397186 330933261 33719824 409404615 649791160 12174834 439422100 91185536 344689664 866298811 980347119 379523859 417761431 860717628 493166647 826862787 600299484 626964337 28436977 855408181 764628672 66257210 504454760 186012951 151070411 205922256 287567581 677915723 945145638 137738838 327466778 713821606 440945044 697802605 466641070 213351044 944906331 179146208 624452715 583563136 760124520 822128778 191732801 864007409 628586343 435840500 325318057 299154928 497824028 209321507 42769922 482480212 696382678 560436240 675047654 504704830 193956541 590164404 244774577 104865725 587716011 980037487 384843289 353690381 567292618 903872126 635980194 777879657 780456556 265101200 668492854 174337589 115381489 675704538 813629752 325844795 704447539 803535244 678083995 277811557 119115536 842300437 49399327 18345790 705415122 405566869 820232680 233623500 410622949 774534973 884744742 137543526 731746096 717799986 720168318 606816220 683069115 283252340 573372294 554801296 437355344 714465233 842836117 457537128 78363245 621748160 898685371 426682143 206384636 517065165 715988297 552635988 830009733 644549434 770484535 390405711 374764451 950747130 935576017 68606389 377633181 914687913 898127650 174253779 137538146 321680800 889807070 403670789 921011909 44089148 339078151 416873866 987216317 591168662 16318045 814810972 116947494 564899461 317738637 882060160 491521379 614444932 151677320 140483700 594983492 308617323 322322925 635680757 467288238 524715263 757182885 186898838 525340372 673039642 230610127 357826240 467127505 913182914 801238523 647997228 313021357 653835279 545637385 447763281 770010768 415892309 524735552 817074507 502090568 521613075 381637504 68098436 57402289 390078042 388848900 538656356 795880191 148510349 730462252 72816098 165108431 704967681 462905119 944338610 172941969 456243698 517980902 565018194 367498411 508909789 366539609 319358494 471749422 676077686 107279258 861866400 399782179 320422356 904020956 388234860 15007642 233130055 979462951 924893159 435564057 206826815 663614401 362773929 691636425 611733512 219138723 529152267 656364895 852759423 755275458 425526406 486803925 583295191 538744113 626423284 454275793 305183120 866276012 967987545 276812030 963578798 427432032 296380381 255161771 303859234 273447193 617453215 437161918 44467436 534298348 901044588 535585528 877150077 906375317 304365055 368557259 546310459 33534682 113514652 858673578 326302169 377143144 951173402 390458628 100490633 337521564 509078359 727385775 729992504 513497584 857999386 186026446 198154241 178801132 605373305 507667302 868283239 661202365 165065179 459269695 482346423 47369557 122611878 599288384 503557445 77651965 655672215 161108200 353965806 581441206 415054566 488268886 548898880 111800327 399924872 368609173 411186354 937105975 854850827 835784430 993205012 769772909 868347321 657648278 614555455 857763587 431110422 368270547 555086824 3928136 449433967 425694762 769109310 653311438 229883896 710663186 83761212 929580 43788154 485899529 596207968 567518636 417240990 488320040 508863412 214505482 10751313 98067195 697990764 219245647 588100275 672969271 728607098 578255415 360767815 115956835 595398100 528143133 127895661 410339960 578278284 681293419 715061548 807589839 740885105 256397325 464400036 663283943 39588816 894256382 288638116 800959824 704506082 632747794 418597179 292908735 832754252 495684902 245947221 893761899 729310887 826140818 294952828 533884063 513309964 559742492 242878531 209226044 999487134 92347209 201043626 926093673 382302330 547837904 415307343 280855019 804660884 596143699 72004896 770896415 925331719 684899790 310135969 959307214 820987233 805049654 845098412 353118170 348299075 643079322 769648159 152932645 476378423 460672731 863201525 231080096 232532190 279690001 781850613 132886622 523029847 952727662 889811573 533861441 643278673 264465333 325950314 259610952 427646573 79853709 220869042 10286554 152593211 614180537 421207223 893384669 552607440 408610679 766683463 41296736 650266706 774402979 391297714 619616424 692125383 980206014 935359138 812037812 779784939 789585975 239198409 387309362 339935718 967856534 595337949 435662997 43488590 555083510 244419669 204160372 58547757 691286319 839398749 703616163 109942924 518195168 847507576 261580974 349511830 763737968 918742495 757763692 783723525 658120687 426972127 527642630 779645310 610547379 378472359 902885138 189383972 623631979 367073203 256448557 824411454 210975912 440350946 748268176 529952475 439792261 176768434 922897527 692922476 795320793 184684410 630884688 95631637 18180751 331571749 741286203 767255918 827827607 284096713 981225608 879299323 799926680 303863363 233017321 869254838 684485981 994538849 482030385 417768353 58816344 409292639 56749527 88771848 527832789 304752379 176217229 625229602 200601730 115563296 76432443 716321655 613107855 32177793 642352999 449083905 98298156 761775059 982212218 79768714 215647771 591317618 499657035 141394826 179403801 600958776 473095149 48766681 593016381 131936406 461524903 749719008 974130594 648047468 772920985 718404049 320039493 127581599 921742562 476003502 698955682 420172836 820698946 734520888 324899142 724092178 30058117 732081803 292662657 918712570 220809982 453846036 742219859 393837383 672659964 971318519 192553772 465565722 305636262 907307690 614212043 819703213 616160784 179588600 803720985 818897264 74408969 244363354 857771571 917985484 666513583 69171780 424448571 397655772 392030930 846818232 413868201 1593355 378192598 67976603 339575675 479822895 971022323 854871081 938163706 720755664 304086424 858884678 305333555 636118409 913697921 264942494 769957273 467015435 386080332 157083865 33144363 561374358 98332950 787238404 320422465 909543440 786290962 821487511 665804236 829603773 61319651 416945813 746943055 528051512 41291819 790914789 111545523 237553767 144229881 772963573 554042842 690032884 961761338 575463733 207980213 860299225 861952453 833407202 412177334 827394370 747374583 480236034 257367016 307551850 993524077 796275064 622641379 942220264 668495352 19804203 543313157 46193703 552858232 847108566 368083161 247175984 502279134 611706716 387432361 869449582 288110460 802666741 679286977 129257841 893549391 503453412 63202354 83414404 729142962 949425367 301042633 861888546 486940256 834305265 816315556 945536305 151754987 498229958 862237769 564123007 383152792 260653420 434601198 514120074 483274168 935433694 81867802 578017122 812488043 58923525 898116342 806225665 77965357 548874514 287542560 520598295 668729396 279162495 550787339 575936277 570317665 898355843 725044237 672427550 951525989 513760915 41123672 333928672 817837365 134438542 271760421 151649908 689564208 70571495 396523879 959986691 185162014 299571241 28435588 733707992 911516326 785068416 254990585 805692846 459324750 367747053 191053523 631154048 433921551 229763883 896782734 954893890 159218920 980087362 574565871 256220710 603896612 467644510 140369049 682535836 725069184 328621000 13033767 658905258 651028405 358849883 702674619 712542424 202078747 235189737 142354242 572777536 30459557 987658616 657475772 881797760 31068434 283711140 490522963 82879430 747162230 862474912 461817329 895372773 781050265 750865760 572231596 989075314 433394120 881727311 591563897 438272522 135728962 986867068 112013525 980333836 982269203 239384895 571544378 77646165 121850514 205702854 964592948 104119136 941344648 595359977 641286086 292867144 422625378 525751856 350201175 951992520 487837229 957517530 358590037 809921921 397032084 793903273 974348943 918307063 791832312 295891358 964192767 192208787 827617004 67404641 962068508 685659639 484354872 230554556 880288576 7385381 971782966 176736315 679341102 158944308 963974520 1175106 585504423 447953937 790899352 650694545 856760197 743214728 144985100 633131233 359268362 246079842 326386297 772833311 793344655 688677705 490441795 382295828 763302100 86085846 967731696 168700894 142383611 826734119 291267132 691694975 42562489 934490573 402841969 316100987 361656805 357407128 487883568 120178051 713547710 533135357 117304761 642576937 986704999 847874874 178046376 560009456 578740891 284828945 711604183 675416907 779541774 440783761 274441825 182701870 343218207 970189178 232930028 212099506 626248538 431206195 553819844 28980167 735852630 425693052 613331094 197011700 117234619 778066733 913745426 795941402 733682813 404592049 730016307 521056211 690450858 317838766 989675664 506582731 160695077 595878712 220342682 231623370 96826894 953447132 991874135 809521105 407015673 450447881 190045246 209072563 167139145 907655779 484157512 794755489 511382497 374839915 175172711 991754309 738643347 713234673 564701803 422738752 308327482 701143208 192085071 228104580 650985772 288769000 614345509 271976061 704985559 209569128 98065907 398605256 332620065 985529872 843040779 301862039 180210439 543091445 561699347 422469780 784742976 390286976 644802402 831053249 192497643 979963721 541137785 827759389 91151179 25686142 564950490 710435682 468860697 528981649 565305159 133945902 443451595 202291110 29064393 609624391 487171956 882366005 980284593 794418853 800124220 385445491 631010283 472449434 104884991 334561013 420828426 371020075 297853173 827501934 734621471 418702637 889635014 745055671 320742228 12531665 396580523 142195141 130161986 239442216 572658086 649032521 185454432 686547086 180417574 36191048 38744478 434196672 975687579 51632708 858411432 894470 517742038 72908105 744460767 379141511 613077785 3815789 811930167 701695587 493716858 739676286 689519143 873797267 365657713 870006825 934351218 675454354 151222302 981540331 297732857 332417515 649822407 823377894 962284297 666214720 892333062 128146394 462285693 929887825 649059565 555378899 776138844 423287120 588708646 999426558 576482688 493193136 54913599 415086307 500801138 190138576 594354784 37236516 29534743 532771326 554976928 96386514 404517326 748222852 762968315 202055592 382051056 577792461 890933707 675438968 292216427 886149760 308270909 791524506 230781144 164077538 85016828 615975190 639327706 460096571 1756145 604280719 664027824 530279298 709869182 821074007 178602563 630651227 721812358 915440112 555127882 3449925 857695647 473345892 74136703 427147408 723503724 410154807 481024938 534452152 652643469 946787866 590361202 397634375 517585606 159966593 475034555 36544588 722595759 897464184 579962680 545197206 769258790 156164369 431445395 7828268 786921295 677612214 396195338 911434552 427371711 300826458 939647561 754551603 692967454 287563942 206370975 327916832 583227901 205351490 89267132 729147154 39210481 750265546 869142653 832006920 609344832 857109298 751623877 464753874 970609582 655830352 24898574 960468212 406395815 338771164 281031607 586909654 79722375 545889331 316452586 501758717 915622961 461227518 974840199 667780411 750242827 252938644 142499059 853153570 603896200 983913072 224694204 149568579 529827548 670170443 253921520 386123414 507986295 171202136 981298430 8830955 314270185 461637285 673509110 580106286 458503954 876944919 25891656 404628970 337862661 713693549 148731840 93969352 76228 731703112 700437061 369194639 25044751 990486041 765575919 954075148 652858235 401975293 831125292 234201383 360097170 338571459 672716333 436472124 550342624 83517118 40159375 468595996 60178964 430867043 376671079 727390416 743342613 668371500 840738211 332639134 229675424 968337407 915286717 977936306 401012842 340314584 862481536 968672709 623464629 293552542 969668108 521426745 337350510 313445290 956326528 951280722 666101734 466687282 468495561 392989957 737602207 765891759 6564753 351532228 448251768 939205162 250028370 452305124 557807799 265656298 743103071 368283978 679993555 566517084 47988593 150902844 352774227 898135553 919720224 529113538 252584465 508927152 196903555 593063312 5227150 228326239 636888280 769606953 771470603 535098931 614641504 251289668 560347317 139681853 594175995 695057094 674740739 983138559 585286719 538674495 578390767 101209829 478468509 92523222 287925239 164346338 36567050 564613312 303730413 527613966 351196533 394345040 231564977 603004641 45213621 669609135 580019019 62819757 452064657 101014644 415564513 920652183 906171599 47125560 94801998 361314393 997025869 62690121 9862355 571136404 296701414 223970723 173490187 739929092 700672932 961265892 338626178 533820923 546689689 795721135 456696498 280343175 588659382 896507593 557781944 284048402 548126147 234195433 148596756 302735368 728565819 759424345 429746194 355019699 884257882 700561722 372025624 255039605 502094663 76964285 96949467 531036857 564977134 107766865 137901627 66624361 833898986 183196868 740028535 757447890 167648745 320412590 223565467 38237267 930946400 449726828 136830943 904828650 453361520 640971610 275405092 924858617 231892973 510738056 404907410 647315798 70084047 175398390 28556154 335630273 848780043 141419960 654561283 161084635 12506859 312268606 929900480 267528234 244675272 856928774 974180957 817509809 974906210 591489453 792257676 864488359 184928622 517328168 245066245 874645344 589660093 346012361 405486415 136820893 413507977 544695117 178070166 88122735 787952526 901189500 264954060 927130228 850294243 974325815 253834897 377231680 237836866 615577724 724605380 763207935 56390482 768437675 652575624 60967340 967607595 318730037 861894438 259453851 415475037 305962204 479327284 456045835 377026979 288689003 798008168 61598862 920868408 596814482 353558289 762521778 70370290 655937275 250329728 378752570 931584326 583809750 934486713 92195261 194777855 4492382 360034559 867366354 390539113 404478756 346114753 658314030 174291307 134069997 592950328 53946576 798989475 1986090 216621047 510974900 614948518 648343538 147545308 929517277 507982176 609163694 600556461 801418906 57472064 696386529 19450048 237455378 173345455 687719464 833934685 339918703 456870535 612737855 4770857 805635866 282548633 180757591 831368063 216476541 693690246 140263303 71462052 416009398 973454950 934945824 917396860 72432080 929467540 642561585 629631172 120345376 914626869 967401051 502688868 697131853 732690180 238103523 568088099 475108357 598028964 537149466 85698113 112208152 765133151 869780799 513412903 491382920 623389185 816546783 576022824 239936659 174092708 323839733 536837928 97515192 455146219 928939570 762938094 831230745 452375159 488866751 895390527 610351085 440919546 796887329 847737141 881425311 472497297 130033097 295799089 963536855 839978932 105993686 1021652 407423801 11188362 102870726 205768641 413052819 770653734 57942911 914277909 126572921 242319931 109927408 153731715 606308472 240878634 483388199 97259035 795091592 218250468 138541039 451316811 927790366 379172510 438089057 312520857 225248517 250160974 133772643 554881761 694830311 754841192 387721745 377408492 750768033 723055598 883708597 497056659 570110088 260233461 669098779 576398278 229699910 772183614 464306193 939685941 290615221 770122232 211231417 861552322 625684866 868180102 443474736 690657303 196130020 500099130 819072790 408579229 562754637 478468183 276186358 954422303 484868283 790446606 757974114 930353884 549095911 112053144 772298503 635717614 480132065 523638525 566942172 989008993 321350230 933289830 376803671 72185924 412007377 559398501 409584712 318530536 101329569 156957138 765938442 120477692 823329376 553126586 837553979 216405686 178879948 494810751 272685633 129403735 378855970 370061541 756055219 507859884 594358404 508657166 486040549 15744421 240239110 563805131 999498290 448242708 590096116 276292820 34442513 20818062 88202724 183589960 576246236 865891996 613718779 722717457 366599404 155433088 895426343 596042946 694224648 968325687 891738683 164159319 225736208 63827742 940900266 301179409 468064315 130793441 56898478 814332703 849392911 448411346 414338327 915209946 388593851 182460413 989299459 491038501 806845685 808537366 353090339 489553707 931667383 470144904 11974951 440071985 512704912 285105781 883903034 95864840 322564502 251869366 857338457 948331618 855573203 306244682 789940159 882943072 960621478 217027742 166575364 873189609 842986028 313554144 815042690 496388486 799485467 158074181 279434135 571751250 311105862 713224382 456052284 222434223 380525540 142540155 917641683 864347939 912338436 218547833 37616005 679269824 864182979 515741529 689776844 615345317 980233845 821327166 86424629 854184028 747661996 515570380 637197374 388988714 419199133 213117562 415264369 182344435 138374259 138929074 562767543 882552192 569729683 746223278 684623966 456220495 768103608 954799152 940458625 777393962 705854142 843373213 118830547 199745290 48751989 996598574 277819990 695571274 933588847 283490843 420961061 567577756 217530472 187341253 988691948 777765055 839368163 473536385 389034231 7298640 690902191 665336288 446765536 43783065 869969644 665826116 823666689 629814595 831378803 748980018 621497065 87764654 381379811 62734718 750076092 355926294 686626054 72798526 234095980 480264720 220328266 507854281 509949508 755084045 647298871 407907064 716253978 705569787 825104938 305596833 126783313 440749274 150729064 341383415 204498687 61296943 44740556 431014989 203890702 204423596 137850324 718187893 790057034 276556726 910347658 654226122 33621711 849672970 344324153 146577183 593174760 349063962 950789372 712381277 566366464 455991684 131928965 764724679 9052863 835838522 880987716 410115819 303471093 83223681 533245927 214793887 123304931 203317450 688542076 650827830 494835909 267603570 116407512 616783995 26078557 674766196 657176850 973816059 273551983 254357796 30931420 566419428 211073274 800861678 611428875 384767089 322339381 154290200 545090761 420326771 907937030 924290768 801392421 802658179 628562606 733518000 218604556 341492520 351863386 764802804 432798935 481884464 536860415 149697007 726046191 931455530 84839956 588534268 255250541 187942265 118141696 531460823 869965629 994003977 389757276 455381841 211400556 657412729 274768284 865511988 23517096 105523889 923148931 361870780 186358578 717120930 654526258 282585311 577847037 710998285 260169252 290848511 643439902 813043599 55334788 397876996 621590125 1675147 335343636 732736839 167275473 25480021 958145212 28973032 86721453 493193324 946299786 456823694 702132258 53608536 712922951 504774842 224510280 214730820 335980511 835333685 873368462 433188183 450613957 570962637 340481754 80836152 104992406 677552749 268633131 220490621 520882953 102246955 247983944 698007364 563238863 417977319 925268957 997205853 245878946 319908184 752440827 371911278 900953191 728985455 658568168 37684099 814750422 962645642 6660483 136709059 601878296 145233411 240149019 637817180 311879992 707953211 373102864 613706247 156190739 799883299 903759531 751799472 719444509 729708963 545326815 411930714 765940400 319715405 736633630 229959379 156012863 972186210 40872596 629925416 651699294 202882307 455933697 50285212 366722922 854500187 491785768 123897299 769140246 575113047 402408932 122280692 459377573 568979350 216390086 294617030 288890817 920232709 714066350 559570994 712896965 661443172 374742847 21104232 673760239 156669396 160703615 91147734 701211584 266348811 856280562 760185666 604103007 114234823 599088006 159034087 939808488 860384198 760973692 188331172 493948726 457739867 567407392 906191908 773937473 590286981 686280837 159651511 53487827 954492829 294292688 493256754 411083462 245504033 54596886 516649644 813166371 936253555 146837650 562247612 532300828 677972243 567220837 898951091 931680200 907981782 890177298 209063450 656790433 873277329 963207666 686590512 790671538 99408724 174866368 524173460 164239317 572676385 480434044 718489837 127571161 45135789 47696576 290325012 462950443 386622607 609380164 323781914 802073247 932127988 248396312 623310029 464277148 724682121 753495697 679837292 595706589 680455079 991933969 932893366 26571506 348699379 740517206 988672256 1663412 812769716 352965593 106247396 982365306 443944082 791525542 909801128 557950167 258116408 75295092 660426440 66103428 862026552 73435491 474805067 172492339 214988695 758473712 401120619 394938564 609642300 21743198 761830766 657371522 549479916 261825866 451494498 189078124 207180854 715540726 443780916 793156821 461612396 570016072 30793250 34923174 270005368 267229805 719146845 784227942 575792015 95018701 297067864 246642825 498534451 737283162 239471258 70182162 186447829 813311296 281665606 792412857 796436760 752172520 541342749 508528763 443720746 475710227 925992499 218107054 2011333 923900821 29652351 384075184 384149904 751733561 858259255 654212235 462896215 252523562 855161442 197501368 954456275 844717798 279169358 291461003 714073327 651135933 220163963 884476523 323882215 207097094 115781795 971264373 445070129 123701333 511177060 544156823 354742968 219250655 691844964 493024012 314249846 681027842 516568687 341170168 470471761 32651504 2827009 792899339 242072980 623140030 200885304 568523423 40462791 31680766 232013791 264653815 96533619 852651852 96533741 44980070 297683502 449048313 865848291 365449218 93721488 759214024 363407786 957247940 138500370 919730064 205890839 180426333 63811256 336696179 986377741 857280781 400554229 25700327 680377082 290638882 733740298 39465091 959154224 918883151 374705777 985781158 38858434 351435 476107012 669885655 866894097 312130278 855874882 959043457 611862495 187522965 646446366 567453745 465513768 253086612 695817376 703850825 520761118 77706123 345910024 76892465 24530420 311024388 263973546 322416432 837524235 86897660 472575944 741927265 692782935 307112074 37193425 992357558 355132846 248007450 426244901 592373881 637240210 354175516 604921118 907707441 186372678 841511520 766367242 191360741 410941415 562168452 965008129 84039328 617794055 340191383 377773574 676896658 611351376 68822530 573053643 725778000 967816987 94906782 266920755 536006971 76365826 724828409 885070849 333080174 48725655 81899662 246378128 798239374 739055832 303032790 730053244 326936296 377726260 89101462 337312622 168306528 330473707 636394138 299321992 313790319 558880277 427709792 856475782 778764840 645451206 265420369 683857561 108446353 121337558 530106698 365206019 163379486 155976336 813922032 371435492 50766791 76637185 237472616 330369582 292373941 652376319 412710561 380076725 995794573 665987901 807774384 849843137 804004519 752098142 835715004 906162883 442174539 887746838 9120244 454990667 884887161 966044488 809177716 304355899 640447562 146513314 381798683 343739269 8137962 514142347 867236567 296319862 402025810 154318190 631815810 123183205 20508693 469859137 965112677 622147352 697706830 726093424 469665464 173893534 818054054 103032730 564973367 692362674 16976316 655456337 150596564 218422478 772776179 450132709 583095904 726765303 331019187 878113585 19606699 283335064 350951096 755699542 641714541 674802837 76900157 503542628 909496843 567709046 702978543 476643259 303991993 984945363 277550194 904231835 599283793 162152685 328887022 630203534 866659329 291210009 337627471 714438908 509168254 429211836 475726515 732331879 504741180 725078421 880341415 356984734 520128293 126219103 673335761 372373362 773656583 13524673 910313103 427094723 367857962 304170699 106119198 210440317 822873690 386251445 507276813 512879084 875328130 773690180 918617574 706993240 872384104 483892326 715935523 441099000 782208141 516970761 609785084 479095518 234829712 514242569 645735146 12147204 855586374 995480132 940187245 345932219 111644736 350230518 341435113 239658342 827494574 166425084 175936644 293190723 715075886 317304092 160127390 38822457 11244086 75624037 942055251 369351186 370563159 382553619 389407053 944883115 458515603 95870362 333050320 162423986 488712931 245891133 366570556 720789425 318932866 77199556 375680864 544720018 955379829 832618736 811731074 907325091 346816515 690550523 94104803 176366526 483756699 710169300 562502260 368702519 162115747 276788175 830260579 450905273 811875066 643240148 185558614 841778282 922756933 756941544 337993731 543628593 352923379 540338527 129154569 935392582 994139391 993828519 424507225 562862867 448929167 983885108 770284140 4187802 257784043 507529033 821160303 793340729 739884210 930809094 901969423 230739935 388698208 51980976 775395248 117947804 754934864 984958262 157635052 597840333 81258469 541993585 24349611 371315554 909870772 255853420 904089136 3599875 27762456 812121932 392281612 626050050 967412340 988064138 241244709 301553196 815801853 883554270 479148383 759348136 700172726 112564917 599679920 797973714 49023800 303415170 609747704 498696195 701650429 588594382 250842523 588254149 429978935 517542584 364566033 160774359 5946304 291302812 982400180 43881885 972084561 556156895 160347440 272292538 393547433 957052615 335105099 165562568 216902833 105751663 727539856 463126941 703685331 586241023 324124684 13022259 478285551 383907469 615439079 432441294 673553474 773652258 503805866 565063602 586672129 829967604 212007870 742257213 839189408 702314936 28942796 455949682 506713919 456215050 121116645 631313202 684487369 202899857 542707753 496618391 589890727 542656386 954108097 621364877 662796419 476669137 874565650 998394792 812388154 793069258 14608252 385942757 169734 605241207 807533229 679039989 746494967 208468435 153091017 535787795 822541323 696481239 476363156 12690526 550240968 238264259 891492453 30939389 320372382 780654766 234549067 438718674 178167164 507739100 357337661 715719418 434194188 394105591 607728686 147957064 991060524 226216939 576114630 551615814 497068728 150607418 374251079 611685691 773635938 709801450 131454581 186992128 432596356 520317086 695685821 391732318 436517896 93786516 990723840 346594137 362794934 802559029 543047552 742302847 517662755 485134833 586800712 125203817 60472323 811707375 219312866 497379455 981839591 817845644 610403742 424147452 723254577 609810715 961143588 673047481 798089676 535835832 176870803 442438989 28199074 111633944 485052409 631902648 243627585 153588073 370176780 45446105 411594711 25078373 864133810 949473451 333246186 222459453 398291018 521124399 248141602 182868044 387944014 236286152 554871958 742095948 383749446 607823711 388322008 11145203 744671226 80171391 659393813 688773019 673481754 588971832 913547237 450332735 13063008 974405050 236069711 106588258 504536669 563056527 758023770 898656585 590289336 309729329 816453257 77831637 239258838 133050055 116178619 316172720 185286236 367374296 835571757 266927903 958834523 731528339 788641253 661236661 56376791 346394839 777398405 114908399 328022307 138513990 506963266 254665340 771692239 940638663 852845293 532601519 605811212 656484316 980282996 994724078 778242787 531303668 496698133 298040806 370640861 45103257 187157749 613216492 251629539 814155914 570327615 389269949 612752484 448189706 459669276 900079599 74551941 912633702 56024012 278498632 554629143 365708299 882204085 493610098 350077563 759593893 127567696 580379673 967101632 106503864 571906725 800624754 629534849 987522809 148720140 11520859 791727116 895434079 317108089 858558205 31756455 652692525 454928685 15621979 548227230 466759817 911677124 268969120 97788989 962860469 968532160 49537177 666926124 563243511 400088662 775796200 31308044 900590180 145308555 692841031 804698296 464794869 396667833 330650588 796796508 998720733 856676879 193673518 608305015 630160912 987292622 730189827 290325534 863710482 474970339 524325209 83761810 802283661 457263990 135425356 734237723 69823637 395133936 769707937 410760663 810530653 658725110 289736172 989897642 81685316 18025733 304601417 209855574 53387467 775714463 777647892 59841116 52888922 867101646 135513944 166247536 178446148 231052288 371635401 24073460 563107281 426153636 357648071 603274663 451333150 737849452 824803732 473866716 30462356 48478182 19190533 240343955 93734600 177261494 415674955 806136258 53179524 723070954 534895102 684721969 227676102 803454531 983900653 954660996 879214352 838103491 411827051 100564158 454378837 126411531 970459681 721199834 889541306 844283581 745286511 822817855 767402514 933157218 411318584 549646340 990928272 835408695 207793395 421316481 466643591 182232694 687022263 108803530 264518140 861789087 83901752 939420669 628614947 319889040 234175546 452806664 20517971 12741864 771524049 328751903 146878856 428925354 114369935 960201589 351039360 11905928 974382703 373305967 315124922 934748319 594862525 92971859 617715843 592710161 591900874 990600665 826520213 201392764 721413139 443351367 829027673 778753589 180255072 327636386 683583863 619741047 565117286 351721620 484113419 359191033 464151082 245170791 816958277 828587097 914084627 330594353 639201900 942537640 699878888 710502459 768802591 515654626 761055430 557312500 22527078 833053310 74992534 569410657 813859686 379174425 408418566 833401520 982126048 961626318 578250913 261459059 800685618 503142403 792604200 477665922 795927972 893687786 947923148 197693020 380381016 458111451 685700247 482831216 219776362 160510108 533405301 347540627 50990158 834149819 719752848 39002043 137338978 77714093 179211355 684959489 395293639 982198039 619773497 318969040 4296112 180714262 642236587 482096585 54468124 700847527 198428464 696198623 723326997 565510148 183144231 734781995 282030064 544028139 185810983 665212052 309308052 847995555 289315281 434334607 329835324 735874561 720503236 892453033 938810730 958856568 305438181 329374424 881633795 338623008 462653792 26229400 400343744 257337458 340577464 944426307 918087391 465991528 363506332 397472553 235740259 896022144 733919887 488788488 786639553 49412748 994739478 554173107 593170796 254628345 214421510 864274996 659126195 817678635 167304143 181982494 621660023 510757594 968905232 78139229 388649653 209417035 526002422 356339345 50317278 417875139 307379347 279835308 734104551 852192954 446789106 467728618 677378590 931004099 59632074 454912284 222732689 16486164 336078848 284787836 511820313 506116895 862857316 483785269 200225197 870299158 274229950 604544120 230997551 582146655 906406900 797249685 119390907 354469433 662900389 387531667 258077417 828494263 38147404 987245270 845015093 966009781 722592062 755037046 502233830 301543451 281727145 889289781 517265830 763683530 540427529 929611765 385964384 808170536 800772671 971626995 610097033 778767200 622184856 71013285 701518765 47766522 760203034 136961756 406042883 933254973 189621461 964969332 887263767 675600895 869533239 381515804 203769156 299569567 818032567 358213033 919746665 481790920 577879247 196256547 828120419 362347486 660138988 557379984 680689723 202771917 920213194 820503866 929468328 652460084 511444217 74649871 932279319 469073387 998429939 427654639 671563055 758130816 650998766 581127001 389221312 834720302 449442418 858371133 37533754 522012796 944333235 563557696 156200023 158896248 195969199 608238890 129881673 977171973 917935371 780594993 174080056 609256985 535107591 745215012 886165396 769754961 522725567 689392291 929705455 123316287 713719923 437616911 961943546 780159245 437115925 573677977 34674748 85442564 691931394 446160506 793513863 852098921 575056449 725898529 943970781 667190727 262702408 155389215 931493650 712104311 58297374 998975694 101802201 366167703 159283613 20657186 577347595 636985738 443456871 328552605 54620809 766086214 857791768 65552304 706033821 281512606 119433410 596707527 572274705 400643714 801866610 421272632 878065826 197527643 994265693 747755825 663872265 591319005 965631046 747725272 966319481 597838163 552796225 228762387 236416701 726725357 309819584 575275933 139722648 604937957 713631672 967494232 647572227 252682675 688810913 697623113 455402230 537937146 632161969 429537490 406227513 92263319 138293372 611121131 854192171 789188178 733089906 918194922 330186380 778166838 690991728 977734196 606309381 21881202 988028373 437133586 118773866 641223039 223318950 325114818 949109374 843799671 145683433 44101196 211652858 454425080 309004807 603459013 891093112 398020288 953955442 671756360 49125292 424984640 988608394 463652613 107179879 617820529 265506519 490553459 176449599 422275264 653122913 525937311 977623982 303288216 756834743 109692330 119206590 127360900 608753495 58894320 654821697 824415155 473328554 497381935 251227104 213369810 681974681 102304484 277302600 221060499 799077984 852754165 7902833 515183429 825838973 238912038 165433988 39651942 630897006 143988300 865875485 766320068 198900235 581391602 756911773 140753886 795781158 469910342 158444664 118162647 294719942 817370509 578487057 357758478 527283490 580820108 943411460 166263254 807648434 428392467 357821338 472203776 816009886 886432358 204916109 27588 447297325 967350402 937772535 565735456 9933497 747429815 274588401 224578555 423909649 252037440 821811225 302039435 354955854 600494639 562454544 393718974 188218791 469257857 474046312 263187927 417640543 211721393 497163825 299847582 341610939 870834257 830830840 9691513 56188716 404659312 701455586 688934213 382194567 678598868 307596310 290796049 940402219 868903583 931813908 224291273 449272605 275693160 248364652 687215722 255199686 206448622 510097148 804606790 262785045 967235199 589775671 544555658 252388183 22370718 200198153 374842378 159712533 357519254 53862169 809743492 436518587 716801960 260917787 730342608 898242855 791166669 543477596 632252698 236684932 418233548 38074400 787113495 410166378 298889380 814428668 286907547 656750207 702279003 799799427 619023014 875447688 479447718 685088155 977636357 17124361 238639221 111056977 124909538 403030081 212385363 737006956 612051095 674976644 57796647 765379493 909234651 200210498 811344911 369334041 375512492 504243400 733238499 477054065 408070870 118412319 648016639 967583465 218635834 719169927 506736063 404451012 606873382 468075799 788508377 800484376 666700117 894509542 477287203 486913784 85969883 271019502 78807521 751816662 926652989 326343173 191323323 559529941 835532513 98985083 943428610 492884827 441849738 406118629 232382152 836735813 25148771 24943117 685981467 748418308 496682144 336561608 378986005 991746123 612362701 367205944 707906036 203971243 454225869 439724172 217082653 598873936 969780094 121316106 657216293 155055591 56246629 633378568 302563470 4080885 707352298 525095165 201946046 191371835 55164182 401312792 858747125 845139426 970714003 885177528 431694424 885266940 298267126 481015249 730618279 365073152 720546133 37698490 756578001 918722371 711616174 894252799 547321150 861177274 22312940 162430533 292881811 951915073 572713099 712438791 336476990 211749479 861274270 863487948 858496447 502211889 126323539 293695147 673473791 829564745 891416043 727624135 233928234 398493714 896360201 871213310 985256741 163639594 51426160 30711641 340829161 835102818 870097593 690802529 359537740 875076977 536136248 723058748 154953709 613562905 63510340 719522621 448333927 582094495 125100089 153241568 974010262 463050878 692591085 250435408 283569806 628706094 415096637 803278322 284987565 874958690 118448055 455132145 460733917 70736760 46066601 136156915 437145527 551756271 246380261 517481146 835727639 109046235 484696781 296548002 159377716 547255624 506800980 888773654 465488938 57201199 954048097 596621620 458778442 515510522 446313149 695853104 222367227 416360020 874292111 238739969 973222772 315586040 970610120 646147526 179916337 375607686 77281121 300413488 255053360 424846913 628705719 280532394 793172796 771281214 874359144 503475508 927966744 749099651 291069124 255666784 808855459 135362708 977579913 637075432 510969489 124541328 139443554 887036378 253748383 804697669 416391673 222726682 427334732 709309011 133478988 458836641 657906213 962771670 874160816 847195989 840722407 916036409 582916285 108297819 12130191 580450021 840291199 407356279 791315996 205690442 150976727 551624704 167756724 310259191 389256774 186744222 280866963 376920746 22122523 919085059 430470273 999090258 274890773 366859185 69485123 906734804 190598910 459578223 200960348 827090980 892904886 821933959 199457972 655150577 782927469 421490450 755997031 729041223 204025116 3569576 69857872 140639213 386058103 100025413 484812832 130543286 497710089 979157524 488430546 486182126 601502378 314597010 600493999 572019033 296462417 526823795 997747146 857096164 644404189 181525691 109429739 175786156 27372648 386147677 432706868 76082591 234948348 704086910 551062873 852483284 885279928 123363032 787359611 874382443 82309709 755744505 245709978 945521598 418089963 726265837 240374880 777721602 971438246 167731030 539473783 248854298 999053309 40148119 482841448 441126618 297748572 144606566 587819651 945022661 611829482 524841117 895679377 656219703 201465773 101098771 384496608 185074754 980621926 121380671 681852308 824680264 922167283 353769525 94298664 373001785 821570507 451938130 920769401 418650486 631819844 944211967 620190380 729048343 804814867 305610413 189804303 443685049 898825788 77776995 86873503 955706609 689211890 875679964 69876067 154419553 831051496 944075987 521148099 486614885 957438983 822168041 446887385 337602799 128528012 680412312 945286616 34514433 861771967 460283749 657525478 914347861 894498816 867748693 206910829 657825161 406682925 704290363 188898502 779872990 673409324 399835639 777318754 224871471 470319939 19843812 179073814 313659811 41577003 4626573 827566173 986702677 867954350 556829082 51792609 672368235 879951293 348962754 609316233 607490057 41754638 819517106 401713720 221532774 138176655 260556922 290042238 580699355 78916799 573714550 544515837 516345783 16133618 722047796 11548818 717984750 309960040 885089662 434598441 902568389 308048409 317442962 430845297 190367001 265724611 959372296 983257374 724369807 965926346 199277427 17784711 898631520 597490516 726767639 277751494 603762539 395805687 27594647 639314538 59766630 275864004 85095024 589735877 294816796 372593594 579773162 881957422 958368816 359978122 844071535 106585545 561947020 880177484 440080701 222462699 351817130 732620885 246281377 645924633 567826379 738335074 39728553 978635926 748972138 752204693 150002462 494308507 60407377 771249325 692712521 534732161 623325197 344161298 802708051 335483210 25284118 331723020 418779205 536002515 841780791 266462987 932028653 410285542 969717409 534127598 627220691 625610951 253380582 60023599 163968892 945978240 466116876 344909325 301810812 256476127 162155045 983478987 400352188 688453600 733247135 359889873 236670311 994537694 754160458 659288418 858950324 386090336 516210725 61843799 268187074 497992598 812588590 333689133 383699273 384465935 442819304 283474963 45688279 393582091 633064989 533636623 956211657 131302286 853139915 584281005 278772299 872307438 848142070 287905203 594415999 623603814 476889627 82814838 931699563 678978174 199785507 645085315 842944257 45351127 12979417 211101514 246653016 818164071 910481629 117168979 516323767 586503680 342960414 412334939 64769803 913740780 198128996 106013511 5989783 417601629 704652321 378444193 830001528 262673214 90529851 144274462 479616656 923065728 370432992 225567115 957527547 557305865 183480886 887177055 902296903 633362965 699057046 913236026 156733056 245741053 862296969 428664250 64061071 143497408 118031139 579166056 147644220 852112451 293723315 957209701 459549780 156789773 882187435 288896767 163944569 782758296 985737614 661403772 485039108 629276060 30330788 152786070 227324962 528277676 312342667 769685825 638239894 283692152 385204143 548390137 257362040 810301234 58555434 67857351 338721744 535832436 738413250 938538806 450935045 919089813 397167707 649653159 310152404 808002527 823227163 955688987 440913376 556784778 477914652 248346833 621015948 441591263 192489062 926910510 4927247 433095589 847795214 492096202 925606277 860382811 429216350 369479631 591447713 690670723 401781250 381477522 306200524 88133463 85275137 546750903 110041106 27005846 85633901 786644426 648049306 153664483 403743054 190332743 107462693 559987283 269275534 57993636 203879744 350986416 871474952 484863969 830603797 631183183 577614700 539906611 568150014 470722636 237249467 730564575 925800598 111916640 976926057 657237907 312715651 358654734 522524666 992462908 176714952 889949938 652488927 544500121 370357916 191201879 455766400 871115196 538411130 160119363 99286494 183139287 899850202 50358309 53333780 481703542 97515172 659275403 973996989 832769794 651455517 456643778 135033632 318334799 269690018 954987228 96820786 698363603 877454300 439996126 557403186 339109984 954889966 627278506 783140601 465290325 674096513 431725384 679307555 224177977 295094877 553153752 953887019 20752449 458989525 558659795 301508182 383305449 654762976 40651459 629124814 544046066 117102082 253134942 656395906 628930190 703952282 387385105 142428882 880408595 356801028 937059498 592287515 28524971 397757000 173532377 354810986 587822234 538623102 445234768 637207912 273361517 518234154 233302507 308363487 290532911 864667962 187473598 319737070 707088941 301516129 211400274 931807182 411387428 73939910 464009159 89877329 339790290 445750840 893875429 386941227 12177756 225847592 274392771 751710112 629690365 473934718 11208957 355088536 226045167 763295811 194327527 509822795 602225391 731471177 446487414 660842432 369406164 50364656 349734128 556900639 518523779 721246146 209286739 54818893 365871536 654109243 497709614 959625808 332896484 559024513 749504560 180928529 320550532 220789689 4443687 971599726 58253548 99537657 345525145 598061385 1750206 173711895 666580147 313154450 931168885 618446257 82934633 137352799 787604931 496701816 572722296 153480460 120411676 471327640 834800853 275367705 731169876 596487197 943370477 539603598 623633575 579439472 964378774 230088321 541600650 294632515 679265382 328261348 14629046 455070051 425701789 646224266 717931638 341941150 274701087 132912844 431794285 515034722 464789762 512288692 604628030 351857216 872465785 951883760 180385150 805110610 469684825 145787217 790460559 834635604 630975608 39123887 459357075 180005942 694337386 253633422 207663580 346071484 180300796 730425473 869240439 331349618 305464889 880658625 6677303 812754227 52234551 539618361 620461581 590033946 564400269 501669829 433689919 436167861 952081553 762955857 621666610 704069750 258441348 737154622 224256537 897532658 99280165 567420979 860554872 694479688 855648763 414223190 639511620 502752137 919086230 791579150 786283248 637059086 128635065 228448967 842134388 752326104 377017978 697264409 871832397 43508254 721374125 832814235 806839414 829229159 145956251 282340833 181277091 417889943 518977024 658240650 792288623 362592529 578665461 210900462 57424923 149500088 905775063 356481817 211135414 538056381 748230971 63607730 246851921 869011098 833188219 925071008 43353517 918954953 351180908 930042895 852745812 608561683 965215656 180150237 910754644 950744143 658290790 945809592 516198061 531505508 679206991 842781421 150695387 827136670 255775534 124273507 363758325 675598184 454070345 347566485 516189443 245567554 839821482 762541738 341758200 575788275 437608866 410555153 443412939 610928810 120907051 28345574 117145827 427357782 944518470 438853631 782126561 936181260 893089760 911942053 215566330 610058525 807927144 518786203 40969580 483489941 152269122 797427055 535917162 499834151 557799218 46166879 697441136 261267211 908512105 896977079 935864565 99185896 9189129 903647956 992781394 768844183 872051819 727069799 682962125 968493404 646028438 491704763 41378639 369547009 946535261 619771743 125371604 334785779 180353042 201216457 964812332 230606175 589867015 616187616 362650215 566892245 6726901 423995977 61720473 760186625 392499142 823580472 875320660 244441412 241651916 160613051 296395967 617143849 785183759 128727918 237165465 60090445 699594056 160844198 590083590 312495305 902084603 130763430 432573280 724164826 685590909 918818363 980396773 668428681 937583135 584841950 220597458 456154875 595478206 348773358 279783708 391306684 953329469 535958260 465772882 743925855 860777131 870415847 420314686 64877128 907415509 174534969 577042003 835436298 791514181 527291688 225223055 159000922 11697922 988186906 4071047 841469984 394310920 160863422 922420210 407454568 227000463 430153139 225616267 923913863 823699761 204310474 282275502 517466065 559931286 209938446 195473313 580343578 397426463 749355876 921734701 139079551 655754667 109573392 736785008 147521963 358197772 168943504 919005399 837259571 163384190 977332731 793870933 760124789 469293007 50931706 742264837 742745707 448595297 621582633 997576314 233137292 810656527 489485395 738050510 716328749 884907310 491516368 121541196 550062598 992909706 884900202 120010073 113268054 62974217 280459211 172631213 611385675 876083221 114290037 617503938 137375171 715069570 50883993 140277119 683468524 458198914 210855086 788704681 943085947 140526107 924131415 286121803 46452653 377961990 573914087 677322176 493817079 176103529 875152942 819241866 927489610 125725573 149127145 544926097 332964007 289280306 157501002 169509672 199532343 470251361 262745728 147118988 864736806 416440727 188123546 482631953 649044053 316737352 26397005 112029587 83452296 797448998 726109710 406516524 263656229 445762514 145603477 800219201 80998598 769015860 725582972 239535088 508224295 153268875 696211597 528925452 443971238 373072541 960272924 637037189 984762419 731157690 925449230 199296095 199800286 984156768 946164026 954655511 931006119 104331973 940940914 195072199 762509437 997115543 753292332 759957678 761048232 557322691 412575117 924638972 206800828 482970472 913513289 325182687 762354588 939883577 163107673 442842886 626221784 101865617 420088166 894676866 172872934 330064338 383356487 95733726 683090835 611918562 8701841 381613609 669442296 462778776 377868339 143797820 27779297 330723595 494075269 293474834 42716080 698168911 915774603 571894178 793023473 822454720 743628620 292826572 182707404 818068175 85997546 338617751 633244161 67319240 321882409 489529573 785236043 877393707 164914509 891523860 893190883 805064751 952961305 287738615 277846256 814811343 327835315 255672862 9085057 934567817 638086373 777328191 556557306 136183171 201914616 38214133 29766911 167020768 502364774 992666434 233713231 665250572 272662829 725370194 976884921 175126954 258205403 408951804 515520775 709672476 928862268 761757820 93969977 718825830 382152374 171256593 528958914 283601768 66590834 534660589 836336154 89462641 818078767 790468856 345362480 632446852 49177579 267711309 827053994 249363503 585669201 846247388 22942234 79989611 487902962 986405168 547985874 681409327 196853077 539374618 722873567 55408872 409465620 274135134 133818568 841813648 701913532 138287475 773049068 637495589 824669414 464001176 396646528 350718033 809060290 779160192 402967525 999779896 746727452 130223421 203773188 61428632 802628974 336224568 2345269 193292759 240433480 53121424 356944433 277010800 474984677 775885427 394565178 891240759 139507003 428835378 345404288 610978591 951612831 680520513 406968768 724241186 948892479 151864893 489370549 876243442 516138722 976953904 353149619 895646452 679458993 209938155 4812744 935103159 328070283 649163746 545751048 768096127 544876122 934334746 398998727 550818432 105722366 726480648 655079127 280040578 5394781 805008891 672681546 403082996 303268495 749902477 463083578 917376909 835525075 847438111 607203430 235720307 745526925 686268133 862244886 961606650 824172444 382136974 350695560 190784015 414550670 780182797 614005221 836121953 51046453 696446664 306918986 123781293 578331521 566609322 754966020 442130374 81323300 962371303 187411847 134937911 875899470 435895602 857417475 385782408 873187976 795298938 2668652 580035652 858959089 590350165 263530190 266450744 438435155 257238644 316123068 984363418 590324734 698526716 718917732 911435838 964458791 106023920 646702086 945314700 425948066 456871347 748942718 321755678 924075081 349608778 963372288 387474954 595176098 600912337 252119841 384187704 964938424 805822096 356192181 817352183 23315753 982881344 992266113 752976142 580046405 1859401 64553262 152611859 46189754 146579536 332967056 233111436 91229993 899562404 106173408 991106131 236986388 922271069 365134388 217837977 841256410 30049642 274610912 574254050 23283916 703222987 528646942 518124908 696649415 328536844 193975985 699414950 872763637 270802024 250423103 431318327 178467325 518537417 297102790 696326109 340845812 407940457 124096676 535953907 944277841 19542247 195091440 361032947 59527239 352880003 329958048 17289692 221430775 106652356 934823107 406991039 424664839 832735595 20225015 915833321 430425924 887234414 756056472 964775508 267063014 993568218 627862934 300150817 693917562 405749010 943930890 860408948 389658894 937455915 205086770 995706794 174290000 546866539 959159641 857117489 366835260 892914603 488015818 901599995 263215498 215993641 464641574 129120978 346000099 553302650 837855584 377862024 612454228 766211241 269491985 545971932 957693739 331375952 949080590 307849618 470926604 120995382 288241090 12995828 80759686 232679496 895482066 666353150 27706972 931393466 694058930 732778311 874825776 516105743 829677864 420544831 80273802 407294158 442634469 731100814 276507463 996388200 221318805 355282865 790148732 40798579 194181583 876195008 378722460 616581211 909222401 464731620 602713500 759412102 965676390 406259922 742357093 363881783 68448511 868071193 678679625 429089296 678099758 471707142 716165459 826033567 202989537 293541608 100998301 484962494 510752330 634949801 695854177 367980593 602806365 987423228 598113970 51975698 548661027 102400604 831641446 101993081 536981628 678574248 528285788 429961824 776810639 218206684 136195627 91081451 312627809 963827830 787175165 244876305 44779940 380857075 21739827 3292244 395025208 864116710 128596991 858573983 660272733 801920071 207356335 729271941 660377646 259616697 298229610 928672016 380517082 911836747 94931151 348235564 374585991 446567358 793007766 407997793 553581388 834271211 90235655 421477535 451124557 847664012 982201878 159190871 655660696 477988074 795303038 297539360 569834269 52268463 214072919 267659120 797153851 405917648 381979607 443042201 333456082 776937793 459534157 997517819 254109981 476861012 150822124 776941910 213244569 106546706 262547780 750771506 503212013 797068472 506410704 77672982 738136879 758440627 503847306 726301757 353149363 263236329 165110121 353223620 640912970 815956929 299167289 363337134 66613074 118083626 131987241 245926879 229980721 558953899 998366725 54576953 697784087 394129310 211887952 716398156 29279700 609231114 851240550 162637847 157274096 722342107 554106306 573384287 91937419 752603406 763062284 796092024 953566035 637670836 875131778 882595467 824363421 245982542 745009539 312481926 87499533 26417947 185287689 798883958 599508003 409426767 96263832 273240111 468136739 115528488 200430257 306118173 665275319 440891477 369991497 328382066 57182891 588510332 447828509 963868008 281837672 68898948 806758114 596125160 946637685 698197882 435980607 41962773 518711714 207213671 467904123 454171969 974095416 776785238 895238959 972608795 710520066 662024630 7931592 811045909 580762037 287007110 961535377 985054495 359036047 248177841 397224062 306012594 375758795 732032841 220413262 877354850 166548400 86659022 847375711 955318051 340213246 822416019 459750994 622502461 733715516 94763402 56387441 766537573 924363350 161884572 159643869 646987003 423657729 281582482 443759788 913386901 50858261 394892733 737600965 954708254 33017142 65256752 565838533 689772637 419418699 844915228 571423344 183325091 546759436 505593235 307068332 669355973 482849533 753178972 713970894 12839944 201894940 873718530 735435955 642093404 43941465 632452095 760193854 454958679 231407803 872657814 67993867 229667059 354493427 94352780 823210757 676247444 529171026 733565021 364317285 375349194 162519223 343430832 345307909 544416007 22618541 781187397 508028189 354405311 326943286 517672939 168716507 90999030 533479914 937046219 987584081 248174419 612789404 256399507 238091719 70190074 262933562 979242473 905490935 469798229 438781003 31903861 427588935 662209500 518610159 874830795 734026840 361769373 304357202 978894344 558698258 343750391 774578913 295869967 989257719 946137798 337714960 218021505 540072892 382074214 324435459 668064153 156090714 628835327 720008396 141496210 417003092 473609029 917989636 881189558 360183906 668616483 487164999 886799606 48357612 599816418 70215374 786268781 446593733 140515199 822272474 133841477 863813076 62706498 489856969 847344191 343975059 68809694 272594510 386621319 689031592 813616698 862779873 421540606 437319821 311267381 949424694 686276220 540094252 105051462 478156055 550016448 617790060 435927892 789081058 843385446 662114131 419122200 468930520 639254606 488734824 853494521 815970821 645201309 337479219 639524324 236196232 590610565 614506495 619985735 800153182 471176587 238219444 445460126 798552235 538024255 64816405 125224561 869778723 677622807 672913821 933384795 918669068 302618814 525299229 765267051 147121429 960452188 407480376 467535830 439779268 729589618 114320716 7071428 645476264 789553100 120495577 877139609 481855763 469783760 162699861 293926327 985987671 651407966 114148287 149573102 210002797 322749127 963489480 945009476 791960378 846332929 846289328 502701478 284583637 478095597 18872313 597301421 849719822 84538643 421699962 957629767 803850612 961999670 547004373 409784576 757379975 584916876 951626434 379863193 964811510 9702857 761450185 186087158 842530376 683129615 627127435 474173429 174452446 455050208 219450886 223003932 561034307 358330346 831900034 374557787 901640538 449271582 19589542 718761116 177112212 839300020 996630298 181033564 931216102 247861434 269562561 857880601 114693471 69502789 983396966 654562131 96598645 822792076 357037474 946062585 234152022 75691180 735515035 774720878 839297857 653351942 626354987 986562726 428796963 245353198 163416562 280593599 645252025 200934250 77961886 57864832 784873550 512716839 758725616 75859926 929100828 123124532 153599291 196206613 801638976 282199314 984860883 116496240 296827403 617553064 627458724 130931887 682563559 452120642 735840277 678841525 213164991 324527675 74750530 949509003 746584767 398593315 747345529 88356249 350348938 738085090 873862488 313106763 887040325 756200048 471198464 835788445 761197743 800795567 585603581 556261946 280546507 402747651 137023580 257450212 462760307 316454016 492233182 407711147 120834624 210126256 244804299 553349541 486852812 764506233 985530964 396575382 158726938 880093595 832377559 318395256 324365474 885205427 564684655 11569191 760227502 865209785 200511607 794561225 802159847 228976906 896999822 473213503 335380476 606646348 938397154 782941819 92870384 671343987 351209379 268039559 343649715 410751727 796188427 468512281 171077544 192065297 864264468 163650802 582126304 102577804 291800132 74438403 421704366 800440546 791339276 703812755 826946403 534823775 863812960 230482085 32962393 286194993 784762126 240780727 311262230 520455909 154922094 323026158 487050221 883563561 909302107 331437940 874535004 812084181 290439344 607442139 777269868 704138881 781512318 362734817 873623270 435358763 594659839 467989400 478669850 134545035 725738874 765096055 671429234 155769883 494915892 306153743 395978041 193253727 452908701 718917564 531770936 661459540 967587652 669118545 443988628 605318173 723522505 515477499 638557906 147562169 708097046 94382907 404280036 532574343 439564420 250117297 787174435 984628256 627351508 929745021 119469978 539675055 246920687 912827146 948317499 902315453 986743698 848777263 337340542 934762263 348971913 94969586 562825724 537225680 823400524 174923527 59388009 278383413 68210793 937080313 184496437 304971718 118604697 752414414 577457265 791184442 735789195 191212778 289349149 670514 432749282 695470260 941889582 324814466 45687482 324572871 30098823 850925379 885379651 908376315 718200624 27241823 25741880 398444232 756280366 953867638 319509928 811148783 450870180 172664880 389963882 585525723 304511256 189088834 21841609 614514736 675277958 135691781 121669320 95184727 417112120 638302857 89531699 329467579 987089609 139314807 111843344 761338595 889903433 265205466 427503279 595548396 117586198 676040737 189590087 908980 986263603 122602733 135482454 7616349 567116090 928786035 121515348 120860186 122385187 109336206 690897722 765926158 500518771 588715086 207433573 239694300 585798391 619096800 628650582 117398911 80524559 877843840 894893565 225731302 124951334 961551488 328341861 240719622 927562737 530387046 11305661 979624850 402293161 757476536 6570874 749644276 472941917 517260373 773908287 569315171 947556747 986290279 964677099 43411376 45079047 17549901 641403946 636067753 486787462 876999050 64498613 859990734 530535149 514621443 270896175 52708497 379492322 811677520 602715081 728894291 641882352 872061057 671348049 111511155 339574085 239145177 521471607 512631362 348165477 179032992 200205627 148058214 765741704 373215005 251312923 316310928 202614545 142422502 671040372 136657808 778926691 377472787 991503904 635504419 929562136 482436970 965156307 395562721 169845865 798808799 549725979 152307501 25766237 106506037 591946781 460716944 854902233 529681118 549599733 613203759 923734416 231991923 723660110 267813364 766647661 146420553 215690579 181668929 615952019 114511116 135628554 121618606 385264399 727847183 12254172 122055333 336019116 1228768 416431633 88971367 895182977 464003865 722569708 316407013 878186976 658065735 317158997 372817066 942538268 146748129 557925408 333705888 246101060 176716017 553416894 488598139 529591402 158885195 735594778 108557178 681472761 993674378 383200433 860776761 998373759 693481943 352861184 121280222 930121051 423655233 532292355 678407412 546053199 600593269 476524504 57809287 154237434 689725429 693411671 637056886 348342815 413053552 914370284 13574615 115621572 843679969 498438336 515757815 532393004 102843014 714859816 149788376 865881043 18861327 372147418 842364753 495133957 320517346 836887392 627015707 789737537 909296067 271773620 712997167 159430144 401936397 273011632 830503999 445692018 3721165 189599631 689659401 262315284 630713054 977207250 861573058 787538920 606930551 925860523 22743539 67845549 469926692 409155814 243582260 883127344 371986084 893561841 100637606 868420513 900025043 783589317 246465263 719324858 385676892 539071245 810204997 792729747 547566539 594887170 315726306 588256376 634063283 813753031 107559578 609824341 63526592 826827446 470781352 22931082 397246565 221682638 306219333 392703318 618809208 595023643 316693201 758538516 532055728 202218848 346685163 637090674 455150723 396747990 416753144 455204603 691857379 938308382 975442175 30272124 67905333 930370987 916062661 620721138 125367704 755256490 322284326 30126036 183463804 544351691 784089582 377206210 67802541 361716492 250833190 530773666 432108242 52182421 251924901 46963343 80973591 5001776 135169739 390847896 947763692 605029552 981793969 663464117 241924811 47514672 679458369 874781352 37814309 907792089 800061466 543443544 551660927 259876079 9119502 701247112 458035427 33456905 282510728 390106262 355975297 463856365 820956086 278391530 759505786 284913503 369279858 645534250 70348139 546144597 845346843 512788984 349852932 882213497 441908909 486810168 171958457 529821937 511816537 907239375 826085071 897991099 12641759 401252317 726709736 607761841 199488685 801518199 992984006 167997583 397490051 503412107 693613714 103554153 287788580 788527522 287457659 913728723 706896028 157788156 216175918 494927281 167634059 257123632 659849900 395695060 828403249 359456534 116464082 293898875 816595701 310018972 775444578 41608148 914524682 471824764 642353792 62221725 61101326 710270470 350524548 763436636 662032057 612736734 473187787 77467411 247483587 842662307 217435243 509492241 302007390 876360243 414361407 760576773 88044935 238639397 813938048 127121883 152511882 653771562 848178783 869600147 440484375 437422211 614288716 408432943 838600855 809140367 43286465 615308555 150549099 394282646 775675229 407627616 457450069 204294666 506570194 794164619 570000712 379085837 551192611 622803465 17834882 800978188 516765796 825402320 736349955 72790076 335450856 277872741 305565983 547435271 353599694 125631434 470926225 812445782 16195618 991396405 139917447 358009957 351085475 56608878 299773983 979172471 272359186 167887552 410221708 487461131 208691946 920622935 71145867 690582572 80036770 59966394 293939116 703270473 840903144 740856400 495232385 709395101 692427441 949038128 221559741 381823541 869317622 501889812 151970416 752172292 860058405 112981794 430584655 207122792 959864957 565781145 497405284 834591289 457289705 119896510 392583736 212169354 597540006 853140379 674669555 931980375 703664127 205246760 962766121 721912362 251564912 885283008 631156524 663322928 970401819 382771641 496167006 392265939 433867924 581425994 762666847 202878533 93221118 572147277 498636651 681155584 354802311 763778722 796576006 499203309 888526512 959611259 472352994 968258774 705356628 355317234 376012661 399176135 337830314 556874658 605938832 767617915 786438373 622838878 806388392 908867877 384808117 766791992 5284371 774678139 765070826 963335170 125961912 583033293 587978983 664115572 214783637 900824803 932011629 764621040 710885152 480857566 105914834 128349642 213105869 408633231 968442167 234628106 185010940 755483314 528659290 581843649 84315637 428701983 166166181 565660815 701542368 524696690 137959385 832920406 694973472 172076761 101241442 142888635 278473099 581059392 996778158 619290494 797234187 23535240 33301744 324331890 361113522 160433171 407153226 52238723 984444503 298287632 282664187 478786405 659503300 281626408 791968649 847251216 28901056 257351002 930787093 56238515 508076195 444847004 264880153 70123851 981147644 185094607 541525997 334830396 674832173 65414427 752192813 819266770 635689945 222487507 346964331 808287327 630446924 432783594 727562507 951355070 496920793 842290328 41839763 978492455 380000368 921584013 484057504 335200035 748149681 114395450 639200111 766214534 586419514 900685400 640836836 124376390 850676736 495564410 92482688 825148087 838271981 528987842 664064998 277312631 10037313 363307898 355948302 128912244 393672470 74288593 396127539 443852146 514447938 957415085 74850187 723601738 20843188 369235439 116131192 7058105 282418652 246965309 538624201 272578891 859145213 202735125 629554618 949368811 109334737 263921711 524834672 484180765 207912372 784006146 880006431 169039427 275604707 516394044 756552343 171123205 115325456 528218482 232562876 354161180 104906880 120384970 564261906 977185755 893364635 519738774 703554552 931892626 558117515 877290634 176004686 291037244 755844550 4307672 594338589 124265240 29314354 475956482 317594155 547831509 815836664 883265207 250329044 301589227 60301204 128484519 811062106 486789447 901934862 579008547 293981253 471442600 629835473 376163606 487797314 933842551 462922209 342220490 739882253 831720895 301362071 936729857 453245155 622332563 893746776 482416515 546497386 26463691 898018150 930638096 10997632 846918599 35132054 702776523 910095917 642137770 491672547 218875725 392536555 950000722 508208433 629005949 351968960 434495238 955384236 592945251 512652380 827927459 236234205 602246552 503312586 629479930 416380612 786001847 889316656 332187935 572051570 634928677 551505948 282539017 408517637 37937702 343276390 90882427 8725106 488866284 630951568 801967983 307101578 48085278 671237282 763179935 299725628 558809585 920628529 800524970 84673442 297812826 629779586 564796400 395971330 631908647 657269565 505166779 435999883 838444934 398045455 884205113 467741065 230839924 425784190 502067004 452683658 477422317 615219292 549495967 557182264 261311343 479435688 339834036 653147996 643889592 771745816 96277702 358405897 986844225 645151905 249961710 862289075 385378610 137846037 313153508 877737227 424028826 154357396 38706741 611212876 430105625 11926029 610105660 788892305 964005643 435652116 433121461 417632233 281215997 473299461 142426131 232132248 792244631 709076792 415663389 630596242 792254339 280650293 621083156 401026285 254547305 782751835 702171623 620309329 671979129 855019342 280147231 578670551 684140887 150086990 446727317 777164848 47451707 416684566 214079644 782883918 715352804 921544290 896021502 678225164 926677355 585046122 251113957 168800687 832175171 584713332 127946454 570356924 787657044 338995794 772753286 992860389 634894396 171349317 534097279 759249203 982919571 51619969 343649624 96984141 5509178 948280729 767317930 564899724 482182533 305632361 956439940 681708284 769040220 816452992 760880820 917152202 119615447 10550035 631353359 161150678 349869177 455434435 77499053 996983065 766961470 25588824 799570226 446398462 921695716 109239433 615314227 685489723 336004343 409064034 455606958 904967194 11680509 362596923 425473723 401200404 420142521 297410923 750830072 704848742 833032712 22494073 655171941 318243783 752275855 100319375 663716779 970125726 876682967 143159749 773378587 942126050 782072092 386403758 758132013 866327938 870962124 779745703 566623648 852815407 88307652 136969966 833731977 227297037 302538257 872814127 784183676 511814563 730502703 716618598 515722884 498689547 654403728 597124712 275244259 520638333 796069451 184011339 528592329 966333063 267475027 168892449 925737207 727820213 500475568 942022695 543742769 12824969 630879148 376572525 117028675 517069758 186511359 802915649 811221975 155071619 269766776 1505737 550930808 885867609 692487107 21944411 99780051 62300291 175794476 566664049 648601055 137899357 311525711 567235740 822643960 605633480 633159160 364298002 62663278 338857594 150492105 339418473 100565132 814337604 963036007 161699476 394419197 22474253 14546565 822043017 283755976 447400406 734632708 452964507 820588121 517121640 669921758 663028101 832158238 850314323 972882908 933105284 554772035 716565330 771747804 593329376 572943952 414284571 20677567 538547418 722187865 60090047 434417191 953018703 170862046 444237786 406810169 290451124 590040468 438665787 853004146 835820810 170102845 419780332 265649374 881100442 150006825 338674993 251106630 753161769 874264453 470119576 228252820 686874281 983918650 386414920 524510663 10568384 873703476 236136621 732472087 292379498 848532644 373602575 177364400 652267623 883101322 468559482 68136488 981346394 971147278 374623119 881285363 220901154 425981967 134978737 468292727 70813584 676466565 536774160 175233251 608904703 985314022 534984021 62312849 778154331 348934908 351261600 680600196 328030628 585046392 108966785 524396442 927454200 237392202 851480392 765930732 761359435 19234364 733517001 188828132 447004815 607902439 159239351 142541353 124658709 32139974 169740445 499426163 129221833 624206791 423607633 66520089 163829876 264979342 311367897 402259474 67304976 805483132 357477421 194411481 199652833 431333632 51719487 73688871 954645229 865971611 832501495 77934185 699266070 58468036 806470489 439986475 461704760 571604455 849959614 132578208 622677719 839371554 620079770 582313245 730004538 129265982 792850728 586930333 613034397 569586518 388581236 521533394 50374352 621087400 98030793 802538226 769218104 885010878 377269065 603632044 530509299 949678304 533406543 685905209 468234526 5197015 619894181 287129390 333348599 816362929 589063038 464556984 634463102 709172759 312420214 273750480 192804215 590703663 583658541 178766294 386451042 80942280 464760529 517463039 184444897 99478294 529317278 624614341 577275084 806487753 627580871 576552410 392023066 857008261 817644569 190957753 731554481 706161850 69537257 726734077 426680566 917833617 242173921 310578149 172246630 199536726 260526635 768958900 562821518 84980606 612079109 561345854 543882547 570957605 413342402 440709133 759801840 633907653 522416497 824268699 939668479 460857645 384116336 219851147 656110055 134071918 118861475 51208959 679827334 734734729 762786526 649929695 496420404 107536531 23781076 737259450 85360641 80940216 636413454 316708296 391858134 223148626 378021812 774906639 434685071 513519057 259435604 546427856 813198059 992041647 413965162 168681744 285456888 62660620 525285127 159828017 676621140 691599161 831298395 266038471 551073483 243222665 306561099 177337092 368287432 547054860 227547307 565618170 543670322 191673572 859451449 563045117 616773050 889076796 599403224 975443836 277460933 154925074 313598023 942154329 781046874 623457974 795020061 343172266 223110227 506174079 319220560 98852463 295285912 559685878 844024929 795120214 231446502 991785956 374405910 590102018 820699769 837004614 54183001 342326149 137464182 184158804 394688191 211853010 852335591 139903967 306145516 655674409 863178474 639495502 314309424 705840352 383276631 633914363 420200574 77082971 680535084 147593510 997580257 130927329 374683814 767531301 517137692 508226485 268844247 862572869 61260048 477501096 271736572 665557368 620893060 451251082 147321461 915764107 61303451 873917304 228126172 359329336 626956928 939069755 364658771 980317421 450568628 659419107 203721964 791196456 286386857 908520621 784377602 288016052 539492663 499699491 235486209 484920966 169909687 32052296 246472037 914684211 904989073 62811922 808664827 712431122 984639045 529109304 545573213 658785697 425868254 143856252 980797597 794766443 642597359 839843582 572982496 844942263 79694702 132581318 265112784 12720048 894394996 651409809 642920629 902597456 106435464 773020578 935989586 592801073 350343795 363962682 858231352 190500609 297611212 709249034 926980283 488978630 796084014 677414788 457707064 127684914 769810612 708132519 312264761 684518005 785067717 281421644 979254712 79304507 234014752 867277121 160959761 569803720 183544712 937084070 98549818 898168441 393640431 497981397 991808308 506429077 963146977 273850515 297716308 343971876 302921192 146991314 770404083 593794290 109357315 614059457 411378996 289454293 980663026 758039949 311350198 808728929 335783258 769304289 241066392 31652926 231506579 472683481 761404342 732694792 396415053 171003967 317355769 193451233 627572139 404164877 11719678 704427681 197653493 968177408 114707382 551909407 358384123 576638435 58278143 309622574 970263547 509713725 799210422 633720932 51359187 120780467 627242935 317038308 311444290 454392612 920661948 871095741 507654749 534545829 321492685 343033926 630739073 965833180 702325672 733011943 122494040 818715846 228278340 750385680 446249154 899264707 278446427 233870627 403471339 593315599 276208414 42768075 135810628 522508183 2128487 155662046 235847742 349335544 529832262 810279097 751492295 938456488 767411600 340030017 790291366 878978679 405995832 488439595 968004586 838667844 479602349 98409130 703393024 925754802 290131246 71057929 772321738 214554110 771185958 922613329 850170936 243303922 447683333 127791759 95011308 489944842 721147265 224449576 700630327 116653760 707221466 51830162 507341330 571606233 676532161 377447555 437801597 884288185 404392446 1873228 477904326 265129013 637977973 81862638 725661334 954245528 374675267 39870660 739526218 235528269 276917689 574540159 455816421 677856011 657889166 545270492 172718807 223071924 136406265 747933143 230508873 96761130 181057028 351952393 53398333 712701268 797910325 241184599 9320417 328544711 421014987 987192834 938328263 535187673 506452801 97267703 980119397 518057149 781922555 519499579 195281435 779306309 904528631 402944269 721250137 230717758 635641402 138752635 405449329 771164873 277823727 969627045 351566752 687981973 911155284 280215500 432461734 607490456 72480800 237897816 498108311 979479061 312007500 152146206 293848904 146470125 544116638 505814845 6708821 963939707 332063110 61166682 525042882 512375482 720279435 909946716 898869481 575235902 286971282 943092267 571388507 905821665 541813991 286857897 318226890 407311884 141295247 54533107 883918800 481387901 777949507 145510769 867769108 955106489 797558330 845485609 286095727 349777069 937824040 284752275 737680605 473386415 873504794 136777996 542808439 294457011 494824453 332240343 675124762 294467540 455563621 856037974 687368234 44060848 828056621 480309740 34287239 44015085 804170898 31107226 568462202 986686382 479310340 739915516 757898281 44747383 631079559 523301621 901405938 746988288 316228051 191868266 802959167 978441014 889017703 875205338 815169749 347574008 614317681 660466143 835194902 878667991 55987779 129123792 954937283 320971162 51438058 996006206 478463790 581151671 760992777 146773945 234396844 965063654 506525121 244528128 60086032 454822464 764238665 32020277 695895586 668034919 794358931 50974481 204224322 663765636 275239626 585835569 66200521 619322206 463938510 176855727 185276784 508476783 517407637 438984237 575264484 121323284 82912463 838403687 686259237 678451135 695054612 438364809 482091056 366575801 197990602 653030714 994723596 707059512 782050895 472882285 399661903 929531306 546104578 576710817 79490604 947377157 8510534 820304681 2233409 152475846 915608097 349822921 301511437 396512158 457715624 193822159 475641484 111752838 735744166 216918126 595619470 898280091 432822512 837328832 808899772 574058524 89824474 381621378 653923815 829635154 850273407 479753117 129977277 960235447 795308444 425672467 454254039 551687763 961557483 333089720 413200526 662081062 770100795 261129920 29930473 775267414 31556619 878094036 554677488 549245717 951287147 956834715 90819507 113980910 811312158 91829783 299921228 802939039 798445343 56971668 671376748 841265208 601821249 986433711 576784320 548263386 235566125 744481610 269980163 372277362 808920615 785636211 465695081 501201780 643719836 447725652 510108210 815557599 700836597 396909011 343268977 553290256 912084787 95585633 602996830 683030398 179243583 897198629 961392822 947218320 820883686 728328398 564257271 222094488 896556441 520735046 972869856 37943715 512430271 204519795 235373729 948350379 853454565 92637748 39195594 910232731 950478882 48151891 239155456 243887096 124463711 246939202 73038682 175519540 19401257 395068894 328293877 861024202 487955787 338283297 192311569 633070331 92056696 235993626 367924153 403403168 458045288 520259735 876798995 524005152 778801502 721354572 770352228 828209251 836789169 769504984 73237678 479264167 130950396 841893156 177950063 970883273 754259605 312148175 378267642 588165044 944063866 297541419 996574754 566206657 53743285 368900425 803008285 267848227 253299246 882957360 157082452 907492123 756871614 10835197 61377646 585141442 688361969 427776988 145134768 345248045 939688316 972070275 23852751 375350454 597292729 565184249 275676872 46646227 762546993 669574868 959108246 653838468 180857641 366692266 200686313 65407072 807389555 764411410 100612601 401184968 478458402 666011663 363555289 225060244 636764298 506544600 371192567 757378795 19567094 7820393 954545874 700617538 633973989 404588940 164848535 85426266 894436676 20598817 700130171 944747592 467727418 222721403 43479492 500943264 828219005 212963104 787205047 794922937 484868771 24483549 820072360 81474965 529356878 817550122 534870610 179762094 509286175 301056114 746650580 58414617 918279298 211454770 845376920 574751666 719794844 370225704 777557664 866269361 918117272 482912231 212655650 357737944 280288832 111664110 243874268 882992595 126991466 274337518 313230686 264974001 770390313 251202886 981164064 789524409 139982854 148249698 448641909 792447070 555218273 835490225 862599812 184726955 516823037 205081760 47922653 12898875 92234532 714831816 851388640 107239701 688311311 348142149 347624820 289938514 592034783 508508559 87461971 322036677 703983135 876867682 811800795 34287412 268461 377601341 569884722 407804042 955389083 987238206 590628961 453187069 154165022 650052020 589963388 585802901 192125165 901950635 656714866 424667019 696363805 223217793 814942929 65750963 839984796 423312374 47350231 374528927 533867388 319101309 601941416 474496083 647306806 508797322 527828666 812530062 197883317 751064719 689963486 254278281 382064499 807912421 383499130 555196496 147160564 3622909 254603484 266722865 432723910 434825233 256946526 601595952 326990515 872050014 502901908 159120217 361135521 768450215 192687961 425419126 314005692 251175309 342577843 71517243 242087352 147163596 452092340 692008074 490388753 59652366 319513992 515727884 875744530 382180434 644666704 543983591 5048556 550123396 947262216 581225034 687795821 233696990 497162840 902515995 29677663 125447101 627720060 614956170 955609997 760839361 418910862 622298582 10784583 331175644 675668732 503916197 261327649 85202910 132150519 55743139 948405471 413313077 359745345 394298726 336316364 740455507 199612060 667052517 574302183 39101287 278824749 663303291 734934273 848461011 260251406 84068850 115531880 20973491 149641275 215725647 569749366 159640013 233743661 527055358 420581733 660054469 698503293 740920647 497457217 707376424 472181202 523928081 834553055 231073967 267538433 464980294 470200868 9528961 306178238 453722266 898238145 296716856 413420130 923952097 701052227 883191891 995780054 311210851 624336042 379450674 909103016 110099628 450558356 944837198 449562442 522294612 691787130 771121172 505358062 730841967 629679735 279865961 776275584 185510398 922994265 826549785 924746761 277926873 516149860 302601519 374700712 210093793 158165626 44561963 617521123 466287589 44685199 739320325 455086706 570748717 568571285 231200550 681717579 222996080 872500592 110036318 7320782 457705559 585535193 833705441 791927778 143722011 753724134 56394206 183578838 537145065 566426623 327833046 826246187 482373014 796369170 884184537 759990663 171503571 488362981 837789901 38239065 724758276 76385345 260386391 841577702 742255888 180472337 764432861 342028714 360833386 761610581 360586213 380512711 744476050 233321530 108675023 281922972 596079412 102194160 803502247 681915693 514994218 291567141 239054921 292737329 316478232 136866403 630012368 733471600 932382443 18622561 343077253 604005476 259823301 365645199 548342972 234978152 837995147 597036737 933303694 400218182 86615269 931497285 815966805 933514083 498294913 710206690 526579290 309141435 521634453 605906048 906993233 747739391 895371641 241500244 191286674 908122892 119376372 214197746 496071787 925045061 614318785 831799311 132007514 446118228 121355423 459851142 361048665 479917749 374871667 215217055 422365041 613002168 384644984 462810314 924198792 343872115 524981404 988834502 206445360 937993827 814158780 671117508 161804632 406255362 622352191 705464384 142808080 202151813 710910016 974743702 740401705 1967598 303783853 636483615 859156908 49441847 264332691 721761753 16786223 312616406 442841501 689666033 496995691 335599546 244261055 319747390 254952455 15671110 981138988 450580143 295624265 771546105 947406016 96212809 941171042 907786179 310952292 182051582 85374400 74550115 759057213 406227403 66550412 693113313 851645042 570226061 65980326 929016810 876085117 851157679 213220396 506176244 629965802 124648660 37936267 171810137 706563492 690785585 962924259 192409153 371264450 730360599 630734239 752662116 133240850 224768989 408485498 556391152 785780237 719977363 434087800 50573529 810500596 900120358 108912614 6862556 611757565 951522643 863379996 444456751 86925271 366659817 618912421 259607337 197657017 697990552 938457698 851159654 907776175 425209605 492683266 879243424 814311621 163800641 354488646 67998080 602861695 790275530 550858631 799237073 688873122 436797407 183817216 682741218 102741308 278045024 792348250 559673229 268944667 396543192 385529721 271447352 931497898 355128809 89774666 470062442 409514410 988329134 264638088 417572706 651681299 591048204 575496558 409586304 961287160 318445731 914207741 982206815 290451924 671415599 978151648 516564239 100442949 572311819 843328402 36063046 62615032 197331725 366715216 346734899 521787366 795704523 26685875 40849585 749417002 363687070 373030059 753898079 402777615 351275465 775102405 418747353 139950160 469492102 322390557 55961849 625498101 338551728 272742785 462652323 409392764 309542147 186068415 616793409 762728088 835735159 857199253 159090790 105623483 131586959 899422561 829012010 617386190 903581754 301505961 640140498 157151524 609880330 223455326 604201769 561034491 143755821 110853709 321178882 225124291 374040487 256600676 84531264 944967645 292340570 296447030 518063822 260780161 538411047 247465026 824674546 947913244 401329116 732445583 870771958 48643054 992978665 497576862 928106310 497249561 413477345 297713923 701560334 109869275 563008227 14139586 775284422 877835431 781292152 317597479 767258556 547740626 932008785 382117501 924969311 670055011 37374133 794014829 367641693 282641960 92377355 669963791 990183741 835702106 745518018 221614067 729040611 9302506 194588739 45408076 915808554 76925163 515610255 368759285 40536023 73410632 182794632 73214842 736146749 929892869 685574890 304726839 607271341 503338244 973559439 439200071 592193128 656657343 802395943 139198297 319965426 539651898 202474360 166282505 978234511 101347297 450884100 409182797 479459356 374903680 447400765 334902238 416628937 32306303 792336624 97915506 519338958 849978023 851963724 238868065 142711480 710142439 720166383 991159988 838104901 323679725 769541542 390554603 931716579 309713694 273887792 833732492 989952386 937562819 37069419 644750651 840850490 747526947 503796589 49085266 653710977 26191884 389746360 263172408 679138707 964372713 324427275 996796014 99151001 790604963 250453958 635603118 23154455 280722109 371760658 958508317 981209420 954454664 203006172 666207112 909322501 562993492 812249821 981921071 54075470 556461045 46079498 550357914 543749715 948755832 991988661 259767829 298948715 331043989 579415994 300950803 352139794 406406651 746220747 531871225 917439204 442860778 534676249 747954549 732863584 628335096 275691361 844045670 524686058 137097378 211577828 42729366 459715723 150318708 311762366 547618091 8395232 361386549 914932692 939757606 219423813 969463474 192995915 372713807 66638479 547627362 388005619 939670420 678966048 442962213 81695368 1458534 893662850 851133379 644725212 803905896 182904742 977451963 946478559 701566172 826272537 3542486 214427910 11974703 386291889 522763843 502569555 171385611 69601801 298175509 492577678 876274537 480786850 510085479 149971891 331172254 479424215 483664100 89369899 131589648 249158387 859354452 380831915 496920084 703617398 147648249 869330207 554532995 953024960 848119536 493385568 579565934 390146678 545957863 110065425 68360911 37573628 809817282 25285698 831420043 251769791 955461701 626349670 462921505 336306574 486414709 223291040 523030654 289385635 55031710 441966789 134086918 884681792 20032614 744390410 624731768 885606762 221617180 804193988 440838855 510806409 629457793 98949775 321148445 131349224 536306048 880817447 733741560 142580098 156979647 455718397 970957446 699355469 261056293 478931410 115997070 237442480 479508598 65505576 503405222 539976638 949586928 978721733 927788374 126218439 384283001 354357907 625292902 568856008 948698815 306372315 381756429 689495163 230936376 887536989 807609897 498108077 550820897 252741735 228708578 660088571 395714014 429038615 196922379 678660539 20266626 142120673 282172043 494105909 958330891 99755287 582865817 317025724 510658898 634909367 319987174 536313136 151638272 904329550 979423799 649688869 219948872 977493882 802369405 62376851 890297305 760925032 476867248 593877680 684675254 545425448 18828331 616397656 949663993 545122232 998089556 938621391 341102972 293316292 700307243 999822870 943000781 533795354 514424496 484062380 515648842 576347818 216596143 817265270 802720337 204287011 737310408 622770272 170552595 732623180 117809902 762402654 852731694 783250980 511993074 728994834 687862527 25609622 184552088 992514085 861203977 234668926 816055241 913251812 433392767 318870647 108681747 863317464 475755835 16380269 563916695 383205847 416944495 357041400 94415526 736194378 343327908 171857512 853256003 542622861 160656941 675276759 358314470 853584314 724841803 718143684 52375827 541697587 655464436 337463954 710947133 852073812 293303770 137681700 346919578 526266532 221567775 749521570 730604183 353173063 665625426 548866759 583263535 429426436 323218394 900970457 927893240 191010010 623978365 663635215 736744103 937395819 57698306 480417997 947724550 143931490 968438501 129224385 638130082 842996089 461808108 759198150 879277786 951695217 385372180 397126638 338016785 125894821 561033570 625937353 414042151 19931388 599086798 548750276 370818973 641518984 511782698 809533529 890497061 991390567 585910805 535674718 485028650 981740935 840945888 358021402 56024468 466998635 576449394 901635758 993154499 4000646 526583508 416671397 28095055 64025409 227619324 557439068 531819872 771338695 164676159 220440254 37201552 519707866 518279939 326568221 480328742 995164444 654173823 613725348 872558942 946676635 755286353 353649424 813499150 357096096 510602148 330637717 697625729 572855738 996602443 592186152 407301508 830017093 706984119 375791559 624225930 264136706 620909640 32323902 279087041 296841417 48377584 696066573 157367966 337231217 173563048 921926973 79867425 995626230 254404773 165525588 14048366 731903029 473135309 259924011 790035317 907608099 605448460 311437124 125884858 418339290 968438534 440699971 5092476 457683402 237820488 444554470 77407929 605009554 675312936 206269419 231482602 513539448 90292625 872312614 545381425 291207096 718473120 442312483 823317565 527239216 710518871 766195749 326636456 460760318 641372609 838365945 578895301 294012636 283108118 487958411 917752761 139057853 726298616 514689430 890679423 359327071 474403131 205637476 678785400 49113795 527957330 950559278 299014230 339358278 109847629 130768161 820243504 105943624 843872325 600748754 732904171 833630459 773342691 760741003 982807213 507504148 352063007 171300287 34111798 200703751 85377160 507597543 457124145 604740227 568633412 989392430 552695160 780526611 684113478 990930823 984999090 408334230 574335884 85315983 631463665 760064472 175233621 780544124 819318485 244999775 404303643 40283494 588042170 558865303 92405881 920696507 305786078 150016901 743900626 327841283 464220608 463703821 57004489 363331299 246703735 510591867 198895452 578185808 913194527 347583483 451567259 71591211 951849499 234753427 103560726 392172949 484610633 295126653 845187260 847215807 517260017 945481373 837490558 502469636 632852901 418495868 764125492 377552826 786378919 782812918 763471340 541583089 784092332 909285774 285450625 431299005 649820462 382142114 488355972 573399285 522482298 93326737 302860755 466252170 294571268 984114975 119536568 815736617 789424766 863302630 677150834 279622430 708816326 825796188 188886815 398067910 988138303 371445160 471768245 378359391 548287648 261998035 522934059 466799248 410436143 658128710 49057068 146414286 297015462 117420307 245333540 694522795 425671219 328147642 553940155 369678977 860431 806139753 112709084 267222951 860523917 977545585 41987502 667379588 640925691 530059490 233818469 247092628 264424289 284399421 982585482 74297486 324966858 368688865 168554515 737229450 284473798 95955519 803488876 940368805 89612995 650263599 212639174 437546752 18758743 134552497 111391796 256621463 669193858 758939439 885627975 208072675 220143892 670493465 759995000 873986087 250325820 887994179 948733574 271867450 276340857 546921720 89316578 358234417 769839313 678909737 923312741 665952957 774672031 406012204 766413024 295610300 647236298 321145856 830083384 502341640 152997475 946398165 891319022 843102791 394863370 302762859 545484311 31930754 975959962 65686227 976164996 457121725 74975953 574098025 62064556 706755366 32286576 916319148 318819402 494157146 170226716 814188258 258329870 24303212 707942709 893973981 455149899 477422598 663607159 782389827 548748187 704456178 961087084 479766483 914721570 624836428 4738207 545121839 136448160 908841691 335463425 720717206 443803277 444654459 803760113 999790059 475730650 125499468 708829097 746032455 786927982 611533701 833801822 745325453 670151827 352878278 504955452 293255334 373868628 308511272 239435880 854753047 706218486 835041224 346109418 493998806 975335697 699810694 273195151 863809281 699583622 107860418 658247477 560028809 237895173 620218937 296758399 68402173 424862291 940490251 179448424 791769955 986819280 623010100 937391223 142845876 658967235 542067227 562524280 898819820 860121538 252840114 854552085 293713295 363822694 44173929 65280975 408656119 374559693 118309862 218750060 805763860 936195842 437548072 147832805 308442219 187909512 363754006 521751141 41734566 443364366 311449711 877422729 239310729 800779238 718972422 403292506 548186762 65951729 202957833 151158290 872102970 51666514 923134324 501187552 110123922 417089026 794638023 36216178 402518970 310945782 419717772 674191987 957076308 2640410 221426575 960719912 271791497 572620957 324983298 795577922 974486817 199691126 697746173 974374416 577176706 855033147 36090519 402855707 162269165 241985030 896194614 507755120 155761703 52842995 20190351 93730407 498976895 903853510 694422799 338780128 160949697 596190648 967321263 254477635 109092730 572672435 581534674 775601258 844961115 961652016 694832595 737844986 698864332 67258400 249367693 31249247 583816716 228122356 297868770 218136751 607451930 977105788 997883773 383953730 103265703 873043352 316730221 465766471 912070976 148141847 627752628 17237251 11488711 174778535 425207837 734872909 531020947 349209283 557661390 260331962 481999433 281119157 605084310 662496278 551576641 449995156 689337514 573719360 633119731 758666342 789163916 465534671 82415931 364845400 155522933 789106641 541582367 160713641 631920349 410082089 582435710 223243037 710070280 130317865 427497279 372472911 977334250 208812313 748051056 396086441 779808517 348792498 471670862 576980528 783999333 28132803 140448038 413411066 101081825 485185461 694561371 919105113 163036091 566855630 904671925 206574715 366904197 363530415 943142913 821936599 708898825 449030526 452177043 601032276 587777162 693438869 149076771 647054420 353937187 537313639 178743631 124260459 772383204 476576441 705828993 128697201 590421800 126216134 921705542 662827181 17422431 107254541 471673563 111224078 797734073 112182499 610004271 990259050 159570133 715862471 279283922 41058814 669919830 626628117 817012557 754706415 901555251 813519614 685622523 993907400 496905971 362723752 796262025 7550683 63923142 496817818 930991534 248040978 886930391 566318794 707661894 289267585 889948324 787578536 172670029 360242649 486264480 911930252 154250877 54617607 312980055 544065090 894111149 688092038 176972557 964109256 103709450 175198349 300382427 969304434 173247707 451314745 532734524 717207224 448295870 664917817 313428054 402528703 311192212 211517797 289829844 440617377 992407304 122576825 138105162 185335255 192425668 15397883 850418653 76267964 864919533 742786793 812833371 165505894 144028854 210302869 477799398 648480483 949614870 21114340 507366451 454631679 924593374 709133326 691036219 596305129 116558555 194486347 306289211 93600272 174367871 445041732 496497884 454777182 702017410 286921723 969441982 596975743 500337369 520999780 110256424 697864772 607845335 986470623 675970889 697076487 333450824 807179427 897350851 369276878 2067143 611807384 176683143 823423666 133272387 212910825 104403540 113241762 416603966 661342766 338117544 221013976 662785670 651582410 147213366 313627504 464467920 572249144 720991867 685631285 334564030 224993881 518726509 906631165 335476188 691128820 697638777 422677061 381648649 847678032 995066367 796730816 796531397 949127249 325248585 576064002 672261722 951788073 61755528 849102568 295531925 273303972 862841738 888820211 430836786 956239013 421828416 663935219 243148016 561925985 212926252 86475356 709670498 921711283 430542755 164563375 784398121 360448553 127674776 578805169 952190320 611991485 266173067 403651959 46323544 452278538 113839970 855568153 933183909 218737126 525418618 493821089 956930758 753439472 153029600 974499707 681723087 903383882 329429650 536988812 731143419 631587240 386880643 170318036 817020718 972620348 946581719 584731366 65780535 6525809 534261862 383550996 845592668 638367250 877158613 178761680 148697945 463580669 838118684 483609850 581799675 439413393 131626768 913808307 386540134 286389455 210671248 611060447 699874109 619665562 311086326 570745059 871957643 502176220 219562253 856812165 168501125 166545636 219863745 713547055 884403514 314908458 48158086 427510208 191979858 761869765 20093729 747723205 911853627 271324229 255913397 339526492 693347453 488514477 947214732 659031827 655152822 514646297 167672629 284072838 140615658 336522454 376758046 837435178 482466740 746834738 735084713 367801530 402687695 505142961 1651455 946434918 485918707 643780482 237959506 627642697 983207483 45900359 126774264 644354022 499110566 665991796 442147622 134960592 794307744 235421613 807871043 748926099 285595972 877674918 992714054 467997889 816894354 883816276 502927315 624691819 436808879 862633835 262988405 489793767 852184005 6842771 446533890 872914027 357203379 955574448 972828334 30422051 731037297 897280704 462059 979089569 949344911 445936383 66393195 66720510 463978177 993765090 409724337 510768836 334315764 442557615 731415201 595465031 2723794 796733128 982421889 155222009 778982273 183921979 933567678 259391438 637121765 315829725 702544010 109124597 802377496 556037630 267857300 609474699 167355074 558261911 814624141 673722926 872581178 994435155 282601476 757942390 397698146 959243281 773672829 442829140 714107090 612180848 32731489 83409082 983526250 529777748 954299932 880517700 129587829 109751697 527438286 509611218 8779023 292172948 380715450 59938442 199785989 673705367 247762596 440619554 4200931 796832479 127077367 778694889 860541487 477381740 616691916 941253750 744229966 274807793 127095688 803515410 734722604 735566678 58593322 567386539 813168093 997821232 354267383 643194977 705360860 120968277 981878351 893722216 83149296 110838665 243638163 679923867 577661226 558563765 930667874 343584554 287809505 332357260 259026790 418572202 705270912 136515657 459210735 76886128 733053726 178188926 730207101 340668116 151365858 648029572 741325060 444345416 951208438 999289110 607538201 992181998 497684993 131620223 16592435 181170081 367171393 212986023 911348806 493511596 152797028 424728405 438042876 200488078 960425037 837205171 182335956 357419434 521440094 755201272 372132871 794708190 304807200 476684820 734235976 74624231 294407620 269252499 700149835 71475739 796678057 854163815 189212684 809812325 6436031 24332878 567075599 624551491 29563479 309858583 396206517 248839898 642571898 806253944 317970167 928095954 228833043 830369971 865849424 453088732 442893941 722118365 722987055 158349382 832518647 565114863 565686794 654626889 296545726 801076588 368596806 849760098 349328259 467013052 373715530 682471482 88487369 674078019 427137609 657504033 264352973 259001216 294988540 481826180 927098441 18783997 735963337 755611412 269762094 422814540 335327289 446214779 312998459 10043290 328123778 978871002 387124796 433516500 812089928 185545457 592730016 61060277 361039157 476150650 999936717 168018664 769128932 280680441 109751808 608088218 851032050 699890251 414774479 891500288 345852707 13180236 797579139 114006833 440815381 128828945 60579829 737032183 996612949 353791054 996156486 778788945 413349095 504808411 411073344 117627084 846684638 907856746 370535182 339500961 463647932 73322349 99913797 252718855 182036222 286346112 198392965 840490843 733606389 524729113 89044682 642226634 20353159 663895365 195264224 355110372 839437745 975287544 439009727 693524841 541491723 998234172 190189297 584591686 6036468 172855799 915107945 110639100 751179262 959660976 180900995 174562765 427549078 294316961 626884099 384200605 793567421 344067196 878755831 80912594 626584622 951147468 211466628 584043202 516477948 331357436 979244891 930456883 694965313 323631246 429901124 470895729 818072863 463207890 293405733 78483894 431964191 554715664 548593805 231403123 7648095 38856203 43142396 219745099 257342164 481587516 825831777 88664326 615621899 401482519 302592134 155479730 546543259 549406888 647376668 11624482 358437257 494760624 445400035 468233229 491496928 76885475 338301840 678391104 865463454 872786 896703040 253050799 544923251 111200403 94907741 207058417 996248855 197745703 326901749 365376864 977667855 602852248 186438997 289674861 701827125 509969501 352331505 984350227 299535209 556914075 291005343 519143229 53650755 210063320 157259884 251996024 206508593 518551459 414448286 756433015 142953214 346078750 473958292 359495502 889339280 232885403 718876381 901015192 285078638 24908763 328201415 618671124 155363047 253278721 463305026 326942940 277406453 333348530 84592618 280227499 888797645 803723004 790044276 753987969 440153064 26411870 559804328 645921647 143195585 133790039 454030983 266487190 534661304 314508273 844321974 814137579 370148187 167632519 511280889 132149617 811480179 768334162 404692474 585009555 26449645 195877597 794386202 17839836 268602848 770678134 640000694 187747210 976659846 518817696 597437890 322065407 565702474 641582470 85989030 405838700 122785866 859074583 423013933 195093934 163761 816939615 328871661 97050208 340005357 890663096 958498572 629790194 801046103 931853963 867360208 188961592 576633339 763832925 754373875 859933520 845866027 76040813 262085882 501061592 292172604 742381526 698860891 40414224 68739443 526956210 219260248 173237555 665119487 664460008 646510467 507692020 620284862 815381022 757190849 841905156 966142567 671142893 443350975 243355302 635676997 304778915 785235339 606783260 60175614 211514296 518248118 439852341 12689720 578174827 841751780 34136601 882514646 952912693 944386345 951753447 26307891 290653039 645652098 624445164 565424528 524141796 205623168 418416700 961270110 805364216 528832334 226075205 659671736 297770452 979642243 866298170 952805362 343704518 640878778 933998068 969172620 162160942 2816631 207167298 825587751 459971166 424653852 25468533 593286773 634091853 550932926 202995524 787913959 407632206 915069869 232158647 666298497 979823431 896173529 657876435 275874147 296420446 719658578 698700909 318687807 264887699 56861219 797767307 663722601 240393739 888358824 445939639 801001190 966739097 348448593 247100490 43640325 514745780 407778301 149204142 554095482 273402924 176102231 43182995 968686368 22047996 680580277 997045547 386887470 412256993 172592038 202989336 970278392 787097365 768101019 108517056 509927636 847776407 212554634 487151634 361420158 191820636 67544812 930278113 524588734 360072975 722960332 431183715 961654015 149816367 108386332 582645853 80654723 393977120 185159314 698535284 136514345 454936646 44383451 603791002 52988678 769675397 33115828 925252244 760403784 577463906 659560441 375244373 188471088 349339854 470429910 424452350 610739819 492102653 663584057 125681693 723956652 95456447 60352008 957634897 105502985 954227720 831524563 365799607 610163019 691710947 378741076 157829841 476355841 78717399 350838710 590270140 909304487 609502906 805710005 197004923 667331542 387150800 252112386 722648471 409187680 430699988 376902390 369922660 355733840 486915217 784977960 416206375 252388181 179205385 894758975 919922882 394670471 845058474 839217142 198218602 67471363 950386146 336023596 656847810 298355317 263452999 30479257 621059343 47925267 10662236 95668586 75850195 116518775 732840276 96751898 168314402 463843961 972058901 188176685 913250769 67078697 340438553 615082779 506324105 820403215 822054976 748025584 611190318 997903605 835344586 953836558 185650961 26381674 665626042 91815756 148935131 138848183 94064509 646648604 103066448 787108559 380594057 685614996 290394117 258388796 63326237 777545997 243689436 143401875 463698075 217471634 938150671 293157635 781715590 809093169 496282591 482867079 763649978 103806115 211142186 715152632 721890877 91611776 291221853 950960288 156421982 195633964 279933272 563976738 347583797 664852605 581015251 587716907 62110366 422991079 181074902 925146674 416993831 300269701 983067683 146191819 452153779 743692643 356551746 156680392 496821649 832033337 307887852 798768645 730153753 409469214 852650980 173924600 369193561 639095098 500245866 319325469 283828099 220749614 794581130 457724437 550916521 520250178 103021063 795905562 623578426 63677380 246994166 359506849 631491656 340744979 244089 166399104 570783552 171510779 276277042 913405481 213881766 526476702 900385473 732508827 657177707 533799610 118147918 858381673 710354101 513459515 110497498 638620207 865570000 448202225 69046888 37357909 154130143 488113655 440117025 678729787 641045034 402548832 401031528 810314572 462431631 866585654 617426089 85461682 215040034 502660425 441168696 30403649 523294566 206816393 499709327 986823208 461051809 884557981 18075070 627124037 425868695 988262534 303291108 362425109 809622304 817374021 387033345 284785385 736498102 771270670 175050517 341626201 292303377 721807575 54774272 148636084 61063613 265003683 584782565 7640990 23625957 721397349 223242464 663940582 152678550 212019852 89850525 128553779 238941149 778687228 755587749 393147855 123773653 91005225 661837226 696015835 319954891 108902039 820578817 383467222 93129087 947967090 924378643 291848272 77575535 113367833 209483225 478665913 699455555 117242627 512201472 39833536 388108788 34799815 655826876 952569671 136896450 337739774 362200018 978080537 719893313 214546925 69629884 884139491 317427615 236490764 213264423 357879738 722991257 377106600 295364953 122366106 477457416 285725046 526960159 564343197 863766389 733401355 486894533 916477348 28320811 866616301 681800590 30695951 948896435 828518349 841730791 807358803 592087311 480467132 983613166 872076747 373547054 752026519 605255203 264841144 713367316 302901579 319022528 969195358 433843078 370672377 430437818 922913525 137372345 582704546 775339551 724466941 280535629 965352557 896778369 576007391 999577822 669633293 357337111 209964335 190116248 70290106 654885749 918592850 656579379 14607329 873304624 954509453 67413947 277682610 60661330 918171568 807955784 166572868 845156433 142275912 268758796 956389122 69745798 206646627 400295421 474597831 360904743 249816106 496670428 200197089 891517854 935069129 980712663 231646574 295242761 515953942 39335789 433450294 774531637 971305988 176918781 46916384 526327974 347142414 338666562 431124340 865006886 435756129 194257801 612845305 552503374 632398763 387950609 686513555 521662723 782292690 910336897 283305598 197257341 987901544 208636446 603434598 361274111 125566413 783034305 318085386 679590252 915564187 624952953 971699196 709930240 791547745 105345941 978001024 722319847 134175864 843922272 39059615 88413008 549824689 458229218 976994083 136498433 311214564 168552285 765944408 893868247 373786653 424870780 363639784 59592416 594547656 996416913 604602339 408222018 574389121 198329861 194984077 491786201 807739171 326641944 395024924 902585453 908534783 547699584 887783566 531034332 856021705 584889055 198075345 965347728 992327490 617212637 512416439 400116839 824819261 165102180 50379517 267734664 285410970 577854633 76437354 674969662 911310545 250112637 898747994 49137534 747573610 914232901 750260413 453495406 483993586 377345339 194249906 723140917 795561725 280535100 40642651 309189729 192735330 829559924 72822940 7740528 170585153 73065731 580013418 946274993 261080693 84890306 433696183 33584208 501148723 699826091 861175589 997108972 725924404 399332491 417799546 867033031 269997456 326029053 586765382 468742239 566417029 134098987 762859052 779983911 119813800 982179045 542887487 598106577 388008806 868234978 277242535 262395375 631824874 598407570 644287616 644354122 788076535 639799985 16304371 742672409 839168644 295412649 944731239 229512963 165146897 732005362 634765121 288156756 378658131 351219940 550065506 251777625 608054710 121627247 479373977 847672467 398242299 351984628 131685661 174796051 446157678 741625441 116753734 560755703 480145124 182714712 549905328 246080549 463025185 755817608 860904839 670354456 207030737 673557855 835853441 301506084 853213946 529847310 822944173 54284821 906309081 28544713 118698611 281254601 779623248 222746744 919169966 262329224 432597040 905865262 269138530 320205158 898526579 936124586 683336552 988460180 576809742 521495832 605477672 146122720 822647961 278107941 704329764 713175777 44043947 511233392 304918191 241487519 768747198 34317754 691377832 331726251 894678135 527499229 410583220 428299078 105733112 650982574 428803832 123881875 636045007 548662487 177902411 847599936 859958101 822235920 626380023 958746850 559772966 183980020 348735746 108906604 693703543 175197952 818282147 141071839 507595678 687981489 95042983 434601995 895253784 518889832 712076866 924906637 114060628 52491323 606698169 554217176 106923362 422165104 289756015 524209054 971723087 726074618 101272477 358098830 367614353 726981948 884045944 663219642 822200002 360971597 834100806 836877111 808497153 8524110 592863863 911956037 22929599 690595367 574787736 897915413 249486776 664318356 458694415 136458154 842452134 853095000 191406054 451176574 603513037 188244291 934938016 328248850 220748899 224666832 490536907 468742604 675475283 567902982 345338412 761807658 487238304 751033855 189934957 986956239 472508594 9068643 347386716 73352934 367584997 386537394 361692910 527634942 892978744 246124088 905613020 669651470 86796706 178456948 977184071 461770268 255660079 83501165 350526639 300683604 505925440 726433061 569541578 855617476 238241865 28881503 706365740 146523289 561779445 398233717 373785428 146425333 884510244 229541643 504081449 312408610 695050925 285240326 691954917 372646824 357812898 888523748 619223430 170314518 295558334 891900330 880422921 77016451 765997132 383701183 432831665 925951405 14622857 15939091 484282863 756097377 600135080 477627852 539987490 203616956 412378456 60485213 376840840 849302873 383239627 108810042 477227227 422923919 251330188 539076513 649011660 927332482 536714470 335193376 905571921 690723225 360472878 329698288 129049333 156389757 907790578 727971072 311034150 997458800 800496521 726803477 295762667 133287493 458351322 411668133 636356920 170326544 697882086 443337999 784375762 189295576 598964575 331272489 525187599 973036834 164299629 246634257 7014512 643137595 182551167 618724837 641626890 995201105 959321591 550709264 494157223 819262248 841883056 178768628 913894042 683074963 980479494 105722784 554957374 491654338 795986731 176299045 488505720 254444055 832977496 569403188 857463995 447376199 471615879 163485333 310789771 115022180 63883693 146186158 495880197 271132737 720024662 9360594 579389967 240478209 214792889 603046630 728435586 953986916 151369127 402360629 212985474 469600321 145346362 959598475 780928451 763357026 43237859 396698910 935557868 223523619 932039317 144233811 277025413 329551260 732837343 386595989 556599958 44429030 572489678 170129958 612041428 2470940 340187650 716315409 162163761 501219134 488632932 490245396 217377086 36722163 426530217 205546020 273510964 137643114 150235577 862723036 746936369 740530296 625383692 718213429 724656164 809416935 923468727 895580812 176145892 71108025 171358919 819645722 995895844 867083980 227445992 113748710 777002653 824378599 790250835 562442691 12035567 872471615 949025637 405106561 154310616 599691512 541339686 873160657 80706089 637489324 855486566 638039901 2399573 702978092 489737769 488633729 806344425 93428588 1731661 433861646 43989278 302974833 850606431 447720641 572738316 801217393 840897217 591014118 577464514 98772220 123161112 495713555 595131399 898977675 95853501 745346028 682199371 511863084 215203005 547682252 672229386 592727255 800937631 680022815 220897067 164367262 363412403 267368062 804256414 553808449 180429805 540642627 953016172 784326646 786731307 436293749 845745047 919500769 224416971 813248545 910742036 362087296 971126084 410729411 412856413 805735983 313779757 280277707 263247769 139466438 924401955 497684800 405490091 625915092 960834343 449199621 32535042 151180016 366074823 763545551 521172181 6838437 853091426 500495666 229371930 37309048 576540052 274428672 797796092 522681843 614013359 468874893 311614459 723058453 179326638 842574390 485523478 806404531 439564412 58892451 138354545 748658432 67756787 881413283 408671945 443214804 926041184 899462819 889106133 937116908 436118227 616697212 119033246 303390092 413708846 750901011 937664247 749738743 371203336 536984142 822844684 261980399 735595041 700154812 305301506 242567660 166688685 22507861 142015435 130846258 861409734 143038177 109474 327920304 432260888 270678228 215453858 109763253 252694837 389438995 312702467 67274251 703749543 572976338 307671772 858155831 39657707 302433426 990585456 828232103 412874612 717132927 391242950 980141835 884662123 794354066 98754148 397427198 731012121 258509716 445075588 813667346 48618990 494727651 567256709 942643012 312924092 531240512 108739301 890188867 378098913 881370001 83418339 554840786 962935876 589897323 806267446 811927309 806157962 235667019 319788889 15124937 617410948 760166808 4548615 291884242 713365815 822674768 404010168 304069508 17245037 315993385 584542087 224168230 638274075 4129956 609992147 447848354 485821030 689390317 885121030 949628019 705858627 510736061 844041397 555078733 589857854 970629591 399232901 6438726 704312570 767949004 619852172 479588893 16472894 463882014 187815607 325548200 91608247 913858255 252125359 117045270 772587151 473207415 278299347 875184879 304552194 956553413 705170194 452612694 232470146 972598595 971419356 409667689 804741000 441025769 796811331 335022135 940572163 29912909 564507338 46300038 854587074 123652523 947805931 302855767 600436677 387219934 681369984 434100128 631511153 786927076 251022982 553505433 786007964 221350187 367333297 774339776 751929973 566135003 134430026 902136734 683561409 531342755 756315240 675289862 747561707 773167878 602962704 122373748 705128617 412423756 982781827 380315805 921839092 436628918 964123604 57577719 773778391 655996780 375742419 625898689 4934610 672599587 528963830 428382966 720732529 827651339 661355278 832379001 25778204 43141061 219962045 244826290 462126770 255935020 630364764 700058429 157681148 363762984 543979872 63766190 998147086 348003744 153511511 941363461 611983401 300268891 660566569 538811130 539070017 785748548 684768948 580250075 396041218 503487125 111321568 169666928 107731209 785734148 763293466 751927898 972516658 601724900 37825536 974284797 872500761 618839896 385089610 995914893 307953575 895022192 975352442 292369421 577871398 522660656 67166259 810699396 173794834 658707511 116788918 979969136 647712736 593072314 291752057 987472996 556866966 478633630 348755075 910868927 124537287 576258980 674103882 554450686 616701460 480389117 723545165 639646283 397554053 712730344 937284812 948556345 268752166 843450176 58564585 266101603 20973081 796270183 29765480 349486419 886300818 192916197 942538642 316606543 777501933 357314331 837875059 906514911 127756229 514884200 450975682 550057845 601862135 922735527 235140523 465772133 189266310 209214651 612824881 675307665 584095942 326832619 600821692 745045533 103708307 48527570 887767332 717720799 339008319 785540580 904274758 856031774 350155481 453365088 918401995 916207740 895713999 620095850 188821822 630018248 996981644 24132112 799468812 584224303 782789330 188822434 100635062 870077572 553207479 523794817 113189382 271149598 846216712 480052799 413576783 339062464 53845725 254366982 469757789 9306202 587320511 556526744 818444359 644751784 970007410 167065895 873454171 934585197 335207883 584426987 569177185 759174310 367619456 461234509 732657825 838105242 200659833 264421089 715013365 469498978 68257971 427696668 409286679 57206083 819989855 371321749 914497914 243920074 958058684 103764903 632792839 96213240 931281199 483344612 227404022 466526426 42359314 652459444 505042979 888066416 867123650 600829435 207053252 575656915 114472837 917204290 127840284 405650504 829936703 953117621 147748962 756248893 731144301 457677019 658558627 370678765 114983534 407170041 695158371 423290388 568386847 664152646 740140379 385856757 481054924 557446851 809439926 384331409 31889142 361702636 382121229 444988966 200258656 230228222 631864110 595793767 174779454 307616677 74847388 417283610 970252352 789415005 376013611 757358841 268741577 426920136 196795959 217883755 220706429 946530949 799863118 576131142 250087403 495087762 496443685 211495859 735833917 518704116 219943654 68649946 701443818 580287586 27484549 599384236 960442113 243942192 556756575 970396319 140546146 477745463 829972141 551824611 937819356 642840254 14623859 700700988 627599085 335413950 123579072 100708028 28561768 326025599 830819110 878576660 114609022 100772102 663129687 231054402 121139714 943236786 773484664 820650132 862322505 998998408 764955428 774942783 385847549 132192211 852690140 339825784 479668638 544929292 634622219 584281684 220239333 250764233 259622092 76148999 488484523 597023781 104632412 855457067 512788442 232357667 757581777 370884595 714603054 347993839 222975084 734110609 148417220 146376365 115046417 294790103 31750474 137371151 863284476 561106268 710800736 87936556 72439783 745310789 464474490 629579331 256021305 10169482 243889370 362369933 143816595 225205934 900395634 781029545 466791868 520870626 119426071 855249992 42143719 947922147 643812382 666211264 668911444 555939259 801334222 634282719 788567174 192317961 468683728 71776207 496858921 960821336 761068262 574456421 995124422 866330325 476825242 346255295 752376121 70011077 733145531 583664230 596938614 896292366 228189676 818977353 738819438 185420394 349511755 342876714 196474325 812650791 976141747 677294830 495508487 227028777 88371129 419956279 642311875 907670366 215874271 521919790 686415064 708569751 99623845 147289710 396670951 462206555 210069470 266788271 589876929 880401629 837082670 353623655 97870176 372301327 887840173 588253854 587628967 883592634 555252964 479159875 536437948 842663484 581979885 467985296 451020948 340878303 213877607 783413290 567421650 650117958 150907771 240867904 388486405 535987703 967188207 221953097 535787205 305971591 152706778 5636457 634171910 197705704 451959187 459394394 82469181 656726670 781476406 477225198 549092009 978698215 136848627 498528281 479181084 5853008 316843615 841489026 849459555 70287820 153938368 550967160 337051149 661169844 30165835 192111932 785614021 573658898 753002988 914493111 429114069 311520889 748599541 78312379 667988826 539817327 472308646 317561567 309263443 249964961 270427975 174928718 491454983 70866228 822227960 261192981 85488376 15592396 175105024 455294226 59560398 459638228 122828660 48290900 772870842 840845759 561078721 294405724 856616465 576036108 769979952 923591119 584064547 129312017 807634938 410840540 521133956 136548158 90776662 715540822 428549926 673199533 495711385 53117581 426683004 671770524 925870717 575139022 72987336 114828340 739742213 357710720 681279763 794476723 296018502 481863289 138706642 431894313 734529884 22944805 813898922 807793307 104078763 740292408 9594151 792291710 925195614 203410423 120885200 887707940 789615643 790737762 523274897 729916293 481011824 888487217 376704660 38120711 768399251 881213428 561183773 127309568 999354824 4041304 258321114 347251657 375437155 153933645 212324888 828784117 518233679 322564590 318143912 117826821 659715458 803585545 673716033 243328148 374563502 683217337 707421021 455103709 115004549 536742597 127737912 480322685 977706875 160656300 744025824 971700962 268828362 663821787 919969232 958602354 117562314 135347027 817658543 413734784 203534736 342077456 669260359 537303411 982256249 51802467 211607225 660387633 322461108 691779094 721681525 555409731 756087269 330826787 188152563 793649776 695372892 936111086 202156640 581514543 852388081 599419311 999244067 893550942 756798773 182717763 327835766 549752718 752913355 324889098 87483583 611113482 994123530 938800147 509643426 815273187 495139168 505874801 707621206 884264082 70236420 902738234 897842995 863117701 660190263 563167689 44624212 714495408 16020940 813804830 986102045 321127123 137041808 335934829 716794380 175089862 567211132 282608698 580128345 581260597 428241952 203601894 503702775 948984978 169477192 750397920 247504949 810149735 807860520 135892270 655679795 55679482 951052947 404561886 676186267 402945887 49016776 762095109 761220634 920018962 907766436 242870177 596537929 715086529 405045389 252890047 467622815 26023715 860998149 10706397 309981174 208557134 506955391 227008572 665232380 73919700 19654693 684129481 248968820 701133165 912634025 295465971 480852883 95399084 923471385 16366278 806193727 757740357 58618067 802344403 1006156 26293993 110160098 5620177 242662275 314471161 316955296 283553987 566314910 509547800 600815485 458424355 239873245 175418260 635887400 619567804 353453815 37154308 529982867 79620776 655656002 301249815 600135191 813480500 26239636 26573110 127325513 665475385 483286283 704282182 239240937 978629518 844555521 29246536 364802292 301244298 605739351 888239232 438222502 981615261 366009452 26368523 764148225 589542330 30248678 943503443 890425315 435708074 590739628 837901989 429611359 885846985 269231946 254643736 840270878 979692781 464933926 275267649 293461870 453765002 637943954 647255747 253928906 430978121 569040663 824265505 846412095 448153384 927257383 307993148 200266709 991640280 246935161 424730447 135049249 718153647 597653178 567835258 250744432 156586402 303600037 853045384 590395686 71294565 635072033 796557503 616064246 924680326 519149450 995145341 573396943 897182707 753336005 140151495 98943179 808982068 897895407 289438171 110945564 241628916 420977837 588139905 615419097 722454603 600996645 782822929 796850150 467417750 794425648 816520179 346440496 555142823 936351064 457312239 658148817 354840285 687970321 828720464 266575716 204022820 130864430 367619319 188040792 8787118 255825578 545882569 563965618 685446658 281122935 53948143 944082947 391832179 28860544 57981241 962933303 830574499 87789001 922975960 911711252 508443741 902740917 134334437 738335965 300187331 206159902 749367489 58695240 693273191 500792725 256299882 325979432 647720304 256687205 495357138 848524448 580327324 102789781 464475105 660345590 334351765 577628752 523938771 328632718 103970937 194793148 300996997 546257992 473006492 35194371 395322215 979823036 957816084 576230835 409239950 531133017 867776344 448229898 301581626 145818851 417670403 984342868 215968724 237248324 969821173 767975402 410116602 939270385 111544977 850272448 260383647 340077985 849626716 165280918 472661525 243779386 247862673 60940876 31106285 675279159 880024537 779710638 772678489 145586172 582484683 429523357 495858903 938673105 590653976 549904945 620747647 461972131 596497302 447507369 164269087 466424811 602101653 573457778 197609461 917329301 918720085 127694101 558941287 386600029 963836385 689940301 564926798 145029774 213082278 135310172 683183622 797298088 424246034 212596647 37716717 928726703 522522121 424411594 593800278 332389597 64211426 31125960 481451834 600793666 129897209 59654507 417988531 1393742 696985487 483687161 112453214 459469407 516430326 743134240 203937427 530158627 221323125 528364133 501897546 619685421 358150674 542224953 333112815 51482152 79445381 37875059 720183417 534819494 691228194 692657884 728555137 438638152 206958916 484233845 101561602 64727682 765228641 103978443 365607984 561831552 884015345 750083214 49347146 755427710 313083699 863725306 265673018 101416408 916951487 450674137 542688181 551303128 968737545 557555142 28373026 3487700 770358874 93118944 398361647 638278203 302635922 818863136 467219862 583519779 742928371 618353908 449211389 711857881 428060288 58996170 730053070 446712446 202815877 952341088 222283190 62044777 845905683 956118786 451642019 742301471 92022040 780620871 263896485 787909407 731727374 635471042 916388165 114577373 915336795 814011611 47547578 736492262 10234466 470253346 781221806 840310286 776922965 196579316 725832236 125878414 340686421 528444057 489731964 466595098 659818025 580969451 437018674 729227252 759753414 838628038 609102708 854426330 151225295 367371533 634741829 919889361 703668499 577686251 490279310 196014206 303026544 698289052 363937974 131543916 876150416 639598195 548524442 633748373 960880547 651794212 115398377 383339898 138426273 763830531 602852397 666828492 835653828 615962363 237351234 627967025 669742066 886478826 761781366 163663897 962529475 515473398 288548277 709219222 747731038 352228019 54594749 267249291 752528919 970242615 629095641 239685812 301289272 292172890 261399147 288175528 889332770 102411170 592221173 252445981 991869663 997377187 247130035 225925246 722098107 697789302 677870895 410258124 122169318 317325866 637753028 51299236 843126630 334084521 168298698 477478494 346547295 550690278 597650684 565108024 145069879 673797868 831760748 444504251 608101455 882430469 516810597 887804049 741896247 840096311 807874886 617655155 609368589 963193356 451291313 168241884 203687875 573529461 894404880 883860161 340789044 580421204 762126328 856056444 462070730 543822949 176800484 407166585 515849225 968396330 928626338 682443681 148643674 702287172 123571539 866358508 277354565 39059038 242733539 777707533 64562211 239592694 100082464 398331207 689391050 36002536 934791110 454066145 7745740 782812371 947116033 486662468 433066703 234306303 264253416 40866105 36192049 428414288 647284143 354724526 709094540 521083259 869763463 181744732 782648750 214390921 699364149 150937528 748734021 389784622 494835327 746447205 756113154 968775164 779055904 279857055 850940575 415038322 359356121 914200910 79684548 128222083 54619340 800497188 53228380 199537456 531101428 48909892 103709430 271878332 486690226 653820108 483427466 388935559 249216220 288919683 154398736 93133699 269209615 20325445 401054906 681879790 171682938 3949769 267037344 201641994 768564798 912414299 846104135 867467265 908744292 599561505 753013212 136773059 535860833 321055836 797158134 656494216 650245076 689825503 11827420 466600655 489901559 80285289 49996565 596033697 294823358 737086665 31351466 158154601 941178997 890075309 977769697 149936889 244701259 413181044 85742016 496743341 67822682 835335847 989094368 49125351 602432290 201060444 514205566 157999537 22362219 128161349 994541220 419978652 438478350 143921676 737539838 325604580 724594096 358945491 261794037 163134979 455776983 398588992 380342846 34661554 363619326 331743919 654026395 209220154 131652240 818125562 61759166 356241773 122128144 21063280 945659371 380061978 378983528 634562562 764110348 661664589 751452527 537467668 120422706 724114159 329230796 247103433 336962770 889128175 370360223 876452594 103273293 381372619 53736130 608014258 659395353 236081960 69408300 918294190 908328281 808798195 923543904 457946179 130343158 543256660 304069144 614526659 231847482 767443035 441885852 726052878 61085754 228071156 860103081 997227277 317164792 449572000 6829360 601181312 873833879 454719759 690380631 755632014 557264579 820903469 540084757 673115780 585389375 389473387 560264301 751528110 261837391 598736367 879255650 193776613 793096926 896886560 915248617 8812548 526273431 179696190 323726586 448411109 526739241 758041780 988330147 102231364 722839615 445546871 993617057 558233815 830064007 925593040 689299522 938672199 433271989 541120997 558622539 736784316 254781726 921678643 992432111 785672069 530074546 556992074 970198252 17122403 537341499 527144435 712068592 132743346 607508257 189494730 281951989 691528643 858079755 673907852 885360192 589213739 902563003 153965708 56428584 650256953 57596532 441008807 539993125 80747752 545082913 302771060 984094849 551624811 444925094 304011692 755329379 50916634 579916725 327495743 907949917 359064642 788694936 100973861 434011456 897481970 861193468 113207849 32912832 668445880 197330493 570026906 815097870 15633743 325691087 566306649 994330995 459728318 792837371 40535726 689045973 925856766 224974150 540742632 619250704 605203394 357924571 942642822 308867916 346257523 981248358 507018231 855275488 880890179 200483373 120317876 372298123 779657398 672715357 211106407 125472078 488975909 438441520 942588571 151647167 558567901 525332659 707077832 791537116 412810845 146949825 661340247 880757104 344046283 51502079 455013961 325622767 743389 796499097 654707903 144798303 11119591 121528170 867068464 928393718 395897287 690544765 975334654 987517246 209453567 248633015 875399320 648346159 841392679 776657385 612709694 333397767 560288373 590292798 775352654 157583499 218355859 794097471 759926484 176832327 157322842 746896082 727427662 268781688 593057957 316279241 706149023 93972978 614441992 879821928 924286489 951585895 518991321 182899106 664821161 996864720 631424897 566574406 722325167 105392782 29656553 603534209 817182359 558692310 932518820 516257273 555375780 621875058 480719454 174428659 562345545 302484787 920877709 968861912 738829330 869921695 183817830 259950743 590069278 227816409 45762087 296990215 27959577 352867647 764745953 787666761 444935655 47502135 441588917 828863740 194502258 818548694 140545798 822881767 688562975 655843827 122470018 381531672 210522950 643277040 945346270 820967748 307543415 847857657 807138208 168333605 414190703 568203637 731098034 349459448 847302916 816286958 922516343 467154577 609828683 773687298 662450077 58240333 904163092 719706940 604011323 195843124 358652917 574789455 181373290 283455376 52686352 467726457 734546494 559457081 735739203 939157886 923957710 868286848 739559847 665790833 122783521 193592762 250900212 682704199 503736563 975876271 85253663 325111407 132208975 782674529 118923483 965180042 783938794 29427667 726255480 616211336 198184487 708888906 884980903 770745421 228664977 316862138 200448461 561365126 462730434 876169684 156991005 921173320 115126576 517755127 790419591 667399354 407904797 229814590 662695050 287326307 258956653 534662674 533432353 418627018 32280163 151935542 862514709 774854722 672590255 539260972 862434708 669959286 890349302 701107252 272436789 631716885 794400624 352494064 843931441 471312626 507710325 390065974 724614041 483111266 147963603 501650151 950452001 846205220 753568492 109793831 487974737 616214096 745379171 499483365 445608731 200741852 647886851 939743190 445658146 226035990 44004196 992963781 129251537 674531727 906770914 590954604 403191512 763579184 370513962 660769028 925094686 18934464 607890844 107490528 534417461 279774191 722302801 357004477 642487524 137624563 436077532 546700493 767256631 722152197 959129997 996505282 322235284 463165740 736956508 61241278 686275678 719344504 584501463 239130692 824900149 282008606 547947017 98973112 341303671 86697385 886088759 669201075 972345364 227872151 479163902 985954727 973643470 961619374 581799532 723719129 582761470 724409027 95230878 792175796 31947283 871614389 651674144 145909695 767978256 180345008 150668512 89185162 568224735 975344951 646467778 764189071 891300598 970940446 282643794 919420152 172085725 735313257 367444417 145594052 115180660 478552300 839196204 663893762 891624112 429995283 973273299 891545765 884444252 36333884 468804438 267828330 624741057 197775378 532829098 818803944 515487532 75467848 692431032 369252410 637903232 727793973 523432345 961491728 779445940 80149211 27881116 252711816 757448999 288191833 949880300 813067764 724621114 620358356 692853790 455800324 312395197 771767628 182673123 603257270 95244445 455367662 70295948 671151991 306969838 334463238 421729580 410457599 53478424 372606446 743007360 718037225 30659841 828934277 235780583 766540647 561492516 978184778 506754685 96674142 668212369 675501139 635657395 358497450 677589841 533386580 826346335 33672749 179804270 878285839 108233616 206537265 757973907 212813760 610040418 699431168 176827848 805044391 976288259 923446784 136348494 650206336 196029023 706000510 758380438 673430665 702311760 332754573 572181352 40764254 624195191 738478603 516333629 348864262 274475540 270164326 641651818 198286424 223157005 245949363 944822137 166379725 994523264 832438183 425757386 772579721 451660848 532211448 986661144 552876652 339151377 330570541 189271502 965342355 753626539 269158762 155740920 781473789 531174066 282798488 946536839 444108058 73227234 779521119 603133996 15886296 655432349 391446047 125781627 976879239 55444174 659725596 98816699 352396659 114839620 877358545 675086805 532961980 962549663 109264872 927408037 487653243 498093737 872062640 674866016 641222950 218348738 645000724 427065293 459771770 330353938 111388584 382145641 882166700 239979482 340470401 256403238 893428197 374231882 273720363 334014004 813349053 594408191 263369916 513105590 329288022 699469717 492155326 56869570 593915408 326284842 505346669 705495002 359732390 302255463 573002036 146600842 246630282 964444431 510435006 592822644 996297796 463031917 299539324 903937030 273766372 180800511 943099402 201669276 49170425 471397037 445742836 480168464 983979940 503729384 148835024 359865507 872883227 467269551 766035537 633761293 530398533 327689154 496421721 820588774 636065003 260027212 655730406 638322837 311791442 762155897 101924632 2158927 231399101 759345945 246580055 773583530 767365624 99391371 213890389 285143102 433703743 483924378 288276308 680738033 204897210 292272281 160297291 818875479 239022575 359174567 571670944 980505506 71590906 241457321 312257488 264064910 394973959 957606972 265292319 112806149 26906973 977311944 246996290 107218210 555450711 872602168 306328599 253332111 643460050 540065878 469841434 616104099 594355476 77761136 74176008 363603902 862890981 706049939 371025269 309541162 120992250 259795776 485297964 508183652 43059740 926735789 212259964 67544863 441854794 922411348 880458870 954494524 571205270 647880011 56044748 79081720 364895507 756921995 821567195 413417441 418596759 571181560 556732395 541797496 516975272 58499050 708324991 169964286 220479839 662194827 166135875 162599625 788408468 868966369 527519601 782876820 370333458 77604848 119791483 314726372 788624070 757049215 173147715 844311820 301920303 47274874 727369781 876218560 63826854 535910627 992221624 203947222 593558894 931609063 58969281 503832562 224780518 205269166 124163459 466252803 213667362 977555964 2186875 66039062 991074221 51511881 381625097 551999957 963979032 361548772 90089893 219295754 231433318 176119137 424520172 278762025 397207164 734488707 204561534 420600515 344385459 898967795 842513221 94176535 595350301 798102643 63973965 75087066 892192003 89083774 117580860 13020463 975106226 415580729 598711288 513589198 284585841 693312874 26282164 468446072 623050317 237787686 569652813 799655112 663234147 558555832 617963558 967304440 4327794 327524157 675941847 212916547 131185764 120866809 943292055 39021349 609247197 569706438 756489053 882812433 707418364 573865112 405306557 454736111 117443970 620454756 495821110 686273885 635963794 713036120 537508547 389977339 921048491 454695907 489602529 260301951 806968701 650729349 340800765 949361885 57444305 753043557 574584914 413466099 435174607 239215450 873302176 147587036 688499561 449371995 387735905 659667311 177969069 215696195 521521756 719384261 91151394 70241405 867210288 657108639 983152488 16635496 185373546 812081456 59492212 704975773 111961330 617768939 686822476 591772524 976587780 540414290 723494503 384730100 712348022 804988918 655251892 801939960 183626653 74345046 545370829 298426432 533097121 506124237 544139316 715778098 798215154 898646803 290207940 69270426 353646405 695024736 384718409 932988915 84548686 691271133 744596622 735368298 355140055 175815704 936763877 537420647 47458597 272489484 593628114 837866904 22986120 228414142 164971524 690582146 114802279 446791343 526972886 855577087 710005209 641364338 542053586 534023146 248769141 909191192 355194600 380739917 782017310 343059683 27550565 453996399 857488683 551059827 793369651 878858733 874740654 957251671 734161807 681830148 384767507 459039856 203982762 762888432 81248957 900813655 167108556 989973361 117974511 926361680 997338232 236830152 522859581 404667132 769397460 198628068 759784947 394215906 531461438 735526944 496907931 782286010 539728939 377066052 529523099 416460434 563816339 796054917 977664582 597247260 106363695 139315837 562517971 307131649 852956378 726689878 666428166 152995017 550805787 1362896 1052400 972505165 417595783 325755354 175243329 82219313 976038494 70324546 552753480 241122762 384436535 958074636 879811099 975431188 994200414 126537588 669660462 410027485 563613889 981823298 713489242 134427403 327560774 719361428 671606648 554742199 666378426 65624655 880414110 777881682 660661760 891948300 355859124 231185710 880191978 662137980 601955629 496209272 875245461 566620604 514656961 529788333 224313304 156372148 690354110 586974152 203026995 174495162 49394519 197963400 21575009 730099472 777668823 345627891 434952926 810672494 878685712 222893997 498697910 305052781 59698216 672268075 729227788 144696424 452899368 219942644 897823888 893109114 712821560 524858887 795699563 117831244 804264186 259443575 586537781 827163822 893827526 580949778 598190634 756145496 68499878 234198881 336459849 856964595 341365771 783335302 885804604 225072783 386035243 103861786 269573563 826830299 792959390 63055888 750246393 958503809 691419321 366606256 65970849 40924014 675719516 62043915 444507792 241355445 422055858 767758408 611579251 676218224 163500268 422871263 720678333 467942003 649756779 165233223 631536755 814487915 882148732 361258555 39874812 807542721 883124711 999226099 867750422 657235760 744996293 721759279 117429163 481630155 537327262 712828713 184537070 131620393 147952645 250836155 523806274 318003420 437216326 614828780 169065691 59901320 254869691 366577699 453930614 749816021 927464702 528515831 909891293 535036340 73862582 102890908 407277158 153968755 579961259 130242499 163737122 662939354 727941816 927450322 997759135 698539046 921902149 995305297 743812558 595829608 60553831 188268089 270606384 713437935 837129644 420605960 124762249 70166870 723558929 642206066 703940919 725808931 477661831 611102543 294756897 596374632 433251161 232084597 825834351 21856000 572494586 683490437 983758005 915709301 745503530 176331873 119377069 291293629 961746942 267685213 269528758 784991361 847842785 826620089 790276302 90397540 160896367 686677200 813092096 116090539 839452963 755244232 130110255 693383960 640892309 938708121 612460348 185810680 332867841 917562408 492093439 110757126 754677900 702526796 172742200 795357723 359146990 78189733 830332237 651543776 353208528 799369790 315505753 685844424 938898062 926697709 107089644 410165616 391486760 552144563 548571919 496588587 105129129 145027597 783688543 118255042 139485023 700868678 931083279 280581799 427984022 372670870 153640089 462902531 429137961 926823835 599599808 19570740 462803655 654571641 891901545 672510615 885246842 646582547 858622120 232400692 34185558 638320298 788386274 381051475 227309530 888016068 665686405 706513477 859224749 444447343 902952006 102990197 44526091 488366900 23188121 583468724 884038077 458250784 94853065 194377518 360326791 69907891 46441478 437423990 254361408 950455205 623146905 285563767 569884890 508668783 964088832 625046351 122925933 510908737 708609533 260175028 675692758 775805797 715993606 288853220 80205703 829035752 738790871 274128927 593156303 227924948 628818971 12045274 76788045 711866483 664531380 26033290 46000348 82659860 923790787 572414185 51636652 295473432 318204637 843144895 870637933 313007892 140889231 716871384 343452347 226829424 341394818 657307814 300505994 775407239 611028839 874612095 640805916 517211408 676138603 992049095 837652350 884049328 907341170 125132166 294442291 829873249 189496988 501979721 215426963 285250723 89144119 823039613 180780186 939262569 863488917 43811690 46353618 985367268 607441547 12850953 570617193 300521944 544689576 781136695 529666988 120333016 288926392 945057021 623909441 50486303 517047012 880088941 781876739 737089334 554636952 46846 997566296 906787355 593066577 737678412 542256662 158105905 276651985 470638316 569917840 155183331 825944650 83958938 842364921 285426492 50254720 281674161 806690711 357855777 135311623 488544764 375604768 724745825 773500754 139560303 609155289 249879545 72588146 896050187 990362904 808845223 400017445 326086099 679913765 918223572 663100205 709683269 322000594 515922188 727822801 208115701 379477524 188523493 562447503 884484648 502947355 395798903 73512523 940537388 854574412 652059145 389672519 666999426 165542449 758919706 183696969 99733256 891173712 22956018 541611034 398320060 614280081 790024821 195734410 169191625 572188698 167852808 497291716 31995369 864599126 18191445 918066883 204144454 135339704 674857143 47212707 321878970 289214904 954409769 45135738 302119719 186054141 560422541 340457532 836073233 488454112 419450115 605286019 206522268 349980750 494407246 801172141 58187221 797190430 460767834 948211743 871590235 583830354 242790059 214197783 773812926 639927671 970623692 867253866 267442024 687784925 526626896 479496224 779856229 699354093 344870167 943875227 165147748 737871024 57345191 125089142 21371082 314093145 311954317 592216099 107385191 799946647 178968421 584776751 979610951 799568534 41905659 87371901 694565184 907640471 721742335 522630131 12176875 245182561 687830822 214520367 836586155 904479920 207187686 796511212 359239332 726262436 638437820 119258935 386366967 468772385 65786876 823181545 618899649 28956476 611777550 373061224 159233542 303424027 60471060 884139762 375505376 224501112 449199530 702689233 121459681 937322023 930676110 461718699 347769321 646588396 577706461 618388163 177618052 495665240 328308901 401573395 151887879 898807815 863237680 250573083 71125904 29378557 192292912 48547439 471719571 363473856 912556500 730592450 355450699 261421643 89168271 633849989 345713228 781147305 527403089 974348462 50896268 215283364 233876334 715477853 674689131 49737773 891100275 217914442 553861723 555534226 24549478 461761810 392121304 562366118 663648 8563985 223209152 483143016 765831620 909409831 80048598 349685315 826659585 383804465 941048972 404569532 80112016 172416068 613890757 647839041 257786994 78920062 172188106 494192317 416175985 740236066 326504594 928943489 658814107 263730135 814131903 198855907 618521846 572330343 821453288 355637841 960647302 291548134 112912919 486166149 783561580 618086588 465864743 634480286 673038425 426135941 157706363 674042039 298055172 435142041 201608382 846095196 423919488 104879384 147020170 545285638 24221718 607260246 421053810 70066909 167664916 428353472 674117365 713968257 11009746 840445881 252955734 482674379 694347655 239883020 446935245 222696353 677822792 612483851 791981605 54330448 69307382 695594322 405258896 67728415 886166433 107866413 480417071 780372139 257503072 279891405 496403633 861491870 477667297 655764644 4151519 164898452 600677552 517694368 559790752 287150926 331746700 100275732 397810713 598375381 243987938 571890097 57841465 666624650 56315100 129354608 134586934 250816654 1999280 339806519 876147212 218406725 845220299 945940256 856949813 564155053 982181961 695309109 471779099 283771292 918139938 524051426 162746630 468399204 49023355 540103201 693225824 407215224 988285508 543375903 87745085 410079011 36079827 406986768 749612312 462165862 647573163 942230738 894503424 947808117 228304715 155707882 641799819 645301906 633335848 99661634 110528699 310673719 789534102 701025071 776608174 447421738 902977590 826106433 411966328 786027039 888740422 27059083 845454702 791260992 169113071 132209288 843244075 575743441 230115567 789595319 325055266 9996520 493657648 677991545 526993041 54566676 775748960 472189691 668240302 276012004 592149594 791787580 112914267 40582528 64607168 941596001 773073794 987922964 933672984 893345531 775022547 145108579 59215566 378395639 167131369 59548301 663687075 964154855 215692574 741447192 290912837 983465317 270728498 464013073 834107467 659629843 1336307 784326082 546255690 89899139 866674329 854889730 841408834 423240138 701721477 15495428 500622775 322988149 16683955 310339858 601326406 167843226 923419963 732734945 265857598 521171752 351416903 809984479 137797022 878449481 270458786 277250341 593885453 281904080 586865493 826742363 23068555 29054669 888805302 510278558 539065337 572290680 483175045 823517297 739023370 600031208 723788055 691530157 776813166 532171119 984560631 662799919 939990097 567650575 752532081 215702424 543337693 166875293 154048721 324401051 140700573 499380866 974029653 682872145 825213040 55735893 497478968 822909304 598327759 561189634 636017383 141616274 694588008 32489751 196761336 89129006 348006121 73398471 62537262 112860360 973074582 904197944 929401248 648956507 741196172 669556852 898059003 594671275 363359323 489294120 800225600 772495591 468474582 278919004 633857233 381943287 33511233 991147098 516430717 13286074 411302382 511396186 985230322 348509034 505388761 697272494 717451750 220878450 811653211 238260308 244840883 658254764 60205187 474696566 170301930 828518681 870557377 396102262 650051998 168043980 703327262 423015445 910307641 782831094 460605545 146113876 744433058 691781690 509427485 412806964 387095072 940542981 543121890 375248724 613793274 194716055 197447603 65001776 904864698 362930067 415756645 757089423 313622352 954072353 680590956 805571821 120998455 296583203 406416482 664977580 326995388 292911126 224986151 364369886 620059366 798029234 498965973 889721667 209144900 931266842 324052387 718194253 150691437 561267820 718446013 149068488 172637674 733612291 494406304 61568065 988471949 276969747 306429441 776817912 319081306 609307904 381342947 40609640 423047842 227745421 295987739 823323583 305789775 390501633 640377295 885120290 124961601 920198165 460822459 775610937 774065664 417668342 870138247 813045539 598336701 999573986 759351330 628078284 746765995 919626793 799713849 121097871 559185339 214420410 786133462 998405147 776289617 824929152 213419739 219384446 452929793 3630086 72128664 408009381 465765328 238327962 166865183 574965478 580158929 642563821 737259045 953042550 915727556 295318114 263003026 57765468 991023489 811742074 535935979 489339051 993178262 636044099 283110437 668491264 562081907 921060222 407927557 578566853 428291330 562284462 78740092 274331137 916538814 721210202 460914392 569294977 702329782 631199411 208695013 527990482 166964764 551615127 917008473 935863389 237203718 355122842 828085444 787616715 306500034 58929619 652311477 899614273 7343926 31179750 627672145 979124769 992568519 971486969 69326455 865378023 539828681 898301201 84163212 860924433 878185076 156317180 568924713 716045056 575893331 586247604 13740661 217958625 497649342 692327411 608658635 310498900 935261914 930272655 294345841 770053267 371464856 466748239 379230869 386084423 858711743 741554202 390186539 701167730 618073521 603647305 498200597 590062910 713164270 536641230 89521354 221432335 736832166 180471149 649363230 381356016 734392683 875169830 273223742 467448289 386001026 940995759 343813060 344753346 983399360 793170883 649332408 902494370 427663231 733477254 94426696 93083886 683466176 314278737 230518959 783594128 580987804 694667777 787225639 15674936 592598242 827289078 388196805 114938031 490989612 514302950 499863039 596509888 719793408 549481781 344194597 469648689 501304495 525662347 912727518 446220519 656345192 580113510 604224117 740554554 456343654 43677585 171429250 934100153 416565963 224303473 94269188 112336352 12664058 305211542 947917755 289703354 537082013 575010571 120648426 698750055 542753605 316457898 241948225 541254162 723369943 964444971 673165985 438247948 632742612 437779153 465490391 530266819 722215095 522687250 646962809 411834231 725669993 937539570 79261922 229269047 322538962 799319806 403398278 953689886 477019186 916092747 409744356 636721799 895139311 409760914 972451832 607102760 524565164 766466044 843061316 209029095 941573567 387257742 750410933 205800568 553292646 746334727 391965074 356920428 387283196 316691659 9292448 870624975 580466390 514823108 999350911 964906063 191236193 498944681 787368431 225849034 124462432 491567548 317592174 309836046 839418472 904607208 474668175 899852408 593992826 213129703 745891887 437221967 559687579 645143839 671127909 597018465 327274383 299853091 455763316 245273712 557205405 747994556 143736445 474652302 110436429 776152450 608207787 88072692 883737549 659568380 432935994 622593287 361322856 726550352 463594520 569949590 267377788 887527031 913314441 23864474 289939991 447855385 439140729 782105820 805699683 371707937 473933834 297121341 97677886 369723110 848753413 465151848 806988625 851021919 665407169 246904818 249929379 383038762 885589712 414547608 940989921 905558546 966523357 357957569 593567882 856490697 261968486 838057330 361787266 22393452 317602647 743056371 749041949 575469333 563880978 512437057 409708319 918393691 68299497 62518498 789047256 523111420 268454669 169149159 557830996 194269199 793026906 374413229 462139768 31222814 232492185 958998429 332908086 121119589 573700903 63611707 200372237 644624504 335948278 517961962 627877819 248915924 938955374 508299820 756520029 140685886 25208965 508134275 942950875 514856699 576047653 411128515 851896005 352550025 487269484 303007556 818256230 876307452 483282718 857188262 253080659 96144592 150954098 178654192 280141852 879010762 289230458 425315084 869501096 802911843 470433906 562537499 907630665 272459408 623716869 473805282 249765662 945347916 133459818 414626731 682152172 124353261 148522496 627424281 12297905 354458257 677628783 41149757 584554134 471702796 247328502 704886509 611691933 422244723 895605492 104448487 412216322 744218605 892088683 22476089 332680824 396183899 509823850 479370414 228699977 775415604 55246752 667259104 544475901 101121610 116789058 989205238 822768673 95201630 612107336 726815245 392787254 879393794 229203902 543917243 423352661 21133347 774476084 527801762 325563353 725916361 407950272 160910643 377800838 232779510 917718135 220545563 127318945 762986324 869951077 384232295 425572280 825526698 110674014 896517462 960530954 417316853 343211061 684816548 735835115 652487232 519950936 796905811 480685162 86254971 245833288 487852587 94612285 807979023 44780735 564858923 709876068 239918633 56131622 880641326 400516564 822961978 763959667 390004176 310536963 999013712 346552491 508857078 660702166 816578373 303315814 395101924 768842150 60274946 939164820 930136783 659726261 497109267 452959020 502416855 581695230 779868439 793150020 394562461 598809591 400735508 45669489 407269456 76168265 532832350 750408496 511067947 962351534 91137032 241194923 546356837 574318484 895527458 665069860 82998201 858588043 111830158 424275085 396865743 245673205 782999409 934770949 829978587 2136794 732844600 171025911 260322849 799202341 724160721 736517613 327718503 947342980 989618682 460168459 830071882 523266183 846362090 407741475 933636256 195694408 709788468 24538711 270312585 5096648 942108896 444476146 346747113 115288921 971314870 753631316 782754593 861252886 215230882 127227796 629786713 167828346 596718937 257592165 893435775 507657184 325520540 588479142 537474749 535324237 593264539 346225115 433086255 858729195 48711019 340246263 107434232 781272279 819905468 241647959 75222594 343049626 358406026 987649935 866500449 874847928 640114209 543370965 204609479 932072693 354331095 502638969 646155645 349614746 949807876 181985139 214959194 71492639 463861829 321073711 551700952 179858440 348193363 354481418 222081810 19431276 180530301 61206598 313756826 965910626 943648397 799840987 561059395 405069342 340273202 167443696 644008757 960760741 770274912 560739477 624819797 813206200 483990497 310570320 139146428 421430064 611357217 270562721 801302169 586284261 424815773 343216328 489155999 890416213 341134576 116615665 90914659 427760434 872679377 172263498 163471007 487161849 282221863 258197944 983383601 544627886 303942610 348598088 744514689 834945663 704119189 482948575 344722962 334194334 371725957 871001693 328605809 919315195 715154595 870292287 746980774 59853910 690631457 46237762 156704590 441812291 748599132 617244899 126465181 998027730 924146147 913903431 142521655 373289784 408381686 73802798 112342916 522852521 920786982 625967780 979540786 576799883 39802611 949021220 294089160 585942822 296633483 543920662 562270997 826278855 152442434 464801564 690483962 437690384 903799820 564032693 153296625 579194649 13169767 698953945 739580295 485804261 250213813 673951836 909240229 812827642 952746351 785201996 116510078 623506976 364021254 299556856 549435578 460008118 58968482 348412596 624479903 453153790 868793651 488577038 811483017 923380493 436009214 122038551 288581476 978332905 296185060 610025599 111638684 118759329 718873459 477685306 720140728 718572755 946582965 935525580 840563591 957440053 125073604 385389221 748611049 433252457 856058810 545812446 727536095 880025152 204935089 645873753 660337909 916737873 368225320 892095470 666336417 648871205 836867359 869790077 191299480 600182435 955060057 777731586 926238833 625285550 575840250 912106952 215491456 605481595 515925988 72195984 427898795 794484791 561452063 886303044 285649832 62798813 122943851 737686730 522961966 585485567 75458910 937614099 928983897 579931855 413426407 834936199 185690714 917461724 848914542 37691411 387927893 766361013 573143981 878156741 770783095 663131211 305791179 819762135 949564284 423582512 47559687 636567423 608094742 293482513 983090041 810604525 608211047 736426674 645862471 847989367 247159527 335278650 793027965 594075115 212194621 254837580 764525802 146140610 280076909 375747785 211233080 678762657 93634749 398909544 712900918 371881618 859374104 444858280 961347775 72470701 44642218 590935278 351445898 298591745 817681479 285401080 422523998 498253170 691155292 186710998 955467090 566515873 766054505 362375288 552999657 584616566 215507644 722192483 914615753 964747612 744819291 7256597 543833615 866544066 315469407 936757612 919590806 691602933 810529040 35648215 518455974 590147902 949803853 278526829 388967687 32819235 460954025 782024265 548538753 988917339 934154816 540479911 318250331 808380660 394886603 361579651 363560370 428797527 928071417 687762075 22810665 109151988 658376038 82184656 349921738 46498336 312947192 809564440 667170068 276756806 947726739 809233033 409014106 61604051 591947909 965138115 679931287 82055119 381623919 954638947 93046804 621468602 400684545 325224368 319079419 514128339 557687053 504361800 75991252 977277127 43491672 716655602 496344820 345948148 186317734 238541198 720647882 35427966 927209936 78430953 557275910 989857918 293060785 924218976 940046720 935763515 917761478 254525195 219324228 377254612 564151929 396339013 720090217 194906211 664827094 234389420 355356304 770949607 986257910 143337436 410830359 496781864 263068179 933041084 264713797 511027088 498812485 556410398 629354515 276556241 489095211 570274031 703355195 376467151 620825459 887303368 648433630 985695685 936022184 283789930 520619865 913644470 968794712 806252267 637102319 471779605 971288703 859973495 466454208 941094148 260484229 287024927 250311603 777754620 749695509 124130321 438288495 684526933 109521969 259954756 134798418 924002277 135009305 138831613 922316581 331114599 176332250 723612794 70325343 486604363 309451694 605822254 136261688 483142920 880004502 176327117 621497279 725826709 909547467 751858979 379081484 356899178 650369154 986546099 31576722 956706101 722262550 882691801 623173391 570841177 405331059 434102188 774702375 939915401 96845096 416201897 649949615 296635547 274712616 796793560 288497410 220621159 341610115 165258184 949369332 345651944 955150606 614383545 530743185 445323715 970308039 19997223 119785229 716595329 509660099 330946526 244709927 112775189 819901102 28183957 391468219 494453081 709254017 869976957 6120218 793572396 644670862 415402859 453456265 994795310 366846835 590543447 654962497 163912131 205226725 531074825 997688926 278490684 755813852 23993605 954794768 120934161 94572075 931625497 351094771 983379788 120701063 964634810 977102624 357375591 428176636 106369444 144986260 851813364 655988379 844050551 520635728 849016696 384361150 857535489 126552893 810629090 27387653 606377190 107398055 534235882 798009758 709555454 382237755 201891479 14056198 936995736 918606600 312498004 437979329 729683449 354508755 161776480 21189067 807796519 10696411 310070690 500945346 146754472 366594956 705522848 526430301 168440596 875410958 633283189 45763274 9107512 22708145 317469808 396569556 18165810 848455078 282646286 717301776 174324217 48054050 350810528 338485693 550118086 689363048 124100508 80183955 29929265 337178125 434830146 514144335 556656837 112015144 717136648 102876331 309023346 43142749 313734758 513053968 300866279 727385141 432482291 405160429 501263852 993680320 915005542 756392641 242169337 427810000 111034507 789574939 4386054 807386225 247645546 560716031 914066406 569917212 796824530 759350987 686405916 674670212 917934239 697514418 289502888 3909938 382269968 836647500 657719081 159667013 363760276 890148994 869224968 364432727 40563139 234326651 370163847 727695434 533148940 220097103 824566893 459454545 706507871 642476596 322736474 820471216 285926636 867195907 208532241 142977208 962004287 529708737 529173697 104009556 974006991 993488669 923834312 950129123 19682953 147634328 845278099 830128934 468559525 368432445 784843299 583852253 517185469 13942918 932804033 367756112 620312142 769983005 250263461 153296023 50218562 210124195 502985144 161674342 749171011 660529988 458682355 64536267 402686259 464272648 664391885 205004694 170960216 964729517 623630314 362289945 383419004 301911823 131428395 127703803 655790081 70967939 497746545 288587687 268114295 566667149 593340642 131956637 634585869 931525777 417818948 557243244 40951384 433652353 834161869 788449177 465275686 509304147 411441578 781312136 245525930 72458022 177128197 529764217 28377336 183981169 618200057 829554004 585704357 988010000 888945024 847691194 716575330 614181749 418545170 299928507 818119242 818737924 625688154 560120310 750058698 162865225 547519136 470376703 543827145 527111878 550821771 255368448 498126328 171948051 324452418 250444609 260882151 101905772 695608627 56854555 146757002 889599977 405765574 649733317 933521093 45482653 843993240 219112952 623485766 434210920 585164433 571041583 182532754 802090887 82264785 3671889 229106157 665887494 592376778 412020512 337893119 230886769 353218712 598737016 555063648 158430735 672973403 971516765 833427361 579913264 524809080 851074088 965942675 488290160 718990937 415117680 753034388 493228485 223121432 224470276 89340684 138370279 86797973 871900234 536397410 906816346 24745279 824949685 257001387 593188753 630186107 741479279 22623944 972990143 58272757 432349744 201857536 89482019 428390042 484966657 65632260 10395980 799793803 533821392 234624200 207183927 210857348 332810347 378776240 157839670 337211801 414644230 55087997 617740190 487256551 658465473 278996451 872673905 409159604 799328158 148613493 353359388 511508190 606799970 790542717 937480557 614717887 838749675 540056423 931958919 388860524 906164569 691487699 763828101 330611629 68905333 53131429 839164244 709928062 235690403 319836249 480703571 776936798 861499113 470741876 491897019 741877618 86931576 942039929 968744363 143140957 519970963 837303360 903005494 339159498 743580426 9932322 448256864 203783149 254849529 802825522 324873297 951958975 202081435 155797939 284186418 481882463 589119907 464458001 880078168 374718789 918147835 852145373 680892956 840877609 378882872 853987148 583107339 955894586 293241014 646470339 531375742 212431441 303925286 568309666 914972325 83351465 698410346 765642361 121043282 587465039 675818576 110882731 319350880 477822555 765501444 537290924 335162751 759123187 336020718 38301937 520835144 388321341 455373053 515843671 950579437 946893530 328326690 791448718 913676219 242431477 734682498 890599690 872125378 798150477 483938726 342754251 690817278 684574865 290892460 212298209 91821373 629298655 641868636 755548402 801011181 355209889 291445518 37355842 188133310 564780036 960346533 434645143 424641447 223036211 169085088 917781262 816485369 85273203 577052245 339997268 626150319 414872158 606491180 921640074 473988596 412986137 510038943 169898592 844992171 282374105 750513277 231931264 550177762 192376166 986627069 599826685 177104550 991653583 898454897 540773958 893788993 905164905 324778309 849044000 847498365 462465745 29874245 23422586 761895668 261331284 468230029 890684745 746264902 848282827 277516051 59353622 218906704 528414400 735596152 463718378 79363135 234362938 77554552 529946816 438851413 156954822 282630483 718356210 980893836 371920087 688354868 659234431 956594916 152730820 994587606 579006514 179454462 271487525 440204283 216818076 230237412 445978922 768817868 95130062 937570685 101487783 600673620 607311454 727942990 78542767 342191232 932955585 325387248 495964610 565230320 912436515 190748816 5008544 990899012 498912998 98524241 455638053 49710085 538083519 253045433 547354063 499515145 427955147 876112148 956713387 848730648 177668777 35227711 789067648 545234444 515405370 229609952 516921563 532985713 987262460 824175106 785466797 925578845 807922920 349873475 505010947 337498947 576097618 97350521 475489879 553591706 17259332 483797024 696940259 716554784 414404848 889948616 430959975 866567164 778327716 846124780 51188206 457705315 650796486 677303194 203907355 158233924 226712717 402160054 664927880 528934921 964676470 907363043 979580655 943712910 56093942 532728496 803045279 235214242 441941061 108925199 526158997 766916427 810492496 216647970 323881514 888480821 950726386 848868122 770928586 755160400 355572665 313559616 109277433 364196324 365998915 380165612 32751469 195319567 140874275 413846151 249460484 377005796 139305364 314749321 347393129 655514885 917281737 667841139 61827580 601956854 196452849 7893633 660799313 623143659 232481710 277506074 602908041 488509057 137755414 631423111 762580389 686346815 684824673 992594802 411373568 415666411 368593875 506933095 164431691 656605248 422530566 242665374 101613105 731320042 185006984 209773001 941865123 888234727 818822433 372537116 685565225 668820399 60728500 613754576 504847596 985547873 55367813 858383905 986739334 787876611 494748840 14183133 160493220 605920760 155287143 942690389 643380163 849976499 994497390 275357314 606609237 937456305 852553477 166308360 864423567 961808371 878979744 981503688 844387880 75090124 881092038 205307277 40025435 33494297 430745546 173595944 922423441 570519196 773112889 109187926 246100402 455619647 387489085 319361485 608273937 15269358 752864299 411295838 720490833 445454164 182893963 279605549 566660462 513961351 661229119 386783465 190775813 110222167 496916400 158001596 149342936 129193194 208288646 223766302 460475886 191300035 124671459 355443325 654584273 834463044 10961654 995884150 143824327 256801808 395603186 760830421 619353568 279999406 925026441 979756233 436864594 510768068 99270028 418286962 160869936 226582024 332699766 595587315 314288640 684118371 110078487 806912175 516412346 291076647 120372501 26599650 448025512 718406845 979165296 902066607 461371108 12145344 941458284 875261957 622262024 712727972 890816921 644432932 549170606 801835507 511586038 248192264 881989744 271717701 596177418 318893993 229998811 78657101 537077227 515071809 148407353 678151128 138240574 353153340 374320422 465207381 4926134 96141224 315794271 184677917 119576085 170719877 178224027 248016176 994081586 583356540 669429374 61275186 218512730 802441982 269186923 133928782 819181861 635077396 270571096 516877540 501173481 780064217 861941167 20449408 81734896 987437903 700420990 581689627 691760981 941265598 986109245 84306015 234091430 959643590 331608474 343906598 895971162 245159748 142291533 876439905 133795479 213997084 794481843 179252872 58066118 382426879 642078157 427465449 246101924 450085765 727446298 932218708 160486756 356455973 422515086 206563931 324563918 944905074 929874448 581244829 708834418 417205509 64392128 111815774 486362048 464815415 907560416 931048267 635569433 476208745 503627060 82269539 407640112 833323934 562697164 410047946 747924415 191054769 498803254 523325333 107295433 931370155 33750933 729100726 61479023 314987096 873711000 663965492 659171306 102443851 111089763 186110862 298948864 53282194 81204264 689570758 892230908 530082274 242840234 957849482 302500348 531836593 397571588 639031385 899719317 8480047 902191378 192629604 599207013 158198228 438959249 849876365 374698261 7170501 28097253 183172303 226415804 486975275 611898730 490519924 94981873 910512183 90110090 89197638 623620713 986135122 101964450 801407249 440348870 930563004 991935212 533602985 468887111 530600160 251899381 735366609 389042865 687615978 366685300 646088761 398964906 172599379 630559715 406989751 948279375 496713640 182022563 522822080 761739903 828263644 221410122 189898160 358049985 599472043 386505503 21847843 16687126 504476171 646176387 749428111 825169421 849422982 778739195 573987464 592622145 828886980 719517389 861745335 72476343 41553562 494391731 220714317 382000861 796750012 78331787 3254575 950221471 31020617 282058588 938602960 660446254 566456235 78942488 957619571 35683100 397018616 339222645 833355445 856282715 408393568 464102809 709435682 931857737 240826222 610038313 419370373 467149716 282426630 934890748 359079156 242536563 309156388 31196931 998106672 869892237 89022310 695348797 752524689 103054037 986596772 641783093 505901403 972222803 655015249 696058878 914784773 917949850 30559726 75203585 738754531 214410093 752431313 564049603 601550829 884676628 858378912 561346361 841300825 322172382 585434845 755472354 221487357 110231751 476979467 957362867 361792010 966271569 583820776 282145592 560056822 349036081 101710283 599675028 708264775 67781986 608744202 360962266 966556255 449927639 219675192 184011340 986564192 304675765 605909414 598663007 765388879 836144970 669240240 742378279 516688129 474243449 317085972 546400378 304979917 824100026 283821656 252202482 550661585 796879445 335872318 734710495 285082284 659132786 663136429 443170167 568681770 646270088 410732164 290615573 745100326 978609164 889781045 606530816 588037228 162750150 249435159 515985811 330640091 459349342 625019661 328324415 39835761 751143021 341757428 142009357 136375816 884946207 363163410 50287122 799887372 549242598 435598989 378835709 778767423 933776824 538389126 829626102 456355786 28116084 316502728 361446696 869883561 3058493 724586826 55109315 790777276 421214162 190286606 97755951 459743888 264124868 168058892 542376138 608878997 158839497 85260306 158467461 335363740 811206419 989533017 640704023 337807881 89986547 858611140 114851312 458482127 543737421 447365519 401195181 576041631 858184632 304375891 41247311 303518951 564815768 576584424 398032604 702428235 615943638 363709547 37101046 95443893 373933412 711548191 736655973 67565496 131016501 49549175 72788355 610231828 536414712 132107495 213430198 160234819 962850355 409596816 374590547 12275230 406756373 64053493 355641056 457777110 927285604 725874730 563654300 243846561 791810343 790718831 325637486 579182503 270518668 495501991 961745393 989175787 341532683 455936808 297035674 939255692 45604880 291788350 47016782 165467832 972452341 329919552 852245467 557256719 14116427 965866449 729070107 249596135 135820563 374653161 295815918 323258613 525139084 784689950 632081027 843911748 150620258 862360975 501240794 240756321 759197472 448193544 912785985 512922329 139525215 956399142 486957101 81784300 647948668 141477373 242632003 247142753 990628365 188960765 970927857 611513979 920666690 466155933 780452851 834398121 508667226 958795166 114469532 525070727 693145878 144393921 10319289 321162313 636657659 567114961 899137503 587274949 998791266 739729796 409047139 263736916 679854117 337248330 118426288 927263330 345099848 140840316 334050675 496725769 59249155 848005767 67410033 54344489 945483020 293839553 644371574 663555479 22249913 666659667 322857355 598302520 885420359 35682702 412427225 801350361 122475059 439393032 980158864 335113993 316402869 268604486 232675883 275473476 817223507 767313370 421505179 134747153 427395923 182609411 435487150 141226031 264592212 808573165 531405044 450599543 722290626 550045307 76347524 410880508 770909759 624346266 345582592 956990922 156566168 418584661 450846670 879583938 550805997 150020167 572353758 9316770 780031428 450469898 342123670 174517922 437050420 672943153 480945014 639786450 362603603 340171974 841620716 645491522 828918040 580201020 214706327 140852588 899747459 462183187 479425456 738677677 845245513 253794541 801544625 415212496 214144901 507562246 10140358 255504126 833878540 188521780 997722575 749324987 350764598 244011895 835175374 477253931 166207493 432444231 764896527 224817267 619140842 832397368 891436702 508921624 616782845 98587336 220946410 374330636 55872895 343397255 321866564 824528006 561899389 553248306 73841222 606389847 123588647 211317225 180444871 51876798 557577829 926592150 478073832 554505843 530773122 161642055 205416422 309928818 995486696 308270856 818417903 678607279 940402250 213355994 44501909 473681080 203230037 435626865 884845374 729605977 254003541 242566223 134614179 398926829 674299689 32952881 494042341 943921239 869963219 989302216 706568785 702945158 294912162 99182559 581400040 610305656 438525643 546065564 610839034 482669623 989762172 130018145 14624036 691607991 678085427 502037105 555270352 2554698 959650958 320203113 682381701 816385087 94588213 691855938 86005085 316664894 516058195 792550040 970915933 189948073 963520232 523191183 959627727 670977177 356223504 677358171 263342187 966928074 15075354 750700454 571833377 886003876 8246271 694627415 916522704 467600223 293620685 166538595 934157723 150042423 984776457 340334737 339354224 357030163 361665542 595607778 371398653 226458529 466253846 761269244 14501446 408874482 349100131 884880642 992566045 823992846 267863707 86306780 387896096 151852925 205506971 564882197 575865689 641210506 523883376 869389322 959592267 28102131 807845585 549157716 148382083 736716441 684947326 642304184 429168258 872744243 991258926 411391234 24594711 710239163 75623546 266369907 171920292 585645590 111204980 156339167 55732652 49597639 403602689 631944651 754261349 617327744 712525397 901738373 850515225 853650393 570772624 310671046 920261446 410714619 896988204 933621251 694107600 817633996 457237580 834934289 975260928 863923722 945836598 265792988 8961375 669458163 241235251 807463664 304507194 618957499 537471733 542361213 551710033 253344848 724576481 142236826 518883387 670532197 846050984 172891703 594372866 474631921 537289858 234436064 637984497 299862610 27391840 850102219 806859738 715536578 304809183 82304534 913824717 752253008 958329742 902955409 930556156 753835418 157767910 22908809 922136173 558732785 710025407 196345348 111805021 949450837 728888450 522153088 843295272 241622649 303960430 309569293 378651315 390224825 314227892 892462772 360962689 502109708 152977925 890193725 45288790 573762331 923658087 334231872 206055429 880091117 981719296 934436048 402144475 789593449 570532258 761426481 670818159 542934053 706660579 143879516 462616914 970977538 81558614 272187676 411738152 934251304 202923986 26726169 359073528 560729719 223997384 152606271 768455931 302125967 123518111 746982520 118211726 748515331 460078173 652683985 461992671 910371412 614413355 426556938 199145777 698904160 851415022 657364845 140830952 927513525 241507756 762853146 333495418 812725646 343664428 364046625 443852330 450801759 914674517 859603203 611336790 9871896 910889998 607340858 968163486 542261220 871997415 44031054 900468726 607709588 791634428 993387139 801704184 903063925 600054511 298754146 72351392 101955287 974251363 468244785 299731161 158000824 713834790 352055907 192910514 64468358 189038444 701910699 809399658 762457674 113328211 641519200 906607497 620474643 91264188 413876894 386509148 201178572 313817729 964732059 743579058 633876434 413191793 767886308 322560323 413127155 916269055 320228040 721891948 146455160 454371717 943297576 691038639 651967108 567639035 886602638 451835753 256425935 673043016 988318501 741792918 312770621 318442601 153887166 734202573 443636550 984414524 860303635 354957882 10846811 166984195 227185133 674731977 771528760 235573402 123685584 538421487 771725102 926476283 578354092 541733306 866081823 262268259 135435403 232599558 705863566 116109997 267277564 336698280 359016748 479587053 615843540 265042702 421774743 101393166 820331865 997607118 413524643 9949741 340530825 803042555 328620880 913928873 167965489 81351699 605503795 935360584 863533112 257994110 957114755 714874048 956205297 624210149 939430871 679501582 961573893 33510441 242101854 804092070 919636202 764112699 147204346 426271377 103848617 174580632 497102750 929448086 897760074 468886471 899523681 769733110 834622414 145341870 82808771 522395480 653276251 543612201 117640601 450365524 537298793 192559432 205704850 947822814 205452339 704572449 976597699 692002813 345626465 977629531 732235997 410748073 678336803 300854691 91689197 644196659 269591687 54510955 28556761 830385146 346644619 795883636 635324272 612779465 668358196 606971376 209341779 41298468 267541042 317115651 317555462 950075413 140753848 149853787 78930913 198190974 823468280 138050722 870208442 515903448 595996790 297525081 102408247 746145100 104241450 685495927 196474694 819147530 636357690 532003000 745591132 321732736 466564310 129023827 496946665 875410962 301091736 749439494 265548531 974949984 368804921 797589389 239437573 84691311 546789451 206475272 648229945 626583045 414503816 795670684 112333648 286231864 10982904 659909443 24878874 875158479 501691483 962127945 630698830 53662935 516657486 845711220 331009211 833385219 364835639 514139880 283638130 290307137 626059294 496137573 901348144 887199487 197088273 491270383 521485815 167779056 416386709 767175406 136887709 226833375 978096438 234534347 842098104 690959843 936619296 865653683 692825921 555170442 219167271 680532019 993316123 817306763 136017132 37728035 321168026 157712436 247476925 985498378 351952230 151893027 269791909 101590628 945648010 592646111 799046299 609850430 959800152 334977998 416836155 161660433 665766631 377320877 425643192 320125203 246791436 695590142 861415021 882313556 444276638 42203301 175295660 761228194 534522222 944381798 44083931 878915954 153897540 719884719 292684260 580690652 290688945 474881541 408729890 398859873 69591129 434551921 521162101 591681984 238046787 646287795 419079739 391278470 707874903 204878122 283288031 587358400 902065083 73038279 716992149 975167392 678363979 724980912 295695447 930105652 820987743 601087798 203446301 85671506 438682062 403523441 90078527 914181224 208176287 515118583 298883410 609791796 166379663 537332127 575865839 996451746 175729860 191759353 169902671 448897237 523524546 328262196 388347361 301159218 371996313 97056266 140111708 597004568 932944595 866272940 315737791 217293455 792510128 280669989 187868877 831348356 358101497 156917123 751432498 287253077 128476472 484597851 566501256 149422268 787034154 147162018 659122150 708903636 340669079 847469037 310205586 925560422 46552407 236798476 394687307 645162474 185709326 215657421 317222949 140632818 735599334 874700445 93833911 945458894 476660000 449026038 962632665 329091528 330117713 606600545 647275499 649601923 145751346 157355656 159347852 346147105 939337643 468743363 188218308 664333420 338136670 234445110 505091298 450981382 134179274 748752152 418025113 298372218 285807381 566804703 783822193 558818353 420281687 478933366 700907562 926797889 179357139 110001444 635643144 381537024 805283981 115500138 551388519 34606387 496697578 33225991 814463535 862930295 957913839 779372433 48500702 206857857 149082787 652666560 70961580 317350997 330143562 43092021 732255980 392841158 42743591 263015160 836498549 491731136 202546679 321092114 37416683 442946727 814111195 505029146 304816828 328817002 303474257 332723926 30126317 61445090 415981221 724632495 113838394 399751315 29990911 137690733 984252803 676273681 712174396 609922068 741805837 950877727 980344248 882247054 268182419 876312338 54582001 99487296 549511245 198143584 559959268 95999550 306967679 692148881 756210721 98406883 852217762 572002566 162294129 513521398 60741819 421668640 961608462 78858189 873575997 388449475 39474377 274625936 837651139 181645180 317114513 438376954 589992744 10865758 154765000 90219414 782964700 985120826 497916768 260133240 33750534 43438292 243549420 831812060 791578544 835564056 941376849 915115165 639244018 782168197 877913291 704941726 593394961 10407842 480999386 293371308 103167177 527268498 92818711 187250768 793588540 21341011 105035680 842285744 261475284 338022594 651724193 768119661 420862732 568058668 145164680 713695294 967774885 130500789 494479627 876949258 854670300 842023387 610040772 429630321 570594493 949372530 241202321 214087057 838593910 865720478 403259125 880436496 945975477 194731792 872535376 698068277 143352377 451764620 68076705 856324857 25426096 695896584 190252288 252432859 603240813 986144247 888084902 687309888 979055013 148799601 452175793 87673066 527672331 870143222 708124337 332580004 556055784 676769916 440668749 967403436 687431032 570220469 730368094 793291074 661610233 85947345 34907884 277344752 966747435 955863803 772245942 345402985 909947648 731761573 155755409 907584198 868396651 144901745 810169013 37970542 10744072 105151873 95226326 50692099 134893060 815695123 456096726 554493513 954065709 84821819 371080964 670054952 481265489 905570038 925400747 780999717 845818690 535226534 391619552 260554032 854410521 410659400 277305298 552924263 339812118 218258439 907390307 343200873 813801924 574816344 805948775 985534533 670376931 443565831 712391058 260317857 270723165 736110140 168640552 808068082 253915547 21368951 199401829 652534772 816415420 217269875 811065901 564687541 488427210 229501057 7897839 719788073 443742747 158001398 279158474 909909894 414925494 164086093 256699905 675738333 615482292 154888443 511705326 498046429 719274530 302156035 323825446 611631877 927512984 800441936 407882740 302103159 401859047 805699130 85552109 461309755 320580872 319070862 113010683 197807127 650528966 120943774 909754786 170842385 722209294 506722584 808791797 920966320 542629230 424627263 769196966 328347770 699901446 98123238 546469254 182208632 924564943 604024043 709261578 917269107 39896457 499495318 77568900 356011244 32475954 441316237 14252474 782380387 432918391 405559408 809157969 300518402 719055432 896069761 458083566 929691938 315242417 201862172 743231680 350943922 96987854 523882183 305452373 610841493 522440169 56825763 761785973 697950318 903111126 287988601 79667811 34743462 966506906 374559460 691275627 916610714 717374374 245546562 994631553 20714108 948134078 115062201 535538078 546061258 894443875 599404555 544192954 179283785 588597872 371256479 484787277 561536357 696430568 419509112 162364518 217022147 16286056 591492695 298218744 989878003 598139371 192530582 952526921 477462199 167287594 612544503 382897897 818990954 226147647 168175353 972311407 380687120 271431657 389269613 236081885 521383827 434953896 538687956 904942365 957958825 809232158 150039946 495199095 147025640 661709649 252927952 318340297 445692992 76495723 334424319 241488079 704516203 234095819 937610542 760988930 398446560 506039836 116999421 494423770 546759958 533513897 589196174 253046737 354652435 245688265 220930347 193111569 853914203 745450833 13254432 556099633 526778337 880800810 657148838 365586217 835541421 483582394 487001866 516483066 832753991 64317526 775765853 819176714 315904410 35745014 177737417 485231747 721913797 461516641 476602292 689806183 603065908 83063966 251119942 159907856 139400691 239949350 241946116 667155718 442236669 444825099 188865133 208510977 674225940 376261499 237818773 32032680 414872030 289160891 490571066 121816154 678947504 963824139 29265895 570443017 709648502 417796502 106251928 33439650 207561859 853235147 576053325 907518995 273126823 230124803 410598187 566209768 871449025 713251848 624650391 968625319 12987802 932942826 282057390 138428886 610920500 100819432 998582160 681470328 502831362 651793426 59511693 849715348 428563669 305935120 492920042 781566552 108198250 822991062 337648342 345794419 320417470 792371108 303857417 679584401 699188157 622760725 657446822 521191133 135824205 613285243 492101757 42040204 574876572 304561371 42066810 717330858 959678524 558224362 515266930 833669919 384000276 694167801 976929802 314576884 458292914 293322729 571329843 174812969 126245190 399337938 539698992 61649817 558572778 322876961 765022599 574255966 139419359 165731558 14389796 226570688 381524944 327101836 470243372 36932200 639889896 366809832 776939761 344526801 387929273 439018581 404972610 790363954 593845824 812268361 367053188 923062309 334910583 421637102 238667785 876131465 25425955 837943496 496375383 350388530 884187495 700494946 420272111 264937357 838283607 118818617 97293209 930364745 173192738 95036644 33992820 222765871 729763735 860969512 268940427 25170413 60929799 704044720 124933592 365030520 277229606 562439599 339573186 642346243 175336481 906002643 829666821 90953560 40452489 860176651 115926179 838788824 130389127 818201191 821550037 116849123 807841073 802706473 224990159 495213629 265795176 885808981 965446109 620343772 145465108 348812513 421587594 976353676 579512530 564125774 172765617 101770941 89037100 371549051 744324425 786996862 65867747 889372465 577658930 71012372 824130598 922231214 178799625 70153994 89285221 243738283 41294289 994085556 843212195 616755776 997635617 381689077 918838030 364244967 463780589 840319304 707690624 654670024 512472433 398577834 943461678 929919939 313666463 587838827 145383472 633388897 686419160 813746856 317863686 159473531 39537826 144770233 942288515 620065323 269954738 940447367 426365734 828180154 493827883 73313081 750356603 500310881 263014880 530479017 198400120 105553969 349988109 639851331 491776727 69129387 305028173 495084066 513733141 115245314 771038939 845669943 38438652 451017802 269755622 126180717 832643440 885790105 410561642 170511506 280430636 881092668 186161980 448864066 495714006 250624312 500438264 338756270 566995656 557426300 889550080 127439835 854808578 636599632 76474687 90607593 593865897 298286596 800046946 402524605 150805713 484277515 406743504 129650414 731611362 309806097 835815665 363321222 294431455 151805197 558986985 468308650 142005101 707091965 309097481 178872200 154488057 718426652 400517173 437642657 344279996 280559294 234371442 644358429 539871821 673424530 5986796 575063583 742801041 309914097 789954296 877261017 698229653 908740079 343364851 666562951 704344406 556550486 360685394 194016499 369527979 420076076 646370973 413972526 31387332 924333945 100580621 522183151 167173096 150866442 652272026 263726125 623034687 623257009 653869094 451948036 158643682 447567982 181302676 860167467 181122659 662325813 599797553 744156001 308802863 249746756 235578294 965587469 288009278 691618656 931479544 869052981 729144938 127276950 725961674 741755830 826189648 367096402 709854211 471884971 306316910 411335802 230194961 529675809 160164070 831344625 855714759 785940267 757671381 506526595 879190144 248474208 546387086 714336278 211931628 328478303 320626419 127880183 730901313 744826192 335215459 830885765 704041152 433929730 324673899 988506837 577467128 70048248 957052176 201470914 122210948 74471639 680371268 548535610 537068416 740313695 847608447 300109748 61339121 712584856 688789108 43223461 257083380 710894468 266830239 311101562 284391048 753054871 411928365 926812019 978614284 538319177 789748461 347157517 506729193 107745620 62599085 976457296 77084967 608861203 557505292 870841787 658338969 758707983 355789066 305525253 133905822 502123675 198783915 80999576 244303879 956166895 965405371 578195210 150996615 107796167 350849912 65037049 27857494 617282163 329479479 842459675 467819309 402527369 613340261 19528185 952760090 293992590 540997337 497305905 533346404 950921326 58201414 181390346 64312862 760000447 843871209 519782470 334340570 247173457 511991791 468540868 885516230 677712116 731553881 181371288 802943465 321098717 425235439 530894707 795025261 764582607 977599222 710071953 914303251 627656643 42185508 722730842 517329586 695969861 409033038 700381241 937268722 920842268 935265106 757527073 74286519 391912525 681774814 727306391 408592314 129046463 705124513 954878862 4758812 912339851 327838281 697250240 520390342 955431570 950658202 601372477 654173569 165003132 515339716 396923304 452381001 363350651 101434856 208503078 725577469 709089409 66424347 324769302 641892814 383037888 860627560 857199225 512401765 818851920 130508536 855894435 501304390 728928246 516342255 744371541 529731278 985484222 239318788 238314535 626377681 803286114 472773008 621715732 386196212 82448617 34194218 407620584 455397930 56677138 894399626 221232504 253343132 905328295 137296732 141240790 325310683 509534105 636352085 407463362 138702309 970951799 579545328 673275949 761647575 661884647 483212317 52026759 180930758 208942860 558821828 978185811 334070064 621145686 751914209 526523677 452676514 85302730 440522972 917701239 885386760 355342665 634839682 836520063 356741699 579852196 2325314 810231256 650262626 709485455 830186705 673073369 545938467 229289636 324774359 580970849 401559322 341031455 294236093 208122037 795378662 856617017 182982418 470106510 218457257 534344422 300982817 30267931 722656894 402408516 319899640 786742106 987545653 896484187 861747244 438272532 522643665 998613637 752418925 984442423 331999322 655097469 112039336 72731529 395937417 794996007 925118872 898588982 55502764 253354116 262100010 325322347 236716522 839018756 338422477 351512348 189882769 108372319 675121917 502037663 56963443 501849315 261281075 452616833 710453144 812682469 969794686 192999206 183913647 526798948 415082679 834176266 115417637 665711426 738823243 786971455 477300855 36544062 827513694 914105249 70856332 175223031 27784840 951467879 827521281 983220536 270238303 14109129 941494628 253670058 226609159 496054770 11002155 769647519 629517019 290995685 307301914 486390456 866274397 147375238 400625918 990169437 944408123 437839140 644913885 866933995 895658188 636103370 894493151 511941537 160381938 406976706 625060740 588322903 608561581 197278047 861079520 787146894 826746297 201586453 833969129 405948667 359936763 9634694 810776530 234601475 241655244 950236203 369912850 740263472 592157317 834123232 512109569 754436567 300496035 968128145 214043353 603820920 204673692 95896949 75421648 57550390 126972331 992782568 588820187 585425636 721379482 659998718 329718801 626571164 862018022 731790485 735926555 191713472 211812793 97440285 534767709 840135699 148261106 620283926 371726412 982882884 889622559 9162038 919060159 481355329 252051847 226108798 851878286 797367430 178782624 714892412 172218082 894132030 314652194 920391343 835421180 596205732 412339731 725947160 550495348 23327514 704793895 967373249 335006055 309444251 199186956 670255275 533315237 12164104 703968869 396174013 580358602 436139030 885017402 93759127 488692625 213695833 624730666 469043732 148258681 147387335 246210564 354874362 185960733 923433664 827414238 881640110 687954311 203484491 431400600 728520702 258523000 164815920 394549396 668136672 962760317 120391479 929606501 523055519 890807474 779443049 214613345 766864125 705721452 787581843 564460981 170515510 846210436 430916832 34221251 555718100 491630065 204233115 807016589 263216271 646130843 467709383 357690807 214659646 779309870 111592902 473853814 519391262 210904110 329836786 659378813 314203720 116997506 866176226 654794846 494436195 711186477 652963922 626038775 308391922 298564222 122190030 504057098 847948393 913236541 305881316 839071701 923575696 108421718 301183842 967195625 587369193 759932695 20799042 451383916 851187747 317960456 675509210 436299223 656865275 9035143 993477752 878158764 791238727 424813746 431210344 32504991 554105475 555190953 861337279 557768842 659474480 324542087 576740731 125431270 120553083 899292448 432747937 943910487 810542266 323728945 625644366 846106558 655558927 490363209 29079753 557115405 184845022 699850454 291932541 173762416 403837688 225786217 959203442 252957996 15939322 650851339 407072730 330371338 905103544 986097994 419442059 902062810 108016299 951645683 671419366 963355447 777494533 317873120 796422149 208314559 901361267 21623014 734270022 633792393 690924658 643024329 717947331 500172030 902385578 40745669 254709344 128781605 491880368 719902144 444647806 419024226 624137400 435728468 649895184 984951142 805599592 755618562 863022092 152121981 601335521 684985659 466835139 667484264 418213752 835443252 526833002 403103270 318673625 111994524 648361200 522908400 373070190 200297581 517562361 945435223 31417337 698434465 517483849 141652937 601592604 746118596 979117838 386642072 168419919 772334175 921068712 840030421 976318611 25453931 467590238 608692914 846662481 575362283 782772628 714713945 512424927 365317183 217895578 124474695 936520012 608263589 560288053 707759190 839036597 310454365 142908695 11886815 671979407 337032211 874222809 554549998 686754635 905764254 285380831 306931431 28017008 568792884 620415254 841798828 23388247 474646283 31500870 141232950 982730874 884173779 628735724 710034918 334302421 237347887 218554234 604087633 228180151 733460874 67962657 821032792 992884721 947124827 525892928 535331612 594601601 861729937 526285874 105064480 248825492 49677439 870247925 77969439 642286857 298753405 246234959 717028057 774229929 57382069 215873188 478323904 271579832 13617799 183607946 462842062 141518476 46344065 414680969 598515254 305208138 100180504 623323066 250589790 606923473 478521830 947525924 974823047 748902953 409358539 843958623 343292419 691366281 214773727 4823619 506971033 292078535 702307919 907390499 544493977 274745502 764659482 58793446 422929666 823348880 176671773 858840396 876667044 779827259 237499686 533887394 955405284 999649157 259539258 518806893 517356561 456899108 223432910 383333938 458972624 932775955 199654743 107413592 931114266 381849221 511030508 795229269 503871958 689652762 451878027 614100891 997645487 13665477 141126874 325207392 403148791 847719421 220472600 349544075 189229680 403381408 201098994 912364445 863628980 767681932 48993794 692730616 381861403 9782993 108187145 113729659 179090730 471555642 867837846 362852261 812654883 833589074 772725745 813743271 815080443 862804171 282955437 35866126 774894283 512028921 261506039 855736229 193389726 947982145 389519641 22121317 60999804 851848532 178944441 920001420 237068555 665153250 781830210 270672450 61671985 824129218 688279279 351110903 734680828 255506562 531574423 90076319 960233819 10015661 155232990 87281628 965750514 254221508 275662141 750034286 340997319 198811703 424261396 363628611 664938285 162064921 927349379 698009240 66757493 642561540 252516263 559578031 454608857 957739658 467846267 857618363 273795708 979901484 270344701 567228608 557256466 804362872 531067720 829076275 858469153 642779406 290661881 887418507 419175141 460228008 905190126 687913975 539579483 531642039 11251459 278392298 882025911 611852655 625665014 192871214 328541708 809061917 564803460 590606045 420457379 832960688 579169834 189484658 149385567 35246471 814930069 716833014 921290186 181279096 856016416 591080727 401560705 793630358 933796135 838718303 329930152 887459404 604109107 174038883 829793853 685543830 69791841 105982346 617359893 474049141 771064455 941291004 554621184 495140812 427381425 598109501 291643046 471324753 723440690 965926068 221544157 131689566 147828727 256547148 538754355 562518450 426897497 49942577 663872432 903064205 278154928 55207324 564023232 113386516 85351001 181433478 708705639 766681650 753212540 374935469 825799206 260469447 307499097 589800475 270945091 965715984 292016803 63104280 219234141 271808601 546400592 843837070 32481637 56699167 870692102 649703752 361704807 804262624 193546254 598149948 837390741 850675055 598755376 747175752 77238219 107380326 320654099 87061782 244353259 128852123 506102596 743792735 700689345 204569170 172310038 907676082 680679753 856619150 484431272 602409980 717763625 178727568 235003189 713629186 506276197 823093946 232249193 988984861 35488849 331975808 50403258 164369077 319632690 960809594 85244997 45092700 592103981 511011197 451880915 962459516 200879601 693089346 959453181 548078182 631690687 706672707 986299089 349979173 961127411 481268418 964481866 944392397 74006575 447197868 541690584 919774587 815416391 931081816 305579998 330702700 336397324 633754520 797045195 571027630 833378560 721378781 818499438 99985767 870364138 271399251 383751970 19840381 897933731 674408832 484405291 761294896 416270984 309273160 31753032 661189708 52914457 692477343 33531070 8879963 10035641 747576774 438097914 524944233 429114717 252594003 499401210 389189288 325718274 292677334 509920065 445822511 411476097 327803319 243834536 178901426 592873436 279099045 161905135 85601502 749327733 611021661 385960347 999699707 586753994 644450067 586576340 376916698 991814008 142172719 241040740 964009202 286756776 775702508 21595038 626528048 419180251 532692897 72062008 484312956 931101841 392079453 878063639 48680887 458719191 669014234 662482197 320662059 696508237 471490409 552763304 631473845 374567873 960936841 86570751 171583155 139574555 233569824 68416575 385909463 270498844 513572128 83906205 974062254 554694338 191737170 802455173 469839477 856937357 478918117 549464744 326046538 805431234 328783014 467005746 404722948 289394789 904332519 164445361 92870913 179898989 496403654 530752044 742634385 539037546 365600751 866584111 537672084 921228582 824152230 274253466 283229083 283685814 240223745 571515157 963192072 67826265 533518822 133096347 728603727 850141859 551243424 546762687 962518457 452876282 948234952 905956432 651845284 142231163 35039484 854565559 530383078 335758875 985478409 374760571 884423543 847292505 380158491 406555299 403841450 217565724 807417930 817199998 33314824 687177363 29262533 148518859 116143059 540432944 566701328 304438180 793980664 545254075 410552571 851105604 373550230 13513250 92259343 463717905 159375665 846711404 848010799 775406105 576622962 171875162 458683260 494382287 769683705 993187023 242169919 335974911 816203578 387619346 753157854 657879705 65406088 154890055 292000238 269552993 370886244 543275431 925426850 778408440 381793435 62482727 813279794 109993062 422210323 822003810 695686980 335288187 379341243 523310271 33917839 613308105 678102300 547709069 30378216 905866633 873141172 22187500 678027387 526689981 473554729 593688289 179984710 330102557 110512226 209307362 16665136 107480029 56272613 785895745 369860834 496990571 820738241 371231744 370300824 960638804 916615191 718473252 715487861 643053123 921650923 136035285 865299494 278720274 428265675 365194072 361513637 224017778 926521631 832557201 481175667 666453003 209842194 327108300 669929424 991091326 824498970 992425694 612002515 10042473 176898251 326137131 356104237 576028612 380442638 148430547 32292829 659964400 272848224 715698219 403618893 510555916 378342858 275300584 526001056 663945366 672883547 287012414 71232149 177060770 498954214 830788558 326778099 626422581 218069023 623099694 54627088 271452111 759826396 786917604 991347713 626518999 593689079 281555179 815427543 537812347 87757659 84839716 788484308 654128 9165406 940946004 465416696 175425145 938610537 525181076 538440099 255350556 82755140 796794437 102777802 677806506 724298334 915363782 35010396 924520627 778013873 977030489 245366258 686327184 9529971 589830950 427138942 468008899 556159554 290699296 383535263 396576041 595250536 357683614 173643694 970792550 31935003 909059917 730438886 341671030 268638061 264478379 699003987 364007545 175365981 644327953 178585976 848195093 921003528 78725462 601992770 563533505 865449481 546839474 905502427 809124723 657244786 458678550 292137700 63427338 188107286 234547101 38735600 217799803 608715647 649868411 431749575 787633560 535567164 99375945 151322728 962160092 444988435 961276268 711469966 669270762 46423557 126451774 232674182 576786013 576224222 580545816 792105834 691287130 664021526 609692153 337581189 141459879 697278411 158284969 547154961 19286742 732861142 621109472 688382033 472878451 252235755 601839239 752961897 988932736 243940582 348654509 305871386 758015979 734320145 486270721 539312060 630987426 351489309 393048950 693116785 112781174 294882884 718500076 686948995 785728479 539281414 372219127 509449868 820445671 976808561 183689002 338259106 639470074 963767189 994749046 835021998 30215863 546673264 520571080 210453985 329702658 472999907 63384051 276330234 645559101 601313966 563052662 760072685 218771963 86853273 671571725 935005324 99394720 699491389 589042247 624631103 795776590 545704428 191005999 561164627 65376403 236023463 669624305 589560163 391223620 103823203 148805529 714736070 256426179 625671548 19773186 863639240 363035518 420794359 345458920 25355283 360685189 886932511 525727422 577149820 340726667 847679162 216447510 191394565 598524183 299850578 669827 217353947 976207459 983304271 281570694 754335370 77432046 69800575 159235382 811769305 113996399 284971480 716502936 922651775 235407663 772986974 914616101 181344238 440600378 429902393 55791084 275488933 917633141 846903686 233272027 350248620 872218406 4783787 827808929 162721907 323048530 514440802 133818670 852851815 452658662 644687571 255459844 554016343 201736953 118920932 915656065 556839082 743798275 860510655 881016859 171965505 684422912 804158592 600235090 304564516 729157287 425890305 78002911 776829794 572047516 27277425 774935019 321754162 634591494 598650782 681567290 923751484 429628894 846007760 273358974 478259070 137676819 589301117 746714525 833310751 929073061 365680254 233686072 986832115 792106358 996070441 591316097 702702971 270170229 156896474 161862672 896148180 204230291 258848562 557433460 573743681 942031091 656234037 618853374 879819904 172318887 844443635 214171891 313222844 145021617 49047557 779631151 342389265 853819815 406945333 199112572 228624457 715039209 299807817 376199652 949734884 838701390 948878451 752190301 632800622 707962243 849318899 366395793 855190775 847911638 680152126 943147332 777638175 401319774 8070507 52734957 351388605 411414047 624120364 522990474 45356043 414663813 898982946 776546362 520967336 900722789 920269757 762221181 541451746 872322102 677755810 558492639 269392799 277995969 322715902 38833579 708948621 986988479 769104384 264869055 802455470 580951862 521544951 646729364 613406757 375338744 983541798 413324345 367105592 695122663 382694662 839290744 831218099 668059255 655343334 959921517 373279095 624326266 486745632 493876658 34060982 109347592 899838526 256171011 512086885 829945533 605806572 42226153 129884456 664987901 143447001 844319084 881118885 962849418 485116623 455558499 634030883 601623224 229048953 98899595 426026786 754408973 836612394 425450484 770174083 537213436 147031264 347031447 219170398 978208704 972058822 774154511 140490161 181120357 941605279 373327866 864885872 910554405 26578544 784714534 669152872 976050125 549002090 912897925 620264035 566942298 982853519 906398078 762842967 589305960 276526217 160640496 624642078 739635746 44808271 270052204 107079278 199991492 973085870 422875083 820784447 104791180 947013459 275691171 173013895 885758577 107405602 86617551 171777897 242768368 626542394 440279968 393253252 805985807 812819834 719007758 222967705 793162261 76957698 132788494 111567720 805966143 584417920 3444677 952040481 73968391 578217858 601627620 337056820 799850898 711650922 683329978 308796221 455561228 567840610 722806568 261087734 447181447 610930052 338854558 9349072 841267337 830003724 763078048 263017991 421011975 257491877 196909520 766576992 651423306 56717809 118404013 668813666 283430016 993588952 76404612 745712081 348862787 908476736 810352922 697575286 65768153 358140442 504552016 32071661 635281699 251754337 991478347 378175162 804244933 316926221 151757328 865655869 268144283 231470122 983571698 999008534 420911271 408660699 251780592 265137478 716393915 114954156 846342269 532605441 485926039 510513882 431993092 163441058 593978283 705996549 553001410 122743560 530070108 401558282 17906681 332103782 499295980 84683605 447790343 943987262 390002285 841311920 838858442 2659363 932504679 422959445 899274955 703638722 912466684 129380442 630792645 24177715 110960077 852321246 167767582 281772479 184666282 576588164 910758294 893338846 701068391 634232151 335520475 741764689 913957342 184368970 255680989 408206910 956663192 749667452 531039932 981906789 613588042 724982886 418456642 474464800 328183475 212669011 826148629 185037575 463738822 540394469 371720354 707594418 829026585 602633647 200468271 914992168 679097539 6343044 365838125 51008527 768474926 881795208 979615655 951394099 472056748 974147907 361199942 123491 65369492 852419423 375035472 949540724 915014212 772991164 708439407 160167944 535467382 162274489 294922557 212037087 337336807 830627980 716197423 758719097 861451914 176484661 803185868 40842765 697697606 576654177 342349989 833525835 132950166 142420984 242529227 516342522 293237703 292610036 60982721 904562610 633434358 393212914 482585372 787157038 996986899 245274400 574372177 38102642 717550739 275866236 492167048 292083983 861528424 710801822 485807291 127368243 580208354 869123158 569379039 16948230 179812100 881284377 188185419 202223806 615777371 976651102 544441246 627101021 171074814 942821831 382423093 612128144 615992049 798422637 24897871 98345293 378067464 588710172 546636185 724201803 495957842 959706359 319819934 780085323 21572853 595695895 801212820 561491117 441119340 522563721 384228469 518507346 368167869 694184927 29351135 893522373 292302157 984906819 143589391 546956359 691491464 557700157 220324047 773246716 68900489 895961967 378699517 660848157 481867453 175606251 628387264 995501518 443844245 1494447 538761016 742725663 138270454 777303829 442333634 986134078 879960918 796066694 200137450 365637290 69970461 284349808 59363869 80395328 490225994 870310174 964236954 377066129 25694075 42437017 377137307 121310690 482130989 794670632 462771585 836705394 646425562 481905716 503646316 185246771 554702299 566035243 441805424 176329426 230032562 754813856 903120099 217937187 513725960 567778140 987748673 255542621 21940597 216948120 257188627 660039403 723532429 790692962 701116248 366164287 306122796 278569043 730768230 932853829 44366033 350192658 53703730 504438627 339539016 455436232 61845116 379730218 733755482 870740772 376265693 563588181 810772161 215237926 496097437 221457748 896727214 791226415 131279999 578212862 550404897 230227597 839517097 93227164 677836686 238725267 911214979 261004575 705654343 800438336 561806953 843967943 950069017 189810273 731118927 500395507 695305929 834298509 343024745 299335829 177011962 599261493 881382740 572788125 466064982 848510399 894479859 253174666 251046434 357266130 671382838 728327879 844900416 542778435 544833532 922822524 315340792 789622033 870946362 210745310 106802691 793768242 658460387 185695008 180671655 447281809 848482276 898562848 884474376 55816269 500890958 869790855 906291930 289252288 387502038 143956913 328616511 148797903 110146125 709809272 27812851 630407158 199298196 453549961 957322285 414191785 893519067 299136340 4356799 255164502 101600801 998732954 358582760 127308194 562515966 907412427 48463505 510970357 934460353 272934544 884119298 507651020 570379156 740711067 529314909 499497628 544831702 218931290 198572883 926050774 501585887 927717456 705973876 24019172 417476456 624242304 522205417 718777403 575588724 422548256 849193640 754765416 155687911 217092448 772349132 801865302 175418038 757380406 9217104 338454532 445542554 386053728 659467506 829974895 879677261 567363708 301046794 170488781 619616350 715695980 510818741 156174802 691042721 322737940 731420443 767232296 604564038 295734858 559770310 703388644 818249811 812964688 813751111 139147601 422615259 991174787 20928074 42994255 797297737 50680806 313657796 652731526 466422796 615687453 686648986 926425953 931191007 523604575 132675017 669299962 415610034 63045409 457036944 906988909 219541235 930902796 558901067 874474401 696777538 220864198 900001001 489536152 891983993 473281315 638422497 663539502 93781947 887157159 148104123 252247305 694401845 788666937 330328500 343433279 600020901 785750898 675376182 188977166 668688436 161240369 638554470 781004700 726851395 136101978 112474088 495326797 29521599 874386089 63381912 774033712 935912905 221109786 177136080 598313068 739287508 724755274 334286427 319779355 570400773 377593754 694260564 779630629 91330432 296209574 532517568 317590205 164912260 859684114 92962065 266144589 192376799 554097040 287372080 62404888 848304629 827054002 495319580 980783627 534562328 940445302 761019808 576374577 543816105 733782375 756281187 872380462 420407585 459505782 157914681 817366892 491381025 432235166 311276644 837226972 505155195 112603795 218594577 80427654 500744400 596014430 488089989 898453663 166210574 97296840 98594018 480769929 931802828 854633573 925516557 80011912 396130993 710707389 433055068 528315470 978591480 967123717 741755337 217457461 875231832 692722448 296572860 821865466 409999816 735417348 463264244 993310972 441676197 112055283 921271692 293796825 117062229 682651323 179488525 723504858 195015390 286232711 287734665 732439907 824852939 158319168 949670687 660044387 676911646 386154975 31481706 512049926 360296789 944556157 192388949 466951676 617916356 32404421 855363099 21586670 354028234 562863184 994345811 49634593 324154313 290643079 793492389 963969146 362223312 130365842 526217485 334531557 655756787 296545452 314639854 728474961 777255768 399029030 373716835 487319035 956623024 556962864 481817688 117346558 630774797 295772228 22490996 557541089 209771764 185760358 383746504 846713126 837897282 400790619 655456128 761523613 674517701 773730217 324609112 844559903 498185268 898032923 478779656 461290370 633081901 946726165 482880 8751993 228085760 488830457 83482681 664965669 632562401 290355287 79294874 191505750 161579703 20294038 626779121 998587616 960342294 322865508 654700030 301083602 196231046 46043244 920525936 175680595 233707855 112065241 613764892 968713814 151805120 664674640 394996234 471597716 371004885 188369419 340490801 731342723 138722108 575832810 349674994 645712603 75074770 299153426 959580216 465282850 678859587 924645100 150184988 131247429 514233848 110318924 332370528 454751051 228728583 475500620 514920340 102052571 299368603 563409077 783325254 147906851 113942924 959396143 492415715 898254745 726396755 892972424 219542340 541962250 823283020 290955421 58347513 265813110 98639539 238701316 709722605 274698733 92528660 750902567 260651273 605236400 708455650 531402555 436009926 72859541 872582222 571029891 468654184 530527736 45941864 598957365 374793837 236526694 829417834 197896028 531767441 618184316 698480853 969659333 906920334 165482859 273519255 806592762 967018501 499309377 753356135 785685037 710441155 129198829 664796440 316231085 216524390 444271528 896857997 58560736 592909270 125126628 447211572 697788306 562385696 690476640 320889623 983812729 819661115 381295921 362198113 885748987 547209552 599721493 535675322 878919206 128616278 765374915 799647265 154945222 637888608 519229003 116375596 566090237 542427046 46441290 452282673 70589676 969834162 128609852 601742589 188771498 995603706 336904915 804159785 692005565 627984817 71164106 179102968 607582014 616918050 622044822 273392848 153872106 208255050 332810928 191958784 585699613 749267203 373845976 574253189 243054607 67945312 281419291 421233885 688964894 609007295 561704227 983436156 524113151 451714042 745145670 750672881 685887400 755413616 258862948 738603480 345701645 435913748 577747173 546960717 393581432 870428743 108155908 575749633 508581767 432004217 440336686 795444527 187114096 264360354 315477989 763206863 235214089 296135163 306075147 83037089 686608963 759411800 141834797 306359038 479092166 847530790 188440709 417223262 272775259 29381527 129263113 306831771 90314191 115935091 23370349 305377415 281126222 450814372 711360815 777321076 413786107 285563773 517267150 446422627 948897916 987268075 554679171 408220371 302702658 546056190 50031798 773891417 763654710 285789317 156632723 587563007 293200385 965331139 378125907 341084853 254849062 127373971 261135829 105910920 182207187 265467006 162775616 401010302 940021446 60763880 625778407 862830336 494398361 8674098 631319821 273768963 784290277 403701783 718138086 876552748 304251782 709393554 998542836 715438236 331439345 487130164 394139068 75834401 856772486 737088068 553577422 93960707 658578480 253146498 721037198 218115147 172817868 103584514 645673434 242353832 525603279 208634735 347846022 151779481 902508882 110262404 274992786 550048183 901798049 634573461 349108237 660958977 412639612 412259345 165750811 84824625 436496570 765885445 679209198 277568470 952331481 987010273 675488739 795709267 189677745 569036817 123872417 34214935 270001849 79892216 353005708 250227439 857962346 768621266 93905364 863401636 313452379 341007598 952036678 992982696 513831571 737058413 416660639 635164180 400343370 716353733 10514336 966589478 523807692 738908482 927292491 772742862 502918892 332371182 198505550 36714292 134083757 367040656 78574737 573340470 541571091 53734135 830896333 623435708 843154540 6592720 219071706 799825163 792774620 948083357 706932685 517548419 69489409 803718451 157021915 262446430 498922317 865363398 697770576 187837346 493954198 864574571 143501082 154821696 798466973 509464428 490368705 931936605 603726061 84597911 466216625 621089072 817703800 621516419 315631844 649424271 104765637 201557814 299763624 148085552 612030714 560206996 912512387 802234012 461553638 1907578 762550559 742402228 354255799 186863417 855015629 261346146 709190688 570352618 980702034 830972699 636471369 426374018 777958975 964395474 159892223 62093070 798790571 939236628 953059754 426805503 704991135 607850069 632305634 43746570 579162421 525505038 205075033 466696384 453956001 243155937 361456558 389552839 681713181 534771550 253821271 721342522 200062431 798390295 898529796 719926060 480488110 867442432 657129512 736723188 654954362 648694696 634051596 437692383 913172587 729257129 596726062 85144817 351929415 326521278 375750918 112979595 860613801 753944027 104854320 811024167 460279787 597983804 926583371 877362246 541637036 623643659 349195134 230839590 876307169 50017589 720146741 44297621 150412377 901254713 884620769 344266855 817125290 687725632 482805474 199423794 264374540 52933739 869178787 407723108 375606126 703841719 423767834 631158071 838105567 816845295 177234742 532568736 839891601 10832114 601680226 408654520 235421026 105209218 407728088 831365419 173595385 27348591 883604141 83858550 926835061 222919145 840064601 735240171 74431416 151637858 674931587 426459838 863582462 588453979 458556843 855817458 315075563 674041332 565407672 813862034 769745361 710659624 759055142 830659992 304875208 629431767 439250437 679012577 820174669 397234202 351645335 96031284 430238037 54873830 588314367 190991583 932131531 821532727 387779694 114116314 407655809 924861494 707220959 400442782 236632447 589986806 463881917 643450171 345038422 678791397 463669917 227408899 24115864 392969044 847932771 409948153 824376534 140374523 638347296 221013551 839557971 764875199 55728057 678555019 618037449 78025690 663869821 518921963 369928244 770900529 465193306 455772167 987937112 749846975 236939362 193790498 792652585 485260820 455421499 209273167 960296677 573983284 339114213 882205000 536201102 734303505 148354943 649166975 405239710 376840407 285904729 388385269 596308773 969785148 66999123 429682159 49839020 469545346 663055459 408946026 8591759 394316612 350296332 750866480 837996192 870240348 994114592 844752513 458518940 401219489 97459203 299489508 290420035 273095919 764157124 795209197 272797068 172172225 281354893 705983991 812602721 646663051 399742293 331248913 911330628 753670220 432513955 246124052 841584309 859650907 351741661 220430399 870123344 444885153 546944760 141147627 862247844 171757455 873439541 362796724 592700623 368425550 285210070 458657979 467780615 507188456 161440964 27407459 261993494 130311313 805573959 870881394 338552628 629727812 573707614 472060892 607046717 660987536 757542239 18152598 250433302 632915206 911581681 239174765 169848542 272773129 958703731 90919447 421141735 826687901 308376017 829897680 924087828 85529882 175371117 510862134 251976833 163731170 923294367 601664894 233461614 732661752 190879659 796387292 89557932 858105528 665981508 736381646 798546044 973910006 310740790 240326361 595831773 750128869 184939215 651099388 604563046 659692776 770705686 751146376 758352959 833816795 732657001 319373494 638546575 213343420 69162152 242807623 811825983 237734279 896336732 472713940 314120354 205874572 300488679 169737083 888008523 323567826 595503757 316409681 733554023 424238204 372266425 191006201 220918083 879620994 124568889 485488338 874580478 201790673 847976916 703802810 720413656 859840195 71338610 992458540 746963104 538555280 316669410 584644425 465231794 76254642 259361516 241244256 352645758 727257223 864275161 758124169 114572356 555545716 718685368 917020824 909706590 355570226 966049076 790146441 374298826 942007865 549592457 130727621 443017060 417495890 405271918 316507595 11141606 811644663 771574227 193875352 397561743 580298130 875335101 50406706 587646518 719322372 919320775 134723577 8516428 276975021 475047376 727459677 39219073 591540587 296012824 593124811 318019412 13385483 814542320 817515980 882777618 479673046 418056594 345365626 488225194 522708989 690927568 866512505 301437160 857078102 715514653 184388900 685020321 249370966 4906177 561956484 621652839 285465295 951037805 724549753 326286531 732673013 558432447 766311791 313524982 535597770 125720022 855018770 243353216 574320342 961764605 724495533 629568228 880372 4903506 577460773 485404046 734650134 223368820 382436735 775265793 494558832 929858637 553349384 997251811 139643614 96316166 343652139 695287821 129023623 504770714 438394836 995796517 815405732 3927971 17261139 707047856 512612663 899194888 509821087 345691972 513966750 945228920 620680847 190020748 945838603 634545080 380699990 716971115 184725443 616503583 712418035 503367397 558394719 612651175 707328456 530835473 157993721 385529467 987648680 710977269 984574295 706772546 328596561 718548570 1214268 270290419 885833825 892630957 976137773 608113714 338371344 714660197 324340229 81098821 521053522 994292196 413305998 725461676 290103772 303788952 515556047 442896484 951393487 95164116 65452174 424400523 570927311 647480345 736139217 267437140 170401090 822416342 880209308 269988567 49473599 612317498 92512182 902903194 765443898 475515967 959161826 390623702 609134898 616317715 38651402 876855604 965894164 329333957 65048760 974568652 591196061 172315052 166790264 590216747 914312403 483100150 153436448 509993959 387565095 807565968 156278962 408557076 884935694 126357078 110985443 320571182 323178878 466875385 65000255 689091762 825251170 169404564 99572041 302355198 835645371 870256242 363487745 624418682 307135720 551395294 481308619 718004698 752042289 946366849 191310825 110252948 711513 414301888 649100964 781033668 75121980 431852761 880945257 993636886 499367926 720948648 890212735 974574750 676816527 816275578 370798398 520955181 19199286 985923186 106526825 270186744 227498787 26298538 31157240 468709453 756938491 456388535 77034551 551326971 708812648 725285770 470059166 118858468 484859830 371545343 340907356 833988681 483181289 604616695 184046636 131128906 884556066 438467078 387298417 78862715 651865883 939603668 276459227 564078840 437539398 698634194 457315268 539596220 180721634 550851958 404989747 375934970 288063732 175172556 587798092 312926756 752182485 964453080 52564890 519602963 624118695 481497649 997140934 903960213 820439216 833027569 28478301 586909233 251336400 150997335 126946016 339430098 418335084 471728397 465013012 306026578 404508434 441125743 562260849 665548338 934990815 91560770 995766165 231203323 553994165 999345519 4559991 87380915 270331646 288677502 829077959 95239044 546566207 494449489 725612514 629136968 771095325 265533895 526358268 963549344 190051357 299840853 340568492 72875155 644388125 565515476 45987903 524505459 501427785 557596434 84462387 203945967 988659621 648435455 289183022 862979161 72658164 357629734 181607074 953708272 744908065 523310535 988729386 190253164 321183966 396738276 231394774 884157694 758212263 103363501 427975266 957201256 465943267 741658715 929787580 245121706 964354034 161432413 254323891 89868614 328596190 855160486 46421952 114109715 239470588 113473411 445687236 915280905 387707893 51321222 407914974 843153828 499139566 685206321 783560713 726153338 534349379 461164093 300439555 91607024 973717251 386488785 53931850 155667318 816615673 37002747 350783526 616496192 881477040 329568096 896140984 344152761 703054436 115773605 379723113 52402961 285981831 860477786 153981544 856919850 938939983 868111138 697288709 737521214 628132432 555913304 778700605 680438377 479929426 201265629 563666442 33346389 56717181 567065023 329725056 227331650 495845729 856416430 322257170 378702907 705686444 349065514 272232578 668435999 811046448 942931366 150317448 682829079 394745520 226373764 351507736 615873532 726949571 47762203 323129888 652218630 199678938 963556916 470796448 230560942 629994102 404239213 534715681 54083728 354127948 804764233 969568894 84134494 496491328 490512851 71638231 463328737 704971091 193278701 269780017 815736444 592217390 654166192 988634430 199319098 856672296 155142694 490479146 394907643 205384854 781266168 772337401 155669002 88311311 447656197 75691905 601547342 689322977 388128018 195979325 944538303 268526692 191757280 548442580 615500348 419386172 720711595 43057596 635216723 104540469 149973397 328002910 445237545 803838202 106133117 71187916 735905036 431441685 590493254 524965389 188643019 380593656 876883131 314782509 588893978 394455851 322315097 366282846 972789654 590158126 899973838 406045101 333386184 586717209 138586209 363650901 732072619 793524184 905338092 171293825 966591305 770138107 26552888 149558975 983681846 627682922 450941230 400937656 918155668 6228787 262369604 139734934 32034411 200286001 249052210 880818588 327268242 715251413 468295337 324722859 409507224 632805250 922330315 535885537 112439743 425916765 668030194 805086843 48955500 811688393 724551018 711480302 243889374 588662181 440880654 886681134 776767941 312155757 819904723 551698460 382952780 487964365 974308990 946191523 635802487 451769804 57237477 276687708 703082418 127931676 584709623 183108774 300037095 981953625 941654892 264709003 323675750 960469629 608721296 279797756 625320353 956460914 838258025 467643733 475647566 133738246 52017241 993662185 965610891 536314123 235006556 286010395 325681837 578015297 872671390 633795544 983401138 114558909 289413655 85018742 370996831 221255364 430696978 665905599 465400082 861733204 592137514 558600023 143615576 910292359 283319778 203902852 437402777 139911071 799927112 139421170 883022879 668963319 867013886 185097275 274000600 126698860 426304960 416827377 488712329 22642297 662267224 637159612 686296386 172667736 211610925 237014458 983560323 754031802 946271088 562140926 138184837 748823049 722295447 714003293 702452356 231852035 741116213 574366037 134921710 823612122 165295584 325785808 377506595 21555758 557068615 199730981 47499957 687778791 287554708 939790409 896599070 976001338 306984805 381723840 378473514 323215169 341293691 244378245 922367274 625678956 208598184 96119877 131972753 337310476 313680986 486940700 170888015 846049689 260669231 68265524 32492484 147544144 271442544 337257227 449175042 124301192 73165490 468204476 481023046 741313296 397717001 676721160 142375259 786316736 155289690 854977802 885213304 2922382 734392691 748875728 392683535 196259915 90372417 852958328 205030545 787581949 515491615 544057849 761971582 663085173 126245378 864544953 59980006 575636588 185665286 10328506 27137019 822821692 197037403 637851185 109387892 833076708 297081264 671730834 627176983 233689820 803017915 574485212 503458860 328996175 38124654 647309491 372052185 787501863 50652133 208538211 233616414 368591681 510456628 700523793 545944550 591934725 949994129 107502186 116508732 671812331 832898759 483913457 7002225 146867185 111467723 720259183 472986293 253555490 808081294 402501229 946954968 9428659 131477915 259825660 971202116 53009051 770432738 807114295 342084223 26637356 617835362 136209691 269740874 155674578 648065232 449259471 420398030 739811298 122160234 820538050 426300898 428579290 377009673 358414859 334719286 891701414 911583042 955406576 70698790 599405471 736898408 281040480 941343584 862888542 861184814 477135221 784183746 554045324 577510182 190201550 649284977 540325902 968484540 837974521 630253083 589514853 539377519 912618672 325310501 446766160 928932853 980559202 590762700 53866467 358689812 930136659 373441040 86943214 874466283 884265750 578707884 200469197 271927198 784091176 935306408 921374592 245561979 506461469 932026518 522687983 940799138 747523849 373382440 491457002 204869591 105032257 887253654 44118204 631963566 398342820 977670238 127479956 735115406 932841178 707180333 241515871 77701050 65431403 503215306 577236490 958013236 952774505 578544439 785108064 573098116 323728084 288908261 870966700 249978868 909228310 128118035 67556118 711743418 132536882 590585399 329203413 603730147 854008209 352576655 899964908 874404221 397308635 955488201 915808387 792793551 223326727 427117422 371110944 5263993 127948012 761164283 15262487 894178209 571523286 435692089 151340057 627612556 727906636 545245665 745243077 4453048 632052083 386245893 789839463 923705677 550836356 227200424 354934705 566440597 985367499 109669948 3102742 108178817 349402621 354573936 901932473 102279157 366663515 290860940 779565794 856354428 680265695 840204083 872777686 164159673 696553742 6844625 129473134 649894981 330430572 481851234 352417600 882438377 268078854 758275355 839370943 606718744 700850919 600470762 861443592 956910738 96712201 405775881 306678168 672242985 907212593 705539172 188913950 952722562 430970105 196583806 602077443 120263985 502741160 346647517 1239936 57968224 10804962 334837559 170244986 241421507 827305059 620020394 277257165 368759245 765075078 440239774 752185 46514902 128539712 48159629 225391529 751539188 127503156 993802403 981275868 478273538 387045831 631136704 934644883 822090902 255478457 548786027 758828746 611510338 929017654 680509283 835471636 307164262 456882700 707836662 253326270 485655450 764241803 265471657 360657368 359093979 701018980 579103954 777025596 576237152 86779933 589199901 167342611 825432690 755336285 546467944 546227629 926414333 409379934 666645314 651751161 626869621 636818213 434474012 32510398 924362391 602962550 259908293 878616989 666071219 805742872 180614351 652176298 535117003 838663369 140277583 992930315 58107541 528519103 78157219 583411020 64774602 865563245 535395785 376777316 260318050 568200180 220677901 562684118 736368317 156667114 102779947 219811038 624848699 204093896 949091705 139466468 5315173 287916678 984861133 950318052 635414135 96922666 705500345 448051668 624874425 531786135 80232226 774241871 493703521 552001487 689407070 146138471 301306049 739280923 323909250 804211076 424276762 343937044 463924785 647472827 897880863 188328148 661908544 95350983 521704228 485127160 201641217 494034410 944680599 830517295 449503995 602021216 486648852 390559832 352160135 86656306 827720981 716325696 586409122 266924900 988555637 911680182 730232305 694805234 403773616 279370733 629377161 969190130 509225863 152383705 34243127 383893307 323188223 798145655 979592324 309289436 933805927 239236191 116344249 478859382 274378057 286576208 811849958 442362953 639950610 576058663 46362493 390694457 596807194 425599315 172633954 795796902 772160361 57734009 716704104 905927448 945266492 558537847 372017431 486511261 511024538 477343764 79983875 611359398 380095175 644306460 921039837 823176052 186166059 7948204 887155521 247613613 548593157 575732851 426989321 902901198 175048125 834712736 2900745 741313065 963861002 887749300 275097705 991479502 443645465 840663374 977581198 60506984 658845791 527246429 963020412 673479885 673761180 841311233 271199434 403993624 51111584 255731158 622927203 963267119 135212880 90766040 315900700 795754632 934147588 18005860 870058699 786009591 398720236 779649815 928622199 39061233 925764016 766772083 371664888 788839116 101063708 102705097 129388273 521052967 160425355 889211869 253377518 340796297 303803268 298233405 421397555 643185354 466979430 748331415 431234702 811232960 463371533 631543863 809948194 684397260 428852269 937589375 485087141 836864096 669038025 491146050 908931472 830390287 544824776 814999006 462757675 132000018 522253076 169243615 883449425 534537278 614403951 350636932 210542501 509259548 798817765 988831055 690067944 393811850 965171452 193570319 984498607 40714565 804894821 895978358 389994805 533504859 26113444 712097005 790646334 439525720 833082891 213559013 172692533 429515454 424977801 971193512 867964944 547543056 324862193 857197734 592350782 257464698 277020389 476399393 582543620 330464281 62107126 676648672 757623838 788365433 43523464 832806808 633531543 799081224 179714540 228253436 579349885 637562374 19005246 405580755 381243724 103715819 431808003 970765162 207022936 590254510 627663782 160475133 27105133 83593950 171231873 887805924 856282242 996013022 723918666 824095347 82640269 142169811 463703055 131454321 192870373 470740951 337684155 296260905 328108545 576272318 283544906 14860198 886469484 404833435 435653591 344528702 686628942 665349167 875872509 324319723 705958625 793021694 532519713 40825386 54117585 515593517 150624497 468822731 409487677 197254484 35846912 881971315 738428584 392128097 603043859 689174483 203983456 980605683 101118935 476636986 876276173 988234073 863058260 728520891 430633274 550830554 112672954 415794995 590090818 381150499 616002399 455484212 840985828 882920078 552246378 744968643 540983066 294602749 862919810 371493887 277770840 769315840 50791620 243594584 937227786 738124223 32684475 437591023 509550278 759458816 54597883 980528067 269294154 322724797 861105485 594214742 709881622 769174945 566118415 740613524 397208645 827729826 128288973 852878996 594956781 170556120 921481878 724920934 301081359 290538791 189241136 196439817 179687893 291256987 859300636 821755921 538847109 506487324 502086685 127870610 870586889 400050642 364586662 202594087 231050116 160974068 837650160 667787554 501103426 109326911 267444389 192948810 953746790 734313801 27968568 498974164 207703991 384269134 853681180 57602930 482890740 812657761 416529089 49021767 938250371 983869797 996666872 953713321 185969223 708960273 35711567 228328635 223497217 833238275 766413593 6984014 767663399 351681907 715540226 905941119 665382971 250382009 414881340 951937017 730555528 368810976 753843429 692291713 247112222 943320420 911148953 139857670 75354148 24122336 718824242 684636775 226691721 659691529 31441714 809312753 153736822 466403493 148029959 957033198 967749585 987850150 974188297 479776274 223751810 658638462 115149587 785842186 927116196 8697689 534071380 895871324 880362434 481602454 91448640 922470323 499578728 74876837 395287090 126361858 767759343 274177088 531702317 540330288 660915495 771305913 550191409 678165675 91989914 205239179 550563979 674183453 579718016 839057291 837403908 578757551 520896605 978684759 966135110 125949431 215911895 62813649 25417054 880696949 742676134 201945348 2081760 865918619 563983694 767322859 623787879 731069209 144023912 66551550 125515018 774269481 303638483 383398316 933472141 835420094 896620210 969140733 173706293 983824827 925677509 749830848 274723307 584937446 371588387 216327107 743088478 627839345 870053537 207060736 600736403 792372848 283213528 823687705 98308825 67784871 809051442 441655586 794886829 551090192 984846996 71664427 360809213 867030294 460273200 274326888 692749129 337542610 938491830 626503687 871807665 603194366 789158278 101165109 979547031 78637734 504555184 453968216 193515078 161998758 222597977 157462259 383479430 840477227 27233155 230596164 363424874 703848476 952860021 285972393 871286242 734120944 698963036 590285704 824747058 985189816 982340324 140387976 71091547 499382284 775695750 265973391 74210219 749225061 411626920 955775072 690534728 45340123 707791561 499441319 178100764 537530583 562952287 540568423 213303215 724467363 462885318 126514307 991540328 652842378 585425140 346744889 291125507 967747386 588347544 422836439 949724239 230397992 543710063 309513773 707806927 693369442 770845650 96160656 406703689 712468240 834487334 808716920 626583706 221856090 302211684 972747263 144487553 903916842 202103158 236092630 16893552 858336855 996872384 17719120 970342654 320984665 418198023 824095702 343763926 402938844 982868878 709282484 56381779 307432076 304409561 319988955 483630271 700736202 609988532 499594848 238838790 126017071 687014386 280100046 571251390 886157427 951448171 530954778 773627901 275767818 354698949 853861789 711603478 312309968 425815054 290337893 483656669 327146009 147776088 378143946 5970381 172055428 949370493 32475593 851124781 642520168 553584964 120656781 333430051 973362376 467202126 280219358 214602567 130463102 180256396 628476447 696031702 822646038 326089650 265214992 777555266 531582334 95280515 732076405 231672275 245157533 664454556 320016623 411890934 644305458 315435835 903893210 767019650 910188359 737877794 974853047 699210624 164178476 39880594 574923724 411359314 947992642 589917903 94303492 957504603 580658267 743202278 648821443 726272996 300951329 12261857 487217391 747569295 521864037 531581601 473416434 61085912 107853908 895269727 852692976 728639753 331855329 583383834 681728730 760809919 239085507 491488301 93568240 745289881 92813673 612344732 63429194 279895561 150181503 487027460 462859539 908145225 83712312 721821243 891951947 436120245 25113137 737383844 148644289 19199858 489266301 469127081 919291885 403442582 18081330 559034412 85856168 259529593 955097527 723766698 277480859 597546127 441140334 594325635 634120851 913968600 860549419 419278895 244930577 750645725 202984755 98487764 562868288 246561681 124932844 269654516 518829052 182336534 414145327 873575270 225334099 724107501 179984612 474021327 682519504 485723728 899986105 835136 471398315 952924791 736845517 909659510 739467588 329279544 47857968 223973325 24491251 986296656 208253711 460277183 29814649 826573694 42488894 346997570 225949545 999439223 620659191 800190642 936414702 674530942 37523928 534287377 543752886 153535994 220455518 643279755 146883900 386868971 146053336 965465312 519702286 295224219 10558254 690079941 529213532 230447640 474364648 679482326 457052612 135128237 87453090 782158672 903157110 29573682 429431046 718507557 878875829 365312888 901933847 819294596 804812757 248618537 931772356 145212506 888432304 455390499 360025766 996212351 611530821 387469915 806295279 714280694 323604967 669420483 697424783 704874944 586328551 705984093 502591041 69812483 566908309 162867511 585258133 531028534 683194847 594405536 715645679 990869721 55195172 465193936 56576938 557448624 601113810 301349353 606232732 816213035 542291107 13505144 632547187 73701474 944770346 620494217 537434402 130359847 272189062 205974592 245787633 34058379 872305994 375934511 755060158 600646815 357963619 548434175 863165714 808960884 225179157 447151101 234192316 415429612 89971957 609581303 39184517 186874821 900751801 485904014 633946844 285041091 63687344 342087265 530203182 809486199 206634930 846080576 299802576 209440011 938779797 218302101 293595718 850205893 195318894 806390803 897178254 423550558 122365535 680697173 559142292 972483783 429687176 667805605 345538089 164029589 828799236 158250300 731616876 17473875 178035760 813530731 402098616 886551423 387005394 519401814 229126114 713484298 469178395 856442223 584646485 568094920 493668074 572692227 20245593 991389126 761804975 389939255 686848858 509087975 283415431 108448954 57589817 161844924 662172191 160932202 879151247 704443744 655927985 675982015 919919013 394740041 143174137 425260218 593575616 367463860 703882832 84666523 651088757 255940377 434241742 113616185 606730253 317305285 252348023 855451521 455069766 614163334 596453807 337898000 92879898 150163639 27553687 182861012 781491747 777346728 582650446 605218358 336945478 850823715 423238813 811853667 76709151 855795463 558968183 618021662 826174763 871107834 42590371 266309828 190752144 988142078 32665353 164820850 5285336 336903716 72254267 355758738 882159044 798292051 157605380 659639447 400598440 367587883 750412743 782219733 565267513 815268727 23071691 747600398 314916510 102498478 793803112 576160131 681894184 976727492 49979593 988180943 862398039 532490266 611289141 520083506 394397755 468387556 982781115 840298698 894874707 28469068 481272010 67215883 412194159 271349856 481644991 919807688 83947745 945993481 466499860 401704420 220579658 520707948 928050142 78288811 302514650 697026485 389895963 577890953 699803432 477770963 679119862 356382659 705760252 598259348 423161358 905424449 357326509 93182779 679137899 310067719 727334764 866592865 809598398 262349467 737079537 497083721 604572186 315853027 391861079 582422509 830642505 783105209 40195181 13804739 883000635 552284508 489835936 72045798 173581638 924647385 85031333 46839083 753726078 866577829 552574603 166452788 782303828 322316251 607882212 423794524 197697196 62307251 621712136 933087615 246156213 110754378 304070357 803547369 930614713 819821227 227649811 994785797 609571201 777295369 18394552 628928259 486342956 142977668 371145300 658700571 636328968 757921510 993694851 739749152 365329607 610100414 341867310 85790797 247106640 214510941 424219059 850738752 959344877 697413270 592361109 438942297 960374250 225456215 990589917 136822338 465737883 870057222 81375330 433206683 641354578 10011511 58495580 847510004 110777687 626366341 580798141 543665844 60306103 551337803 920160851 351415664 130059019 394588532 980824624 443933630 737903101 58419026 839213249 735076047 632069422 506455387 167631046 952677111 577219334 473497087 335680863 239844636 193136890 312935103 67201906 25725884 603593630 647042374 625307607 727445843 704818940 590415807 503945717 775428271 223473922 529136433 96020780 474415452 364490335 715474923 276612302 708787055 328416148 95455857 328334853 376610619 715178114 85263722 190128083 739144948 781215483 506400805 26525857 588923491 130856886 835749512 829950613 313235110 128977064 316280601 755460338 69353625 893993787 768584033 697365360 74838321 475446693 955283203 45344048 752751984 741802379 362314487 812060004 717249433 903766329 81391150 923016742 896746168 255769281 11197956 380410065 365667259 937472561 600264934 832863538 823807675 332497977 996574435 236870740 628330385 430389002 109710218 246350235 599033323 153003563 909013900 805511378 596984388 542711961 838941443 211453947 293135741 826084379 466788175 835340583 927812040 520452455 888204186 215022353 825493563 487669401 241319043 663585143 282014138 449719205 134745635 143042410 258511862 831048080 737696214 852298665 3607323 549931492 511772105 136721754 625654083 747067809 954212954 855398238 545606419 216789102 409597189 499159369 523929044 539157354 667296350 493792530 419597023 939744115 159181055 303540372 789650748 66406332 776966925 892742424 850562753 47819239 147487070 603505263 524484197 600436717 438935572 914661451 28797785 283774484 983999920 851601964 301798802 869977807 995304370 748622240 618670371 380802005 989007932 86863886 242284059 753901160 730494483 505085534 708621014 986909935 424256713 307566227 976329679 52158081 270262038 554675435 410346365 551896070 257902318 268284521 430828662 371283753 393017379 431452139 848038342 496275281 415735428 485649490 397944966 988600070 150634121 82960636 506271492 879624676 206095112 839059440 689112641 908813887 585696519 970352535 241930894 783265147 303077947 331577106 536118719 386588781 117245270 134841312 362662206 184399132 63559662 312506794 142403984 110599880 692196942 945186053 123911823 653122627 517837123 120095946 212275946 752637760 447961749 771242603 301976329 734316839 100738714 856736678 70834186 468670032 339349741 818271231 59105313 302451643 889986702 834334260 899982597 107201690 239317602 899621978 253837865 136739969 656351870 866452995 4733825 332709090 247776645 222391312 778456622 575543234 422754740 705510005 428562443 978641733 342462535 347948562 59671922 680703976 60922673 185587384 494217558 135118862 256133303 104372926 788923113 612789425 945828830 99020609 248559685 242045348 588408202 476242900 401249965 189143425 15495894 72661032 355462256 799419032 424110332 500720477 47308842 625045152 993671822 568647467 402636108 861695075 109710040 651569410 122596103 866313004 226198244 591045692 1275396 968340027 466902725 770837822 807128165 237376762 743211269 125197679 240508619 673882219 732581760 180886799 87634901 316496878 940972789 847725382 19794109 587118894 379492520 177793226 785941069 214298349 291040280 389378345 448895349 478831468 975489418 617709158 967421371 467320379 570611508 630127796 74181639 294909546 101750554 586841096 81719008 26097381 60502768 216091575 622453021 67436420 835029339 440723165 330679307 558278992 765921316 666925157 627137520 320317095 849002354 456993482 313271478 755280679 868543883 220840256 974315715 786167334 379051573 10670984 964615410 259763477 171184184 204272694 128851188 744216686 654230164 110898303 853369189 950272016 979243836 47608800 864123319 796206613 667975045 279655509 989040908 618992330 216181707 663459133 16951512 880059068 518584724 234602799 557047649 103174181 189551057 592806220 127871668 864445275 825250424 41222236 602012272 26586569 71852749 662951137 165770302 396153506 827648296 50674378 113769608 792244529 390999853 533205794 157525393 30571571 209755891 916383922 721488526 491218703 128799504 970356040 578750130 60177226 973261437 728151079 118459981 579963917 427269543 613664793 925308296 743476535 201225070 300450833 131175557 443687796 870633785 401450867 819653554 207930567 274153370 328114992 136253133 906869596 504866457 223921832 141089130 700466604 542810735 534684624 788687882 683108445 250145625 409746048 889326115 655966018 147793056 181561997 991426793 615896986 439816718 338168568 501320856 495017866 284940744 907624078 329499243 758062594 354962469 908390193 126646959 172849914 219179723 772819329 211783062 586121657 375974981 915895452 122141616 529306482 496374376 969538574 767945649 338539147 639301788 131057623 547636176 639173313 298158793 407688201 11622326 8932281 438731749 344947536 762911158 961578116 282256700 667229620 700349326 865970856 127123156 401787167 492869394 319415638 587946470 893395124 750573450 81793554 686077695 100463766 86105003 872143032 487868932 824128612 30682083 856056321 344282221 42713901 289919460 201622081 937468 243656703 991997547 4703852 361828719 384053776 354018564 904831629 541520373 254159217 989354981 398622941 284846898 471258676 614899539 298848735 350493538 784150168 304821628 27674210 803013515 351115868 559178501 833878661 872386997 774934380 22682886 419644827 869516994 505493706 932167975 201763593 20968276 932980376 46429420 58184282 420621613 743596267 248714937 430526310 996327608 395996753 372722432 951485463 183531861 521500198 308679857 934697834 853089079 689714607 429144238 236654903 870009916 431201733 870466456 799893687 832745184 57831509 979870612 135762847 777891798 527348058 699452408 517872206 107091238 515973970 233781754 316679975 775499798 617677699 316849844 509887062 271699887 630268714 733618105 301873668 518546168 928575622 637916756 933684289 541767115 126809439 472809120 445801332 200237524 844930425 940426084 65792905 483192628 330300723 157488873 541754442 842602299 828163565 595604137 304472680 105553474 549818001 162698227 720122951 176807404 217806422 915422354 316672760 812425213 269355328 760773476 453036602 424756584 567169713 17619444 18957608 733266968 13779092 981908572 522741228 508521335 694271990 870389554 843083700 48287730 787978541 835606259 474891998 976596229 254632998 465481196 116980748 886460691 308960131 333001443 243590386 221389187 929228752 647137052 646737170 602393640 972429958 977234603 166752995 313806340 194747652 776409538 958662833 368143753 494233343 291599009 648141127 499443869 524791807 408867610 582696425 443487835 277417242 900377606 130993823 609876439 787395677 868143622 804251745 877136797 615918284 940998520 144240189 720806387 87170162 11108102 853900880 549013352 139346907 160586780 680497178 664996846 903438183 949350579 193332648 694661974 862200352 581839040 557107017 383424415 130144113 653983751 366998482 612480387 193532329 444187295 605028986 243763569 95715095 367586431 256436975 262202009 92412770 36670184 544336841 857558472 402490440 499458546 119507807 463855584 840238659 174565811 740854429 73685838 78192418 547228699 951289054 916570428 607326662 291151625 554272587 794312692 171604303 305159738 655560428 310549086 939771030 959567253 608192370 883467340 968102095 526693604 560641833 798550553 270666017 895401100 339061472 515826376 765355634 416360224 891594589 735031503 791660451 158890281 260664013 478202465 124009990 881281743 630700137 996193019 997656542 768008514 875687439 623433783 526869581 879371382 586974483 824176629 288641698 988403177 385726112 386630926 657574975 441412170 643859019 715021699 725896098 52294741 453830914 430510799 281450171 307917010 550796439 360195594 906196202 940763562 494313668 725683889 893310595 30628876 384893937 998046931 796524012 387562859 837075768 258986495 51254392 617934782 522926059 930160132 400762244 410066351 289586971 126430121 55511981 625548362 500725746 186880100 840752640 855106250 800507684 755581721 811162579 678046531 323379995 125341848 686799126 291028839 215467431 483000588 20694827 223645494 135263758 161885170 597858896 57801983 955125986 620436092 228825363 382458439 716021172 809663150 887312839 66743223 78118402 609894804 383681396 228110062 631588756 526963998 224332773 527190863 689786325 790494972 749437522 864188835 900080554 409080961 881406395 210279996 709952260 159557036 658035084 303201833 806016233 11492117 122165081 843325101 485636608 247280036 525162376 327075498 967650424 139487731 250972702 924398469 21431470 237790261 781585097 800582408 957540645 288738262 257156213 973349612 602579393 61911228 580459099 749546987 825077559 390053976 883265715 902139853 249794101 847286130 982833191 375713220 51160015 764916965 828615226 719559382 803285183 962154818 666703205 806943537 915751177 807340511 379259773 791336107 832225909 775670905 421912683 765080588 713271610 324741083 85821398 519034093 495478453 383446000 82176784 307287840 853623267 593895695 418571954 919626638 496163623 469915379 34792505 647662961 513936463 310954616 409948341 637130006 488881190 400413017 751560886 892559902 450782793 146195369 664589376 813538918 516804048 453832806 185618589 489788987 724699757 819359639 581185473 415944129 212024143 225448090 31306385 707514582 386657382 406346009 429448132 462705609 860856145 227180846 267558446 828822181 126321577 881195739 235315181 830662138 728383996 647966864 883446731 259677935 207208018 643457061 568591156 632429173 851447822 33025016 973946784 664464318 293847617 737332468 273104231 387960052 185297752 683175302 180756227 563639995 762469860 130393677 391939042 213534152 260285626 796042980 394786190 992086917 37812688 72616168 196432573 784884854 644423885 326826080 750704244 496068470 106514769 406689262 358166025 586478706 700654713 108658531 355809377 856735013 345582308 524655989 336638160 715891728 289012929 372660237 478236736 486514320 930365949 940091550 654315326 542669070 292284965 382514704 758858722 81145577 350544501 464839425 342008042 661087120 252047268 339520021 952179745 283236933 424195221 568658731 128124345 351517589 28390469 876505697 821505455 467886047 988106466 637205787 294332166 168694891 999029441 203317174 481470384 886422319 259590936 621066251 495452243 12787114 213158607 695005202 313228517 91259328 126068992 549162469 254355749 801605078 196919022 970466464 129062515 882704521 520615873 276551920 255126484 213263559 492108265 223197888 888988698 115840129 29880028 193759426 401094149 857585525 892121203 154220749 235105064 636872138 584011 907033967 910938016 838043781 376876329 188500272 614008177 558470708 338466837 249767366 65969865 498881039 266988757 842515854 504304401 364489361 234323511 131146095 266814230 584124177 411689914 691804173 810074944 341191275 215300308 920331511 913806246 246417229 887130028 222395151 162655184 152173513 303597740 493655666 594143766 117354903 26889306 947679205 835922672 408544282 191896272 75929482 54240410 338513152 533812515 749866191 574370600 299107785 53515640 449885451 747289770 234037418 355685531 777852219 67058754 826363715 782835616 631375460 962265660 949342239 408858768 933340537 12814226 384914561 543196994 631231760 663974584 781955108 116572635 290461938 491381737 156820359 323433527 290925311 375232682 305119452 883783582 158493646 193505930 115507384 548564132 306860896 273400366 19070512 779999567 512530238 758622898 115922626 976276875 51768563 855911908 375930576 931735760 844033383 663268454 247854137 914457803 239580609 853697869 606131657 523464118 316611292 989807346 360342753 745873062 627263685 84044737 444826898 700036943 486771204 403646674 256958596 244698852 138691440 649959707 30831863 84875849 773587253 943093372 373585188 542661693 9640242 502431809 712917434 274232046 583836122 420660140 154094150 445774130 532564384 647814922 893890455 254183158 223733908 667187650 972358459 99923098 397541502 746333547 714142530 692913672 312614923 261543840 786647928 502944117 574487150 24869392 142207418 405440015 381442068 503831816 319595335 460804282 878733879 269410419 221996577 382916928 967836325 883401280 719220440 115103236 500304532 819998003 284215640 871596796 910632256 133045262 200117331 161778052 728372685 557339748 581813918 138489777 468294111 907496560 49625940 780200275 468927359 702182208 502012194 791013114 78744494 979168231 632207198 210286464 365628268 602921990 115246310 791849775 267442678 270017599 204605085 490967383 373034400 170720940 253357643 767283548 781158351 902133513 124016699 654652060 758074796 364413930 592459376 967742753 815586449 545941526 81634720 682193467 337124945 866621824 48121709 483899483 365411499 287525835 498538140 381802046 286929086 469055969 545544209 690885936 907423717 387754124 365288074 960834488 6373998 702477281 422536076 741434289 981840404 705884813 514524058 390454417 173018509 875496596 221879919 891574734 301527062 510499628 695910575 616310274 350266226 603892246 629425644 127948284 907515900 424928713 723756040 727542631 760917344 223298332 918427486 127565006 684230394 265625732 995162076 241033693 456598356 133674888 697879215 19718559 619873089 498282586 858772829 735346890 613016748 2201817 575446293 23430085 883945857 150766207 165169445 516877066 604941858 466129140 876963574 941932446 216595735 913685119 9660287 596970831 624944109 477180359 398496614 101122321 518416866 269751750 1148698 116603037 843947948 45972913 239576491 996252325 621019973 30938327 545662921 958162306 96914797 713304829 739945808 121185473 782700381 236831558 705518158 424628670 455848770 854504221 113200867 470056302 38830070 891748749 592272506 157099103 247930682 702696472 653980071 796309545 857529177 710819900 435231076 819304233 549935797 761017447 812360076 321942907 457422802 293118883 613498373 636917281 480048487 860962430 346422075 801770385 27387545 22274744 821556343 658647004 486706916 469367430 54274707 417546893 99404526 304926700 839454063 59007049 539770193 518349862 449937476 269778191 883107275 639063645 537433228 91119052 427077703 234163839 339909714 763078150 896013871 328238376 741844490 596120160 386456580 480201741 441310755 152587843 772985612 943300622 849998158 220544020 987319924 250289412 852506280 219961994 706553699 165511080 752442015 469955761 301324986 871520665 644780821 387281281 604924824 51175836 442874794 791020923 563068163 693552882 251054604 518745852 87672901 815068638 472454249 98620516 175420913 197360226 993082445 333252445 857137220 697739842 134733585 717783012 729727781 186275887 816908897 296640543 162971124 727277753 286474600 414298916 685128903 979678455 489618072 405309827 582244596 876716335 471181133 694530517 910578769 756800164 650629107 986418760 228304363 147732788 79126664 577740350 827140642 402796610 531886887 100830382 516466926 603750517 220812289 843352692 990029076 677831561 909304406 969625114 853146561 821358794 339118593 681900327 224879416 911717453 854816669 555769505 916268185 279400484 807758795 314048816 665582857 960596181 192215983 465723538 759367876 74338369 251281133 123762597 358164987 966067452 960079513 820963017 307389332 928887974 821906725 564290423 934671928 421334918 65610987 709401358 109371118 440620318 708336917 690220083 862743982 659198734 881182845 775612676 195849537 786990089 981831567 615855904 232137419 224144921 28557423 445713113 375750199 655907142 923183761 89748402 335221886 784464072 165159982 263787546 235425015 742941781 39690830 8907283 435500871 718919762 389300871 525807827 621826802 956870540 324536094 629647854 640628751 623552262 235898021 434107159 672386046 85474744 342967815 760008640 468994607 403295944 935608083 326657816 117992034 384721464 176717440 53416574 582102030 76832137 601962349 143704630 890039745 526949843 964385802 221237635 804389552 112769887 513280940 295913735 638922636 983872975 24165364 113111365 357008691 644965290 952223745 123679586 572685629 338654195 456122066 17634837 380652822 969364845 785685538 607357171 169349029 924837558 550792847 558794288 674529168 597435273 364217596 929969853 485993636 220021470 415606895 878053090 822611224 692846172 335419218 992366214 223854201 944340792 959394471 713825586 733546447 150525082 580572145 684617752 389881915 118869041 28185892 139526281 928125133 975004410 826035285 348939457 202981239 221867392 853066301 499390784 17982351 142247374 517219348 717107698 760632178 8940178 276111715 602666364 23678383 106952487 282640528 773609614 484175652 363979375 436223242 612608621 217658471 396789420 899360789 975424839 403543438 885371172 891351370 748458646 419467730 205648008 986218302 436998230 634180899 40793146 705252748 619338689 440238507 22825664 562992699 235772752 689173968 317468444 175760824 476529918 764367543 907250420 229941808 553481502 694300142 488778847 353686656 820401742 414511935 660280079 640761641 768703362 389512916 80261960 506172032 39066713 619747359 168047227 148998213 973072460 919426275 573320161 960339407 728030609 735073295 314493729 616511937 551665504 193545749 501151338 505831277 250283507 653438265 178365481 700034015 413057318 481559786 716746671 353509159 785937745 958858208 367304261 137559542 303281473 43573278 759193829 844405444 170813758 908444790 977324439 449101812 697644224 546351014 409396992 116590639 961963965 383123387 955308868 830502158 503237211 641568512 837881743 91300795 795926976 555878510 243913561 13276495 704382117 813452028 304150700 778086562 228369218 31369687 946132890 549793707 784080911 953047159 478160326 588225889 820840341 760577924 933700244 86311727 967436569 539349631 488004913 112472925 220688000 80630524 366599599 521583797 339386473 171331800 865497189 562901085 891818465 109576333 264653543 930892031 913843457 136452054 564172822 677493450 414077726 22472897 444841876 929831992 408525122 51308427 19416971 327759093 324414211 715432220 800727281 583284757 127235442 713719586 631275042 661338272 955885781 459161334 209060044 979178996 796857937 329839126 486566172 73483137 520402080 744962415 589565990 567454561 384409210 995175773 787698254 7674076 390097500 907333016 154447788 109658890 209997907 149944155 40377475 916312980 76995033 43557678 669014566 928405699 516706872 757757425 99352369 784027061 724491111 636881350 511103896 517365467 248981501 282264633 179743392 300118890 971302877 611798024 216459663 165208164 517532170 592861754 790043520 853925163 192559726 707984949 769885766 512840890 819564894 312772893 340221008 129916311 751157656 11730034 836006555 44120967 166860073 873883995 590761666 587317870 260145668 882592774 348504604 3671052 256938372 384590096 170241136 816654688 47077568 567059456 48975200 748663714 215706683 438076988 575269553 668464484 657352453 617870259 105621071 19054076 797739888 581455992 970629839 892295391 832756715 267075734 937619540 451866520 877095612 701523732 675797285 535764524 755479184 77096426 525535917 794863012 641701038 312185982 500928481 135347641 887055210 892756733 537475127 802450200 813790598 251667522 924880526 161304 832942698 254913365 927523830 822081837 866326963 967405891 892510079 718369721 613392706 48313370 491685294 968405630 546928453 532592501 608698976 792915662 327608946 156957196 948781369 996431975 548198067 721608876 475446015 858115482 281870345 3405781 868114642 205083634 825629797 46682367 778515320 893309563 433809858 530110097 757287217 876232388 728176053 60651740 686760264 639819204 234908243 882493381 242627292 429232364 489446664 824233592 368464403 447144138 205477115 615177417 949218570 581241914 44940473 501812504 810584475 78754157 330337260 194588151 490336413 191234989 272519202 681114993 701634460 194965546 395292729 354894246 672991735 94782514 400676227 690917825 221212301 310486232 314955320 354911065 647347530 620012127 826389412 902911741 789610388 49056133 793580449 640977458 178559986 162750556 227328182 156183943 754344260 645292636 223432243 599907158 801184977 735024652 402726098 774563798 845977475 197807099 787779072 557447957 710412600 768309117 206673006 770929234 543524858 158752562 223803598 542767361 257946655 346215887 231515014 372340853 553179837 354319194 980293420 514264372 690783092 536052389 118292742 853943846 337922241 449004770 792730949 240158530 111377686 605901832 116822289 537545283 145796702 916157522 73971717 313664285 887274995 824914787 907116634 306325835 819538770 670218457 633222944 900085930 104635717 687375393 59628041 243071684 621009031 683682643 802993460 997463482 64405167 61294962 564690028 979937451 237891049 173860393 689318396 131694462 839788168 122932044 418229221 634305839 262393666 752210103 815249923 139050633 242989858 58072146 470044807 873380978 314995548 719765066 125891922 370699355 241833958 57741922 203838905 68851896 756781400 421394377 568790037 760449101 749964767 987275377 384260156 71427980 391830838 553432274 499213171 673696157 689592695 142848069 973782898 729485218 576693228 589084549 99064447 59935109 570373486 447117514 247006727 761951811 725009941 431892613 938404306 940462091 249944891 899663960 525568261 467543548 444832927 658544542 885310277 530825248 322552981 967393584 986245989 529797370 855665447 292006784 561721197 745108361 792806239 869279321 898045694 101961570 550019595 985639030 424248935 361862011 533188873 312385071 575970494 542410528 623189464 766134941 24927107 362358645 263992109 337157982 335787467 638116895 90441439 418840829 129145570 952531924 368577565 147329777 347943490 962297091 963839526 505042659 547020864 632755146 306457734 284063243 148881953 778004697 992871884 382796599 738950890 340263204 992381244 165812978 771635787 386882906 208546853 369284865 923950362 617959949 691449648 341430363 391798843 868258331 384704359 178770998 447262255 85421305 835687 519620054 883130944 178339362 588330609 963017551 429925265 279016699 125498964 929144165 102714479 912625983 352569843 448427507 330484281 689594496 103705085 77612335 431132222 726109357 81391619 69361990 958273310 956646846 507743729 927195200 904551047 253130340 704168947 88777862 418989229 823428884 419453656 526864807 466697024 251224438 370951477 762863282 575058174 965097085 960777394 396685472 425665818 124134182 830597032 924857519 543978365 207638451 16027263 988476307 721367854 602204176 496882647 224052326 197208825 725343340 666842556 73417271 680197122 64330622 631328734 497561895 781766309 596002571 599178125 584240092 933087837 108436744 79190860 859175897 50334954 897865862 613335221 630549294 812278380 508854138 548097083 283256248 104522203 23619537 980917761 337053018 444080036 719119991 993853701 203267945 977261866 432318429 207415128 651306080 20421081 284486847 178220390 74497363 72869131 739135179 374812722 496470839 840690465 925324725 817313734 944837454 678975441 133921331 946584055 870671767 203467977 232591767 28505353 687227107 252263581 862305755 806177020 610303237 617427619 172987685 499318801 942726807 723604117 691834585 950653714 113577715 259338351 73085442 73855304 853751271 647662863 592874750 846584407 995679146 22989705 700531603 162775576 128440129 442744400 521975631 681604626 114062182 742770039 833848426 602435682 765122350 819132009 255455526 656307015 218101235 986812304 316126828 646989865 380241477 401844095 49185293 657564582 784190262 771634138 459534320 873427449 201629138 235165353 978364741 596295303 468842158 639472506 612618319 458706487 443851544 440682815 945663821 610463913 848077560 436275049 359861676 888035470 942106440 887142436 558994824 406737859 511406420 159222278 921430040 639606482 117507011 524512341 300003561 849831393 166450730 359718494 189006835 917814123 677272785 578653163 775854617 749099619 607198375 296837236 562838892 396972696 396067434 254837481 775217260 38564318 368832021 426048618 234656548 243650411 402614009 917196719 261544823 518591481 455102607 987806734 380102904 439760934 566757904 999364242 813501096 175028083 674357195 860748691 347375491 981574637 46129757 623990542 643060420 498899487 491784102 784032264 379391209 676684336 382166294 69316816 546001713 917959094 633818868 588035132 439488174 155683082 274624370 853424462 860246507 825387534 990846019 679146635 560063661 241762465 583635797 750788115 863851321 447277335 53270818 63867662 655949453 895085711 452780752 32241275 89539778 252293159 575770100 675859592 362978776 360341795 947674173 903468489 456910395 114807691 652474511 246523065 492854706 839433160 348826087 482018655 679752996 967918663 517143701 895954845 361089916 939002223 133050651 985956221 985317262 267605931 579669586 310948703 529777379 897006726 790823742 6109374 707634462 180472568 692604050 609662435 34173262 634567143 320018571 81888196 887486558 676191225 785183840 659030349 682707057 904554813 289813186 232785852 775840065 800545061 582044261 924219324 575750304 445591414 681270085 494862832 295042553 474378538 717977402 783943467 209560351 774302473 826579248 992993152 247191080 462869894 12734170 374100261 821490133 257922259 904265037 894990411 372425919 764532913 357912180 500321254 468234060 155933899 273098299 36456055 683825240 406209085 928794292 99906038 263110045 655570190 707817853 846383817 837588007 622643576 576619212 652423245 644616725 772888128 486224895 855026708 65279558 950893562 862638350 681738434 146310147 408791890 221278980 382662773 955095985 188074449 819749445 405722936 329867461 855672827 924265472 169614107 556628443 922704430 504276528 138541163 474086824 630009329 857638600 702343639 470716726 627729633 349034025 254971170 206496389 320150537 81637755 762150656 399839293 715664932 7722136 815827862 8268002 298996706 790411635 513266728 327364801 386356002 345515709 31972154 308955713 802253704 160768178 52002866 868311690 630548276 8224763 668570893 601065077 368318162 201996667 160538788 671172431 591874951 502336507 767211850 32924965 176718419 12136213 215938921 637927194 104335656 217349856 509320215 37937590 752043930 225449838 527092178 590303937 649484409 85080649 174842135 926635069 443845151 723598111 154542442 272802921 160098824 234427532 737647064 546052049 244760415 657865739 260611740 964097958 800175352 563970479 686094721 120012489 147983207 620378450 553678568 665334419 288016247 113888196 977784665 29807425 558326228 61173617 50633323 687190503 609716277 572993014 347739768 38800164 155198915 910703266 882013442 423525439 953855839 981543974 868925395 951193237 781265591 218736719 155707067 974790211 286047644 398706017 562326566 255585268 896551192 716591718 794791080 83572567 964753552 13261864 697800257 747959501 383431908 920774757 494902288 91506735 347279242 301429013 609492275 570090031 746472443 751897576 402613084 770112241 476824464 608632216 782337998 280292584 487794759 930016148 41352497 904408208 801026952 158820654 868407018 712505585 451749332 723563155 62671802 189321760 552585821 960715777 109646462 187469669 622160773 898400023 422477519 636846258 200496113 724363048 606021347 890673233 460215642 738136401 230250692 943323658 180880205 27363498 51127847 209421421 565932340 117309009 166210923 217914957 236117573 744627067 763037611 19000149 400902969 943337357 601362358 45014025 890832424 200945261 324137776 15148582 897358022 25325650 725504194 980084275 291418475 590927363 974576131 567707221 911137106 572580387 793160375 146240668 268285798 73831785 612693212 50219762 918800801 829936012 62346282 715163923 944514558 340506770 3325656 888323685 156258254 188875086 708805243 207526737 632467778 929516624 356483286 873843214 630779747 361739409 400471470 266181118 158417558 379234480 453223989 803410986 51508034 390597962 561241658 567879789 944957320 846832822 918659013 451687460 894948171 914492978 176022797 438870385 324045841 595196510 985850917 655340861 943622207 691786152 782279899 463256891 167826261 317212707 94761542 490027341 776191116 745690464 123302935 936410239 400594454 503501921 584973665 695164887 382645903 258442446 21840635 340399933 626059967 496107405 354812490 113946486 855091752 338765794 591859545 940890116 119222541 547836185 608639142 822391940 497279200 95691581 676390749 72790592 679982849 725745136 391149547 559875215 230522344 51367721 831370318 587819290 266446010 576443216 686181106 709750027 613093917 271651673 603073805 489252032 341880709 692861648 12583671 488166757 53432415 595905662 617621307 247487185 470792968 301548749 413712742 69757936 546474959 573216433 113202059 522739324 278166677 545138858 69480400 783326079 273200836 635201691 792102147 801774135 805739720 67651273 790374380 910831374 58019413 731539615 39953213 498388841 759870794 491728555 920460236 508148288 464210916 919192823 623489068 151458443 327293832 107167092 907937932 363755968 992428196 15723026 557792149 392875087 418435001 598376210 542067014 168760550 215588807 476094522 37354570 939802894 69309729 52903941 68793800 54096187 92510301 652721775 597388382 745716796 761823098 227633649 787913349 682429768 492364302 145565672 327310864 720303511 594607651 864175254 197003328 478204711 484094567 804340167 506172093 464308839 733119054 801811670 24886978 101494729 890475445 476455885 734677849 280964901 722811659 79499386 70305096 874748801 299229419 300853523 200174089 929714898 312692449 835825072 647812719 95539260 739272019 559462547 903053955 530787048 874953468 758944247 368988618 451286816 802118081 79372147 563690434 292280681 311827327 748548771 993914586 257986724 578648152 591404061 143190402 820224319 207256056 746694467 167723701 771384879 133408100 914106691 607886743 766044692 818716461 392458903 379593835 808929688 666814943 533123398 565105621 310772990 167792539 294025807 483625447 211962553 320483605 393265576 579340537 64041557 308257874 814867157 827116667 493654872 181462191 313347586 555870427 437686061 411095133 268249280 268322668 322937412 941867397 765162 976923590 764584713 244502357 265873107 906173005 503676859 102255309 402202080 821383566 371191698 623865957 940326852 383749510 772055194 820015755 91200210 769027775 559805658 362367869 251779722 381020735 604264225 234024319 18788401 743807238 271163797 542922452 301364187 807826236 49716530 815359975 78068112 879984912 126657326 634799250 231526173 976002424 663597199 928903151 971275751 473751267 837731870 104328769 635506822 95855578 43195574 389809759 698727253 318418689 544394137 334705940 269635483 155055788 723227046 224066388 677873377 567811021 107892232 551818071 233716057 201823569 772429907 413083961 912781713 166861730 391998800 225000839 123271912 724996849 384987327 529033040 763745894 325269281 756623185 276888004 378322015 461504099 158557145 799636609 884731904 435341732 925734582 321587797 490780416 594009607 728737323 83036356 88659328 605634004 702496537 592210212 84216300 765056992 471449847 713376802 435660527 981143680 634795234 118291610 827929893 1057079 839732556 420220365 31542696 657145264 895536362 898504504 183384961 928408413 656307188 357563822 766877750 80324232 375551305 548509521 294905523 37328239 388817205 549946233 594714088 166861215 718514053 580517343 547997529 971495601 262331722 611734181 619271126 758680616 72651383 519306094 95046493 626578410 233365566 243289532 588427199 52813491 528365281 984967802 972143048 185441824 384757758 682572152 339423675 922925588 352712572 2476331 752175627 636586954 263901581 37475781 153680245 183044641 10948211 891628349 143102422 346749247 67957614 675738865 169438902 619581327 612875542 917809301 28448925 993312071 791855880 250548997 830980226 635080475 895126817 806480928 799885029 625807785 752600407 75113079 378722200 924309713 802607620 743351523 541153214 207060616 620550044 690458194 922613962 81509783 542222736 507508015 89032415 341044694 652005310 203736520 9432718 853353690 306740307 12624088 133843161 178764705 107317081 208472772 161689490 728875859 419086558 118492606 814400744 705818652 973031205 235453118 583299927 38809300 152827821 445224606 996553334 658576794 356680395 990863863 550405574 799687234 875227049 337180531 592214057 131494722 901894683 584115080 366618611 976204394 944022365 135067288 691699436 135719694 962961603 178719154 129346279 101992767 417507254 831040667 28262557 887161726 621864960 638414173 959975417 392611099 166621826 406372171 844896847 476018745 664828330 998951818 772649844 802460509 811465225 530121700 924061959 320337978 302141319 892129508 903309220 5565642 658852901 926248810 722992933 933207958 264012349 968617371 606111958 219946166 195421041 710126031 697383251 687789771 31327259 670963841 6535066 747467140 3135796 882504016 237574796 331686780 12192521 442241729 388295749 292766386 180908438 670293208 889623518 217523784 229900904 845585242 137424443 476013892 218473481 821416479 821914456 663959861 310240579 627127557 925743443 776795710 416029838 119995924 403692995 411863657 958254460 325939190 357981436 124173270 250845608 206004675 710173294 384524980 616486179 44472557 435645641 375424651 848118610 539371431 393930133 803463507 568073813 240014721 917523368 577910074 493930891 287212713 739985169 627071353 920394474 395328623 708853763 649112817 103242827 435933756 358850190 356719140 505902450 256818010 260405788 658784297 11977850 793216531 779708292 59725098 923261072 301510892 917290347 654786425 991835742 713854226 44381810 102186020 817991539 31094365 635802130 558140930 992725152 627422335 541806613 929894179 174050588 56277094 127218239 404452689 751234294 161544342 337233084 767364990 152866237 962863900 51552268 844972404 466621433 259073966 64807198 925400215 939838185 345955297 103210481 304044334 277249764 803666295 733780976 997411270 276383901 827215084 398882971 45974068 945490412 308306693 817719818 484718485 946799820 980415546 915183744 370888109 459296953 11063378 330061542 206779446 6480510 786100548 939403811 940887957 86863279 699997609 696364891 756139121 852669499 669589184 729774207 769082205 961306331 104123420 926364141 62936966 876316699 19205745 625291742 634937394 195709249 467238105 330558298 806813320 948701478 259219353 251759575 671471842 131636977 499013021 60530318 564979852 469053928 229101772 711863855 695922364 118214254 237113234 551295879 276875824 829019753 633151219 244629550 907052288 241721146 642763091 983330055 555115775 570149465 499011111 93298850 13408388 996246999 672505492 832743118 539489097 62808294 216162042 513562907 256267852 379935648 113971192 998498718 978080399 919385973 344727035 43502448 957954693 2128845 442810584 71723305 309718827 584620095 17201857 599855085 12909116 219918493 985817010 25357358 194958177 283479375 562054595 807501736 526811729 87603324 638899813 981490192 428650857 870982033 562931513 303326723 125977066 148894173 792398465 959169071 454207163 718696017 512883380 217175723 439683532 243931444 590172720 309273120 25552258 949983332 917575081 506847387 587591217 104392362 575756164 623169400 244999695 810198940 874915910 373062467 521518040 782816153 399993266 619262518 650139992 577769855 674051527 595071294 636838066 162306106 65771602 981579437 169947370 713296804 691630383 404673645 443235220 105455521 628883540 374035122 454274857 36943235 862734201 517919192 832892838 742573110 215638771 507185210 132695509 65920009 833738658 641416454 421751010 846851345 50624942 53289874 666869405 672464068 941827365 400541572 839910793 989481520 434294726 530601695 839177957 566066709 661137059 548464503 321989054 94075090 594369647 370698721 539350498 623384600 73666760 37704430 774637792 144946058 60630493 395920963 574719518 441456964 793953368 653068267 368034478 420460912 881568207 83319524 107703540 605404202 197282964 646125252 895604885 953357832 757064504 26462450 64247674 518910229 777874357 930036299 231941676 248893809 660975917 247698106 222099381 222061457 743814441 995083453 413018330 313513997 543759051 27804956 504973845 666080841 760792975 798159503 352189540 633840757 519089439 27932554 993341088 458045063 119783038 685585771 292039521 814238198 479874453 960198490 440137516 181645455 55629250 126496399 3596781 882072941 435898468 494308737 471737320 101034874 551241818 864039781 420992611 548571529 679495894 796367914 954378636 312864849 235546829 730583989 177385985 725980154 659468345 408370589 918981199 229909850 389479628 202686687 597441855 149136407 393053733 160455319 247436041 566033401 162497971 867826587 933441611 743104224 559307617 537948147 784375342 323638686 42119584 153608873 161017125 111838973 830196414 892155046 598305545 899735230 553532973 166589386 771152109 882131304 395969468 288431700 423519864 809874460 493010717 706301341 237806861 30476798 596129230 223419900 639800457 955729424 964929833 454208680 350359751 766822083 210943517 626294171 564158229 748478928 391464086 316231232 648159656 21171492 475324210 204165686 126532213 56365331 816761838 189480872 481338351 941593681 937763129 304705968 477755428 695726213 725209515 838831408 413726365 951206180 647862232 274952003 188566112 660676850 609694294 29477021 339512370 51562131 869885905 359917303 567652142 476194295 850785274 214082522 771715216 198552512 5430052 492461834 80575940 10832764 732615025 75381584 575590820 911161513 537948784 223506047 707486120 222545419 215747364 849934228 252144907 611435150 92644611 106910809 383015637 867929362 960845904 617438786 231890198 269161170 343924823 87959179 156685117 77789791 156715938 159181534 737494042 217286416 301875809 924820240 809903085 579265935 65856682 804424858 566631107 43474204 673036634 482709875 223001490 535257465 429229350 682509986 704272744 633763155 805470437 363486545 673682790 629101034 872735027 167084753 278266824 63194234 306934158 847223466 417727383 673757191 169336444 301282500 344949344 194374852 707103176 30614226 528981178 818289645 121194314 707538698 690766106 749977772 820339703 953805188 464563636 140416373 621645242 520922296 301478675 578120560 156432277 260021812 620359900 26505798 700376048 13045070 948238358 633823463 242371086 918324405 93667087 132535274 47360536 323950617 616632677 912048805 914275304 780771215 190528301 995708647 988364930 499276690 764662607 19733786 849908502 86095190 905901647 752835901 812241170 1092846 607020247 443493884 877785139 580459923 682106281 684912185 294576075 609251870 117934405 476630022 512044557 727181115 321796123 292647832 252036951 609142421 556880573 684112954 538585612 78492983 501088170 871753506 545089651 252678829 445607144 769839628 348087592 231784439 754934881 398232730 601666052 292107661 397564769 371229322 750048875 95890480 383901491 793947760 436103672 458823894 62644377 112347532 440753046 530693747 843070664 131767680 81235984 633001603 920778203 791801571 831161421 319671809 356984109 427060834 893983275 41409602 38803124 700507492 109708489 700993732 500470188 961277854 707611531 594649222 832419341 889480898 345832034 177637977 27311788 477636342 316083061 254357409 466678784 3371566 345954830 273766429 748774466 423568684 884098836 947315097 113150166 591857190 689128076 39478348 646549004 67670812 748071197 761773322 355223357 786817461 212703799 966470191 783661133 534595910 107107404 456149224 332049524 270747325 469659279 303686308 285117838 111794626 111445842 779115666 24098453 115977240 164298935 899869548 587779768 661879235 315549275 152012987 640364623 322611059 327649760 964476686 231204258 131302962 56709252 975652134 609558041 848520908 995832436 311914644 612776484 533527621 961821301 632094726 102366118 226076470 735134432 603140721 693964336 391800169 618586761 115689741 282550492 72145889 80038139 650815077 837325317 146716684 599267089 567963940 768319658 524413264 981263208 240168799 99748419 334079539 234301730 515789299 417336675 681017488 550403958 510653138 914302516 130330659 166179851 636458235 885378683 229108572 797463852 9929003 690922748 578976211 305429996 199066783 979191017 753872535 297615252 448191351 896333165 555077262 878204898 446968430 162581479 621246744 977258882 209355862 589845338 700899315 822563420 264144261 953685020 966555746 835355553 161246370 532146541 390558370 489629247 714253314 463876494 349327343 871987371 332515533 488829291 279750672 918658495 212836398 639727923 542013784 319405234 738829871 977819089 439899740 593047873 338754600 337976113 749692863 431677840 929862376 746321306 21521712 372601195 493076816 561608592 388829905 977483102 301587555 277754079 541790198 755550811 447251453 376096385 638622388 108823352 755207894 705885017 306031707 966005346 961777946 500101204 420460357 913567569 227919339 376967916 78424898 83870023 11542030 511347501 220490815 83133438 134890878 679754740 989628029 227258600 991218929 460301097 547227375 363568678 396360510 331534331 400362227 762226863 520658403 281274682 433926873 695108317 378766932 599636760 182045139 717196676 768115276 159347773 249515563 115634113 567312328 814453636 965454805 507998222 83419154 419089759 577516435 222883191 369603480 25519457 273493153 326556159 235649826 302730854 230950493 959051857 949940216 785825730 709735517 795429776 20358742 499637843 834367731 559309109 581838871 554107509 229124765 90931989 942072448 297598602 943363721 230338152 357097075 621154758 95023082 611787832 729456949 812485006 437027616 37014061 720790171 489060158 435868871 371994829 602277403 984219866 29275972 29341167 255764451 771163318 410508390 751114401 742697425 832974603 532935889 843561028 875362650 494152353 843532171 109408532 922340504 755771437 75474051 719855541 943304507 67104695 269414859 819114624 477778022 620208273 101700970 610965590 115832547 395529967 350689301 494277857 53374710 436824261 355593989 836615964 940851702 853752800 319250496 203484447 629087429 777592007 746105777 50043652 607605770 437843770 473294654 585895447 508905331 831503557 574394917 274687932 730755586 149115984 47600453 555946186 137541827 542573937 442781067 584374158 846336121 736498958 108028763 313029863 832999766 247379001 630632267 468823477 651002319 170016244 287449217 461237053 494496090 749679939 309643754 83978606 289759457 110998694 985146663 56926767 297083123 407350929 270385292 175437619 681432092 42436847 593970188 968914820 49368666 779183736 864101762 661817491 576108524 216218269 59717643 293455121 235942645 72457623 694497821 425082485 860249278 619848853 329604954 364704009 376012399 445034566 516189882 193756436 57544313 449613939 656568122 648887061 387169324 429961663 510939524 765673163 201135956 440464810 66413039 581404749 936246915 679112780 95939874 617654737 873824101 38638775 363938056 395664946 986833941 537731233 733721049 60807023 418474572 286126021 806635666 757431815 199905257 936313872 99894231 327280184 948361945 998501855 347841777 237262648 758718015 252033551 798530420 565819367 33781752 381157474 156043418 265841205 547243439 449882619 257205438 64154826 307523309 439384839 790222538 309001035 241977052 19175804 458692804 457875156 21988728 477051101 36499066 364241785 177579302 747362916 982657382 862976951 100090445 921027297 358419952 896721514 21750687 822976264 454422315 408599553 824582451 844755977 403459786 515427041 635055041 986738972 338273336 791130062 701876509 600274797 587894203 486813522 996793109 153597117 318856034 785568927 175031101 52310602 405197429 85477254 361552065 249363646 861694039 125680626 913426472 833737232 326329917 79868622 238861006 134927947 771513646 624444453 600822052 189186939 448733791 60092448 192108645 27612254 14294582 532823415 153884837 733468667 879219453 1725169 232025521 567071429 629590333 961886125 128440117 223501160 452866646 502294200 793888735 961778154 359256867 830818124 149664198 770589779 80029602 449736 470695997 743428981 767322406 686050439 355096796 474069374 332682045 534256522 999623523 59062172 273157987 343040324 197339961 427992493 330862158 587104710 799987599 652904834 991141423 848728805 653673235 635346194 597496538 953711624 859920513 25460758 76647938 157891221 331655089 453303412 404852305 890771375 455588663 472510249 2441548 460407622 189395878 737780983 355840673 625802649 872022068 397876169 905012021 8538753 916275043 654744069 987602606 490101992 900153286 39946391 421496706 169436878 455578453 635532494 936420596 292143181 300261475 547552061 248325196 405950422 46872087 678928270 483832499 440936511 735009869 335517264 432181325 569855181 21303802 95715461 187375052 998309345 171506024 809877658 210299924 630316557 886525930 815393924 153247763 925128956 25656241 531886497 442372757 151142032 805485499 569881608 820415450 345261960 109512536 984529593 441738503 315119382 27288216 125827670 511236053 823780902 686111173 283461116 736189949 632558484 922193457 277435373 620931034 523893520 492882429 832466218 246818477 8550099 116347475 126965196 172672362 230381650 235637021 679425159 417226995 904607865 1822695 77718657 886885954 345929494 976130452 169252552 316764587 555753037 918833138 456535848 480322096 663304304 42709504 148441921 129451982 291923565 273056069 50083172 373227562 61685985 963418424 692498683 646613132 470033467 249748461 989798252 111381692 808490846 695996589 211892867 932067264 70356083 755858080 112051075 533997740 310889514 247593865 367496948 699673571 103384713 106814127 616220107 926071960 990042001 570963431 24454347 779417326 148625167 513755347 388408396 778035605 269611233 74510690 394231927 207846947 968145972 149537006 604991969 697842052 982618775 644601685 260544128 709669880 884226998 856392656 655609666 821191776 729182476 26154769 805472080 123737961 374544566 177547888 249602820 202016839 303841283 950108392 360539527 559090228 365335626 272479406 303449174 458219818 889327732 468810006 830455404 742249514 803097069 514064468 88206213 400368040 309364525 72158735 865702635 574018404 214818740 426493276 468512432 381081992 620679427 621321261 422014512 637541299 395385466 990089697 267107322 676625952 629582831 536394977 480087784 568783598 220451016 304861277 236407430 93699415 774758489 770588873 770822449 73531338 113322883 273216476 690934829 3627694 289495763 437175987 261970738 205031335 979471279 161481299 453791943 469937461 463060058 88182173 417776544 836421547 243155890 966236727 296696315 47363695 293291741 85205149 915104706 247393839 892337864 134469973 970910840 982931038 41139506 220365182 971602320 643242321 995056831 259512189 155044770 106704852 161566530 49152613 795490980 81175702 624772915 710109794 404528983 612932115 985107123 672619674 286697054 730990876 12004881 397689 836758581 633487640 826273742 935215107 484351744 470793323 218994054 550170972 738164182 566730234 987684182 82402868 581413194 290767351 749278553 190227543 338995636 785504926 352740692 669823594 693941310 208220318 266488323 435571280 367111397 729623672 670612784 939046298 965547293 745269524 411086281 780096672 554741364 51668060 545363593 289930652 65105068 670248995 727737083 15206841 959520600 107973217 192200642 140321731 937788903 884878229 5482145 797880041 983068267 855171764 439573160 426541974 589783333 991756690 109636948 19108139 700608385 633567937 530736127 332303644 162074341 230915209 353569185 857666958 793934873 102068199 569404323 270636351 413960013 920110876 465742160 800966594 906152307 249103646 849928080 207069784 841309774 489243985 216958891 633166822 139933360 933128491 310185563 539637783 591959854 500760957 796577969 284094612 848113605 92524854 786049491 791868921 905984768 710156520 681439944 806497085 414249763 430497360 205933465 122220064 450802896 846119678 861563772 865716577 81231800 280294553 775913758 499302242 795535154 945493392 179055266 157091288 304073503 262648940 605830772 793046442 277930055 626273256 241287033 77214685 892650907 621297658 78939047 424501598 194854183 941900724 497221550 198918339 315410926 213843642 205982265 303354609 144147865 288918950 118330499 504172211 866215047 785725156 761742483 79392303 853654423 230489998 855484065 312021159 377328241 7852656 563870128 523871426 183187539 526478344 685706878 399381310 719286069 316014308 302614 633517210 976502520 297573536 339382265 102286902 860332897 274328803 371290123 151083550 684294693 279112246 275423576 282861737 616265777 824328372 705392567 643084892 603176261 89956893 177686279 947979460 502853091 272269145 996004307 659673458 179541760 186105898 157444981 416045379 573083144 567264803 50378105 908294915 12535645 357867314 303990952 581277269 365638322 114157816 104209456 227975182 730219554 109232626 908810276 749207930 741287945 605626466 410387942 6873536 936205835 297812250 828666301 464046831 303557674 25003862 715748821 33337867 781164404 565028245 735164335 876865727 212246573 306210863 152605988 326498547 851854293 4012581 98178072 832838782 657355026 403320614 497436745 75874370 509739324 169289702 78826755 659689597 248476977 501593817 879957006 36938262 754823223 148783513 988400 899624365 252407448 326182503 158236089 199236961 741767572 730792059 862985395 695256440 43565529 961639246 988011907 686077640 964827451 723938800 369673150 227822366 988866703 218980699 188501713 432016254 326547203 599394383 52168715 332385657 85922819 639720909 38864191 834044918 44233358 325114212 800098587 437495085 261079947 131916409 798392558 917024340 641273081 76054886 790106433 151880268 510028658 463423804 426655802 125454321 37450360 814283782 839585977 809531141 498592003 731593691 194025587 915953621 939250350 363244810 922029503 862142096 851880129 568192828 391618695 540420906 528954611 864452505 784409356 331576903 625679841 394155127 206589863 214958806 435380936 391172576 266484489 392950685 990606228 551812369 486880909 500992193 96678063 869325745 743913725 924470629 619328065 227298946 677673902 701580217 742914247 471285709 210303850 520088069 22841444 641885715 819353263 22604266 103391604 217820636 756579749 239354540 639393180 993745939 554225787 875578653 222207840 607109898 191919616 80407998 790728410 327022831 48252263 189891291 2949474 184573162 538495090 551696496 712955749 35074857 636320073 880430185 227105090 311455010 855530683 346947948 921186258 136500058 362336180 618558943 19345615 546346170 495457128 34565897 984612869 437031465 863726027 707639434 568864288 807941403 457260153 448427010 821503653 996352247 638003244 528237637 823022240 220722388 34752217 298118208 134709395 637403562 91742632 355997382 686074629 572279728 383425125 586998310 339009087 838373908 245386159 997160053 554651569 498129020 898002106 202277836 324335867 466479679 112482146 218141480 18384690 839933562 241003991 752404492 21818865 434979006 642783586 330169036 763968852 513712930 73489694 299031506 626073488 110306281 703381684 306222758 412186993 688905663 593843897 801152140 342780567 984960647 870294762 673777470 145605688 2611390 558179412 560624424 122176310 444617258 39800478 693010770 682284763 480635997 124762554 595702334 425535052 977480177 535013619 341257692 179806572 510383081 672194512 845928139 512621553 341038793 389014733 181089455 636981642 175572691 812091411 62692505 607378227 107181636 820913328 909803089 5709622 110392905 25391993 37226071 876667498 722138378 710126487 400000378 975954910 996066257 891144762 887845536 239615849 599893720 734990706 778404593 446711994 115272815 971577193 154601869 242221342 194800363 451181704 804588685 89037102 145800543 140119012 620260857 429108562 686575564 870244294 955551380 319964626 983639483 547697183 530163182 891751333 251973501 790195610 304560487 443977901 974997646 764770604 579476141 340135341 152583272 762281664 806988171 146273598 753287309 120121823 818259321 397849357 967337274 456881947 476274271 206222611 594028666 734533948 356256556 781210840 967023322 318377734 731558550 238441361 460207686 340711453 884607090 496803860 628350982 406258448 574891561 289860007 107737081 32569373 986864477 474572041 450982504 551717971 829582283 897330540 268304691 395260795 636691921 951461716 125602858 380155621 477652084 11863786 536363250 924653626 685697127 190884090 588155427 322866627 482495143 382356446 169029299 414314221 805243630 292095255 936268367 567495248 689591299 846784776 539425928 794726895 316676273 888616420 634031336 386824682 789015753 887288872 637143461 679413708 765097283 858720751 468195421 245527788 412710464 695563034 846128675 821561561 969514555 671479553 261043931 367116464 300107248 377249270 456773073 590471086 230051184 672437677 473395101 272755795 871314022 986589253 568987089 156962313 275697773 456337665 618335930 880247356 121878811 246237975 732314562 991230711 194258143 422562756 754838961 822869627 797401666 967128493 824190651 853697025 72285291 652526803 111804719 851350860 987303154 404329290 483448217 670885383 701058300 357393113 51197162 753614836 57558714 381832427 934949412 926008746 322279260 374175145 207352574 239340228 759299101 22423255 167721737 258784425 606303063 245486108 123739208 562542746 605142724 656315441 394562269 497656293 522671787 954910982 656043897 650305618 896757220 717282663 295299148 679847022 268973588 79736851 778492011 590066628 316959335 261246963 13947415 221250725 760439303 302625257 876068990 862434928 651446778 373264714 375707631 140359049 848469605 105061501 758961666 351645322 474981651 488654246 832675326 533869480 621419891 901437772 270482138 735664303 426884601 993574862 538648945 664981405 22403748 928863560 498836901 12268707 700242131 363133475 610394082 279159477 293458414 75534683 78532694 496137046 134698321 160341741 588427110 973807616 935086040 82071236 384374066 727175883 997594112 911279160 5495258 323157014 399995109 742077318 474472543 530181148 768387613 304460824 80930995 310449342 536967004 26816191 353588975 46074447 350021539 181106196 777668134 760371279 230606843 988661016 603844845 97026113 451698828 588878487 446446625 784104149 943120598 629745096 809832606 967583280 812861066 133786267 976652251 428320648 303061334 594674512 673208505 426920150 285977397 701036878 244838777 529371698 495190359 156954595 795258827 540771052 562936800 182079254 378526704 98287131 212324131 911098288 484714511 76072331 645342221 538428851 372980154 684221518 885591692 615240253 129649125 121312417 940684198 523311582 503064760 7163423 704596688 557021062 672901803 130271903 303100710 870026554 816581539 692853281 394596939 97766096 26780464 168119717 44452901 497176482 169336023 776254589 216207151 646681944 531128849 776116295 297516800 829154103 984828774 799957422 266909370 519393126 977633244 112062258 71945391 375388813 10897221 707669313 59074442 210688592 33720970 95995470 562736514 379603973 158470969 14428363 952733054 349018065 381674609 637283153 812646113 976820942 634004626 712973735 777033816 525837710 743941978 639788202 378909702 537895081 546594136 502318004 708892285 446415021 891520339 752220544 723041022 50742205 251822765 460088573 780340432 884547370 787545423 369455959 471419250 305235723 108296384 691705672 388547301 623316928 41212732 147090813 663494382 605721537 320211178 785586401 362069438 505170150 60681780 683231918 77755889 213688432 269335685 779655661 701431752 377065644 120885076 213674067 303148600 845637180 93455833 466591881 479555864 859635842 427718969 166414702 48792726 221044001 154279975 256460688 340671597 127281838 803829691 437258979 37609965 687948157 231175496 22046330 233861320 696562469 550384286 449713841 772994889 217148138 572674649 451911271 602572814 985933382 3437576 526217651 144404781 719165085 703654832 450101062 910685106 150419675 516877359 628096451 869507789 938002176 393644997 391559866 284841579 29031920 328878981 426102447 714056708 208207173 96884147 473987931 154708655 380790985 665064443 815174026 145200808 588731537 712826830 916945276 871126921 710687238 156066727 279304368 66311530 928358617 746014419 650564884 600248595 109040990 740019618 649973678 732578467 178258126 38263086 863359721 909188522 195010840 874051865 462843461 225792226 714049000 546923187 529250752 90010193 334735207 888497669 164815300 344002651 372004717 521872201 917299412 219873685 411669149 974821024 483186309 564916274 871607590 790175347 889278598 341576565 649682079 594961929 774351590 600636075 170598933 160557839 349186068 281285610 750196437 309767240 154736591 253766409 246265652 281754760 316906020 793384833 742981645 717045574 617812152 388455176 917536366 922067768 828925823 451136569 604062273 695397781 296740811 818158908 668211674 439225572 468616739 633277510 560649355 179063428 838293611 127132267 475356286 27837562 254083841 572570248 219306885 737084906 240982492 875592752 224540811 332135918 602416868 781726744 454620161 532560749 91710955 169203615 680652017 626497229 714294698 993112795 183564292 952234808 557986047 711501026 51577850 49896847 726347394 178323107 791157426 600448274 510683479 878079447 986033157 802789123 654005330 610152523 115792995 369702026 466812763 938836523 568073553 933780589 424701595 65331617 762180738 710430602 775741286 749018835 470680024 187624622 931193831 843565522 728392768 59415061 483461347 197304489 335558503 577380260 666119852 250328289 702294114 450681884 98970684 139294969 103090168 87178735 930170419 27021888 870080155 611483649 260276432 983204717 404218767 262653308 126820790 133558838 196244591 522769772 313399549 527914175 241310648 71039850 708093217 891061773 759321450 929149077 977252537 841225159 705355192 575635269 628406338 716839728 853739391 692509943 951007622 667563230 189087960 547128511 476940142 389563147 707892139 941168599 121526471 519691896 638526982 65436359 10044255 583985161 458575621 396255642 706841191 421450453 678374012 579581478 921513797 710633889 829985070 404625347 617425506 563120454 432734650 528127666 699115842 777534090 346591059 874250157 636127399 866880936 253860965 579312300 425856049 328223712 22036295 589265727 434008903 229738140 408114096 987886190 263111545 408395106 62629313 758549560 255234303 372594329 501215058 596772118 322718069 980258118 636747331 729211076 433773530 306750763 16773721 107786401 853994447 129604214 924686047 647610274 504729562 833760227 7561094 383964086 958550891 943995805 892956859 564077197 255417831 759352716 279639814 974686143 109161634 860773687 605004463 239498351 295955551 750602766 504087900 606779746 405568309 842306829 657041909 75337207 88118968 587307461 76944020 935247536 474263950 175307221 204375130 198001733 697338368 359245949 35228679 680784226 461699110 65233987 2727854 655047379 26575389 47859635 929127844 439258503 501113567 456239747 496703928 973315706 557898991 176125032 709487595 289315157 185560864 149996725 657316807 333629178 756447552 213959095 43407413 272697001 944527159 282880701 376512788 399201987 705078532 255787690 443640646 95563078 861102730 507748805 590849528 93466693 723480597 67675394 771705158 761980846 222349159 500390682 580327553 407024565 669600061 252716771 605026687 817334638 776072105 152844859 973618045 125318483 396569851 822821139 712692305 796646011 650534030 206232186 495591774 727610701 178840332 5759272 533395448 375261498 176701020 22203003 526429965 12029396 269084375 687737338 85220362 673678911 38112764 179564088 371490462 785688976 64514932 378369244 5100359 218744636 388048141 466095439 280384047 264189533 262598940 48818103 728010978 813606111 944120792 172451524 241286429 14148129 110836840 655213290 776941333 500746088 332086017 693466106 82179283 160618993 683226159 677403106 24931407 747839169 695528610 673131330 26771073 263142427 668770241 107408193 390118887 508079471 729011873 481322607 60892618 917659610 250184313 434340548 474726284 204111399 946435818 822316727 837519827 316391254 334646951 975499999 18169334 478795602 132135998 355596901 969336890 252159296 959279157 182140159 326467108 547003560 961321183 978029658 186931851 252961036 537297362 365122276 477164093 723424216 18127757 500901455 778143292 879987702 536540050 766797533 905863807 656911362 582586509 370205582 178377220 986425515 41165266 456501258 677428698 419526046 214659596 785473029 353794147 907998167 147137062 130471805 433210940 117239811 567133438 282611822 251221918 433104440 512650341 380276089 777666320 457852238 929655059 175170221 367626986 659996579 100271070 524730788 803359053 834265768 543681537 905234525 330710807 896735733 12916987 140554813 268300817 965682698 379644880 209584214 311719941 856061225 741082816 493584735 913048145 880220069 730251923 240167157 540991057 392086382 943885704 913017900 99341656 909759587 690227842 93363476 723082734 438241137 576796701 368864009 886489067 804970884 443855034 521844888 997550237 325266315 892954022 60990504 957215792 493247067 947086000 36727235 791748597 106024645 569753223 535163770 449106974 643978502 981089064 206214176 831593920 924164860 156371620 159011136 893912586 716637526 421964785 199881823 417641896 186219486 966251421 228487953 857955778 61717462 161243390 363084574 577193699 879336291 474274351 232825632 635440290 384303273 697739768 609592556 74998281 744285017 439746806 195000411 440124654 728949770 110256087 205489331 658714820 166379737 154775130 570450937 979488200 242635515 929822161 635297198 764620883 518157347 566767011 19403662 532376363 994387734 262461441 348172369 337714929 365687933 835108213 710629810 584353158 906054668 452144876 364361484 400234877 32995909 312389359 297319777 762515048 853613310 147097113 339800301 943908090 344518736 282834563 532313962 535316079 960479441 259698008 706970830 318173428 768187895 794046416 851553602 631536368 609234348 445019535 693296019 229960564 425554449 495628015 805876327 913723418 562709673 147937461 373438473 270496350 928291676 159300839 688810147 730797996 223808697 866371965 214359087 844876125 304693384 684942407 333424069 381700913 550729838 787261667 215468973 132816495 380981896 35790931 385454182 231973737 369846786 629081400 953181768 795645682 615452058 139672140 261094702 546015459 248342403 954665331 454204041 280729507 218005222 205617661 913720296 955859609 947538114 708658619 643315262 6800927 587072866 842925184 711454508 464470935 54542801 576941993 746541252 17114356 344319584 609250504 62557442 269778052 487589778 509433923 288333246 732276117 614793863 274708220 323294731 967766301 55140708 89365264 385530001 79163065 713254015 600409259 663687887 916944594 448338778 747475207 955480236 352744846 766110712 211868272 726544210 642763359 870732008 715750238 367310224 457596359 264457541 309473708 567328691 9328676 1447924 765525455 433357206 453648148 385957983 47579643 345649536 907063383 192855298 174300578 930726743 23281207 934614337 695773426 240632767 539411051 388739530 164966766 348712683 332805841 797017724 24936943 371201407 331595586 115213928 123420408 328458027 293374369 884884293 463342532 389349743 179489704 473130511 918157381 803491227 541892227 245288738 138503469 224847445 69937836 434188330 15029978 417211463 393724679 462935547 251597991 353358995 627762579 796884746 57133056 943703135 974039349 599981653 630491659 850409324 100884928 11180160 945256618 529794172 285989048 578426534 304435092 103847412 13987586 501077482 536893563 862394838 506422459 282852652 132040536 779311997 820434501 410284464 651093604 463655495 150623399 550855565 40049344 411796077 775847502 414668366 876333995 245780080 652601471 738779668 280625203 792327858 264027711 723169999 185121968 167953512 588110853 589097098 622741326 305171180 33702768 934259164 398903317 398896959 961475749 817808863 441927323 378315591 245045221 71211863 943903961 417664704 372161699 441735282 937426184 647651351 497679387 335150828 295365093 440228570 269282113 151212788 278951453 861598406 476714773 768522773 569520078 454479240 817728877 559840892 428370658 260357557 299784467 746738991 351229530 663970782 186727114 217135052 284316854 65608277 520455945 236196889 750779435 357221350 305922231 250237053 345618294 928674590 869478778 663162810 879539424 99116919 37197066 368927868 67540259 946576583 918486688 968482999 792186050 462955923 586139764 732184970 877387968 943486214 127855989 814894918 317715292 334307921 19569378 838177469 748437519 173274232 472873339 352740403 730971639 937219955 837378848 283183124 70527364 791888890 165657191 227569623 26594171 352921659 392188418 778293281 182754865 735984045 902629318 260252411 312336934 499820667 554074175 46214605 20478324 63838247 904512015 406343878 67748755 50384336 476419654 525711273 674976150 876136869 474474615 202671035 174319598 726355441 629316280 725338208 482301095 395961073 847151251 850020731 384067888 584117277 628148899 653523252 651594217 250463806 511450333 489532122 565047490 721322653 280071215 792334428 286922247 64187562 461184116 21706376 418874634 94400163 620138251 813612509 386077762 183289764 421960223 582954976 140034945 293829064 700873703 492727168 93071835 579604741 987490048 369177440 509318942 276499971 607364259 501269538 465459667 243219840 530114904 354687833 24113533 869823689 522225161 968850309 173190089 986227398 912246864 80645454 114764943 705149701 186875173 394924502 12579596 182305753 822990672 594038429 82757702 188437814 109830709 720718219 634877461 445678925 47140081 702307799 252843261 547642160 445968304 199503645 589492481 301451705 464247405 956683399 517245022 499847580 461033236 486311953 81701457 493829586 396979288 997810121 701885234 62078360 482472697 810728521 728737592 676658661 926229763 782492678 43315178 93295667 73559038 216075692 60018687 675904483 797139320 586044539 365497825 821440343 996216877 877621359 447798621 519136121 495845132 184363512 637666923 616459624 337552573 182843260 609498622 552450283 352490788 66594200 472693977 282760765 9193606 512299438 199593228 305857987 826770929 1009657 849850483 414805485 242334327 420894823 529702390 416100290 408620307 352279353 119826105 220495023 973803417 558629621 926966537 533021649 838002238 753208503 964444575 870617365 403687505 431307677 595450219 529767070 129453082 944368954 731818960 81648437 959250353 858384007 309594515 748816995 840907692 372370405 342652968 244799996 380518846 428706426 136285698 800539619 611808177 782739683 705719299 967980448 853248066 956219514 267687820 247474198 694293036 991116076 19447914 118301476 543239600 572833243 612197705 992089331 870798151 524955617 581255921 986943650 20933965 621659869 858095091 395188998 221783930 50167033 567870683 553554855 233626852 502359807 781766325 120351701 761516117 121063306 689964391 552993009 338285104 800315537 562307147 726480163 59168323 461354712 638214598 73711251 952351900 786073114 566100146 737737085 185086128 444763505 96448927 220881114 549370578 999578965 775804475 897506300 943494920 983353591 136749192 163933826 651842589 566152722 877822051 776697723 121838470 924466779 267507377 913707203 484180629 816790746 500285613 502205560 363670092 10316511 610536997 216710077 574924116 922391941 80969414 375585613 712792509 212654858 773746894 700737357 262668941 993997831 184951686 133242782 996462491 756446783 18033419 769224330 250272839 235867360 852965460 553514181 6900607 687205827 602419133 630244174 190726286 976512473 578424716 795062454 70455326 114878943 409507920 660949610 72330397 887571366 10969914 299339084 548089162 193487101 30341940 663254970 795798412 219018133 311702745 488828449 13424471 202282012 949912032 396443860 522528563 822258374 962298782 874899892 158056705 714622589 695552757 392136824 521137673 743015335 46598032 862230516 133804186 943335259 113691464 475532881 916724533 159717683 236946693 358558604 467104166 252041566 20376451 155853150 103921180 306804548 381862141 525419736 239704274 911030381 559003697 948373979 324595262 276698425 166578437 205187647 447224650 319129979 852495943 778895806 708654009 467484720 772452365 829829155 360867796 423519034 831786656 426892528 275027153 438026892 266926596 810861151 692636500 658002601 464900795 990715177 585804059 3255399 544284320 624845032 573036319 563669340 562672863 530589713 883437294 146205603 129792387 978061429 149039926 253563473 249849834 400172206 638308476 644544672 273199015 421715703 465837157 463441358 884900943 891093434 73662287 191428900 176769140 17459062 11470712 595973136 250898295 751822337 558759541 862776865 684695549 666281068 124296611 82318021 724402813 888391947 565901654 60060255 751519493 444830739 98803322 516874269 160224532 369174324 679760467 500000769 306788137 369838407 239715374 382210317 808913549 824036889 175176227 942420720 650309571 131034190 721672128 225148561 495661891 257573290 71953817 796965325 952461857 972450811 334702737 622258290 158242412 69636026 416121403 238948271 609237976 739105138 586499196 462071850 25638985 405012674 27112033 427184823 211213884 109974810 64585896 93193976 566008582 310978658 190669453 119743194 190284291 474659960 991418791 15776355 825125190 972856001 211430115 968598253 426827575 241307066 188131132 627108265 463229061 359738535 183420867 642332348 907998900 714484478 651388584 267874111 172801848 413356221 911449144 498439613 182111814 477048683 168404619 950333147 465705750 340683050 228523163 85099262 353538856 982871919 645164006 488574501 779359242 995840281 623159144 453457439 441282913 657120472 510532365 478491430 199711212 442602032 511067363 1239249 827622836 167804287 261002864 49730746 293429098 120293196 370042109 897601816 339936208 948621229 77564152 488966532 678367272 309607528 449985729 497975732 298010374 191140870 512944289 385072837 613601096 65128356 808431511 965248488 501500108 410638406 62427502 539524859 285060159 74919000 791894403 21763485 827768423 334065188 391906485 334618830 553441178 91872167 447036658 241464418 181828780 805210348 457328303 784432466 170217861 941634484 311423180 577534087 296064288 576683415 512279730 87926242 353441009 568507912 523701269 360245114 346354378 213011772 395126144 126057777 743895034 457400392 305132315 237585863 711381399 837039230 651987039 8759929 498133365 557937800 997417952 480014618 371306048 12536756 41430778 972810080 39291415 640808723 590828053 986704025 152065759 71461728 180724677 893442046 873731583 104223844 468718462 81846129 472232015 345620566 241376766 572539126 933317277 868340889 797354756 175676818 263671687 300554255 174203807 767146886 444112584 57608844 306402993 316122257 579337208 959810671 788518300 883249916 605501216 690960131 43636432 544708303 547669143 994709204 442426679 585637457 611874678 155886111 763141540 999805163 113871708 540897792 124674279 933375655 275488111 148195087 200741821 652939485 317434487 515349259 544519551 308263855 42718343 498992330 993816166 711355471 665691077 172564945 440141940 120270933 106095945 98111369 326198268 460295365 37306690 80227522 268944778 707297884 657435501 508667330 499226979 537306891 304507099 683829364 818038459 471551856 752309025 299554060 558844934 805915871 384955143 311429389 641493939 640724732 154856197 680761916 487969539 211124863 371996568 254592557 12018357 450652207 415173039 129181790 774760998 594743645 687446318 826154727 358865660 840108173 973704197 403813409 833282237 502569653 814937614 862799369 213190085 191073050 729457043 421135974 951963045 782754945 799216065 320566295 926512825 568563322 454623404 515974078 917955579 842928678 312050764 229771985 801048243 100397895 439721658 293949632 235914072 632927137 52830374 170181886 482048399 161776747 342615950 890743572 658374272 306772853 872373471 995194380 891598268 19573479 242741087 500636801 660541241 173339245 683659577 251816011 687735522 747149039 102633142 304726679 1051963 970068898 950527002 864837099 990133490 401899164 942902481 45151280 257544437 914174974 589964558 969000622 719657758 59926657 656707286 785664759 818873426 227645575 573351495 806795201 195608692 44509233 310877647 604772306 280451072 475799762 306421317 732198498 535915680 286012445 116485390 124624593 374111522 350547627 100898612 153317848 726687997 416530422 565266846 930831851 981682557 50060497 110428345 876201814 223500348 86240628 440326264 509360595 554024225 825784859 735580452 84797785 248234779 518375644 136085678 980072608 9842724 911711381 485604145 655848436 542315805 395214579 936009517 440599405 846055838 394660934 523041721 368039418 665668810 771925938 961836436 227263768 838876438 141785897 834911211 752150603 900226249 966363421 383447485 710798010 131764793 258905506 423618257 848071862 597763874 813463837 458906832 403190381 199964293 199213718 180561932 956964642 974979166 984139471 815694623 967941337 208705854 181104375 320166608 956653788 352005185 150166367 578938146 672778504 96559845 140621885 729533749 512770491 868813726 986693205 741693835 322865785 965118855 898432224 835973721 968592516 286781296 484740522 699814954 663123362 549080640 300992691 255820978 711262487 766652015 42998501 292889331 13074315 944632189 448950152 318890017 743051704 662533571 824227087 567187263 388965794 257566267 653045631 50019081 935506802 931963593 740206482 89242465 235620793 405975248 890907570 821136886 242816103 881223646 546289354 120210531 50753522 609560355 619931874 15654475 80256492 692504795 679543988 603036510 555654163 415925485 353650288 403963387 822388456 202228504 469858676 73180958 275496145 774020446 599662541 845414127 548100395 759481958 830599310 433197425 663694684 683494836 897035304 572710946 202362867 76134233 210367301 283741397 490136145 970267891 400197607 405225743 727566618 396231549 533441626 381563581 440895740 900389176 127098940 672205214 819600654 759897200 809329912 732941856 356667060 716968474 542579628 191259788 538368884 458689789 888142085 212152751 627177022 933542627 950613511 114060145 433965286 915389519 667282366 622116678 446701567 838974263 778818787 872443032 418286743 683839883 747403219 20234976 598566226 285193459 884793051 870217227 90031149 575044761 594152641 492813378 949744136 310746517 151527462 436110113 80665740 51864658 732220046 412476870 813530216 772582101 957084149 550307503 13614426 941538524 962334122 629520959 339232746 929732132 735344214 796307885 675143226 135198573 706453021 252896269 500346091 404024671 164830332 244379666 173144053 201432670 662675702 625514521 844322315 253094276 993077730 861731229 297200650 827873813 555464135 181755998 717042345 177485225 794765316 310064827 590254465 670731311 621018892 775182717 761637721 820175776 163667772 633956484 29448885 118733251 612644371 646535120 55446894 353410808 102617805 343546899 467159299 874435042 519980285 201271811 300840315 473724830 528567855 244391766 958894104 973337507 143332109 714035883 420353423 993949245 583105146 673128497 559780375 539139207 794794954 848524180 330553555 884541715 444472776 288064540 109693966 116014618 18672312 90311978 259296700 302214820 28585109 974281745 582255666 382798916 238983329 991570267 383583187 662048581 28338672 874253 227353405 914558167 86380634 581958830 295679548 223377965 799482981 48089636 756456216 538568233 761099396 109850435 274989028 75379283 254316396 719413500 774618191 435658703 777135986 175419646 551371159 714703168 211396608 356373211 540739079 358179209 795203049 133831607 68705930 550713206 697694808 53404901 921697312 320853909 611026740 383409017 434145983 419199685 851722941 587208146 582083589 620201323 473455126 627990964 615362699 332542189 260238590 534106685 607521935 161452171 351622861 102720877 74875614 554042439 48142402 45255129 752617438 81597244 316845654 367524423 364060235 564304096 739604089 832282013 736055998 750912432 318267269 227626312 93635197 914274354 926823177 4496307 488404037 456221190 287565850 575822621 877941378 942357873 576429851 788826069 314962307 866815226 155161685 355998754 786302110 100662303 939009802 257757216 280384483 883006774 394376149 825655974 856134463 343166878 869530300 305217229 233841558 152229544 606485620 919705045 533041232 209580733 370675368 892519258 595216343 12764296 595882259 632406513 531234184 702786876 402509064 758374153 312441889 959003588 454802243 902818536 880259039 67736769 504334772 508070591 713309004 160183281 639402895 392401359 324311813 678541409 167227737 483062462 934075500 507034116 891411003 295463972 453378879 594143661 742625950 954634792 100261297 389709646 149183794 970561221 181059437 730223292 319401912 312391530 193695406 214447866 357738948 602003949 241450853 667252774 780201345 95640701 507385575 880312034 978390801 258920622 605211201 736493149 681969470 25227563 117487147 431725944 718361352 363618521 192864902 890504807 932713004 748934349 540375645 450412314 389824598 917573926 438039570 605121172 404140205 426550653 906723091 126554945 281364089 897960247 881899452 864001753 529094688 560166762 831448656 174627626 211132567 845396824 649472346 776142820 195672071 667236602 395253383 640117983 134484452 857892796 242423398 32202340 724703194 276258493 693626519 229975941 61616571 324269567 64520866 6177090 218229151 777777933 133018878 216863491 416292948 577786385 378836316 183857864 994053040 151665292 810126798 77963091 854088880 432224922 828809435 762594411 177834312 694664115 658847844 52172562 589745765 746008305 201600884 366615682 725177097 100810607 296889453 952195847 480935539 43179250 159955425 687631161 712120736 944945142 682950810 552156570 257817089 878226179 577026998 190486591 884931049 800559426 129651612 656154606 260538810 620435654 8495468 222709461 79484576 158860278 215457997 959474716 199159322 203469615 511819152 585031976 489863546 774282887 31977341 948868163 217074776 734951552 58141535 348549963 285156478 869152144 102194693 327741942 137103753 794692770 176170459 295662347 350877668 627562724 355231367 726652724 588256693 813183785 872096120 729221323 873517044 348457698 472943685 704013938 862084247 345126370 649403787 701635073 987834128 897955072 954406175 357348938 825621415 215535039 540555922 579698200 160748720 459933624 852518729 173793140 681965441 215853047 822535599 121871855 188570916 150584219 274783659 855409815 985191342 205644447 326880027 290183528 385886439 946495785 912528090 880061935 260619386 832115669 274355779 774773777 408569842 792844220 545395097 994343696 377420130 615433777 931496872 559758982 477670851 972811382 576359005 181324785 500816635 27233678 338479192 956501097 430606024 397568147 437152851 708266375 911543183 819247662 345943057 765636538 273594810 374040459 709115612 715684652 352462765 39980497 982294101 911511525 699192345 244534019 509466209 551293045 932168689 913878257 41242230 945088028 672782244 395680849 569975194 258925545 287556830 30921481 30976492 784953613 787273074 400150874 642306590 934099957 443816732 455520293 199594001 441567115 414969760 482181559 996135714 267422368 947283894 890869243 181370017 217239607 549735167 610335642 453944024 587884027 333167736 325545585 320273944 676703202 175447430 931807903 449100580 563602834 266138745 400116271 123768105 663143640 936494966 380488433 42626771 953516750 249889578 657313915 238758956 23962520 274051521 965055512 502521542 769616978 406358256 886773843 656639723 339593349 254996107 409568078 105742779 33201705 479177804 644871483 616863455 881767556 906232725 475310161 298560080 831063271 619714058 76363611 869851389 97240143 485411820 248537766 825534795 740542548 46001062 373717972 565238315 813802552 366877640 4840706 131936426 76071819 149985786 159488689 414196144 961257155 928672236 426510291 820268555 303210531 412020984 583988579 806010757 851629798 616078198 707288517 472356263 73233598 39652561 62203610 383231941 218680156 410939447 258070289 31721841 536980218 146362422 616748103 229428218 744239358 433435289 341264424 66536429 390926288 578395039 582062084 822868728 139962505 134839282 504202028 821242815 374277915 477492968 104612659 662243996 7193954 114579233 407753290 212624900 287882505 769297789 57467113 347813810 539387927 226519972 808095843 758012557 330380327 403277987 363935233 868754398 827535923 379870037 820091719 18008505 8052757 714031665 35416500 658897546 956789629 1839125 346612835 473872035 907227740 945271332 658624611 647467068 70670597 321331221 107240880 817863491 254323394 380812792 68747470 484977472 835382574 292385037 348298308 725644157 914513356 771602481 988276199 501109293 393018180 168150780 639324102 324435227 623792257 862472253 399399194 959560194 676821418 23826097 566957901 359786614 347677778 592799006 95062944 63202441 133158475 779734986 346801626 848684675 867997157 681211423 871916668 853838694 980528385 212086210 589884104 668733025 961720374 275829266 528244272 987813457 475757294 909970714 749502186 246653479 328111332 326967233 591442387 488941986 708198260 735542248 450794475 577482317 888214879 75710045 601357648 540799722 615900870 393127214 407202178 29139989 706868176 342493655 421625335 900653126 497291543 905857822 648141582 385746338 872512527 286698424 160090989 610935787 944605627 679421467 759972343 295612449 336726821 616666008 488455243 646971802 468586610 20091698 734133024 163562099 97493139 384702548 407278839 767896470 314622720 709787975 141629053 764691848 705698874 212121738 362172810 778229749 950128990 657629406 646323057 322985507 701204191 617315757 709089671 674656640 928502663 870971665 986432121 733881246 911476580 563765851 422952357 76592021 333778605 816203936 187266476 705698031 200019035 346012988 819078638 102987228 845969869 821508152 142607234 379305209 927759120 386110637 904177322 451270393 201764337 610007428 503045367 556732198 466388679 855244991 792933096 419207524 875451061 554338112 441291294 246410276 10075362 929722215 14332038 830818545 901864210 254460149 325948901 374571212 710574167 54278545 296371166 627071048 913535738 960761651 642493348 454310988 636948983 127100328 765287048 387484540 819732796 93464201 200178774 831407905 232458966 944479425 657917907 890961444 451791279 210213703 84795876 637041151 847829981 428524701 652350342 400617919 992326262 659852192 86606310 940123762 236097632 746147527 71302228 936549088 175907374 131784093 526169028 77468424 889768260 29587584 243507595 568442009 933460848 355100563 792874800 968267576 710082560 462142076 29391242 98781555 876441513 571148836 510702969 712151008 198019537 103746936 868494880 320200375 665421413 696758024 91220123 669894874 236521840 890601146 557570712 181097995 530810387 859091563 543637799 218693663 265560389 602677707 863815592 222946089 297363423 785057604 429056989 448288603 107200415 871474191 950126816 511627827 612423571 969578103 418176634 253960585 115156543 16221565 432304732 127685471 584128966 980660241 99061904 903036735 27175528 805763684 605401875 933527067 952177355 382259750 744924776 804148609 107572134 72993135 673373847 532760714 10083415 493075808 986405587 633940883 390060138 512667994 907636735 774670539 701516249 81464309 829079810 830483979 362828787 134596591 515561052 222152671 556692724 857844345 726618361 722945757 192466715 376425807 17870419 930917325 754927688 474258086 315521901 126303613 274679720 412846864 35890663 493102257 230194804 658310870 571471710 718762343 421876785 990912723 80779110 940167815 161101292 516897557 473794020 183563049 232861112 287474611 495863283 618005033 565432413 748168060 310426632 867466176 322604390 573579372 790949562 897492225 790825329 35266530 764203217 211653561 246678722 423883913 606314205 761533090 138174654 377624394 962235592 685118688 836127456 789093833 884999644 850620020 306321301 419129551 892802088 163769403 234165222 38049770 976462004 604215254 674161467 977954454 975547760 871570176 16975947 347300474 837703655 720014290 953061236 973634770 168989604 993730674 523291677 655559349 904033904 815076837 445122355 316457242 814418906 705671458 590792887 88028321 609838316 577944310 740877836 459947243 157039511 815703722 595871671 162907851 243830595 810420767 200770279 330980741 25190674 658309118 653147295 334935029 66023876 853039861 174780802 720784913 465806148 176929754 425587247 354183346 162044477 450709094 8819833 451895769 721502108 710618485 565831956 563189049 966664352 978629257 917608744 572208874 92733207 872491268 873079932 269857523 699500547 123337496 908912326 543720728 31833303 539542357 703271921 149180004 640675878 560768148 22383732 276735303 288354454 787611567 605081316 256198043 141127657 380581312 956145948 234049637 849910540 113367671 813547298 511396290 656389669 721459273 87612951 541017858 599563531 748483377 256488285 777711027 373963739 682674936 649929226 346125905 996554454 326821526 694053913 600443261 338991779 782230311 891806383 807061213 18071973 237260980 597444501 704122921 239438846 384914125 707279685 777815908 543341640 507120920 866411975 54346536 243579782 645914390 121381850 724041188 442698841 221229472 180112415 982291696 55491964 572814676 727914941 716789384 368690864 723370525 527205365 678569337 506131647 728871924 75526862 122334529 570802278 663987093 513005146 440554281 260042660 690699097 953925118 812496390 541759290 573489234 703594234 976222256 325617238 280216072 835317872 24316676 857221531 901228704 240503714 193557889 636720129 55227879 602926410 605801543 493868989 921207553 185705317 762578215 473543175 332119888 379979026 537495597 170763077 733790814 869215797 510972551 642346879 188798904 622919230 186075802 854443139 71596045 738966769 436606613 416573347 609243670 911896064 536711621 249673416 20586713 877518448 558062965 762724802 156190382 315367804 794477046 790313291 165549378 127122801 464598308 260753319 640767210 113188658 794905468 762942393 83803584 398138789 925284526 301232917 851159289 232310565 130215622 394586832 828708074 648420778 217175244 170068794 390707844 217495943 2668705 352012313 170048659 465258886 944540545 993607843 164270311 515179746 219005998 127794751 368327527 510582844 703170106 431395532 255684131 154485215 574075248 746741259 91450711 849814680 865035649 617526713 595595496 916028200 873802274 480099667 876550113 547115329 478149793 774287185 77622694 72599962 540099125 602466652 804557402 81532060 685977602 433041683 611954604 972899724 195282300 17146308 397318497 792467991 428423538 582314980 938622998 332684641 565106727 172095 725351053 963443784 718086859 993891804 205389516 127909010 334385456 276969038 62218959 981175746 263328326 546034554 136990029 488831886 323338356 87662557 416720418 206877054 563244824 543368370 132832942 684318933 707368880 547325566 84295941 168401071 602671749 789064409 991083999 939877545 144273290 811634615 978325348 649331972 416124990 820965890 469175949 968323894 269863637 137201720 852813944 413589737 620506967 734354535 664119473 140939151 543387313 163998542 861144307 316766858 829908826 891085351 980521925 501981526 723226029 387021160 311308298 144076019 367361149 641912227 902630142 63382924 123928383 263863658 813640284 45029005 255886137 101650117 737448876 115378085 453225471 929385265 600425 632655150 701024415 276381236 931163505 188098581 777467703 348289522 896209553 37944612 172926308 490841295 866409904 906976051 950850578 644722836 552320155 922397272 768275726 937645129 663860086 879468966 71778627 652605399 292229091 526212151 59459134 42642961 139984079 619015268 943550562 309859670 701554833 32999533 987307045 444699254 409152252 124184518 985021669 393998741 565471350 563808165 247324535 924348870 207340435 383327885 172955422 94116485 694422990 10069414 427284972 90747357 69124041 315864264 129135323 69088868 834102841 509631512 449412327 874993369 586369299 224033668 55542923 969033113 972959849 234723482 226046137 161689484 190854436 628242336 676658066 117508576 459431374 365703723 433628959 77287711 529454833 594498449 260073017 345714250 506942336 90574261 544467794 508720153 869097283 674789495 475584016 213313596 389917872 788265294 684821607 396526883 336475148 149410958 688261297 497318295 231741315 540865711 479676004 234659725 860951672 104013696 790364905 115187844 954376802 867985690 754923377 719320671 538304107 343133970 670113893 829855674 159664745 573937916 774540403 555272007 919246770 320073025 391147802 372830751 344889592 191519448 935811784 321735513 572599427 705073295 857160255 211510178 704952967 932328268 812928959 453232307 468173864 727575311 342424328 857463709 546722827 6979196 520848042 79592975 259143546 607118670 473993925 679110947 224071170 595503660 450567818 83815260 16873946 276465034 818785444 47428556 252409531 961656204 109422255 628235059 224665452 185230012 288529588 983463521 225209472 890505841 21932792 236215333 380029605 602503688 367858263 410103160 833525540 691802938 799775615 624135377 697309685 814956638 832657997 516934963 564151992 45421311 448267572 590879434 232277353 768690448 166326107 761384099 629559148 586158768 592511442 552840412 461091414 962013754 568828640 662656452 841796802 851267295 110758056 33285010 736356663 735825976 256333981 388533980 661478988 74426088 860967531 445370233 730559173 351390465 849408764 757549491 548586766 730786016 161864227 156514181 528202112 102306700 742517604 70148748 493209617 915681767 687552147 891147882 37218894 806052547 266444546 776769380 378947709 706236874 197080024 3972716 52988411 488914629 688529900 416158196 35865856 486501516 751980929 816645520 229939452 588476791 874465389 384316121 635846978 387523088 386015952 696630762 629350500 123370846 200864943 156008883 568022167 44837478 847353779 570003502 292072622 623978871 248377466 834299870 974296241 305633098 488157012 107103222 131764994 64375099 297474731 567688379 776612576 373120270 920475872 226792022 334899801 529364243 74248830 594302312 34277697 95279549 358437839 991928648 506905558 751243171 561178698 423752224 193599353 62357186 138978620 456748442 642285064 365016454 417600897 636761810 978633729 2619273 397116154 85890616 617477307 347142427 716707683 68899129 552913261 755812930 636814300 628591659 659820156 311315856 69576543 3327866 139198715 335848184 166117167 117013095 529833282 908967831 191753908 960373956 951313760 661967782 933946989 423866530 203276433 895506236 560726150 348579607 227154016 411599853 915646249 194912460 243806028 533906519 680524993 848517282 537141315 425711588 89278379 500665790 877773901 337233850 442815810 132312143 115656374 597701313 36795889 19835912 67416085 475507244 469240627 845444186 262940612 230206557 419504153 347322450 91366074 662880579 84069642 119852825 294819112 744641576 261025087 105770214 838174634 646891847 501894507 559386552 189652301 280704480 822190751 740813500 242565809 227129914 460454787 317678643 184359317 558180616 516577704 402311618 522632870 15095960 618716667 420445292 411203002 180100894 678375569 269929077 723898229 895167301 396324678 710318246 234846163 945359864 586273425 537986754 214579132 359368734 740511348 518694757 718750968 840164338 536116736 325214562 48348082 576714741 948923870 684500139 932586881 945924995 331229904 704549765 737066214 921348184 274047198 310025269 601533432 241610502 345426797 719242578 8182598 304753610 42304505 479196813 476909514 517340792 71832660 336935023 809227254 371887363 450067181 401209001 730715713 176275439 930242442 471540652 78569318 722562316 930964024 88902290 687066336 584957928 566279392 986553343 403668421 272706627 730880793 683007486 25896460 732436206 111144331 427618825 172272185 623334405 982577369 889332178 59439512 681855538 780567355 403204118 83572941 850232774 24598533 944774819 588002932 691614213 695197598 245059603 774455068 895701148 998821882 522757018 177771808 630793511 464893850 69095743 276001957 356202972 250873038 653376519 221826531 915643851 734230471 248031317 474769955 382584391 269312685 889101546 451526764 118873083 268678349 624223452 527582033 834467403 505076202 815149199 533727836 955732988 116124978 782830860 416401129 558740243 768352660 936536879 122353714 544721218 3244076 707680708 662146860 400566526 142206502 365567204 71019172 968727740 919104345 759738688 915438076 475238297 161320696 182625184 498257285 805753554 508805015 952385016 958988927 616975312 730727078 269770865 955264513 957856842 725887827 44431006 55291054 970861079 165985107 405607628 250309681 227744501 508875953 622258547 164816070 225313401 461915750 84677369 425424931 75529589 974568249 810575938 522791757 325455416 390326881 812708393 536598749 691606498 841212593 915266778 941488766 849184415 377652300 640948765 780950595 400533463 77010885 312506253 606315375 922493596 898826953 829646146 709088677 483074824 614534684 149926862 443569771 437212799 994998129 932050347 99282296 340073662 539442132 78135443 978717937 61690175 739130917 492869290 74046709 524008678 911337880 648226771 401393820 96083592 441466202 902385632 43100552 860280732 456810677 65909962 599805634 75511199 357018984 955573622 497378389 177718664 532615937 662554136 867654498 221191145 232274491 184803049 846261130 16474211 376599027 857939064 360216648 264972796 334621002 109364862 326147870 754778867 435819406 795477996 722211931 79820304 743364791 754184928 75425737 492172282 4873425 479395708 964978870 8220105 754651290 508893452 188366331 125578940 417540415 318965925 43257066 151185380 394465624 789547857 658623520 240123707 222357165 153931013 86763866 468438594 208726758 272938965 97554727 942546913 428277073 71260048 297208218 163122417 550443709 417137741 211311909 169993738 641928244 63745602 126384757 280322295 744886435 196212230 239291748 599114826 704212461 348790656 39970262 622615610 860284620 961374083 521477102 142042140 482328933 261189370 988917731 788939755 239315953 317048341 757615322 838034189 335118113 549803089 400096411 36133528 378253639 253231527 564113696 25132224 821575483 187932847 421057126 414419084 737871945 111671689 720812108 833296765 991406902 412632918 751434502 410470523 373937537 324685447 333940036 524828740 851971787 409240891 650306007 982941509 402204801 124316672 66944392 730017130 96657113 420764612 208166689 939732961 129244073 2145217 570635832 652680856 151051129 858489431 638612453 985812199 852612575 8606723 445398402 690265305 874417702 492105010 776786624 447066684 638797279 138273295 846952696 160612041 565715686 348209881 870611203 38245922 466791583 149519151 887417391 645292475 853444553 4415755 379059935 411767393 614560462 271680938 488770536 845598546 118685808 202442530 622917687 536494076 678387367 891066550 607221391 918926782 440809945 61706150 871731900 594177729 938490090 701313866 831074458 284116232 882964174 851512077 449462330 647074868 87658072 825873369 484217420 951957847 434890367 963955130 172530041 750668734 13045404 568168212 803237590 921428322 800789719 182252870 120486020 287354698 704277442 456077076 14326915 299768139 174222353 831040183 956901089 522559504 710660513 971636093 882500143 567492167 83113161 343000481 407137527 9534092 750253377 691077895 204566352 455425135 69912031 987464847 137003658 418877301 128622460 571002985 767525206 72488463 54625740 754758489 259733783 454907429 518387143 345825997 676597316 65629955 263508168 289251805 934777028 731079154 669118719 787649064 345690760 717443800 438825375 502658515 550821303 292942123 416582350 680899383 160086728 604027392 620012401 948069777 459403179 907164260 570523550 482193789 235328388 949954838 996849954 940470948 531023536 906040600 312273859 218350021 296912764 775808623 151434763 3070310 524632835 418124760 798826745 282730478 81978666 408171735 347902408 11174409 109270253 819951060 984944555 101294722 521256662 922312379 183909180 793395096 114823606 950365077 111483013 792764368 78199768 286699004 583806103 942919464 70387514 159966617 363339394 259075042 871723577 55014461 869188699 999850609 646627001 941226499 137103626 644539187 312175365 351122663 12317027 859824143 439234221 41803614 259769356 112423768 367214169 23752289 408743036 730905665 169063716 525298199 1132818 627596812 689187092 88007898 388426254 618481463 354619752 655126813 894430812 635109954 105670870 269375128 330502978 469907913 284891882 991737480 183188908 814622857 480839425 202652288 902401095 550010455 763763853 897556526 143723610 763930720 385725089 196259746 89412428 341151968 820954193 985032178 211990471 351678855 420069884 400475532 386665627 878220436 148233799 516903822 991804531 444843751 837446813 307831102 990735765 642048290 423308333 606272623 473960143 903317620 398411001 1459936 500662496 379489491 650594973 243142860 497585261 763771970 148349987 381110447 989517675 854709266 559223640 774967482 335036762 755178094 485793331 795636159 479022072 823751068 630713385 715443228 891733342 468280053 781947623 436767141 286903907 634459265 49000883 645249272 409189490 652442896 505015628 226375435 237033287 410236690 272332826 179746084 565310907 974316697 357057569 22495156 846932012 35536519 886955791 917389622 366985213 196250276 93463332 320579787 369140861 290046587 47590153 475069214 345850801 341478633 532151754 116688916 244523874 396403654 318464275 284397767 377167244 10761824 41848549 173560073 349527076 810865562 154378705 662199273 229788574 953159960 563118714 769019397 119513431 372047439 841171824 607147983 892420808 900997025 24204201 376643580 360254698 428185385 494278869 922332492 34537777 280736343 118802052 905280108 607336559 632766529 792153991 320064191 675424492 51839749 802852695 687238657 259312786 158787269 870019254 389554661 223869435 40128119 12512915 535619627 7563605 673765318 125387459 869288689 795997094 253086196 159009886 465291578 999469454 267510790 439608282 142399946 408591909 931232083 977488639 630871672 607735224 550214211 902016045 22659825 880446272 523172785 240050532 512198743 549452738 933861524 615040849 2085665 35771160 358890612 793846725 917297828 496758079 635975342 112174755 329184060 873213763 969706653 285918862 79224582 145831325 551796819 108457830 206387698 132161310 543644488 776600885 276152728 518984547 851380819 511678623 531352505 644757765 121259764 546979444 403402164 796371389 947604739 968140024 989000173 445880750 924616778 730869646 565884146 561602459 163722844 701192367 475131845 456277635 872818625 573477257 666601693 289738910 429235503 131832626 978410873 318459281 77687857 276669669 570993822 791869373 278771832 692592452 99943248 342127098 791672947 646193008 550402256 765463216 454180214 436673846 36473727 433651819 394492569 315928562 456508336 804709436 516019080 385111535 976326243 371883758 959744622 465030582 561815561 437652137 156052548 715503251 913100485 948377027 523974013 950429109 21734707 260030751 745440768 5227873 608791658 455995928 964813583 876168855 824275715 388226329 368231374 557767868 612038839 711457948 534376889 432351885 338029452 872817898 580016971 191228562 553628803 875682110 850204615 632158623 457742100 22685130 890531605 584457238 230340198 39017129 507336275 289216215 280953521 829518568 315650519 64317837 572072150 629604755 288453234 80746511 307996414 453999060 748300715 296539288 611191675 261021335 965938730 748578847 633897336 769130873 566927061 787266754 769167560 366119394 453735838 709550904 820794973 184370008 57790089 788290167 593708740 899431849 277927377 100740872 826023610 946197816 201180274 267862840 495109854 298247354 892805014 102185384 240750595 865826742 559615731 410942037 299446080 948482402 550146551 573340249 302433245 339835886 758912549 624711771 324226197 686434624 447833614 545718740 469851798 335321091 114959744 232179307 207947389 652906928 815796775 327312811 751598382 20578757 288161668 978330186 248359503 669605699 366362277 721350398 684451159 526858015 612529085 357825894 468525235 529170369 112943667 889466416 614085090 217298783 210450728 785507474 468403912 911890933 856157270 132224793 404660247 415670652 902072021 635047327 821056841 749803613 811519407 165708239 266270455 826207998 711008596 432004471 30196673 319996338 949063872 938684562 865940334 394984782 691315895 239999290 48438652 443145696 598630699 320461211 264472333 993086905 719799760 479047209 909213996 260031218 754554366 609422353 833639197 795809063 626511654 531945016 510138059 792312265 157389993 161081787 651103321 426909971 307531157 952408846 980042851 309661240 841898308 654439243 88895746 406010834 958210843 807173009 124272963 281333605 361920810 418645353 33995877 150662612 95204943 856334622 709634836 310374515 771985414 107758115 131557955 944639992 932004450 687394719 464275408 933982668 805638362 734938941 986502648 50530454 744553291 10709904 355055577 667776358 628679810 651788802 586026842 736765588 974641543 437409608 577603618 881064062 756131364 789171493 4096146 766167767 87628477 314251967 722849377 751021576 124558454 94518213 405168494 682645928 466910817 918235531 548349032 693733412 59360059 366406518 792591732 764237822 272965307 834341307 695869571 784473234 429575939 474564934 483083035 652241015 125683077 550092289 422454435 432126974 545831852 86823428 702210598 31069537 559536101 345919614 869814585 333258156 348463734 889428189 865470761 372565128 987141502 917547094 999621258 974932781 773514704 363301853 733241268 913109093 229168044 401336507 406409339 745964314 401150165 447642568 634265481 642220979 530809426 215834189 311525809 110231256 106997184 792841293 269537467 954201394 527711029 468070679 703901707 164184201 378061519 582410084 416206357 545215046 498446666 409399523 555132458 381021338 115984417 866708529 17127958 387494477 744477314 908888800 869794689 567504546 633090395 442477831 251257138 108864402 302666762 50259294 266023134 57214410 573561836 803397339 525267596 306266997 457413302 689755341 57060876 125630029 980440396 620120 72742747 688411785 463666302 116282054 242341439 138611849 106220814 501606926 341985275 481644426 71918861 137874987 824364272 276750479 285683635 861227080 786145991 994123099 403207636 550424561 914261851 189618366 360686745 64890228 413824963 542659635 515857186 896046149 654237777 976131515 110344709 66238924 778344222 4482503 334982292 640464520 845092897 623821404 412475748 69232051 746857776 378394529 115124612 8883848 842741227 699486419 222752967 412645149 503579469 947767273 340907367 181087734 794700645 105702584 848683270 907367548 604194329 855849452 286430784 422600145 823139510 644118145 870388580 565406879 282192227 78470523 529271322 250435410 883365093 587754664 284645523 297796172 485241192 632054543 193884635 181020517 971854399 811910919 751798224 486876433 761756248 963816949 766533150 735398693 240031196 299148716 938719403 676753450 891728525 969776753 46985665 959869718 282987651 442334034 367648358 339510097 72604074 643733454 856279896 197507485 952592326 938555581 482936815 227735162 73686535 252470880 908611304 541310492 310446601 120791555 192968350 603142346 899363149 855988330 756176919 963207580 1557789 930492292 735866574 380278451 804567043 106151652 25864816 61299095 942265942 346942141 336008002 117633498 232190483 708386418 393025407 450125939 600899292 682267227 840927674 436882054 699505134 64252255 903893828 22886284 573229600 580926684 12347685 960712955 389274759 659003439 397596435 358031022 718822227 985229341 636294063 463913344 696891291 305068353 733454411 318100091 109976588 232606925 157602065 697701542 738990079 987394646 311577842 947332655 209242636 383115476 229082314 378641456 352517436 426917320 837410045 681274670 797059254 977072277 524137144 644486392 873711334 475898736 938682603 338626519 286148321 516832983 759156899 273089700 389650279 829225305 432756815 427718507 809599580 470337368 563784144 337228932 867896418 877751643 579203545 156646467 404462768 138476636 45783614 950762946 17580568 188350189 855909329 806727760 213556651 3247116 853935529 540138043 461250180 254600900 448518639 595949382 14882463 555144390 902898556 390873498 111780148 655898147 971301025 829386266 806087990 624574144 675717413 62176797 184822319 980094329 869625359 827782086 537285677 623338041 292573195 774777327 206149465 770466219 336842325 44761394 918160025 590212730 303148151 552257584 530197112 731418444 38061611 95034814 744578926 570048930 216814049 872102918 140265510 130629518 790621624 427586124 711165944 277288806 530908034 506379688 623856342 389803980 778138182 964403467 296562471 333787564 580725397 613243979 758358686 320695103 191548649 486863954 818406904 41516674 711153968 453740372 821267817 833973821 895796646 913804346 952990977 622442129 43787240 330667544 285332498 690511438 336271141 835531255 763233466 57824515 863241036 843725536 766129302 431591761 892336210 466794627 842850767 902146389 407053559 171742349 798362768 472487584 356921348 955850028 759865395 926263634 338788090 200089283 963980005 433974879 825108932 795570069 233449714 552975053 50538855 111162396 55071907 131689550 979108284 398629534 126048235 475591316 832606653 518727677 410113335 606160252 657352960 316408370 561375853 372442542 38744170 768335593 423096988 67793846 930244992 93478488 425191997 854604446 439455345 244769484 503958933 31469507 525885170 348660989 915877147 580962194 973262271 171314306 586464119 768223764 701561062 747090381 231264394 508734012 498572140 171303039 69243499 410962576 146620817 23810796 270408308 183824318 160529381 184523652 668086367 402181179 348531536 129383017 319570323 605402958 740364526 349503645 2229061 396526160 925241213 333634495 212778659 225191570 904064543 779485701 391841589 265981267 841757060 751840699 66653723 511707627 785430640 532730238 198094852 645081893 673407099 617209394 910004180 721144167 867097713 474335649 146266457 133051353 512069308 365043385 699089279 137793960 364702632 466847330 460679504 767483693 78839450 877432961 69874434 955764294 92173123 27207746 587924014 566172321 189861516 20704953 780080118 350536437 524966679 997613227 662519038 823284620 201176233 333672296 290877992 530607118 985948206 632168096 692163967 894980419 423624386 782926227 568918802 734161525 717778553 782760643 307820851 328099599 225915888 627121571 360953942 17470038 817139942 708521294 519003651 524803753 91883860 981307159 422683954 21366505 513847364 206272118 481933010 596007048 379848033 28964229 958603080 122910062 15421523 638568421 890705178 117657358 864778473 320281674 74518411 530440486 16931538 714702636 652718833 976776352 356027990 995929698 920773965 539331381 709486432 505096138 624218229 339723483 536276709 568116067 720121286 95811933 666742129 146694741 418936087 259570530 498639459 42761846 758357243 407806381 733169119 992971577 270968841 866288542 509006803 564829573 431868788 757833434 248911976 967982955 179364586 511487980 233277619 865301027 180103319 282836276 845827578 170014790 115075889 312892901 108869045 192874132 764095319 868976840 518870008 608872445 807682217 72373157 986578423 554034608 23503652 775591617 556559135 726971087 127290434 963402289 739351434 408889542 281317197 514402207 437680475 26569336 403201175 57417333 772816531 402799945 527204982 557442829 66794617 895374159 94781839 753578714 46156715 738648000 662609601 701207714 202333615 842645631 981713783 33091414 513938641 250765004 271230226 6886861 388712591 302547465 116950760 157662078 966349707 100321977 351808753 375005292 927117549 431836771 892187039 589288188 428083215 143096037 207137847 633782841 292524418 325766153 612713164 836736980 148309552 535762639 31809197 393297215 73214466 391800803 179099534 706305140 623825189 538600155 30111134 48242710 108132542 600538377 421181130 549970721 155125486 108545533 164071272 773679451 426207722 973395227 492022516 668778080 365084554 395971033 450539502 751533554 992337260 757551915 731151010 976908545 18756854 717969389 365729166 9994114 35927263 820873304 617141923 114123827 632581391 337952444 408762393 251690640 812871308 950059344 789929522 689334842 27814045 391273525 795491247 881761285 333516648 197305389 48347494 210460256 825359551 545603046 460801104 679417714 382165642 613443195 24344010 194879400 825623950 204454506 824265764 199609107 641462394 115799458 964644785 305440868 595071802 92989598 458566119 624558151 782616216 287245255 29628092 58379449 872534756 461095040 58980797 78205237 89132226 147678772 915730615 870792758 900569611 897070708 52956474 332794366 710505808 837858077 619976910 755717459 714805666 878154385 917485866 921812805 880025809 796092898 93464609 654304804 701909559 737009837 323513237 588870901 541124358 505231277 662788833 290940642 651746294 881788707 473930534 120472615 744672721 946307582 449983314 167876011 200652874 414879647 31787098 213871871 534208923 767996742 978421066 718431647 148001487 532077615 663142670 726741346 864928271 977687162 424025685 297364435 299592375 203770251 993163153 460898335 344497552 785810415 720527359 36164706 163346670 328292588 135843480 974515755 846704635 277504955 759603045 791461711 144755048 640516089 426601645 187812118 277872214 492603913 245976801 670220160 389163617 548725323 239825052 729484048 455525346 780612366 68696233 406999714 818727624 135201787 754285109 553205824 110314111 263374416 987045337 44957595 47389952 846302054 23567886 405069068 102451953 373521834 838216808 457128178 129979353 12702247 565756144 898611757 679738281 239166728 166450265 760116656 776666457 630394898 377130647 179030983 696272924 686048632 213119059 627389642 777450984 164399848 219000310 726210422 42702943 646234945 730580684 539159754 588387689 177805454 522135705 949753922 825509311 474142624 237658485 261001645 183381775 564133556 481176758 776047848 493117548 575008575 43588840 981590694 802091822 140862938 739126961 213118673 418436685 688949173 590221202 405909765 640293208 691101129 926409675 260891249 760678918 762844816 698298304 377497281 137888190 674463951 523574698 563535943 360764311 151452282 954127780 789076436 381175090 320518281 257628402 793300380 232575808 44599733 615783948 430890573 5535760 638134091 659959532 325149881 871742727 673588657 875686873 9224694 19651487 683984095 743579926 837559320 883927925 655341754 811672541 885751552 780721273 904351060 705934887 520902683 899088893 211490956 293144954 874266582 302177952 156382116 458715766 530741405 826387185 723269207 720711749 66795739 151188933 423547482 23665824 897776038 261388458 489316821 433029358 304420113 809461037 168855021 891883387 147204541 714426022 992579816 223731036 631030736 659895182 486698742 782589799 980393110 558746720 90690557 896014890 443331458 374794584 806886883 384038155 760691246 668087105 569105112 213462631 743189530 956045754 88596454 395823127 49016418 348127175 317242413 88614259 245048918 344411826 577598864 120251915 186079173 305458517 320066624 86452058 584419346 405828928 397387100 922245228 875133717 379926006 833166444 103659206 205902613 173550121 240030547 258447013 136553375 72312576 466842191 42292681 544630754 631407669 243972281 774558162 164714209 19886356 674071674 378488021 457009410 844406370 615203241 788370937 617987408 623289769 916733959 463373564 416666089 193324678 107027449 865233689 429761792 800177009 288671616 501015566 628985905 45332303 526233820 219950763 330890723 646772638 919051708 150477742 836280903 919049767 51980185 43405013 314673591 771514431 685030093 733465263 792118269 990275568 31180379 654817350 468001864 159473862 885850355 238964804 254536728 249072593 19058346 849932153 987582296 209184578 928262180 394214395 776356516 837517366 278104886 315613391 739542453 192928029 652508535 671161212 9111508 900331490 376637641 385905255 420542886 330413512 315708996 594256508 659665928 699505180 997384667 435181838 296080000 386613233 908607106 985033576 440705251 217542844 699174782 122005539 846920182 350008675 125265577 204551143 489757363 83626048 442204709 260649417 619197219 604123435 525471247 162237415 826542127 962339718 662546290 799486724 104755646 830760171 445110976 180864186 599158294 456827675 110181574 304878732 877046532 624933562 236030389 412238422 994236508 602740151 195681762 111344703 458230380 539119524 366638166 46358963 444237621 573497605 289852522 306054139 129792124 2797272 598977599 491317918 356766227 546557911 639565922 346048312 543892042 658169530 382990504 248254847 362722278 382411330 376037157 980456829 525221658 3647527 555542536 258366184 39391116 272850293 607319698 81901216 961283599 93355612 424874977 47505381 825377410 136522224 443883773 215151678 893614345 388029066 530909927 662831960 781323473 517010851 610771563 120207475 510192545 898229897 400253907 351573604 209846151 30896418 958506993 699757600 780718700 210474285 79266225 766331281 699798849 264623875 180576877 597172138 174864681 427691444 130529451 29834385 1668060 215146800 798638579 471555564 955107211 7273527 886292698 390283829 924536679 650085230 44270665 430511298 242891592 176831003 974206012 206341830 107644722 343536170 833328682 971304786 679171261 380848214 262366174 326213269 131057007 533844337 592921998 516178570 325873376 574937515 517255496 673837663 865945266 163446949 881887560 157929484 968314466 170019809 342712141 660922340 868995714 606420510 561209201 717918701 451213885 884248915 907578244 436279461 365911165 649407922 970529750 447392705 968563353 328870404 187356810 566499115 186516470 885048731 174156866 539082168 957816886 173897434 766795816 619215658 373751466 562563491 49914094 77520800 394105870 19836679 699708295 917142530 524823388 453158547 171159850 387485338 510885047 979533598 989565176 632940794 819159651 108016170 470172091 83025440 779454664 43663395 968791500 954533375 985747087 740832558 794230925 724049613 569971131 368991916 372694899 246793278 893857758 176845352 549814903 86011232 880431028 795860280 706435792 918522091 919759195 868915565 954842599 675498802 939849111 591879156 542705248 802468156 166929447 571750734 970712185 637329208 715374914 280057017 96731569 966485503 537056104 229745600 992870949 716488123 320222947 924318992 123237189 670912625 775220583 478752044 609845792 947009075 232014144 395297072 135799062 557657261 373822728 264366807 97864818 483867168 420444638 644935141 276466638 13995653 479390035 466115804 459119921 334885927 613655476 175156063 548266279 480662558 505278898 969588387 931025276 259053341 936306916 54336155 719534820 813327381 532741477 821940203 93992234 369374671 453433590 718465656 593389281 858135352 680120947 745305538 568610721 378497010 717288675 205747547 706350081 283777403 552177089 307049869 10625610 964702218 218672622 259616244 872220095 34295417 268326193 859077214 257748879 828120540 744474565 271242039 530649632 880852515 561729572 883910812 266097758 895692949 281304555 304276130 97936202 47398365 607745801 363613183 96512801 540124530 560811110 398248724 736019488 623073366 292318471 362361323 508233877 901764772 356425971 939042190 635907856 76967155 531644319 555806693 53323265 444685144 202537715 701788692 448103600 376594010 74227136 541565810 31127279 974820651 493097822 39851568 387795742 590387548 807274468 476236711 723334428 318422229 9473848 882787134 424998206 469365135 787004450 379485862 629233486 951051428 731503587 201414964 236686279 932366355 937099725 621681064 763726578 601148982 766702704 812902581 231018596 455296929 40825627 701421903 310589966 106219343 643692267 213156945 963309122 232916634 21879966 435476242 129004383 185409683 987016103 272824822 617275046 281770624 280145295 559037119 679310164 420524821 460880216 357623956 549785926 49446489 997316317 241011490 659261183 930367054 933792276 248610282 903128266 986485562 298515044 762112273 371788229 927049662 376425434 317821429 456625700 827829353 422614102 273915715 410841331 333528858 407058975 295499035 748575553 835803566 31256035 573144297 217060490 906137147 77763268 474998278 938790921 459787279 796840665 283696126 117262803 473663217 642934161 776553955 817358851 877821163 317648063 73618667 537732404 185146137 162749169 91295011 230337963 110967377 956424295 122381941 413214981 578103005 280343634 113518435 454699400 462404462 176310301 273196521 917829509 388902614 74549853 738459526 907146998 833238925 548761654 799896916 786258524 415438387 228207977 973648064 102682428 427707922 171848946 896977760 576675749 993974915 638293202 647724860 359612208 365568965 50471447 676241250 585876848 628526524 74749840 698907015 769247215 194232703 723079907 877241402 744676902 427463691 718364080 808893189 930790422 532841770 673703041 789773312 168458071 718201281 832634194 554324044 140628337 568673477 848388810 813788728 185830020 971322150 616834530 618776534 358372738 913133611 148015876 754445746 196171631 889262919 18709907 855144738 427456188 305910079 471961142 548970164 647102853 769816261 970846698 143395723 855284033 502089549 699142624 560463224 143225007 244721420 647654855 418228203 559038893 600161400 586812657 936939069 872688155 715365966 355993530 86542462 784186661 588225858 835507054 593125459 119844064 395341795 603688530 116794738 6544746 715174086 3828808 409577081 875956077 499429729 795148849 963786856 957866453 194617663 55466179 455562770 108339383 565464315 204819303 634772870 576457030 222641111 334784659 786373381 706108007 354976117 210656985 129339597 867989567 404638378 975685878 860626396 90241629 275268205 833443617 754004230 306115416 944135478 268182766 812636913 189541708 582652060 172498583 611601971 969748934 154920358 101472739 886582910 717558889 451348073 746660460 67939658 41094041 132919137 344952050 748147272 129202671 416763450 28676427 495314299 619299174 340786389 864261299 518436474 536652678 199639403 316761694 228453723 976840863 402039768 430301203 804153548 933728487 784006091 846461201 700573453 425222275 707227053 604846722 386122652 480981323 621821918 249990384 302499825 861573627 961506426 232585517 435123211 13873246 540037419 984534862 542213530 212720069 988422368 234091641 678273110 890528043 82525889 510840015 926125610 908216407 14083329 880563490 123073861 373359563 777985710 302449866 394063836 673547311 46262279 199874354 681505629 246427618 66828692 614140175 538003530 599314896 271283550 985592696 967063875 968619520 600094190 439441936 647142044 737231498 690265102 132399457 174256935 164312292 40381556 407479503 267307315 689585260 783073227 189098654 386637898 367434498 941858716 172198339 559522788 752617319 109272700 139346361 554130991 685216248 361196420 304679444 848113648 934860207 617905986 102268648 126718755 754919049 186897632 624316615 870915104 360441986 248973416 240725103 574683310 755669390 376126932 312663886 520389048 105153162 283247959 861197872 953410776 154634777 920272385 449106003 224502491 145913278 99446934 637446118 848903656 422699798 46207945 767954849 26335692 969234120 442491278 234762641 578062821 453864779 225802054 708107949 644110605 841476718 430313636 61443781 699493778 332663098 914785653 153527561 922020383 758181170 655515666 735874152 611159605 150146911 651028342 36341020 929687569 386728691 260550757 748748136 767088758 894817099 515870300 911867465 130495045 372011565 790658951 567338108 441979611 569700515 757242623 817872344 394627349 230285987 131746759 207909454 186721597 217618276 76003437 657907342 74600658 16264564 728592991 86279563 428496374 239798796 188302279 862947286 155721170 598038472 722774389 704450719 167923620 299263258 256633748 668906991 246710828 942576452 427846580 939432447 904785845 24874116 46421744 719675077 63872111 311405700 659373033 444000235 649458028 81691231 757196017 26715693 562961445 873642486 753538023 32886413 940266968 473471543 478585388 259670288 608344198 48243208 251556809 103846790 309473510 615977703 549766261 34391442 202830142 389184970 337896326 470660137 206424426 978647421 837728085 571607419 916826607 119776308 750223915 707019573 52608661 521137603 149219216 901806210 439082776 555426104 804612364 262899192 931724041 735088386 764108755 940140879 928398714 228911350 231142063 956600622 492299174 443693518 341001209 220297050 308551374 746254072 109479003 38300090 4593123 145688765 320681579 587011496 42657868 485866650 2458922 88650403 937986916 793566158 379154694 695658062 933350387 922977100 107850298 228929198 621898656 578239616 986296283 542811444 777044838 28137107 849343645 261381394 582029034 864880160 765368891 322510282 418803558 557537208 263250835 833090598 269296132 358265709 167773646 614230597 387160538 614983985 738315692 511637718 105225950 463728630 861551838 8261770 279605706 524430993 807489209 544912689 495445749 279018741 639383528 652133071 134986553 779576946 777413931 484317160 407262053 238260203 86863558 606216383 89645961 489040198 932761799 313967290 973423757 436388309 951805366 17302616 206923347 409900033 536114175 65558119 423444015 576966161 75904538 322690136 224194882 845897453 316273366 432638775 477094048 484358264 523423158 452743870 225228393 166957105 675554475 577586291 704183738 350998981 449908375 33082876 693496303 640490701 956242353 270306127 919896724 702255865 174864592 749074579 39914192 921651951 816279864 946734450 858837740 544241113 494657870 396802133 493365343 714323463 813997755 132180776 619291572 618700598 996981701 27435775 922540121 459959853 623954565 650207050 128733473 613680863 969309398 448623874 332441153 349822252 297884191 635932112 875523670 728648975 260034175 179579215 195326383 696384934 538399445 503479038 262505148 998940030 455548136 412455079 692656630 901639942 474366439 941998273 53383647 436997984 683263166 592664344 72277979 161269949 851507820 488604926 622797795 20374682 644715264 924428357 630968011 60920789 121833329 74574833 289397175 60921114 683830316 828028924 496046339 341141035 602132490 696647016 275768330 820296900 790465931 90245292 178029957 836423012 6964320 234584110 327772097 477301212 536092192 682353365 390299203 208830339 765666905 635482270 133827450 544284128 685344550 144068445 721812933 528356212 102484480 870310513 182077058 231276486 470683446 907217087 596872635 809213337 669504541 410523053 540649203 539096845 833371945 986667879 948220105 413387390 898349154 383445095 576714745 969811740 391615533 949584085 231668544 381487063 347127578 602847460 86696822 215986823 738229393 58268084 17489389 21738874 467980970 464650534 892760165 220109050 261725510 257867198 149946995 133549831 586293774 65615678 648097377 876565627 838737881 960796576 743674222 959923184 599123806 349285592 559776407 704583989 214648444 167465920 398574355 267576879 791509713 282300457 372410044 71594121 854024024 816204896 432011286 910748152 383226819 213310222 781046358 185873607 799657923 466976766 856004124 598451505 919081417 18335029 847471846 82973694 623262180 848519048 417903481 450820826 426469551 486917063 292865156 220988446 21627587 20988019 768687137 285809060 369582457 575558489 918230946 209691282 76530535 297119255 853622615 9976999 334855954 538146390 761427847 269712 297978142 622214605 836510196 611021415 173469308 418939176 962206692 551424605 428381357 839172440 334212655 859819205 232574042 622496846 731725232 702721205 633194197 349670649 540844869 968301142 197555068 347021837 419152475 3310115 520359307 865741552 813522923 82268688 880633264 256476541 521742993 321892061 781658973 598487207 166749426 56917616 30613648 503480114 404297910 572675814 127723800 991973718 260679193 193173575 619058326 685742907 384972086 93566450 999043543 932608895 418505470 279766961 687217871 320870473 993156004 354194221 580151792 114785306 237778231 123067595 193405412 117048214 705866533 756280243 438649644 688595441 615891338 475885916 705462347 205696446 43676532 338844932 994433217 172624560 617200432 266080818 383098120 176350071 828083411 415347273 6137089 523577530 174138030 296391134 227770050 409189362 29507721 56308327 529503195 258315472 752099741 880734102 572071979 244686818 340775076 821244675 656259542 531058000 122129023 148491397 653321200 436296528 835563388 511411901 484823565 492326380 460059434 543851715 159922192 144463226 813313022 600765437 571717579 529769642 117174027 753913522 104509280 727433150 470960560 304211884 780025256 308421875 463142688 13621346 37310606 988897323 549092274 43157785 906255651 406950801 872473559 760130228 426013037 175507828 88876601 830520731 462031696 986193733 998624945 344015737 48085287 233290618 825517985 347665149 534518496 234377610 498707871 706007575 979451804 829697271 847635430 552871500 980042624 375301010 921027655 844106140 927058000 124159822 635504983 544455587 531305422 716533185 61524138 494599104 579606673 33147897 993108389 197033756 216267224 344106686 458419462 893242347 683527262 195376304 519742705 384541768 87534507 760183534 575254931 232762847 977838725 878123367 535738669 952937942 513161053 493299838 545125210 38720858 253765126 641358302 431945255 954821276 771654874 124554607 886035560 38710014 886090330 431753441 564827062 144889599 487072539 718845143 587117550 505341658 138958058 674469617 473940094 820816546 144233357 597259641 146050178 109514221 579883290 864508739 894157880 437517884 253695587 569945273 494959172 649949838 460068528 340449338 2045491 859609639 966306307 882542730 184758119 380974372 386712708 747800888 448978865 663290469 792801895 908056111 11976541 543691830 557526314 72951824 679285224 429323115 253796281 132110416 738256846 242329247 15507378 678542079 369188976 888618336 325579872 219599046 365776459 886931035 787887047 915395343 908865689 608132557 916385950 188311796 432358489 180291877 923804896 775633823 266731648 708484496 158977916 12441980 336700801 891408882 817587529 332150725 520899632 964845439 38725359 336431675 764710607 775140832 78891183 159001263 327729567 193181959 843190598 528804968 31177263 754384380 404332546 69502905 683972151 424618206 805649856 899534803 299666991 833327469 463871142 128795744 607598845 745646950 755731512 669115977 308066483 519246449 271355216 455646234 929361226 322333394 154150342 75970903 631592473 865527311 992727770 597050340 695629710 910387851 493914924 128242415 168652966 425563762 568449970 236311022 62977580 611521185 61836883 164039073 812735206 855333983 241106742 811758057 170955568 705205514 75446156 571353903 407172424 271118246 348136811 803858422 989152385 17341995 502346394 84140335 117853655 255071523 431937305 832713984 665943095 29392352 715236878 329656667 716606348 42632076 19292902 316492445 866070236 384973955 954620396 39745140 610510951 206115212 999042406 11285891 469190704 417861793 651778109 285909796 406998074 619128449 815036232 26819833 240036857 364401538 654332481 298614466 645223776 187682645 988111596 991448708 698446013 673610254 191770396 935902423 494743329 263275528 960594765 523680615 446747584 647088298 73786846 459416291 728249189 30354411 90410717 689495927 782396507 285589914 884500036 23724050 558110130 80179126 489030721 746235869 980439624 59087854 639244565 664379057 760190868 576804481 788785282 675605724 497052097 138760831 183817622 55034898 446701372 756477041 627670134 115888300 339968474 888416733 941632351 346969945 527938191 759746785 471854384 478167023 352895116 598213748 495588345 327004353 480490010 586200315 246888768 657344521 460884107 50521030 338394981 958865761 825909352 671529478 358437538 215297423 389436055 979046965 781329925 361050440 869332183 153746502 20987643 487425318 328328751 260119868 427737733 709812168 440085861 9336716 585130639 781649350 211120199 112981413 346815512 849684698 31868263 676149498 708940465 292345347 784694209 544959329 968066750 123105335 65726109 652340094 959371017 520577798 193312434 514092108 447765290 78443669 779545389 268322532 631732059 482886215 106928156 792797573 693153090 228212899 206680795 688650033 372065285 469643385 471781002 373571965 404951998 914552047 197207824 634776725 282302895 85336190 443346060 183687549 842860956 973132074 246113180 33011763 749604363 852342534 96134214 303738406 984101342 320692327 306500215 291970247 142758150 716676562 480797707 752782838 667211571 930738697 238079941 374172713 543220494 542646590 210189640 157786613 285087779 237664739 479596251 125566116 484128777 319238246 293259741 972322334 333703828 608465102 372392119 272586301 877796974 983414578 58133021 11759154 364818632 627248498 541089206 289417231 202752106 579062707 788595923 908244109 70129008 997202888 720666344 619598928 974445882 866625213 725331081 256505428 599450106 19299559 365131110 999524631 169993549 176658540 461301722 384318246 909723166 973629360 382059389 691527478 43675183 423815604 540667359 179024666 143820526 965273322 645915499 883084365 295184992 139788409 791173576 450608053 708939461 677581482 471500176 478766157 815329349 708734431 819492949 256902919 854485518 480130455 468183561 68787992 768740871 873173571 368065492 535332119 7317988 725325582 61847437 15004097 917828764 114362666 676590923 377932256 960468413 537279920 706937618 124638035 284388406 492163423 978916979 254090700 220813958 358965681 647225742 593254957 413712126 250941006 302012198 190594917 355445818 655473680 31831747 41598623 731030551 239636763 481533569 972472667 777430586 447861237 28041619 586686203 984563097 861362624 812792933 433873909 401978582 519687622 671917985 16772097 945629722 147646250 70049551 466711029 719040397 265039836 494200785 853901338 650461235 366695981 334935053 236713678 407878440 583087541 25988929 297461712 616540595 358262102 472943835 570721169 974416941 482271233 836038804 451840412 470091958 110893251 927971230 138664310 830423613 947840170 359886714 68612126 464633768 982069253 995931107 884106232 914409098 901778562 141715467 355545988 271696806 855092036 371293793 661968226 75953459 533254801 90227537 385960750 913854676 934036601 879744535 210705244 802491463 437615685 85880892 936246136 150987227 520041516 28029301 541603096 479657198 152021388 2530485 434333362 170572344 434170344 958885118 768333162 288540218 859069836 513889762 745359228 31771872 491429488 552320290 220718216 454036621 346022080 39393610 234092576 556436661 727449366 725955079 754674106 115993212 368548406 459229331 87236143 270089683 894884977 943455309 686110766 909773588 104405367 493233861 597862136 747943723 814590257 255653821 443403298 252058998 493899267 265033682 901532078 103942288 109119519 686785199 797742873 647323219 501184148 150807480 355085367 771848469 790223875 606390057 339339414 59027065 108133240 618164996 997326433 6956511 6373671 411893022 292952947 649107132 20913003 479582369 459318979 373272282 127522876 814227696 13533208 491537245 299179216 110082931 222549948 566858423 915901316 772305585 686411772 93874681 197130726 769369896 1917202 854908018 78094516 807613144 18025798 932788210 380807014 325298657 178967652 713210298 940768759 913975001 601432275 719803117 477847032 753853740 450005820 803203946 866649848 425239494 361762023 975720508 366408230 184954459 255945694 14132844 7548846 406123524 257050391 604598655 881533203 708548865 594832259 607831797 735703564 17396911 573921663 551340878 570798565 448587807 331051989 319537166 236801448 416252935 422813149 999434843 834129485 429053010 697034388 3468346 775737506 75069502 264683836 854736121 165391627 878441631 842301202 25125059 428163774 531405187 444694359 230684328 942857784 173606688 224558577 303248833 449764999 713327312 639892244 343756173 173824610 973058689 534225495 119254064 54579941 278393069 491036196 106005515 12497996 65303979 322131589 659822680 993506641 788755888 709446047 71747139 620299876 584619207 366101206 661549901 565410780 440019309 835824822 131983239 260167601 371087769 839468383 299300220 76423744 912918035 689478705 295299849 233815382 419200367 774236324 570374078 921284345 41473073 603237707 132313303 331767579 547770003 548135624 993068752 763554970 875356197 667904892 18451219 679345612 723471989 550010093 527028612 842260353 272864328 153501527 970672027 941578951 43943127 310668716 544979605 257131985 144248011 199063156 628882932 615192433 336076503 555512099 979848997 937184136 847690604 240165139 146950565 364568975 11495021 475636333 733098983 699554297 100486768 637651780 775859145 92555803 226637422 817187907 258600645 857469588 362744762 123527603 34113408 984771598 529620370 967025305 782377754 629498563 202389150 523639656 951119108 567195054 244932187 146064897 991318509 326584781 194558841 185013721 873726703 33148748 339291211 978003905 129776815 385301278 427723745 137506937 903841903 529475176 749581672 632203522 443354250 410401359 295605286 283852973 125301962 942215760 998213405 155571220 109983421 208800748 920890434 432081786 293822839 861034724 305244838 765947396 40475796 908666767 531644092 995404114 163939799 598725447 747457340 313903932 771977397 496252947 952066604 581447542 309917309 698437788 595390572 166068863 429230847 314448007 207419655 550663659 417262758 132278872 215471191 470553984 599035316 397296733 465346829 315370969 432072362 359273361 116996790 933584616 365879965 81115203 588094898 981903492 464612010 513854404 895420400 238908130 986131232 418039207 261419837 497077778 400778760 329944253 281441936 235713834 216945684 968247522 919133503 305162291 369457014 875307886 560847398 994558733 485412386 553806856 472546629 338872828 547226937 324171393 846407171 777593097 741818327 53999021 104057151 534027160 52808027 177724983 491738141 311177998 500032922 670251115 525077775 43639985 908851821 89752653 57351490 423605808 989182548 916868003 686649871 450049521 611391891 729702570 183151320 111792777 64554995 950452878 293843316 692048145 824760958 16430279 25413258 105405223 436459017 603524801 603862014 802040670 509434379 434076030 979680355 66170678 878268963 733689079 15189634 7923946 848080609 649498592 632723369 467663492 291346461 656327328 428756250 170143451 83852475 874382309 491974005 324982593 339025904 878682106 502544190 255336464 517917420 566174262 331419797 19762998 333010434 716470000 218826961 700483682 993123670 23801002 349597494 594679922 923552457 641009738 385291690 233624859 900384784 840327415 646205571 650769136 123066809 716586817 616247841 430819499 754951761 220227566 918991126 307505504 139993366 205921097 989159172 148465171 561228710 923091062 870439861 120288130 626822138 373182242 950628290 643836576 406159249 58340229 570792911 730015221 279521701 795740653 26334747 134524243 989285534 290488926 748110093 96300160 4745939 649364882 813015139 929128407 337629324 838184457 152967913 989032983 592971227 531259282 775247843 884824728 536404590 573121180 590325165 497146985 271440826 731370636 623725418 538689635 281885317 616786875 631869179 334897260 637429374 364747418 170107128 811833550 743068352 750505572 277622406 630533280 589169236 32652418 519368775 656418095 464584917 149242169 760604471 611718570 514179723 895448735 323176344 572818711 290048879 215161753 270846201 195857826 519268304 257905499 448109035 627836616 802908552 995986995 808544818 35719916 40923506 731266886 577196983 451810560 913118994 439517842 3098671 626068660 344333296 42442211 451959395 808088017 961621715 208335777 557083652 883691575 454685087 336438963 658084848 183209880 748878065 151247395 523343353 489608301 813660227 571855749 942882959 688267430 394640143 272238735 356202517 353834766 343478983 632909404 567178106 760943610 687833950 758863202 750524081 516455968 617699404 860278604 246543311 448306310 330598263 235946557 966119491 479798947 239724607 288532860 842464959 34308897 249112588 785845733 343089733 903539519 287011226 130708333 594104327 373641282 352990144 861762743 460763939 48679883 995712977 14989802 703806895 361700895 273166605 165145804 788035922 682207518 535873285 716811098 850120008 349074259 357382715 515925517 488107751 332002049 253441628 274995096 2972362 169588690 121034648 756335102 97246093 239085141 198293834 632331429 523513499 758353093 717600212 731639964 163601373 271674254 559683441 532146498 899552319 498566157 240030363 805000895 295155399 768049119 279236609 681825699 968452345 723572517 543929681 701276694 682791422 43782324 99359307 786854526 116098320 372154691 608295566 780221809 340466139 621815544 968810037 35984635 137831069 990437970 646292366 784694392 411427091 76424711 75889471 769698314 989128213 360180933 127549085 689997154 687101007 868765434 41801115 589723844 724150592 421366264 643180837 430758965 147952344 129551543 626516722 946286477 388649818 698300309 635628378 813478901 894271749 301471194 104838589 478353724 705263689 366822736 200613422 940659245 958170437 753531269 472439623 701017003 903693362 543789411 928781952 967487398 364768710 144282573 942242500 553784565 301495302 292370205 436065188 185696484 364540972 396392835 565275355 251729616 273518058 714573823 345742199 743049485 119305472 660814914 862272856 202161513 902134529 68369244 999215468 186352720 216584295 757214223 655337883 155916141 2725943 42854185 414558542 98800335 303124365 468419576 628963878 53305449 413867344 856472622 389640157 273722534 942350253 669444662 828048587 961682048 571756479 155215780 573936241 258897421 597035798 332884002 985259915 681063192 456933170 979094198 656319004 511317655 623853779 706252379 594208087 681085639 143067723 187928533 397730967 131978779 495069891 488814077 965058191 51561039 370646832 338505716 453677275 282954270 11145230 752910565 341843874 172685761 552257036 713888694 833504209 194717884 593240029 296059840 650771768 609952878 384200215 637958366 840435830 352644648 394542416 171986178 80582018 564817293 372751935 555889995 14474850 628489378 648990668 226594293 374954200 149419194 801722759 788146714 326224972 905981004 420066802 758159297 317174675 111769768 530314651 376019681 12034811 89835909 190467500 86951493 265084192 299862683 569240848 272826922 494784432 793051205 383560444 358052112 805226573 991751566 651260570 120299463 425264159 872559398 548193581 334849785 860519924 687092775 41940876 720374046 911968684 680204795 797186579 950926701 926757596 131082035 867332871 886714305 720892111 841854851 554530983 328637539 92056992 717433926 395500782 760837606 312948223 178807169 170936996 293591709 44996702 627827387 163792481 210226779 50771299 723870365 608040310 121581679 337503976 208637955 94148677 977037902 860358864 314819371 169499085 647314343 171106538 538131922 480370589 934660573 277800722 647556487 323673821 340226309 618953132 61354467 371408262 86525740 233389675 71021130 296270281 914910350 590665480 211933542 906502840 185823317 794590144 916924722 686471708 735178176 54203290 48827639 248685207 303440653 156330184 533999043 961942009 299851369 868688889 106842587 666766620 702101288 214760975 435268462 306310838 694544329 941288718 227418474 277103201 245919504 291399073 288876863 187227414 610528845 59314424 459685393 553226412 842297543 334433182 188014597 813000127 647227994 890878106 310256556 8828931 56750317 806479349 813336100 876284493 378618763 980312572 713057856 517534004 626390041 664062077 839156184 682856668 282517085 71182080 577965277 583424975 462120601 617451735 570460966 930624672 515277694 120108588 448147690 396152320 58724538 515565391 779550335 139700434 433401546 830367962 872417899 651218947 242056920 176256488 714430830 513108286 338976346 771923074 41248326 6121962 346584117 701392720 811645444 17987018 888932147 251034936 493676914 384100499 881985778 966250773 454837970 524929191 642820736 377651612 304855844 82409092 768070434 483403390 57023194 322545944 234073446 440245031 833655044 87277028 7355629 239259506 545678168 631786987 53645320 400282376 37453838 127208731 986823685 209944089 897875813 391185565 203275276 428631294 211375589 448840124 775841434 127506600 590270710 857331747 950024365 496013085 350833935 394555330 894981280 233523008 472250308 544550171 124105251 225408801 385308061 914994638 600257387 569095475 414099368 747063418 496970765 158838862 619306742 31046970 649607013 835952479 89924697 413301678 866894615 86958395 863716350 992053962 853466997 581129324 39202201 930072679 422750747 320199205 774805058 109760139 729939562 190924126 563825610 26936725 755884484 652524227 964968837 807509457 887187704 982628167 329023546 295814064 471532280 135601033 187510569 588951698 650736058 254985287 206493266 579962855 224703423 226745473 472150260 119484301 767131671 396552030 495710618 473341582 800958276 517460607 124512218 932186063 975406554 259581039 211152192 327621581 695729907 498531765 659122740 625507168 768201181 881419424 98104285 159996186 942497508 136342789 495383332 477091580 667998754 630580839 366252892 529545634 418521415 853008776 102956604 796725120 825550653 68241034 43905380 355132697 835754282 758124095 508779271 740053483 612293241 136809688 401120963 51345564 271531568 432872023 293167466 938361281 866533665 769367717 172093247 242559044 55418759 784740194 704871040 854597128 682194932 213005010 632260405 568403943 105453552 772016790 763016571 142939404 594362908 828417676 446865669 675186379 845310313 719642895 21719584 192294645 538560609 675069887 814213179 353206808 153963812 488359146 928002070 781187225 526272385 749751166 801597463 822703512 224411757 219817676 103896122 387758336 212882224 596552024 462759958 175859184 71198807 158329346 411295571 407581829 123251588 756775244 236219388 213737926 751837798 619763854 496327530 457906824 474141510 827309868 103997958 459453824 338953583 283421927 965890018 43996126 451247990 579278912 240745896 720177173 226681291 706701509 942117312 761994112 217650274 13077805 759456448 473623296 801044292 814795621 675958943 107677029 459961786 438494637 349313711 240624553 375455951 245200172 101373829 520503981 359912051 882685805 951047073 636351473 789976919 309159381 829616330 537368733 364728112 883747057 35948761 461951431 554383179 730002592 375903282 764232649 298369429 871344319 493472083 894183751 268126732 80519725 852806818 949145476 615269809 509527963 630230980 962197395 398833708 10851484 363074792 305671266 99387057 253962264 854859986 556831610 414379963 106202424 594659142 575972974 173407471 103023019 954767054 63747739 808620136 652416648 796836005 748237385 687251120 436676649 390983498 562636143 491019428 759777426 537031894 606856643 137511760 614791374 289541911 548299995 959510080 511605149 151451464 375848491 250856864 131355851 845581789 311410890 874279389 88999404 405211774 609957652 850355137 505612092 990130596 599682864 239070759 827904823 79346442 271042550 710600343 511787693 616533421 873235784 275329791 782158763 205833799 862122874 467452430 802731877 443028836 238916824 262579747 490817007 749886157 94441791 358086995 988874222 244770344 967888818 368613136 297713606 70268257 651245228 273854101 446111683 704835040 920415144 83554278 966478284 351915254 675748116 764786906 17389229 99699062 169312674 187980558 570407473 35841176 646892983 422835794 644099350 835245761 193209828 725820242 291648124 461633558 480763190 331989446 502660147 146945244 513124824 343880104 479546030 150621901 646937719 988902749 802816212 195504178 923996836 531652871 141804038 822786710 244862088 185188207 76714529 628048702 294139180 326233191 569502635 126493790 642855350 761580343 761352629 814262977 943614542 162928440 334173085 760700940 547784793 486267305 486335430 381273547 917582718 813427348 853578561 420663441 405609320 431256793 635744560 927583097 678588052 516195481 383367191 572074401 819490612 319820343 225664824 65766460 742183151 865672589 774160711 927085813 950849122 263082442 261522421 209491914 782415306 62086257 334905885 847660813 594825712 603715683 812234256 142797813 795158179 594386022 269909103 970957141 50691342 205587956 261900404 286904753 991231834 712266355 417218759 209919488 19769273 230293352 144229594 637522707 855541615 939473205 682098197 862630300 97812193 319627773 918498934 122285461 208914847 142550080 845797412 863801934 95847499 975346163 218545741 34516148 568778828 63165025 962626869 30827074 231697859 196807808 747242548 879660141 327142059 733756293 785056315 15906347 650687405 845998706 980332136 100807686 845425846 816967733 945267640 809542327 236333768 150983820 866090782 836681718 607335928 772446407 191633829 753580137 611971030 786268902 471210406 136205335 109245448 128063225 110461084 875410446 209969878 892705598 236418094 237462232 899727789 675445217 735465924 593500296 895186668 411268370 467494715 716606732 143934714 217848805 169048233 126960436 855772373 383202068 762587604 117459909 956235026 21447360 540876608 500184493 186797037 114073460 870702588 995461578 221426079 406871323 808503613 212135309 270464828 883104493 810706977 244628495 716203757 382695981 682705867 651374688 714486346 827350362 701726903 886184768 201726609 826184835 269814822 929754199 219138117 100342446 421105866 839758200 464315267 622454842 652282833 230838494 856154534 431382494 837810690 747885122 306446062 773294222 920679239 639214831 402283974 413653434 937518691 363970759 786048862 199777744 717922572 934948674 678617135 279030339 505372437 516770052 210751793 397541301 203019807 88469902 49209209 584427263 684325132 284693125 475084492 259325356 729501872 996524455 660930654 619641540 490488532 644616915 182933838 934730976 101955271 603989307 54193304 13402693 982114156 211766808 80345649 537807908 953849948 449844709 100725638 609970444 981346500 491171544 796191758 332474339 787616552 63510888 898052866 464347250 518676443 65473489 822282043 284290503 565677019 24732220 633255133 735045453 27641702 8371690 384122636 890909503 532450624 204124785 772214377 854140482 420788138 578942829 417568104 373709784 744892274 374504320 153111274 295745859 85279231 485834189 780471000 52352721 87878089 838402473 353544140 978099954 209549907 476464125 101296869 577160674 710996092 475144346 113071585 461634054 724958601 207030102 63836574 47333877 506200958 664124966 254668988 708460640 93069993 394057867 276276658 779601976 453798426 373657473 777359300 124340379 69539950 950930723 512030577 608446086 225166890 121095107 864986118 860258385 835263456 835520064 96169654 557500163 293121290 304220592 179951054 800242788 15179232 590245757 65367270 104502825 281058795 983398442 231340794 80620744 131521395 898518654 415802269 621755086 50199447 14991558 631687169 713405568 925696022 916355992 988911186 489354407 275640316 905553701 441976468 444589792 286647735 238026785 987947466 770244400 828163672 674538438 620378451 167929296 44810743 788838093 786908924 528488493 18723884 769733201 925911773 867670130 688687530 715074502 333293948 653995219 320161874 500029850 370148420 476895824 796035139 165625347 738961834 596981340 295433858 370752042 699875764 243291462 33356265 455268948 830460117 241774381 434931686 803580603 798986520 164677808 134639641 101893003 881391044 121429298 329865745 605622059 254080295 945213209 975926374 734662685 903766752 681693116 302975679 830609123 544421101 145272833 616026271 906458189 396878447 759426339 617346598 910406101 652186386 343435840 347504094 181232114 45772151 153504441 152008214 874796697 693408845 96387142 311865189 839891966 147094049 263335500 865058985 769127725 780463805 545504859 392382699 668322783 212971610 603359923 949811574 105644643 101271912 994744074 926888295 203666208 786402962 682602512 940958660 772288811 207639060 839242946 986169957 141374915 251815570 549343900 668534849 53829418 50908766 870064591 628801167 762205221 452070726 845096864 788716625 942209909 507032570 224815001 785772659 984053498 961820418 701459621 792203767 692795416 397600718 41108884 616420466 710942184 134767536 238482197 823376043 648551240 748198183 692937987 819422794 356797230 823646179 255705827 849165958 91288580 536621657 358079961 673206971 461192929 848653012 953915233 638905446 75416822 301218645 193934075 285891246 349496207 538905435 659098574 168950543 622381810 664148382 471600395 991488517 765298616 43113335 66209770 992744689 890308153 641331559 977932235 297484564 977315121 748900435 392939247 934762185 826198574 934598455 702836063 604250380 469075338 701792065 108063830 548929693 419290363 232909290 138999503 800998964 131723290 323653936 998794600 638298820 245278499 331838570 22240642 179844657 253989206 926722813 206909026 753764696 802077765 925930454 803549766 187986341 990944243 976600770 686888511 655693233 619202227 157082982 625663482 368168385 633423876 273751358 347893840 769950298 373812652 923211516 232712979 760995996 856532670 635075017 447709044 160725154 989118455 881805111 191369699 874823117 21654286 403699791 813416061 667167178 496329925 200790035 236124215 619065427 19548791 372714337 365446577 233949053 612942821 361986448 982897568 522332747 218324590 180792831 627699532 576440429 768853121 128194150 113794042 797906936 748032202 206160465 784023273 151119076 827253115 750108291 399758698 880749198 352872735 249520097 142119361 59332590 265979799 204284663 791000352 883002540 523960281 223701139 813277555 264638448 591204284 487244516 610275727 88741330 865846176 896453179 595362412 725681861 709902683 913389996 57295344 627650291 275811673 717264797 218800009 913478680 620781389 924370092 314523157 22935150 67035867 814131007 437625022 642651956 543600101 18151759 332743222 288316109 764248541 983858485 98029324 959635267 387755965 598774018 816446696 945105161 449508878 82057759 413773227 185892010 590034275 297112945 179680078 983134487 648578981 544032466 190525314 227608180 275389676 440821126 682335219 898277841 39629191 631459923 731846765 592594403 203353769 687369967 43550809 626777927 833349242 449742629 295417125 971838748 367265294 264825051 633950467 268944068 654666265 329109665 257822653 504429227 684510460 229871704 579362078 12543543 701999168 552121192 287988565 363365855 660853641 943019015 475416089 600396870 409031131 350952432 115210660 167092026 510941836 807693710 472581457 106164304 159408508 362725827 921534843 105901754 435247146 809960675 936109525 969380631 558129254 215028391 849498980 616171454 983898620 433243472 443076376 783882336 779166653 164319332 700832537 346922292 243959720 86681078 731751883 315252590 813025824 665397246 680347069 195150180 221793717 126963443 70955899 209598670 310891002 356360146 256851923 179316382 755687341 409309527 357862201 269710824 629375506 971230836 589508034 741997500 908714425 568495889 418735540 634761488 296497172 317305402 586577878 553798074 338251272 518816867 502476457 236668639 833910697 953716429 99731589 547844519 871787390 213462075 295966596 560837041 737953144 341347941 805009853 839480556 98363381 72254835 128363998 861157207 567032412 180588616 651869233 589532473 983372913 18606151 560883631 203125853 600944380 465539704 829391960 145733633 336142473 904138913 695818502 193876095 424062091 535395843 701064495 61833799 303029545 252051238 347460606 990220768 153111244 652231241 480592431 324268992 566445090 565298171 746929268 69893444 785480333 248532750 885070753 499455862 699222604 778446926 648673389 267937517 53464741 78824315 638107162 901220265 130189536 666856300 820844966 739204652 229844289 262820436 345805529 448322636 820427275 54822908 417447902 849157028 774289846 484876160 947745014 713204018 861908825 177518757 927338806 17121203 798653525 926506801 764019920 330464806 390819591 943221119 369073299 972284832 517838295 883822150 96361036 97774850 929985251 306838418 828377081 594081976 82734198 498354818 418312694 256748500 782349875 991259327 552624227 852701657 395757227 525966031 545173919 957540331 666309463 107886083 910869665 891672720 765365993 598319034 98409060 695892473 743873819 494600860 537412667 314526 996952113 194129292 49696804 212021507 337023137 786714260 457708757 66511978 913572119 398844971 35069526 913291738 310139288 627306676 750867458 338526708 274238327 588653223 152013003 110549036 199926267 491806437 923787608 48383298 528571257 991940351 403492179 3519705 80826815 38312647 750693221 258934414 227712872 700892493 639559236 371569322 577878197 802162818 716427645 575529092 15306679 238412949 949895059 651013662 610733511 288728815 269715338 686329550 741208704 509347730 199928763 155095953 528560840 465330093 613326724 167120333 342172595 884883878 53740690 554594843 427078619 690148523 648980800 792929633 336888395 90267201 430144551 705474223 850068776 257259990 188232199 182344109 300172180 123474122 964784422 107442488 479066127 701470969 953683030 449462195 166114190 624343115 120853770 985648341 557955277 103835051 883722413 356505213 927183472 769057861 469706385 547562673 168589471 259060025 969166854 133783890 226337072 926110260 322652216 640020423 645116284 504057059 862869972 406881629 520834546 257997230 529108855 219060888 232390085 506940149 468733440 33996032 18270040 425521574 561963977 404730827 922026608 560010963 251841908 312778838 187000224 139256963 566617334 907491977 533369194 386641634 126447218 612733802 336421689 843651664 407328631 184878617 454963965 940962305 523173510 675422536 217117768 453372975 556964151 526997945 503078007 943846619 356952052 696536834 380780509 876321773 961712578 841682471 175480592 4527508 81113520 442692662 125711782 711300449 563700872 835525658 525443830 114244115 98400145 950879853 611268957 65669813 282719550 234858034 181742290 216072464 977796437 209668287 630079876 594518140 395815432 754689575 291262815 501105677 35136517 958431437 995713704 99901575 265297155 733068135 858029240 677086629 685924359 85018614 311301927 171278904 506228295 547509034 373528559 970321348 35092476 938396033 319907394 960743466 763089293 706785288 17473800 791128645 22717239 71857674 100887028 297122002 241977703 262167794 141754670 183329630 11973242 451281939 676654054 86397682 312817969 610597283 161277392 54882515 612980151 298681714 293018356 81864700 54084556 891050129 207375748 264562386 714023329 68233565 77210832 476137755 181423619 723134870 44301614 895636085 935109202 913645718 147612751 773922168 133204515 61843319 830910019 419729559 732732544 842079005 371262755 708814602 505838779 390573035 905612249 909353853 912496239 820258219 480248641 749873215 249752922 844013032 861821051 170905738 729689676 35410485 121419502 38847174 459209610 267719185 436979698 891479182 636131092 183306464 828845893 704016428 778383312 277865110 266124650 809187584 209293716 595006376 262774497 442927298 602216016 425399319 412014698 404407683 871735299 754555695 721857195 247236462 327248433 710282015 360220496 176637245 463845570 698636456 111324737 690006327 342229799 487585068 395065197 426123284 485230038 502726900 74558838 957683507 324727809 407177552 367632932 782521268 390353784 104469556 75823230 516675824 260940909 940957074 578040957 577009623 323727158 550737110 120444576 661414004 396802015 930767661 35179076 634993345 972635406 688286291 376700045 585152358 194720934 114244894 433746094 724361077 305416166 363749884 708692931 145921292 38191942 892072026 906554563 29873722 131257022 519680426 944431733 658339211 757378429 583396945 547980243 92213482 983760033 923251755 871333473 46769545 313841066 638538864 194192308 448595780 191996619 571569456 961764906 271339247 140658439 901783296 658017256 421849219 915780046 73346638 498022239 219903746 422462247 21357245 418111822 549689025 522959747 659698637 536801173 370827241 950553396 778020898 497410542 130503323 604157918 658148179 817336785 878468488 622292682 346368500 389026472 790534530 879036849 606175483 847056243 654518345 371674236 39142167 84513707 45285998 541342997 163430774 362463221 493324709 625348255 662259954 756645655 845983729 653350905 924565842 102277163 972332079 123553010 117459305 929906495 650509866 247543081 546294615 154434391 622458234 236623180 278713069 610673558 519740194 992046086 58573988 820445431 315752162 750441991 847667579 542940949 721845965 325678856 495228283 44351135 131629728 854432572 608570907 121600353 325222975 27748557 54945296 138340641 326174092 642320541 652592579 545212191 870822903 334026724 218885340 249262682 982620193 251325868 629393712 406669382 763236402 907868204 421180606 752812382 796295355 325962937 92524210 586281308 747336052 924842293 898175662 747246726 783668755 641922855 194190360 732938860 350481989 834155867 578501178 994180368 979386278 87315551 423131309 486423953 152758888 14682334 268617873 381179739 782956893 130879126 402393688 998215847 593790178 8025687 934279221 450615464 511516036 305185146 820184318 827459575 5139297 186998130 194529087 595181503 587037328 415612909 391368713 719244691 247041571 140156443 308407111 512557710 145709765 225896539 671342800 250416721 622064774 907844935 119186761 751228207 479392177 576548659 533157387 767799029 197021513 432808305 452775820 854592183 282123850 535849991 529426942 4736046 885615170 660621443 437615681 824291101 148991201 343761603 162076212 916203147 515576224 935649298 389014092 362914522 817116612 314349910 757613620 801751315 839338565 533834245 290081760 659562581 174441367 888495284 740664360 913869511 336763759 634401504 57655886 399020089 914862201 938507029 867542408 229890088 595572366 800965167 738028349 432800714 182246033 890211555 378801796 71605393 790277071 177044088 391810286 899607198 84294910 135287766 414189099 556745018 912288188 938646388 852290234 117426405 466993302 145059961 451827891 666815500 779487397 884988921 417933861 521224227 594679809 390869113 714343998 460449857 534420678 673545799 350856658 341012592 693668980 397608133 536206510 265192264 30670922 710939777 640919905 113940266 905824111 676663824 297507415 762801480 885469028 218974855 619829001 425509108 433918361 621954258 747787438 468604749 998180929 563818287 972672493 737098232 592000324 406742800 590264575 596881177 583663134 708949066 177274318 584972997 175545822 864385811 106634931 855023013 635315344 844962491 678978185 760633685 28000567 441081876 205230884 347270956 914497891 144173855 199454145 719551378 363870310 465357926 700461296 745037954 594091121 922610479 611559978 671838809 598043193 600830241 738930844 82921774 514872591 391335592 997379508 989029564 120181195 667756335 241051564 216956001 114059980 976028166 907797010 586065053 837445543 313741105 768694215 456534167 358396621 289045169 786547627 150513182 778606728 746061686 299422449 482648304 487428800 82214097 861624153 224902669 960725095 574396408 499901125 728843708 206642398 991711033 826119507 984766804 986966898 184911730 283408515 695475574 425118237 268596170 760558007 613323491 202009393 264587763 493177721 774176497 69898380 364235674 86760813 621662741 683170628 319332585 80386731 551578423 281077773 77329266 791703291 299320772 560351538 598068727 63031068 593398876 175384638 62806130 182935951 566555682 626122425 454629501 436408975 718496538 316701959 946429351 860815433 526288828 619937104 42189423 377058095 977964557 641546352 669477210 383148834 556411220 504776169 652742784 933255167 388717303 124145952 895220569 309266059 200644424 79758265 686661552 439856109 981759089 457392331 654196248 915459536 340047731 252514409 181065514 481508403 631971292 950920531 696632691 867453003 434877035 292625872 113956986 715337898 421624021 228823369 927051416 986836117 754323862 111543312 647760381 76412058 949512796 987715010 426314736 764087634 899273341 451829008 444632435 739436252 169182538 474929785 691103817 100085326 463034005 471802584 977322934 768852570 673928999 361383610 724676160 278208153 973988973 569048010 105879608 319788772 24613271 629832066 139611641 134568198 917859449 349840660 800741639 125663150 28121172 791840210 604307137 739194254 21358870 417609280 105513449 21016617 555731613 117216937 569803984 366518543 862378872 28018299 258795847 50072757 692193150 512794745 356666933 329827147 326193873 712370028 958832394 103019036 700953053 169176022 898504641 922555813 245739370 312509590 951251344 471425758 19491156 348260947 903326466 908755129 669935826 298672922 111274728 914780194 245266723 253579050 487417672 184501609 61884325 300462937 154985246 779437434 541125356 747884721 89807263 325065318 197369455 955745913 16580798 640995867 194224072 235594711 730357811 342699182 38423211 24563986 854320719 215739496 659105020 139779425 776436498 663809607 368269437 604845180 328567016 984464975 648801255 597741558 26566989 329084959 998735532 899036746 232670717 590218946 356795293 366357866 689879810 313025206 245341405 109810551 523520120 887515073 332780920 983016841 171654987 115885245 460981537 548897227 793073241 726362705 171869146 610625036 59580613 279488857 158199362 938435844 125844184 839180338 132696679 60037913 543941757 710495228 332091579 233457529 455061268 963866416 946611459 703600292 148689505 696944174 875103309 264466040 165452097 861010004 521513298 90177840 797814816 256645533 569131239 235548646 535626092 646099127 379757483 973601332 130905112 962264231 278287731 75118263 970887951 591646325 403182212 760766153 925485294 494730582 513301900 463165216 780560452 857250503 644614855 257689562 509855010 422588715 467823456 66395047 639078336 356700457 400713497 135973341 68706466 699459496 679551649 553963964 408467300 934372578 194281338 284938915 28770417 385930379 211747554 279402934 650824474 128942618 378209260 394976140 99185650 592359779 32437320 66462054 536875983 983598833 892202417 743709981 810268514 382991139 556145517 249775606 642869283 930997826 559682576 983419598 950158829 896534728 100850230 165260636 78487830 791904491 710671110 22977299 526245796 110428971 19608251 697735113 470857334 238801722 519479400 366360151 926024755 6776688 88146367 9528334 115429103 928198674 166835773 895821986 804330680 256033314 205627008 860452510 935332075 959582722 916666869 537002926 207794448 818219085 728340059 943964972 943069438 426432888 542055874 276182236 19178829 502653926 456712937 240201446 129600247 956213248 816307608 397358728 292677703 464727220 331275112 369589058 74349811 273452450 120997445 632829542 832276547 159923562 673326945 220044228 33989268 240688127 447622581 686138062 102781404 885667148 286246714 988200052 452060863 793020733 101776125 998758140 311194088 346470498 517420391 299534807 748912176 734254606 101341164 202979197 426478050 656507520 638818918 618844820 477078056 838421105 954835269 828879866 631552416 77301885 443719367 597022220 853248397 268931498 26337446 206183128 17980957 61103922 673529707 706476171 596073535 459417455 791869433 421946927 222583246 547581690 829687915 139236664 819803807 563130062 99810013 924492078 84315699 573120196 497789565 122315293 267471590 604864702 211783507 949632281 413479289 53677184 268549479 957372885 25996535 969073318 874542139 28039390 373728237 368211258 97878420 577553928 36728404 993846554 921529857 903151866 893973452 819188878 926303933 493761181 690051215 800379874 486644942 400341825 934468984 102739937 208600704 714486999 611859787 23874866 769570630 856894466 576708467 863924214 181292986 319841698 288427661 297364838 8689827 68523594 13605195 683233804 579195815 458906285 80935231 742505467 887743403 235587991 687361323 752369385 586734496 84289752 238151233 614786078 244733357 332343228 905779427 101853314 121190427 137242639 815382526 350935105 380110462 429266398 96129772 93154672 423977271 236788462 615564829 737926620 175831838 495128552 325613879 152707453 810644428 807472928 233611513 821182755 474988946 448323199 202176919 872295043 994628439 321972166 728645902 335929482 727367401 817830236 419999965 410504116 941520033 998492965 946133710 334419118 148210882 121936416 59796102 11143979 753312942 63681859 235419487 105345458 464377578 402749119 350989708 280557265 711727623 859139297 549150741 452693025 375816373 388583352 623385082 201198702 14523507 99950224 283343324 463801427 964485553 747192259 161285767 600555452 639188091 512415573 560183089 939721061 938642293 864173801 689700112 265258339 355286261 256667035 991577519 604248962 160447421 997686105 25949457 284102160 430547743 224143960 22481301 107246213 436887043 137458745 117447465 828475678 175530517 688303348 915957270 479439429 611244583 279286098 450693710 603925449 898920393 212419012 79231835 312707255 983900160 407023172 242674495 183816694 159568807 161839480 483018234 933678000 340298701 141501646 77531081 708732944 986772958 374109228 610358998 52644364 145807556 450669600 621991134 927611055 30572858 317437090 601470241 821015963 314066446 798413697 613964225 717738077 959785915 496713251 805353775 857605229 225830335 758871313 384852725 291215734 410086797 704809476 162428807 228151843 464723254 35130522 122344089 102277513 712643465 849802181 894372939 468861976 535320827 694069623 776857184 332690819 480281148 509367251 575654091 686244162 90896130 826916730 845332861 528374827 743612550 946613593 657767882 29551918 638847523 535172221 46009424 910604475 573185042 616518047 218757537 844883871 489758830 526739504 962812740 766583279 303303524 530574618 437638501 84465042 661380407 735990098 159097727 421183254 766728951 637395595 465968837 943749020 449033707 37449434 879478317 294791866 904110569 461016338 438192989 468326861 646494769 787559639 945657362 245444043 286050441 165686848 229143693 897395495 232662639 801981289 868318121 763412925 756647843 13596554 468879351 86917533 185161095 693599948 125575565 417146305 200581104 237845023 324923268 768131935 215078947 119734445 595687812 395740378 982612845 920643403 486518447 321405643 903492755 705534676 62664903 380539991 178364837 736610833 671329478 219785059 625295398 611775439 881317992 789898655 147081989 2310695 217976941 335522954 946295039 342601548 27095923 751251876 974612578 764187492 632801733 374717517 177022179 453763973 723913961 727136583 577899893 252573706 887514421 193781272 330705664 831161477 51096911 678844586 627021857 662663013 962971717 270802086 389306140 253151600 358016380 288450067 539696494 254201641 21132947 512170195 961048819 137673382 630910385 892888339 886379405 275654350 580833768 720690798 434048991 579347422 445508599 162533693 481853323 29764728 523169610 369481856 348813827 416197701 103799123 366778948 95939065 780483205 185948784 338768898 579380052 212890950 247387188 19481205 336827030 815812063 188235701 421857819 273380597 104550725 830990290 194147948 887234521 904323293 205632026 117614076 326641979 508146886 189554486 117531137 960602364 635086844 716815858 294158242 767963976 713253031 996259404 753942173 978668356 35464686 933210725 22830719 513038535 617366347 796457010 410016533 685233124 248748440 818497810 120556365 277556757 292357483 327127140 873370174 170532051 163746343 42468802 561629541 277950762 707058488 867513905 958654885 500822480 818931521 800199679 474975958 45677369 241385288 527879995 430093349 365223272 629350172 208712073 694907212 622803380 301436447 132175781 9057741 352247206 151514679 855365470 500532081 965638892 157947405 478758939 710625872 548683706 979347208 189925068 716696702 577711728 923158460 134987357 737529971 186515453 773366640 14210390 629772749 730298180 585516714 718252308 680097663 816405005 237115137 175352732 139325161 80763464 424503486 699529881 440693575 789335585 651625114 759842531 584457013 619129508 582464076 641746436 408846395 154850197 249883184 966312060 175508478 486858367 886794729 509366847 255809639 364526518 50743158 285533934 386755756 647955643 73375900 836676415 997032652 60657758 192430472 293388080 106975255 803227188 37747190 483607878 524506167 998571523 335475102 636397593 287138100 629153987 156716846 891605797 756981170 927379236 455095089 433406569 891885767 561023052 903168875 46165577 753053535 218316308 967240885 661877097 929125712 915008888 286140933 232248675 160028579 653179751 938812431 939771773 566457300 813999370 492298261 298134070 334621618 626206101 409732897 181553288 208945854 611414156 870078891 389781468 50407225 465339129 146660784 821124153 577844924 732431818 666652391 731673099 165192011 971759681 120755351 315764603 7930463 916365718 191562754 948004451 464633636 816548003 406619554 52014177 12680748 183891740 119829868 122626981 527567892 611164416 280455946 718130117 479907234 451920177 67603892 979809490 523307594 552284057 430611709 202517011 594332977 629640577 23473960 250530361 883307063 802511805 496149259 362117200 341785798 356218024 993925646 178055184 32261848 333242742 725076643 323480659 216001129 758814569 603970114 757105013 927219054 320889496 711945465 197049894 553551568 967195336 129518744 429726462 323513303 567987587 355030191 970132417 104461066 628089839 597275065 12318112 724528593 909268837 823293231 664713911 979131373 923723870 805204884 328717957 126268430 67672516 294278842 921096431 887133670 371780749 351898973 268430758 40666948 681554915 891820897 692085513 243370042 407512073 797690849 797923668 108826206 812947761 865042483 437976076 916951159 982342148 280070843 646293280 356766088 108901187 347331482 779096904 425289875 444033457 958281078 378683450 6755814 731402621 504393808 718853802 443678342 154419763 935134972 636565598 732560117 883352764 965400988 405635095 310918320 972485010 974930598 286065408 585912749 248128606 903775712 217402968 54961836 209665285 659643471 975070610 59326642 411592363 986394285 928613742 324626084 394221406 510028516 949387137 873954746 798797953 657051162 624718174 54553547 954583690 593170648 497419375 214943795 666247019 656396126 369472012 940087394 80716918 631801064 397741226 134053860 171977023 613436749 391201238 142217751 110725137 739509078 600667339 417830334 211153190 110339046 736294084 585321757 261991604 495694529 894818910 163093653 241348017 751659439 261279403 619376310 57845345 528025322 676239225 571733428 958522743 154360213 200126545 817267580 64737080 878355292 184386096 334273976 882745934 656401644 429437796 868847219 457314676 328979335 180146073 274135537 331796971 159796696 39891050 535806743 497721431 656403610 156201553 93816796 103377271 833073672 52026925 243048493 685279358 567576134 996340277 485365683 458493889 662677466 989920966 997137629 716942834 100931006 552738768 642942091 725463604 43547727 738977921 759936580 110508238 994146065 784999220 749215882 723826990 745051726 717832521 612110014 484204315 968789042 986583456 536771021 181027257 370946906 612111324 506493 685646417 349307352 938945565 981474739 966847333 652517416 710066871 790076588 830632858 520479816 705431863 794528323 248967875 193695826 196094019 135396475 128330109 544152863 743595620 239645717 432272226 99209415 515643725 564846501 233499172 822334516 75754116 268593737 401502092 396017929 145469083 525059343 564223693 959719964 712678655 89744360 776961964 139785225 695301522 386196751 382356180 407341989 426991496 753187319 456916521 548411583 364128820 437842396 704262267 205806664 241661304 346842488 616349011 496600522 173221714 572385966 30767641 202371535 183436703 771777238 769999382 629408139 610839421 104611743 961160577 151841866 916958484 933211927 96976950 25026757 321844089 619687192 450153461 911863806 575432291 942995049 587783584 126088643 557363609 821428952 697917420 260035081 850948882 797694238 622838760 843574952 701637691 338503666 891241027 708077811 13559981 102278037 470615026 105019043 665924929 814970957 816497347 702617617 571556957 589267239 64972142 216754831 755217882 150107180 446089645 274668882 13482662 704434073 58489457 200435796 284565007 576941760 978329715 546951892 33166992 514079451 327725479 919617565 154913655 806559359 59011008 135444363 178008612 979834868 38650717 124571668 180770810 726479363 945115021 320037033 142618943 674981025 902210074 488415057 473145183 881339975 640995486 808475326 233650859 159225590 574311920 15551900 397434559 608115373 756270698 474042575 573062849 473899658 673260135 961399557 724081491 787304426 883247799 428867880 484715842 543316025 937095453 220732825 147488555 856394061 984838051 356461396 489378782 823595195 376749650 627543579 378396950 632790350 712229886 282285026 7862518 870987772 322698778 128438389 38378137 519322328 364948298 479657716 704392247 117291355 150947001 282436996 953606034 507470683 124729464 72018656 277525997 430225067 518851477 750884803 543172193 378747634 200332521 761075938 6591574 730320001 23237602 432028244 604954128 568534420 78573755 930604166 724548731 780007082 121636613 444227794 898691976 229403774 322556474 118748389 840243236 807253494 587079931 102771206 899140482 227172718 767833627 760840972 188940347 533740999 734764657 891058208 187990799 801004916 638381291 509348141 99477005 128074596 454208954 158293752 769429789 699170885 416002012 280195484 567668664 948409510 717521795 450934955 349328697 771223744 36659934 365589994 5548984 952285376 161466311 948624078 992095408 372041959 555159071 883547503 425520170 129329176 682954514 274394097 719592297 276993820 966734512 68961102 741378795 781156800 963106504 744468701 369297243 179487314 761649003 633217449 786152967 321012672 205732355 545572067 669942176 856824154 97034069 262910448 365421723 666834971 619337447 236061494 95676068 481017695 48056398 147686750 405983488 488224231 196840994 363881073 40118909 570577669 361443246 522439652 573978754 76371450 188689979 624502139 960357894 869715608 569086504 858917668 331452282 155890630 511360073 443569483 318605294 444526048 59966424 984396216 843837554 747154002 165834849 292330806 786971471 38152190 687399692 112986313 532166726 162666693 895233836 6664178 273469202 397098358 140835299 559741589 39770498 99776427 199025052 907520285 95150231 945960716 328712177 317419152 757519739 668825996 867109200 63504130 436977972 657237039 70938927 168442013 218141255 259826390 679538328 283198265 601187555 763877934 537162332 774717062 586883545 145329339 490713383 361604803 897979702 660362614 171882957 729321776 494242845 358291359 245703816 338480149 514286280 990396094 875504711 835727998 634567701 815092663 869232470 46928145 131779535 120313030 367473081 965763632 481515177 973373243 998990165 382266161 985005002 707508486 221967816 824008724 181263510 160525648 362824803 783718450 848179414 880531940 800506780 674685243 733323491 410228360 176849832 226394144 341935010 899526470 864346844 852847777 945420303 211532839 493578640 936166017 953175841 967065594 657954648 917062950 782432630 949283981 110356890 108617021 574138523 335933339 309604670 435129355 700935587 859473653 285633768 690044924 923965280 244103617 471393444 910032421 62844587 37538201 277778188 381417346 451314023 941357813 49440282 402915350 1616588 566804926 269016353 549854472 99117756 952932752 42423345 383975360 253355454 782436202 363119708 465401373 699933621 551160124 394574697 455636801 167292422 850086818 261906808 800398132 276237725 869549041 92545516 411186325 456039660 506217860 270990532 948464562 120208315 978432541 528838603 458911744 593245763 590746764 949944129 325344643 245129278 289412243 978834895 780021349 78948345 627341396 985320839 883664831 603531799 682526431 312143051 165847714 831104412 31867079 306569447 37962270 978027833 359875511 749947636 666925686 662390571 133568749 23935730 538215519 708996197 241599498 270632880 991492504 692412692 156354895 122305820 763298176 531221510 640526002 518265072 206210023 121575454 392865421 467431360 327453890 496849709 167527116 725588568 549049381 228001934 373373302 297400799 419178514 707991595 428681859 94534019 63729395 838170586 907382678 803243358 449058885 142733594 360647914 90884930 90201895 962246758 953511586 573162729 787595043 814872334 461495325 558766957 299550872 873362475 168703683 432818623 326768123 191393886 682342988 22958209 630641613 297287384 129791128 576262977 825881806 854916803 503780830 464216566 213164072 994621316 606554186 606052970 12578093 73306210 141722922 367570230 540022267 920205480 143618026 694471047 583115471 129090619 818326037 227647771 260002580 385068226 86791589 204807069 806971344 307763600 141051789 909540172 165706460 578828658 889933948 674734246 912852615 907742097 788726733 698460661 718091072 625312017 556739708 79635418 662522275 968978799 783168571 348776961 571917719 546606077 381135408 693889272 382967918 64947332 399293737 426851363 321324350 251867860 873723223 825276290 515503 431636211 599549682 185805888 52421051 814099460 694884556 478841488 304848276 597589870 300395374 875067097 342815582 435541312 34992714 653063484 723448177 408064744 399125623 471002935 252534284 868938088 728943777 563961507 488059814 538815551 677498011 190818313 431220079 86928558 874042267 113084259 455739621 237818145 930082561 740139265 457486787 716321366 773753285 771597279 408474437 85275835 807587702 23070098 646845983 685799323 233383841 21483497 316225367 313530239 851017208 786317885 510949227 319715118 574564400 663097837 848345271 137751103 270452572 816203241 780456655 309120348 598704194 157632971 864206593 179391539 290096138 733950179 263633184 507085353 229589832 173534233 687729451 877039332 74952048 802828860 525344706 43796395 688031817 374393255 301157519 300808053 736612183 589239047 941370494 402013928 996748749 623479126 257050534 292873933 880917528 59413934 154733376 55822458 869858681 804732494 762140097 786660876 465856168 322722627 405896605 800810713 922937031 901915700 854481386 395494874 794246942 478795577 964383888 408359455 281881791 513072649 620622095 561407142 36171840 346126347 242130981 213503592 71356604 144814872 346504018 445179903 237982067 54961684 737515630 473721618 209609013 263416135 389445515 570961625 83205998 439839974 455920102 824095000 30225379 744278982 417442729 619465059 535934678 226730727 312772105 2921313 271517569 189317877 226746940 678184786 845771527 183147221 278848673 384468416 728626904 594469676 316284456 471813380 346218099 228933133 653333818 317290247 846453886 130030656 929097104 734014014 302538798 840970637 680551451 536987457 525470265 802246675 999027894 537119094 802058318 369918387 309277088 772182028 187575699 57933982 91680916 574792735 96333880 821947708 438744720 902353799 672333755 75151248 379668355 18354964 152215272 787342577 26288605 354169723 459663665 197919369 12089459 928729705 735221275 530824867 898921813 3324652 422374399 7731831 628587207 991368714 946846093 831833981 434772787 239858942 167233283 592998570 368848476 980917908 371181311 583473314 330830492 113481785 761128364 81724175 319168838 703723804 379461002 278684843 279020999 393407256 802444583 539784381 72236828 650365916 104215782 733892436 753721390 796166413 461708577 768391730 306969004 387914792 638015093 293415864 391683821 205165563 328271487 856151690 257331927 234300229 341010167 451789205 296182454 768364598 344400984 93278494 58670026 526666432 995310587 839721778 43945910 307480558 264012362 380168381 713211839 341110768 870837208 154007995 585467421 651467644 861973496 754829376 953478397 577365354 435078811 962951665 467103182 300953895 742132259 691561227 177595195 541768313 669295787 248304811 999563812 360035011 833263458 117163131 232271250 37367458 447712993 738205110 795484057 649791096 417314161 558668974 475694346 37468459 904227614 487594460 903029955 172060409 278360572 55099261 855307330 850350061 410056231 387278524 831337385 567235552 744338038 457564843 617511416 179508812 31294667 940793025 974811787 690430653 404171825 549232166 507325020 600939209 88295008 101002431 189047039 612873652 357406879 15116675 547880340 969892744 396739361 898004991 147343017 44367791 901620512 995557419 755935937 661830528 346238806 31322018 953767825 463967686 814930483 3373324 238414838 545345611 983097112 706706394 63894454 157207520 61891665 782905936 980810459 606443951 439014077 892933275 526519764 709114382 389115416 51120444 929584584 311049549 761665823 460541661 384424218 932254958 524931616 876752005 503278567 396916334 443089820 226744668 283592524 391436153 855439293 124649557 881144269 165051132 857894883 671378585 157004221 657546784 433028305 43081593 913598038 649471199 21704053 282142731 48454700 101023233 362216853 585922501 632034790 48685856 982496431 789837790 84842620 875938735 727319011 547519449 291114559 63089469 733495326 403113010 570626748 796941768 215629275 639701205 132782793 531053410 12001260 24942897 578226347 494556106 932261486 380158177 858045413 253266404 530356664 581052044 463202716 761352917 34544762 125150056 611467425 29519737 303407090 890182625 616389617 454403854 626512501 956693453 944914459 389284741 192341071 767048 317233062 508871032 495288284 812620994 215903260 241119758 22648533 856335987 891081163 19518024 20326171 599315837 621320232 932647382 464730726 94774219 995150567 253446812 550687372 864954806 973817273 797851909 138885869 737571658 433390015 385700485 497291036 132350866 168421389 537797830 918771067 853757234 226674267 129385138 592091117 208732171 563420166 245691721 713490237 630022521 755375886 904364905 191521674 848103264 305094301 912418289 441777661 778055498 448449626 160844639 659142774 147411556 184286851 381790626 932095172 388850615 982280663 577014273 547980785 67553321 675720528 749303520 776360018 688693819 41296480 471399919 162203673 22364331 269123817 461898187 808364037 549963796 116213358 717963188 685502702 29474846 681535785 845947154 793464189 95065269 638157525 288954254 429176156 582559645 501389626 67948463 65259068 18688865 943785222 771624950 856783593 11888973 989894756 258136257 56615943 126639047 739324956 639448034 214286589 969995331 152957814 440469341 270629566 163868548 994986227 460968583 50181682 10462187 175988108 903305105 379224102 718117513 210550605 557761655 446270543 10802563 588612371 397903822 812107269 924583531 688226321 46202018 338819686 452924626 889766107 261960612 483322543 239476215 404056962 419683807 535145517 487719538 975445861 263238073 431715679 772383437 8417797 782578933 626009525 915082352 705748820 837303714 844134765 244206183 380409422 416608064 646158363 952424531 719660795 747241932 944135301 854963324 836765852 400300116 508930204 486291498 617071267 604236437 41402461 211123236 400861443 353856679 558883455 286250813 643436864 970698502 144608998 832828564 201359556 91834754 491427520 814557656 952457191 608386170 769369362 162143684 509128005 323869684 663855691 526433434 221133255 827052591 198321812 735232838 394994561 368560616 785368519 920937974 415006036 369594804 15076441 324370130 707860614 458428928 91904686 370226494 146669799 142331484 969892519 720863503 45836429 960600227 152163916 834222395 887806077 339088347 118303102 462406922 154304924 648844721 636803529 951815818 971232270 833530594 499364908 489511209 77934012 286939092 279921522 772482030 109954789 281347588 405162471 86398234 940386929 45793520 770756924 382909563 591908540 210285171 388774956 281550945 865172792 473528941 231994168 443933369 915707325 12897555 215500349 355304365 429385430 791828387 311441922 53950902 64083948 26084125 414307106 124038627 387244616 836480693 693278321 335500824 751250185 477572604 222076491 86739326 940523581 292375544 810875904 137582552 36273949 249938100 431845213 275657064 786237722 444996668 47469353 793271467 348524774 590084365 299520719 66518271 923058492 550698484 770301216 639738579 60540272 575984944 697909329 543245028 5616810 341357181 328575638 643023414 934400356 109754016 200240025 239362140 153300368 354297046 637332738 420067319 953882142 405799408 889120012 133160010 130012888 37572219 853179643 482286544 842700966 858186136 297679268 583635080 803030972 281487640 965303322 980451929 678136752 638093732 578457361 291702918 108001064 384123134 720667481 259687445 808521056 697503601 567896213 264436160 724826860 118112068 656917768 453316486 573073285 134071483 626399230 517199197 244467559 816648271 677423727 123927006 324043293 342191212 307602119 605882645 96401678 314454869 260467491 783937805 307934135 266683064 150943052 426119411 338112354 884846347 937607536 766062804 201742425 505698644 313872057 697603254 225494626 619578338 827659398 463965263 905134504 880853071 395356879 32204519 934224300 607546264 835922323 632817520 758424244 537158928 571085837 323060159 807210524 768281392 747218520 496005495 495665264 937572976 552651659 942561688 463811619 311678403 674086415 861081978 584746246 353599080 886700554 975262169 904713873 221676055 441152104 533953499 821601516 334902663 601337679 795971660 250326129 311776786 99869263 897190190 237662561 839278168 149877045 318056016 170036492 660337916 36615129 280890695 545062439 340953453 708715807 229654422 834599126 790549350 489469189 323753812 865818091 897071965 435221090 105929033 640547734 70335299 273040405 627936066 568611194 604311619 41200447 241767368 111887411 430813137 270429539 238419814 738678861 996319482 671294322 221104894 275052361 647053117 421098489 670682768 297633516 983212059 881601379 641811577 344262059 928015662 262767792 915713326 616369938 482485751 312575931 319912108 701312910 513876033 868066035 986729468 312330919 945870708 829921240 41045783 157947707 25008161 899931740 896948622 89606009 767249533 597105659 611062869 863125863 693550892 565016889 540735603 413546667 661825994 94170855 860404684 981504786 522345973 575805308 992853441 516880742 843682662 318981520 103742927 937741160 157530114 586644529 446959886 363030031 34943459 551897897 558586890 579752359 600601737 195945905 342272709 172365790 56472605 751514488 626916781 376221281 739956674 280554930 65348513 808874994 941553807 57949472 814256990 200477064 73044157 31075001 428434425 229330150 250830481 778579958 407276611 792016667 948652489 648956937 206549485 102598805 961306858 494074710 481995479 74436824 346764214 378353853 445886866 34847577 258758799 171198007 895498257 104682367 474256501 117558378 275638812 30390296 844282404 644045593 465396765 504906075 389527709 541615171 325988431 225168850 261011889 597246164 940111856 734551383 109606104 261100388 790990220 881498071 351304734 3494483 5469678 823805856 108823198 907357835 342025866 220023829 907742483 783472452 889885479 103162174 436780032 999953764 598653954 816625186 705015833 758527140 411343226 211143429 492636548 152290431 294659528 833641121 903586303 593857530 419391338 931595556 955151837 330635942 284420919 615918409 826520590 397643172 585361124 125575566 984971056 305093120 243262125 936175626 749058846 459261628 957090965 796460618 534856621 813034888 524094589 488464343 957000677 449057562 692280224 209732310 450943847 594709720 758719530 934692714 515372849 867005812 585814923 999715651 248774537 997744337 336217440 762040411 165752530 416019707 680611994 576721829 855036501 403325958 383335564 511277587 807959104 375373237 841710396 713813372 105182716 103847289 577458250 645997675 809822348 840573719 198532326 912220105 316832365 652538469 419903068 92422868 688727397 2900814 792335882 182478696 449685987 827439381 418506752 67719266 477394617 264518589 872946117 746394226 416191468 556494922 572165334 981766115 9462748 750269545 86201532 598736984 19329197 407595854 506111335 55430907 553341947 954239485 301367881 860102956 342729777 997931467 2781361 716946451 17795879 95188557 677091546 844190516 781319575 594648182 984668253 109226038 654546941 531004809 126851528 960812051 670322140 130341399 891622107 795637140 403908497 527869485 811277531 440085033 486302743 437050805 395907445 752222534 241832481 104172936 748346 420860526 253084219 240332320 237530660 780072991 49769373 635475878 213920762 844471681 698648130 567453017 496487895 446891994 930468659 141064842 741727551 459534330 76161428 91851037 917802461 85865078 152110310 129318779 961999406 67437076 435481931 425835237 514466276 128105459 847661317 869508415 606861179 877636137 960388535 182126070 50281837 314413849 678352898 901027616 167254277 99830525 794710232 195791085 890587137 168865136 70521300 660938005 267843480 294278030 712653424 12520959 236726419 906498875 442801141 396144176 567452052 746673280 216399311 231886452 240187069 203264524 388310731 89811948 415939031 766944844 88240232 487518475 284146951 724960116 444054300 799531760 918907413 927696223 137572511 817193662 79242199 271857954 598174135 243883540 676457959 618965737 340156172 143687494 37840378 503620377 471552365 355149301 313257392 601234465 468316862 931140384 522924891 493295159 515675774 430324529 116074688 900143924 672002419 41993506 511117555 737024039 331176843 879792538 969143494 296475848 260259852 316741802 150936851 244872837 37080078 134001608 767901868 868422169 837356318 266558776 586215207 317688531 903530801 996742527 456038991 622003541 769083152 344879131 64643236 770042969 548589512 491137786 251769369 510613141 118114034 124280730 392380988 303202073 849079898 920473880 68689604 272657931 922789417 977910567 541275330 896421915 927027895 713313607 940372543 605819889 772924529 482914339 4531998 642260732 645791247 947695949 6359292 528232527 250063894 849725250 418731969 915983026 891338819 265866445 47018702 169004887 758198865 980350714 638733882 999547944 784828248 122989156 678243050 619406030 322737065 235445567 47940990 577790176 77761178 184706326 13919381 444108530 256264988 263258732 124329350 181540713 479120975 727938632 149255464 705538401 521642549 811355301 20957659 149835031 207590629 472765304 933429914 897399969 963206154 439824172 647163157 308851643 718500818 476231309 668247135 117725343 367076493 122024394 503335653 567891879 73802731 513774463 709184523 741564833 916333086 76804253 44428123 982836312 477588383 646290088 780997916 841246130 421183368 436702013 549797489 617228326 837477048 209227649 744877507 954994838 892464700 975051373 833582198 8739604 527923049 617621379 744320233 861323867 668977880 618147774 90855815 313550890 505864064 962344280 762054359 389375419 767064560 181320062 517981007 849306159 801701099 729979691 549594757 888471777 325405667 458105088 601273961 41954081 465636540 489628159 63422486 856336548 372809776 345844949 164825387 562168418 108860966 24473123 26947391 630885906 584539951 647521511 992502899 835847292 416481019 611034093 642007676 174803239 48782652 650920905 718626729 464398460 611250888 643858134 755480664 99905074 978259943 528658729 995968360 857899737 167948265 209284429 105361863 442510015 133141092 51081502 313598463 743507136 463513153 121557504 633441968 669618672 706103862 401504773 461735002 320481170 28552847 958737519 170084484 581874344 922860919 370872373 31897622 734230399 203158324 180283958 533443201 484188920 845165930 614867625 874222067 441763343 24890771 724489510 683592257 780866700 994002398 105353286 452126195 202709866 504151378 194397302 698760883 253676081 140962720 791640576 861081513 585435221 321441484 850657497 518974629 217463725 523685490 260245041 418063148 756395745 480934472 851436463 172576959 456017650 644300912 872607154 358380906 287890006 222884788 808177360 954451996 370545864 8435159 452047090 480061261 441073340 83528517 335874442 391938188 845762783 2682140 263046627 560395649 790482582 163416261 543313278 514921993 854566501 818975772 406284070 16299685 507642934 551711059 85097753 488830882 199812374 406370092 32827802 180272000 541090316 36815469 750118750 747196181 506525146 325383375 351592764 848590405 341527299 266083577 295235643 743076924 659216487 447376822 510027610 219434926 864572764 12397651 875101342 761002367 79661330 204822730 614249041 990992240 729312791 247351648 114739790 440578979 570137170 522861923 590101835 338305903 543941655 674142833 70788143 814850381 225112155 1289878 285464614 655356192 768174539 188183248 514818560 960567290 930087023 840997921 607766421 189471777 808935253 255455887 564595132 119997830 326466602 91675034 884429732 802436369 105594559 68251785 208863990 101544681 532485548 536006747 564603339 498210264 395839984 444807856 633508695 134807301 446105744 757684662 652226613 890765374 162941409 984544865 966523236 487597702 328430221 823960576 421165468 857167255 89155899 664994320 758652228 751518028 149832894 682311717 234961049 903884628 442074321 5873044 43112538 112862145 768592675 892197213 113566348 422248458 748459386 442361046 184477731 659333840 485340084 561775343 199380455 517038848 109191341 602256478 438242786 329229802 379785928 44123671 153327896 882947921 22593425 821569603 113247814 754558134 653112666 519664160 624883900 123820152 626985087 422360153 797005084 482192993 535841672 599775565 84309733 687138382 592736881 337168508 190393786 438013166 243867660 20318794 997562053 699316720 788895209 781035194 191860666 663136230 162897038 807629498 546340378 667235142 226220114 542704058 831863882 965201992 146421553 103860627 911534899 635478188 505347515 670446274 331272442 267922433 888674935 677243845 760375123 653558057 659537490 168633321 393894925 246861218 729055025 333644246 419133696 680170300 593868306 380276781 220243870 956313942 940263432 155144611 98533855 353115024 86390413 953749448 626514072 743348990 835888852 262008541 922618288 220671763 227013852 684322199 522528733 16408674 178322420 647360575 70970917 120051951 596159004 128251370 99162856 628865150 536023451 641162260 8195007 9614375 394046743 206105963 888766521 675370145 742755717 207559122 771083856 489232710 628256924 245840433 630601742 486042471 150472005 521007093 31761626 747864651 179326564 503472804 850284035 185392797 954440294 880320503 417886455 753873543 421925996 335476813 584180997 918653382 351087142 128838164 41763630 686191247 274777809 576405277 425201962 799060932 292000306 758826239 978397332 872174881 289000919 841893882 945038579 925957778 995834717 424811442 665955085 921229861 477632946 243641694 582808432 769379907 517908922 255014577 252634236 728341905 15138842 818216660 594917066 911269479 879014024 880749370 932550291 60446337 148838246 749218324 320101385 52878103 689780165 469205413 967277079 648692812 326306537 164885311 461476028 475037266 978711861 746984960 8281427 967216663 620043501 897346405 767071564 574860803 147821428 756138804 124327078 673968155 579275208 360382115 503548381 43935527 845868378 748811776 417061656 513172074 520830117 395073599 546193047 168200298 814607950 462106512 702577594 606975934 869159712 21872834 518668152 365288575 538617018 271977005 28364806 196617188 809257284 65173689 475981337 87622867 382116672 255661886 519444042 336705530 777137028 98824810 811284272 550768130 672346770 372763560 452263449 193555588 930046017 749667621 573568728 817101931 489916616 222160792 458946450 796453058 377458299 728310230 962192126 178452142 467592114 34065348 877140176 756506592 876036759 543511523 384187795 928524589 610507148 23786438 333651521 148507012 480900124 548604246 195117629 943497690 532201032 542973196 640353808 673842157 624588493 722281590 515163630 859178228 90938680 260768324 734851194 650835823 350795420 725454203 362370055 730853021 221868263 342822059 745174312 407455779 676092521 611179113 279400332 739317681 477697806 418862216 93325254 981580754 345163582 447995312 604892615 727990708 633882896 377963349 381658010 177022973 623865139 369083420 481630106 817656225 997678059 332570746 923519757 182720600 934624459 132897202 876993538 391380987 942924703 726932066 539239905 303469718 985679423 766931187 490159639 745704170 440321419 24378237 400541853 265850280 164390224 353150270 865105648 663457063 692472311 178006281 205919573 25735499 316307704 157146752 587476961 941918754 398692629 958601311 873955811 904802327 772920281 491458180 192305422 601470607 698194614 620468649 150362414 452214000 64724620 126519334 401051816 801536987 776656231 187443901 945770824 565413197 395314116 470378879 620430090 796138487 469441322 377585960 758404488 794358984 900878890 609240407 308402740 154093914 436281048 15670695 593919080 161074705 299786965 55192892 201629460 897889576 639510818 49584699 707601557 72980884 558878595 364902461 528221722 674326869 469621874 934122251 197897171 514744662 357140559 684000160 95941459 87115280 277533736 722272460 621563423 739991207 674397062 438547007 475451831 954491099 36297683 250516915 760708422 654899956 471696658 900367414 627608459 189608039 457993866 15482942 328443826 179096521 180576169 20038337 97930432 877552023 673737423 657952164 168025223 892912007 70406818 36358271 805732437 667309738 196433796 708171401 431994861 935113038 553447347 339760996 254960634 116581160 326783744 779000819 4644392 530079645 762346914 108633256 635118369 474767425 235732779 541187484 401751332 930423761 505498754 683420288 224037509 724526520 153032429 274077254 152599049 744776249 974808412 354961189 171479419 310286987 670515724 663957608 732619285 327326487 586629919 817966469 667315020 211802770 569798412 201249992 873262652 394829642 811434752 521359308 606879770 586729221 244547489 951380903 292092872 641672485 993328002 192583220 236385493 271205498 445077758 979407238 746094474 115691694 567402318 896853079 993327639 481185021 349438799 768715788 255331227 760768284 991984211 62801037 777513188 961790214 263561594 868377131 914774241 54706216 92268884 483957975 971389564 470413047 574118540 118842761 312060685 642871954 606454915 886123200 181867042 494846685 735580420 988659896 998488189 109244200 181277512 273676624 801508839 745404856 639200723 423214602 379280582 43077279 722299780 933908943 71794608 355370639 643646297 899013338 62613693 511853593 881034954 298010609 431670218 526631094 638933940 874723602 144728219 852962099 488199721 332699188 285619094 424342996 993560780 378980236 329812558 147568978 496111633 415236773 683711365 215077086 789867738 892303316 591418102 830123282 294899475 689434270 777290674 578693018 135768231 107710865 184352586 930915477 183467724 126482796 790982313 197647158 552770322 869354453 662850883 97897164 901269298 764484148 891875330 163620602 779254978 613808592 68109146 165814606 841547979 795776762 385106068 275892473 865797195 556922470 776244835 909909466 22713498 493046309 409927275 197379731 275307684 658803019 138279148 355888502 63873463 36737505 956212000 607261771 543972373 953768109 662900957 197011316 155338161 694053266 543112222 500867210 10608414 335262305 735870814 184445956 492148270 678497369 511247911 20590476 291219346 566467294 617731393 889840803 713379063 910408626 137685507 272928499 476249997 289480522 833271749 533898548 990237549 227900841 310498347 723073592 858777124 962617225 702617030 82479778 462251691 164124699 863788197 820779192 281879065 593718881 556978701 416903396 981565197 405235372 220192769 698602362 426391217 430776791 28244846 924005525 217188541 773263378 966080256 663341389 392486164 966570177 934859871 612303013 878231043 371154370 11496904 566760096 966601107 344094076 830498317 586621596 105723661 846266766 73018905 560529349 581341559 145639440 713516931 519663662 69015887 322100658 3971966 144941293 848618412 888643760 14469740 396694912 826925457 53305877 828657738 947972187 68118569 624887621 136117528 879590809 23562460 583943493 200124708 693409491 494494759 804387981 912410019 472704800 817823634 803061338 110988037 270578261 233012416 605224187 908703964 98589294 100979866 803610371 399078957 406993102 416484552 430196890 76907798 465888573 799015499 604476865 110313026 211656480 522990130 580943695 75193268 544556317 432112713 436201500 14338205 286743674 225665939 808570217 697254126 593404570 160124658 712621098 800027722 166405377 801033543 505600040 879440548 623057001 211229865 152798265 542915630 829347850 462946761 691471628 173527430 586729682 665258692 636732182 205967013 929376423 994025314 353235004 560803710 457927413 354490086 367346273 283170791 783386609 31543362 893694623 386672082 676081141 69594789 353240768 708688219 407758222 734040312 650547536 70555199 314466489 428496688 101808625 888388945 292848821 142046223 650575216 146594606 551763717 520005748 261585666 552513920 244555488 217375289 270243460 544104500 923030300 355785903 318404295 498224318 314010688 347631442 310603477 845813318 315518628 477815239 584229406 864514310 991779718 154841475 70456364 38997782 560669825 179814991 134221929 12359044 925624638 126267485 173819558 481060908 308821560 933985756 245298509 728251814 760234146 623987152 797860827 708908780 665027719 125687538 705399205 895076973 720143702 380239771 560369569 801764000 349988675 780444161 763375766 373886817 737120258 554201343 554958447 565104308 89048430 889576241 653673676 373023858 777668917 940661361 131260837 495985349 444511467 437303736 995924987 630317637 806825852 437033322 385546415 799479728 919252495 133629108 62789379 8245650 524058032 856599234 310890148 1076531 278561577 591738092 633585533 641904324 691715856 538486605 659253244 963290863 866144753 470856643 629131770 112661080 146201494 744534047 458605266 10526888 85206477 274937254 442364740 752338292 780392505 708109719 595326677 423865561 662667973 597215086 37728547 675556571 430270477 271893652 952975832 670225073 905058292 671820778 985852270 496299176 11359389 542922761 283225790 135218078 947624994 259603707 397100057 244308024 838402859 735905034 752933226 866532498 527011188 945831575 911945248 994250204 772473315 830722784 179477165 430025173 772460190 796938519 485620968 76525961 430516381 203372882 725125233 699242964 477754387 469204986 692531086 831368167 829419119 986592422 195623960 146482567 623119290 86743807 190702269 858807914 891393761 628867259 105742350 640016550 656170885 178776601 691029575 212466172 57624224 721801694 307742170 738017895 432128645 689291185 968657249 430284689 324058125 453525590 533441782 635798132 161977387 857636551 639669210 612109271 346291265 774493917 246318499 824508518 862853065 709687754 975083740 38250325 602935235 669523484 591689318 795540851 71942616 992535488 686444782 792971603 367397066 191000360 544917983 721886814 414426173 649425254 209630121 202187767 514827722 104105079 311799441 606207091 967541021 728691928 67418058 416778798 439485551 320423929 607288879 347135474 788816408 557332567 366825478 565721989 126271695 895565088 9930991 938357691 577761699 953307513 193543485 507594246 286806124 404255168 192953736 159799607 530275301 323183130 184084630 615875624 554647115 264159093 951287375 988213218 502565259 240668057 550601609 175924001 632787995 640732458 809249632 932381009 804577397 372239242 672932865 215494165 998927090 689827820 132836441 510156703 927796786 83320950 732932015 119229662 612910055 720343823 869696557 639482167 364547476 980223579 396398407 56317177 727439526 988789898 875334568 496283030 453322710 906782677 932681768 785940883 96935716 136713180 94685334 959951603 134402259 593019479 101600614 73725218 777206816 424703352 377058815 783640491 15375994 149554527 654030270 41419860 979186089 81228747 544272390 759351763 408838992 328229822 227334170 773486987 842169197 125467643 957698029 172267626 90977184 908130904 449619668 137514614 452151713 639599711 859119324 23843320 519464668 981939118 286798642 847692043 414146553 135221361 494243052 217829956 488129715 158566736 571630819 446031018 847468851 266558637 332846676 823884765 578119520 190022739 873909550 864584798 50749822 39816403 59808735 862287762 24411645 99065035 38897055 859477291 380669828 166116707 295327058 490565880 634530584 192753628 450731195 396375152 381605534 473932141 488765171 339003790 244869697 228016195 439915948 131622955 449982827 28244241 128223879 477757660 901318230 81755545 455874459 243018786 239626488 551421684 239989496 763273615 999288433 415360865 802048405 965291244 44465779 209012882 12771173 612461749 753468970 441651075 646923780 995781347 947806807 130672069 182165019 336268264 356700541 886677818 60648093 673503748 424673237 97084768 35387022 786314878 80036692 758174036 246335631 406259785 808623437 961780736 486271176 937400277 321673620 261431519 29617270 339222026 842821032 198772454 709127641 665888950 280554979 873499939 468096995 910633410 937778423 648835088 372556478 222431791 692353076 321501391 318122994 423413750 283257743 848638060 599347893 452639255 367623352 790692003 147704927 624146645 938469956 899070271 21133053 852682552 104262885 532900747 595314154 574857803 147000938 462487785 949083522 547037210 69661793 154365421 739106499 220427345 119670814 305725598 280342362 355816890 390637051 144021045 120077582 209662846 853884873 256019394 113306810 975035753 772118007 22379679 546076759 577629996 372952219 951627053 444977168 4209284 76968515 12494427 416640923 424295971 192583906 666619137 967837085 62438254 979089457 73146420 216314452 505524498 877751226 106247672 905242797 678589703 757573731 878112133 961313422 85304683 661469689 261589790 944172460 785577974 474225697 386461383 117745104 161633825 709425187 883947774 121765135 196154826 515890667 763800542 362096246 501169361 339265842 884286630 400397011 844725126 899379779 995590462 826343271 478445420 794354598 690806201 45766540 596323444 540196737 26069581 189008769 983118271 285953979 735876002 510612203 749626409 652457362 305976072 611859262 499782424 814699480 366506915 438271753 316412129 789104779 309405567 859631443 607412271 583391289 409692842 272555249 653236194 44775558 601994482 391364896 892669094 85393828 276943606 919804827 696175558 705072572 279799250 305902030 27889950 540685346 612227144 168319053 720715858 309193793 642086220 410938711 746672762 311598611 983146902 221030551 878258370 754997012 9934420 438265185 166706888 316455465 438111600 858812622 78683242 634006577 651311043 488986649 55380972 557357194 359523159 811909414 602850246 346272760 278451839 304284961 627124706 503424600 582102018 398757743 503680948 940970779 872369594 539536550 874872057 32790411 368740004 980764709 448751176 858839328 603943250 480435833 557568147 95716443 348953013 181474308 650563501 548097716 998792049 20041815 608709489 259747286 191814650 57048603 757033955 507158460 10229941 200713473 649783961 489034526 702595624 414948094 269359675 898877568 286313286 497669823 260545177 331170278 644483581 672628189 640438984 891465827 544723028 521059691 254401004 705649593 671918716 147810608 78078076 774085347 541022764 387867145 980566014 774260813 155952436 567477751 666884902 58174696 459231170 770853938 931471520 422176206 59054735 448799308 862844413 711632226 575568953 874158448 214647275 69816112 894934257 626093465 546405853 450508833 933773582 911685855 432432193 803525111 973907619 462905287 943482300 146844795 258098400 156711352 908739224 31181055 206135616 308230853 760779842 322415575 190946981 382705876 614741207 190798219 428686775 154868062 423336268 438769274 92412613 47724993 165925304 681908746 471357128 104075900 902043948 33857889 157196058 720955929 335151530 154742549 974777812 903704093 650922775 441085828 989831094 535297345 939979252 126101773 773890606 261138350 235308807 433672800 688125868 942827360 385770607 753260427 721104533 607243561 843437553 321494986 868681746 891234394 834372430 829825725 173980391 959431045 767746013 384162526 50204916 880194356 708477119 111987837 332555868 561932265 770534600 502012361 252372282 333913057 825920995 688213903 582121260 662077362 161770672 534363075 680604603 716412125 752521830 268819172 970941950 929655872 871413879 743503158 33726037 662728798 895514822 84781812 916241004 685596047 902553884 823076777 206706753 364215566 259837020 317907253 335462217 934884073 992866014 42964374 446394386 464003619 754692162 869611137 544102149 758868497 1500745 948061429 741488977 346219526 965284411 922600216 513253005 492361092 232435906 848378845 210257389 466923172 723244329 869856799 887682751 17854329 119530226 971536523 194006257 663705195 730373378 475587052 952004795 319496112 425553150 507323782 410899192 372371491 850402719 918258456 992829610 822569766 793436553 353130263 158185518 650919394 725613147 889755055 594618268 349274239 884839649 496532080 936465813 835664406 744926166 719812191 129967824 811966856 634751787 603487424 313367096 721702024 928692973 65528093 350796771 938077283 995960159 378674767 343871486 774907921 822097030 192665554 757303357 672236832 811246406 238559360 315800678 305248439 809420620 473636599 565430194 555775330 919974196 111683518 816212411 751956247 266168459 241716181 643420149 339743115 516347812 998559055 422398231 281575394 601721931 645207537 793304330 303213991 686311046 159597956 91821581 467086988 567874199 170995268 878617868 745887534 325520679 828843225 729554458 267250755 643973338 222248054 759449276 411733005 419176369 561312357 512895823 808873743 111607813 656096009 134646739 912045846 638687152 793077406 247283592 485794111 764720312 70335921 110650087 239511017 398640700 599251591 899614743 215911712 966191829 792352388 370962753 862460095 642306616 173414208 977492461 850040879 121723571 377983716 706765478 662620685 329119330 14081917 167799189 507068816 303742288 87238012 65184729 133772015 104875248 950705328 149754476 582910196 244744027 552555437 481167908 177012336 753578388 936291319 800633725 37730056 132171627 950574761 432668109 633596047 787107814 275250173 466542393 606478844 854439751 296640114 27017498 307362019 666463697 120674123 37423004 98731785 98978966 394783434 927354491 941198368 471828421 163650189 768112572 697922306 268647469 309409783 341453588 229481700 474549914 995206174 158609471 137039630 654963300 668160094 566891662 724288885 738476524 14956627 469746629 360732229 368326461 489662889 485374187 620597198 459367421 441484783 983667854 646039081 853629558 988321158 945016483 557327376 89497302 316314712 518102864 979678020 222875308 533685982 448371340 964046967 923600289 636255507 805009144 206069630 618252454 996937148 907273271 306279200 415070011 282126210 775121076 240656728 816056784 393738233 855914443 952143502 650275459 293852302 932759405 896298606 825647246 653627218 970735916 153965444 796996748 695048064 317727093 688158743 510978642 433377336 615710424 527939878 780372303 568258760 751807287 542604426 431698709 652173854 568502930 282100234 693130423 400014150 270136116 854563290 708326354 412136870 339967285 580078200 651356624 29304683 694461310 439486938 376040439 928852560 719610819 22387852 670300486 846428809 198996131 682214011 748872820 703229267 437002161 928832871 913162294 926468010 512184521 76405494 613242564 492684699 396839623 591635613 655251969 704814283 41476943 800244273 918080206 997618816 3299180 551051328 430659526 473720856 209952353 197151481 71206120 326513457 513224446 855030467 22454528 444820407 180634383 329379317 705472934 96449721 599234999 798141025 412053667 313187171 654371799 962796909 610431792 40432883 409100880 816992500 614764627 186442122 847833354 213615353 145562552 379323255 727127823 285225152 932171769 94161704 352350637 478111522 950247469 849787834 963559753 855791908 700262155 974792674 275137634 91020020 487903771 693144685 922945418 22583766 688306830 209384355 256553858 332398889 827703120 166475495 730478637 544262145 404484552 546187228 533606156 127380250 701454969 115511901 536019645 897633666 613516269 292541576 895686821 826076167 738727851 357589126 990682072 206575168 500897839 308069410 872746708 605393112 186096234 302843142 821130306 700417922 949420943 992021876 229586263 974693475 762047072 346402315 788133337 543996053 759136622 329203986 495779539 890424652 21250583 233016808 245286726 314590810 264167383 890929721 143306787 939532733 605991775 122686700 541527775 690132162 114078332 761649776 390235252 898824363 296306497 456833973 189905492 351892221 159456774 413386306 848868152 291367578 827201865 157008174 610288434 998547939 774444449 743111309 58974156 62160995 781572832 75409168 54989856 563048212 521856800 450776103 202949285 32868081 749496004 489565914 161434349 340963712 936733707 478055421 376229048 34283264 48996927 269965699 356068055 438205504 663304501 70067338 700223269 30337791 473671393 471068411 624034170 949653734 275157351 292256000 741497802 896444414 934875259 808757900 540675296 199694994 383437578 199587265 660192617 688313136 914759371 278300055 661913893 124409674 28296292 313019800 837574970 357296642 50355211 307439339 358007601 103826458 172642577 4233626 971968613 510472472 925047247 915831096 733530035 30157950 163171876 900288488 722646029 43194207 466785250 611991112 211650698 658542112 630114164 157327843 135440303 816599081 227736522 6683050 332500532 16287397 118285190 208808292 858553046 624540345 204579064 18646591 62795168 612691396 577644534 325456697 525501670 335022730 851189273 558928467 630385132 926335489 660704099 399938223 866836717 514870047 313310056 506817227 359466543 113778486 257594222 557247608 869750070 551155523 844518464 86599805 981888021 204732561 168108716 919249515 948764814 694750788 268001755 639394438 464767293 451426014 103586531 702713841 304411663 263958000 89997203 991912695 965572075 699808770 869500046 462208184 915985549 864873772 903134907 392329252 959516954 713112927 742549074 188168932 148667151 326009472 90818023 441964802 827079235 589661558 883101774 573911597 445521907 129093124 700766263 877053631 275871264 887317009 733380462 160149512 553140735 704800533 402169874 18619824 984331071 621345332 270346747 22453693 694791245 205625473 475643939 351805162 580333702 356301928 451065747 293828939 667578629 767870750 473541558 781284424 351445589 577118251 310462618 779098033 892049424 235481895 1076035 965874329 143685702 823746457 225314701 622501571 762709958 538273162 633028522 614577287 542693565 164340759 464603514 891786137 456588106 193013427 384408376 28857098 797527881 583389277 863951754 979859680 273254273 149249069 73439795 470370991 529918511 531152307 392589100 588852518 431882784 933616575 777978963 794111405 17752162 749127372 482467137 620385793 890798231 367970138 996741482 474550335 929027798 128616997 113471659 630340623 554695465 286749561 80933485 526419576 477141885 34227305 705031772 462611270 435313882 911557857 678833601 408306222 281982873 389580549 628640954 672987961 689995676 169553679 990059252 450305674 974665635 243726287 475366548 408256294 41116352 607805096 110554690 816197559 484654885 243959014 146923362 265256774 373769361 570230459 522363177 302385926 356063540 175857865 817025496 258842022 825770827 47296509 587108285 816552907 214318507 910921734 909066692 909891915 360721645 173500934 818045432 839347894 461295721 608849827 214008346 989196904 180137826 69066133 945694886 217279371 517332072 527390824 754883432 552805471 563226942 343276435 868855255 775485118 272388658 520966316 91023732 459524428 165925041 102785755 889766863 814166922 261597934 594773074 451344428 718359190 925830597 312982573 677057641 116968848 865819144 967217365 899726775 963332297 375346382 51300400 89279486 673383270 322389933 27086891 545577888 313039102 637753771 6380554 146991697 183056115 900563041 108741802 17817050 998868671 544258099 267620547 684101988 171961605 466226335 496356193 703021338 437305264 615141239 102472764 522637200 959933511 93650466 463850049 276492064 153242348 560460314 631490708 875098838 245186555 214257293 304259551 529184867 936781503 602599856 48173736 851569622 726347389 377830234 525151407 207881543 84943132 371855027 397926339 158155186 997609212 233466787 330311399 168619855 692711483 519231619 766858091 100937563 912668733 930540014 611654471 684344286 985373148 830180874 354282605 882358684 965154632 424615288 573065824 568869867 216796696 959380200 979490831 443754384 196649799 202793181 292149206 512175228 862363546 838463084 368088362 175387260 301051505 701516545 690768275 575323888 996126892 302488724 125171948 228606708 579722933 179434995 706056386 33617403 393439983 964324239 634154642 178804147 786205323 689272023 658032708 53195470 606840610 987249902 717883189 778816393 542599903 303869632 242558736 429686937 870154534 77006856 916401904 370637754 213399503 637245298 418912460 245426167 788048503 923051282 598316781 350199670 340892323 541271450 23935631 283358488 378635521 787371361 341240311 522808568 217928492 239615093 468276064 979999604 186004521 379374559 954836974 593381053 371074764 431218613 106212865 231591701 35009558 641281782 341973081 815066640 949057515 778512795 443604676 425268389 499437524 501452469 469302339 953498636 666161183 657997203 174624676 301077065 762717303 483184848 506370886 13097654 788022590 313531601 736929181 447958059 61797231 860108426 813375445 458072818 593183138 907144960 26256677 690618967 952319908 324587544 667527672 683261406 370687023 373742367 111163723 327744396 754435611 794914697 231137750 676910725 660465921 2066410 799899064 873015659 804121054 44175973 124870068 367188585 484014568 782009584 9733846 376690271 108527968 926643961 638840301 404213069 123010970 218562912 217443550 232812791 625287055 445832553 341609647 580977790 48258280 957382609 925806380 811076280 344850882 928211021 80650448 482198324 617729196 52658363 793245243 851015505 164344108 315209080 840100527 538752362 200145713 895241924 361004802 792269977 605810019 921459303 882831200 572515809 523746201 129546281 391781862 254434501 806540861 37860495 902101993 439724932 731304590 828447856 369351199 533728516 674037769 675992411 852416017 701898544 676225211 536552033 785740383 313451280 537771822 442502188 891770931 237193877 488502076 754054059 781113854 376909436 677102385 983925787 3134024 545910804 58960628 558517999 823285661 156480685 659012587 373982108 671500832 294541492 516637417 50805290 486550472 21178918 643633926 828476860 427146336 582227468 130763366 648295281 952823755 840408727 352908018 157609672 16347482 194744008 744605207 383871258 534427278 123893635 842933350 711847693 638357396 227284264 663329262 617221010 154898218 172826683 645169447 650061044 608329826 238412779 55418634 121293556 602027897 789185722 278803670 339409288 290161837 381455796 345562656 150199753 708242350 541449429 933415032 303290247 914588917 814027032 824497015 283442451 836931331 348709264 379724466 260667457 646982150 982633706 292335472 836613844 264594038 531491681 892518466 238866976 640680336 212982416 272014652 478803220 807841447 856529996 524811737 874292370 112349802 23581846 877812063 149109866 85076280 338793145 76732306 730306099 165463378 231796071 533949165 302872699 501089482 946671186 130225375 509590644 252179195 574211372 417901833 702309911 416310039 745113139 725166033 345832848 577187113 55616104 169807099 989682577 216935864 459869122 750535778 341717783 316550648 521002104 278395148 946067510 351074241 196468092 891063301 136888593 409450891 449987746 430282914 504976967 469991582 759373236 427586698 64681261 769631937 366254508 894053020 95544860 223772211 247788159 395510135 937342537 815737086 50008957 498379259 30619263 590754711 432841274 331700447 494184282 189196646 323847913 134198844 717061196 893368356 122749927 283240846 378183185 397594247 780210136 544799663 283372800 77145273 159105599 820016109 114778533 801598095 254153857 948333499 976681893 640251606 504033094 459725205 695199854 452359872 400802295 320191357 17709218 661985229 680403864 819930643 185948426 544169590 670494289 984406733 586466352 186947846 871933721 50422577 837482582 447148408 999052464 160288490 22123584 646621668 675003970 627374967 853125152 237478109 673024895 116988360 693384548 963285734 115753857 169093728 25100303 549712786 670314254 481094202 664591051 903356559 743140205 755733133 906029087 39883314 526868282 31692317 35950181 623776890 836489148 451564389 537842780 743241235 12028697 624592707 977252953 461803546 29065493 2065253 513381413 831368120 797310534 855067198 497581399 448461444 646987815 35710196 258654923 26270188 849073099 265086859 962993756 402243307 121384575 461671181 76899299 658961914 580542631 278731256 846710580 763679065 583775470 658221184 494798246 500858882 86859978 833949508 259603084 457636874 549455186 901077315 168590179 364715637 399976140 930298549 420258942 503977642 732166482 162841157 606678752 895323836 637588126 494014904 523634597 434175581 48241426 645342835 871404686 38615216 449313206 705943822 152285189 355689807 336786821 610664615 667694409 299596305 333440244 341780875 847591127 28216416 24275454 475093164 992396988 578158740 410284634 952895984 626884478 300075401 981922391 956207878 38462849 190938213 796744800 696850753 84724691 620569110 242214294 938930676 899950592 55631937 81352657 551381470 823299379 134952696 450531687 11656053 374428590 452200575 188177152 869162916 30907219 786901121 914293681 889715996 55401833 491106964 666931979 671496545 240277941 856509817 615976875 550729552 82808926 692368569 29300534 112833267 75870212 756057664 155248557 234976792 812536923 238192089 345183690 325439452 938042449 742724378 798783131 22449879 225013937 819374920 218674568 650167777 695763044 138671511 339368247 663819712 549328407 117382651 495746588 828267422 588840653 41549560 720757234 669418931 755200948 299596327 338743504 581413201 831792248 200733260 760372787 657073867 729656291 324503646 910121761 491844975 370960763 153700625 841324074 900589317 31820465 696646410 260612619 433602133 771960432 470522748 404435139 984100265 782904291 651555683 861934213 334393718 321582701 602809616 25158692 387401119 224985395 80338216 299100548 598966917 4502236 122145825 836726847 402273365 386332417 222512352 8000446 121662538 733223303 344312550 505771172 409824100 693985405 375352044 956856794 371246856 877959724 131809237 237571079 713073977 348497306 845019221 474788243 587088943 223837083 477417039 924682923 250891660 586513156 662030479 560606754 917611667 347046976 146078583 980394680 211548275 398729035 402108483 102630559 603607722 928888697 899100710 504446421 960688474 602147467 802637965 643304499 868250565 224401988 458282440 533734898 382212859 908000640 386746687 629518900 106648195 431645938 658138162 559993233 931926418 996844152 37397846 390391376 648368524 974940538 674191741 938520077 216132319 848559777 214196505 7915117 71713812 471035277 823409243 334417163 549134710 981701298 12655626 638983425 856651905 752563721 849516114 327724512 270774951 931080373 844209749 996781918 37260654 490926043 710440907 436779050 461825635 740961486 70446219 952199336 725342901 672015539 525684586 389795690 899039795 783860939 733231703 304679025 361086294 771885401 46385915 683057694 585142961 755886581 8303361 627229397 41366017 582698724 586942797 131453007 389650164 195282684 199693227 209860335 904886229 848271872 312237372 322022127 654396569 690577418 746304672 611171787 749980223 959002921 770027657 756424921 171454940 436247223 358760966 104737585 565618496 287614451 545008738 580153657 161625696 826968738 85430043 660733583 206049840 561715929 646793021 135029755 392918126 320249240 360134578 346928521 736642666 579425387 793238233 368342077 764933695 263568137 180693469 708890030 990895435 712786513 980974446 583037305 971489840 28627525 499767751 787946696 98108301 285030832 111378605 186460810 808609582 474981297 692924816 608891400 694864632 562366536 742089269 32010579 795921500 943304160 578520821 66445786 287390883 320568333 602676339 239678015 188203583 825758172 501985505 807324968 269813255 183495836 269211344 243080906 256203156 315961786 812876691 654925227 696409285 18457868 904799389 581388328 4847433 252214900 514933089 666367460 910233319 9670494 825940895 994267542 42388445 139248979 422724473 56622895 799738420 220506412 521145207 235187199 97154295 430791477 328875242 252116663 61586656 649351887 554830830 938732940 441808826 622820633 552128362 718305510 979912482 517595848 826975293 88447569 639559925 874020142 250213253 646483349 166255428 207452883 529410578 950932185 308057433 50462287 102334118 606575835 346037986 66165121 412774783 724028672 668837237 815511826 972264417 494671884 163491988 184955734 9335944 942014082 417148687 172622695 504404628 717112971 110179208 720339961 553709514 516147171 325147944 670964858 549576125 30154153 50900635 389770393 751547919 773157405 158615896 12665180 139486594 20606545 678594999 703967920 841468120 522486874 325318163 283604006 284067697 531827039 590761044 849432493 758485876 166977369 94827117 793217310 579602576 702588363 504730304 63277386 741647448 307626220 602247933 660000745 294499515 688360324 31852232 290819894 703065371 259168897 535620742 866855928 753453840 240075703 621698628 157543563 645208585 543000253 19434111 649627143 74941443 941005480 527280049 203829526 328077778 606767964 458579622 472253688 700267858 496350622 669880627 17538781 320547550 768876019 413311914 20632436 251980116 589827935 663729050 436190135 108756058 367864487 172790919 159923966 917273066 105981395 542879218 489319566 953550519 711277239 361689385 640621853 987172933 947292567 698306484 534260366 55735840 178893162 360771440 384586947 187721788 642636970 571720532 297328577 192072953 64240659 286369867 954317768 925437110 24741061 3265872 34034379 114990194 735651879 863706454 654329416 375242783 344131711 842476690 757725158 583750525 613951523 695119316 534798912 857461704 398586668 113276737 344104800 878200071 106707925 207922600 660312665 495487102 189338430 975100463 22347518 847361854 945953747 413325461 162433105 95907610 315556241 531688596 521235877 438233708 494471921 960413975 137800159 104276705 942756804 76261240 677243292 125089400 328420217 625440637 974528386 530700617 756231911 998807043 943866094 392121192 433444291 77703362 367585483 17889527 273663178 893789734 276702289 872776411 743530735 95917373 856228411 737353894 918382383 182015030 102570844 263618782 148618297 979145819 441242586 541662944 567832969 757262462 435595975 337301077 352152025 790519818 517988585 565834148 81565317 812305145 546969314 649642793 115941418 790094012 711717074 701414889 876326511 370936461 656729633 606662171 429382081 98803716 876471454 651258192 284877386 91386388 791752322 462009733 288768396 521845017 987908153 581288107 754579160 301472565 232712720 771499870 719370965 34616827 767664710 746769079 261207224 67147567 778589849 438041439 129218604 106377395 947496422 85296746 20366740 938672698 5233172 437699216 15733762 57534795 543989010 898042705 163759022 791177854 523277972 99728512 410916630 591316345 977164296 788425638 328468410 57404841 134088865 373059563 597185181 443661014 759667730 129934616 87517413 635524774 781388172 319070378 520700157 115783418 9229119 110759601 960394853 430706059 287139434 573160971 347774028 964934741 757741888 130435130 257878615 631374351 276479287 159201007 185494915 114102562 137731329 4079956 70030985 219323819 849166794 396739420 942961995 785617389 755523965 741117676 756184419 647656411 449389338 308238090 417147460 670514345 944289082 154826476 129261219 49958897 929539688 25754555 259606867 122545601 599221120 559350860 222135468 505592654 196334273 491306311 73693200 362940438 320901989 537045042 68515054 92088811 58409198 375397942 762808329 769749819 168428272 316535320 850570214 397866869 551839354 342964806 569320773 419653964 436109466 231096428 8105670 156308806 559975655 30347393 896494194 603745699 982211953 287224926 771922698 488440626 662085197 51700235 981792156 288997743 258669087 40018790 599145593 678334087 418883347 636905348 684343787 944939557 767580191 747133302 292622237 144844678 964621339 829097136 762351822 704733221 755593634 212039599 336918789 91145594 638814070 727182640 35543691 20866667 99222229 609905053 837311483 225263947 64761649 950421417 673534140 430167889 805822318 183798192 499802459 656593917 808031152 198880198 728856261 678141581 982048751 163548690 67668559 983879087 690758978 69892120 192222696 363666314 909632133 35320709 298507145 61982089 307170805 375194075 217996304 83850912 93784146 557015494 879119975 969186471 840882853 190074794 63252676 722908008 879059513 971636905 707835356 115816713 860370537 567913678 890735866 965659868 298414631 171277766 419324709 975168755 916406132 652995426 525734100 880574422 21939974 509936447 397431091 407225275 847954675 995349086 233611258 672825946 604090803 224576173 6311798 841576533 310035834 53066361 181155584 676766774 669105175 913561524 605931693 530861813 20345528 795359693 33016088 528324497 658883974 947596488 50692649 159249728 799821390 949508357 247256926 695624641 650266087 383664509 771648558 876940370 608270100 255305695 468712435 331691088 859109818 512109797 953562238 836799930 329796931 931824519 658957605 916737150 936626822 352657829 340255186 293776867 522913740 468454790 207475498 658279873 727953937 64653407 819698183 718893929 503942567 642594095 675839268 600217376 915494832 331227785 140067394 970461671 488163273 922175205 521025070 64484436 738998406 366664050 892195459 974624519 493085406 111886507 814976164 783697554 838967126 688326810 361579174 194004701 163166215 554072182 816850229 802300702 77053213 970304519 18756320 274502457 41993568 375664996 366741120 449459607 35935509 105485081 448379372 923160061 298395941 378390194 874670504 17632883 215142179 827633086 729722333 803925594 192232372 854287621 161597090 291027952 84543394 262340064 277926102 934269443 639063182 169067828 648372953 446506339 413692992 442418061 376924577 575940030 120120896 961996610 766048478 598540289 638358783 904530727 62255960 901506644 497380938 822237035 516411834 807611240 920425362 639637706 924231096 888827216 755561187 979724703 584455674 261596570 705275175 345756722 428950308 277130863 913965914 789423477 86106374 504381171 899660423 187839055 805876472 525633518 350679318 307216926 870433743 444434957 522670561 556446057 962052276 948475535 385594646 763869303 974609247 25640360 92787899 193611990 116574283 163919820 790716744 614219491 861995508 484964855 755921198 31808909 6494169 574658959 253988100 158991925 234846676 214836840 62244141 692406348 227010418 747346846 504142506 161190589 81203043 175881205 744498981 654697629 89871637 591116910 161685743 625244067 524076428 57545398 267715390 726348692 537670831 236192376 169439708 660221101 958239789 684435190 249358765 729942403 762260490 262492895 754567542 334940134 20166644 430277375 702941901 918075715 925351081 457754112 513704563 368384979 742135462 95280426 685945580 404749557 503930623 572421775 641054926 97678238 231529770 431732746 501692596 257285453 280454051 30821383 204016139 413763419 786368004 593897876 171027722 960144949 285485803 745036378 54277916 792339578 455693291 249193913 332552345 368860635 151487807 542110621 882544447 339756037 123198648 545871940 331039043 412615322 147818399 621756748 490462981 13151891 857693370 475344153 398123509 844531702 431285256 269202616 760348342 99647207 990642506 219139103 697647555 108547612 838794230 46979387 42680562 107767965 359293285 482483970 354767185 881209358 652629691 277986398 321700217 844857704 824720680 518448483 452024151 775189358 969043045 796544363 295724775 51640868 135981474 653202997 596452776 201529345 277355159 262004116 639026157 225686394 436854156 882257047 642529969 604387050 606494750 291507975 805382751 677610723 161958110 26426808 388887244 679096141 887940831 940396202 98689895 716141126 467718914 150734699 608373535 235703981 878796599 619264617 555425653 871717601 651586234 384757796 741482618 602918604 361800058 940438794 54739253 196668733 726081823 371105855 772447144 179234888 397274921 962973599 131660668 870647340 316039937 837932803 127034887 244891811 222918551 244284242 799489562 140901298 976112171 811483851 192186780 207142166 543501987 5995483 323451176 952943139 143722603 819722006 362347546 978871402 952754517 118067593 659010099 240816119 889969848 368622713 466271686 774085855 168594524 362500591 981051193 928938122 487528313 15567761 920472805 154766918 69671037 346077025 660115454 511408007 849633732 643313189 393699739 643534820 919396192 333543345 167036872 165113373 876212580 648552018 559264277 855172391 160012858 868327105 664399570 844641483 285170933 895514061 267161712 163871124 124797694 860405806 778764274 163700299 800534387 44283591 830781246 860145892 623254107 57882273 478353330 693569708 542672491 149284576 250497505 396480603 559758625 290735030 411686928 385100167 166881460 6446744 171447565 665436663 748166431 422224350 931505673 541401685 13095607 70298945 199532645 776237236 790270033 826450176 789703494 38322600 86939055 16570715 493311964 324679738 908068768 618518153 929051618 294322825 537645573 487123260 327030750 390355277 295751224 536152163 993103077 895144064 87412520 104580711 546412764 147876777 236813512 785165833 292875100 776849696 780024383 910368770 469363224 959518471 464787995 165616418 889213916 883803548 982977106 706228617 600180129 813580857 333896315 907001623 421454262 406162777 273377142 52154070 941314936 570445978 263569060 648543023 102021382 572116032 649900117 139259607 683997469 911348713 161116142 758141265 566133345 114616311 465675948 799863894 319228963 65708942 602508259 39435679 856459606 55309735 255762707 558318175 539280600 201394662 928710465 914471156 832180199 21311751 567484344 660919478 489967855 369245992 204301120 136191854 939313870 288275766 124382514 465597432 71789658 201811086 241612934 150917624 232867377 584617850 336911414 990300302 564038142 421032934 269115029 988705769 938725592 439087997 778878025 497649959 623328449 438537492 172896900 19306679 598972907 136565650 430720163 898685512 53839871 35475229 147830286 506751526 847095820 758734712 843949125 481340947 308171990 88353686 196968858 667341422 257920695 871765360 767707880 57542774 787277590 649699938 742384256 518163662 5696138 152229792 69396396 401311591 737849612 202114924 47460421 814067565 377275408 36376718 828630503 375612066 251753294 376702247 482978006 899925381 453725319 230759992 329578229 865515408 993453779 826519962 643695896 575337683 929028308 567729766 763105658 510826319 968217376 337391860 990896521 263551287 965413471 101217452 392583152 50041565 896445701 326595075 605199461 916740053 300625773 758853614 881586712 560834075 60451323 99680596 961196400 910206436 198682444 947104736 762950872 556208277 936124827 277414528 352997388 997558965 453535 866734905 270305607 331525253 62101655 247363669 288848020 575874248 445228773 375611490 777493297 962036186 949456678 624442859 726194932 117759953 881296502 662349422 165383355 695360854 798654101 706266056 585725466 545129602 561570923 667836647 168603635 131093677 731440619 981134524 40881641 168207529 837217454 769414515 550491167 868289844 896873411 745160761 522227787 398303774 248415881 6973844 723093721 60796509 577027970 589389194 691895121 586351990 330272647 888125532 195562916 410248196 139546147 554337297 316917257 416999755 891851524 254201868 876163915 995873227 21454543 85788402 272430754 412489329 59377415 568956381 260199104 761626393 620371296 366313060 247512599 578003134 958572066 900866863 536346947 506355255 505900933 138580779 584895635 471576694 892096451 49093403 520072878 933650028 266477459 870075993 460552958 375405517 369853327 731125699 426984157 142123122 418336192 252643348 314315833 486715074 75952496 561920042 852711062 881344859 756607767 113780796 818782575 196668628 148554710 636709295 646351597 181886503 76312276 859484215 403793202 417525201 466844142 300875658 8286093 618772975 632163342 7524148 552981822 431771028 164791696 262116666 564266596 225954514 166466523 642646153 267787285 381661785 765533740 531476743 456500324 607501468 797903368 541360642 10381911 976020113 183107695 646414265 301278808 738576092 449907462 570990553 729365841 660674245 669347425 562736569 614207178 463891157 499735096 56435099 966784580 125809174 167161554 997374562 663638211 115225187 792998036 829411244 760415306 894209504 512695946 828546676 256347952 235245267 811156247 810978545 582292031 294471658 45629400 322677215 369613153 348755824 472256672 53664463 811400001 75086717 267257715 479694605 775654954 634072436 567319251 121559126 139376151 323341036 376416919 630584174 149274715 123085564 37822087 992417603 190373894 956345318 832606575 348121848 335163773 400823613 790956455 952274962 633629038 325747576 743468233 322490079 623593078 668296319 465113044 192370912 707382514 766245365 991442175 347793690 92310991 248416373 540652817 55036906 546825045 507641912 648188688 543592880 346470519 671766052 567313778 797794373 977249744 102318815 651568892 507249047 949575574 792591442 374725876 918282543 689935708 610184264 947957717 155920143 114205057 435140664 699244010 541954372 827815662 566638477 18732234 154997172 93703534 355609182 600525065 118718185 794103579 316051242 398176163 639338266 581965854 808501000 415314099 124085645 750220000 14569689 541346453 634516242 444766230 440188796 753636480 312141615 415619409 329074032 528240307 309499843 313787753 351739326 802510159 286440002 468258423 271774346 639711470 507379599 135841875 732764698 736748647 423186234 625179842 107374096 720067436 412500302 744526172 440161743 20900384 540246066 521530855 141822531 523102229 365225569 173769316 554400786 306959052 350353712 661314920 187927084 844057577 837682603 331959390 941354028 125327912 284093065 492989069 647579108 364534877 282012363 519925238 970097000 813149963 571497636 797067601 551720457 6763021 785617547 407374829 110237304 339594458 804129619 210586276 148001757 830312617 155133996 686859451 622195437 158849158 477170309 250586105 717416457 992183651 507089937 215199557 893211484 452231229 385845585 129288503 121806623 139477497 922719472 820662688 671692291 310099853 784252003 334303543 679738077 290197654 78118636 352378275 802535009 619795677 207533025 347816381 124397297 870721689 799560817 129899902 885989243 55189617 351394182 155689609 569651342 806332470 550442044 92030769 760001889 591067478 330380014 517063316 110107915 224712331 524545277 545574586 73943107 8599888 758856411 261475821 13355126 441824876 396891240 137990595 159376912 251578971 318722669 888945197 665738016 836323331 332817990 113343371 803485558 63447944 402057337 119735218 524002049 63931898 711409658 358256252 635315141 697303758 817794951 990701502 93065363 460718916 436154515 408177691 611356731 424902969 561147109 292994487 304840886 515175485 868461980 353098276 722611047 922265345 229483833 710024628 526593982 798061849 56189706 913681900 24622641 252598274 829704702 929516215 585521677 868021962 788750743 285954117 936459416 70584218 479891855 326715551 791329869 334397988 599878123 199712620 505439768 696090965 935636671 388949731 434485508 208448765 19569445 966359912 737976714 691110935 411584476 10953142 726092324 371876249 563442365 448596374 983756032 10474792 336965153 83997171 981235591 783005470 980353658 951189795 381794424 961210285 451675981 995866526 342557559 689299381 749794443 794207559 328482203 705607838 797740383 175561104 469645312 368883074 544607307 258819857 805128262 769010280 290694304 414987175 692602794 474267662 806910997 456513424 520410472 604513477 471709789 499569527 35450321 181415907 876999683 85770348 628565676 998424808 778474596 418388902 748731533 979615883 207978501 968232808 745375548 896282680 401881042 70190329 175278581 797644536 93973365 175883078 312599946 985545651 978068576 955222589 124707660 249458586 319834964 759182947 944234197 82095947 381700415 906536760 716859901 279681357 958875904 970666525 881045323 832566895 876044633 474078659 905973911 274096126 729048738 21386797 298685282 323482693 931508217 387586530 635389400 726396652 400749698 355775213 37001338 791448485 547019580 434746456 996578829 467272528 119645389 747526348 581130859 365175937 234248388 331112115 104259922 799384215 365819863 264388391 380580833 153891214 435025601 117718916 14864727 807157900 236894282 806737051 460083216 104071385 997756829 80440996 657411025 516645975 166240149 288611378 469013356 681139895 720389500 315884380 783435346 409778106 464938058 342843250 904452093 61430085 144204087 62375879 517518139 660842213 412364608 369624512 493368931 977469113 86854394 443115865 950909722 16619427 365618357 456979996 275612834 340857380 504252685 534551734 3280020 717810968 394796507 624817172 712172617 872503421 696924220 184693315 920316855 41552964 609694969 693380113 512434877 467804432 851806592 789095304 815020959 533371247 72922381 750189831 301944563 978645700 343133043 622094970 375843722 990458972 588977704 513481421 740291714 782017681 811563379 811956671 676219076 459667678 267331496 144673549 239431299 577373274 388842581 786869900 466390474 506495563 932562329 150460835 62572382 602150389 174600833 340166797 516868444 939564427 347543734 132218722 820837119 249583795 336890569 664796175 323816779 780250499 834052863 231202319 19485559 410575436 960327482 324441129 79775883 386213871 984778697 526620264 113509067 980668132 18265442 386631197 879899893 681955930 613218442 10793100 357391861 984713260 765843230 461697527 3120460 661159368 828484022 350818139 746666224 311064157 442799552 203210066 536211298 216166181 682841927 836774239 31015139 367217850 434118065 909805080 497379912 964551753 900562065 785455162 198203678 69556673 401521630 250068252 618393297 993102867 277941697 377524600 737851408 727500334 187825969 482947472 796755777 838162354 122367462 91838440 663372716 969825024 271399603 499134644 304600560 927914780 362883904 754619756 466831951 262007475 590125602 893010286 74797772 379824159 703812877 569170194 930734876 811783757 344325688 277084001 209126621 1593470 742045160 970854498 389617745 539782966 115883462 478518641 606271992 63124819 914786270 849704400 40282040 255345863 805775919 540017990 679642540 394032602 578480507 136565834 502472000 485947729 137813515 772853564 904408480 323047594 337280465 618408924 117635599 470356390 68102083 927269320 908375105 718785692 842362891 895184665 644542539 514116080 451543426 65449912 368821433 330139073 635781991 84338908 35801360 694946798 752300597 988964990 883444790 523612942 292696421 286245495 300794062 499074101 283181396 601864209 870455554 27790755 329933206 130915663 838368790 296090565 127152196 843757600 559515519 814352516 946715970 362131304 42671320 594712593 609779104 172552657 387945656 129945535 177079423 506151663 173382685 396915512 317589935 361569595 832382460 581411712 695813424 755832422 452441963 769970062 564264622 680558920 966725019 94232126 399453011 59395902 865203563 506409284 451037907 816420355 470126582 440072774 491746723 958521043 686136548 715074540 577812688 871432907 992488471 808488964 82987674 682015580 745712277 979618555 419046764 72808393 457737898 397990070 38874430 231049107 605481160 30591206 286600039 988924914 557189057 653293452 393823223 92079897 371130488 380751996 218044112 281967219 819780584 20706637 484639145 713098060 220568058 793087200 105878172 571684944 272043284 178546844 371121209 564436622 318451375 359556102 991173147 87254242 388129270 65601580 552932595 328836361 449720096 923773834 599059806 326383495 704773835 487383119 173959002 946469736 458982256 816510926 367293388 516072003 688257592 525171118 18504579 315718368 770727167 639461903 980000828 831963989 48868347 433827317 327750558 620590878 685541707 297565556 376665755 653233971 9329325 259295452 672709446 634174680 954858882 176270597 459977872 205398343 715192912 749741323 561629260 389270569 801702769 546987152 721247278 94563169 149672692 102144802 600229047 429332198 933928601 481293137 565366257 419242540 380164614 765290780 947115635 683950770 880646465 277768522 140830362 652304316 612660718 710113470 981431839 767611058 767404132 490729458 205856594 936100909 336934434 651393524 909812649 649837715 486851063 606567436 702449191 778511015 512328169 284392329 997524417 464611828 566780064 406081707 812509845 282275993 27179085 663161596 377992242 625300350 60704406 90898559 829101631 103177105 888611739 332223407 760629772 240506202 782890610 488890032 666355824 203673083 290143630 42654032 296000799 373550039 108984826 194287906 485898311 377322571 406563426 988066807 618972285 524840672 55410830 921289596 640309964 81823639 852077988 591919415 221150922 750448004 353625006 473374968 457964958 919538767 901426812 555115229 249553073 57565123 474070257 224771352 863072031 138262400 779574284 624633477 424542313 958253926 955547862 195426228 353412052 467001928 813105099 397484873 433886492 161489006 19820591 163999716 977291869 939743896 723318092 107753374 223701481 540731291 183185563 886485165 842022614 635041152 342900311 72321147 95133843 72204580 876479141 411864427 645373513 851791709 519010758 381593119 611124200 380482265 46066881 455960849 341245617 171305911 635144219 244666266 343364679 945134539 470658410 488422151 337651300 518364514 354509167 131329589 241418468 228696161 126064731 459064914 704036548 753390338 48939104 587866635 637083502 402025950 891823365 182355434 530143707 80425420 402823181 242754731 592409699 340967259 316163138 39326030 941361900 809546857 154191710 32478354 349163854 787515589 493361424 655054590 88036584 22747310 997902600 76372796 10741156 207579617 40717327 656312753 141623910 10267838 28668048 241377505 783515833 821890906 790301734 148746155 957723819 295037565 175747377 650868008 915028650 581195986 930115164 839384379 849346974 517331152 517907611 238833545 548926982 354992114 399883500 840505423 195391032 205138724 937895828 342783234 595050897 816477628 899271991 513756038 551980125 394771626 720437976 30018821 4272999 156672354 350516066 522138229 173181618 814480076 734793825 388273418 848109615 134366105 736370392 201141702 691137498 438667360 925428574 440866937 550231858 335394043 185840153 252532112 576147051 76967553 968063103 333338516 945845498 714231700 686988788 648511786 216903597 290979341 792978011 477351169 509592643 91348527 5597355 776213798 889038883 798322397 959463725 315461878 392083507 972812736 781774439 590887829 106483819 586465022 773252443 170108612 47101736 340372607 731924444 947259831 378084972 588797579 503651656 78149549 768274286 253667201 574577590 183206914 265089670 914376137 141198905 4678276 518652673 103345554 936022642 204203892 744271353 410754613 711803162 291147529 181557121 422906396 227516249 681438582 42626406 848255111 119866221 902019639 839814457 644995397 419178140 713379211 42584121 276150088 4081695 924990941 253622059 175429241 298205752 241526278 749982796 482391913 843853534 68658224 857704488 655214205 213289095 333196405 198766128 150093358 221725888 137248187 692779258 728792120 419458214 400533728 697537297 900615543 944976181 995570455 113380488 218324584 796783981 959933702 858245566 528769048 617199220 801468432 937641849 795575676 678140016 300925838 344783085 246496248 318024916 897344781 47679950 688708232 551995377 599722993 434309469 635415921 316940856 883239803 618016592 159299464 860276201 303730075 689155078 48294162 758027755 287348305 481839810 968234009 90910436 144473400 276655600 844001683 478512210 43665656 804475712 493899630 643622139 477545820 103869694 327737937 534782525 890407530 657859230 230811689 387895931 500519043 425158930 828534178 734467651 45868350 747441871 194175865 910770898 69464188 998247008 627021457 8454332 109154897 695852303 643612396 724913877 357614425 737291500 871674529 662930706 68285401 229451545 292845133 262897356 126106197 625847459 258342872 560397043 215601050 128051654 276954278 394510801 783854948 367026307 384196325 607147328 222759725 53632425 413966865 536675360 330234529 917648268 834050525 309568510 353032285 730395334 430272278 455526555 63596656 972575321 828279838 441323023 558838739 737746998 551396854 826474228 849868271 8717734 250373988 802248287 273195381 434812788 561197994 715334384 710162097 585406995 686674893 97775530 374895691 611831282 235132240 916074313 307610798 945565373 347900624 50002866 980109162 811811073 975985943 959458520 117087717 178211015 202928551 926695055 823069300 866292086 706591719 889113363 191972774 336260314 106134648 706882277 609870822 741537099 296012440 584233285 994655169 862554090 732626594 451690800 458338766 567209301 353026307 844614881 348011422 343849597 940647930 694053834 195454715 374530399 553594828 835080950 423851911 187196667 661925588 984236228 261696904 706768791 865429875 555974751 184270852 474790496 558493182 354969449 204628366 260551108 730671600 508833498 117691762 603977752 652409748 963075816 12960018 912944930 901272838 47295440 522478652 579586891 571530305 520758778 818433517 247816180 886746098 366867300 417875219 451457452 572477911 396835983 936400841 972378161 887325354 402871881 961904822 786693743 321367199 783349789 460095431 24483086 841800068 444442708 176703366 402958237 882158615 733067382 442126049 592491219 620060505 921805026 897581009 874527225 768204120 444184585 334776704 442309456 660642570 200738693 690136776 73680857 114253648 508729215 236902420 997944966 581831996 110469324 318292166 406772748 349178220 189610737 858777423 392403737 608624355 920744983 864219575 831728987 412643429 752644338 138424508 672283548 762140184 318374722 62660724 94034449 532418305 314751467 849621831 893124272 770247182 851877797 556475018 399717636 894783371 773231602 347063806 208867596 977781395 793071143 63640850 295014501 183833126 567632836 827446423 753048333 258149992 520525949 543349335 401604629 532662869 283658760 398682036 233972608 8975406 410260630 416067686 579571163 383107157 40958706 557499067 549403715 655338116 712212453 532140583 180834347 717663516 742165437 126872188 788318478 164627396 641925060 576792001 318915033 236489778 727703052 910241286 196695783 241911277 747524005 97447972 469723228 204807565 191077547 36871867 577501800 534234695 1573471 911697661 580569574 122796490 875831266 200624112 666829223 153659888 199769188 731309556 684315154 543552757 646409118 63890229 460148578 101206345 540467599 150952996 12254003 528610214 590823897 49170520 754403351 704341765 863046420 394581508 872262860 821706663 56778595 189481219 392404693 368508816 563095720 830450519 339708543 338314985 343450293 397450722 480660603 247421248 288719389 453262984 246961084 777471971 35356531 430745728 325574690 577696022 961533835 370352628 736781655 800314484 47292076 990209327 520638439 104042742 839815063 464820927 369257521 289843936 792780136 45462806 882870090 844160318 675112385 608001433 361236909 162281419 169118112 62251063 47530592 941663465 308779209 932345603 161381111 763739306 503038375 790888052 547833389 714869301 458174115 928188302 770859654 800240162 838761441 837925659 196716720 408294915 694412091 478224550 548130302 673688557 648434562 947115385 946832910 207996599 327616616 561739074 858882289 338903120 976235437 661288955 58536782 850672303 582153523 750789229 59352457 11776721 330507005 222416315 527668574 624280619 582539245 134333010 472000362 381674559 832555320 875575595 137203759 854546973 1365308 922463505 820429592 88408601 978065929 319655105 579463982 491967540 791481904 686522358 761379998 352015414 881007394 133804447 23114767 86767709 427638995 463636415 349161581 904687061 29574687 318987747 380235169 618359102 605151284 667836312 477636632 681438015 206527310 409932384 940371099 447424600 958680383 396119117 781669714 180627056 519488935 94849181 265507039 13472157 549745930 519620449 735732973 268065415 262035750 395905864 586909016 492270898 446778355 950227935 945065619 943129027 529227065 339427155 594816485 275608696 952191719 653224061 427441159 165248242 558244328 868270407 139085235 893094513 123458928 768911778 441120317 525643791 809003425 817343986 926174220 983489248 40018272 798599652 43390279 240691651 247046798 21979674 452521819 486367913 11361543 34822055 102615476 860798325 199972684 658742075 715896753 374925043 968364185 207732961 425881141 638002985 147571026 84399036 150933563 670317624 746341693 949386151 931266102 300183453 492053119 805999993 643087835 310381295 226919168 647888020 340778451 592521320 200648423 701149875 525922807 836804498 155939193 288295454 708011387 265236600 901014687 752510264 362251691 655584518 842352148 894065914 774384991 619162585 2525247 179890985 108206684 702432653 621826468 173502695 681695250 283532270 126181563 157157340 884432687 940726795 553222146 349047374 289680498 735305884 842753361 232711819 494750870 211011631 399636381 468077241 413505031 206258172 850269631 936442391 353233647 206652714 489632058 425120631 967563358 447461833 297804473 285781665 375387358 33940476 464329434 167939281 407180774 896761332 849149953 734924357 339584997 764076288 146671335 239843853 615127688 930505404 376736990 17431844 223423915 864990505 352537291 906784605 24148187 453285927 782409462 414444771 325602802 589514738 261804764 140149955 515231884 638670237 767344268 770922232 628563211 346718425 538471340 705196414 347979957 452084610 543004920 743576879 94006285 28992785 668351333 326262934 379857904 389753228 2551946 767104484 391114365 700000343 207511017 762504436 325313015 365866285 446251641 456025240 204729838 387715901 458608660 70961110 20265566 708972531 872612140 500158333 894052923 498711985 850208464 386463568 267533608 946843357 386490054 277871660 472076316 304611799 807967493 73263142 903217204 968695150 864973844 625876690 31727892 845577519 723168900 856693695 656611021 374948662 651801207 531922509 367791886 824407692 982257546 917835188 580745006 726479157 643214989 899985598 455936779 96770407 657554671 69321443 274966973 522742511 919026846 444212500 680579517 398906231 355289431 452257111 887151889 152289205 591144415 49369094 668914826 294438697 13196942 12164508 779069483 740121546 601750999 763668858 678954581 484232926 110558145 191613392 462399313 634762109 517828341 481714438 528028036 25956631 4517412 799479045 566295953 409239951 839874026 432419115 187250135 321518231 704217259 760141862 359650825 742583291 657223628 8813057 177528533 581442341 858912655 606521535 201418908 323877617 196258164 51361346 11563485 705543371 541644084 794989713 58866477 144379950 867468369 177342034 217451641 641462187 110939511 798893928 697933372 232875590 893071969 630678692 289528815 881430044 840814992 661005004 428275418 51980615 463095822 92154248 695771623 858071357 182733729 241964041 911656647 664155212 240034021 122835546 7076563 56871745 660227041 331685178 984279739 680104633 363241440 499874160 72635596 159011097 328812553 198303454 522148389 995918780 429468608 441580726 430344612 438425772 686300625 471753403 448285655 295014120 574363107 884101822 379270063 192140636 257857763 86457426 516650320 941647019 683638172 581926485 990703950 746942386 891777085 568142013 318396388 24548427 674380050 105984547 950387094 162504626 213123562 191509381 384523138 975877705 669853510 209104419 904463780 394884056 604194009 969877990 894679886 49682280 379458746 639251473 905498185 701008065 13674271 886215990 284297112 159904436 913770197 621549448 166338346 56563905 586729669 553799113 396880681 116257110 131631059 536916217 987197209 69850621 864786501 703064916 24425642 124001312 824164714 280058009 163649328 369129143 210469060 994648279 752720413 638572944 762503834 508268538 829624151 955535948 517664547 9223534 839988634 543143917 872954629 203799121 543204297 961106573 72014436 953557209 12626041 239508828 328675018 182929176 179326130 179629968 79281967 265027629 745951371 562180248 959599791 410263971 289404104 349170449 908720200 774613111 167987553 713155558 708603294 158698063 910509720 465555856 324782597 252228890 689526388 758413875 208718998 306655854 323005449 38033724 43516384 221554017 50157175 617306355 704368363 645688844 325266609 178522349 548740316 945720866 107472221 269282280 139258164 380444242 736837898 155080809 14226488 572156594 789758217 223102625 118876416 979005734 638472280 414496567 794103590 715273893 959805204 908449773 642594909 814736500 227810984 726498731 222565095 929293799 858163807 307776584 492282036 205236186 20102509 916243069 809044173 210552106 583409466 543598159 909263927 557284352 257055468 380894866 143963990 469772281 812904264 94664589 116323489 140884675 307845195 214715713 406818610 25038632 294425973 514789466 248414241 50144327 836637315 481690737 152827451 809461109 307517613 86086641 601816054 525735790 342360419 207706283 502283236 787937238 834057484 451253399 580685414 283651652 881287016 397344322 196252281 536239698 872927082 467703363 550164186 922325508 753009689 696691660 240168250 456925582 274142342 447563914 783451792 795383677 695801086 517956106 417796 474019766 8201379 125918366 598706280 177008029 334648448 987728773 880315806 525678243 628080568 424351271 279808211 466418745 545642100 678837776 623442294 336591263 320462885 736786629 795478456 451088747 380375250 554507035 283320932 183712908 413881814 270171830 24632803 989277925 242948816 133545156 746640616 451067975 703201658 314217754 964963306 720587453 570139440 244202571 37730929 111246813 505585492 256513299 124121662 829136915 259360246 764854112 377369032 611968696 840917803 240576163 452969091 610496000 608931761 471661125 213353409 931004695 641630630 673009839 646891 637143437 266707501 17164947 80908440 183724039 26334724 285254701 724619129 999974497 999464523 758793539 441726257 809445833 423387461 682832531 941553960 793572037 741548223 940124916 675532384 686392345 794018077 970675085 172826787 945980810 760477222 392279578 126142191 978089525 798990353 636101355 399160655 987338750 435275612 257179397 873801865 15278921 804120345 877131156 978501165 93010739 899757868 490004574 360707244 620136835 201799494 612539998 100418425 240214578 663370609 216476351 493870704 413898204 823648944 958280888 649848661 482177077 376403752 413003737 224195207 396544992 173446549 618677842 191128670 985706739 919192084 650716118 771674179 40842201 600190193 758554977 732811747 38033057 737811575 586732930 636481215 608687772 585568967 722387279 165673976 81276132 384325856 805150899 817778890 407819473 638488910 301299308 776625338 786274160 815689807 767387340 659211816 342403304 437814554 289040520 595045708 7974240 124524411 354306825 191618932 380139961 364154133 297480544 537347659 562672955 434164305 173516317 135292107 738620173 38609612 134563183 479579598 811947951 25292821 950343978 497414322 476221720 523723711 612886261 265145116 322280792 125260236 708876603 917613292 754969140 905807668 313800441 801973143 517590251 528930663 680353267 873650831 48837333 700282941 100759730 79858876 52181239 757078826 707668475 867301309 427632873 348567605 752830152 237306908 557909629 685479338 907201539 690427400 569047628 324656409 237814715 99371268 183669598 177774483 964552757 703184977 969128955 87478293 705947197 547605380 652666618 904638591 490623220 151119265 197635786 532707185 3726523 721987937 972849899 5034673 694189922 653979463 74984457 914061644 914028689 258039638 364058670 916423820 291243622 616463969 4405381 704115065 399740192 209676260 615451882 920547821 412841051 947547157 87012045 15216426 416189938 876448119 658009394 542278819 692673340 158584039 794566912 923147790 65751181 533122640 128502828 252429450 741827191 150727811 863249134 844200166 223557825 500493689 291013182 232411288 633091980 396211593 826713870 619954082 555383343 809323728 963271330 135447653 139589990 636812598 469407180 820256551 242635211 319351381 448412542 982525104 48301453 745050770 482602822 672502097 389732926 254395652 285490139 327600235 803776483 889707187 410286852 96807067 377882104 509931796 270817788 365000564 47868552 848856204 809655333 178914300 493097416 382093348 219233415 462385173 417262789 510305655 708564803 792300844 719758473 146416985 181072212 56753800 470419719 265921681 492573957 775580425 954248083 109716486 28476759 504578812 143985358 136165102 329392421 114522675 126667300 668226893 859654903 117174594 266628996 462817561 752485977 70517006 712009370 558022070 153496305 923463254 656078422 442656693 682374126 584853171 940424619 213907834 868852737 963718533 610209657 460011188 222906485 677999928 909240582 132911931 944149354 139859756 758419430 273639909 630727337 889132572 57238225 559023619 931670032 399324219 385124429 131294061 913436108 237312982 568785149 557035250 735452261 121361748 26541481 210701868 364402925 635963988 588362427 848299074 93359954 579372926 99335243 841431262 935874239 430597731 315766286 927372594 212235339 249438299 508572776 1847877 12415634 903771376 293970763 417102764 420596943 176493986 600582454 983919545 275838737 384254301 712838605 484276363 399171352 748018564 951249046 710910025 105483323 732277094 977264428 200668753 560180457 130183805 768918657 305910413 974142098 957998808 616363874 100608420 437123089 522898587 183002802 828230768 449639852 581868442 57370432 816020578 959440403 141362452 335544795 334705223 391348654 704679654 744018322 662672779 429439287 663508927 362831126 94002729 865778796 389021799 644925101 158881521 211139415 13270647 604191967 592513856 517028716 191863691 654018108 683827986 327648582 219445627 255270924 808122903 238413420 526399274 210388527 134165041 690921194 125822490 286574674 909407764 458140348 651711458 939169306 753152208 519581944 427566367 279525936 362201021 64785454 188554138 848718626 341948829 29508625 558035560 665464237 681986333 501020288 601287883 958834336 305589197 790411022 159327749 322081364 702900194 782342998 420660679 727408286 250739996 738942548 527534320 31884311 866718309 180521449 803815374 174085978 439825821 820937745 579433820 776973005 435690557 717593641 373388664 737051014 494114260 721255901 833215198 604402956 608217616 126580078 496688724 123986286 7110598 773840309 883940932 798176364 848125015 88038545 36259215 40150375 769689750 158992098 739671667 567647918 664298609 857815703 425029978 259815390 798524869 9096979 720322288 687772645 924404727 21810687 791014531 149512563 651237201 277497100 75553579 731525939 822726340 702566287 385574440 724826805 263723714 150278926 123736152 495699749 100027953 800364372 702283247 166237535 722297132 814663035 494842807 151793095 162047356 542657753 301845628 222182711 26646456 449247252 784392564 729696100 4099198 597276318 995036930 244545948 520324317 791863067 323682298 584802457 835853683 829599354 173655965 785856915 765351886 468307092 48478072 834368568 306021980 368142469 619243926 27169816 523472427 981340558 604136147 141284221 938788655 585026305 40081329 898749788 727355521 934073697 399273104 519682616 510269087 741850390 654397057 428919932 990328678 64945255 781527934 19235339 558246961 214024206 242456395 856703901 224271637 854420925 993413722 658082170 182800066 758408907 590235641 30853377 757653426 488292418 82015765 328974709 689395514 158060562 551795944 151255681 795472939 521612984 859712538 1209036 605497569 584030667 726484998 748956179 948622351 716052984 468971225 871695388 450669431 989809795 880202094 895225182 513754800 155668735 948052595 714594901 380209498 1882556 781746482 807845104 25082889 16939522 625869071 771746360 556648327 548058188 390119402 317471045 554228990 884994370 117102378 838436554 630249730 887953794 333315577 570111723 31132819 972814528 78353797 903454700 893889930 313627071 109943044 166551627 324999805 778382937 242192064 801056559 822326039 341505825 255249826 435414067 896462061 84269765 671032362 740439566 372336564 457425306 409129786 604545610 421178018 738943800 935192973 402474548 223743849 40708878 541415203 100315547 671908032 591277472 973237798 74850302 573535149 589692111 20262650 297101031 758953272 924278722 38672236 256381295 108240137 462790591 362175305 853028234 532684884 712401607 758083734 66948463 811425438 174751599 648625573 232863136 297355343 200040493 257585176 488518417 794535409 920612585 264291383 601911602 163595398 583838194 993447882 766784605 99984922 950139689 810531132 846869236 149199871 263391972 50107826 227040220 858499077 305339430 250625154 561548048 390153372 799377539 788242410 753334073 705299043 285827406 768394671 542825130 908613495 425669369 758241756 152464443 296344766 702209194 789807269 679704957 540286229 969767401 814677852 159154368 355097478 524081305 230066190 190423958 578110806 385485886 361416280 804467027 650838498 248330086 145117483 881923284 893450960 536325384 601869899 588801044 443982946 448428796 982194472 194384703 353429794 398820714 493758961 789840092 337455687 92565346 780629834 203900257 107876569 873649646 270687847 798328881 720134059 986652808 350504162 349326657 174098405 908726664 913112425 696320510 299174211 627080844 245293514 541222033 360933340 121188843 783451664 794681958 395596338 319560934 170307188 401809248 395526126 356194506 875666663 569415335 808500469 569649409 955462701 734433018 587442462 818248911 582263479 672728178 581493266 261374284 454801602 362489560 622911550 875495241 234651900 760090135 886642415 611201658 329879373 214362418 878368121 584791034 201085285 869991678 214911595 78646395 791589125 537486553 143434895 341814935 397268340 57061220 143751087 656377170 471664689 155980216 248261562 397158693 300920906 36044198 251331519 380189324 411779732 42220294 952724256 711238272 158453331 500250846 551823593 65379236 681246793 674986405 4073947 938537977 628984864 700913773 366942107 255695744 278235883 486115971 897065469 800218278 567900753 614746417 975532945 601851890 981138051 676301916 274088313 336108052 612757278 428034876 655789958 891125015 668361690 872707865 724535154 763033795 694567335 34023040 538874433 190564665 674588278 236673935 446744158 368182028 318746911 262319294 147119144 612199030 764509263 539485994 422408442 467174533 601875251 308947155 118153859 657657258 338662070 525546044 490565261 23952652 637405771 962831522 969619355 115224502 759973839 326086909 532903588 255281009 345752064 194448576 643017121 533557546 850962856 736258671 208896039 465013360 520839204 942047117 232539954 107907573 319162987 960176290 757602815 136885774 34703416 453323236 104000995 854511489 778045050 203309714 839839860 630281132 338445218 886273428 940185243 129098317 554434093 412029873 317236157 718201299 853099746 738116775 257777249 416942663 301383848 405311013 252639014 150929324 395797662 798229105 406487234 191571122 112054968 72808774 311898453 858057739 39716534 800045229 589461680 111957906 178912681 413598798 972838258 602189316 287209315 118686428 415311705 119735763 570529028 498414522 35746606 984159880 904923971 675980477 547824187 618630139 507919351 586669894 878230715 355920470 221488369 917459097 234527118 454185094 618370476 95481032 900995259 609018153 996628377 369422319 66318492 848417326 427084493 709259565 459653427 62006476 926638282 472135648 592350497 477243720 254446444 592405087 498268443 681285142 528213194 547598974 601567416 414571553 662744234 62644980 202175639 71605391 663717804 339225525 424040068 125898968 388454518 94254794 699194367 777374294 72529937 417185108 26306226 296759800 429798289 194972647 571044100 148179153 668727771 13659853 658234976 287661381 699848405 319487990 947059045 380544102 26370675 471437499 535643863 418097582 496786373 128491129 996302114 891724766 731010137 235951309 278751776 575472966 264220647 891245823 741920946 979505150 106723597 467277224 581271089 353538817 64690923 732737973 359184139 75244946 421836131 652099988 920445576 780331141 577280642 941766678 682044160 715318495 382238726 679855676 543345977 593840137 524461902 146588285 920702464 725556528 664717895 714708253 738812968 476038835 678466656 11783049 455083858 80872178 765129732 313584066 324946920 680601634 359436718 795420130 575322692 296516209 399895965 232245339 869078368 208819931 300452067 533431961 72943676 934422817 967726233 897880008 398547888 362268530 960007169 882826095 638105150 147615388 339493181 120149906 735362444 322305487 170175980 244947522 471943855 208843187 557952326 605285775 698722799 410093590 217110961 353279578 492470835 784505229 511995360 33064090 633981882 437317209 82719749 453537605 479799159 368571172 300856387 660503394 726928713 713315897 737610853 437305788 490179571 626165829 571199112 126069228 236340881 860596083 930787228 926480235 747726080 79657720 435108063 394869105 390789382 526077756 125157223 374133825 780157007 301744717 939040810 720242794 664274434 856593004 232944760 399686813 821269486 772447434 853865491 83750098 580596084 186915382 626392565 363319902 282401172 717584416 213369875 561947309 174184305 825230779 917454233 943008174 627007245 707228516 174512731 794191719 374807744 628264475 108610814 235638726 816424541 567839042 32800054 621765538 752233269 230167493 558253562 427998951 834331911 35536747 611549231 431632048 165157154 746777657 918339474 645142417 384864167 754337337 525717000 829888650 51588395 67240298 381250931 851863337 730110397 799543101 81156855 432337651 106576590 340474132 345652861 788678603 11507018 655960705 653299741 754413962 404052929 374307803 985703147 409090882 967677049 551959887 614884598 871856505 609260118 985152868 360797190 666695555 367193785 714163246 209743953 657215100 495911707 667943163 35842953 193427218 23397212 951454264 517716858 763952268 389483798 860972924 715082261 563889328 813586852 82705799 691116758 95149128 995297424 259270708 76773779 178421218 668455799 577147732 235589721 481848124 419251237 970876753 515312442 447493771 564318632 247694939 456599885 815715369 366992284 584768273 962147380 874604302 962999003 598198192 348866334 400370704 956601849 891735891 429567383 182879368 125401919 108859776 282111408 752238655 279317993 963981432 567160015 367190971 226715263 102605606 54354709 95101837 903309573 395074432 464805748 829072407 816129616 203534229 539591338 220436921 654248024 117752220 282754307 473439528 727589190 806406017 887754263 295976724 152142119 906769225 274827334 352501312 39868906 947589521 760091679 64794695 524577586 65300268 297230620 831213936 89465457 562033486 806716900 506304101 413280691 468733065 173304444 337739013 44501912 78068525 856383293 844187763 773177665 494482325 238626594 989136937 142577477 33852855 416230270 448219798 265290696 986230139 142808575 9305647 583310510 20182824 294728729 750123312 929897477 816417059 276431427 457962601 610044616 69220408 491447952 927958343 118271596 554467918 370923237 524685375 451883875 96146304 148871306 664405546 288493824 438565618 590395176 724473194 915304653 16014099 430906987 23035883 356806510 741441516 875639490 681617344 521612757 609103423 145809394 937878664 769812447 376881790 187763973 566221689 556349702 724319546 858351988 638299555 24149836 900550578 746932630 652459273 735329216 466380465 92894098 378328869 3009142 975886023 64715565 897899453 94429257 239052359 262721463 223265555 805280572 306782651 538141960 981495560 864699530 939492003 701768795 37849544 600626292 169097689 180962206 312026325 28277785 51794951 853129203 220008175 446377760 897489500 979546884 378131427 198919390 557904204 807701954 626203945 675300278 779498204 553345652 887046178 359943822 874134892 589075783 438304113 572616003 453415763 681129681 826792911 726977092 402703583 510412540 638887090 292121313 104818521 889489620 341511467 875933830 23534247 852955675 379727461 678638688 302288713 370968699 127256926 288219060 852522685 999504099 915587360 565464041 165510646 671292984 70710208 135511140 615363311 749051062 651414614 15756708 769427220 362636532 550958102 89233611 680321515 793509659 904921010 804919293 439106661 765500052 420719550 757658214 941770711 374015572 666266918 253812018 479954792 24142911 494989043 711689488 441283617 990550658 291524851 57598558 685550386 232860667 147429039 163200870 846528079 623869924 465449708 255557066 643490281 484098045 842125086 368770191 62074232 728124701 304051947 509435161 977902135 679586076 398096967 957297898 865026297 506110877 652742109 751661653 379579693 987188528 887052522 20795591 420989324 896382034 678965387 136286926 425585772 587992919 817932833 729156409 722368989 357286698 868466736 537647504 749341142 907660507 887475058 423570278 504071489 588759344 631568128 612144386 405895346 543493964 210781836 711496618 848744030 618456376 220752391 100892331 568374786 23914539 609195863 423493476 269334176 392988010 886681017 444657589 378122748 437332581 697325869 181594100 327742736 166099595 946668014 726950513 865153900 77701214 710790950 962877837 666731429 574443621 117493172 466318934 511683314 933900932 274469304 95068561 296349932 577629900 868848581 505550386 6150127 86376422 451752653 682600903 800147217 621539935 693742898 146559357 333052234 617300049 604349224 262031837 798283119 247076009 553592852 556231180 196204351 939118381 173954060 606733737 786128395 163801866 596638980 996070305 692995563 433790129 149256120 781487802 234347656 138368523 522674225 115980040 963797290 863510310 128506651 927633209 364343721 769047257 703263557 547485068 815012136 634491124 335587565 24056405 400025352 451779175 565651786 852932113 845604768 252832989 231860222 546530082 698043668 799342700 482851773 401752875 611310246 356697065 993960394 895772724 708951896 26084444 127918137 9679125 555976534 13477738 1344558 612722812 645592510 279234343 59840635 616632847 245348687 587199015 535643469 851709853 917000245 34707644 461104034 633121774 54044472 299509649 235514929 247801404 115092669 145035812 720261102 651972573 954979817 823125135 897599632 541494691 978845961 938604905 584111838 103754351 751530838 195577230 301744041 283229755 466963282 630719252 267077607 236056571 404241886 196309021 753289076 237302432 746263667 46282330 574125847 429903688 486150819 421876035 963918140 827921474 304932414 439104769 911722462 400293580 4542316 147404074 193398186 173915261 459259899 447941643 932582218 447161154 302315788 84110835 963193788 577883763 19036735 824627388 193257924 286566553 652738871 735015705 382532712 412173303 264720968 547128451 380428846 557532338 179482978 529256372 743704592 35486009 88282151 444259904 555094007 380361701 251485613 180707662 48840423 875570385 195985074 252002686 426075941 48906727 355750445 397729383 128670497 603419857 494004223 224594184 594652278 144335957 565572923 163282049 919176290 410641814 144454039 115298589 313940191 675702347 605130610 460159242 380743684 479090491 522998132 567064092 218204530 329381640 359494844 423103772 875469104 854238729 343459770 582143142 539950109 342925238 811530741 773750202 436591889 358815269 262367920 223987288 720725572 84547746 602425725 73240563 924946085 905801938 196362214 391471352 177032245 832472749 248076522 760810610 16154576 652319540 293261931 218327237 781179739 396033716 119245468 253269213 416369225 267655107 990668586 906321674 784065671 998292649 520997989 381484135 161683757 100116848 266885217 202467278 755926272 197032620 368304874 659339920 832695920 264553024 332390172 347027553 654349348 812880528 415174403 432028419 468398589 927132209 703136083 927643905 580435296 41851869 56786156 805450317 654068369 175670393 205278452 864988812 683860269 769339766 982079383 99503233 460132216 43444119 988751500 47855652 988172980 80221772 528786757 201430265 979995716 417531952 725550814 211450225 737651163 507360770 254638351 798017048 595856070 80118786 610585286 672967830 363954395 186749196 327820721 789115209 499027878 889113543 185210688 705271790 880214220 967656199 709182870 585694928 863150600 572641579 943201186 866925259 455415012 658977934 287614169 733978390 149961857 955213510 394276436 742291129 633822524 481073394 519771745 493985386 329265273 512929532 94480981 754038440 584704360 135206523 288976363 805647186 266212460 573151835 201886542 356761319 894197932 430844802 930891962 130785641 264069830 567826305 99576632 555142146 821296785 494073148 787420656 538306479 825606253 849696427 694922861 866588409 155341919 796273733 605795826 407763832 687747328 619558281 504408522 821824830 762810472 545591268 748536934 725875746 110917566 288729311 994523155 488511378 934090336 804378263 184863920 570447974 918175242 440346801 919724529 67686729 664263820 208291098 872729223 169088654 945384143 198786349 299108809 439700484 281327319 29587136 202699706 48213722 605005247 668014734 863297953 165775017 763258206 536670927 415247391 532605029 411385577 123924563 704747590 544809001 812300227 505835678 352925006 317728138 342914941 184058619 363143975 843147800 972171947 862197967 973720315 132369260 202456871 756424082 699244664 728095809 876175832 733533856 932095646 173654952 182520624 74367131 721789189 508134000 290579064 452327466 934556470 955636435 243195609 572872340 494327291 70651940 841356874 4369555 40653333 669105789 603128659 621877558 868502114 430508665 439471771 52786150 36904692 899267522 915074502 646021302 47290013 837661809 713014400 726365697 109224506 263373153 401521004 802423707 83785303 570991451 722887403 795106217 161822790 792857935 445602614 77578689 960710668 945281364 468891366 75242883 393203317 265876456 486369670 929651284 547538972 134133994 90654644 660696508 216808491 821077466 525461061 792264272 114231005 963086686 337069455 30614942 816818965 66798038 125623675 298984669 421984646 263231313 721730797 813563660 485095345 559042295 20144805 304604964 833256621 2202043 969541501 501588998 919587103 852706649 711624461 344450788 694297929 597259670 445706584 423164669 309171849 135804350 276299432 521489143 192724157 574670642 363367650 687762005 382851814 28990370 303480005 842893186 719312654 448446914 841651228 694550279 69577374 654322571 31531906 628540522 899483840 784969959 342071156 338074555 516179029 663160053 13437727 110697128 162786515 153401270 758368662 2626078 511086832 473607856 976548484 974646878 791016796 965850173 578367962 64306321 649363124 51865482 206842125 644515721 404026686 989977009 194351379 745465032 887435508 384469865 35287646 82349707 557904178 384633467 908886301 89944713 908227915 468187290 547809180 131367737 663139403 26395968 601582867 581672140 437837920 311407279 150381663 738749185 596852523 744864934 96066567 730626392 156483543 410700182 861767445 977675472 991436418 40500633 671562374 566189583 535781071 104775194 283534689 669695749 709169420 249482776 175379071 353046680 115831013 206735088 197446735 737050135 14451683 646445642 614217271 782501068 300135792 687234498 747254819 737797465 455045529 595467058 826028042 434986565 673265308 267206124 406792969 775134770 584499152 584682336 296692531 193232312 687006878 503605921 864018514 479938233 785234516 260436625 826813387 692875377 521087690 441864109 242024297 723759083 88130682 738233165 697542363 878001334 186584727 525309618 296904446 339552727 776905645 299349280 30712162 771265482 911521444 20315426 27098197 271986379 783422447 925336351 984948181 953843713 379843504 648170764 972235873 889315707 855221826 222282101 147722059 338220194 468093688 348366778 795378809 238614819 234250122 27072790 196154183 347118496 389903682 606716693 592095288 703078213 634903685 123236083 618193278 247975563 691487844 5124252 44698595 672530390 770816445 93724856 429643750 909647011 450049335 170184711 122960147 726520043 829932578 177005334 266098006 2579510 294488979 277261155 112449979 244017223 814197327 764877931 109799394 775473580 159440005 894584445 478148830 818631067 685504007 272690706 43911961 301909064 635377147 859020557 48173492 324669174 51203971 103798796 639168887 590598605 920714124 733555544 482512091 158992193 867093612 896827227 101984199 259753260 765512050 749165574 787057235 618484697 326256258 23768486 832250844 792094291 32772231 43590001 453165787 905209423 639429416 164703973 365120420 704293906 333906351 720756065 538042344 554889700 571776744 264034612 570555669 589626731 896618995 904099548 41887022 908170924 544381986 522930236 228245780 469469972 614713818 390924512 629087762 589491212 267920623 904958392 791801267 375940572 537765644 15179910 548905061 899261527 478795018 444465017 453196876 175387965 660856429 677470695 188419518 998726536 471828504 504552031 43487030 208397875 621397998 865598267 193055120 359620633 457751021 375382467 530773061 40064679 283486023 624379309 483689857 880814522 203215279 653453899 481055297 960441388 965176529 939277396 681524639 264571931 430381904 743341726 342337208 307102702 273307004 845236792 470283599 735743548 91434255 27997954 811380674 104027453 315767169 294184833 671286332 557452868 47961753 504511371 657191590 350364139 694511899 345630109 78094385 702437206 345416311 411191884 938427336 92101703 569422590 913683316 727716693 763448434 346098236 269159186 943594151 594421325 213399698 864390010 517382653 209976188 516230704 669747991 448231162 597619206 16610321 473036181 839129013 494494734 43393874 75197861 755524681 192186880 15829571 428187179 287394158 271500154 367186216 522390282 905968442 363369810 465765267 197027283 171564153 483897569 198715795 600435343 291859668 155596853 796232352 94880328 683404548 457565015 483030407 890473553 464098138 245078284 352408108 204484879 893813200 4955647 251583047 296328207 652170368 893077069 822974151 38107345 626467481 993948790 251230641 417224202 30000561 831471082 492032411 299488895 22936146 759347516 752559379 391014291 57880136 355781991 152989661 643368445 283478633 995119671 169949971 242791985 545337735 217072213 506614152 76892334 97927277 339189690 583745972 636364167 953013967 270726229 135504594 729983739 891890373 480778668 40528617 566163770 626325819 254389039 600887705 807743354 468255872 347819068 999080868 701820071 272407430 779003571 834976051 235052950 396884984 225383138 32752510 597845605 870743594 306811079 927653276 998667138 528126823 843093688 587305174 386970318 191304910 634497590 127249149 907940452 1880976 687185584 477557835 22069205 495360266 695035631 804067677 987472312 296109680 300686467 496439855 24441728 891734547 347126159 224302610 542128160 977629276 980615455 788145648 418922299 752312578 168634591 807461220 515809037 408236324 186315805 805358225 289853348 272784152 845426290 962461514 482080367 388910177 319354021 110539148 398986044 579804546 193370429 995321824 824722584 464428910 442985910 330181701 447459405 240101793 358562226 509262182 407348507 888651278 351148847 709964011 346755772 525388277 692584246 346669503 893778041 221263147 431147626 826435939 237712896 145854975 363481209 519390736 93981941 487702915 668276985 563219034 256326988 970645832 704308358 977363043 257877944 314194511 848002413 222673113 244645113 874996866 274306338 612638225 291546482 95401542 323093558 40759987 874187410 25461262 328332084 174686493 468122078 999207610 876043894 400891660 305540971 363859562 568647879 517394951 352561624 517206515 398407393 596695790 816106377 276566033 189911939 50170351 520213492 814869443 158557169 848524049 505335979 245195398 26826401 437134377 101461758 840944261 111057581 840419835 159927109 411960457 962319335 788601433 543669051 678273423 686073225 886806544 286469203 256877668 507551264 575750389 242080592 501109808 837351628 86014188 960292794 358285750 416660247 191251371 421393331 60506940 789435159 320191923 497395494 272392324 594831273 471228053 919088272 162661244 995112799 981277330 263810969 383180478 34104962 887220176 247310680 986838356 602876195 605569181 966847311 810039712 344950310 980463011 91074864 704507502 137648272 493367647 939014895 576240186 339320423 720391864 311218068 760473755 78089064 653124915 51863173 196775938 935355729 291971536 740019902 355458856 293108255 868185795 535316601 328268738 141605204 150439867 237800289 32846563 140062047 510433522 285185047 895157052 798931263 464777445 665926453 206600047 698513360 913500623 906287542 762162158 501035653 372031063 408569122 350523009 775864721 32089647 535772626 874890068 206039252 233259452 67721047 659049976 241566117 662231787 604721879 403605904 143363451 810820386 249677853 387617224 834607806 212827195 543147667 387157828 464813643 27431292 714044117 71544297 938073273 172272514 800443900 464251851 753462206 425046677 657212765 970720025 498937991 985127455 857982806 95870244 406719327 647425759 848524360 283206017 309866033 519282832 683681202 788812959 738600123 692796449 28467917 464139423 974810670 907106760 217542137 870797654 600662057 499163978 774755672 885413537 602692227 330267261 592514806 144951544 953672596 729511713 4366770 782212709 876160927 27880541 52094512 276517408 682232507 560498873 827517593 661526471 869676512 335764735 186046937 187805688 829385423 829200145 496392770 650654480 758691194 327729329 795785041 779226959 969684406 70149283 675764801 87434729 800531925 291730501 640566607 236445292 746786214 650206607 983596015 905999401 844167752 661792291 896372469 36266741 327225441 274138508 114603412 459787676 851898293 523838654 432260316 756555148 252684491 376081591 206170078 464854713 171190168 574504011 797355984 442876887 619311406 554990804 1932819 434787822 296990904 700146478 256576824 364672357 307358505 439450182 105086139 723178070 425345169 811712459 616814406 927022945 979142272 904624206 477749651 139441987 514416046 393109247 47262695 461259464 861495331 636474521 519677240 984356697 309834741 568696084 24230982 398064697 647230899 431061863 712939953 8647516 936755765 440418361 629225015 761824510 155757299 669637394 64923709 687261547 309875271 731038817 72686155 122664278 209192380 970948820 768933601 944564191 722348112 914045041 6778298 97633167 840073644 26708222 496841320 398034674 9303664 903811024 278643731 646406545 586532835 77977466 550723103 324712365 975934050 508289234 649303250 267212592 801527218 867475215 829157259 946059496 93589879 253448780 465882187 717586124 537068520 980226958 512136163 64396387 775576919 818244578 482312787 187398857 209377222 461805289 434516002 888866342 914880294 720119104 314248140 479293371 323866395 93071666 79069348 71561224 501149522 164489536 707383193 333448932 235320471 185667755 835556707 348228818 111343598 547405780 593870843 388459419 500081419 810198689 926113514 134754702 4289636 619932246 653315641 907605592 438050015 935343374 758951824 498153626 269200631 697308383 391606665 268988388 152985206 568108104 128591628 232784409 838867433 872389605 581782632 448237634 850974454 142535979 437641261 658683375 966809981 879727387 737563601 296140163 668846249 133800825 289192925 956293939 613484372 960365754 757830606 175253097 698163162 695396049 488454523 163799772 66110694 315849802 633999946 22083636 466038155 124225027 631076312 760879546 169600888 620692500 646065431 697442117 84276921 609749548 889913952 804140712 967763602 785750299 665181579 954447202 953813502 191888929 353781536 764600277 659189319 982725766 854982754 358615270 579553177 815333430 530777495 700052982 917630958 463066918 451114221 212523998 262784808 943285923 995639266 564121225 835858972 477701997 690319064 663023060 793440872 15994722 365627971 665688279 568058408 410000568 828131998 818578387 466295203 561389944 930180193 527371051 875391538 6057738 46027576 612161956 631052129 180991821 483265353 869666397 867731710 307259341 913986469 320268546 653186508 987610346 154471620 32111145 319538679 854120309 562693348 851156149 879213650 348161435 85233187 973684508 793226290 599243675 717504719 752622337 687929102 702702912 692838773 523610661 45334592 749184989 385913036 274704554 204543696 140156565 485617325 537401472 227849973 770678045 870710798 400080169 376693185 185103502 242725979 646876934 435918540 7760675 119971583 525232230 450274063 315479107 27921316 919921761 781572194 824996193 291417919 561865935 146132993 34347880 57867154 141792567 353070944 93111631 139342686 417655909 627574993 764753322 356300004 635265256 691266634 512958945 242161837 584097724 119165822 265411613 218369024 494709835 968587019 204070211 477737515 796558109 959404294 439581825 333696498 103306155 335100267 430433018 826779076 269381973 55227490 38969288 405963134 863839237 962024590 189313215 538800323 575809988 514085067 850429211 764224656 602594155 522553901 267022684 233520451 736768989 498781798 631191307 246655545 333886020 382025102 946989445 205464437 475616830 765057542 413226816 900464572 784975337 602499487 597183946 207223142 366474874 756978490 562827441 880826363 204682564 903627865 110294292 575963034 752544593 918087033 834934952 371124969 803296547 603205276 730272770 840207604 204042105 238321371 31226290 982039723 474366174 174139414 253010037 8845098 710328899 650974635 671425143 692414819 62355141 268486739 556144710 820615860 985618052 387100086 781167768 581615601 670887768 503080862 864988364 782380778 617331489 934942241 197834397 829708684 551639495 922032123 715471793 183768764 709116227 772048619 975909611 539778807 783119722 274540726 845334697 433011833 32843903 115726732 855650130 841171150 31985393 555475811 525690457 451886312 643515045 884129927 385579492 367624951 552187280 872610872 711365903 224376841 218698849 591871465 166379808 381023727 713057436 70553275 105784144 574784497 284687788 471570683 259295744 517210486 964351971 204732963 708592788 561179696 175468308 107503089 69976609 211726568 927850187 149835060 775851536 808667171 256374973 831456029 684984898 730098457 610710976 390280842 719639159 793312226 882525081 221793515 41539592 77345328 147640318 754201771 44034446 190170251 566580967 14682581 238021558 648067480 997075552 491229852 264407490 847251922 974489484 334904381 955071720 507427486 397379236 838392365 81658629 224011081 382060917 289148670 847486553 868033555 957263349 301655106 690335813 480937633 220785181 426218142 429524689 757553169 269790473 664094887 87807525 710686667 581085671 66797124 290811015 85115547 287481878 126620266 731155454 685637491 414821125 96439107 59812093 695189072 331341140 176568872 310708356 368971748 606577178 596998549 806926388 251669579 625132609 573256262 16174420 460559560 780246332 782481830 584363971 294536254 538177861 690575785 332643902 860738707 633497909 484337199 603679217 580606729 586706482 292450828 555628749 854380565 404587358 965311274 183442620 633897725 409780480 795315670 180761164 826356642 656964221 433130382 654846654 834942117 288696966 425137383 168758740 472388497 664913806 202065554 402806316 876203519 312734855 82087520 592369758 277321967 300922823 704743307 216316251 97373281 59095608 193630444 829553121 993968821 499181199 893719983 972863999 480268506 150570166 410200046 663402539 91364335 757600377 674853557 358941564 28107896 102151242 221796485 281625316 419024087 741367455 306200931 793449624 149175303 769038816 498286661 261411970 978140391 730829234 218171266 652522487 656372171 501360740 466922456 698518399 181383463 327647062 461504944 381243880 48010632 50685121 54336917 863434885 439371426 560134801 659064414 971123017 47091865 928814148 598171032 532625813 267462419 103600248 388270970 640244997 91702898 671381698 23481482 932209206 607052675 955354510 905273443 832092251 897726207 956678879 610793262 232551572 153161696 729945024 836636991 506159534 766181223 874959558 801889235 731572696 172164687 913439330 826478002 53612875 391214691 311480347 377044203 492546888 803757170 60295554 681183295 738438983 934908694 315869061 513631473 351518323 889999909 837173604 387781776 644317019 333733606 225399928 637720758 865282539 844665516 271234350 819804775 174027297 782027897 667826322 810476415 126920606 642222524 343816730 390658449 655169073 792327167 906911493 857596854 835796730 517656319 526122888 163177694 427105857 625293985 597934469 508219097 472967488 872477180 247589598 269941822 41389343 885522942 238031843 896077493 460577238 474419224 948748367 58794220 690643046 490258236 983318841 852498029 136369156 478496823 107089809 454397711 829493206 614913606 934319391 314141093 757708259 719745064 480459375 738285935 553753298 216776601 834645745 293056249 997664785 960467918 954843245 182107634 879699165 151728128 116624531 751348043 733960200 755364323 318773192 783309699 518217506 554264785 137998926 812307331 434413478 260549096 577656001 357742467 328998990 864582021 988627991 400663722 256416930 403946645 778642535 546401238 94257899 359220573 712933726 181281073 104336650 829204468 96141910 965003633 971560419 419253732 326491112 552910870 871083384 705325901 171184068 642343032 136107940 372415975 392878638 322276377 998641931 769250104 84682183 144248989 376498690 321412261 246387221 15481065 44823083 194202489 847079241 68018350 508995800 145670681 845582424 593569497 805897989 927942769 440361090 882764116 869543914 529213258 417717966 405840153 837857741 968592837 607239341 150011535 436335332 273998418 283888275 530629216 364261056 888244115 286442951 643995171 975228148 330353481 639597633 225271360 422112071 391433886 80337427 333927551 683926116 39168717 451615812 273907428 252558999 651544846 233800455 742881992 372549584 391338110 634174590 689723330 668544349 543395114 67574535 492262455 612637365 169891497 699869813 499299255 822270045 559340923 197311002 491386857 418025207 307681915 759389406 936832697 270850627 357481755 564636681 981327267 491086610 445816967 27146730 645930777 917323905 437680580 576113998 324729342 684540920 681947973 868781260 486903799 157704812 153072528 560259031 517142438 267957784 989766929 255128423 38806861 565517013 198145626 163541465 736308436 453929072 590525191 716229134 432055791 663041702 282803055 728500792 859233912 85105635 612730331 727785801 840417311 133398858 44548698 374855063 963081167 568422322 734623668 253820433 544298489 999556489 128875692 528811611 387044242 357281613 802841844 283691481 366805953 93132960 325510199 9425895 557352872 62902892 495207320 243222992 669057329 375265339 645149545 5157731 733812455 302131175 33600453 740675656 475008919 936799683 583024819 524592555 474887439 473845383 742717246 366275413 590517593 623058596 127653901 307413103 655645491 524939701 488942167 32748243 107028465 657694869 645169309 436314558 905637942 718360736 967117675 48650231 175864293 408473138 425336226 427647875 507034453 277341930 80929057 513057740 105936569 465694073 910014538 4276620 399111024 251708979 532367712 109040058 208171693 201683129 549347600 293186715 698517665 463339847 236771072 402403287 424642228 6592125 26276246 53670518 39671419 805993679 328897264 568603205 964098820 229413781 360189682 137509708 742028894 486098435 190192549 391661566 252903260 623431566 154900644 585482772 847076044 117839692 803448078 298852893 127398431 709723843 131079115 205182507 145970261 404622839 410403042 189576010 543793079 682768720 707879924 969376025 927744841 596358374 37821694 726828758 511387399 461594280 540232410 121507314 989885994 751851989 756258642 631294879 691620638 727840246 807357991 383094847 781652607 311110170 277251317 738692677 158447450 67826898 656340718 469928070 546496303 573676438 808746837 826065628 670856515 460636659 996751178 984029769 76294748 36949221 263320507 790026955 52850760 737177392 438616642 46876039 996927148 486506772 943989398 345671561 236087013 108319669 6491841 536196446 153797385 60986790 402929166 288496006 590927783 440298751 448999593 232949213 119022151 308659630 672922690 242222774 800813501 20054219 644651971 117714629 350427089 881001747 892559605 544528145 536889921 221676293 656335409 967065703 2943941 902907082 348032836 163327577 32332971 358754737 961035236 834066685 208086085 265957509 302072138 988727883 260946603 442860129 365089650 586184688 387433689 802903756 755879979 92116607 954680631 778920259 607366670 492663854 851843574 243940487 271002304 143203905 142854644 179466259 77324246 803908466 545904769 445072776 40638969 788132579 360208427 52469786 738470003 144560679 244225384 5645117 783974257 969320338 276112919 288527340 575144121 466300356 549606976 503385116 683523136 44602435 814535281 765802248 885970116 547969318 446643961 315991429 135219559 631377772 347929061 216604383 591466907 591284518 841935070 355667062 630281512 754018322 624224826 3192587 752397800 191182866 714017999 301396920 967962862 628986951 88825398 442572222 867022758 242498839 73795097 386136370 978397305 299611605 67690439 823981963 622161829 838701041 23964268 832672832 521503747 47780636 936214615 188574954 724042189 395817507 313625857 111623836 925313578 351027431 606619145 288399182 6758348 445559299 382182376 198126241 452383504 80691949 403921414 729510799 361479001 351921644 654578685 973398239 965109694 687398209 63770437 228266261 11568902 168864994 434429135 290448701 225124525 540699213 773482643 609014457 597730931 962871063 473853751 285274693 347522591 26758173 709200573 727998303 664043150 552298075 247538522 397035757 730791889 604556817 451894198 772687136 963824607 789613103 422291896 231995637 5815732 691946395 449198758 670654896 769621885 626779228 955510079 477923846 872311939 96740169 48862426 153370749 731612806 808996201 98534684 513934764 425526464 569804637 981536439 634776388 780417820 696876459 918626569 857589406 229858023 971277851 167073556 80002356 873675370 484772349 43747614 592684614 160231671 157901482 150799535 951667919 33827533 223643065 285908131 267609336 170428382 124655004 921200465 600666967 322566106 438961001 811142199 949885971 353476433 276078948 808757492 371515947 412375019 805355579 123825411 151688085 864091241 974902521 729947755 300130879 19928104 570358124 192709614 389095635 998747995 291381289 551977978 514864889 812817475 737395548 4016025 293396919 271228429 118985337 884921483 277518321 337752518 401476876 245006095 550273178 141119257 323953486 13337094 677163009 553799705 885728549 733822159 943093769 717189156 405477935 42991492 338497301 577055290 783165140 666544979 155030302 44661315 970640694 385282656 261805245 637213038 783053399 322075418 791635131 490451417 227940706 10754946 354658357 727206435 872972358 6828621 408067713 252546594 724409351 917443619 852653989 463386280 558015918 965594080 867677593 439590431 870186666 351552168 757318734 807026651 665136774 500075518 809307270 294340259 802810885 259484425 682343041 664419477 810757696 397371387 467661312 423720296 283526277 467183965 386637025 644957926 741949596 860764720 155721062 924654219 514195887 421394720 451650011 218128839 481526414 621613797 546190613 548022541 986672479 948359358 461194103 773615526 217837745 701633843 878632440 5679019 939177701 548970773 463540061 825026506 672039278 445559639 586943412 326089824 181242690 409136524 916944772 547089885 778913946 614792184 714747004 590162867 951516290 9984913 224250565 514501527 464482044 531464389 34410911 814433105 133591120 80353547 650939278 905558531 273198988 561464626 369833262 864567939 85707239 543694612 910179176 724274144 15646294 454248345 405734761 422555702 315413670 323639546 502163727 257959133 859352280 176803149 250195113 89843188 174726392 548033212 652453066 522201605 229637347 987305484 669949516 775969881 307858456 232369292 173762433 969038683 982792667 356322452 892054778 227942421 560782520 707099211 438938031 396526980 737946687 552866312 772591394 834787769 286951606 224698469 640265090 342739850 396878862 311104996 719819229 139690227 575843331 139331675 177267983 95921186 931806059 369392217 948291225 859673078 87065822 651023740 328509508 738315848 141644052 870970654 856318661 474179794 835098792 174005227 235709058 293803704 152792444 797043209 876904542 94691330 740077937 329899330 718513383 58614323 147026547 755243731 280002615 280576167 817868036 288526439 765833157 416724998 937193651 644700605 376591679 539721857 640780088 125847633 745625765 873765249 76995387 77823855 148242542 998819690 60669989 558146607 246312155 580223989 886412550 251121944 511090264 826828493 985202772 552273380 569616319 115890477 568346976 417962043 85957417 328580748 367565670 80285297 718458081 687910916 156022946 537214551 29681822 674194667 484432165 490474440 704032454 632658845 627134287 737448351 548508333 465714650 593037472 309088410 348593732 158379150 411202505 624450831 461713205 945725926 178192928 389928861 804823076 192517828 980231544 140319437 997571167 513356011 431096763 569207560 917364984 626791920 417894837 456485129 56160024 779546010 248274167 282704538 659048140 317380265 431851182 365390297 424660463 379167373 795402465 494971963 394400314 258003299 95226704 802479992 550289448 918586737 495337095 345135191 325413871 46054751 437347871 714376708 478947932 179167073 475470896 58069801 471859371 723672718 943687220 256391152 298221647 981361100 167699137 740219822 676306009 401007328 44608440 974240346 828784711 321975554 393369761 135625396 71439126 632757093 962776359 115453704 820603640 289984529 853290722 483889148 408082322 517699085 825272693 280505394 801346373 718053799 565047141 56381214 811228293 72131670 52259896 626391576 187106544 396352874 101718476 675831738 937407345 844228227 914781610 826726987 439007614 820743892 929657370 143284909 121395979 865753489 815047092 300416422 85228759 800785154 170590638 16379290 384828072 380964083 554277831 367986854 658939094 849088362 274763768 211157171 468821703 236317735 135862750 950364541 10737787 354699920 583345197 414603508 276346105 468488446 219714169 371462028 543857305 131272302 350533101 285959147 652234207 10988142 205339870 452742117 831725664 232469839 39431263 925427121 944957148 477823309 350467450 128850501 132938342 387931906 865182799 89960427 498775461 901582994 648618529 660860410 819071002 636041550 553158978 321068226 698782723 638881915 502881586 168779020 69441242 349479352 90478224 817587273 374413917 229001490 633209826 173533379 112949690 477984988 98104832 660159877 367556409 800128972 339635156 945236563 850317435 756817596 765120970 251740801 180310500 173540923 899619694 155551829 580069750 45625168 349573099 643344097 537959242 655622893 192204089 379025521 187575470 39300036 760403283 156371115 266473347 968393718 533801975 374309121 334650273 751927939 483368132 974714650 335074993 531767118 612230844 29080392 583213981 701773629 218624901 705930280 528650226 5812152 235736514 179038689 196923734 173089514 287330142 345115190 276058781 624510567 564664720 740500204 802453456 567721307 311337110 276776708 279753417 277718773 160835893 672659161 860718521 276625362 277080975 37075525 825669990 961772374 504588261 810314075 315256797 205854660 939919035 913080691 789967993 760230461 913750245 213748479 242645193 610259336 518467742 235774451 341163921 861992886 39712446 820358208 873732480 766668943 564575355 463493227 110697428 876167709 849438991 53968906 962706013 868001775 820576535 785763401 156219243 103128899 259049424 133974392 128091576 86328122 622863175 343876191 945531772 312931607 663155669 551285019 652220577 673080443 897283483 148405787 91077376 669264226 448036970 184509271 453967729 848306128 906566497 799613677 156295325 185868782 421272702 367914868 932626277 697956847 496937910 808899272 303496518 263879191 861436754 183045214 743734463 139101169 193178010 503817096 294760262 367972179 667920718 715136811 567875289 746970273 385890459 672380445 286629299 141302996 876850414 984612092 209016098 912644322 934960552 727811465 40477690 711948944 916863242 845768104 218020373 690040192 737085872 539569869 534711928 778201446 177551109 426064019 951945443 590921278 672953901 66839909 676073740 370089787 929774284 341574938 52482227 260904232 360053792 513306010 675008742 544130553 534744082 447451763 857505799 846794602 776975545 740083904 392188496 502783020 640300196 346220885 135034948 723145513 32342093 984225104 3005652 568390427 47951869 350116732 973853984 875311038 715601819 979988076 158241928 415627478 778454054 789852728 991332911 941906130 466607174 684176456 157381943 618285621 428386061 746931879 985961474 944722692 954441675 528145960 308959844 274333191 26895276 666084446 258313719 450501212 655275208 747246432 362796437 104187453 153820645 960014320 988535065 73461935 863695760 614587828 559856544 328618193 984165014 515047463 537166056 520559697 96759631 581784325 759404876 376976104 357247834 731543734 860929154 65508650 966423205 589037675 789579195 816764258 241421243 12824936 944857104 172379170 250776419 799926352 144954131 573532755 205172084 367019389 989635590 287017114 335805544 247904547 996151498 186471445 321280754 734348033 222384365 582970184 524711075 106230566 89038307 637962714 743003059 641613081 98055843 960455099 206861954 710937821 19144816 711025605 220511116 497258341 923665495 17547321 123124970 26056544 380479842 883588550 832920151 30738860 752326184 910264400 803345959 251561356 904457709 102996956 321838819 420975396 725322074 165992897 558138248 822667781 156733585 862862583 474880333 922124684 952862754 204663265 217582762 54463921 524642420 887339608 486097795 479317571 965283085 541136308 35809128 470199886 14348060 71596825 696368696 949244683 514710874 247358968 289974989 237559300 2958323 908035308 944203159 204045785 74409885 938127147 972001615 212436453 927103081 794424849 424892609 208820188 690773347 575232352 679910780 760195652 345567303 532082350 615550598 680963858 721490870 316753404 995662706 463540046 624809632 417693883 439602344 442683452 398277803 278972248 830411264 434665421 102362850 460303192 649401326 353290665 364326145 171605740 748544605 700765017 670343181 250548718 292422265 826979920 710633041 631476671 489809100 224000665 413311844 609580968 566756047 482094559 2115929 968714315 113373002 983493873 535293700 998843526 87620522 486633426 748959 742682938 142367668 840719500 545102742 836576210 84348401 558397254 990867351 771418812 647894724 358564899 608837142 767483460 362380206 200060317 884178431 110532707 639682922 44522432 479017841 158848255 255155878 963180942 973392040 836055547 502710741 610444579 286978812 724598686 209311309 876012489 422430011 590855247 451471940 513287487 678936509 530321974 201182391 510217943 765037346 916395114 897259107 477701775 529367278 177397815 565539934 761027661 376838578 246002551 995654493 663574115 837504962 733538902 854700513 838668655 226271580 464313731 675218500 302028419 972695779 791895050 775783510 439714289 909728739 905122043 730662670 127373399 800946912 94813967 515976910 335185144 94091338 967809920 710734951 640056976 843487192 276860231 350097067 544644681 709290397 829721715 344139590 333680217 172686994 469788202 95171943 671615586 877331554 417742008 145692445 671212077 82838623 902730384 648060214 605728395 284693530 632121193 42112975 213426089 799651127 10665364 809624447 873110713 762250843 630127234 91928604 275672740 624777365 908373858 983611138 394567630 813521494 184827972 532542789 678120125 34198971 801433365 691099019 209199595 449592508 601824385 807788966 249086758 222903708 935870941 635850135 6062940 51583313 90969365 606184123 130736764 736209445 244289136 692007428 448189673 756145652 46296785 448601835 158969586 604347972 517311449 100402926 793344634 128950023 674359048 881010205 260839028 321015792 383411087 739366683 908405751 25495302 62857004 527686176 464857682 247294975 428231413 686949322 602134053 171829277 146807647 798602943 103621499 696532871 404610661 734899373 430320995 621176146 815890483 595162810 810503773 739549299 403504289 457041414 37032140 568785202 118743676 355893998 368440005 395759800 154447966 896507556 554466026 179347048 696665539 772907064 783416322 691848983 383680014 31889218 284171085 515486285 914608768 382688956 819129995 368423488 852026969 564127496 453518601 69255091 84449986 809776379 180159234 253521362 868581802 189371782 849673322 246541010 66196104 830040675 7677102 495939064 260919840 610481394 860752955 564111864 161494400 595310587 99559120 103867937 59295789 216398276 238573625 450969429 603825096 718057635 512704420 281451013 602188390 661773516 931342094 702898608 831396789 230197954 83405242 875554039 853909179 315182341 868545843 239302275 853332613 843989318 774699938 873760995 442972153 739116557 534630246 162213189 836315060 247693350 845280492 440007200 200276584 230962059 738557852 991374723 883999513 96399607 570952398 496474782 671123558 386508941 332348225 353060656 709934722 771148354 989140744 432090613 50706292 690634897 960462106 52300124 27254093 840287937 351203799 225854104 397218771 742153915 933103590 930169506 174691764 84316580 52750316 448164649 941522855 898666621 903115949 157225074 81470024 249253892 958686441 764333447 411346913 955480367 903236767 922531417 279900533 25647454 524987640 641106118 113776646 798629232 36298064 301433779 164597960 513792397 794763252 481736487 736656552 334797607 18879994 527095079 114955686 88829370 702765034 457548975 891400724 495946511 12474645 978878879 836077590 318570863 714601504 525011736 337218398 413321197 373521176 185730579 732422339 276661398 627088489 13685230 735312345 376294135 836859421 241419573 318322411 438127771 437328532 367150641 220162362 536716783 134937852 730831489 728834515 684375338 525738216 708025748 976307487 214589980 938792925 624234824 703792087 919108490 22820122 137388877 177269956 347106848 635982677 131679062 949874327 296337389 12077053 791017980 344822492 651403495 69187627 591662525 704853312 834876918 676836318 569432305 606490245 783198464 886536783 865276437 23828228 436771158 691348109 431062342 251011535 886243883 702471949 808951294 457479578 540672376 338304504 33703701 336289629 882435364 878845742 132055589 809782313 368240702 363627212 573833731 923792211 521974211 477201053 527283999 59868891 230124875 7540821 603214441 484845459 303570469 472093542 650997233 877124262 759356045 802559645 933199827 135497284 183235078 466177988 811384976 66439369 137004543 531900391 881912502 165386128 437577407 101195854 919162413 597202802 715011775 848855639 107841711 682799565 190016371 29290083 195615537 934915770 307729879 844530439 263263610 638093069 961107573 601122811 378124844 460765186 514979183 883526993 66680532 884562465 225647715 94932832 609065048 143135944 782230425 51024304 134040151 384898522 913390177 392902308 410609046 478570094 432573313 557698040 648884813 550255127 610586743 337062393 565369662 662273065 239188315 520278986 633453235 451949612 378158580 29668749 217614638 204278593 216345453 496683445 895193513 321278851 791730411 673491871 834999541 378682954 477227561 674441920 930489211 555514750 348357867 615263166 360852610 319913913 138614421 79497517 102522042 137594740 860168427 930147683 85876252 604094689 114577443 481885305 528766218 492514505 213712567 579160051 227795029 491250786 114518874 637190110 770654485 703849806 352054408 985769363 585361141 277646333 332884401 823232291 805626415 129378159 999415237 876801248 363797059 458572254 301617459 565308970 595244298 611512722 71625966 661756359 47718785 568317198 416855241 685575595 707221528 99556122 903807297 974542093 434685185 278456726 766633521 553215244 978478297 732243959 820310990 187522738 288909262 410588246 897634813 749516568 507301313 94405961 670178719 775249481 846204696 564980521 760109629 730707336 775049838 858715374 334975615 922963728 187478677 445750888 785709281 368441902 424563119 912249301 890761846 931967975 444078706 879697147 40086047 814810876 808414369 177614849 76431922 170151267 413881796 308888656 355241559 825945453 452181728 667184350 508303490 304345408 520471719 816428560 800788503 896043989 427356279 884955273 369852564 366343864 777194564 149012129 369689923 773821008 491173623 141676670 631983891 217712147 905453415 373087622 214496723 554828612 117898238 42326142 342350231 557326919 725919038 976480464 407893256 163617712 458805165 40537496 63204021 903427631 355259392 555560361 149454442 312761494 514128563 995493698 263181447 713265448 730938203 259961796 142793518 33048818 448532507 949672376 552355726 82515373 295710812 132638644 843490240 461910170 868136435 199248794 315860292 594709158 52914171 433991272 644525740 724820139 165329376 892004419 610892395 560173309 723914577 798186731 349845799 182244156 828733108 652714358 225320771 217033733 574364288 934411718 261988361 405799760 177500551 923841764 798241444 976442606 594843827 688214988 214707700 720436053 321607890 953334998 385133503 604030584 983790442 494139925 433707945 359931398 106402094 667991402 586976498 298914319 178451341 44469477 117521604 671171284 718703147 828307441 424693587 407381061 472570756 624390745 106254338 319103386 473663075 558640328 727269687 514213367 944708653 198515864 467875357 466917747 973856976 345470827 650656580 916737700 645651846 121933318 613041259 935217039 39326753 122077143 915330720 984128489 975806449 72394970 836811928 861386042 56971555 78593307 317110839 351736686 328669834 398805974 260104497 482431441 700829453 602037687 43059763 366472875 877023803 902712870 631925756 837120367 537314953 208625045 740615196 744749779 84712218 218808201 292547811 815849788 852688579 530324971 953319714 401340183 726135380 767017340 133290573 985604843 349208062 76059217 25006318 246457890 267183813 313674169 279506242 803677075 544118959 849417252 195477328 599492253 932585990 316465613 488307675 930619251 745331458 130341277 38003190 148342471 635270643 371973174 919457785 643152605 531254694 282323441 790716979 556312145 987089605 678730033 213553442 63315773 56497955 963903079 927736634 301813289 756959871 505909627 357986976 328448599 985578068 793555043 203570533 202654383 68804211 431885447 949161127 70243458 458937218 745594090 590863970 109999135 895900366 425043493 15873039 393399877 373384766 835973582 798793441 538238725 207335747 343883000 463492224 73503339 156673415 979658613 191107947 451818907 477004368 420727394 73638100 930241955 511845355 731763048 779088174 841255623 321133078 759936146 689273519 551891989 589512163 274348377 173878813 898463621 640183443 216191161 960795711 673682179 905970399 890105454 496359489 438668171 6452047 82732648 499002659 676756571 323968508 399185722 103831890 764238577 86198924 757287186 838786085 291386503 975022667 309829917 523806108 717165119 201595330 524159432 328005861 106637839 501499096 983144191 4289141 257399152 814804523 601214729 886836279 309242724 688150201 852155493 238736950 308820051 118895334 260958176 280223461 407541383 440945434 181187993 413293029 694106044 529029490 735884375 139801005 867827617 331223316 523078982 861727215 704460428 724528717 682938858 250303657 723535384 612423556 525995668 755045424 276980293 929933328 515232789 106689916 660057728 799792614 472955280 612067037 314773238 424209246 121615053 11688546 534167690 59142662 450122995 137888446 559648172 57119539 924158648 111559870 147502498 687384582 948089530 366819584 349973243 384505153 759960370 875256439 207155660 898405894 182350385 915714072 668028001 50193629 387656173 551780976 557861320 458687221 178294737 521998931 715235835 810679975 959936814 175475749 588233723 812066798 452923705 80394217 614678710 563830442 250189649 717446540 392937499 788207281 772249128 48636337 780035506 802830518 753764898 332290858 36481358 170939380 109447370 265969312 249316568 962795554 453257872 384731486 201531522 686488265 471233178 828766799 314783284 783065171 816622411 207929423 966630507 697537146 80128525 131618720 319013606 213446702 555792763 448916236 979318256 754873110 666997224 570314192 237658256 485169773 59388367 627228143 91479132 188678543 79285535 562168315 701383209 646802571 472002961 293387678 180604493 757572002 736712253 819119536 451111299 737520533 849413510 788765374 852024051 821741963 340770317 336391741 696799597 781287145 397477786 317035745 58792312 24765660 635108452 226464760 543324565 296188940 147234004 240588885 793397080 322273990 546245917 753702380 16711956 696972916 648646439 479088477 405974413 675101334 832218886 712222784 820284223 773576439 97850888 110842839 865880282 970763486 788299039 146939310 930924801 358302860 326237407 466032596 422499585 189301349 837784132 869570253 983034905 470988810 707212336 675500329 271235171 134084283 252908704 788428074 495063881 806029361 46800541 749156723 20897508 344111927 963084830 517399391 483027350 999259905 668271996 64973436 947062013 166151481 565686570 974985235 638945876 311681670 696163154 595390557 918988513 85639302 514876411 260174755 344690976 22855745 727335224 935831524 282898235 813861154 473460895 514556738 24451988 403938273 239455928 840943300 118362687 685913013 276802319 610812848 176958099 291124157 485290204 542308883 459814177 863978907 46744209 448461316 502229469 596832736 795471307 778415990 198023528 926381685 2629167 130884526 848717795 271452803 820188936 376143885 573410635 97514510 792726826 433110141 44786454 103547854 911616115 98517326 196082137 11265935 60381722 279985658 594357989 173155869 558086222 881191522 981994382 480426818 141892026 338818960 258758615 923438738 474605221 368070452 434990210 635686210 268057834 931476065 388383280 575001035 183346365 652226444 482721155 188304125 286497804 225558687 111637389 690445795 24730252 703795981 317465141 266198500 189970448 761754445 996614433 649469817 118839065 726203052 152360001 413710761 964707391 5361986 59114116 393017136 496469529 977029009 102170510 649575428 408087715 416481507 276193906 61752839 873451666 323728535 744741414 647003089 530204702 928533248 647392529 129072538 585132254 264639581 335729187 370206965 92096300 200601309 666859096 838072514 955353006 799275568 121251079 487127342 9317069 335270250 478983337 905578166 493566490 37227204 747871817 20203923 679365183 389037344 99361671 290068502 95137526 678930759 466518894 82073680 976372710 977850574 236168116 798181604 936301001 837807039 341595722 411996168 810843880 915614274 750287438 155601029 807577667 375868282 853068815 616117607 267765259 358346793 470746862 942375824 292840246 969506133 875500505 112829744 730197619 332271060 606687457 957595596 65321650 406721067 309190022 50705951 94300024 743233669 64723319 370290680 352057626 827041737 845905093 805735452 486360015 84068863 181103607 629427301 271471337 2574522 224616877 266746982 851659074 140960606 87509996 259545284 561572631 52469342 172682237 210867872 314745502 35186764 980707165 180366758 348609036 488184837 983083080 90092703 55323923 395675547 8767434 445317026 489909208 230140072 854622108 997007815 641386623 534773874 948175573 144799545 149512227 833760954 448565037 124182519 998975666 920633606 575873269 354491880 395839347 161953367 767038862 831405759 916402761 163812158 372343440 72127910 959852335 527677688 160018135 728793214 736927731 418992556 91829053 45479314 830802091 945627113 841530137 82658021 342116749 513854841 467701516 131605005 661961651 978756334 619666836 232510090 956775287 869042953 481388424 372734509 996535559 202369106 720397091 27280170 758041943 370429631 286101954 961524065 688333054 313845010 816397207 771369663 93334107 343525940 203591950 645982205 288067135 381497741 940636479 509871701 39725338 593847121 995831309 144464312 296926605 497150422 585406939 116608540 202824255 772999304 619797568 116199185 42970596 481590843 605160591 37489174 859282067 19381259 570618095 8394022 780302162 530321466 756535727 823605534 831895761 78116984 47595326 497447979 296051598 233866842 652206832 909630957 898169672 651897930 770923378 672127992 952534693 936022682 516448318 984120281 735745700 883236237 354907626 551743623 560587261 215180376 48629391 854340478 504935753 289679576 591506495 412962157 523403632 261603652 581751648 634103466 535490951 142305473 333308070 296996339 917344866 977895479 706090964 979310237 370051591 186215387 643780118 867526281 189997273 639036616 812662183 105205687 174690215 430935002 668610434 909679756 883953784 230852759 392358760 837789643 121860943 78456088 30828229 628617925 363051840 929130176 967024121 791354208 32664341 990458592 818912077 644896976 602714687 512191404 820101169 36398154 681893757 902757180 814759043 178427062 517567246 808393340 325645192 916407731 464725316 828754346 904722682 829662051 739862965 207383840 421850421 923809327 21173641 770215015 407494524 983042068 784552918 6327008 157222242 452963821 247707248 458224266 549197340 348325895 633667691 562273070 19187281 551320126 34875168 106418130 610918115 242893180 647537438 3405441 960326146 257253784 610825938 573112496 649173637 350894683 35996352 768729853 477565427 324010374 3433715 727423744 281687807 219476626 909331706 850104190 464583600 737426334 983874571 335149340 503696616 385663556 593102597 957428061 215965366 730142739 558734467 390584963 440581764 727478050 256731048 740060725 706742462 890325543 349308478 439156130 788842968 643208798 176500076 396989510 349975852 830369266 377591364 626170489 658045104 531329995 351190572 48072077 19890331 928537295 76789979 282763525 416624393 741799365 309048081 51840893 37833107 63680226 897287589 419722172 550393031 124780781 221213477 294819405 227166881 458635376 339192397 397791948 984092613 266216431 650679785 782433023 733364821 116401748 610103355 655063575 894117305 774959163 504066106 988483673 47645354 767262715 322182573 575826622 219246703 965302800 874235324 571628722 718528519 726152789 976940591 181163003 109447322 76892112 649476895 652341351 124098022 796514926 890532277 53420571 819590979 639671664 177516285 24812248 783566214 913445434 743953768 302292618 679628425 928382845 446474726 703294150 184594161 513242955 452735811 973291481 748791801 993038561 412410886 15591251 464212077 804382184 122034499 666454594 631281973 688834714 398964939 604504374 197984166 19997865 710361103 597383491 531717080 701555630 16576732 716407214 768794454 654091485 797621414 172057872 331713067 414264627 901210921 438982025 801578986 763355296 138278645 148909137 593918580 175516036 284667921 354730032 649085556 437590500 506565011 221400703 590877010 292715919 14420999 778955827 992230906 259574032 50776556 298990156 498195825 507239782 174746273 536568541 697491084 373759148 781924465 755674871 36440848 770411277 336512015 694856324 630598076 890593703 523945759 83380623 727563627 136114667 82470415 951030106 271126481 71674785 621867405 734576168 990209698 727207192 212636734 601089373 59401943 122053480 663240328 869703635 272685847 653492783 119307630 631515138 240160644 885196727 505196293 71054191 835199876 959787578 357860947 859157180 47704868 673362992 816700506 527060021 131452502 309795658 490704913 516052741 241874786 745671881 133274601 127942184 56009479 717920927 940236210 318918753 19897874 245782222 310376517 401606303 92110737 579147692 396173220 627854945 196554633 686284956 89425369 195399510 784773899 102280802 46898788 380028874 253075433 974330046 266540521 124047750 981270629 983915570 803079663 552754619 754969596 143129563 563720427 876064512 442872751 797865502 96452254 725815680 646006876 161036880 266186056 875343885 353196591 770517662 236574846 276631713 160442144 722102398 309073870 494133841 846595682 434838126 521548447 289456531 407029425 533255896 502986188 322050656 296750331 416813839 359900936 500103946 829427953 361322468 135815238 288860590 587272188 729929588 684573727 942551689 262914308 433392471 135338351 57276952 109773402 162313140 133160453 638962386 249392222 110849881 845004703 879647966 828764227 114543562 565080626 521228812 538957003 776623640 717265384 207314164 419074378 165204537 924285293 742274105 833710699 66951825 216873091 226877429 328888307 731736290 491365434 703070729 46212969 389301351 356861851 7388684 580403954 673637994 195489007 164294529 872692229 642789423 357526628 295035606 590545305 457054018 432111541 21499737 482202872 973550376 844911616 378187307 78781954 493216035 394712621 724474185 296881806 921899919 632333155 369340146 369774591 363740504 620430306 990247111 740311445 644865405 227014573 988693126 104002178 161827314 73881431 992449699 566849770 894041011 434640520 936760334 902089012 88340194 802994768 244342034 591758759 938705609 405814454 277702590 769476982 434277311 417964771 164995626 163575130 240341636 946946743 627693030 368115028 202838475 438471111 29136409 550305383 819600861 308943226 590398522 418876038 211495349 538862763 475339580 114044045 229701572 682341997 90195914 568956362 216393527 756617081 356724152 488631234 847493182 951854583 811699853 845497441 669837491 546092855 797247968 399887807 651438444 793244345 66127987 820384906 754597684 948803936 613596649 309497284 625203925 884449938 137353646 374556946 962099335 281794919 894634391 812348759 505191211 113118438 908139265 314622026 539100449 608124511 859300066 108330208 99429104 333348413 456761265 868371655 486106558 428801142 943949378 508624195 649409340 544672796 389696231 208106910 844319231 400254029 167568630 270099334 835144415 946895547 332983555 180709232 256311422 251145124 810365840 178054903 645977901 478304698 382335888 902460997 611998628 356922472 741960510 265140674 917804130 926905364 622165009 592478681 304525702 313964088 590142598 196818691 475975571 102958848 29594010 946772054 84967567 23394693 753056830 883064173 204429701 85430691 650841578 777376085 473898312 683783604 141221024 714028623 964915323 272207294 886850076 68417345 233371832 286774565 402106627 109137884 11522652 43640901 894018531 234097868 890800761 896254443 600334811 146205383 67928507 616407828 660117100 614000474 557282419 274101030 76976094 549030576 231534529 198452863 328651552 891302911 293212423 65648490 8349393 98111854 103370157 300381643 235971804 895012405 28531157 736548384 389587774 281049956 131677321 137813414 435875177 710510352 53900169 876483594 236434565 25513938 259083122 27171243 520894717 121613543 968449153 284121877 848365554 936107309 857927013 67410237 469564564 607632439 584504853 205263656 495061892 757852769 200978610 974157274 525015844 460729243 10896051 996473223 399580153 869220549 623985569 387790761 281550721 487515534 319640799 250050040 400431965 902042467 192371253 366323807 981222999 870593222 122658912 628818921 904065307 890377088 987635764 585954297 988954176 168851828 113658228 520600397 26991951 286958402 305433899 105477142 219231815 590511207 157676361 119243136 254830392 615471892 954314052 407997425 292736476 815573057 828784466 286747709 752509213 480298400 239907191 892837791 78367670 410338489 621156772 851604268 133155666 598337211 327967592 272073625 881884164 223148923 302376095 970447517 614435984 10360845 11037604 515310254 411786931 707074991 981589698 616042799 28272165 915399058 204961781 101634994 19175735 161398903 672619828 884789033 959177910 678250402 481900679 835664326 94927365 881168971 370008633 318785101 872630185 721195792 65026645 929801024 465423898 751724980 968137028 130278036 874287459 716269921 576043904 324844521 444309689 232796805 979927027 293604646 668103979 365122731 960569740 306649332 126876004 749492103 770893332 968690536 304504694 292704665 180634851 398751420 196042854 577927262 620776712 294460848 725944587 139467019 292628717 95794389 559257700 519438419 139051363 226767163 57660010 596728463 648824516 232818842 494722451 887728325 53253375 999299638 733612333 167868218 9963073 434118569 87767507 946278839 949562713 179165527 329302342 745362178 73435528 573509308 313771048 826825123 411999154 849507827 762278119 496099275 612579826 762709145 797388640 748812622 260133824 748213478 499378000 994729973 280279234 636460215 449527156 306525979 573084801 634941184 916934142 514067880 464184225 273123897 908963620 731922904 406879578 242866228 602365111 240445552 741024065 506238527 130771006 310466023 259499958 155102738 41083961 924570738 253162398 673238438 749196946 842085812 277202604 984218951 727036409 269975595 666752010 439942340 267486959 878383936 967176919 282355491 552823634 175207407 727384509 547647215 261220951 887612350 980513830 985646590 967422881 537456650 583338554 93716867 222602035 180895958 671566723 808646956 471308477 833123741 170978994 294926242 199594012 482302533 813897252 963692908 999201265 824648504 609118018 197556184 127842614 160755888 867073124 686834049 293727503 623438137 718013329 212950919 790128565 108926821 848624709 666959665 861381563 579214351 848739752 865300998 744302222 464328800 357754168 120850186 1341934 732299815 900891315 419460724 262604684 728590639 816322210 556770096 84703199 562349672 496054969 232001323 428989092 948980890 356369314 933102200 963439879 57614376 547060192 719347971 281051222 471759304 765954802 659135466 842761138 236485198 593891321 544695472 393238245 303301691 406559968 710180557 402885891 89608101 624236221 681226251 550655159 669939075 276809563 986263347 62394378 660490794 183291087 887768308 128217492 441170294 73808532 938597736 388335354 744103140 753724290 61958473 524537019 181375492 641736515 798183136 383405628 465372277 173429782 151919597 657046191 491510339 401823542 888000697 96809055 146658817 947168599 609746140 811787358 156201590 556750568 732288470 39669821 787858082 821159703 264191284 259156293 311515299 95302214 53886166 74660299 753669341 452723539 551330898 333407472 80261152 302475484 77316171 261572486 170442031 497417417 141543168 139989311 176211677 33315089 683894789 107988047 73683657 58802032 771109009 508807153 113422461 491097648 171485333 583639392 284772037 272639679 555513399 58177710 455890575 639192182 488201500 199050753 50942662 110329733 551730406 176357936 514233976 516640019 48540656 822621760 704331250 147700160 788317754 445960783 69189116 240967931 759069253 205502523 237114626 269748232 423225640 328293020 634417779 437187498 316356818 601623855 90130800 402939769 536485623 543036184 979864452 819263257 881054001 721848405 662901453 196191350 284389751 189155143 151315897 814592707 355588270 292297288 694905496 783361332 641986129 430847505 265919935 278480148 712561565 15491890 785365554 445572317 690164261 220653626 927453385 960575565 416720007 649440501 501417266 103347750 4539427 103607931 783402030 195890181 238302070 923195013 314112504 415786941 520457295 395351654 595505962 516446688 342599995 275364135 460919524 635301222 612663309 578528449 64136627 680029562 902010602 842684805 87970162 600331200 665699382 966017381 213705989 154264845 906249889 775229427 682085649 525315015 644956939 200025242 605027530 623084864 408054712 624178744 897102471 634757335 235934962 196055596 829771680 162743446 235749039 76883979 753582309 602688347 720475861 714900597 969090461 282771098 584057181 516544653 934609717 119146921 897701834 864183012 697051983 228724584 254726204 132911404 404104104 144817117 167259167 379325310 143848959 183974975 387320630 463689914 207824366 859018382 154705658 678648627 995759200 463739532 505491796 710366237 894906558 718229389 121831008 704006673 332613639 512990908 447240328 17723162 882568183 964780855 37376609 144050564 104246959 589531041 71923079 939079704 739939999 329311254 33069714 607216745 971061429 193237221 10965776 266269149 159948190 666970208 219645019 925072616 263466717 48782255 731536647 102014759 392174504 707981057 918174878 712797882 877143043 775202874 438798669 805200877 382809564 369132012 957985344 471981604 720139692 124636166 148067076 110295609 555267396 172345565 907708056 535722591 676755096 386791109 127395227 557380985 690281992 515596617 797152081 459721033 514421397 954101590 96673695 624856655 343054386 99506149 412755411 606942127 471043840 802934344 192677095 629499802 639962869 639527493 354683799 242652118 354334755 199606473 790189336 394611414 756526576 360519731 98447733 325988682 873425040 449206749 647202919 424381649 748601818 925243872 172430259 300137980 618568488 469473695 644451230 487497969 145148244 563168557 354299298 251339346 88335681 779042035 246643587 823287416 261627227 685255707 55192494 486310305 113692686 680747090 55362758 80285539 592080594 952975283 204477403 643484166 714139878 525729763 478017009 489505242 559086287 786755851 697747084 392121060 922414314 702626836 959907136 387450751 452343001 289416824 51860265 225310647 205930135 964171718 846592966 417935015 386884911 860961872 752489629 193823520 126968338 848181485 969758260 119542558 912253933 244654124 318764516 285934797 654794143 312403344 800176577 309147125 738735300 313582929 735511665 967984667 258787939 693249930 638964121 532483251 140314106 837674941 500299624 137082251 954788986 690859189 355290129 134387933 640975378 182565122 568103741 850222394 933551654 303635845 553705069 910971449 414437002 525527526 790780427 386192902 791605245 192600397 966132835 989124956 252860790 172304638 489562312 184357168 503360674 585562545 509516385 408216435 701961567 422334548 149354935 289310247 807919622 863599729 211172850 12745609 480691040 656300874 541347517 595226703 36266758 578255197 607715850 52287858 659165473 427476327 338361135 781806425 145313277 83402017 310980594 320057853 175322884 977107697 741190773 258425263 225309790 90383525 677159362 713899623 959842342 332021700 353098472 817573021 159923667 262015563 65116791 575646161 765635474 115673301 480412681 525595528 810221442 279960843 572316247 552484513 832816124 996613751 155833762 716929483 983263669 999949155 759358104 568746496 345991435 692907570 705268176 616090590 772210031 654565117 126757943 242750708 94366967 87591158 621477104 986430042 749992900 325675376 762086596 792855395 820279754 126077396 349516051 798415642 666909803 792492969 963566263 653601101 302501178 811182464 116376115 57238033 812734550 610516293 267096565 851325054 361740272 755886310 123259059 47864153 952058793 155930952 844199903 436794746 324152269 512543698 51515430 22608139 359036344 694082281 60110248 692644186 666912592 683682808 381180013 445686579 268453076 338529758 262693814 699919831 586989891 415676345 625326402 94009579 759213305 248772713 372074566 55925939 842947122 533265754 127028656 518762891 494968987 909579809 969833724 351852205 843104706 848882755 80037968 716170167 112481359 259242714 415438723 201030475 536221134 461857952 767359918 283522762 173004321 61333754 125318363 631774849 303922135 177448189 229128463 818489161 392876418 742850194 256427832 597226959 1051200 601999048 789348335 938055339 833291730 392344626 751899437 328234902 524870265 329277698 513480977 190582055 367464288 839857386 272939981 913306335 300088811 535798687 349245560 454742263 853958226 52626746 571187260 148065124 448801983 498793946 869326060 348655380 926839019 240858948 330894182 576436639 792552746 162285930 149882552 546126060 452991786 974708121 209049769 105536180 575416727 895449254 821055764 880776058 758968638 902333490 714151069 542908474 758177560 44239452 781487054 52206706 647351563 329185513 578433864 936256667 886113922 790454958 732851839 69893695 39830016 858326466 890937429 447001348 277175393 26903525 424673267 757004912 584491482 754425641 579692119 59256287 154836555 678454978 20346268 781361515 861221902 672058921 234788490 775741589 984196115 695342146 497321447 404180935 474642884 787276895 660911771 664146010 603872934 773462305 467715288 659383866 41855204 588210013 632286413 46440981 266037227 875491315 719884653 689355890 637949936 454987227 623209004 22595038 720745853 348209468 278700992 781648845 340775770 337309474 461796923 588055469 949136266 397750635 75274601 361024357 484728360 611531708 400479442 654039177 868819836 914753864 459667349 439983911 948371839 296273703 327684580 768640783 291874466 369146921 157970938 700749400 526727123 11670108 923622855 611456983 406410642 809882822 887455357 516765556 285247149 92275921 668277942 979942513 476056983 827252381 90214863 968431273 575275963 762549863 469863302 94077052 805061584 253064506 570531891 839988487 671680151 949006692 358448260 182643840 50482007 437937581 398984220 976459884 86310096 439635015 796643315 3416487 872608652 542558054 632415525 753299289 332168680 469714445 222763529 155501190 506420719 598288875 139459029 452025446 652923090 734849815 752868731 935868470 254218605 214440913 350161603 494096157 884244552 724706148 426482002 302172520 688768801 586084229 923174609 664133704 62899555 875012732 185747905 600092479 761490127 262832213 451127969 954722038 187528964 911475824 893326562 639144507 731943092 969308643 152665091 733167024 143488950 74059394 719065062 203411082 819809720 562302971 34281678 871643608 467584809 44773462 866186728 288679957 257032720 667882816 424834988 931335044 587468502 937401225 805197536 528196058 884440939 439735963 867722593 486086074 78074236 13920687 670944564 366963663 147002161 830126610 414100846 159882945 157410893 99012284 919641124 771054513 91825972 874937546 173980094 359486350 118378075 604297042 756887844 395438968 962128746 599788865 305903952 324618893 80951807 71337789 112481596 161014736 63358102 854655464 889738760 700907005 605966244 528667119 386955166 26673404 772614789 388039514 866760560 273056455 605443158 584223626 831027184 742484573 954176164 177814075 90647147 775168566 753529166 507209227 815743097 624299071 450092629 579835994 6127944 731447360 97690446 522877361 437748145 801955974 264905871 286124751 627000013 88592847 804412893 355063579 947800380 217620182 206751917 575041586 761596213 412778979 962450733 928885173 227272675 416342032 824019671 873200126 91411166 243411414 653680000 815138856 406521261 874498401 442098083 444676374 403719470 138370361 498812459 987908876 452836246 506806652 466909143 469656234 15463350 728211337 421068411 357450863 345053019 805212107 372247398 23213154 862800529 801329061 365590479 365153061 555307040 542829297 302762939 456887522 144413450 767005280 66681783 635572191 929189237 540712610 672933507 974749008 667510276 449150186 123662675 171112794 562699226 825492081 501969415 815463035 432677069 878003903 632750197 848879517 571557021 586396715 761057365 767123296 904843617 632251685 767044761 43089902 871598798 694092959 533930705 545942151 971436993 371710776 857035911 586578579 434414442 155323908 524047299 564824878 474876109 100567690 909352866 791483601 845367382 489766884 190654985 362275039 155077147 709854045 913604040 758560296 491636552 133506985 898370453 421048216 937144463 991963605 60755757 822315895 495106703 555976002 699324131 179219008 330937933 670973956 73782849 203098502 734482917 872326490 656675039 120115076 355869469 876584085 143176426 240389947 158420347 428428260 209573589 250087107 436098878 741359598 220468454 768607333 958246726 287479752 563688748 880498092 308082138 546437611 136425251 837433098 321712285 494796200 184470986 88197140 231602255 621567411 676043739 944325948 241214764 566566369 953308379 588594128 797576307 959374175 971805474 657761088 856746682 360660148 428082789 180592134 596498342 289220981 65373287 738040150 827461758 828924717 525657143 26606636 614087743 530644379 253540152 683989335 562905548 322496350 185435023 196639732 491165439 699602817 484855583 663165437 536361808 552371031 828096052 816324587 889886134 566024590 312261785 371513516 322255294 789234862 908120595 812609700 816054961 842705409 553560599 301574021 658763273 985924671 468884809 357445214 443039982 31908655 409585454 773942196 609846975 333699094 982185900 905864796 854713186 389138840 667568209 259511594 826988302 431294764 35571612 49760613 486506277 490153922 359491024 921885831 805748772 160313095 379256287 819430596 825852843 785823462 90455751 429722455 579304456 706442299 550272533 815263935 745299047 960771463 404997595 637992969 596300268 739416651 759522728 511770434 867038233 564324779 269380007 350897364 369152325 960474579 113282092 421145189 223977451 581768960 967092001 151221726 859149819 448515430 418672788 513365118 693902457 811627091 849238945 207899994 731267906 680973096 364285751 479154563 127396951 635606698 608832757 946910722 27225482 418673560 727858862 853580198 812952442 144760630 215957706 847645223 445686157 706527832 327871519 743592359 473081728 925215009 784018201 496556503 115438370 268781252 378120885 22836943 405785305 593676500 548454190 866933155 712916144 252640837 808763642 401496483 142206311 418853971 321047029 733007452 153520044 642885319 308734849 607557265 728295624 578415146 627133154 415264636 658655214 606558213 763790797 964879846 492489963 886354722 511757367 8646892 607149749 309162438 433922124 817119237 736828220 356502827 730650662 129385522 174569296 126053159 418871763 549532959 438631919 19716642 381741304 444284198 435612229 453280803 433933522 424501759 74608128 370461513 461388912 212593340 141994509 205278643 261635963 340555133 242165619 969358359 958719087 507058985 507744731 318137831 935662736 832319283 319689269 64427486 774183554 630698932 601816323 764658760 7520414 546101605 291176776 13003720 504338608 709900250 406164890 418553582 314397194 550933187 543879828 154777681 438411978 107384631 153063764 446231866 347620537 651086396 893239738 204859814 172243154 526750814 754000471 121993940 333744783 645726921 880699367 114762363 434612867 876125409 677651489 928579866 640095162 906981205 836752148 242926519 696283822 988852739 284045502 609850558 562102703 224276225 161275312 512170268 929158489 531787005 106839911 297311624 348739885 910589523 685414587 878941738 613922506 294353658 96405359 330212099 457012988 799581779 902017112 351469301 432569744 850552627 199202083 347461374 714028752 518999877 970816396 683039601 948561539 58867884 638515667 515451048 375584075 371383740 253014780 148551823 540487214 479855852 613566004 186129655 864814797 439451156 163948005 118263334 929411770 901695260 969754885 799545856 427891817 454465300 433944824 429723963 745802724 296993380 245352306 326270940 328142788 179377371 26589894 152152622 970130877 926960091 716731204 537499624 4958377 433863676 361551590 794693272 89400378 559831347 380061195 461725963 644035124 361620121 119696803 445434662 744676927 427776566 32554597 885501233 800856941 969461121 935074498 918336675 776701135 282628645 534022997 451418626 100249082 273799383 941324577 590983678 588855169 787741409 67998567 909747691 419221770 304133235 994211654 491672683 152873253 104788746 850084070 284147493 855716136 103320349 562179170 64726098 140888988 39750031 450663608 136646277 872415694 171162943 811276765 627200750 634380132 988291956 971271727 137211089 362060791 964590005 829205329 612914981 367619512 752532842 305370442 436544348 416977316 326818614 897881300 847631470 606750442 754844149 925115312 749910606 988249832 300148721 162558513 352617932 378084826 238996235 449774414 412844017 440316893 878914358 286097802 109140158 384095173 953944745 353695834 966649063 903406262 249394865 463928742 960992938 783587530 467779634 837004223 232059810 577183506 546721295 755596030 725590493 785083695 239238313 865487025 238645941 92526986 452689748 930157454 639114728 289943549 668644387 850528929 202882178 787953981 712134425 964200692 409839894 542784638 388496673 150973736 993906756 695139831 838772985 967974462 655754537 322702930 358716386 281618144 70022678 949334326 870775364 451875880 169740321 844339454 169969241 510240088 877867129 833877090 751486003 193024217 628612001 155607389 59402904 999170979 771827220 752100948 266697210 165844952 391949771 260703830 752831374 26963345 950512642 58988589 651107002 329481474 736008066 249122233 149052087 766402371 476445698 301066342 329152219 65737016 516984320 934094957 632316088 923884153 734001433 523241660 82866096 891066346 844127774 944542671 226567821 415825979 445941515 580265907 510668550 716083017 957242758 841387859 859208523 886787572 711534972 384396045 592582822 599153604 28863358 780535641 220226527 967298377 388821777 553878962 308476942 332706765 624831204 36085431 491580101 535512223 751696230 717490299 602302101 291589969 862282797 678390068 592448138 136362684 149110321 145890383 187576844 708097406 183971705 206165633 307940660 44891783 184783009 805397467 319864276 830269766 219002235 443248189 335648554 395704096 333313353 6376841 769658975 263870143 84548384 499234573 266642720 843442599 663179945 633633514 126514348 832805785 121674048 559190733 782537537 175276955 147446319 379110726 997643291 974298560 159957487 211404071 864433862 279062669 543455885 23896501 243062271 693289157 215892286 974514875 234464587 778986143 47126142 809548441 461205467 860223126 978856165 996251561 727515322 85847501 128930356 48334977 68440272 976523976 394874620 391301799 442084475 219365793 354332792 991621044 862231179 515572442 113730961 500810741 496987969 68492811 435412390 181389771 140046116 102307579 502675996 527049566 353226517 957315476 34351770 25839162 547692560 529076832 703902461 113971822 526362469 446506232 222685005 495462307 358095258 43223027 74125405 519986110 294285011 557398421 640350428 165883105 37365233 354901036 894414307 221061221 603120235 331373216 630117945 148811943 478073884 697280907 344101562 537058708 410542302 854997279 416197546 646876942 114527289 732001215 868977687 258446551 708611782 787746388 174409123 891214772 482462594 913553334 182298148 112854899 756137089 515406250 926150784 186863800 455116731 64260350 412178243 203649973 604184538 288974883 634110086 288710761 203590488 488777946 186251851 882421160 555276759 920426170 585348625 93037297 731665125 54403038 19292255 550382834 76566980 88533189 750543923 874882309 527734906 462825115 857260667 108718503 253389569 469318820 119248535 322393987 707726944 57077852 46224224 929007032 528290329 582921669 793009560 524594916 683328798 74780772 679584367 472051896 199766598 97773567 36077393 731575023 978030941 347516977 254878259 478107068 232460080 321793002 360665924 139722512 566633942 655322769 498218012 622667146 114286569 771384461 303119874 954299857 527237766 233384908 313942134 683977169 875854449 265748519 689323859 391586396 543441059 979610212 27046428 250737439 59933811 517001977 328316817 922302379 144049431 802237851 875698215 176732022 434960179 899566574 997381372 63766644 315387758 284605809 690644458 506345363 716389642 633824685 846606663 852833561 130609798 763975794 75967417 229002647 320125682 21821341 170417977 787023212 151112514 281295864 70684580 931901 579608463 273789048 657128721 157200279 573716679 879562780 545008655 375611379 167846415 802769357 538902003 418256367 814975833 958773254 59733413 338079669 535377606 715866443 162928792 136200228 100894401 559666004 5662071 753482502 964628194 9076064 503230148 766649169 378270462 585663345 711324269 808234990 861874632 256716552 561282076 799367957 588936209 964683712 838738752 300892663 863789390 341437425 224954617 943542839 717210292 255074181 152511819 810781808 499465644 965573176 287620777 38464605 217542012 617797361 305785475 867394187 537240558 428488805 846544119 966020263 204572348 999891598 389592858 284096438 186232874 843145392 958097031 568552542 986613487 208625928 899676511 427803567 351975219 113604747 479883618 153025441 206460546 651745765 777690684 975124773 911488157 672584086 663982180 219732928 390139699 705503606 906134862 738902741 319536538 746922837 122943952 234704172 138130993 783274450 62113113 340191815 215577311 651843410 900636624 700496936 809121610 534226834 275541337 719006674 706597610 841616154 731277684 718048411 828712383 365132919 721633776 1264281 690372423 549201219 199004605 39218385 861348829 117668827 114832038 839666033 143828891 10792172 344869544 714419988 749551565 487443706 958507092 75020841 5945725 750417109 409184470 922345045 52134139 260700884 932450690 378902243 995147909 108072001 585798072 368196698 838005244 406754543 808237543 223158185 969416601 755902528 461250486 611580257 662969284 963276660 624865570 595105313 743759550 306721343 686893880 631383608 939923649 642792566 907184887 917278533 912830851 945384587 67512949 679197343 277579957 188193010 330060536 213120770 348016305 801798616 671694539 111071863 8660181 203493111 352942133 275477571 128114804 864684991 595438275 559153190 599828708 587770262 303331614 615085713 474188539 634356774 128016259 618858836 720741600 921882915 119859099 836177228 718533270 887571439 748485430 592882716 280256658 496636983 506556513 758738839 802553463 767409009 16987802 130762374 466811558 755450719 861259267 423608805 471430135 538679648 110846791 661714740 744454981 876355133 476632120 697300552 113589345 799871852 798624312 716337760 915916618 206997557 682356834 523565925 974907437 714397083 750358744 92758492 792995074 29044959 792541531 145232492 605908511 743649410 277380613 882235273 54500408 330597644 969441198 68381383 241568416 523687857 129507185 324862493 732616905 905086561 727487010 267631155 316177725 575046804 928456260 387495511 468065957 894639272 337082744 484177290 711199372 357610241 105841484 248586080 422091989 382024927 385691954 411872567 453382535 724929653 897097505 764783879 248252416 424363572 256517615 322640330 396661048 145503211 373150489 997929056 160406951 859236921 562111619 875007072 302216946 729408461 876730391 231109343 204281041 464864677 541998679 791575653 869893570 170944515 558022681 286569308 446041408 99749020 747188796 920247902 666485324 265858946 41880959 167330955 404150235 203433630 910997792 922909747 924094967 342220693 418053202 554608156 454100138 471693204 454374441 875135863 49705752 735650345 824169514 362329993 869018225 36671088 15052454 620992828 556226015 75889204 317530585 709275572 721249076 794983919 519944466 520835457 373055354 36996448 956048649 709896134 148359182 273394561 328145519 168270274 427715724 393356373 805876326 527309028 65365462 407788491 521805161 525688759 923729742 48532845 998348018 913953471 480584150 582416434 585342052 567358538 305741360 437798505 665277958 567868981 631367678 187755867 50189897 706011153 757147188 945742532 298343653 224117328 875568060 299555995 916337376 900411184 791099792 960740016 999746712 917805953 464944053 973719123 924286257 525944139 101580038 16525843 835546844 514449376 22248837 172724901 351741867 224964525 745937350 68647951 454532500 580836537 804019344 188200716 899385633 722833818 427368015 883939764 971210694 912788242 859558121 746094312 63966134 437562972 936905449 357666132 933931937 989303317 737510511 69663244 715762651 628872354 682463400 584272239 187544222 70785801 118270982 619442146 708423692 574313426 195508629 352274412 239538683 29444714 764073119 871506040 639496980 603869117 277660159 92676371 728992769 183955220 945049579 338466259 833758880 117895055 271182202 616041054 998361527 930318076 156248383 320329073 210188101 198737710 244180006 290113371 562706478 874856082 991134692 745256160 573685226 762890667 825123385 448174751 573172607 109162388 908848504 715803604 342383378 918791990 740906356 644156229 702480761 966800602 830798084 67071294 867721884 574649205 887578088 64781796 665874983 688654038 770501040 903119099 671942577 917969125 923322175 718032172 243317325 811745508 403110437 288393748 432140715 128840104 967458228 228587099 689467471 35472958 675423666 428903882 841081564 904376127 374692950 869844868 990139647 392132229 551960795 621976657 942592149 759310903 286936168 329875690 6544914 182227347 478898445 441301168 715146276 374794759 403535 634600304 861901540 70414503 801371209 492518784 634107116 435754356 352949579 164538792 933196453 28289974 16859318 628017623 489887478 667750224 959397592 653135913 232543210 736648055 339535493 755749935 104697441 334652648 869378014 299743960 242277406 200044814 89243107 5509037 891244433 885156477 780842951 849614519 920199748 430859418 603192967 853476521 627350287 652178181 782894261 355923834 758154730 498132396 454224433 232565218 504586685 357283356 346224305 77416018 722801921 392501350 193849353 954690418 262621200 101882898 391262283 13933630 785824152 72054432 536665184 697405876 965658202 561801887 644802048 610779671 383650878 395482639 404261787 808370560 748064095 290110428 183183133 303748994 3890631 643575263 875999201 379894522 841581598 425473381 740676597 585447316 144439414 569785075 150560411 930383405 905442390 637078716 933464832 23943661 694174070 816531825 156095706 440449757 791494747 982833468 917628590 514758716 116328967 554056385 294539218 377600800 382783743 303120220 724968517 161538041 934372473 935414851 37326595 452023139 916952717 744884355 276179393 331571596 738782350 227872374 515555753 831308584 579628923 84197863 584929230 148175087 399641178 878336593 532080291 356522588 117833996 228457792 227701068 157746625 998458628 270581083 298531451 506197552 109856658 716537733 27933616 770492592 636758244 608496901 546204249 535550850 942981067 36343227 371377610 589012918 278776406 139285436 867725996 606041284 313294127 698969414 976416036 343248574 239536960 70506552 429817505 279497971 132091758 934962986 307527956 551938356 843638626 103939149 38760262 222246493 324964083 542730514 204322738 471571070 36938579 547146223 835624237 569919353 837684719 472331234 537893640 191048683 70148243 316441694 435899879 767708998 420361075 413200593 177141241 403776189 848535574 852589355 543485532 104113425 470875380 54317556 376947158 336001210 740838571 311922103 915822000 759020928 953067180 973899227 493937562 964927996 793676263 832810107 626606466 600072235 813980559 217842116 298111046 4899015 938669220 975604982 125725560 228905808 449687206 407942444 817445410 671662184 705244687 684049605 755422148 972814499 51051979 578425428 929500423 625290092 646111273 461313785 253348450 476827157 543543820 92107173 65133924 146663274 976767375 752466032 736805499 243771899 831132389 287441343 367549879 666542004 250077297 88320091 807409340 806720316 571540695 402071854 642896191 201158372 416409415 894339242 553887610 975551047 602324053 513144890 71049884 866660987 151485735 448211007 514881216 268397365 779207360 486347001 50152683 914991426 319204073 109859809 440923191 884123007 476201059 264505724 736431278 347933499 322545888 812633009 171461171 673571055 377212239 931259188 895180101 210365606 908878607 661389992 597437422 362167192 814609398 626379006 892549378 120650331 715536467 60069026 10383890 597252818 487000077 293724655 562553051 807733215 113687622 540292262 683655627 83839920 507071445 745727387 900316991 915273635 146989762 474836838 235032684 2504344 563152679 889688367 969574702 221969537 64135504 497606592 953570631 339476395 264265129 248109642 193568159 942861765 899319002 53527048 504316697 63584935 420080617 550328931 465859255 238441804 281382549 465390399 840746158 733159580 936781504 899558100 118562130 582127868 303084221 108961439 871454394 522863937 207254363 896541003 927897905 210188216 4536037 191688164 488887082 916248837 218444581 713577077 601262143 126806467 637164649 884299463 601971284 443581261 15225681 954547681 603398342 951870659 157461926 812209985 975976147 50868167 288269794 126829142 980999858 909703517 107103484 71070380 455866487 280672840 621965143 582775309 344495414 422863663 841340196 436162815 839519694 916527987 473984628 960529635 467778318 527063001 555689570 593026277 399170805 402092404 911595067 488333428 758446228 482883167 530801552 440356185 693667877 346610253 978771930 395187815 474206758 312899225 879399250 370579165 38888649 741863071 540674642 787329825 275018234 905913422 651468389 33692143 836229983 996248915 60259261 272502500 791954857 366643800 404884061 162942168 525869620 46556816 341078140 688156222 287664907 172831501 7626811 546801540 84503031 768878498 534654025 825553844 173598396 737185531 519566742 365077059 451947483 239623208 23050772 338518668 773499768 10979163 746085949 398820902 347395962 214133559 86788252 123500794 478357303 29181480 371321003 901755766 483076337 243621082 558659664 625139994 452787066 466914323 190664986 947754201 120364912 9562059 93651225 77813286 393347250 162459003 545320314 578933274 191759709 81732859 323944746 432217044 251616624 704925881 503656893 686649079 952186732 837095378 897048372 727738055 366148972 31182799 699210126 784987841 202756848 640526167 281711511 994087042 959215032 276862309 493486920 84886142 817991343 460060976 532566962 886688805 893893489 234723761 138673088 831330391 53723329 531911623 725353218 142780738 452930423 789062216 72912193 172304781 72401802 659130537 533863199 37653457 671304730 466236682 138749219 70629339 389515389 30125296 886231831 153290868 297339955 217975824 94373410 233559930 793562856 678237633 927360513 142306112 105275798 231409463 392966986 412005037 50183853 251355529 742914906 471383962 533760085 639596295 278889073 487534183 390976569 171875352 30438609 894358554 881204047 746227110 146217584 515996339 281386311 357701327 391959566 280309527 383933556 594230670 580278073 861651665 11273895 652350545 812173032 432144069 716805756 381082462 863414609 227718557 615378643 149211323 853110965 616717165 482910369 901348031 454792470 267528864 641407607 600551151 732331697 600835298 891507356 106694190 48050006 278564533 42004157 992705158 480837648 461025676 505320398 232346191 123674391 525603749 859041707 667251030 622576995 406908672 844016343 392336864 888603946 745035728 534145788 369034557 712289018 746094646 996709308 231818641 829889144 740966688 801117146 320555397 449401948 858947060 30359499 586019422 889954299 375942207 312124175 269849528 915632772 504114261 72207483 482724831 730601098 354031842 64661445 533624378 477857661 767979208 609480746 613410958 279065630 393014168 488852540 506183833 613270923 304436943 777474755 92692604 177128504 402940276 541992140 739444871 110721819 631984837 303685780 172232162 75394683 24636950 10326633 433797474 952542327 961605163 409737338 270613656 453708638 639532296 557708284 370237641 147571957 478355011 291761565 757059726 411547585 432904841 913399076 314968647 912678462 216799884 356404768 668870711 906510761 541687955 881003403 127279799 112999242 404293287 68778159 653214288 489423941 636021565 18832509 372686356 54479618 368246924 341508558 30410955 32688450 949476574 251191936 213391419 791361640 901685172 937282372 932722313 130730303 543149122 988710970 17705690 213112353 449268964 644192922 480996583 273955700 184869179 692848543 330293880 656962435 943012638 200477056 908816716 300868325 730263884 589792501 744092783 197215770 385003736 305383027 123571340 865268864 725883258 210080175 232554398 658039618 826066456 673635878 956798757 128453126 387429824 102079746 558096410 658305909 601566937 499141791 438694238 12485187 900770028 392524447 515568093 743767912 669452262 475536892 276728816 429874082 590072187 532149562 367346195 716026168 537442877 959217171 449041288 770605515 104624736 312204900 739477442 849832745 767479327 493863486 667544207 778615080 524473788 641254374 500531972 220638966 775263316 968517377 251490443 149500545 495066678 965557981 335778489 680475283 198623222 157430298 957607141 631950970 793360045 228742779 741127341 230347059 496347002 320762273 917467212 416161901 161435123 62434029 591344953 5059895 609621885 804436555 245963118 432836926 218391938 482091209 61170711 392310905 166600036 809849845 353469262 466025395 824885785 172002470 528923094 656357545 56799255 963337601 469528976 759276661 482296857 159030019 916885231 988821172 329245121 413490215 858123221 225798330 672451948 614630020 172652735 53074662 795740011 860441422 507901039 709456196 813200213 988594425 950563995 489371274 327586319 120422863 915009444 20037677 572056046 849233565 42142301 826411223 323112671 697839377 396863789 54782740 455852161 416228692 534500640 354587499 960488723 634131388 975625526 257518465 205088109 3341694 612543984 243798160 733561793 235801071 353506734 996256401 855311398 652602199 870245413 82062373 946921333 153907468 345431824 519434139 644880194 992281869 79450824 424767729 169092097 611055808 751347403 148212327 941335225 111935682 668422572 298716129 970241588 720056608 588872187 787003544 671956249 470176303 908875380 538094142 911440255 571619168 544505405 233370038 618424389 930401555 64903920 892298892 346242837 462272581 738986895 463131049 412055267 543790537 842523992 774402146 646589945 691827223 794048460 362495887 717307099 89543873 148667827 182646359 718769082 224475455 504691564 883790632 289328111 501938241 251898365 696897492 213070846 427132724 425296469 877150676 747329968 797957574 609857473 6521176 321392696 411971115 326764929 181489326 581101211 81818085 845333869 10804163 420924807 990888654 405236441 201189306 649196217 167739537 824522757 893073150 194470861 385915041 328319626 643764349 102241707 133270791 320363755 361592313 240594843 189354185 29375474 413953852 301236638 172261798 556607004 97280604 100295062 822309055 222856495 231419883 541766300 717415187 926124801 709766448 250508963 959570328 228872114 42178930 802605599 841520095 64314468 78259596 468865774 763033362 554623971 286404849 471808751 155515695 71435817 419555757 265660037 424530969 346008124 202974420 746635798 694709438 866792350 19283391 161999404 646783201 426858869 909887118 145404775 224804724 331869520 209234219 348591535 483051154 463410677 581729258 188441428 979418805 783022953 510973249 17108005 333428160 876982495 594248705 809695040 161567117 553902873 40594558 238723710 138540847 18069291 832525268 5979202 480036783 401609220 757262880 965245717 508067149 138604531 797569073 695525376 948953621 352095529 446550706 907929657 556942805 143805849 335578997 786696121 327242626 929149401 642392382 403448350 673709040 41130747 955951226 877642697 634361610 815497503 673886092 283954953 512950070 26332924 496012844 376317701 608935647 586501975 566379673 262267514 907898669 582076143 447457173 750838274 659567081 856692970 422380509 805726687 110560063 657114528 265985841 503393431 866919903 622544472 755340263 746221419 415708827 379410619 782355814 436270948 730272310 285910232 504632565 560703202 959533935 703203793 358404930 241679020 678950106 46181039 302470394 82695134 592310052 103002663 117001106 122119689 565288981 595712038 940424546 629225776 511839437 721399003 85264089 614969617 59795805 187450126 278418158 883497861 754105219 332551373 834059476 550893263 804835759 3020773 82120665 569076071 274720103 396023217 725852810 907716284 54062063 840077928 21937937 750779160 315740501 192305166 155995544 985968862 611227669 84337258 867170181 262597251 348502435 383269131 65587122 526123821 254443776 679892905 211117867 624819540 97129939 629333343 292367829 600295170 688761405 714562430 7882783 823436830 420390087 733250931 864252862 825838240 684611232 835874999 270210834 77656353 129467036 970109110 359986879 797455913 418761677 100645467 809534613 65455546 575573843 605578225 100381768 169514090 933682939 560958343 651637958 419204705 231034831 406046029 459873329 862270235 585140818 244487169 302210940 571286619 556408214 531388518 453518675 247253838 623962036 111036634 74328211 508466962 721554606 635685294 204877246 373265961 608833367 920978066 366551987 729820789 583784932 847368652 233767774 78027622 153031941 811771334 716249604 839134017 42688663 462776775 150076555 284150954 954091380 875093720 179096171 712201850 537607862 609636363 613607756 62399253 770577720 903840307 522777745 202711671 118924679 385980948 713367078 889459436 775796336 864537144 44437626 245210340 647974586 903602800 417950255 578224878 237740289 32321213 105835804 292520911 141714543 16702013 29154212 720356524 836195120 840067779 489619736 347563195 634533484 783484935 84793158 528658037 132549900 330387272 731525833 858424213 796634276 481775667 164377128 759781344 219184093 642570232 458582024 928314620 294389539 354277953 342065045 103802649 75132072 69221550 436552417 766032455 587270943 11116104 326862461 564132196 754530898 330863007 564628065 870642191 571772377 68957925 705679747 386494067 269956123 106001819 417162978 506260712 346073706 418703214 665399462 214407734 76465457 381674722 287754320 574962491 961480573 20192884 721681075 708160972 333954677 25478600 329926046 479397266 310367156 362406526 460122224 370008425 214400059 744521667 132919508 393618269 327285384 256829350 98331098 330465896 144481133 32953461 503602467 649110537 502456172 210653391 677455556 774731336 650591436 882814126 677400187 789809906 882788855 474831099 784791873 406666343 632073778 52942204 285615896 318750864 409834896 373661917 115228635 483412329 207215597 525107749 324772636 151425069 494867417 184797948 134941854 876572923 672772960 184544771 870164753 478072939 703593011 903920458 970334791 341202574 797883724 223061994 361517820 742363220 968835955 721744338 107223125 789569190 307786644 485148055 686720592 821878693 660956427 607441797 121462917 847407619 872013154 905528149 457169707 319220770 607676414 890238818 341091920 475337530 658932430 735630250 696257166 717599805 480180222 69161381 450406180 768279529 227546101 452541446 44967330 14867109 870149782 356304238 738794026 406780713 189492830 286620723 919584778 801945499 22891111 351066651 15124618 269745497 912543050 690957494 364522425 154749061 192872296 561780957 752325385 715657650 747165566 994692653 275899102 187314570 902703188 289342937 504866685 596666153 789576929 253509218 176584920 726372694 811566659 837932353 8543074 232543719 536218000 360805706 596817498 609256995 387498447 27721109 450525818 234299737 88964256 385388756 961314503 14951536 856224145 848436631 256803836 82593668 706087622 822065503 900280294 910346787 20680333 411289670 729337300 68516752 586085995 439506580 598402476 570041269 115109947 182196093 604648147 356806554 120619405 175633243 163291492 434705417 641914740 337990439 99964183 716389432 195737810 878380704 218376782 581318586 859325938 702636552 391053994 250973277 581559543 57393839 5326679 239735116 23327401 430691991 341822079 971234956 4074055 566595916 953278384 684366372 203514151 651350522 252364141 998214823 183921587 994890257 758179758 188823526 88952825 163859880 520431575 621398294 395690140 52508386 387001580 923448593 642769769 945279055 649144788 640531249 763265066 849159900 833581062 178371867 158040360 873330634 399768741 623112679 759581478 185569893 247260440 248507124 44514065 720250040 477584403 615953010 603862722 77122091 346642436 50531040 875040894 379369186 845306317 293171795 626712098 738476674 280632987 463310327 168412030 900059925 954931965 64221768 882398055 682381250 293419426 779572392 108856092 474757731 653020126 979494873 787566144 69377063 720174388 443046113 853275294 262650547 65586650 673518890 562742317 881246184 47014327 196370499 459048689 956525693 148403934 933308341 901700233 133670543 715048195 195213335 481926423 251358902 372335049 477884272 413771673 47381614 617574772 424510502 770507649 616480873 105261240 698375539 752028194 371869632 543596535 681036930 771386978 478618626 667638649 701203025 868625602 663059363 691909617 406961683 420431631 34305491 447788432 419262056 32214611 362505650 664000740 91628058 752173476 971212154 176842534 313469843 256641563 908278264 516337124 101609509 310114971 641218797 507066250 227469435 196936495 639440769 907561471 885417576 24810197 639365190 364512551 311670663 565888567 483840388 288293566 247979488 255523024 532905219 126826427 996632106 12039457 342632984 451615965 223315674 469322296 344989559 71456915 591715565 982841831 782365024 533207044 676941140 781467761 83650154 27228718 812222681 692881288 895043682 575514135 202732306 296101754 167989095 855016966 748378954 816126731 67023957 766142381 423695169 131945847 506186410 491117899 662654068 309108724 245167411 864376359 850137770 697158763 916609143 603943809 118224695 783292048 503830631 322663852 342748555 196611864 463242633 833277342 415987425 95091948 120060171 313098810 426063052 782151759 930510593 104025214 74927651 637760613 910520977 835279918 11236520 3873185 974408311 788785338 316712549 213066696 812133363 723007482 919033246 817540108 219766104 610112220 616763971 242776700 101950100 662619584 452834688 279196357 432369088 44989226 899788454 355707009 661522392 702931892 730003251 867170924 471614778 934349699 189489646 996908634 5804922 823903350 921371979 376723138 538024008 173981823 243547169 319664649 194099619 506401856 217432218 799285825 121576168 985206986 474363446 431236673 418657418 917211520 486136315 742630374 349618260 581368860 675633374 168875369 155627011 768339687 452356524 707129399 6332881 577310976 912640798 586891911 302631333 613616762 212562262 135624204 414355846 650030089 604122548 518697032 953517004 841835942 194499984 414816551 154213672 897044441 216669273 665582959 363347047 900490342 52317186 731856736 316783863 888419360 519410336 578259057 472771341 711968246 940525914 750037322 826867740 496077967 401285712 55220138 114742932 171534636 583632319 123188225 232927657 864721134 441232905 850754043 478868027 585271564 443409283 646383273 667544924 774671953 573975406 335184688 624429783 947454163 827399119 652967607 619922841 514771050 339324199 550446929 406026553 187378300 177710374 407623199 713419803 798661617 243307829 721400047 403363131 598651613 207932730 906999930 246709768 314234798 357275501 13260497 926640320 252614794 724332568 49881310 671457405 210949530 799091741 472984950 352294179 649176505 700646047 808612419 441716328 34373177 99399624 33715300 821428130 337759189 423981823 649620470 748830133 83867935 115416532 469011618 91638170 264222926 22152723 264365843 117140783 237973822 965698019 720638519 231024148 806479041 109394552 255220070 558523733 967881468 827812820 588777529 255768367 980117839 395959461 548363840 182809461 776892020 580812861 884112447 391353950 19776899 686426515 414621845 375309371 98997916 755101525 892318031 459769286 968675130 910980553 933496 396108886 408961886 16279955 824851948 566849729 690444030 778065422 744719351 843101155 681382240 983424239 737483150 558607875 381544437 349322036 238536153 903197018 671075395 663290905 73765736 634200321 877354903 902620929 892819928 60712592 362188979 812442240 796686260 94491274 102839753 340796200 498577779 792920471 822689418 406221972 635400138 153668598 611253566 631580702 158897538 468195367 934277938 91299321 522087448 32810706 281186444 506634833 551239308 30613475 546795777 497978654 751885075 399726337 216767742 427271367 558235735 565013848 722079235 979523196 441938257 591299285 578498156 207841503 694324150 498024697 735470849 289470134 992668598 524340536 668456072 813988112 404524605 272156759 587384622 665921767 415817471 735099854 505691694 69280266 434874896 970742295 556998998 850446303 267032883 528194064 161567668 421059419 672021586 505952182 19267436 282127611 47147076 489328106 150191172 272540325 881093090 658443260 132110780 45641059 302110359 165242738 353804198 3546203 642004993 885579389 797069002 424899222 66805674 583649250 850852280 470309254 840349925 483725381 234741137 970798680 950006442 842563910 213506053 755760658 286617389 549274758 132960357 135589595 347428025 688544605 168175635 137693418 370001194 835114887 191401724 788214897 252648704 43346294 676648406 521880902 113999429 34095837 38889542 6058047 142306216 375921957 158528198 460029040 707676357 267549500 492843861 514003463 899925666 505977770 513561071 407271286 394378160 361873926 838553746 944326423 498953049 848629823 137054019 219297792 529349144 193953248 740781383 316372438 949111740 676829042 535944253 130777793 270919037 910797455 936847510 305174331 870176967 174733090 984507450 459768451 616209345 37887120 567580904 371522756 524719766 801719041 128129252 393215139 543464757 771187853 566147555 574556017 964610358 973507974 698428091 310791937 436010181 895969678 694970736 444746440 433628439 904019210 895608372 868840936 259597734 63494631 636663225 401672571 372877738 91936246 2290713 546154398 3989161 313728911 878564757 798717912 5596040 428475770 171319369 745971576 545940333 791873269 612818552 125479997 766686957 217547152 38396819 37928267 785134744 17407474 754011482 113306093 121028106 868199890 731631383 321530481 800117840 924987219 463457012 483053707 303472018 661376167 663841433 722712369 951470663 542997847 491902594 320752267 420194501 52392627 117015426 759234861 792879442 116503844 261176684 462124296 231643319 226450598 431076437 235622434 234675441 71509123 102713389 233827544 689453949 402235554 388209166 818807897 404804511 310550619 603576044 293843146 365879906 504101138 673976133 929227898 964381408 513417069 817301222 150572874 941359698 246218540 869184496 458304339 90907866 442919138 516113594 697052018 17895534 471656052 37721734 439002170 178919649 996227523 285300764 603917479 852006276 774429963 274357820 201457638 933630340 578231040 461296720 303617650 567167749 908688085 221327106 716324473 672875430 940445128 541770472 269902756 378983405 582490399 261080906 139521077 860917637 961328435 89838693 911643380 378007427 300602304 118198412 887830725 629513581 809981865 256327373 91212282 896694947 556486019 174473575 544627900 156022233 547712309 441482015 385143554 893599069 268139995 760965475 580118897 428881758 49702206 673883616 202557567 472439284 591500335 383091405 766178354 378715176 603094474 99106122 685232593 164917740 476331770 460618049 384180225 575908954 168944667 524540776 320830173 958125132 312670993 11426683 175914435 488375955 494393853 498591285 842682844 950059695 433842820 990620946 142140181 358463131 224711307 932761276 570699554 58640770 668474835 991746776 863071780 557890408 706425108 618347822 134124641 159272183 414735661 641883802 14731020 148350039 335079109 624169173 744498882 164829168 372998791 626933398 26469481 787749846 792192171 968771190 948366667 523555848 282952557 659429356 215337895 283553674 106920722 174783454 79701293 677772202 289870389 906406504 633420617 137038884 960696921 909144601 286336045 718848675 135932384 279974528 193468269 818126380 466441854 498533642 608710334 218996359 267823685 922238131 858161251 588832006 660240151 139902097 270458326 252148850 285419977 113841015 984026379 364401272 321522855 193744918 251180080 984752819 900834687 46593371 199798181 491162217 257558398 179298760 437131578 903835517 957749322 101373778 686796312 920074601 212038536 925186398 824863532 332878765 263757894 424107816 71687349 817105970 300150444 517947178 515036764 951714355 230511833 47179653 291794436 281865854 342206980 327703216 150768331 651910210 12005841 668581953 246460115 540198851 918398365 549701085 905273657 824938286 111402075 318028338 444998906 402571222 100423667 374851070 976554246 364784987 596798138 441595461 491845282 340644533 782352125 911474003 199367013 876592623 244950621 221927235 545367695 80773828 843842766 411629422 562459800 319299060 324440402 984314107 812149380 822220200 427711577 572290810 172079817 407910406 788798696 397751338 172125950 781637043 826102295 904689244 161667738 474551537 459935163 24899872 714985113 261345823 784250096 372298011 244667893 315533878 5029498 996305146 446211164 753293188 94209891 644910878 617224628 522079111 265267816 15251169 92971808 497350973 328435315 823837362 601005039 81239694 848103985 332001401 714134031 659663787 331923226 688901799 472717174 369019696 780283086 155930082 302415994 110283255 27117436 818622942 705537833 683238917 734846792 721701016 949471008 774592539 937313513 382539207 312003390 852113068 314036245 945047073 671909035 650371976 778573324 400869249 620963082 754025185 240967331 304355007 957738036 380650355 231738287 552153057 870634323 644885482 782375585 427424170 210688252 860925882 575261675 185153436 296575504 14796346 440887273 863754297 362760932 805314857 883569205 248632348 163088867 877856565 627273099 4218081 336804997 237505622 224748059 986026985 412834582 370700728 345873296 536225448 494493523 91274853 882581717 780694516 917755078 222019538 786972325 80560372 650024748 388110684 212401210 943861693 143378456 48586850 361277308 176674505 128909081 250217214 102642841 369856601 140530295 998835319 736599325 502118756 185649045 137320325 468226368 901874810 645693809 187802218 995265934 56095477 961119665 299188324 296997928 348492908 220624978 10969771 45435018 664134772 624278321 14668971 786057702 246835492 22301484 485945815 944858211 818851652 681444793 202228622 74067211 166196879 43435388 220755621 810793929 865183013 975698311 738432281 243227003 296774594 992473582 373116414 536888081 410162566 791275261 771360671 496998427 816096148 637699912 517097104 928720272 867114413 945391971 146701129 189860147 321919238 277052151 587128696 285382236 113555095 693566522 447079084 513157250 371626030 81716076 612760029 521622340 653555861 341125450 245787629 596015181 834666945 681146842 439394076 438754454 476902765 443661020 572998693 142170695 515301557 696681038 455592669 778611646 68553587 766526459 609010567 175804599 213098974 926665128 867742530 882684107 926064237 506433156 719637813 190418854 151956558 744664670 412791414 391079327 302983514 39505607 391461061 596811804 573604752 481167025 558096024 484747010 142505453 632138253 778733759 953351523 444830741 970010200 270508743 388750520 494485550 416397187 432344184 233240037 701265893 279565748 299761759 135221808 306178615 800422999 822550164 963901639 115178170 115527421 920577646 596798886 158045512 450558822 564885441 329558868 116603981 578663695 934057226 661965033 32758459 707615956 459300599 856247730 615356505 217192258 348369984 757977015 144187489 257431645 235662686 838653967 983239566 549921834 444884746 83717299 763389803 106833884 774283094 646987173 93358589 80267513 915259836 265356339 391389506 81414974 451161781 777225770 649780295 752565358 547706754 329201450 9456107 571676331 716994351 457771157 480032411 727367618 101266583 156422472 390367724 376339221 39546380 61188777 890203610 951770074 267634016 298913458 514546794 99022123 452842001 179826310 616256838 990973725 7258913 471761939 916975878 803924633 262840875 589936028 17118565 959083924 222571333 182042335 876142228 721584917 730099804 373146860 587571738 497943177 325699538 794643901 33301857 205820120 574890213 40181165 279244415 509877817 135699112 724563684 93523133 16525330 89957490 72896847 608893276 833259380 637314849 50064468 169000885 250291231 696513486 364077511 171037753 135533725 196536945 194877477 679557247 122396579 456095940 476717747 636667944 922454399 82988115 561952002 852994377 576715792 949598118 247122674 697216205 553330281 832123970 784467899 975845384 15857568 277900566 956256802 438209545 948177821 734494673 627421023 539027447 258522924 288871473 164920605 848818689 638764796 563199165 916879104 991705484 276812204 117080407 473506886 627736383 944435902 864266327 765075518 525105882 889924715 573510854 121108786 372340926 241913306 35730396 965343174 804694998 847473121 279321194 918449866 179607101 817385004 674957307 456850696 276224964 219019500 213083275 70049229 573767030 392690861 137982036 489688463 290632266 457116638 519598431 895657370 779198768 834988667 484740171 382613883 905915356 387993856 599313291 856027177 779337989 480479443 669608127 623163497 567549898 965197829 580195892 588247387 252005093 728427594 693703302 670501042 153185959 478347659 183080033 606480862 110498706 478110219 587987045 285745650 324450324 433872520 296961927 815226110 710424323 302978218 590562564 682979821 745126607 667033263 382752276 40686493 7909275 752030268 266400199 563716777 576901560 131691138 424440923 160666692 405714557 864403715 36257272 324537161 909570493 208073602 330575681 865906843 509201627 505957245 602019665 463019730 818869137 9037389 996099590 989063123 268820588 928866843 524626002 276833861 33609850 522211107 803185244 697511683 815493709 17753311 456955844 432800863 569036753 438300573 989705129 449420249 323336110 226527859 43163752 714271838 469023377 258544490 803699960 950016620 4909883 817043243 431942787 210736812 531236525 343856020 763047027 81935149 644945269 918558403 710883804 439452203 408453166 814960667 739549275 36970784 697727072 141015265 909457676 330312925 344535281 744526300 69229428 582349289 936388297 17695982 925962480 909082042 204333401 222990742 47977600 530873156 862709107 289253372 68075674 683530854 556377653 798532591 607282922 272154702 416508222 757126514 424210203 196325283 544931897 607336371 677554395 148427423 36794179 157249844 300518933 714316264 432711679 309413793 1222960 290233509 306274677 290187841 244551645 594721200 731039540 185925577 778194153 559308563 478470322 557989771 871571956 906791908 497442376 306384516 471059529 182603405 771866038 444904707 14807415 157020765 857340753 233360407 784838042 399784086 779740125 585924136 864883994 251350211 458307929 820955777 766437047 848608653 293956769 450698592 615586903 180656219 53160096 471324698 284716620 964556400 984708287 26923272 389281859 825467727 810477215 389222946 580753881 147837892 426844736 463807945 331120921 185177150 106656430 329889271 762724052 841759850 796404229 616172496 253025731 698989923 480716437 840821819 455364983 626986537 541166498 64921658 660973627 644887473 3416848 924860478 847063689 281020961 877693632 202556022 655131750 21174386 42241798 82603997 681695513 335397878 101365836 646201574 886022626 868314731 185356503 930899546 762587247 487113550 466637489 523086515 782600609 233377151 8017461 67934112 854006238 915572132 475451512 228272217 760909505 84347427 178206023 533157315 61352417 141211076 142046291 903512458 856976157 760472853 166282036 293462858 557763451 805824185 216223061 207922552 55811363 785017530 305042566 702334598 533492770 586019116 707524704 96903788 695619628 587884000 130126616 254234569 112459839 82643117 445350178 371340862 402741783 335302434 585337449 197717707 253850888 768480884 432239964 690815445 856624565 855680294 604083356 374830189 675486502 541081257 505049458 902001781 151810651 91424923 244070908 294404561 304961401 609533727 102359802 757765390 871007639 101213776 241067293 740957328 608813785 171457358 864294736 579208760 937835330 819305580 800612362 972831848 748703407 765510869 266561812 525620435 326159529 153764544 359919917 857240914 728144788 817250784 347528753 626976884 701636003 14730183 364047042 327153459 510482325 979040829 849682083 83188172 590896180 815647363 891529457 341227961 62385534 839179912 718598525 10951541 504444054 248408022 438466274 639272092 342562006 273602919 939099571 876300323 74777828 716904327 311687907 565762587 643836307 424226370 412355188 602054854 825357765 369271930 558280468 799314827 493831464 706800568 830329864 406922170 618955315 868814538 326412424 581907422 914979015 522566066 551968692 60386903 363565864 331975708 478612780 763174511 635995958 499008872 589916793 736540466 411110371 494099192 987054754 100934491 678375131 289973410 27590152 617331744 238204329 671001956 349798604 957445542 507802001 269781577 735400154 459171939 55291774 63108594 951051401 287596266 373957002 817503720 144497736 817945425 565267384 326849999 102585300 301309619 838955342 238660809 897955443 128917472 191687037 321096207 744872634 31371604 523647280 443699591 955722545 48275499 980461514 218068330 853240083 935487007 233345661 564896132 46770600 659560424 587893425 309036686 804810161 855964973 922046581 376476249 998939050 118422049 82334715 551011883 798778364 544652271 788689954 545913086 427439686 922419345 753941247 34550967 901643742 998676306 64921603 571216508 303742279 217654456 358458793 542911115 635532525 416477889 363303698 616562273 112427579 612472605 408183342 547834363 982716208 620945906 355432144 343157370 656012006 381778641 478304652 806117776 887011721 614247704 112123268 422295174 152056695 629580822 586992132 94654706 325638911 335641229 712215038 464959699 188040908 496174575 758782488 660993544 814985454 690803202 283343489 733441374 249470284 14815711 616595528 782220670 597765216 265816068 127436680 958957849 915606720 274576108 938049539 727293033 340775675 481692783 727856624 738893272 341957542 607175800 414431281 640930199 114714306 769005808 995673530 38949231 721607034 220186139 86302767 948214092 709430421 518183312 9223991 766885798 333538410 246903609 946519866 810142246 130256352 580761802 853382901 14484813 845849934 53039387 28041299 781578056 228485065 129285022 320684322 940419347 569790834 759785242 548756530 428529284 389925149 833708048 726864065 123013904 293656045 789704476 532831883 191160402 995381529 139088494 173256807 784753788 463619967 99025952 864417503 580391937 938019070 986657592 263286180 785035733 183633380 477061011 234788038 772914143 645446071 406777070 823013747 635145403 470469565 673250797 360471412 408803328 605983464 531901178 695453210 992929494 958963922 510938615 621774526 521454214 65678807 615564807 442983005 283858747 243515261 693874208 219091456 543486079 561243689 124253495 36101707 801719257 555763606 3628014 137828239 16502428 303209057 81477123 94463835 42803111 236495225 716905112 325077209 32815694 695805465 61299834 134174456 895801449 904366466 928610564 140082565 691805451 827348999 102062104 43292698 52786539 775913566 823980398 95020835 686521009 462756606 824482092 456895966 743691657 457939695 4675673 659221831 213363751 75744106 671555431 392113421 289928489 870527871 846352933 437483090 986099878 458519402 924410427 49661248 49109567 511610074 750361249 990490251 144231353 256379445 199332339 461701224 532912856 256788350 581275500 7130463 609136152 50267944 284070691 395070968 149029466 17054418 404341735 579571037 436018838 977870780 551695451 825107415 835416941 207894030 849781148 780749365 42148829 244980202 55377902 885710692 185094424 14751089 758771150 892961214 952912755 480057735 646258585 589642970 30737937 654279722 569739864 993170447 740474597 135393258 809123186 263628035 239036418 689916362 759591443 994582158 169709679 458582637 12083806 228851958 74633227 445870260 550977406 651153373 491734199 744672390 659727589 495126140 915494753 490359034 2875507 911318411 935897948 587302663 2851449 889711935 494405729 598426359 331077581 103132355 467502154 876315837 155486808 349661825 21288177 229308056 794901440 366279536 730035194 898554264 45382770 930241280 642823226 345574222 504223880 664155803 150113219 32118297 264429405 989437158 561462209 865126010 149682354 326682708 869811164 391374740 147629428 806156228 831148274 490071692 769789276 272956510 951449187 509878342 412413209 533142371 181778788 144631199 14634262 65779350 866006015 997789486 941178162 990889599 460333655 908358970 345959327 200812326 159330601 136695147 477424354 920719915 974854608 283760633 169793724 763881707 326218429 628238691 374772 770734491 690389540 161256065 981089809 986280402 550615068 413387243 885907290 685350861 315160576 227000159 713901471 97052469 722996327 57408538 67269615 198838850 722694733 309773529 861360739 831745092 954700626 219300706 558434870 479395210 431176817 208966290 900388086 190886752 228473191 665453190 788259741 802695452 643636510 776492534 410148378 323632592 162367626 592154498 454172115 214836468 751399311 975075461 168192962 897444730 611341206 898740615 710711835 224996858 97976726 179402642 169327962 860545676 41587367 580547473 499490158 227280378 406090991 434789593 959075166 800199179 357859762 361686144 456098059 856342644 147668898 801315484 545789529 633099777 159606405 417179957 167048000 19865553 908407750 549064298 339859140 911254974 185100797 852250642 530610611 700091442 54147999 294740210 45641454 145808071 414813037 453547775 707460486 589041855 170391210 123322613 48469792 975537628 580187215 655464142 133048144 233566578 95215853 733276572 831242937 61274947 650864490 580621919 169342277 865744502 294600996 990637095 505402583 629988897 391135710 387314429 511889026 898331939 413523717 280653592 219236389 137613324 920656846 717051857 518699989 417439739 869209796 675260462 82389351 62682555 299136724 435005712 881258760 211621583 170571423 694805617 983470357 75717093 164430433 550870822 400129269 566573498 652795250 26038553 329940736 477596319 181601693 668693097 667673191 925331443 765084702 96907112 202356934 939670879 843825095 821342804 385479340 265278017 552127071 635108589 380348090 4301422 869228778 453802237 387118356 898853092 86446129 396663968 423277820 269353233 643536487 708059987 547454440 905923115 758103755 744278622 135863231 777293661 966750839 617145548 128275394 522347987 63154994 130821269 927665138 720108866 466580200 864717743 237092750 877956538 751648422 847804176 801418301 107988924 260006982 261514506 964067925 496161458 660697902 843286959 329844440 498146443 4937883 853924574 791227878 744204811 647452733 165172087 819320926 828833751 117461544 925922546 186141835 128516218 70321771 879460830 984809806 804488680 725785774 855887516 868575677 228284320 511975337 872978160 607908543 997198300 453118774 528921148 367758721 872692171 315520894 854691943 772677138 133984139 847111933 315555377 607440850 549482666 35959199 352695384 233473537 624071840 991805767 856846507 851211838 610835836 105049019 852814879 447845502 508608802 503274891 490158583 8203230 690245591 248659869 494373380 365962363 236019235 171401682 808848873 542501531 674934168 625882255 523165420 685134893 202739437 377227036 71245640 500224651 381404676 597228847 244505797 984095614 9589698 949838234 107186974 155227138 331986094 405186114 129561302 985561062 796892454 57192100 448744659 130871934 786319903 119585240 922804967 608886660 823252186 689037447 64187352 760933431 988207347 181409952 8708062 744514178 494994470 955759229 333339027 7639778 471494643 262766402 477101589 280141723 119080453 576545276 794425376 411265301 512335294 678497345 469866212 82829624 293052967 201168866 91521056 624153601 140884704 627608124 448152843 794586020 610948422 479846342 532919173 259117012 50631125 489239804 572141053 195039936 612131197 100990140 93856148 150854166 313270102 260708239 368540020 252379183 642662981 161536264 608636554 746896435 957537670 898975562 116688434 3875208 787870166 14171707 862272944 486302454 819114925 505167635 154820566 434303612 957821944 991444898 359349629 329748285 626324244 540077800 319303217 38176518 363646129 280268035 390973542 715705943 914713518 354192228 73680167 697919047 902526309 867655307 939925172 679364471 624083061 221158079 926652906 6207962 944029179 973372077 735080271 215795517 19453607 649489095 85381899 506526772 8903790 761779243 584057967 726677807 448598264 501215952 590192298 297963814 46618336 666868359 805455703 891841408 728333010 678375706 263333059 845432911 870052172 158530193 825173995 909597280 710866542 948660848 696092881 88697802 924856710 201543631 829762192 798700758 763481676 820215306 14013465 48244953 451536166 399753346 320774629 107537731 794199610 825490931 207977905 636868736 415159771 868786216 983545120 860053329 470247419 260682519 128141384 229985779 373459469 890745953 169752667 534574105 428386571 986450497 529893584 334231623 35081171 774174598 397895506 34339 948219787 215604096 57291380 926283696 52829201 760202044 308246915 650743558 548160930 130408087 813957594 376598518 674758921 956075554 484140348 120806715 74736640 999633073 661202386 391947477 556831731 7194675 933250497 220039460 727754295 284179284 659667381 524386588 606356699 392401113 968507923 968330764 763719264 50280238 428622967 599134024 925734461 475231208 63611021 956996876 443848138 242633878 271613070 200244208 401732422 334323265 734782128 267455117 243760940 688339381 39964678 836645523 138950376 637695768 888102788 701482103 641654035 180285758 882321465 959682678 206172090 543794224 656677682 903569068 517922141 297527987 575455916 298770071 91520812 897065652 267468828 325050597 748977979 894623941 248368584 913503669 330872627 267926628 477457813 300781955 685004617 18196370 488976648 124130063 878530166 257030157 168216104 715093292 668797083 439688189 669219245 20208766 161879766 499654345 71988331 56476558 296763656 795694248 917386135 84163335 827356268 833759394 398170689 94649614 789410832 926276988 259005566 457072447 584609278 277308569 723851954 725466763 25216483 708942517 759342971 131758452 196086341 595320944 276421357 760192864 918129236 197716157 660054485 633687441 593750173 773112082 378537331 584134528 220244372 714920587 584660861 844909085 549944166 46861707 37033634 497180513 29041491 733626123 612250446 380279799 851156546 20929301 754274583 904056973 634238561 196920170 276743861 759430515 457747067 605715227 777927096 675596822 697430695 496222859 286299715 834487037 633488615 486747733 699334330 353466918 275944574 310946437 768906200 161404259 563596721 818954485 180610504 964268966 969459371 421673605 493531500 938691773 118792138 748775646 295534659 808328471 687621905 506561731 792337725 619254294 39618483 870091479 321699513 851234085 305054137 853936331 306999110 846227189 541895145 690201371 18790815 668178249 203016861 300306877 1089388 623186532 92771791 589336941 264069859 30921809 112604482 203631557 423267626 400315305 779979381 175374158 500030713 318697971 93582237 289995757 222830875 427842254 889001503 143313652 621676772 669832461 900565941 920461565 569046327 175536843 313411759 443428471 990390548 847661228 889188629 81432485 532221873 723527068 51374783 828677371 125923572 274564291 61004750 767144191 308734389 596910365 657813263 688418349 759193762 849407566 87178996 438134179 572817183 231564619 444995189 209849924 839257005 990710703 379845404 177310243 654971146 526364982 121784842 507470666 824099775 38662338 867467479 936685821 593766775 624557475 549601315 955883907 522800583 900912697 234617212 927604489 898504214 34182254 344124133 744333924 949162997 867732627 654693519 397381136 492788318 940422538 371124242 793183487 249660340 725190412 668476056 376451711 251037481 184926522 929713609 126712512 745940631 683893745 580843119 176133124 958485153 331434687 307646291 344348850 604687481 521181220 568391342 231386702 728977510 403108948 456059373 596801391 2376698 522275573 995530288 432736144 279681882 812968072 219920831 344430737 800684632 850949374 372187976 253134073 786715494 232326026 565753813 812783440 871881618 862521703 36325278 665021487 817711282 625164937 48927485 631835296 788839348 688860248 912582754 73409606 893828423 715533525 231454889 184068345 207834840 801889809 432792088 340258466 411487660 853200596 86498719 857724572 86376583 542895959 9570916 910146326 469000264 36409373 575984712 715184898 686831023 203739384 43899746 209173626 261566438 34342476 170977347 471245801 788882952 817320797 615446100 948090955 333704866 354207752 95306991 219336184 334243346 330299175 623267553 982479123 988685722 830171278 277922878 460494613 347701475 606327694 287930228 749622055 421584359 417485919 208921254 243878249 122443276 367124696 255593710 790208463 794404699 20671533 562388672 914431710 784996076 899656244 754755639 408227737 387545578 530967576 324903621 69655093 834975044 236185425 78885951 599579852 683249989 954862018 637102627 58188196 214038707 741492167 719877884 569005224 828375566 372820107 427276318 401261929 100067884 566371018 764493631 847744264 406956971 804349332 6387825 325283553 460387966 509099697 252557903 77509587 108744601 692282213 273104193 170176810 242427462 416240652 325709364 777460042 170988963 693212066 48518455 141208184 182306427 276737225 578959413 476265156 78602227 987672084 736229386 192716529 357569752 430065622 251634647 280626053 320938594 84200105 789178284 451554568 425918261 391726191 703330864 577184228 195508433 229145334 976047477 143134878 387880310 704946159 115127423 851413063 1524232 388919162 928634297 35352430 923518326 503001392 135567919 414383229 211760097 714837387 496796401 258569790 937523477 567111328 712006527 369678718 297709461 566959771 12907140 180733094 315029348 421525832 593269068 101476488 604747960 25869262 777833701 308697749 998169861 411724778 683225511 627299049 690067319 248879716 485365015 71525107 808399748 445799089 47593991 979689272 192425356 169777383 323050464 420436399 885788679 606060093 373663035 520853929 447018500 293395242 851288455 66797844 121074841 311347032 780967449 955696638 815842553 939579063 254071084 841504722 817646447 871022275 205427462 567564312 937700649 4943949 3680628 386972279 806332428 217369856 213784986 741746907 207126539 140186730 929141990 610064272 272575606 670413230 512188891 251831187 700531089 650277193 368692457 128688576 364866880 392285356 724668991 848955678 813315760 705608946 450505153 201572094 985577918 174597218 851082712 353406945 997343527 138245438 237307201 689964140 578478189 374929660 530853585 230258926 776230411 884393138 17960737 725747610 608741836 663743712 732291552 436430747 798504246 328951165 205165450 232861643 204617401 389476898 432184 241165596 17648297 956938443 913627102 442183770 697808393 818488456 706497180 755981590 478650736 310813102 750037131 61979079 724486831 238243605 430671278 762047608 608737340 131521982 534899659 110235475 474031783 287282137 969962265 183915381 345484867 957013588 782705402 3208901 90079029 265338254 105300981 724865067 981515050 4551455 603564004 882903415 678892589 99106332 186158705 215766175 90088937 821341641 250612016 540879461 159960732 765373480 678184606 358785651 44688509 810803557 603323147 973487045 496264314 642967470 805795618 349128834 864903882 65617618 746077022 895112605 7101798 680432798 955390699 266022656 186110512 753424083 541890219 627757812 489511498 929918731 782834353 360843522 100508782 930419564 927034233 652941590 710160565 666539318 946787286 632842289 853653642 413671560 619215471 91543536 191078053 267005583 115852831 867180067 98126007 420418211 412564618 470120955 973329250 473523114 403006090 508165433 955378029 484958508 656075958 972888970 550023692 649824820 205788784 839790378 893727794 482284904 794166714 66677536 302532647 664588117 69733719 762605467 285447112 59855473 255656706 496850809 234463625 279750059 780276135 38780004 552939949 757252666 660778728 778402411 693508572 417434053 420606485 867633898 569703174 748405785 437496408 18044813 119254583 549581569 723454968 465631348 931521627 605325976 625804794 426143751 232520967 869042360 211219116 708607362 365426384 600182243 165639006 756674205 447958324 327332403 628448343 778703489 318501409 728430494 133892759 534765284 321499621 689336526 541809383 537417442 715003748 793579287 612255794 89757525 933833418 805937072 535670719 14095323 150858276 2560536 413794984 555049393 922910054 621522214 240231492 92589664 117203767 799775347 526716333 444948331 523397249 279225676 848581055 880949135 897121442 418405743 706558221 637682081 134864728 297241878 687496681 554677567 360660830 598765499 298064266 443478098 543405246 652464696 501344007 534399486 807996462 911335975 587018966 382435623 122340855 571922721 777192306 321238391 5938482 281369065 452752009 902643915 446555637 551374753 226423959 332055436 387780352 372839001 323067838 595535619 841236235 200198314 273176182 885599028 796750630 30396064 968710487 425525229 839241613 605146686 114358450 875312595 648151409 428899637 85928492 821970338 277157899 612965029 519242447 551992449 54008127 411745138 437237919 763668561 530502145 108532718 181347999 873918739 269886988 377545433 737943535 33323398 685403539 213624170 631635165 132191571 985033032 659325519 180232553 115698769 329137827 615601447 121779663 800500370 626170116 373432699 657133878 896382722 309031885 140141781 354331900 428845518 618190 719442511 555080913 266620038 7183294 141725718 977404373 759930978 710319325 237186824 235333522 609759326 961078289 838860019 77075590 241060834 236973401 9411214 175084290 226266524 906888880 345107492 461325602 792223111 712801683 873420091 370964304 22110906 871157172 283563221 229516579 29668061 122379521 935425203 106665443 677585544 464853335 691116166 589997705 236342517 654586858 1921121 586819904 208244866 600494320 485548105 269185703 405528614 362480841 496281520 721077459 693151058 128374535 512585794 271642777 185700025 639817488 302647557 342226232 968591380 944220702 770552117 132697169 457726722 170966879 21069794 698947579 26438865 335453442 670086371 915770907 640091827 844902909 357005314 844112205 318922495 312522104 554259651 20521620 692764765 530803730 9951338 201285373 228446544 816346295 599774605 172842735 380981795 849596337 918480840 932393822 314299736 166356724 22980521 7047959 383519852 925072128 976728474 605757399 16370444 473207792 948993731 131523110 183547565 615001269 180060574 174057537 386880029 555176914 320876924 116685855 360313535 446391615 538260685 149402103 721163679 647929556 995722090 52751210 975669904 454774882 900108347 751417637 380631573 998476906 255814283 462309782 67270594 55843483 142648753 118810862 993470147 394574953 437679182 89875925 905619393 5031043 937613019 680250156 338270727 871939129 939685554 41779352 153644815 965197541 297032179 927709491 484111253 810604034 527291368 201338070 546629847 878308884 432546607 471770397 23455970 499740786 976695198 34817510 75649022 911934172 487013000 752042231 539267193 21248979 656845012 693898264 868651950 433254857 450405815 747134719 741322509 891184006 913089721 342549038 41423783 687242504 861771495 185438057 199822206 898293992 369105832 166302020 458706078 193804582 355672509 144128945 213145965 305902240 347997371 613182033 743297460 623081724 134101637 530710461 949752999 30797663 443032190 235043791 670299739 905801410 786893112 250722012 687029153 563081378 648971853 237606683 761807702 331424412 33772716 184782216 185666291 454301670 932446741 578224253 747165623 175082878 522502507 794700169 581050122 633335607 4850223 673900803 206426606 299255142 687569269 704889920 582376546 338237669 832635751 969851058 412726577 645269212 39137745 680402386 755418119 614603370 343213084 599786533 106471030 627984782 672585696 181783989 392321620 597306933 308041250 382253478 73462945 624832331 938773338 776235896 764919713 195444876 847913533 609425610 724437334 617580185 830303281 297071066 33563402 387739257 141448910 86973904 547688755 141062371 526305826 841761553 305315964 124532084 556380833 128920358 763480765 588447858 107829709 916185453 827050654 950019697 403466320 388972508 913173773 119756913 242040474 188094323 670219766 392608617 604345065 235450997 775231530 324532817 898697773 113045149 595945075 479275324 98184649 371524328 850376224 381872712 991287877 935777145 820619889 524442613 143457285 636473228 741835274 374352195 578608920 99030830 867437542 738804780 648126318 11231936 460144528 334133627 95624242 274381070 474386451 263074398 79048919 618338271 303466941 194415513 428531089 423980794 232767505 823782032 101858422 223132647 965569519 133230970 934459932 37437786 584451666 741412933 999855207 660183185 291043170 661122874 288555198 82688628 304979573 518667703 262045981 464033803 635187146 883858660 460081595 596523014 693309386 892599699 908055540 740289320 329530979 673215802 496381530 318689783 917280388 811743759 72832912 198763185 755016348 997056330 468334200 975948690 134688584 192579893 314429508 180206257 512425479 138777017 568938454 72749526 299507742 954520176 605808447 323053277 690981859 751840441 413586410 713554364 745369961 787271776 901064105 606351201 767886301 925113991 961303582 328028190 797347946 251237602 195863625 369598463 994121352 153736481 15756165 925963451 873749326 684815135 720054213 112204192 852084710 254983495 704911857 748188566 674207917 960745207 333244975 967143564 16153342 652455368 819727729 732221958 317716031 361950835 206816655 28580945 311190514 669804666 499059075 972269506 604254389 851425421 75682173 852074034 323863117 526066719 727718507 500079003 821917623 510016247 354804299 606309141 792032207 516555440 283702 472202844 569612408 611637642 269916713 545780400 583503168 666443313 713449727 187148825 857534955 737982032 770758640 62309734 509075921 561034819 401937538 500500394 860379214 575349230 144059228 859075837 399135828 541390879 684941748 109489822 132624569 31814540 540745784 222820579 341307781 636262889 61460410 846493019 125120226 588128864 134761994 680657738 756977179 389080051 861276726 361791457 221321799 845457001 98328078 578009366 418330438 400340442 768830274 77335113 522283753 604595504 788210987 253905572 860262761 822866529 668340783 835715456 900077613 204974784 769893914 60103335 129392224 304668220 835569716 204293876 135154661 565501211 602215517 103210818 559145571 988823777 933089414 672884163 930286777 912201050 736258528 324653447 281195988 243813361 776601108 243764548 326608025 730275209 729685275 711154683 264961888 602650299 995601780 276920460 476981072 943897535 153646189 790724540 826792161 839638036 118558803 263585525 968323680 95732726 89568160 955944965 261615046 730501858 71933191 179506180 761726941 927917125 973712174 77603192 826850143 141400985 431388769 252809191 379533634 875664001 561601241 625158409 213102589 174190853 773459616 680619234 17987017 385489510 48724724 293556703 992403180 69971114 248415222 595764076 47189181 549843562 694914956 527525673 219043784 837396573 289187338 856991633 7561205 611271822 102623146 739198464 251119702 253613885 365091167 193867490 87761912 863228687 610049497 776263075 428276888 515633917 147760830 784138737 171588208 846068900 432296291 504070039 307264963 552523366 35316482 354966664 158004122 830454903 387958336 808576148 292883971 446406925 116614533 511186170 510213141 637244726 135304400 818434864 186115874 496229091 387679657 834233557 216772890 964325360 354605245 333838957 120855135 969022593 46983456 206278934 864099387 229231152 402255895 694777010 922062090 316131370 612382018 298218489 616425358 739774417 344788595 206846268 461932414 778053490 820314968 308831844 249691848 354786320 541740049 637977098 120372432 542322621 297337816 102669171 363888545 650188018 766592001 379120542 665466847 635819420 512201788 566703037 343285538 799642558 175118065 550804507 824811576 474703089 65556957 453176423 23660843 710658311 460026619 396685519 277299217 283622193 507522226 162718119 991263978 43987249 33903834 462629964 554890169 623434692 598241904 496146936 254290238 830849144 75559435 838584713 808177068 81535564 23858704 559662460 61707899 673064838 301584472 380145813 250535468 552663163 46879710 500483354 628584509 112369539 936787014 219031328 846733865 87691915 834967548 127276639 517900461 397592296 842142575 679016933 866839425 948370172 956946979 447804209 954924249 894930204 379758331 636947746 234443974 495763056 203014828 992327333 772803700 371842882 895490682 722520533 746211290 581559078 768133366 722443410 393479595 86629548 30939007 482653570 651140183 959617666 322668042 614118898 88847487 916305030 559887725 295602516 993462272 325218388 707803503 681698481 869623171 825213149 90557778 364430427 217571949 916170934 549330097 614259794 63479554 311031556 353982443 849216839 748350141 740152972 391618678 59444820 167644688 140565746 421233605 591896220 341876530 177588451 482299849 297319785 851384997 690216443 809417472 485627766 723033658 77454049 47960158 178262186 805709495 974357077 183529299 628347411 770777683 479732170 267093780 275329057 676236423 403633395 664903298 152359148 947394601 657300845 668172707 458549056 188804669 997773842 708805316 363427039 260904300 353396484 528732587 760497839 750817499 843363982 724571809 749684888 211127689 95499090 686931031 658099053 327448286 401975965 706685973 457443527 928046321 443087461 200340539 396513888 543548398 383809011 533085775 308134283 992609075 394025979 148246869 598841345 143791443 885254911 492555035 322859494 749322335 909195048 623175696 95645178 750880423 485371354 996579789 986302070 470146008 249106729 846600780 508498171 992276874 799704863 721736699 841445097 10700021 921061562 54047773 352804420 503574525 610947166 424718267 161552427 304683438 259322096 638506782 534785122 122774720 114880981 498204527 918920893 208284308 474512931 245111785 502291484 969324825 734641308 331892555 580152418 587131982 912068630 150716895 57362139 221512951 636751095 513449961 354199902 951643308 802726891 685230283 886574253 637968090 848639078 591735048 488161952 620415736 357838256 276855093 402377298 809568830 472444409 974983094 306627615 514896934 142017842 507021265 468324717 862635087 49798103 192682255 565219773 531313233 138560288 719931570 472984386 210416847 93677484 97565924 971534468 107164986 269272051 26559912 389839922 397053389 641868155 735324475 997024353 243714319 373947000 354576941 15603420 487139390 774518663 278121557 410548895 859266616 534169326 460008317 980579951 72679441 223694296 725060820 555184088 79246666 668382984 445577295 361452471 360843064 871363315 377045205 52469 935843272 316414930 230209503 496473957 939321561 930621315 206634471 89751029 1187600 433650369 937316913 985875024 494072445 298260731 130607331 24489665 345469367 995582942 4053353 136414866 139312952 771459651 103044727 682756329 365167019 154571635 640533377 224185380 870171020 896038292 739969710 278282374 608187875 419720184 644162730 337570146 169543571 948705366 640589237 716402689 617517555 956932393 851142427 732742481 230256853 917233700 193305030 601005051 378585210 446546495 263600685 61810709 700975463 908418183 535534551 373576345 755500039 668878020 212514644 10515100 814143130 110867360 239208297 501110579 387018337 108507349 527877414 740397696 48645321 387367915 432188337 921942311 658125680 667425221 464641800 629552000 861629030 289986004 315509543 220071891 224572402 914810925 763809105 844810753 825824236 866387019 745655220 193972049 308864441 6884351 85653144 4142583 569253834 773105652 353693039 870444697 619141499 154868683 155559307 411867025 929311243 768857934 661391445 40547164 462601698 868925474 947016840 461434797 865935087 782381300 207252492 38153928 747368426 762385687 392676440 239100588 5464301 48390974 129481968 428442253 539751403 188172487 892587082 180609530 989250082 735762603 677445264 842604587 77550033 977251286 616636163 629986929 863170878 963977498 360013381 769900417 745274175 902078717 353117091 184905473 578491798 112070268 896662665 857877859 671306817 57548626 313258565 178747603 642310167 973961669 457203324 43746896 480181467 853018912 847932684 792126621 696676665 37239346 219700238 491995263 115752641 935068639 692899319 545489186 947761270 625934312 549016676 380255727 480339734 741010711 429274405 173234933 942771840 782921185 46460178 855880724 305725552 230639142 927524518 954159090 96474425 820579986 626060670 284695479 185208670 387024033 411266219 987639934 280239154 585574624 80848931 910960796 965406030 286506403 197257117 752697236 925462017 821752702 521993376 730308114 914084428 629733081 398303371 27282780 241510277 707141907 660169849 776806470 284411630 743999674 94349190 207863970 561831421 448772897 178930319 244469120 403031381 322714871 287823103 932901355 745100465 599388657 244276805 165419035 152640947 846899074 169151360 275543201 337114295 758735478 107534112 312986846 54674889 292246898 905110657 719949680 972018015 673379502 231571554 87107489 843105021 243302027 733122848 331765097 325376827 275992507 259186926 936208369 986659291 467947007 854976423 754834558 943009938 451190772 991030897 191977463 168816122 904771779 97008197 439866786 129905751 484568166 808438649 296170228 397832353 283899832 982127631 678983990 247407918 545629742 467949164 569371447 590108221 920053229 935071868 101310676 477562589 589797605 939878147 809688463 258275762 930683631 732029918 520022046 132366546 139852333 196406308 286530252 468332860 73318461 611064468 3089966 42242228 130420040 980958202 565843636 247021401 462185154 212708737 313168278 598429897 624604810 968130543 330305694 706609460 274193387 210812443 145968170 542659393 760029564 190085409 326366543 161750204 902321678 78672221 556471607 107151575 879747072 985466739 411165590 12505774 510176643 917713448 454833564 419295927 890103584 244331884 142826844 27308089 112483719 284945142 76069020 829495153 689183084 63537408 428908363 641609167 505159490 518230537 118371045 373403047 153108028 116165679 54577778 73651450 675135811 611122149 685305629 801623619 489909776 645821324 827318060 653560501 783103728 985738442 539331938 950762603 998259419 866403792 302581264 437260168 975027481 168459806 295151841 908450589 264225989 284138339 803510943 173144374 901418977 513182534 598762070 73371581 473562152 158357653 823337219 514812250 846785503 213280844 267136862 832236766 603332687 397471590 64522031 317183879 697232224 681874534 699876735 375082711 947144655 745248194 761862532 215621673 541597371 454646110 20781056 19494248 659848190 893649126 466992747 207177046 868778433 287546247 599113276 355507314 550085866 167184108 837051340 658558032 567918096 15061895 765424238 415463452 103890314 775785698 909101824 92202177 592970087 757460220 234064354 944575246 349046997 790767866 646167054 884044557 83793959 212279208 652029957 548519954 991081461 328518524 478066023 964852748 932963004 797449448 114394409 116511023 844051608 840487169 207516034 1397365 499964992 626146361 295392705 731611811 412132372 822650824 311380011 654379626 296116877 197822914 530019845 433509490 175045519 286911973 642488161 479112237 512937526 635650512 561169279 17766448 319019956 255301266 342545510 611413093 290270608 845827136 941584510 549283917 902031328 995947549 303391750 986262309 861681189 976513760 13804419 546891685 38343035 996725536 313930514 134541818 231595453 368137245 48709842 984234482 911836216 634671845 224130743 650745419 282210378 791560617 86030843 892883788 368226044 363003980 528625743 988600486 417547168 268752414 850440016 190916544 653811429 546752720 163832517 551703791 644312656 810238457 162916608 990192993 731745272 348740345 813269596 428930877 732173300 14733403 831937594 440213469 460570640 847336681 235186229 584159947 431553298 324182102 247694529 529194639 563534534 377674984 778689087 623559414 7255106 659099257 359263234 692943906 161759816 269698284 605512773 39192332 583131893 178886289 856266779 860257263 180239239 469479396 426215734 832298860 38061187 622573415 165995876 207458930 25383128 720218095 332475116 12697251 257572367 313401438 340575856 946577539 306049588 428534913 278108292 803578741 108275432 15362877 156301164 423315263 575538228 438722803 848275777 634036242 88850937 842164792 423168558 53230265 604501647 28891526 965665774 231759544 10069362 822287214 125801742 953760764 831838692 387230342 48135221 539906903 293014534 75351349 625400719 299738042 412329644 229877644 282782994 596896235 708331290 889614024 227874106 583829403 333990203 718195578 512122243 262524958 38388749 16776498 449885452 499712449 246048554 874504566 988653168 283888101 86154879 391390 935133574 351995363 109268102 481059818 193664086 451122085 113700248 210722318 810360809 748279798 865435225 819889545 254734351 907891564 505937769 552781362 39313880 481655065 411737192 899709551 789805256 491666221 329607094 165875778 130243649 929037846 90082463 415919409 395517332 345793488 70483716 506133542 325833846 974761633 388452240 389619223 785778640 430455754 892634170 700894236 895856967 628715896 850962651 865747347 305107411 602983065 249439964 152626 385910864 238722422 686392148 323795009 441910914 667879940 95713655 818452445 780821440 97168879 392421238 521134669 25796453 61166274 280446980 461325880 975193263 385401798 146823810 990882222 841606128 120142082 280575291 658025840 8749687 519989014 815024324 320865174 358466734 311326150 466819993 150282131 363557183 621272701 448123462 244840597 745064789 571835426 53290517 626991331 347983130 938570971 458114240 967729402 154001817 100034862 106873097 726599678 542499792 389108074 165801752 961794170 236488130 229827610 206131063 474793716 809804668 56524433 325907414 982775727 757595357 384561517 376482845 433500335 356671233 407006873 991639427 643886185 303851884 15365247 48056524 258447298 316314699 313727114 583192370 652376993 148927520 252696159 39418819 778920427 371680360 977635889 749386724 178333591 112807776 423124011 602418158 146986965 149946816 87976866 868482702 713275277 558255357 282418520 817084315 555154048 526716677 101164961 247376096 56127554 450038667 641215637 428515761 432483007 341797198 629621191 61942883 972420676 890958893 283452600 911270656 4412654 465933745 806775575 394555737 45353356 455553408 682839084 836033372 713215346 944171659 257790997 186039698 683088407 752542466 698427159 166144723 746757361 392401352 242893984 38849830 828520038 441865614 810750602 519714859 127430207 217040422 871884448 574974547 335589961 921322326 776419344 971345439 22388947 19849965 75773109 602185797 515143439 481769955 660500644 783686094 320525388 456994439 349833364 885758248 984823574 599939287 541598046 6745666 880034180 450154770 694865950 564446323 643241314 530443753 354169073 253999868 650060580 250346490 571999386 248399296 144552255 495347786 668882167 935207655 342526730 409086301 883808249 452554798 629142960 106090432 643849993 42730110 194284375 62978712 234628838 793644005 726402238 840417660 832858204 403367383 551766007 472089716 427630021 314744287 97357563 882253131 97153714 586435376 125448375 127451763 164831545 739092730 989886872 420087571 670528718 324211583 833725596 419160546 629278496 928606466 996450176 657426377 661720681 599147192 168479824 459758491 856997886 117413316 683302691 497656507 209274104 333717470 982969029 480572280 228607758 168601667 809770575 229840419 780142716 258676632 635182617 286051140 915350170 71486182 841489095 708215669 160612422 71797198 16589536 199498565 307038887 512394931 813875550 408055708 418464503 451534286 799537943 937651950 820668664 318847971 283657043 307366849 622671392 702692225 439941292 129790806 195564007 467389794 152587425 113837830 222080296 746548635 803589866 184597617 332986379 279846546 18649019 822232281 636894708 260307785 986933894 381537662 105966339 397000725 50488592 380650480 320098400 248424612 557847174 791660166 116459872 145636904 286225972 793679702 229525198 604225353 432219870 276392357 873592752 285446452 830750532 66238157 21505734 795184422 724738498 293046100 73908429 423068842 621902800 63577 890054082 449717408 976667575 825791568 901483083 470505260 188982802 827408713 496323495 434692075 856032239 104587678 849871565 215116138 349172572 834866882 844875663 939849091 906312087 865407035 245503209 867935684 993100014 941592079 593164287 47165765 504706723 697771915 239993666 615753405 574894526 398159207 671313895 943855616 674920892 677326084 777179309 785666384 686164949 253150261 520091146 841605098 905775288 805292177 894137623 65727520 425874548 724634399 885661834 829704930 84678608 925532071 61014830 389095460 537680822 523653045 894642364 804339731 288659891 976201787 341739049 517790998 965661843 286567323 639268450 872064561 522014485 352798171 330036806 577059872 338421528 705656971 920792465 573601322 577035061 404212371 709456935 611356861 191424253 457186542 245070224 273767164 55075909 142149344 942479348 583718730 431132805 416160554 338970820 715458806 731148862 335599554 839162791 681646698 799545583 835970183 847169260 455962295 244263191 582136198 604645428 442197924 845660994 147060501 678710911 340595933 365567129 412239379 414320820 673837263 184560694 696799278 711937028 633047657 662348193 597676545 950224928 72278958 241829397 546337443 389667327 646030151 166937425 729355174 326474928 275483273 746513664 198475792 244873055 742166328 629493281 418083872 602078603 58558796 39278904 696777881 564535489 897280888 334124391 205167672 859952379 950680870 331203973 313184973 802770513 613387709 494851484 929760552 864897337 798737216 471416958 336019808 154100035 470059061 842422035 71997600 597540303 832973934 985817913 36151426 951541315 732150779 928649207 776196925 966589822 799848215 993401179 524780811 989058962 719025224 564877702 557590980 976530261 178164297 433044228 109759644 400443199 384250356 477884524 973578390 798331261 929768226 391556374 545600006 108798445 816501225 286119505 502596260 953207122 828780749 913511569 724047546 96757316 156636414 371492241 890609493 175458361 100733729 220598396 590819573 396866398 141426395 510244471 162265798 833964195 10371331 474037760 228829264 275607673 866932127 950688441 488578882 116222384 44061007 640428929 564924657 550335293 695797850 403130817 951492496 623020003 348687385 125653056 777926564 93571352 821314105 853220347 208563660 183140614 972955460 433969301 701065854 237592654 591951086 44266066 647459676 862699974 346916253 272910304 605869103 349977354 323771166 345258338 790169707 595584006 134691193 783099319 847135803 369130462 239928642 302699672 247368559 74531005 486515915 593746731 66884864 885803090 816704325 809022820 406545356 390943543 214950754 167398335 695756531 907044277 361513873 395117638 607383466 856084448 469828358 115407413 289156102 381775947 548755069 218981945 871782876 822280612 445677167 951915054 503855697 824880708 696749645 937819877 307564746 460006372 747537506 174074533 136162788 836542102 778278472 837092397 458549703 352627292 551771654 504882048 581474475 465988616 637336095 701219268 41501084 620544896 97682553 909120650 609248586 771033307 899823006 333999946 634064619 494359794 979228382 908960686 214729110 960417259 94015739 46525833 942991888 736886344 354008649 123363991 639408955 293189781 712414519 978162156 93052020 476727749 157004983 315396249 377879765 924319496 509585938 901577908 511796416 83006460 665796269 333343670 361421682 766998768 802492809 922698230 772625502 920594018 733146838 346290020 129496628 770778110 568333564 40935662 448391099 470564877 916494464 467881618 836052749 385558046 632249737 428538141 671788805 603370305 906170309 269418061 452344360 320056730 898966184 828475734 548871236 55018955 915306331 957639750 705672511 748303274 478625736 537282817 284506719 841423816 287145443 64295008 82328540 736946938 370999128 867287292 235132957 157250542 421959070 517571739 62275619 757681514 759363082 166421430 702414646 773915529 27018919 706536804 830425253 340688749 959535478 569228115 423001566 211571759 860641532 622627014 774041667 311930484 961290569 837865414 657557756 291343797 758451042 719934129 404643597 88742440 479585719 109095929 868788382 345664487 382582953 184877777 536506206 861637519 612017167 387884256 686493095 761859239 430232447 492478072 862896263 771485717 670207569 866122205 519829033 729117810 570362687 188684357 4617182 558960084 989665 761320797 215245258 455130366 578387966 356619705 477054901 307228968 337839048 238748870 41798356 940801186 935557330 894060052 168185980 357922584 912806355 283091437 804012149 380274825 227103345 707660798 543362944 710722810 183100943 946748636 303204935 168572649 60560639 961382468 623301614 223254199 8257461 480909139 917251604 653679547 939989432 145116325 83102052 488070282 374001894 550456800 308302493 919020520 479999710 56490401 26145592 693810190 196110407 658388470 291916250 704627912 863649881 608630811 498761449 324916222 100125703 795651728 471921045 942131299 394364428 494818227 735523951 428918683 675207843 816299621 208708149 525918602 165060004 921635141 323186488 777421764 886360045 458292761 567588268 51877213 393892128 319410999 166318199 473262902 877015921 601823775 400203504 245627300 26888479 125741529 632682177 700066139 143181894 444437626 496903771 64750689 374702982 309848209 548361906 761813660 353156989 286440744 769878647 379147756 100933858 367226065 237408940 915909522 249331498 487266154 941618263 226174582 280610973 187341088 610639197 714182926 920628312 646712737 518444575 433098507 905239076 685296676 738052905 746614513 177531222 457985588 143679539 368097825 586893947 503660266 447473821 508247405 906381532 812657219 454044236 451159660 287011251 986240772 441018319 652350123 913775341 760721673 635611278 70741460 597718852 829732153 313051085 399925046 713054994 939055839 734432288 400637939 272569194 315426258 32179111 750470234 865706498 489166084 358640078 663720086 290922713 937598629 644904316 891927889 367227812 807022209 476237895 122761086 947694580 764796371 21188464 902544849 58139946 965151293 279793404 61392483 293652477 898835167 609005777 260765000 697267702 403825422 659020154 884540085 794559345 752388135 894884780 857353960 612431117 211989927 367897529 223815117 992519296 342474338 474427311 483544868 6315520 574038229 750491153 969233809 71057808 60602541 503302107 507503108 970156628 711816708 27411680 774247512 901128542 890946144 764834310 947387255 899440632 515882783 415413104 652368986 87091702 400614992 806142014 315082178 551798529 863225626 984138032 557523449 449183988 667972485 767758157 930098462 819775318 178280026 581611788 265551585 799629361 574996736 168905422 890150006 146895950 275997625 777461367 499642234 922376991 720489651 564379092 478760261 451682259 303312755 718708896 379232079 784194308 116621850 163585117 952285831 223109362 504620820 868019129 422451168 878441255 520518769 608290034 376337767 328882244 734294731 186766721 819804180 513025658 804234911 131746998 219560943 326879608 814105397 199113431 791272834 461597122 331984266 671487850 892794734 4647971 447595825 221760428 800962820 629233821 565845599 954980426 402892914 336386255 222975708 333042595 874760630 973242300 825614688 319150173 245813758 891099533 176506850 389599284 325724112 739648404 219687331 445528356 638302157 379968697 974778159 558176910 498864630 274776414 289755234 133425754 759462440 24695264 12362986 191656417 394590041 757125960 999611356 550502991 798815777 307063035 180475093 144386810 722020610 919337517 717252924 100374392 648881119 227134270 579805831 27289061 692807824 828223788 454968149 518484985 18182233 40842611 952592337 934563599 321142839 986270962 416676985 895250070 646793468 801460862 962465192 939526013 625225317 281873035 56226438 263850907 650316717 380343632 547164522 97707709 831751001 10719421 541581351 933884803 436302758 33032557 804704911 258338270 113243292 845595921 123639063 145088015 38535104 987386602 606934051 82982634 281282510 448689707 130700746 666266612 435973132 640841574 541623153 76529703 142671798 425450644 988814115 370840390 822294974 80684763 647729492 276405902 458977817 517127980 200234095 69177839 575952978 922211052 964486287 226736728 464295125 144005276 241439237 435514567 495826716 572500029 311282244 110752696 213426782 823190995 86981830 991922509 385727015 825619423 907808896 315971898 597957923 348741546 665518368 343836956 912589290 689997255 296805644 405096287 671519388 763161189 815018657 784174725 594516011 929592667 613132951 221512815 315603469 42736712 6859109 532640965 714296305 749094686 961925812 843996956 882727830 146953854 323810311 114522597 135524740 618476310 453708333 819535894 482783868 324840708 70319090 854937560 994142917 664696500 807996313 977745033 265235973 948258409 620979877 272697260 485293042 124927910 248212780 760734116 441926916 479651484 575862559 447703147 229414746 154218804 313946119 789317888 529610633 880391835 305199726 979960465 874902662 990283261 289737103 11374270 348830261 167929368 501762606 470936382 882068957 236541967 976539192 609432272 176916824 660334226 47374749 592574532 184405495 942814682 164834469 627753322 973222603 355718927 531213179 796318188 189730540 742531380 43441737 862491068 633658752 355708943 333779081 468118452 947065105 693869299 624722713 556102281 73985007 132555542 60037750 23614713 754017415 378308182 660328390 939982378 965372311 772189883 441945247 466625270 990948323 193101378 937780527 459422986 283528335 846167673 675176331 525870098 591457598 395636387 185071448 954201615 999137493 738251450 31542023 210086997 899278157 259610887 110720299 720836410 473172718 111045077 642452271 122278946 281933911 528606348 969952477 496943372 451689419 985434870 655425334 536357245 299602817 51594409 400561294 522304159 41031226 834445156 742890786 531947783 438591022 646479975 991650628 521586492 14364311 111034343 192943066 391466712 613645974 844194646 944130784 191181216 77887132 546849869 828173265 214037022 419023520 695664258 398072754 568308218 996121569 31693769 853508811 502434215 152855211 355220322 494973220 952304307 448217909 534550473 719683359 55375049 449909014 83434151 897189799 687458659 71568853 732929138 718951160 787708091 14797590 945267106 154640542 789526767 445930349 403243502 953540596 798483723 54442410 349013638 752031604 679553438 20576889 746755819 133174896 812398491 469110205 40611729 520861444 613716520 313976185 818271358 718488274 224271172 462622193 476843191 676812963 3207848 140283052 982949030 893693557 89796053 497066190 322578099 519297065 563981529 825394120 327481128 678729436 651924739 55938671 91361062 149949331 387395875 51520696 842244772 762636754 943661940 454185348 342314046 520306083 856670929 647824286 903003731 466937191 281747869 562824315 722635047 379465184 527030520 425056495 27759189 452446989 164320265 596043800 151702484 444396317 11514241 307959322 439796268 829945472 624674564 739235811 483257933 679265085 66957859 193683392 900199320 503459791 958638707 171576949 860658108 339604498 258089088 291640090 345361498 705320456 745053285 859658911 251782204 331173364 419477216 338381224 199999922 823833721 208483783 867555901 132807701 719895291 978657861 192324398 20372123 347957920 245119178 749223474 245829391 535722142 1435744 186142021 383796368 777087560 774454250 464295046 40805305 211727114 78944201 222254823 717983745 59142076 158887888 164007164 24626818 554117579 708603405 642027536 778214970 297669557 642934877 979812032 909129914 569124159 512459939 456255687 587368195 25265231 804880024 593923917 179093176 824598096 860019050 776865401 477434191 565430381 297869906 349292039 635181550 786923712 921017037 613792325 364930274 582088994 752428913 2271993 110865160 969326767 619226947 201566441 870489961 81190957 884364354 291171258 486545275 205896953 176755514 523787657 650865612 849876289 109060095 923402786 925186275 779774799 834253853 718112989 912542813 433780786 703236983 123536779 884109266 735729507 33202865 904585229 61509650 538346934 144128396 235010766 579759649 841984384 776952652 4604234 519804994 757946417 396449931 758303899 867772710 171453785 132845742 735098864 179846536 410110183 683501552 726308432 652594700 487605270 60102406 114261719 725781253 977774532 553572123 122459720 561143708 314212096 284049017 951324166 564674846 255308755 10454356 846075222 456132352 331773900 312070824 197824882 307475876 849443395 415812795 443511176 976241249 287557927 344329798 409232242 266452347 584585134 667026967 760233926 789665896 667360766 723792821 475940185 349513454 685531090 977924157 858099006 639373815 911467477 46304061 999438991 614312790 430010858 920949138 724817032 897068456 729947655 143989192 120024429 488129646 464743348 776023801 90495681 827415177 891894828 892584338 945779563 818966805 347602227 511023593 859504774 484886665 698061224 672800207 605318129 606224092 443253872 490111972 480566314 823819498 586586407 918293196 719860367 719487905 386032667 865849179 251075428 560189647 224067554 362182355 101814698 457537249 193804711 638198808 387737552 614071190 961344636 676765392 138600974 875800659 509313698 184559900 452462984 474970709 844683576 954013640 546452442 137853456 421602420 534150731 855834364 582891081 67634537 157256886 856382931 453794709 102598917 454795695 281524229 927369651 748166696 312424417 956116567 773118441 682068597 970929306 82346386 340422815 841224744 536015552 542594273 274330541 602260412 429663671 656188517 711596947 11894113 661901867 145129406 802284093 190867057 518637654 635711057 266271607 220284615 874585663 714323008 256662273 379720141 974051548 679907396 291730487 352691058 932324307 260102562 215277382 194234571 713830538 408840289 450137053 594583365 131657065 63753938 997796563 30943896 257794687 768142627 723139681 908446371 363628073 195566889 703956409 194490785 677480559 791623283 442014460 253265862 368838861 680495816 941926984 215846066 934616188 880921839 63224500 853692246 249768750 861359594 643118718 882950100 975981407 328719647 774632081 849768493 161015203 991119772 963443689 432217510 981321221 101242823 723131793 644813197 788254833 717080619 190840363 189765916 774589727 426426986 328947154 250430128 667353889 126205706 3343503 214748496 708117561 397005338 81844568 282077294 984686696 186968806 477009927 273023302 775946170 751041617 770048754 590239437 645429897 291645719 407205592 569396000 173384736 442485853 351597198 804615320 608619528 195570353 115276965 765310166 497575740 747566277 862074588 419334412 470125225 766162196 278705022 339363975 393768860 7453785 206101787 895205863 365112672 146783938 968809043 68222013 248644383 230418987 912012511 456847995 274394704 562504829 17194657 87538026 354824828 823509424 370564893 248681309 766210993 402527284 114145925 74371690 977789188 761991802 672973284 769906794 155993874 666607155 495949213 900092773 878996623 911232229 253173684 193005240 840904754 633783923 32944254 872871333 801126879 707273912 888585179 451258650 309819300 838798214 478913235 113536211 593607682 16312575 204273818 291307757 54922192 505509584 413286651 954381110 70844412 39957419 955552786 948985605 361216895 466430064 213965549 630251521 715159059 273696232 740569745 303947111 920607298 850891796 552734597 137207103 280339335 514344824 316558842 575965530 452766330 112770476 683285509 352918647 277367669 63574403 744256607 695316841 56143593 902253341 251094038 736959457 755095791 903961529 986640963 432906904 774361089 723904322 213869344 924078295 636895039 547281778 608677942 528493213 985122249 299292631 642077468 340437229 395722638 561113709 7477472 768592670 726358880 737361140 933811810 224054322 839197245 78972373 108947232 590014888 501609138 40013469 446306273 284235871 375092505 5930174 797317562 41059893 791401561 193157297 824775015 512223232 659212604 311123284 308598271 222055691 3713459 383084830 778759186 535009930 172098755 278548423 262416039 552720804 330359947 98694266 349039301 189683530 730187118 608138220 931451633 688682287 709318106 862933481 597172587 182277534 107720339 926383128 329798646 62388451 921461816 710030357 654201673 208405562 296005905 982830741 873777146 807649682 767533381 393721050 9288123 942198414 631861718 291118113 396411448 993018571 271623450 266370765 602116670 597734062 964414575 682015990 587717221 146125915 610777419 345934731 489020807 776701654 55811753 274104010 773281206 617432341 86154544 255927043 821563732 386208631 353444000 875801698 797291987 164087815 569143968 638280930 120788964 428832774 404634054 658537693 424544206 536573835 528560083 485703607 910906829 544796819 13713418 583752804 325592514 587780524 129635114 285738001 26315698 250789857 897509807 643053836 63223636 843023288 112952888 892964857 643312676 867912015 766351297 277156109 925653299 131932509 570450007 594032037 665217337 362582650 604134443 483643451 378038333 711492479 756371983 144750258 503670839 806021723 229610369 624718933 942224762 490655993 783673607 122907985 426365851 236753184 208884838 506675393 539248943 828728110 957067959 211515549 556850049 717484338 178565860 184856342 710332219 562112972 20344899 976712565 250417033 85646567 900490319 391150887 295394700 480929765 929125641 836139628 561559884 700011220 14595971 954514552 838359019 760490195 670122387 831762998 434666664 36847989 672895615 330304445 186735576 630254593 521309967 444937592 568054062 912220376 19143001 683482691 771555369 21279984 602463775 277888244 453826193 205226051 939699221 806460031 661770737 560395688 611288015 258267737 256243044 535590272 411698154 555009037 286831197 948275043 522611666 861363184 198585422 937319341 264211264 466781839 261027696 580294097 685231168 160784678 584375971 534340099 215302210 604731705 817281570 441043899 878285754 561350410 194888148 304187158 768993716 460241113 400556841 329111339 475236093 305138217 192292157 302245547 73916173 352360212 860446786 560824818 10725548 580107396 634162037 56047995 114766681 152680475 233969416 690400067 767395853 868216889 334172222 97585107 146898062 54635092 894630228 561818424 573484803 69777945 627494477 140924079 99009125 843973623 531966166 788649586 569301604 407204028 116686639 431036714 700390049 618886871 377611705 650448236 288007630 712701180 608040730 804144527 366851262 164655818 430363009 61091657 766064291 602591817 896356151 265293686 12237492 580540770 168281772 448612036 909321537 415465242 78300750 9352132 629905929 369400962 472393015 696070808 596536772 10386472 520121434 860099610 907309675 215728910 77223116 671063374 785433246 88632514 124115371 949535889 791730960 242395479 367443803 60579345 459306881 781924648 847884262 60719956 32561071 988027598 282403737 806841524 880080498 237645627 536656772 181177847 329012533 142152357 228439028 491980422 782604172 560199905 855883 86709760 740930859 122638741 258728089 244204654 357223743 134941813 803138031 453007171 162413311 328370024 822564321 834884103 571036142 952513483 905941914 547805728 863343486 976773372 121618942 261947643 451492771 266496681 178508969 18093838 491265185 511170567 611017147 314803428 585825459 425457782 331448117 468907451 750939047 725103011 427961951 76506942 832595744 142947233 283705112 817366923 859037568 902933507 839580690 34933798 942230309 90252652 92779123 850716413 713942598 273013429 212333916 31371429 477391396 731340243 90738721 95053447 186651595 704995662 172338198 392047625 604956521 60443347 164671115 544783744 422770818 635844140 809291580 651392109 549332906 77700954 153191023 63278561 365683633 441774229 765078095 66203498 934846296 511079019 562702882 410831216 479053567 405961428 620396449 163829858 581135925 324674888 863280550 326164719 321888332 228663656 538086366 448611572 966305077 792616533 932689273 703876286 578211440 643008028 61927913 94393082 286258288 583578098 392321169 814408503 216062999 947231508 426578701 291449101 746548166 470380916 984968609 692395436 209181834 415093591 268538942 52894593 378670447 171204438 796083452 753701426 27618828 389644376 375036987 960584865 26475071 792275410 300302270 854676372 746186481 86898130 556589092 571240227 300778480 411841259 906809631 672149451 498405680 420344429 750344952 643101697 672285140 31921534 635233811 582242216 587112227 454435100 431504095 728674776 766340708 311597093 162623062 65948142 322873930 568966648 826308545 395296327 904450381 950880698 436556569 362347664 77571817 721134096 115361555 699047122 396093524 828206080 625953507 549536756 507260083 951054240 267290230 648511657 727477092 617915547 297403545 175261212 863468888 627792076 314431044 630934781 248113761 14921545 310682482 859846225 807248695 727763728 815761714 173884129 778758246 776397871 933101387 188397589 691089339 884526458 450762385 448772272 750559917 814419201 719207349 399590736 313912111 698731895 668514305 895845837 227266198 934609003 99530472 581772871 233414471 758090026 276139754 808670142 627778153 323737573 261397204 24012034 247920309 347128325 957872890 32975023 665663426 881100507 964928380 677589266 80783007 961091238 930129938 939472931 612998275 456569663 722345733 593559356 225078757 290501523 389587440 822440999 922276323 406701518 508881835 985884513 603920960 592738110 420282764 181812023 834398794 587032535 265097666 507396555 285983145 251718182 554972533 660779306 790886886 43610175 249091167 948739957 570959283 537604316 133178874 812960949 401235016 81740127 450303704 176434434 631964461 744461349 147949031 789865960 522633488 650884085 176863542 954301225 402154393 701553124 752587218 323070971 217565174 181593552 684595951 212274035 632216700 280755299 205855307 152891890 900181799 487512133 913692147 29032006 829979845 734121657 858277040 66030676 330302789 204997399 248764067 664601566 326722759 116920998 768906527 358871400 422826453 559381655 787637465 102606759 791726477 437571864 567029011 635694943 986664351 58187080 738921498 127420715 151628176 224316063 326284953 631394092 747398531 41697816 741436733 136795761 207983428 888483606 380780569 421529974 399179340 546135542 870451668 217439466 314849394 994600264 672536969 670051771 478825045 794700784 175174639 904370317 138483092 226053553 465081608 129622071 131127027 246500994 433965750 576666756 371013712 108513161 828553024 719181262 185182299 893634514 460841490 250804852 401522747 651688745 701659588 455120880 71220082 848820880 478359775 137559204 346665878 663806346 372066656 296378658 294073170 772692631 246673052 528561333 876386745 929130118 742626285 845094868 736515506 270179207 238216344 988116652 14857674 560187173 459167921 762853716 590648644 998486790 884716120 184540065 453394517 385915123 185597646 885985267 799823917 475959870 159986328 428814207 376437047 875070424 968900154 925023331 246722504 435164106 530353521 766262439 477397411 833280169 989429412 124435132 207968801 340976209 450732393 286122663 109782022 316942333 80405287 637889445 848902382 501529265 785534413 150169471 786668007 883042422 975662766 203115490 571108679 61128911 71281828 573309166 975581063 62735554 641796463 300140675 629950723 639142308 815405685 662210891 8914433 354894579 450026380 254323957 467125041 882023678 154351902 640733710 759495713 128959773 547037335 535545967 850498518 223700275 642428021 714581885 676001648 120923269 336993612 791281236 432359615 389346577 670407795 366935998 603602978 579644611 643660391 852515257 453235155 849449381 954033975 866119091 44089024 301046636 668796565 474621433 662436013 193391886 131529451 278904425 566086473 340613067 377830251 567241917 65441740 21235338 768062334 167844662 609789669 707638934 6780853 630881042 371161808 441150139 941803113 842797416 324273949 495132880 272860500 348957358 381010122 380734665 77166137 609915055 928307926 222835438 510428396 522054163 126021609 73110674 178609496 168482064 606406680 545880077 343386302 82083715 337082376 710217002 264105240 992239668 167756017 928233375 823133892 730520256 136703966 469146023 937912682 936740068 642524658 692412826 278713114 813919094 755196817 98273573 361647478 771735186 630425427 744213601 977380587 306340540 33566296 904669344 735670973 868620792 592096388 463592890 868357652 650135216 961417374 700014461 26507783 379853179 709870728 995504657 784590142 959586087 686631521 389372321 328523895 724008421 481017912 780123417 706669477 735874379 358198670 116433091 881158024 919461857 11438178 207141010 653177617 875366651 603022299 349349248 904758260 445822028 672233922 798017198 678799835 957180978 815150555 626482967 42773694 22972904 729995233 549380152 239811089 545375171 808497116 555271169 309827086 356025294 456016106 758142475 896353967 75298323 985203930 634703557 281000201 155816716 851665914 71247806 556078102 446591937 182141580 10205339 181887762 479228797 759287925 111378069 327284740 194903793 470105739 554829044 225012792 617738448 862687493 72697157 52602344 987178502 837985473 373696381 108405275 427972523 960553958 735013458 301209768 958551972 248583043 603256429 854915475 287738490 377360556 339959555 600230576 99153271 104649587 782592654 180021015 833525606 903973682 843202756 985484178 207208176 181973101 608062523 264233057 137508970 422554398 423467877 496310281 453783243 908912623 346979593 239568418 882459269 316861116 294206403 287676964 394395992 635410480 813444412 366528482 374372337 623421814 552886874 183308431 554938160 325723302 686173756 732204763 746029725 135573110 622893385 458587410 873057489 525013852 377469630 730565792 939827010 951875889 295074262 998304715 529044789 583181391 980850011 603774390 214281957 109560589 407446520 839296820 823176827 80375786 17209937 783621807 729508841 390924593 460718235 518712985 256086117 980010830 307538734 833599146 957534506 808413940 279280993 469883400 231128098 604456143 919430668 924367988 774116807 487125481 633130548 212346928 563370471 132447921 56588700 155495507 266875479 58420624 23854315 869349127 491430626 47969631 113812977 762070110 119762233 932621107 678729014 656702210 938684761 513973386 55945829 821923911 414075562 397884092 943869885 406453538 1297967 205045589 728712452 175027027 390168101 286112922 364801286 185503468 554405299 315376659 15549916 896809893 342148302 223811519 336326834 724918359 207526231 712247446 772515426 180516005 161152004 279633985 157922286 790304453 269115116 881764563 94495704 445357469 374282052 74432399 104301484 935820099 856079864 518910629 833495376 815743520 174119941 185324546 997859401 316524663 407961804 337088959 446406339 145583279 181925777 608821651 545503971 914464726 958703197 853288734 131238311 258311793 450325633 373375017 728638951 660438014 302488244 705074171 946087772 507119968 764098311 503615625 966807967 572584870 283947969 242214906 400771159 984275993 568572803 475914425 68471407 417218798 924660812 966455592 151090092 238572892 299862938 988631882 193980070 839333567 768277157 383369780 641117541 699424227 806291884 880201169 323266408 354021595 276479491 355392114 323885623 17054902 26707574 823497924 378761440 667311382 449351168 527224800 651357990 910770073 830829694 845346982 218164353 606719289 723507682 737075477 358570119 70543164 962401443 766954028 590422216 559037481 267931255 898466324 344116109 119566142 683177842 601233833 964258499 829941839 645402188 832198416 614244197 333104555 444391523 684646713 511283882 613620305 171005718 888895045 432494323 199228505 929600347 309969382 944117628 234892018 574961266 294331642 672393836 246116671 209123162 458290718 371545717 66280427 110542080 661380785 7087224 778241237 15153661 222862604 66852345 855719315 724727809 606095135 338426183 40144922 992151334 567297074 276401448 590565302 573734073 254661679 582126633 236979733 279120724 324930808 991976457 933290308 486462710 925656605 336335124 720679851 977733521 163584008 546846884 615808213 883081407 706077441 795297391 932388550 356676485 497277064 20889242 79268617 515956588 629276269 877356248 331331895 964773810 368151127 879723810 407624658 595489606 194127235 287838310 525059104 756523093 638885825 837562347 349135563 643161560 452508115 7823973 259202150 930453615 788584132 12005643 53145170 919323199 344491931 930874110 114520278 4984080 378077220 427996379 312074544 828237303 889274780 351489489 831379349 18589725 635679584 547752244 152269767 153752640 757627372 978411431 656874537 713489952 134720457 509919751 604295069 758754404 838392717 839051349 165636632 52883378 813632816 728679164 42001916 395642391 326111835 730306657 944836574 449515066 827281991 746706569 842018647 386594073 189015619 127478465 893125829 514233544 301358163 61009594 435669620 836171241 773152064 247988490 925474689 609732009 342300545 854722568 133090512 903177073 818562601 211869803 467325800 902287704 659418572 732487058 111013324 682119250 882113035 497815011 400785979 436291718 551359468 237243106 84222845 332362151 748158449 661716277 451588549 887709437 897756138 85411321 379614628 845056110 594935706 921869507 542691064 351623995 759968488 743303428 397135631 63929170 441178517 626977479 729018328 480721902 274974222 109294125 31787835 945157061 130876256 324947312 166990335 590380747 584897389 384454895 242374143 543743109 377388782 371587940 320311005 799830466 445902195 498284725 154501854 446412390 956556144 665815900 964536629 398344589 965698583 863450110 609186722 265789900 654307523 885120638 309331515 427228236 522446354 400418005 256837571 127464846 942111853 151633213 238751829 412805876 573746282 443699519 731866446 848264040 946259441 213258510 631458860 980833574 504293572 842379238 943962338 240955822 764021814 546366914 13234893 575798543 996247410 579740999 330704843 515234609 214958702 657654021 801415404 267172826 227334940 491028835 822447036 614943630 809031234 459246924 695731336 831288965 877408359 939740770 550569988 918977293 82079765 138160343 543699130 141887862 622077430 251512066 123810132 447327107 246437133 463112849 691352700 654283092 507458945 429974879 527855793 684119112 832873136 780226740 485389618 602166316 203216649 466443003 275626416 143104423 439746416 656520553 622154340 600484804 48607275 212934208 384371158 463991413 850675165 32962414 610905812 262169809 305690466 643026385 990140256 390301988 257443507 705877351 100919241 716232749 83778701 167951504 578485640 893099118 451648865 288998784 526627763 962779747 652703286 338532216 966621784 89103906 840711614 628598097 732159868 67510357 331707464 348844044 566214959 123978749 293785366 551758468 866949011 429755719 207094837 103838583 513716693 454129648 141485553 732487153 678831247 621758783 111147780 859178990 10576242 431483413 707002471 470475060 951078844 985262076 387264793 429099212 914765541 33457408 182267342 163552582 185556999 631310270 995084483 682426137 442658454 490945788 878649 380475116 898059603 838577267 233041254 72216148 885677035 215561703 742095378 187915350 123936914 240613553 171373161 525008163 932935473 51148736 805143895 616449646 70208711 239425117 26259755 39256805 966839080 971573039 230081922 593615424 101689003 914400744 623227823 446965766 177302533 788300726 658961147 831130885 100386017 260332212 213644841 962789206 749708729 368394727 21011918 530727958 240261238 451338623 335178637 223928164 291921683 528421687 18664473 656290651 336557109 448117872 266071492 647095132 874255199 794314451 613579278 6060563 674821438 336149202 582232002 764753167 950472048 204736111 158162361 600008653 888753235 452276475 436091828 337124644 50860042 165964454 658349738 714997546 510073314 375714749 24990596 978412532 832197971 867315671 602023003 49529608 623499222 794937822 579847987 915034160 819179898 379701436 631580453 760523222 323730309 891399644 68356581 191883743 940688348 196042240 753537828 173266011 225345795 602596118 166371744 242740200 573471429 873528518 351684156 433927054 979645788 528349893 53511811 753398875 51246562 840545904 545584372 370317380 863007581 783560200 932310450 718226448 462190333 698659868 560206914 787358409 530182473 169814414 79490809 675018513 996685134 906470987 773752523 659587037 252135751 985368296 60481253 450578880 67952875 989998519 569080123 295995962 79701680 632308763 972772775 524867700 64734978 215971591 846734278 67014284 945074348 196054017 931541089 324821380 324162640 776780336 219695633 986731474 823865214 273290778 917727910 477867343 603815556 852027328 275364667 851203956 613360184 927133717 28685963 453193707 510781899 557295460 421744367 288109728 637630460 801533734 81965774 934258967 189522622 707955615 206129910 369023201 162530694 161125849 947111564 416182592 106277547 964678912 827858618 773759760 189687867 401831427 401149877 5555889 565051878 566895036 578079799 94979304 231344165 540341735 970883396 304334432 312054781 394527484 732385748 393078036 240530920 416163500 994823897 352911472 505187629 459459363 531874657 335749908 904968148 68903682 477111546 191910422 446355486 208872318 837948493 740002188 658968156 324966493 837573849 834418789 958000382 453466880 342642394 875967424 916665829 710647288 617716313 110072281 743851651 852196230 571539842 136964826 897344738 979598218 31605127 512808130 771886604 215002101 248905282 808170729 407732196 800126943 680972924 97149536 904986173 9030878 960752741 747517626 788142607 416358008 568321353 185887846 827255136 868866719 270498864 337441579 188423687 510156909 912352915 239563171 115369362 6050211 715220482 463880446 958320998 996985875 762768627 751118380 837175125 286212572 791520850 178253676 383004112 801891910 605469635 174543116 447738810 525349856 444305771 431312907 275780550 213904979 187030432 572649410 4152665 568676364 187360253 869034370 985525645 983661639 641621023 618244708 511818784 737740073 35641999 292219525 570396587 744918552 778338343 37952982 29387242 27124294 83387453 517111875 147266702 91818464 197478717 132984964 187589885 574115351 919008607 320236698 746324421 953239570 600261962 381052795 588752669 827899708 404688746 244286252 966996264 163730266 617399448 979007261 510741271 885119174 910177867 666589109 133187144 702731953 823182788 497904327 903047749 800029717 58295391 131122527 283722467 560688370 671698546 363029432 732766219 114220046 41876739 960796739 637421440 136511007 993356725 670572230 937790950 808296539 993460233 890404428 402523213 624012428 950874388 588594096 634988046 339141373 345662390 857667505 354654300 154950182 423864748 255581854 666476784 768801150 882949806 257774198 28967879 168698742 163101966 840625649 101675491 43991642 770253739 186874417 546390720 65607139 30674734 343109194 599833204 157618242 315714916 755609441 280268310 759609561 951544803 404797215 348566035 785205791 909953250 869897817 23961829 791193162 362676120 89535722 313481461 430105649 710574008 8621429 985954674 153983077 159191137 594188888 692246274 53205672 775117207 809974463 328429034 24129792 339722293 42967732 240557721 601796342 606828737 570430742 155725623 363857742 302486024 239448879 998945071 75929129 929901642 238886215 707994916 88741240 392575924 532952350 110439986 570439305 753457090 986108053 377947303 738600055 962693597 718682879 584594696 183034652 409204310 133534011 828291490 258345472 469563513 109632178 42050269 661020357 684567793 445473434 513757362 598982968 76084993 901358316 806951467 832113519 354660357 609652886 654972272 611094201 834875310 934967212 41848409 540608862 887632756 282814182 631524057 832126413 577213300 345045139 130316475 41823718 380735767 756187469 569262374 6116934 661865686 52361532 376324296 851532851 814920379 827709824 562033522 859555177 387914784 642327197 503491721 38276100 989129662 690553798 145730905 785042817 186892206 468842271 748928284 645023424 620303825 34205809 135311149 142309189 904645942 616304574 905803893 424428953 379396285 947705000 290039713 148315475 967749846 216749172 295051311 312599243 171064883 93864194 127710260 659198181 605362480 187899267 78535824 866437525 51271339 172755635 720526715 202728926 510086866 973207924 114720715 942791154 425777300 502130781 440636560 410798739 26966183 762471476 250502702 857015101 412749516 157281304 308010089 900781502 532051579 620516940 352090999 310829644 975979096 273398638 868494900 151172719 865377785 217887038 458328497 440295730 921574060 12516884 159144020 708205714 997808709 240072699 278551623 130480584 698545049 37371130 807709872 208377435 93441537 59240478 777802855 915203240 180608876 650933192 656391680 33214363 384392900 677026848 781506721 151963728 786684653 891965408 116767992 497310078 213322695 320561499 590589028 525495045 649928164 626969469 643431637 591772890 919789661 634153690 401829634 508283177 744161554 455534647 200636653 946760056 377231802 303727679 983692708 566646585 891077385 718141598 80477377 678366835 511831560 677963319 986418217 464398111 296690517 595258170 512468559 345313634 298352411 784694702 81127331 245921433 975501894 883873412 459529545 551143448 687153316 504941713 415108076 550015449 883509059 748729505 645043515 914043723 811782329 963509565 141930812 426812177 953327006 722671652 569914827 606076687 296410042 737449546 37668550 96004283 214075306 546709991 419071999 240435365 931281307 275504802 213289990 608825974 482625257 806276536 884914090 984581565 221112292 926585490 982714266 338048767 542847944 308934098 249176569 624437446 841505639 539605312 669511328 480930880 534531363 597604684 561919423 222758147 834656109 391151313 819890654 47629440 136962904 801867732 634157148 7759278 115383518 748730702 621762916 4764651 29967568 583480261 617864941 863916004 595920345 749534349 491388003 720784258 939143150 193054572 502754819 637600330 732860790 740070663 991189031 946944685 971226271 955062334 636327161 549599160 410343610 107395321 830745779 802775281 345761083 961921459 979202204 277821483 194558541 398333615 927422029 523860612 268831399 366059597 769218694 139685563 177135006 531723905 525589767 399511503 602590994 676383343 52524301 628799219 510482347 329390438 909388299 817759468 596847934 785468924 858560068 913897876 625619960 962036023 173187405 610990113 416822618 869817642 881758398 759234075 538785800 131693424 853976374 242928664 235529546 735873598 792552220 551207943 575201009 359917284 575000071 744191609 866261787 507801785 376256645 949246209 705835738 441049138 946821290 421342752 153326614 30263450 744591298 1941611 111035564 140514177 536259011 547553063 105648586 375794728 992061778 121643226 490889169 136169702 551583190 321255952 409889112 325190989 267396793 207854815 399627746 338423274 54899935 978162344 648172145 87718780 925406367 743055345 854524554 678702378 608074589 353874494 766211827 818533557 273605598 216726692 178823957 832599925 267509470 879776832 660434480 145384033 377590510 28114836 580264082 531113554 45556250 429426305 547632963 239424913 536229641 885873832 754801079 365878471 409806182 942973955 994473521 143653425 243205649 377938485 420800016 848401519 281462468 458414240 939738021 879127606 292875157 337614992 418232210 513721620 927797688 606017038 951225406 726807984 351530693 914171765 134054053 102552344 266789272 160424219 850507697 270699488 878628171 204494832 4918978 131594414 457130476 964734552 596705897 227699610 747235589 903885964 784424452 512128711 543322368 901798837 552120376 221235875 758328326 584859925 207922355 766214649 913522012 798306231 694817526 317751813 875012976 979420680 987791040 532032298 197986822 141901512 234072832 476532038 392861317 19766169 137258506 171966637 159834528 711950212 830335978 569841652 594744063 125648607 256561023 548057577 966022925 553041689 444533946 979437474 813976581 346355217 91391451 339809033 860323905 998764757 662800426 771357662 422992545 859920579 968941094 262417618 148182334 111715218 863810252 90742724 513345967 897992331 793149022 964006512 682868393 296323951 655641569 795781195 906172716 843403950 74103453 12046947 840986123 662249740 389049754 387979559 153077381 314489915 912959206 761050913 519901040 225617460 127563010 888765732 55322619 349688306 113874299 902894656 131866948 467882407 10645534 51774725 726195403 955564124 890822928 364744016 491518687 589079745 510006768 825582493 97145587 759847543 600799183 635337475 933916720 749826890 867108565 142744797 244141965 353065851 434588634 882118632 632512017 674696066 78428323 772067331 370765635 100556238 684324749 806483688 587320275 660348723 255408604 405226560 334984265 649526728 705108233 683734243 777835360 807024919 709951427 337635828 797134874 777833817 468079948 354677732 528782759 211306240 68676470 952019742 427940588 812075776 197740249 253532568 245454086 150396956 795559664 462358044 644519982 488945995 876687339 996376800 888914291 798120944 650260222 451251525 66408655 261963319 501751566 509275907 961094254 74014713 461502559 56843072 666656402 630430843 850582542 504224090 186335055 52039312 401255347 772297614 988459476 740289891 479006865 656065369 742129251 537321313 437597890 295976829 112070093 271241319 716140730 703085844 366869250 559427713 168764756 793495863 373400000 823602553 353875462 735577718 727483305 616173729 24587207 506066163 416641762 75498691 638309419 443874503 252581368 964125889 510098881 587282926 682444291 891304288 117055284 531610808 481637630 223508740 84979657 363055285 96014317 48363055 631590481 469228685 71470570 474591134 918579214 703978668 360449029 15106278 351108883 332427072 850990018 680281507 878781681 518486413 563211921 266578054 743714580 978877893 83942478 794123227 838044263 249333948 238792779 846706917 509870744 85490040 4335868 285057219 284875133 323242064 509722305 760717888 892451150 606021888 718212973 762338344 284628775 510169444 231437529 986915242 970318113 868948099 859429134 46620875 108088643 683084227 553859426 16376255 551906122 226392203 222115580 124588994 514552249 761556226 597721063 734698632 94021010 473955091 309380341 891474954 159821483 809916970 597850852 963335257 396542896 353787747 922131237 866366594 766511442 87526352 775925428 119781472 107214737 833537509 27366072 213800188 579680534 41603604 261192457 592558508 193752932 923071928 107223889 729564120 690395824 57586367 571366093 319988851 874292130 561201462 385671891 141440164 861621779 340791936 200618463 2914621 50623848 766824958 766212763 941550997 141468830 652122399 491464612 312976722 578139070 992855865 669966238 326841890 786348199 479799671 717129571 583719625 466330965 372993339 372338041 274497149 464577638 26994301 70893483 963097930 209672568 894578630 90910665 227293488 384498465 734988777 134523801 23317244 304350098 694454317 258802315 792999890 880122323 604988740 302250924 126767043 177818886 261293465 708549337 404826331 469809297 719892332 678661571 470143497 621593971 872176451 439775757 232266219 188612176 215585811 35420585 768694678 884484724 299104782 477069470 703520534 158158060 172441653 845249562 445311268 200893672 566724080 265723385 577719011 381246213 578136837 67515809 987923419 968510179 666760289 644588776 586670549 170551612 388848256 410134865 946544351 823236457 588930045 340114400 563650000 80405427 979480390 281718654 956152049 846169419 150338884 856744557 606395268 753250997 788590052 253474205 804445094 147115581 827716312 360561421 578608578 417958212 961102914 447939106 383281658 914992239 510347826 618866084 608057567 26435486 486142958 803408463 685647681 80853666 953319533 619968912 18176920 248045860 549598710 780759987 472943468 92574785 332823492 333361128 839515915 30493713 501936111 21234607 126549864 787672963 481767697 516160314 91826347 535238630 673121660 533361810 493328421 632711872 149679255 67742392 625792149 516096636 284330140 101399424 959622433 740396989 14009743 208090413 535847193 661846302 336380464 478986839 442412276 979910716 462833735 564388891 80615315 22397781 256661512 924709179 901255387 657655749 548624015 123911272 201420 162903519 757810604 42508236 504293061 658637873 607673595 721607152 533777430 486592135 810352886 102925143 6777441 960129989 106315799 389633920 998280213 128433417 94304030 900496669 542415154 851091078 216297915 495416418 127974199 565486894 924174581 901692136 49694797 104417618 987592138 206373999 138364583 551339546 508332236 701107705 157138915 369493778 823000355 498202483 720435684 750431619 6845972 135147828 763329722 844418948 526194153 386372390 414463502 391353493 91842076 542445212 322485097 744669141 787635813 320187328 896274289 867115409 412453441 521174592 954559458 227335876 429853294 778099725 622331842 433208117 197945243 751475605 908795358 528022070 414414421 221849500 7354430 759202839 851279809 210788364 531427228 108440526 757578722 630373175 278142990 505911983 39819900 809326717 98822199 872398355 592490618 888576339 511750308 354351571 973639834 962713581 120473326 192768162 335138191 65195150 164555833 286300957 135965175 104704633 834274201 70079628 585278083 30685635 403104484 804563997 911280401 415880613 766266616 587950832 944438508 991306137 765463527 380562589 785509979 869824851 917963134 966232812 35919532 235416269 468181185 472920251 516992539 945493232 440403244 98448677 964780310 509094335 756235180 916625240 306477269 701256993 709763415 345744090 417576562 77513702 669312300 520710427 631388153 453277242 744130308 481786860 58344400 748275383 156374454 266851881 577155405 439615769 58176624 407472284 377574830 222001266 632914334 379069875 528691024 925792290 7265009 43888642 368234105 848544514 583457812 884489597 576636161 739984993 587492040 211833496 282134062 805863104 966019403 99119750 659671669 544558769 724521249 509167661 992053878 510148671 352590764 995926446 622877330 681238910 587134479 324305833 571876442 473965543 894598645 428092086 504245062 518326476 339785337 973637667 598678666 524458565 548162972 529809690 525313078 525928510 472885017 763595218 625591918 110610074 115404970 23753288 410291999 700398255 844072562 225485679 779200452 266259537 555312770 179359434 781344134 998451652 751786369 849625541 35644626 245082996 153247138 146537538 772760902 145512434 889526855 2838771 302182260 681878581 851186633 968377523 817108888 131214513 308543990 850498739 106454041 783614184 612008479 972228490 591384214 384393589 812554096 621449719 662591 50631336 983765295 626278869 650313387 646424979 635390574 849260201 813358564 142417492 975835820 681929384 991829466 856764422 920738753 474141808 554179676 568634063 755318015 237967867 470033439 331732973 90159752 139683307 638465529 262999244 172291279 997887532 979748779 328708507 124119411 126616314 899480992 3780390 370841137 877132814 228307642 567544537 388143304 510252372 5654969 472300699 592431690 350213405 661792294 367629762 362729729 617402040 12298150 168391925 291066117 881245568 407507835 898127828 399929961 437049293 152839543 941780709 55133380 914249718 194435946 842218422 220831473 203198017 229285594 317455551 448700905 335842763 798778069 427952769 398805676 261900918 613028188 877861439 485164759 227634853 337741915 744437134 280825680 68555357 353390957 52896457 754800013 60870793 105511336 538131812 685825030 889719634 156786940 256063511 505400966 727121172 143164605 672507453 464924557 667621455 634710597 468665965 599989223 790146897 775473103 542319440 326913712 908288696 916607835 907953459 433055363 52618577 170631728 241780987 682948848 620352282 461960057 969885548 392368571 107634585 983935771 203347430 769453690 997855089 767025460 201795684 452089466 39891503 575329699 7467615 394945207 933213555 462657220 665578648 4034381 741380178 834961448 339689618 551144620 31703292 62055685 895553381 476091439 595959367 94666706 774061359 36676312 266002395 929313604 15419733 666631719 130319110 108508740 858736275 241591833 331699396 775567819 964639715 880263897 399579181 323452980 515383730 962616849 948947345 943077532 188079820 12437958 869124121 959357574 794790082 865731042 280142581 166951379 706143540 988923342 681036640 947379397 174981013 591118291 986206496 971840394 505065821 417527710 820144307 553489204 398938155 716913860 160010160 566092736 845200145 661503866 361639884 694294522 630082113 422560500 475917485 216792132 569055926 72538252 798997455 820780869 602190106 722056017 242721670 362360653 305311025 166660119 17935360 239440823 5948208 589654365 6994498 208304868 705715693 503164525 681282253 312622288 837203348 558721038 272760755 198132533 679243402 553510181 818966335 787430420 967114261 151980315 242666286 391220420 266753222 983607068 424357439 195814069 325286742 62577634 659382635 395542023 853401959 977869339 131208939 854458123 428748971 325399096 732927630 351752415 911965413 762265814 443753855 59282600 370540410 655673506 103768331 672665472 353340564 643755625 341040638 296874807 647408462 896938279 249892748 927153877 488830641 671933325 118683452 994873517 319766344 150944750 415046462 388052973 105026348 566942581 822473895 641610060 326470341 204390835 493843491 422558016 833532527 722296295 386902641 619731712 120496246 776785404 962419995 821698625 492033063 633978363 431753972 545235002 620746540 906576107 104652158 551024966 45234568 933550193 595024490 103283104 228289168 778722954 210448065 803712291 923173808 193350937 840908653 185973590 637911367 67083559 562889358 521383288 322257487 804800170 57267679 318972325 371856625 190270736 680590893 489830827 303240182 94114005 339863681 165465002 512566163 758864044 402650455 776022508 521325487 467802328 519583458 823476477 311528948 358681024 862051333 49542854 407154701 626896988 714237316 787857135 295260465 702394869 116052621 815276666 730254316 269830334 489871391 506015069 420924557 93981440 211824353 896051319 881502350 306389134 422490494 871983032 532125086 588967747 951085274 400991996 601465167 663069017 235440845 378249498 919850634 169671551 852810176 240280066 526601071 99608236 764383602 353672308 541421122 491947104 769110618 608156054 911533023 438398197 594735383 855819818 7929812 147747486 995932216 397749752 146641875 195627617 644869907 944256993 786203638 248989761 764940150 945204121 718721801 806002691 310090547 852023333 380642673 707988916 554570685 851531066 261864300 855447617 310739061 223648870 863129845 676804513 796417182 909018681 284612973 356221429 408082121 340862702 463504552 726678718 699310759 991074211 202617780 613861750 335891422 20664239 15565838 684347173 207745167 736108091 900718459 486433102 744099523 358562058 57137913 83095675 891765281 843110031 660604460 128334641 733628009 830548551 245837899 654161330 200913767 997898057 894480262 423371790 721347041 259451930 551843177 172538705 698858472 786024833 786781807 227955458 96022977 302577479 740007036 500053219 719462579 586416467 298126419 501376771 34149073 159655547 460782887 756391676 234954914 883025373 861411346 25475481 914571278 659766657 350712589 510879862 196863284 844054861 149787294 775113418 402315072 995893861 508750382 325280648 782760776 987347539 52869964 631584834 7191941 119381019 243103659 374372793 305676435 847347512 420981589 165862452 806722900 402183671 424024940 320752965 345378336 677030650 262042208 446934045 143343687 186186296 977100980 317080842 149992387 34105585 608990682 465856490 975478662 750301894 291376960 66371403 778967762 669037186 594891220 390623479 830050860 481637322 253303588 368414814 463235698 110842103 798501140 753564237 524146260 401860852 427346345 576196029 853974062 928380365 27727852 663367951 22201224 685396667 462508348 408175258 186017278 145168073 426981359 221019117 41005633 392425188 632468252 919223366 131103883 669060562 400015596 299659541 763317566 569125819 295540982 353481705 243880847 882189531 290715565 856124933 591289217 756930394 996713338 415624220 97398821 959586212 874415408 5536703 287802556 992731664 130947516 380197879 549203849 130119441 982121220 302458442 488287340 215766435 191783790 35945487 813715901 176228726 551741573 227004519 462953398 321363235 744682654 58470510 992677947 654831180 585794809 918707214 481028264 959247331 566818963 749434316 419457758 502254631 41852247 474759878 31953532 714685961 772752557 426282214 509240693 592446439 49260661 457043199 213505084 685522873 275371351 911985203 674478651 818168252 783573353 810209830 924774100 617297974 653752358 58469469 642272486 564499686 163662075 415170848 322730296 752692115 346806094 675288369 913706836 925837165 701582807 70260271 949333502 319015764 958496923 928133500 864906484 457593629 977888409 305403183 778724310 320267739 466228112 12144940 816472499 58933753 399311469 351661692 414696466 583622562 481102336 820007352 391666910 684468314 408686725 253445397 385356649 623790934 287790023 848803912 419082289 968803509 894568917 920814584 275502705 253036630 633314515 952341981 517894638 265550870 434492292 178691109 291036734 107092552 776141090 631783989 697531537 478846486 757334982 207606658 298511003 40683153 266950441 295715399 298565891 465047987 138099830 661538177 347915470 383759651 140763722 197581803 547766488 617818783 32838373 594772585 290713113 814825926 872544977 301910183 444568187 197416403 168835913 498522843 483837447 324724279 224489958 199554515 762573104 391997438 890157978 200009201 95053106 498655581 664806062 267482983 26021620 293679279 683601967 360242 500122194 28743891 212957383 291198119 742833176 617140156 220503372 255845878 567114535 78402272 274532702 3960451 813426219 735181578 549639217 526762531 124302953 252484505 352039359 223025701 48913304 784671718 423273439 594560380 12918231 166327985 734052441 108560673 151466555 350910979 480490565 871899038 53687841 212155837 382846525 244119075 670220820 505122885 942617979 397231987 363238751 155980007 340479378 636226179 668762839 220170388 174979858 183500909 401693008 320103923 665953199 108917323 756941171 725715302 504437891 69525248 2502291 772610766 541911867 118169407 730672524 937945368 753114816 560753139 158036236 64207069 477149788 918871395 515391639 984967738 947951962 789120607 567593090 972794153 73860455 698220703 841948387 462092361 214032966 756408086 35748321 814267148 97203276 868300194 353340838 849443053 242977611 426504702 596572036 106338365 575689147 269057725 482468501 641494266 504188113 668060518 64857620 759014079 807293920 9874014 380168774 707692122 493830627 24964457 635626391 397580077 569053577 529436520 597633075 720720042 399943477 790094940 813823993 808236469 402191633 843997985 426826826 668346251 225357097 211643038 962907981 813528222 744820240 322380351 632929223 685233698 903226943 866058857 589668357 38276452 260751925 816099156 367788133 558870934 989369753 319128033 655046851 67453942 314534007 204909644 948051787 414464655 798014772 69325622 901767948 752150850 736398759 749627609 313733904 700528562 982805220 420039532 783817471 446741450 129888311 748787047 896155812 397784676 921782259 674149575 8132747 982190141 768955973 194841057 391373329 718196100 117493306 325394903 312777463 323756967 702989000 753125045 581358540 119977014 253737907 179325249 416633088 429274856 726388376 111300518 952376220 924017138 778191784 166125785 433817655 840701937 864080402 653419675 508357869 289975353 881143757 906426437 179615444 517685967 663094245 491452636 15383853 209210544 527762021 497852559 145998976 624934576 851371215 801645664 932411364 378157486 735411601 52268387 252338758 590461646 501416790 144741988 972181639 455148695 414146764 967868111 363804715 662835498 263170246 708039876 908292800 573671247 519589123 970578686 263753065 67983764 227038455 83736750 819899955 788108067 845775655 407791358 175800324 457457423 372762434 944674425 155757817 432878862 999095152 735264231 52892269 96990593 362999174 500441604 944309557 858017882 913708476 545141987 707784588 839957610 521279520 411769194 763928100 742498369 986015089 674472612 71290751 674591351 715793869 795796008 390113464 330610578 474292014 569310755 352361899 168219312 618983684 507351930 996150101 910783682 219611384 70830265 926571530 415663780 849934282 832908035 467527067 477787854 60306044 804607794 422606411 172974537 59225033 916949265 799706235 900219564 899472737 457798709 951609830 763720352 348552910 595531125 437724621 770562413 78637228 599826230 271973377 413472446 106047840 81217846 476144293 124708429 542653962 590206309 307290304 672794439 404347848 883172194 735398455 163409654 299539153 693125792 782910149 425942339 411480442 22246850 291883773 500510335 604085705 640074573 711140001 712931302 494613971 789220117 176361356 836275916 832426932 682405789 81164970 912048398 966089157 595131849 23760144 829722913 567305095 733132907 242188430 595099727 129860481 970446972 917585359 545479574 651398464 188188651 754206223 429267202 288569398 155563726 303158470 699876668 878048639 29591734 478890506 849089704 190748859 720343805 135698736 787135851 212806626 211854252 657235503 526932476 42934037 144298731 434215621 333459543 134973152 76957385 719929200 629414911 203183843 559824622 816699513 292848930 891034382 142583282 920348377 728334619 82096323 232421263 722609165 727372412 826480301 317547581 646964103 949325732 209018269 799196837 748095257 182448425 477014626 659634249 822436598 754890412 417343648 62836118 175599764 635773349 253355012 682007314 153344728 559607331 96183931 795252421 898431889 134086583 474535005 420839120 510223497 188811411 306634372 702573581 111306199 718404672 804127750 671501169 95650521 852289817 495417018 45358640 358744412 159041194 992018772 272072111 606752878 554662608 130910744 228083420 265471085 850799342 787089580 707403755 10306748 557965155 295683274 478351468 648096637 517472640 937990060 790540049 267853721 551341810 821665864 453183750 181548131 259785898 251878478 934143711 678483547 256125778 183302722 202817334 460385092 704907745 600610490 918047794 415774486 799536454 90704836 91256234 822591778 576450427 644275665 72534884 633642138 387717705 909138893 706261105 543237286 16409320 489805151 680899478 265754295 386002623 610759169 19308490 100901640 129458038 241055108 3622662 916305295 253075038 935083352 755831190 191811138 187668692 184074486 518632813 458771595 81753936 422753105 208690645 431428646 176313354 322622801 516468805 43470233 239578314 959332923 655901069 302596924 358301103 701600165 871865982 221463371 993921605 815721534 380174788 490231717 1372931 596393876 123302964 707067090 241248147 791059304 90935180 606385774 5775315 420803772 326634226 366951157 521878705 940614081 869968118 84763368 686786812 225102520 428650037 909897957 780864273 564960650 837603337 292633707 48435712 191270394 57806774 254349448 84814825 58679190 809100537 646279632 871751992 58774344 363486821 462013414 114542451 196106590 967609909 671853477 520594435 558815094 769002267 602104798 41784117 111315232 486034252 366812943 830460785 377927608 956150731 405847509 449467534 415249220 307810251 588165270 501369888 584961361 552204637 933054197 528889534 432066038 624467061 643688372 523519044 493622752 127774804 469940759 58236540 958689704 57303957 167682982 567244017 904925225 332478037 790037537 246544165 474866593 240584575 203324638 182530660 771878541 970049770 984174674 466605088 590590354 155786211 788485834 353384994 359230352 90909672 180363500 887551752 864197170 899878061 575958253 884898660 223678279 819355780 945878390 987073494 275528997 708803883 555475212 899537181 365128080 484380273 38627195 259352054 978216028 789624369 386566147 91541998 513374802 841443694 435403208 474357956 105132964 231461571 239911252 408656646 534600332 239784606 626616532 276706872 763721634 749420164 651819791 332467885 185648588 928583770 569289725 373687638 76088546 389018821 382890151 61071851 698691521 603780051 960601618 499721974 990565981 491783070 673222305 603405271 685227981 148255273 55874223 805933584 187333266 690572329 528508724 210690867 19794465 27656981 410495682 660133317 864372782 709452063 523823650 562191077 365073314 660121839 515262800 61228516 802500028 185411205 268294282 866664386 765808605 272243978 125345195 200912578 580231298 743567644 254330313 616434092 762460904 607924903 301290345 428086681 763382350 934069723 448328542 834534840 815651356 243592324 770652105 745925186 853149080 642100167 9702191 866349772 989506283 688357570 837070563 71831625 219395034 189573545 71102573 393635169 397561339 217287729 917141131 127260597 879076163 175367043 335822985 978811647 369005767 627061492 885160057 41448161 102735500 277416802 255438672 441108906 840061805 446763779 344562948 50190156 617439105 758110680 581789586 22489036 578693563 839697107 295911174 722477497 464451098 626796105 524180211 541045806 281528501 170046346 733117496 879993289 783001253 324116091 793632938 47534166 231536068 923963137 300941006 881646832 785595945 203826076 394043786 711251134 301425450 171691118 750035744 400559484 973636539 259116813 726081458 142230778 98670596 585538287 565218470 151205877 924646044 811227033 949691964 201196654 283258700 843756343 282613652 692368183 627428273 423057553 133436192 682721207 581732466 714044929 878027086 624479847 141690485 244747037 146833883 83898363 735553088 996041728 821056397 342247528 190295354 672854782 882118114 330612220 756497835 644064577 831680444 365400562 181307641 546924954 892395012 772632264 475587612 719502979 99103111 347838781 594785789 458113780 871926559 441399289 433501361 972170351 885279117 817393440 353855366 988843610 464988408 690800061 356621929 579024479 172229926 496643851 813819192 62506942 369278812 906353656 590546126 692902318 228409998 202883141 537893863 276699723 524520129 689997891 139217213 671605467 149227785 529012449 654093094 399795471 205041039 465308168 568012112 377600360 45659906 201666289 419698623 735039872 675673687 428831127 58466205 530535146 278480712 234263291 632408464 696416857 238484092 58904991 949119724 501527523 798602511 148034270 262310707 977397169 913319875 648444420 919208889 123440615 109976390 907968979 14680058 431519123 253165183 334934801 934996432 891879112 927286122 524246027 887757022 180814636 419808968 579901114 910316146 492295590 775839239 432164643 269778579 652335704 603387552 341572083 11067698 126480118 679436827 615001000 632459417 499205262 395096731 50159481 744140331 260295920 551610258 860906228 188436570 317332772 220638614 96479512 507687172 797771040 132937459 432023194 276188642 548403419 755290204 421414228 817792375 379733166 516334835 929836142 482555307 988639176 622377816 436315192 520294090 266378067 863386169 641766139 300879214 383846703 341364395 850982733 64474673 864515583 458874069 957872925 22382618 407013375 792870458 636426647 357804285 123956268 735480100 676378591 843804762 490854861 562202692 574061271 488691866 33514181 703931078 726650319 359728968 318281170 541124052 869221217 865581198 33449748 536054338 333755624 969234308 95654855 474169553 211378852 990212206 698315739 922201176 240136017 48335068 357256517 131857104 179446719 811629139 658405720 556002917 395471548 258824102 108854525 639373597 963648012 437846274 41375465 356143585 393943789 973534020 676134278 79470041 893063652 914470546 274532709 764127738 606915988 606104531 74973083 586156409 184610678 954458251 288727121 249469764 617269905 465932095 822091295 294821918 617597221 99195011 812410318 535963415 130070845 902698573 268484954 47936872 681708427 806167928 205684310 546950770 806352816 304202390 484033825 205865347 879248678 698527461 848727328 376431329 356706866 631244368 578739082 519385726 615976510 780183479 932699478 724598907 335301753 442809839 8988399 883669695 301892393 978130475 103450858 973424770 497640495 571258298 309018430 524867872 626210532 990036769 341772631 849561057 535126757 897674255 220284270 467559451 876738179 251511489 780728364 338774016 252681840 871721920 837597491 705725812 112128488 428630428 52740848 393914185 437197917 296213192 941948080 215970572 415430165 811503022 76555211 114865036 606830921 343435164 714027814 411010152 9212817 100440243 427420065 172104972 219089268 894893655 350665412 923587331 912514289 323547640 469633799 420553904 565593696 578881891 3206826 361783363 925173523 651904023 702244555 565235093 906957086 559857740 158068240 337116060 762524607 844757065 233071849 620817647 741968494 522943029 625727708 7427758 763216992 707895980 790998948 320439222 813441043 261218915 555134658 546164957 946661680 892515057 221562631 570072573 528201861 600529440 369436038 113608525 430358641 132605173 734674144 792112181 860450544 525830285 519917782 216732989 279002295 406162047 812264587 285545032 939455132 105558436 605916943 162776557 455913410 212180258 198262843 836554083 488749234 429008393 659372767 253946161 624644886 555915669 600442316 683804128 190219146 604517251 351833499 373716645 498003060 572780928 912047240 897268770 117788921 381517242 480112347 735603030 26375481 937028405 427638564 407787178 285619720 231003128 805436906 464573571 531356877 812427305 95880498 113864178 290722206 848734330 217832721 106439224 392603749 403852722 817870348 213817088 458695816 645795704 973248128 280684145 630040174 626012933 928118803 158584426 620935098 988973983 974055366 194080037 822960683 471393813 939540455 920725577 168094899 302774888 532594747 451050179 621962976 151421748 187911747 556020270 992249840 10869430 553495040 512887217 946467020 979665853 512227322 345351635 605796337 564193603 104070752 163485193 224263270 943756810 736782932 764608091 686926819 162706940 325692247 524563052 624947711 289479383 602279448 356159871 930983405 334576972 198691804 178259767 110348463 68124160 138985483 175995935 57792905 253834698 554320668 630132340 708820253 599646690 231775965 753441969 153290597 419433089 592591218 900050805 286496150 906159799 179971921 141250071 588790976 504965235 846876088 19383527 276063627 143676957 630670946 993692703 438546592 95420163 18357 308299493 175649976 489150929 270910354 149512341 11053958 609313828 434419759 263114597 706641389 409160727 291798049 888733783 27105344 239357965 104632738 738398467 960918599 390686663 196987164 924767935 244238579 251867374 374739330 969081217 428699031 521987369 18661510 16733381 275128420 485913437 695383085 794813920 500472580 464916467 254224815 377211385 14633161 599153076 287554761 423449026 616431408 406387781 123710666 154464447 788804477 196735284 159766757 186330875 899417116 503928309 324587800 470434953 876542360 462476520 100624014 632833470 543599118 264291671 119472579 681868033 444629433 921715474 872287414 311938146 475385584 654026065 697790962 772622269 416907064 634659873 336750789 332564885 375214382 804782437 631604845 390279896 467044087 435484519 359172308 693147984 134948849 943266027 609525408 390647034 859705536 411969081 48581289 377298693 646584092 144872240 377582914 39067772 792776438 225100607 848124502 939296891 749039401 119941495 540393308 184959764 801588856 541743210 148237585 484197236 888274368 990391971 451454266 571797648 638887365 332888364 124265960 888714767 681490372 230631971 915366775 597458681 122276365 913486111 67426429 112007848 548683665 523035048 846012882 551664105 792785418 878954528 175228044 54348064 565416074 722862437 614031836 246061447 465098343 730302738 770845125 950442650 162602465 530811762 299333804 471503075 598611029 937139522 61424557 892884886 260770982 442434020 545600944 815658142 908622501 262457022 558990473 780363315 636724319 955030576 535428633 279187836 792518486 27184913 382037341 609039333 466527985 127532813 275076497 153825203 30168430 567634787 200942850 863621780 996904924 208331821 983324019 31973784 458670139 487632929 537603333 572261153 443264175 299276833 864386917 443592124 523361953 901613187 740111165 750671390 668560891 622416824 450922957 757977599 83696105 302906789 888163594 707457649 930260412 336703871 261745610 568807089 384858200 427252999 82900737 450460924 899728682 192317948 479274202 606289492 608570981 807554014 899906494 727357213 363260968 857943298 746316002 386658723 682055847 547358491 622413522 324694074 629042393 936994852 982456189 158312562 354995809 904166528 642129625 919584836 899245697 78060046 329158822 146768021 929438603 394693837 324843941 453190632 438826381 175376227 708556639 609608398 416629341 1148414 974641556 629374042 989348956 616648651 668652269 386586612 832150017 785137319 862934078 3473553 954169317 861441989 342088611 535050689 723993825 989325603 249537607 398702106 609736234 278173784 616751017 35048208 899477074 707141217 731776120 185287815 251551419 533977222 175864177 799944032 704600378 777555104 861866615 953376429 430853112 436877214 262040270 465993175 785111513 332403825 773359688 901460372 72204169 586270604 953997165 293443064 632145781 450218312 327171332 911119151 379946438 217368678 75679748 887214653 998027189 395302933 164958008 935447481 821691253 202207423 2830280 484365098 219676124 762216955 567450122 597206542 547538560 230099623 346854400 566287437 779803134 643522028 495559533 483127476 745242341 539737090 658522299 417194338 694596259 575011221 357808017 113486403 441377192 122367825 140604452 491095133 491377387 989874355 139527217 192574944 958072594 673244409 49542073 732583775 574552295 565354729 826792082 722614229 48837782 485805580 293612371 679707462 804370847 809017838 363637739 114302676 902246943 215374075 439095497 183361798 337530378 230955512 155052806 43610829 429526538 886737487 275156805 530812749 559008956 764998342 685196714 704063849 233909428 765928290 553450705 469791842 843935381 646968404 821357021 880836653 879513802 226490732 293871156 320280704 700260676 571603608 453995555 771929397 492957907 577921493 10724200 857910270 509268916 377742511 97481221 325754901 517035796 402645969 888623953 751179437 598144266 188236119 101392283 730191727 918357725 426363184 535945225 789124970 360746945 497263774 493382729 343740202 427234730 965905585 151364680 436932841 853040584 923907507 708933573 904999503 250126711 603369815 720769504 876809751 778944316 34190893 718412358 591894301 462540509 584519840 105814645 947831932 497012963 12562178 321479336 243226396 413184238 12509655 925627458 176226216 122806898 167221340 862839178 418997260 690694093 398590662 828146492 159393091 660243912 518477332 89111256 466402383 457640827 792277859 503538173 18088470 563654506 653544727 272886626 337097685 793333994 730478197 78868803 575746129 623632233 529096774 323263889 103056728 194666892 390437754 278980184 31253982 775801579 527015138 934092449 907606513 495573915 968024319 905451165 708808696 925944417 159548784 825384633 954409729 579060267 715310794 194107343 707237081 498202742 990912211 791619510 288367345 276820646 424024951 312460774 865655585 717512176 217465777 474105435 437266207 165167353 326766471 90907039 754621965 873276234 382142591 348993596 469799190 140965213 411420148 914337697 822102439 38760879 118498629 509532168 499163078 76301996 53845840 918546140 518152239 627089943 890461186 76672403 782767151 505697512 569425442 545670520 221657488 489719290 179992865 97376668 175931789 891308803 880118975 684353884 800628264 257757150 578445876 275831486 607449800 850960164 666735788 82051396 603104251 631476452 17087782 611499958 24514143 660704833 913443397 669377114 55282745 635861719 238264070 787668243 401863979 837461294 676059237 683223530 47671771 396210872 47270120 929417183 344525718 477998443 15266167 753768225 244173746 493240296 397761120 95983054 805767280 801805870 577559717 998815966 541226700 442611397 934483864 98332969 593817852 840920430 623983699 436210936 664010366 82827420 578332787 875146193 637210057 295005630 352708987 834800110 604482881 20475007 254366430 379201495 920171051 993569999 45882499 117302123 312952946 982362406 577015765 870832608 53763185 256755897 956212315 570715395 997710589 296108107 162519029 585693992 859795635 735467634 860562896 747616841 866937312 670897930 69128072 985277578 466159019 499637870 241906648 506865463 506250664 104945770 464569872 771043655 885126775 240105484 752224629 281611075 73251942 111631701 309301810 556121384 283215053 367742422 359239923 581705303 153948109 491383744 134567111 16170469 12227549 745662902 568345638 127849538 250998541 59752086 67442887 473459833 881429946 623134298 711237766 626487906 164594267 969248947 72076259 983527170 945221119 893621999 541077610 871722773 725019104 75836347 174499500 386452232 953460011 39834877 246665199 271136685 920711219 845700657 67081365 329922405 150448374 383658750 971844480 283896488 413594979 52809965 695235018 898897352 928148550 791046592 941061258 630740902 830566383 720803030 313667259 291840848 724089707 537563363 171214127 857224568 417168272 432094903 502463512 447851549 65363276 880393814 813330612 12544575 163684235 814528678 557543748 38718800 155601817 694825487 83089881 173175901 227073352 858302927 697550952 141194344 968036727 390041152 232727359 693003306 3312235 430212312 331450023 542072852 220813170 258948184 545362499 258278278 22493039 36487829 293413006 358485460 639943861 16675288 655235067 235151329 588980392 128533789 542759838 724920098 691448974 996240367 640635491 601653715 256868632 437170846 701506597 160065804 143731042 815771621 488515819 110992674 468231609 266230171 694120917 104800823 802049574 273740497 2320867 603537243 459251452 586383997 794924091 417146502 487808559 810589439 336797772 572455762 212318046 281021841 726424408 915072442 967227223 635961422 47307762 426816387 828577319 419046055 761457948 136287805 953620082 439759274 605096129 63731852 548205518 978045996 636933549 350158348 708364435 386137852 819546086 890957550 942727400 283263686 370623031 618649055 633920136 369651965 634539903 505999461 592377050 913732970 519495486 922050453 138794421 7684862 822252081 646230677 738380004 301909637 695974299 554959987 188204143 599150642 906034436 706870396 252625673 734398661 684452181 655118893 566547079 216234853 370168636 778464278 377345938 202395824 982769838 70098248 815906943 828883615 821169040 565042343 717438782 377620153 692017626 985252649 234529482 347214963 545700231 489941115 48287983 424573989 549817500 740566467 705056091 915858393 451498389 244638492 938669159 458368151 342382267 477011882 338005418 113906475 149016116 180302956 118398029 756993629 78468211 902229179 293098366 722189806 897580641 150421502 609507618 589779179 307312764 12083384 139435345 865798854 587307461 282791356 443152963 341249674 9108093 700999189 748289724 998802773 126814121 711044792 433326653 563944357 179196542 130151694 47450304 409410873 317050860 4913831 102066044 532845591 154541366 135922864 905239529 504043964 877379233 209293103 161449330 525854328 356789660 291108664 968539425 90880753 915203341 16059584 51482850 580819012 974290397 909800623 127262225 527567621 768886725 737741888 392513992 988335408 840423994 672730727 131851017 561858999 146102566 879437510 557830218 801477719 265365477 327859884 996600430 90734980 603355118 96120295 236279674 24887222 972842129 594395449 153097192 320894795 850027204 606050416 756808288 394717130 13804258 9602934 714362297 950653615 883061083 370059312 319709614 290317037 880556664 3650678 449482782 240287568 733573837 201000385 818261780 40952385 628386812 426680935 61253650 738257144 451368646 876131954 818038798 173379810 765114204 796057289 981437957 899233051 471216642 161269881 809170511 279166392 711089197 890038733 109906464 138122219 613442396 902216723 623915795 625890094 981866166 747015023 699712494 566527505 158240934 985232937 115399971 949835654 638470468 508513997 717892455 192740502 42240047 727177998 522457768 253431081 889872812 615219099 451204465 849596609 539984486 853887850 71035426 295293442 924868416 233693911 461625712 615688598 167678034 12537095 501978033 872630650 541881346 650009410 175824448 985853386 163464585 970843290 750702602 993713440 616387370 589449067 273561770 906723037 155899554 132125825 196526833 740519865 712054767 359404731 430710089 268231358 851045964 875907362 168548224 913080256 142904486 710081926 55918036 524496695 976878226 559020485 581696887 200864481 802050690 503125307 352783383 147301471 688769159 638492584 257426938 231353739 488808008 619715763 614401897 37727236 31901897 508194417 615164668 462327813 333967370 878298562 620054818 22492758 57179861 32000668 548342731 104510434 819106560 181771025 595413119 781015350 118036643 38240496 298347814 513749603 810589018 718688120 258323829 152995111 861229648 298546982 354437989 439659786 42713469 500637200 17191208 87481099 237421328 988937880 563265391 698938346 786560491 974897221 216242015 598641250 327133331 411071924 886090794 125477069 197735462 745498049 804318431 257404939 634816283 266018217 584861691 191569528 562397216 954045522 744795708 738165404 169967433 914791616 521946516 539387478 768592129 361460326 219921192 525684860 693838633 784114530 208777802 104572126 585159030 909564477 914300479 855394881 324183813 767515665 130497325 834153420 422604778 903171881 865876514 59576477 115382549 253681645 83830655 886309052 977382535 30322791 29163630 279823971 534587157 926688534 322232005 895803514 656231343 481378103 593415674 891267065 969268907 64521293 86322989 961983716 284737655 252951749 393089869 519179633 566349999 459553543 490452509 204948973 142755691 937533865 846183688 603239449 720410667 894116592 806040603 844469125 193933443 79055370 45818370 607037739 199855071 993353004 572206412 54021369 442575648 17187547 976400843 333734198 403769714 715745349 921098251 498422990 392853596 392101497 339906119 316951349 73458132 540218157 62249031 747296567 854410102 24456174 474852178 714896789 501582375 745650878 595730916 245202238 117967752 876181233 508583386 748165034 473270570 819449891 955328876 15546968 772863252 111922207 966359902 177287684 872428941 161746698 67171255 995079046 658930013 192684189 491901301 137383440 187621762 59298194 600911585 477420884 525644311 585404770 420695721 507454035 728617794 50041740 99433365 82460156 963445741 813653234 516303161 288747052 427861757 337607711 494280992 393805799 200374722 855784069 583611510 194254275 880551957 682377430 972815804 359484372 128893719 129442567 367144898 356206137 3534509 668668865 818763125 454900558 964753155 564662357 259747019 95508096 921102464 502240385 563541003 908301197 125422365 629482481 254596524 277117346 792522128 546653858 789644512 171130004 134116830 733631346 369892235 839478093 128100030 596288014 979996078 259479960 805544477 726749872 584672373 318996990 26288968 224600816 463112732 85162914 365042333 524173896 576507222 281444863 897945634 976324153 241455756 322978271 281557825 422062195 998874336 622838690 423536052 684998419 149020969 396897060 909022853 135400853 543864845 68123286 531363770 690356617 239263095 298761702 161347785 724997942 401958316 682351181 515179760 230850172 212462328 998380985 257639857 552013645 213409603 235257776 923727718 268676068 679864191 913192962 746867697 33228992 594623725 663511654 949152903 497723065 122001918 878424866 954427368 412431432 96592357 611294918 28782627 200794547 898688282 930498337 225910149 819315999 968179644 357509536 805089404 987685313 645546818 633177383 181970212 66937653 890669763 171315205 455810861 449724194 432259038 56406006 430802158 405397165 711708396 609389306 959570484 691835631 539634534 533690890 150363777 193698578 346641135 356483964 257299688 370487803 592281906 739005590 68441844 708573047 45200882 377299755 425183633 204934320 591865526 936510057 740065574 633555687 641091956 433149442 366181809 654462712 82559342 607734444 201616451 536853768 170063902 980182895 320188982 348071315 684134133 678401999 602761616 755054249 920412481 958479802 344561181 460511184 961784567 204703219 191976970 477835691 693981197 206188319 936429907 200248224 313000657 768628030 771132982 606095571 927972687 489255627 193239098 540630019 154954587 675459233 465040964 548704443 311195012 666864495 80347546 629053917 744821444 287434100 947066818 380663187 787739687 849356978 291134240 938536427 662086779 285249710 85066408 508491260 758319521 928937687 661739487 733893019 886771021 63977552 118674685 615339584 568971032 927497436 589721815 969297076 627919635 730099012 89319926 234842780 122565911 225167417 249342406 173567619 869924450 31653580 35764574 21840112 259451571 676154198 527536187 90598991 402894433 905313163 825698107 239792230 937687356 300763347 756731804 802234606 961767022 106926322 682629453 533328579 514346888 972859962 130501238 312408641 613300840 170486725 85934836 221419627 349486794 399415030 405844901 991285513 167408450 96421876 875859068 744791785 922865152 927623933 886351518 672190393 639658496 171736474 659219449 388862550 970924976 341634995 309633002 672468515 362137520 242768853 845769810 108569806 405688515 4702248 677075361 827819260 681600487 728782926 656703151 122331351 68329247 217984107 10026884 678218172 720289163 735916906 328891267 587439286 849830700 916224241 80832018 140676764 62364558 884999140 666231494 467865142 691902968 836714725 998200143 311867254 338043814 811636946 787162039 471957142 479363904 644278160 216616208 597488887 39723868 336477263 63491591 324311515 419021018 692278837 376832752 605128270 636263967 447774684 276504512 93577461 653851510 182272932 903113496 344208525 596337529 33730315 556858964 545087739 746225920 92686024 741400967 125644350 632908780 726762877 503259923 82164038 39403539 561863723 794658266 978972270 982545504 146724625 360969685 604412284 155686267 352139602 714669672 613975035 18880898 607041434 214857978 949976018 40118714 193756161 568889476 104074683 776638511 910167142 978481620 919152360 40251260 859564578 147327887 265632296 685753433 670916917 898396157 605327469 414630675 430602845 867023343 851512474 674571249 157186402 228579304 871240151 583326550 962262435 508647355 735156993 221199778 178252901 751925205 804652391 640033083 131916901 464406695 777179374 777719688 233062374 720088624 387496283 330551991 758375348 624063615 519870334 826536007 71778735 868441123 162419080 886655209 465364584 721287582 411321502 596428184 433982875 595226101 210978178 404368407 467689972 579951032 978540618 261723571 166115205 820551319 159557032 508831526 975408507 588549194 171900860 582088700 679304377 435336513 887858105 51329824 59157773 541667379 67915537 250583709 840800816 87388202 772218530 832900457 262262712 376986088 556418507 326794622 656554602 656013736 318498528 92670356 313672627 10010268 747448982 71690143 741681628 289311252 301286159 519798905 99493105 517594894 230833064 698549089 589466191 571843514 203878104 32656486 249443625 845233550 498135856 915830955 877762853 408254577 605858296 159790445 239651797 706028011 705679312 492779814 766949011 34379533 151345309 964887007 501873629 366118917 681474427 133785601 974164629 607126193 348046162 764266261 717508114 697490014 359346062 755384597 628910422 886741756 234659502 2533311 136463377 943957580 395793496 347504246 198159844 224199748 387313543 446569351 72570270 159108727 327995802 764632901 812113410 763072630 314176801 449991378 905179453 490997296 791612281 583870944 304055896 457634315 403384770 565432403 841727050 871833371 207989067 904411571 131450175 323441788 587527581 263385663 396722331 613144548 262843845 619357202 177645324 663475644 887359298 551854100 375234352 998805542 460128081 118822516 793325632 253420722 692953359 317784920 985213550 110084420 446549025 282864749 737115548 81443586 465685770 590884391 486836037 707459512 590818611 81427568 323130678 6711277 411136648 87541306 967068892 937227617 379300506 121819413 510963387 446360626 168850942 272260888 436527013 673126119 676836918 143006522 210733966 271538420 296563871 929359326 428211266 31317642 958096707 231489376 47021954 517147126 503845345 386051738 500381085 551409752 292411839 444883846 758051296 846899223 81008473 403995073 516544432 794667955 961383779 240047849 229732773 394905530 101492541 641336698 491533835 719842699 400015347 780689666 787178600 209411048 637169205 550174417 133544558 129528768 105971920 292211977 438633386 64443431 538719455 797245136 527758506 414244742 236049325 298563662 392016039 849137177 545159147 851645699 459349646 531051017 804894177 32203470 779805075 835240447 668133201 77107166 866320724 457995148 966334275 7941000 815586363 594364027 995873011 686675461 773355322 388654989 825148188 432150375 657970495 384881900 35203936 479643506 745848878 105061928 547305573 541804425 746731108 674780104 172585531 429833055 716954888 589476079 431527136 239070334 436074487 142618467 747654222 561653431 806849777 762443848 734240725 238744226 491954276 26714869 119550499 816586167 565596014 981650403 284815928 866403922 912202276 88345538 636565515 727821913 697367037 751213665 814806072 309430013 69783054 737910559 437204100 260070132 420199945 818060925 799834221 710051201 49772164 280014156 779483887 699278367 263505620 58914426 512444747 625893388 324704543 534271955 855945115 395599055 276586435 921886211 194709865 463206282 934146294 511808371 994487355 545592495 616936449 684586253 929338375 186596731 341156312 615391793 809718796 964437737 474544174 396075508 103949010 300539293 602864892 296388739 120627557 188703692 771672956 568861761 455962122 565319413 855372676 898855369 391102449 167992226 649302333 474872224 206557275 152251766 357326081 785428834 512171893 867570851 73310234 823296350 115343024 590743923 376479903 505089503 956358439 340995717 646491814 802623020 949747426 996408204 597557233 757188455 808214476 466356200 665013950 437410898 945565148 527800540 324480440 906195451 804099399 413993969 915829052 758339093 443251131 382525672 587116682 262957152 150450485 418517537 178731703 859001964 873121377 950742239 477732730 566356918 169410260 326007768 188100751 481706118 508701532 848290477 619539789 985507219 573806094 597700286 186671886 640499933 685082930 208707249 163344256 822197957 761081761 34546664 335352059 778920237 736820772 106026021 341310868 832955028 927906135 756563110 41432630 621375331 337620690 503552768 76771270 935331729 711650281 730562635 115689584 169326944 224272208 864376679 677446555 538068565 304120523 761756168 184131458 679007039 39269446 946119717 122744194 626412244 40055207 841251210 577227023 45583269 401973187 809133512 544175079 411293836 640604601 623287572 491229734 358154632 23424689 827087477 906309707 962921373 69212106 95741374 415073746 320038969 902273236 966208064 562803669 437124505 395757950 331523101 481833938 747140680 341822513 212845062 569314947 687232652 493740154 339269912 287206786 651541834 893283598 323331974 769692059 143891126 920030773 875942440 810423207 963514931 976060495 67740817 538837540 455288675 847768788 190765869 462473331 444219183 337910451 47236145 730200698 849833388 800856818 73912525 938856036 387661048 618319494 245733458 869835761 272488916 115163962 824065185 530834057 631106492 519955686 264163764 807753720 92602638 515944972 607825864 760069497 854943614 467775907 21102781 486119729 674510551 952582474 512915225 200192579 361249316 906173195 914243133 39394095 11080230 659213295 56746362 277866755 904973583 802850526 890009784 851972765 37362389 113335336 248947221 413962010 214020946 644243647 16178620 730197464 908930304 622120019 204087905 452142227 168858184 465444962 776902142 621615778 958114433 336884909 858698333 731678862 613178931 857438431 9991259 370759375 152844815 350221674 727728212 675765699 416310327 56312550 393256483 799836407 90209898 747282124 94047668 284257370 614040201 280232109 673873945 247496536 381744992 781580922 29952725 717813998 58703939 792749961 327541433 418808787 718571042 398274652 249991723 893467096 447866851 900323844 440661166 701211513 304131852 638210294 254502158 184472993 92228079 381126887 616402976 228462864 273742011 734196054 285766436 650596093 491220200 769437728 751406116 279830397 235437832 492591838 198465001 100781929 181198922 171072469 584850249 837536846 691152813 231862148 95060868 280869272 891802357 871283398 335355405 341005114 431945517 559803997 423820339 218840001 77822872 318793204 934632899 849485704 247799555 548876663 956139980 705120666 190261135 900224408 197818586 334426901 372893890 449408204 867524356 262802156 475538016 275056483 372097946 619837299 203490170 52220862 304959593 915379048 733394516 926830312 860862975 598299969 374841685 640185966 324551740 127313310 137253397 614609295 748573185 364140580 414995670 839372419 957833005 898139605 538320478 222110905 847363877 312066086 988816797 490866963 643028727 540047134 950925505 765034021 722665271 726085725 829693508 183264951 429779092 85748829 996310049 709003902 629441468 744181930 627413029 375533904 200669936 672289157 813439640 820859514 849716991 584284169 516826728 913230675 727850576 878216769 490974045 863042410 632660676 514771724 782475004 296414229 555474416 199731912 358924447 388194991 94094462 964888020 940719425 801162051 409793854 950175101 316588919 735448615 36753516 627545409 95690007 258228457 471774560 621394428 766684017 267809941 65525350 396616994 311659188 439048232 760045606 258470130 744685834 711864435 357004918 749500899 64895336 299663455 956446980 687165087 716122637 287134983 844446047 737670984 767187206 839273293 325930296 360062435 135751724 329343459 694629922 470302378 819140053 928692092 772397891 253258621 462516806 340544158 5572265 542370845 68545483 185084783 492651420 495881380 963398014 296475386 539043448 266336528 411287338 19994167 108018300 121437445 984684395 60703215 509799226 402452730 876639161 799731090 495332339 158958291 91306494 903534026 401805244 541170422 385420787 365058181 928588361 921235910 858882024 938255901 449333694 364696952 458172305 198517397 38009423 547565271 384921024 544638857 247133932 733344718 763942318 507668103 369647680 229468124 751450510 281021920 20675926 175481537 278476151 214060330 994912627 352208940 456784776 632843419 417341338 595669630 65073277 170720112 538102080 307261398 779885738 17050523 400312083 878364299 735374339 617055914 298089743 424793555 386484650 318549402 458197804 690104466 253918822 747014198 4700144 976786509 363870943 261279805 653499925 826123920 766073098 106391142 811227687 158394809 228537327 868475574 815697630 51529660 182848837 540600400 382500923 249365781 383941012 76914655 698436316 174586202 386249646 373875537 781198086 545782263 830515836 426909920 616749406 696433542 270938144 12905457 124110619 833301805 340730384 756824940 33344772 575646975 493439233 217419255 706091580 80841925 446159102 927753572 628938460 256977985 246303544 591132417 618673087 189059162 622719767 307412256 815678697 15525774 857521256 438184858 217107633 651449065 524528228 461103044 793616388 364577321 397008142 584706283 659905734 828637546 591518146 230768674 866131106 338274943 966959113 198884686 755796763 814144954 832225624 74835655 961413359 199789630 301694304 426204384 262211171 204480069 939487258 859556452 610037206 410828419 150296163 826099617 872147361 787611856 537331929 97228415 180002508 451749839 134918959 329313003 947937413 349437693 47902088 962692604 715713436 529104205 668574242 398668317 837121632 282944941 681191983 761578827 608303082 39144554 862587049 756726283 801127855 891694882 784828 788118517 82527257 965102487 495687772 870559340 664666138 474626305 270907972 151735462 922581486 472761541 401382069 696831 674748106 266963465 716300262 416497292 438853975 117150387 314671819 111301169 402679279 902415738 217598849 111474297 353101164 751077135 872577500 191457105 984918365 962250807 649064695 991659988 515200695 472326332 888572417 672350072 699699781 527766292 759307248 547460658 847654623 508153398 743826140 417998422 486646559 220306194 69405020 487357261 765983807 566888448 697750611 324676893 300967878 904491822 901173405 84534893 589011609 317943183 241666707 758820455 533598655 339883963 947824953 436416645 385013101 527734280 325674636 137508350 405479047 744543275 953589978 349246041 350693920 340039868 32091447 809994111 442666598 713965892 157969866 561749775 52697232 474657669 197394957 292314813 841108659 21038637 194971149 43808022 647625750 675184466 464932680 452434208 637659124 668198853 204239636 640253469 199518383 309971364 317105624 897893641 518160847 826587590 712077800 63016658 7941941 549337832 262349398 358110046 656641424 13197338 582404101 420335742 104972880 528769835 517716349 167028064 427578786 960362699 995377530 958242118 441092103 478286122 456124325 532002069 452541207 202759665 546877148 325259305 883416118 108502997 997450491 118771454 704094369 619843049 911611034 336917667 204835860 114943314 67869548 165265486 198618200 662986229 802799141 751584128 826380824 442446586 390023771 152977186 881877383 213394307 253825579 460438373 72227850 508428160 48461314 642455822 650204993 15872374 386046022 849403413 945674794 327388570 2489318 427040238 592986255 994383787 207754740 126999522 355268832 789330560 206645357 183498294 996521001 372625408 259423090 129781014 652083041 212989778 936592908 608838346 852492848 175815980 42302946 280166306 877477216 474821927 524282912 764536015 181542358 984040708 843345399 645474846 188955341 75676145 559081634 69470190 693487197 597198317 75426300 994967516 90435898 250144122 522513577 625033520 190197639 618769001 667436709 464411584 542461447 117862169 419630943 40306659 204994348 990022344 848970890 134149798 182794051 528554006 399645416 754363897 547585733 528431031 228074189 570293474 24114206 888410229 562608742 487240750 561033014 588973758 236374727 357330920 111047086 867335618 620469401 164085972 669718640 608715147 695531040 322630386 450166946 580821925 162727136 298109860 739783931 81409496 415114345 426621254 766210426 669546916 899086947 414938059 307491727 712942474 639790118 74108707 884207968 311147963 921711792 852349834 623673261 147666644 696879245 715960799 342235004 392381381 600895667 91241595 301600487 321436810 649403162 199331409 138520738 439265249 599533049 82689298 332897082 389141171 694634902 89108992 780752187 660319895 323591394 599936584 185202929 801898656 544442416 646610987 328164136 60210953 63565255 917218573 97019041 866890932 747877180 304298377 423950753 949698033 760349881 283115043 530653965 792819850 979561370 188047490 52593504 295858142 649243088 942974642 223637875 863673872 230707806 556815347 697853003 802688986 718188525 943160933 210804556 974902243 735887330 749596224 987564517 49766129 773047752 369526825 893188742 268018355 133990916 137269727 357892209 725046404 921217857 246441411 931977002 866320269 382106742 959736138 871259620 683032392 470352311 1564631 630859390 560420876 141374288 435880817 63448181 36918822 150588944 73532339 750991638 16774922 702020850 459698086 485540852 218521895 814878767 82013599 454672005 119284163 15402803 799377024 758144218 834078710 569144378 810075436 72751008 971744102 454969618 350492285 480137738 655873326 950825622 683415820 818986379 387460058 154233813 917019651 713853466 821299663 883777637 505221523 819884385 964097153 74595874 347864367 257836668 608890730 955740237 704720909 921501754 845717817 875658881 464635415 718086157 895003654 227551597 303184076 792028721 385659157 346859785 118861768 795258170 137478047 631987979 390448847 693817193 488805161 515998381 171218655 777569546 175887784 341391057 637042169 633442699 597634221 635578722 5584800 154372297 883249286 597326410 573168456 710178323 499941721 136419674 28746735 722626444 79302714 58256850 63876289 428314797 774784322 352322871 415828659 800902259 875747508 456180797 362049967 956562646 481497428 468107018 63441152 729645673 164490526 794203465 232785089 423746510 321174340 977946309 687194149 602204950 141693237 522137389 208814490 502733095 357665521 154644841 86004472 987888504 741092346 484741166 247693329 226341367 169726080 573004729 888556492 649857167 677333006 426590636 489490060 859178297 540024234 61657403 469586793 731762885 542438998 743932732 271230925 28996032 842369620 755634866 896576234 890234306 71531811 203677152 706050015 311754526 359988827 44563914 562013929 539170082 226243705 656504916 627766683 774026931 500352905 265315299 562069365 661174185 224052956 390595104 386794302 871676686 673179974 52332444 210917890 105006083 199117432 879563661 446622734 534379579 991501599 508360952 968192572 75554433 50745700 859414094 468036483 941987846 94120630 173601376 31468917 281184282 372192830 615167477 672146026 444088436 71707337 854670036 945559797 980584169 862963816 694194604 645243440 737497793 696723477 856263441 147874042 760894154 806999284 534452897 175614793 228999765 430747469 476040610 494800252 645419434 507314342 420832940 669567844 288603249 235639771 188550479 826758801 538209013 169713268 110370272 382813761 629911848 600045209 421887839 725367047 85493822 539112774 139828032 754549955 583276690 554360396 675597737 586332188 791253820 536749962 370095369 875210363 18856646 207081194 559557820 793231031 794814618 914012720 465312755 643745012 488159992 41956763 891830601 858531506 513536903 159560596 934750921 952831384 544343196 225146988 386373152 335491356 501927277 295786376 928844915 286698011 262927238 649006602 865132525 360038543 631421720 707994348 422580353 14609435 40577995 462748896 74756579 797008563 884125529 735627999 394895348 243872529 60109544 303027474 633218956 10649956 44785186 914330070 860225344 884100513 819854034 882011814 990329176 918637571 249425689 60519692 764611654 835205608 112777569 720919945 759156407 964794177 701858806 546230499 162441962 964250806 609376482 482130924 172433250 199637134 20466343 980715998 306797331 933341803 445674990 654508612 661571720 482525906 45159010 105070293 512813563 44705741 412295066 35791115 578741022 498124772 527735537 448054779 925943155 292063103 467517503 857530644 51942178 174714099 147027021 935194374 521785049 22283414 270054684 401058421 183966400 982481917 606641605 508690799 609533311 470288460 431479017 217167869 125379543 528201485 844207504 127375993 197437340 692143668 580428732 183934827 100246105 997454868 745861124 483362863 481451486 121448505 985851161 98834094 410932384 922960551 245971466 28296285 953925026 297489847 33157562 328388691 523450815 214098983 16936592 459945310 552780918 943993650 449612372 406139115 127466594 56674543 369069387 420927563 580875579 125987333 949600127 839105293 29705455 949746738 386709734 893988409 855876589 468586633 40050345 377377899 288529673 835619045 315720720 850224691 165365279 622176837 443134870 646370679 528644762 221444398 450207735 821665142 997017218 174042913 605331560 291514914 670538238 955513591 775984809 826153488 186809380 733826980 410295508 260096882 82510342 267882208 39109132 289772302 138022628 564726547 89511459 878313608 266589216 10671125 963513 195885469 275517948 298836156 807830341 507158884 148468978 162166783 431948889 975693448 342335458 10941009 961456854 848741009 726891225 909531573 914106393 97301918 370381959 403541781 288555573 971126490 519487895 28548540 3857575 423875341 664703152 947235797 477059220 355922689 933899577 81052629 331855976 194382935 562259384 231781657 162417034 277011905 345791897 373913260 293897170 526938251 727938606 794732479 550623205 915608145 60846725 397535717 203794157 436128633 472479199 707242330 589673157 51592993 531181021 34763468 907650416 320096990 479610623 41729238 98494741 310445988 72593578 852620567 861907153 587524993 195198270 428172838 131025259 753296215 268956322 195438259 528287114 927903829 780887855 339058011 829409059 465488342 640955088 205512461 247704438 279828918 252691287 725009890 246131606 451015759 99785827 674498107 103984144 92384668 291464750 366703239 589699037 201338359 847747585 803139675 180003106 331642783 314151831 602830533 927312776 672320862 825054420 240191984 393610456 765661617 652988213 950829824 654589948 951207201 770728168 408496094 749430307 969544122 50781646 574249389 847204515 114925214 734236039 281311649 4227898 442585188 561676105 115455626 950300357 89814578 882240993 129608873 461798886 287758548 897736534 257252962 706335835 342722419 923749462 457111164 333730744 867238512 754275856 329031848 348118567 15351350 564413189 971764550 497259699 716701997 65564060 456018219 472701552 611086714 364741243 729004466 50923410 875877577 466130340 711939600 510932287 905768535 257854369 797030494 633227219 155442294 344215322 299588358 127344381 140861875 386182248 263600844 539927869 596841797 950298181 178026298 2975342 234551993 873082224 624720602 360120712 168791115 396096825 319737445 455055772 565602283 480276688 705560803 302451492 557347711 42704120 883076950 850867538 992231781 8152811 90560525 236268275 655411628 541819572 778800619 618098695 809976798 476215885 465601216 256861894 911343040 568351676 413258653 432731328 546156697 426348788 120964805 86321151 38370334 939793564 786083469 28017082 638100088 256704513 614910685 792164674 930631964 630883749 653304404 607760730 930233444 362144635 208327116 966111146 562957086 772669112 309570065 235482946 374882254 91460966 316894282 722696933 475247117 88931276 64530728 703121674 547606485 719301469 184634794 529381003 147002964 329642362 665616677 350402817 936875820 165825571 942823225 1772209 714638508 886038507 31371526 905930757 855622699 142644635 83967712 961022052 164957746 154185473 339794143 958969316 828801916 978878902 598604434 397198867 761916804 769404840 47984000 5368665 52000619 4548134 280602473 863937644 887164795 853798972 77424979 563293195 540883726 230577098 239931274 645874481 41458113 163119158 473255820 969460569 93006563 40187927 8317807 851588149 471199189 975871037 12631081 270588389 520079007 786148574 521936984 525147759 666263416 54913694 125316048 716580251 971126297 555834605 395761550 517870360 163960772 298232077 789661714 223804209 805841350 393806882 852718506 21729052 64182690 476468748 518603596 782670886 63962794 627216096 770204884 74432399 151839410 327717803 939225723 467073063 477020324 293396095 796728341 477685216 789135674 832652911 977750175 736017467 257459817 616755633 813724455 152955889 884768519 528208980 894515850 634525892 275140888 263222754 481993347 990946588 538866430 314186900 870649736 385568905 427573164 103108302 651564103 361938513 556063692 367353720 986091345 792504493 843955389 430469545 891817033 98289041 821256476 50313841 755012430 526488566 638974426 936422397 652669705 285589347 693890395 919136638 88947557 251909245 228787576 54005308 321531164 839300167 143298893 865209263 259454817 233127861 697969259 277441738 422686715 629280027 241549364 444504079 95087765 62623381 405596379 68769278 873577766 61517813 435351744 709114821 995435579 562940148 485802754 132510586 254658621 389818220 244199641 130005970 206738677 780750179 528998485 857455905 235991812 989834149 962794794 128522654 774801592 232001342 682391433 671477245 214688094 684633297 625066310 964845053 328328832 297834507 696375442 723329889 72186973 805322420 479951535 468593948 134284608 771126312 243425726 232865136 856078081 968779642 179966507 836651181 141097259 482357819 740438373 646955022 718380197 929804987 759717860 331363386 816401215 187351076 279884372 939729755 81932850 954379120 883109047 161615016 981556423 565537375 782647444 955185729 702930672 856575591 366847077 262937332 762072314 678778694 392188812 692529657 17721496 182559378 483638123 371371613 421701105 804721424 832521918 530187420 43875113 47822061 692769556 736444915 320106013 430835757 515895930 440647849 815067918 415236753 782335357 570121344 824989628 422188655 66111804 942799165 231104701 836269231 673025935 246854371 919882669 111204358 359515993 657033634 95479755 257093095 608871863 817773848 70436109 694135527 812626019 743105744 130634484 151985895 519017944 304830781 839659183 938583365 713684503 360337352 52280119 875808105 283783514 255833832 83615605 124825616 796955215 798734539 174548164 262580557 614341513 560268864 864351764 299417378 537246710 257024937 942091385 804406622 771061174 359205392 320203337 554275597 285441757 92986248 705131835 461120448 117625432 275464078 411207379 333469724 613190467 266403839 486049250 404833705 703793833 657467243 721945505 141490460 476896740 821595019 360152157 841135794 914591412 901316234 523039297 29131599 592279611 539709313 989672000 188751251 418131307 930987026 738727398 999213544 665171833 188021968 206788729 221851156 790657693 258218046 537630195 256280178 258268879 636844201 607317573 803018292 925152897 616444245 474022177 230753261 274366670 863136776 251548934 738755123 113645351 388380433 526832552 944425102 718826328 270743223 220845902 395591031 46492434 469268813 842001086 62046889 337424200 340372334 245843594 469009225 449760539 363194033 710639595 521455701 713898836 820596777 479693709 933342650 75997817 446025121 349248311 237694701 27601835 623224855 508834735 558560636 589018226 857969242 531056177 831195906 328874881 381012516 329651960 926511946 841409404 835060199 369000105 865273634 465850257 499822384 973216251 256604872 940134535 73167884 526711777 971522281 954038523 95002041 660427604 900217681 400706228 533022470 385243044 774478848 127742958 87300571 301667505 670286779 516689835 926288555 649690645 297065936 591890063 883984889 805755457 552727793 67063029 322044264 630848315 132028323 618815505 104066605 142396009 457749815 385165457 239000933 186133632 622136724 142451074 427261837 967085942 819958882 78048382 223326800 211377534 168867696 592839706 278067789 721069978 564091870 927350797 403376922 785144605 798239893 133134347 976348277 62783099 196769569 598958643 727981309 305007657 75241292 764934361 504296619 749680559 635216775 223049730 909910780 21393211 430893809 269956345 657439064 257990193 648993835 118862852 318161824 959671055 139112558 756482652 851088315 604682065 119186774 142877848 163365331 982539756 256440741 311290930 405210764 187312637 729891256 963516500 683340375 711502579 683410921 558986757 982966595 589529720 116683029 768194905 355209039 122611095 425984657 813004248 549333563 131844067 316073641 699951578 359117003 264628541 720550942 604141148 176072784 197073463 465035994 132568317 485845148 569854261 968540704 459156925 825984952 506654694 228188822 284560434 956869041 382492239 822145455 966022051 662837045 641094437 641414712 893116893 258020182 524044811 409893176 138500609 299315216 11501795 784427431 500479772 407280834 535124171 356734608 811109374 500366855 959975646 684915854 871640922 588929662 461918469 902027095 166963186 273926583 953657597 386222894 769590002 326950108 275993190 930974462 444561527 163396266 193389739 812540210 236400644 533474479 880105166 656486410 706180787 588170061 731331258 428189583 591743156 539620660 960172830 119643369 943514121 382307808 869895109 460033648 485471204 534468862 473302752 159724745 84964325 810517432 999195611 680520627 282688939 421311556 514002167 596058525 603806995 598236280 619808322 116389805 900693957 494190403 167462760 675530027 482572521 910780873 168903106 10749117 771972718 468377783 799366625 361853309 427288137 661857866 388976858 853119187 11745112 111932816 154982930 978982537 444830598 83964125 635565478 567268847 776635176 681448260 734797105 835299892 297780268 901407381 652599610 682855095 835294941 292673736 386139228 780132637 798318157 246048457 860171555 126018685 294234971 78505354 519277426 765716060 534703664 672259572 684355197 650367630 324059103 846448250 561072627 862078057 369340509 781371665 472070722 911227467 811901152 889489577 605106798 78531167 62362620 162972811 808123833 130293393 778185646 113723040 746123344 726818010 462575432 926580238 672613618 982562326 320105571 385476181 63260543 970322252 568071775 307569140 373507516 847361695 999282525 199738104 333482091 260609434 580330718 697107622 866016605 652582263 596263684 511809851 727634087 222479170 409123614 658969030 440849251 691447418 370499400 14217790 148587018 58545435 437494343 650282869 500916157 647548063 410343739 291391173 741786286 489830149 379260062 547504606 501132628 697385355 566838770 949848908 214521449 318081703 76181132 260563938 300950292 674225647 164008052 276133646 796531774 330527634 908646725 338221738 574810201 343254603 403046545 762338227 499891700 415323449 364063621 86458113 896991150 35510270 998008115 92499279 965768515 236727676 13699071 52929595 245719838 411361789 746344962 97109471 121931646 213304337 250635240 292508411 644567495 565589056 993128959 419418927 897553522 247132026 431079019 58446868 603726306 6301860 355592464 230601790 61811276 851932591 879981608 133261671 189647720 766502492 54441302 815140049 555156846 781918282 801613974 752693365 623468653 527897331 529217784 816883476 369176143 664879820 690620786 299101278 300097978 272637321 491881767 328584613 81967702 791491225 141693796 840537560 159949865 456560382 453466979 530743477 333220797 401321033 488376263 478639599 416849660 374238315 633435919 634905625 372720170 788158814 818665547 644125636 1824685 44986718 556085730 193097801 103526961 720651601 557865175 132003348 170407650 166057230 653260056 489915814 614472769 219128475 743126252 528046142 737524212 184278741 294510572 209614894 470450478 814007263 530324230 172258490 800156565 403780060 527730150 731469081 511028258 794804108 88059219 339164482 662930271 276270703 699413538 574802545 558050072 441206895 144879937 380444200 88308995 871925141 363135239 259704697 250321357 146147677 312309277 730122054 161306946 793465664 175681097 557877172 981487496 69925862 164822839 606175015 108333362 803324909 773825822 266013036 72749912 521695435 661334102 355589892 749779213 299218326 277658860 652588771 526643012 741623943 561084187 805174697 434301015 938751734 366064655 648737614 675393394 674971104 626682823 841539228 413408344 740692940 485493230 241160093 495815164 158047046 803676592 999293236 65775947 139350938 789662655 532163662 501391390 256628801 379290145 362159476 36531819 449898745 245829495 915546661 745485867 853465189 649302721 907651240 379350282 62799006 625971693 769675852 658515425 738111762 86558782 221112364 709660776 951788035 724941088 738953863 118282429 892885460 186212600 654386090 458654015 566217725 465841425 997965972 586890796 361293246 102814833 264840173 349614376 659734282 815723922 993706272 563357264 170542949 237427686 500139711 703423740 473476276 709594926 29525444 936827071 541399001 606839746 35033280 629188215 87738923 440118802 659703329 812403208 532796927 865010923 469774817 822530128 579833990 214234308 50367197 484089314 404907806 913998669 779840877 273784389 227261868 338093100 17334250 168018551 513650303 920169782 605876929 683844917 137298870 107229326 94222010 111714392 911301941 47118186 939177777 454996117 962494290 432009018 223266746 714368360 566945369 995549290 395499118 628128352 267339836 506778777 634533088 897324699 231417900 262846059 143052485 843501334 605895180 77287235 162605360 632792226 542886412 465674688 295048176 152912757 636704498 748691190 919011190 901478913 191604487 374969632 767123604 232632319 846627954 848638693 902670462 591673778 533815988 219721220 763555021 906345214 706709015 67191754 427775916 194992784 529000693 21146234 919644973 774103401 161859558 119063766 905820227 461465260 101305484 423986326 412985218 665254177 681236896 194974583 567055258 651173416 487651440 123981537 875360352 451387461 667778341 224130233 243906831 632764947 515636873 572350178 744144879 690250960 154688282 271306980 748341820 758067031 583154025 638864266 299799528 69486118 807751582 581729133 787788065 99170327 873539114 463040496 296455979 379256568 375909635 640312415 509717957 140871119 321897234 504243710 877225467 298654173 117205934 832430635 199001018 150314704 970790840 201825630 448131008 868957498 113393226 448143526 899390159 816693160 525988100 508221196 529358503 788963403 752328319 635067747 84865569 32280893 973742338 187134673 424797328 992257592 138561706 922387980 558557784 793802219 236678672 100199097 533221963 593006143 867831649 644394600 239415184 807130781 275523705 922575472 11459432 883641548 259887561 323942203 414205398 216457458 99476601 920995600 464748153 450291056 291620164 579321342 975436016 43900421 57974627 189656850 411811478 86779798 233067331 623807062 936880161 283762761 210483931 532585331 884607520 39966557 56453727 624997724 676687394 84780345 569402906 962046429 943151765 527133927 293420557 972082610 243542361 33270675 421332442 681401110 238810711 337379467 667110830 16497538 461083353 441033744 66352726 322282971 817789752 155957215 326324146 337336305 46415 59936833 345879371 150362149 960433931 936158576 653343669 464771782 514214055 218695117 202242123 156282306 824481676 853081282 327112495 773076045 614708843 854193835 89971900 541405208 427287730 796964040 833546264 283978150 711151394 997633759 407638859 300020687 701225858 596103179 797522675 913230396 14719722 51639340 884050633 765895980 635787438 370240489 674379963 360371541 998442587 155533163 479057674 866396832 909365678 820783846 934715572 107727019 416285740 956728348 15761648 749340110 905847646 672289406 535464126 903384794 210858747 272924532 855973650 30025685 251718976 49087676 2306743 965397895 201534394 157153924 974477978 199609920 985089427 836709112 163878181 706863205 333833961 197801370 151027690 405881754 651360107 828395709 523328850 154637697 687391811 811804654 494212419 574462460 563104945 388972726 723667446 819101995 821718588 30555438 158959367 670717407 992361864 943405447 608825532 306580624 381917401 1408227 320298406 59376820 109586983 512093925 189862871 755066027 389192796 235621754 451738983 900117153 184518769 465033336 505766215 314042056 578150944 729048965 153516627 676783337 10011341 647761928 652343581 352887275 626139262 462995377 732445159 433178924 359188359 778491136 493709674 287288307 653817234 492453913 350526467 517388619 486239354 765983175 901429801 898993009 810786924 764468624 244721757 649191695 507234395 950819624 853853385 494380200 274384118 118998023 488374243 969193512 956427977 569630124 926948961 392613157 552099951 451319932 153848966 149421397 427188386 740543252 256185563 528209196 935578988 818020385 152077667 471282582 100567685 715904088 18702541 587599940 808091656 616470274 646999447 875584040 576181723 662604931 388846638 835653534 805067381 161459026 174329488 123847688 431821313 674031879 483928129 395253361 595541488 528887836 125080108 260272046 785825642 611672203 799647537 458418437 501959693 774664669 523510375 70391788 613070898 88855999 279948511 223339026 845997837 582399953 727499175 180034729 981476849 170643361 614348395 119315897 633603378 954276143 172526403 4725454 47430985 838559079 311885863 428108928 490852603 514642328 830127088 984516190 314389485 871594743 690514476 955785492 911055697 440694658 901080476 44951362 595399339 617783997 457732656 803994095 467135941 782594243 430448616 227165227 501122001 534438746 835657262 27333663 944291999 34213597 313728362 125313515 292331064 56505861 861766971 873985025 387119118 991307085 874361629 81141482 892844935 655213780 619322950 874672305 619949548 655407321 273837357 437857115 12235516 275752328 434957886 637124345 903105244 852084169 776954134 1830229 756304161 31559251 524641676 677058610 229290138 49241181 273054464 759724542 106161199 864234327 419108389 59903631 288000703 433332765 2453262 265689371 571809683 577257273 728473283 31404252 228858303 386227213 378403407 991941169 857371304 390813200 512287171 432971699 443575044 70760794 16153640 642439668 150378765 481778979 960512462 922851943 883279195 426613339 870482337 198420020 365039819 327319 33997614 613230172 359282657 767311014 959211511 397100267 472051059 383746388 508011241 993612075 67080956 89192491 274597605 378896916 247859570 269864098 352744820 114878421 711037190 871185328 432257965 995185955 352009972 308314074 25180049 455391500 521345293 165958553 584664828 963127047 79172607 199677634 25666898 462911397 924018345 895786784 73921238 773027066 945041685 397843600 834586489 990845401 175898153 827329771 665651825 660999142 443785063 894448067 503215808 152351522 212479317 805378564 604205812 662203466 995961776 112825268 736662716 115679731 644010971 896001036 531673376 545699200 910376742 620097902 441125717 602256163 950090827 705977000 25969872 167587647 994990719 967068651 223227517 713807005 491252826 185694403 27123041 883005068 9660606 649545673 980401241 410849162 383719387 695387396 903913089 260788736 252758682 629889509 374212239 212549792 747285106 529344026 786124619 831876896 208380143 464614246 412553135 374219112 737652865 17738846 251185464 208824450 603309007 878413620 828593286 54964869 128423882 444089787 517283406 429516706 580895065 123703879 231558959 560962280 824246508 815545536 628632026 248902671 918716331 45925790 493660985 495525901 662528811 861993573 868825236 521331605 635997115 836096206 542648033 37840214 134949367 120872311 790871276 662869416 618193606 597726564 167452402 436020248 738770875 210793502 562535062 604409065 367050640 264964458 997214353 866745421 934652164 492055253 426379837 24487088 174067535 334741216 950041966 645060755 133405544 417601384 974376252 305486688 422642103 100192099 655627650 505655679 250032629 203587171 623316224 48080217 671174644 107052712 628979189 241704015 384193020 155669128 995686879 775927771 487944089 685799355 578581484 881729738 958250437 503243314 575850625 191731528 698509637 145980644 986579571 659183141 859288065 890163445 624574764 62706663 852332512 853410084 315133498 460670094 342454608 570536331 866258463 338952440 736777304 640742461 908659842 670160559 816058244 369874380 461230646 364293469 417176095 477027421 971481555 977949031 670950443 203930374 525557976 437397696 120693401 87485125 256574984 341212113 11543982 69111645 484544178 353079648 568694177 514568361 494743943 503443127 947162165 190568790 455602025 422317987 661711297 254886615 892618282 459608964 711058393 361101951 880284763 549426673 402089370 649679727 817680644 42176400 263597138 75051296 117184311 213663883 947179360 83839792 487079515 690144103 671753335 522297374 384870789 114645809 760509364 892494076 345623414 662369053 867859968 384183616 71281895 345235413 91127863 563362879 352308987 90281672 297036906 329811015 543422878 933118081 441207130 286431548 590363123 730764884 674836846 381141628 251024002 701954946 308510614 624376081 531263904 568996464 405912766 176273037 139527006 829040420 871333555 446332821 469111616 71106351 663049199 130446101 356666719 549550768 474950873 96311758 998540125 60258451 959442917 45580100 117085392 901284876 326693681 140969832 343741904 207519347 579936854 521240280 248202994 664634124 630729677 769422048 588747844 852051366 453382534 968829147 742224454 848597597 694332926 838641202 869683832 167246695 373396927 812865238 463563532 535726093 820714801 884138559 713845182 948697055 861493670 253956810 244919888 359458892 727856186 9862548 565188532 335272362 615075280 872484065 28856885 118111654 510045575 250816295 595116776 47713479 668385364 408068111 709116238 607897952 568449277 435961591 1450194 159375766 254591778 64203974 12264321 642552109 823864019 515833750 508489298 900626418 597721739 845285506 77709365 413100286 472103377 55755166 215346279 317275766 202377320 1677057 995023165 908807538 54563950 166127439 847933482 913084533 21412111 727039525 982020301 529039212 813312255 978570163 395940142 594126665 95984803 892024958 775462034 462031970 754516789 313514507 838559092 478380315 651945557 919810080 614070221 135645105 328300282 796298187 139709386 238107442 331131589 205992725 387709807 5833333 752762014 496237819 618779766 955232985 723829769 848460946 405172037 770725464 624417037 176715447 262857744 433118429 70689695 420459990 941117904 330015874 533644748 648442899 524854044 705958103 639158283 816517066 921469524 866681540 966185429 723009318 294861666 934996219 765291627 761672452 768450001 280808996 217756053 636272174 654088187 534188302 277694353 240201758 669629733 695202181 17363 336453717 463929231 835135570 4739449 300632166 693863090 435892587 213191866 184095215 402822259 234096318 379072355 514574030 243626869 115650497 272760108 199961466 206240173 349572743 516122634 34717219 423446697 682197555 480530970 369945246 809902383 65091688 309821754 829248051 571065408 890895407 503752504 799936716 533525379 756450965 300309082 664016076 361415902 988431130 963323308 556693697 998876430 251240567 126815948 968824134 225401086 228415888 4592816 794574417 879630635 756550028 24090459 512485685 513161337 441528716 897440699 904242506 560181748 828602990 753833696 903221696 38872628 5589116 222413047 208064710 803882699 423880579 591635045 199856858 830303931 244293905 72491830 527571509 179907912 217960665 267844089 515585916 27279106 900392358 228486640 67770436 950231088 991783363 424266838 365072380 610291508 551430748 986119509 594103914 71476035 201354600 472158346 578508268 481767061 878944141 649390592 305427803 246955968 554021984 502774216 610690133 804821569 534405487 878073722 162777975 583812185 507900059 512277658 966012227 496459423 35972118 605215567 930836828 271249425 471298528 992915906 413860733 417409905 291067011 201777820 295627610 14975507 869452594 640296590 337012303 396024095 125422006 475160793 883227249 736609427 37580925 966728201 752059009 611463539 315230904 439665485 705592644 382370883 633630599 310604105 413513784 66137323 532185184 845706621 41788672 75265455 46512380 333762098 590013862 531965623 436619097 33297034 196806539 630551156 469477452 746013848 344915221 303072925 244794306 286203103 631133972 371519028 732984561 140094766 510240856 761563076 655036777 973041494 104402995 781263332 409273721 449746308 35189595 344406366 398375846 691532220 951254353 963138788 854401130 13155448 560191167 632868430 10447174 162004689 477000636 384883379 771522931 33560864 36829418 42086358 611178038 124316451 482093241 346413835 823344341 36135690 437866544 395140300 764043463 539313763 264758287 473531403 898688816 243692477 756694322 336690387 160410888 192480851 931203144 103216135 545536581 156477123 474223563 465332277 622255859 120300757 542763444 541606669 358493672 87060001 369532354 271310647 551151842 727037958 979516001 554242422 15722569 438618986 572131643 389480485 922191713 185764236 459130389 275235029 364002145 769605210 552278590 519385892 717257883 462153576 103743132 853833962 227519005 895762088 461208576 660140515 217445859 80623813 444081777 100535889 992660952 727557573 774975436 182781885 724362724 690471895 679243051 129545368 698684457 923326244 320947410 960017636 510554336 810403547 944041302 245168868 896176661 575129006 459612250 899686580 808236036 336609184 292135635 130961938 77351637 706488580 127451757 394838090 507905456 876429954 320456602 651596667 2650694 782922802 289576285 540061128 745712176 703778168 312782627 798355379 212092739 785108891 6200394 598982878 864009282 229215409 892757390 667366639 918945652 237466432 877127033 158373521 843248978 265711307 891593092 180401921 507114939 43177219 979569503 17164053 420986813 972468888 769319750 122954396 200427519 662105474 78338976 360382671 328011487 854475894 96756922 839779256 413218040 690254821 869305734 439212107 478291692 818292799 911573540 420940963 85929728 350983617 877349299 248319715 25744449 979574948 843478322 493816583 853893765 822238127 766283875 738724039 54469671 278984413 155401941 966265578 414362179 72951249 38706067 556277799 60783802 404137526 396052332 606302165 147602933 142314455 952900167 967752159 997008916 159857738 272039813 514462104 511932678 448329480 314786935 466475266 902878041 7645188 946900153 306434107 778018207 114244852 238763975 570307405 797958881 79747598 929038229 616580913 582448705 384009441 203507801 216600253 253114301 545400974 385160030 182185961 61391299 16743720 534383915 129468251 381287368 103411451 324008699 231491780 705652735 754549604 652068746 434611237 231690 968692558 351459294 542934950 279165230 964963036 182188269 696708851 985350119 599034139 751938372 398733767 72258975 281533251 57507226 918702753 813281138 311152589 477520999 61968379 868997736 135872667 486677259 968811957 791495462 87834079 208974828 575773947 443806289 978228835 662765171 121074955 219455439 701104053 277640139 570421097 514463961 53791438 692176272 211759823 19659652 742242322 354901247 823294007 464385861 329723403 290546518 463482146 212934932 954165015 988425031 815822332 316856197 279882403 257924398 973442713 745836316 491497899 338737192 158879339 730881202 402269242 889092098 550651100 207669412 465180441 340397774 968992848 495411834 823872336 121226641 455885772 423451854 396110020 515447956 851933883 44630902 517628878 121660877 195088221 469132858 146381189 547225029 280393885 435419736 650447148 984319553 771095178 839249289 282719499 977097436 623696828 183401475 6754886 77924341 889218338 806555182 767019885 978962574 566764559 84248222 75021888 529951801 161400800 143915447 214701236 270139668 469586552 162373616 999929772 628998094 595723519 552182672 309049160 859884061 647656767 713598122 955716828 985810077 797491851 279286639 150828466 848025367 495496325 4903780 759993491 309825114 483887393 385011786 367714460 668631638 196859772 444147107 798769066 362549974 638021458 566104095 682955915 189239102 327022965 382881224 460393727 730817864 887259584 132568685 421566501 406687644 523531515 620452904 141670414 337483507 403523682 939910172 411395392 538680060 706688742 291378205 424000415 465980197 887307397 972362741 976194697 928218667 478579252 567293282 833115098 715801083 731590196 328267838 745627810 929666196 499948220 304452705 691623816 281388340 704719773 876041775 154643921 174085912 117217779 441860831 599674022 254231659 646943972 277885439 808424625 841439842 337215122 837184354 268179279 908244838 302291146 773828980 895921588 16973060 952620305 13140497 602843865 386593090 921219096 620474550 923067517 6336717 230457895 732269425 387300945 833508947 805307478 987688988 880014901 217229923 147772559 815531786 157088819 11713766 89139551 441081061 205939576 63157404 142012020 12711550 290966357 923250197 893101856 57139173 184315000 968768746 500160914 729469337 205547918 450700137 90139653 145563257 927766777 934507882 631595150 942343486 162410692 89084104 813932117 958639164 32697404 623694497 429465559 284708197 231795478 146925502 880407058 170972671 749345801 390294027 254059264 782850482 209931164 401265616 996541329 677757966 237758364 182341147 541467968 57083769 22567924 99305621 159055588 657543221 62810283 876404789 900481809 158708700 205255437 622993501 408475196 111604598 375772016 931159980 710960280 373249385 139283404 253122073 524677486 332519372 385177920 911794564 673419636 831832569 113667891 196316908 411888529 664502523 198688597 476753661 540822282 641027158 790877643 518510037 357299338 114947601 851706574 374941631 646885879 730727389 752795974 498385450 960050316 105845368 513971525 490666169 39445117 203390665 33944184 254549449 28239966 789425552 523074776 194991560 937338928 123616317 19582819 37103858 386567309 205771295 616213288 182933430 753770610 711636633 267808892 252736946 247635822 393753579 947287765 854374482 80659103 462368815 369257630 215056341 549002605 766855129 290677998 273655406 72707365 56034517 425063833 306122199 161754828 431515878 381323301 618423835 818752002 70359439 290741301 245864726 781459602 69002581 816036667 76285131 424520413 675103911 702131346 96534732 64314762 993972159 640728917 799001014 16817703 994531139 188334753 864464496 741480797 147121969 483040036 522563191 649118799 724746459 350785882 83912355 469857537 864414162 597774957 585630044 338881299 157397551 438874441 192341592 722901728 964532289 541618550 174922841 733656723 893869283 191556337 336339847 508285385 69156295 427216102 127567303 714272675 597170910 168012777 102959392 886847026 260480712 230113851 968854930 900266201 826239293 589595834 242764038 535465590 872560169 573750286 716074451 92977788 422433008 487232207 736134866 672863743 972334547 456595998 138198184 119875771 157297925 18217822 839767592 851576890 290567561 626803521 65816217 260925305 497459864 926077839 689576677 994210708 183631161 193821590 854792301 903685054 205926804 465058720 500908705 149708664 939038476 651263399 766547992 122934879 223147347 393307301 318777097 557728687 54334276 361739770 567341372 33966919 229062090 189379135 408061679 879880225 867866939 203937328 416373880 922686573 310726854 879567798 854557999 323253046 766422496 755511919 128309277 72325064 492337495 717525029 107087638 585746961 5794005 790695292 539138929 117587688 400346928 473599210 669367879 993874555 748527073 132605764 470578938 293307765 859888421 147318100 720385730 802842794 779753866 152610926 302352715 243560205 861838329 178685142 99260799 304616814 169780266 246442724 435200902 900838355 269963826 360130167 441484695 404868238 919782614 320107359 91177464 145155020 340027124 936222866 449608486 448656980 779172018 203208955 278562868 771706933 972499965 435914525 19613092 414095457 468445722 290534385 263646584 832082147 794776852 331668394 343737538 461576554 963758083 447340256 943279186 624287920 881595649 309571789 571654068 727083249 921309701 873720262 889788397 881528680 245553109 685988200 89354906 47027786 283823378 709747892 250786892 716950187 287413745 68260065 756047788 298938936 529957831 299392959 614746453 894365205 197940557 605439960 520358950 990060850 417038696 855981472 503411311 779874733 733775155 1455020 509098175 505309050 781786639 545851161 679824819 732419601 590456392 687872318 907083062 984916735 1132761 290597106 400805998 197263823 652919254 705810410 177655949 582327028 570949360 260232144 323275493 178251821 955503697 579367202 530740736 877884059 808919238 484775895 965052632 851572510 598027496 426042334 791714888 713341690 175267576 161862681 872244122 283293404 296165382 21803861 413376900 674340050 661483031 308221590 523238121 749361945 890464761 562991696 79444236 432926876 878939872 603337239 761353544 530071074 657264937 132104326 457032853 406989565 974408316 110938771 442628725 817474046 849572856 772599739 596254707 83420448 249668967 165990473 257962634 194462677 289512705 72659909 263996516 849622116 410060831 162926176 415149402 6623635 139827491 94141681 216374662 169683958 705237821 914040648 777166699 625135118 890441799 923970481 134279603 927344387 348078064 17775811 435943874 284910471 957349731 801553900 604370681 554030051 975520755 833505821 477744963 407327497 402514434 96680337 413902171 442922965 246113464 510315792 456758200 307631927 61117312 699617190 716449410 891123014 598808985 429313329 809213059 526114067 470405694 354105738 41386094 999198745 333851564 854389649 103840700 172288643 347508552 942317925 456351616 484869403 211050813 867324820 914073562 165149208 793802952 852726397 379903566 278680391 612249193 339695089 207696564 373391754 315143209 528101418 158897790 767782949 517202511 744335124 410875522 222844044 449778350 553082060 333781339 109573029 4009876 205202042 187171615 454415818 756746170 446348287 376081198 261397499 257702222 314334387 730328067 535699716 324574733 105682772 830741138 853826802 297636977 988985600 114704162 846358529 595770955 871813835 457423733 53346500 635780676 723813714 536092840 205178018 482949047 557976371 380232861 185665759 739619442 649662302 879843128 961756505 589973963 955103751 179517167 248446706 445321382 37874233 769963873 973091561 286257072 811946133 964173864 106743005 394513751 120506774 370413541 925879361 627813119 575190822 142266018 13012708 812305692 878627541 407386653 258524362 527892466 878865538 175843830 948817587 748057694 134258674 121372981 281866965 909345725 192247473 298815387 899867198 221345285 700255655 285269399 616136489 152187603 199803306 911506070 803847941 811841889 745623127 991870529 443529679 987520364 319665501 769491323 675004525 227457694 320014176 581977866 239699193 442047347 245002153 531437587 777196521 113656469 891620232 829496995 90337829 242576587 102482352 893248386 265308061 957668256 32114971 209898742 251316395 987876361 392054240 925534967 319181076 569198798 506103675 279713397 399168980 161794937 68560822 53675602 333788787 183696083 347670171 964759008 464947817 318495943 128180398 740291997 441280880 909664236 129832679 560544338 690910229 675613154 645697528 883726686 288283394 520034267 457320478 640978004 762219955 461605385 474896450 823532387 713357311 880668497 482336318 988502985 113036305 429424257 491860595 73570790 537459724 934951942 693351078 925851063 163355109 15352783 907401336 358329587 101630255 303779409 477121185 209537264 441891288 443900465 737160162 754574929 311483335 347965044 46521533 29480614 716731535 464398164 122048283 217874767 112980878 50659642 911482480 935379751 924320142 185398526 368452027 52045700 993304945 22924410 993063193 411294432 368461972 3968473 265256874 993285463 193224173 291000848 894838566 237519625 26607094 836522771 48680249 904093136 649792429 536438260 973368523 687707825 46476012 98601233 151254621 479264169 913100257 20411310 572918650 399659088 187628666 316242586 615739818 587600540 889257697 742483618 713615919 268578397 668341094 746834086 35742741 70520397 909251099 77503357 72486418 391340873 194734053 454426792 63381412 459637561 109871660 554585332 375046557 678862624 301099542 606849750 569809852 730604819 490502682 747493980 140689039 695952103 402977525 998394358 229755410 682914318 897018955 390122221 599849116 308190505 394416207 21439331 656602583 202851498 792144483 649932741 408447925 193668836 791850657 520073403 324253669 40324768 783670543 502347600 427518959 253549045 435467809 333671271 815828472 152148904 128349511 573343869 121056822 336672463 519116179 578441944 389384569 624635387 554609783 297195790 329930978 139389052 502571195 186674455 644532477 264460871 15117385 235064880 110802986 516566488 79495227 764430503 67302309 993587627 641960075 736852100 346285105 123337083 290951384 761873957 173672030 210356142 550203142 931712656 581813297 613988658 184031169 530457582 26491834 547148182 352560664 551320844 886371759 847934375 198693694 160729548 388902306 470947485 786845664 777532408 206315408 925781200 252753845 865494865 536220766 288634085 443629225 691829967 218704887 443882346 325505786 309956454 492727385 772984932 592219731 666782232 101674419 924133848 766604417 855434356 222109167 205821856 686680980 58983645 575031313 728133740 691020685 454842825 819821281 655637564 251756017 114174114 885243075 761506690 290345472 718107497 857050894 505801640 159145468 830873758 417991841 544159583 210987796 593772925 568136763 83665754 650461070 889470212 683152254 129598119 522719576 301876652 823813246 648366101 633582286 360729447 965164261 177525021 95525523 835228960 184855107 513165590 490720938 200503701 248398963 774770097 649647739 946705864 44905123 395063642 500010351 105280220 956709010 702719300 612775992 103083194 105328887 575960440 885340248 622428551 967497430 873449037 441173920 653567103 307188395 930530659 683388671 990975807 43238637 560450310 304460853 737527873 817686351 11530608 627312582 10307465 213879736 941547372 493955203 580326019 797597497 755287616 726901749 667484969 728503524 308179258 512165043 909713646 330310773 79436726 573555859 993598474 171912597 659289249 656077986 639722371 458340070 878497257 384992967 95391023 772468518 881586891 686961332 548994940 6383669 335903378 113997210 784091602 7374927 866548392 75345508 241570936 954854949 503956557 973250750 758927533 878109783 115963903 774236757 214833532 785044021 244173716 750409122 520353362 109702575 55462230 963193952 352865063 264918057 167601698 429930593 224669972 525512673 467047825 112487392 395044145 799265694 175766623 837075 529705313 404039686 698277079 675403463 640905298 430965654 330098598 898487400 327690492 999508662 236132352 625147756 4655716 128552055 990237505 429789430 990832082 215778257 330579371 998026864 372782913 169427322 939117249 791887654 243564467 866872235 156802319 472391874 120815371 163896839 965246026 981848296 913030719 887335606 134421978 209040867 8243559 353378574 298348753 566629606 790994839 485025595 203829262 255023066 293296966 717076906 405068346 959098437 53811005 823390888 334522972 761022394 194085718 336830834 548476000 124319781 246587205 54434769 140813108 192818526 578693371 40472443 866628541 595482750 698937462 502709021 789627187 737663466 889205480 144443191 713318153 878327855 690039698 34362445 155266925 861426713 698263821 671091020 639144821 487662467 626772191 420692608 817168539 563701882 404184252 729154684 673724264 993003840 995092824 869500227 430154740 308057722 479943273 341400170 260077929 446338349 528097078 331408796 471871907 630050586 496225477 466418892 835277847 839040769 386964075 102694796 658867314 77124652 154230681 917175054 115952988 199040130 438921653 5420135 948531342 444003720 1846192 214635105 167658024 646458452 209688715 496715520 271619975 598730554 176064816 482898446 229453189 233567562 54301029 19979008 4238525 373331837 464327592 429457046 503543338 369624801 783255721 69904482 552796054 996667908 201676478 920838248 20157207 690734527 522383449 228049535 568704880 463062227 177693816 439002081 345794624 677054887 677596313 168002236 936261771 621235148 759976371 489705712 614839953 669924356 420752545 479511540 533333363 926273181 846790663 885734713 315295723 299017540 16397793 111060556 213069099 36908276 579187281 689766658 433633257 900264537 575065080 844794761 850847852 255427752 361684314 137988274 740270761 77785205 212812661 43620352 916186679 405289029 115405863 393496522 411092402 945354854 127257622 728155449 182628453 847213418 947558406 192497614 895540801 134807126 684235507 138192163 168460823 252116376 162029998 465344556 909644507 403914280 658380373 27399599 512805222 372098453 611655318 910777949 84461284 909439350 272245204 615161571 478927085 996780349 961142409 658872319 260371919 904656733 312708057 738628487 790151736 969923159 588509219 488878340 111336663 655515523 631524334 606206905 448747568 498452710 466083186 73985156 766370653 995335234 262615015 569123081 76810275 560577923 545056082 445351249 800177122 954285323 169637966 400449754 353397297 821645683 101152758 165535417 764745511 939305766 584061967 970426604 921420830 426166117 809644636 691028643 609214363 610505262 38648427 237248465 208092522 144117293 149654974 472540323 126562353 786623138 376110899 899109921 207837780 199333964 790109214 987328046 276739903 717405603 422443216 149056900 162686554 179042810 183303093 338513030 451510777 646334529 452754701 826929195 673518432 187416815 54275234 346215561 15974233 519466064 513671682 177290551 890750572 533370908 482000563 73411134 124601979 643148611 249836584 763222254 251787404 613976266 191351656 726269238 814950602 489795121 517152259 510619762 783532725 348759903 286627454 592885319 986621303 261843068 344882606 19658992 834006670 307790446 34631811 350929040 95230125 606713553 642462807 1730229 721092261 560264921 801709919 981855187 986968546 975714422 720053686 223031062 482348680 84464168 110261190 731532098 62740580 57317261 305834931 753277487 113035006 57179839 738151570 188671872 534701167 384975539 768294879 677354248 276560358 788931254 398027725 489890727 868658501 815592000 217474503 810245009 8738314 931331390 813775485 338795782 632483941 466856284 231785590 257969695 969205110 935166169 799434002 778195478 607811444 499900463 379685694 609961569 623755440 377428469 989636718 594021888 619838265 479858040 177294800 219011182 762255040 74011233 626802714 199348623 53955761 597461212 160208506 903969695 945789790 845701085 395965653 321489755 724893981 106311205 777216275 156311011 578744749 533552560 831968211 578631893 362928039 168289606 662429366 210382860 867074932 537328512 431338917 250931073 313446906 617949880 545783977 90427433 858646766 67665810 75274123 914153997 58208398 426538246 320047328 240197068 488818326 450626964 715209453 979362540 966822869 466875683 294184359 901640668 416790242 119362744 879731952 981808983 173054608 838595474 598189 182826292 544629551 6048908 774082232 453490276 834531574 877206856 175438206 815403426 971880925 259399833 565086434 46991274 495051239 322963703 969764100 113717192 299353488 34107472 506775629 830107790 672915755 982805009 199378190 128229862 355374541 584052728 239746355 795941624 843798680 467646681 102948954 323132218 692027841 580017402 139588722 380409896 368836912 364253496 87466712 798857042 188845161 875549460 250873162 585673402 58527194 764496963 741614422 609836574 52825013 526192391 977876156 906953533 382212082 24131686 986399422 715516947 649496377 728716582 315300766 854908958 896433388 812964607 262976815 267754649 807069839 156913639 495571785 235149051 716314306 907508935 800646619 455937816 406375625 90241219 342951850 218341225 897705375 985447280 387412717 557346072 736306681 116522320 987683252 742939557 49636983 480402992 695955860 924846253 444852569 203931894 613825889 970493401 138618112 200739202 567038903 228382698 598699551 622988961 449442715 515379900 348430852 527819609 802281140 775929691 781481784 580991704 495857417 707186763 223028186 770183 707318184 302546595 420122734 606498887 140879494 103201394 943102135 615396728 579848741 373328076 465223518 64593540 850154501 631798561 143468382 463958402 446139702 640606054 27654623 451359923 127431721 88777069 797097379 836891234 76199134 878617966 267847358 716231055 806009886 553307683 720257323 49668703 325168985 924368778 383814887 540297686 617883251 114059652 558619659 567016741 822592702 533457786 218639142 381989677 155186969 885450662 257266353 16645880 65602520 649928353 832154503 414713879 894659653 664011826 703486543 251548916 565864820 731731161 199508720 558414292 695458158 448147669 222370387 33177229 477988123 789596791 583932223 452351836 801061611 903563175 876181261 377085065 605259843 599842273 483518694 15355953 145652238 301908342 647158344 408451324 233584532 396785539 216795450 610867571 160430459 776076498 487975121 32890059 458069079 898560458 123945212 680006448 456379993 633461946 182766357 604231649 369869627 506033767 199758815 888188483 26778853 296356315 396403337 437589020 454390394 232699800 916101852 422428510 177978386 502341435 272173011 131368983 258986990 128214660 950205034 639854845 285965709 451049655 334578618 763936154 889495756 845982764 991267257 837627216 23181423 656674604 733671729 995360448 500042820 967768832 380713839 23462825 17649408 806851716 998741041 18321897 535768846 620988064 206145069 429160565 440517314 270980350 601030751 503993308 437886002 70839656 720129747 549362427 832662306 229900108 690588203 20500801 848936210 974911180 108173990 468829286 484365399 194929081 314789476 532733835 314106441 303467010 896460210 976501455 664832193 42762918 35351993 793751295 592981230 255467852 451405421 236648555 621845843 737329116 935820017 843282959 688561426 493335306 513955157 319372351 596484210 435578292 301797451 143367998 939298363 856171493 307693298 653824011 457412368 708181156 213097454 188339464 475084912 72360534 372558535 607275146 642842749 371490084 281768637 500408286 992180260 68016109 857570968 589645244 304961069 545815107 722720970 769343896 19400357 894676047 893276586 18620338 150473725 938135522 101685843 766167517 809526571 805738365 509474437 233647065 853782744 326511792 42755215 869054887 157845766 879364815 146128601 674592746 121938476 539380110 879587275 727171232 4748401 570795312 716072149 624883273 635621935 112851727 112975079 654447288 292905255 484136711 94283096 665549371 375401093 849547359 556061903 526225818 13897045 408010363 593100968 866341177 332089548 402796040 964114205 596633970 906473870 882686750 707549513 931500528 963232974 673574833 946514229 990058137 340409426 730708544 240037976 229358642 814241824 663044048 995859169 732866582 164742439 865032619 444813334 795374645 730679011 866479275 180782052 574132584 454764860 950614073 251263791 538525661 796791259 110742196 400787626 50704027 302273089 853135107 666187822 85552044 945266392 228616821 911772089 415535143 272695056 438327042 843039095 788036692 610159493 825670757 883189101 55737329 781198842 153025056 799760100 822051024 538063161 229593226 817491755 66321617 723171595 460027931 425493271 135517395 338854110 649995819 656573248 242296435 964742995 347405004 973663212 136297221 101148765 969358386 645669689 154711595 928024193 526043629 666868555 502612517 790609326 572464832 556935675 938341974 615343595 123988417 548180517 477748474 554649375 420881590 143715341 644649375 565119376 191283598 449723595 858981072 800172622 640240942 563145378 364616394 92275613 7232264 70106516 479320818 947616155 800287657 756668007 618439000 509237896 849682586 149527249 941528224 700119572 275832119 756767845 775750724 681190669 93531781 525832889 406208864 263347461 560270638 995585284 818289486 901229229 947181968 240416116 545668197 870837315 437519433 759157699 138446329 788515528 50164125 278118417 417562704 87896860 178163282 427717014 205094939 629973470 293989916 793820487 595300177 608085259 436288088 389476284 362573657 658375456 859922954 190318277 990963248 964531409 108700569 715158754 919221390 362366256 943162104 208888741 982792017 892702668 427075006 185019718 107135812 739502863 194779633 834560977 235057585 553615229 854536758 942587997 382637726 454083237 627717462 788839940 889525285 219285578 212435378 125034204 220678494 750646897 509496582 104738107 963783584 548297219 69178353 175973124 240346210 682779475 953534146 953301336 254921304 648707315 5523831 936689488 140032256 542798454 186574943 585786635 312715778 216118635 226388112 852454133 369516051 354155187 950735218 249875616 875981840 208858352 653813312 27632940 820056019 65387694 406634851 304921908 84276330 801080880 295691533 323840140 614894809 179843830 930648147 877917270 584917804 337875364 494816110 535946721 144749264 251971743 344009942 438699907 707055967 59468829 21964297 422371957 211179099 124204293 265509817 625384657 426759057 366455941 850117595 355496831 602919608 955638707 222469107 867970235 572763212 669062018 503515377 564927944 661772380 953481853 590267904 817672498 55042608 351343166 761467113 147526664 636760501 698073630 783543114 897496030 244030037 885086089 217679671 231138774 813624173 838202434 297786991 377150854 477854073 568810886 156764635 975978409 903764333 241707857 702930504 412344509 389781145 972697012 840177767 800264220 233399949 536246870 84230221 766495618 152398551 767576966 322481729 539445217 740589660 513135218 65664757 499057169 482219888 307474000 153026839 557429799 366762317 692148145 975907943 466696334 274102411 523627643 426878972 835575633 305816907 391633627 796569091 190369407 293592134 762209619 259116767 764623424 317609740 64995831 337616964 434649186 715966661 748120432 21413740 237447772 444005034 446464146 18318543 683752534 99295573 170091508 616523663 85253726 799037209 794383843 640417787 178548671 682707812 873703100 423193631 345127605 653982544 542287814 725344279 490447722 655206568 415524118 564381673 841260652 650320712 332228936 730999614 496081016 474567519 175231898 72031432 271455305 779387039 105329330 100225032 700379911 88462933 909090155 533145764 378095687 377841091 862986656 529938876 458334347 219041785 526435518 19817393 339473972 378033691 921436146 740508567 979644500 681442157 239050503 191837251 605350956 101043945 20673833 877528889 337469109 166466293 304561708 72719039 902772688 696186655 499299119 463094809 857397305 367155080 697838755 872776937 588062960 187574814 752124672 345419826 36822920 78208829 943004125 902703751 47708177 43269846 404963796 85934993 157203179 251136934 718922287 418000204 253531673 524126002 437906231 266896804 844447744 525779327 308139700 192153400 2699951 770716418 296371629 804129143 490708399 48947436 659928846 354777176 627170582 423414186 448796213 217377028 145151059 518407930 871719595 23233664 160490596 685639718 521170679 750184755 871370689 945449528 629009013 333485295 590137071 55135628 612216637 776930582 75905872 701067481 502550025 220218242 704227777 867446227 148485596 278763698 500490268 425814772 177264755 609523535 191852916 345061967 585430067 208927066 299956081 914497410 888916660 187613935 424043954 381381694 114249163 978663320 8508628 274998240 734379641 342472765 977174717 154342531 161709184 534356750 207622635 186848432 185280803 367379235 13161801 558761596 407981140 137757856 477581794 946946228 569128249 528854252 106933293 143912527 4071865 643184833 926984249 153275852 728961853 606114649 794295852 716066618 779819729 447705605 801626726 713144327 662443507 576465936 293528088 304118746 105436020 488872318 382425416 125777123 257763194 50935026 467551243 116710214 883432203 768402923 533046684 32917226 538269021 422575307 750235342 605945626 204480848 80100952 793727563 401957650 943713023 197529603 340317377 267498219 594515631 617806561 953803094 597023127 795679763 672069788 769675356 664834416 961718264 255112327 431402004 906446420 680610786 464792878 236458429 73466780 269082637 984665888 425454373 122824163 661671025 89127494 772132176 691941014 295965305 142143791 313568239 702117695 787825638 429012836 469018684 237648033 250081145 203110088 637143138 661182760 916911313 110420166 219438988 35128493 120453986 193422654 771120095 969631921 742577481 592182962 813921624 64499925 493527545 773818468 845375083 630761521 667430832 466254776 948012815 172853072 798745265 171238237 835908120 959147210 405216293 402645157 832510114 657152075 438916261 586763815 345516446 442401537 274188924 759498796 883010550 907597800 947631809 281748398 648323969 230831962 428320136 575633400 249756730 666896062 406449891 280683197 940360426 391789527 617699216 218062863 701670688 94826451 688396879 984024956 249971003 788435153 736964586 680616653 672394096 969552234 639026886 915796544 992088458 949820565 994071041 881376208 461065838 633195992 40333257 344797906 724977997 929789666 373559828 205320040 17862021 968440934 191134980 50667991 417122045 568672892 861990765 547909702 206284797 420978946 554743223 701886946 47776198 501515184 275151760 89283891 358702734 13456203 910092053 867758135 945043913 705374414 271834702 243940954 613768044 433968743 28955613 480035614 922803862 491130540 459955216 262818784 690274869 638674756 852102884 310705390 796843352 479977174 112289339 727741036 638793985 598352242 405341248 756438083 37101288 149721352 625037661 815797846 491039389 902804752 611876768 317267067 940220931 679760880 190594782 250199023 911747748 772174453 398185795 735886230 87739518 681541992 402514042 796807027 156371813 245200211 171150257 600951508 846653560 982205240 745839436 644179381 412636329 912445840 339296153 122533974 699392010 753644162 103989885 127107925 241221905 647313641 100926575 783250430 822690534 598685532 124312686 997411018 513815359 6241384 953712519 722053128 200664602 518533100 635940851 125441586 471410460 232523862 404720213 442513018 126735369 26773943 547274720 514510327 85717032 154729026 297732486 21372625 912516088 118444304 673268563 281676019 586750093 562827520 466035907 382265107 488881333 20621659 881711114 281615248 67572718 469719761 384996106 45247463 938289110 444013584 68806382 83502791 732181866 430563558 398764182 711567694 873224188 253145192 57635368 819277123 915578166 202305344 656053726 319110409 761006076 586022908 503018013 731106604 837651519 485159760 231232715 957915382 443288004 848031903 26899249 14089455 796110460 30923720 737146333 866633309 350216612 591917710 767930554 583136175 376244288 651169153 233062740 660382504 858020688 105714855 5576841 637396625 392864202 708166396 82056425 682437338 304864497 11839420 268882180 413035587 870505022 978273351 750748801 865434833 221196886 264020418 453182161 322109717 417179642 222931025 793383979 256450245 55560772 903765192 324155648 468150601 727286479 334657790 492337209 70462107 507506190 268806761 630664952 109752366 716461580 333423138 912225975 626285165 550250639 237345987 477993014 198664998 583625091 507815403 902435057 731781977 686544547 880997902 318311171 582678988 359549062 904576344 765702988 434119386 174149752 488839285 976021584 443288485 582472834 787342840 727061560 122002048 104497265 595866766 982326031 100449225 737909317 87486880 518403341 586183345 152725717 405809887 473107978 149775798 76865435 555507824 166316516 377561430 469028813 530996455 5701909 792530377 292463931 456794856 554359646 635040780 703353928 390186320 427438755 628951800 385662337 215278775 624105208 810075257 652557812 715590216 434281980 511689954 751180084 36141902 282003417 801103938 450232743 186851434 637561711 723126515 88121161 396907622 507034904 351174893 133057456 615438523 969062603 968853540 976773802 275121759 368056731 964375838 22549188 297627397 694854875 788045427 473417835 145845926 149453784 636876245 723948335 805906185 417193187 953412419 697441699 46498237 984634439 418544790 357836739 575721443 529091917 310759495 181125343 904886308 664724522 952543794 741771021 236919709 242718853 376839144 667350110 344600404 73027090 577730806 317005060 843720821 23367868 36767582 384739484 148510354 160567497 979178757 302742008 838699055 614012550 571105249 269920140 490349599 282661211 262131598 255772972 694578314 851494699 287044913 995766385 393505228 860245391 966529903 230117794 855494700 687899923 531710292 282818078 73964436 765353240 432795539 835296519 23613846 415077140 245510449 410247305 128073835 559780916 24972372 143654017 681978025 736785446 991462895 817439289 450404199 613817193 615655166 615582914 211955867 496740405 733002129 993468609 159840935 275869928 400857245 603720462 229071538 924884327 788797456 552459353 632514825 679064010 356704425 257215798 690913202 837256995 872866978 462754488 531110587 187961587 447644536 360800515 381392743 193365851 931212535 947932400 24293643 8339631 225609470 932981041 431678570 692480461 589265395 821332028 548677057 995819620 998141815 207734722 602261402 814744911 984737029 952275078 874246879 344997152 85757568 953808850 747407490 581256595 527394301 484766364 289312313 394188614 457382462 684939208 122655420 921838911 669424075 625580417 935982095 984283909 260108511 785588630 295383237 731114348 127970353 360954110 867585437 955463923 894204624 209999841 708922741 519227210 102147599 690143696 596351278 402702875 41116301 524163880 834559771 879349725 227031924 736221222 752792154 422732495 19350416 383141123 697903485 412912598 851318347 351205148 691259658 661604796 113134929 335705686 532570426 768234552 923461224 388518492 512480312 162553514 797886863 72588542 979613906 482535320 394570282 404080337 800122811 637393286 636851184 984635109 596300209 551173947 615881870 164789724 760048960 348299870 892943732 693526876 252175114 150351391 534042040 421785114 931771844 432772242 506573085 423471121 348436009 356606957 186876992 112891133 297432754 865490969 581537239 840256184 83074750 877825289 929212376 984137426 206320631 848676316 70750608 673238788 556164801 895898748 244245408 681079795 436757116 325812270 457593451 704507916 472134550 162148445 707052808 870548279 559553023 908125132 449859462 680487825 50055697 874103137 43519830 539905262 977028000 749841681 185672973 853559796 62271976 365854500 824152312 130135823 347240849 991770003 239310208 819672745 80326148 406689549 85371659 328230935 380642262 561544452 968913629 638771391 415545812 536462290 544883514 902303518 554385188 115820068 266648577 947031007 379561602 451652268 333278198 762314187 85535814 175541301 119175214 944958413 423112072 608882786 657977600 974049482 349157055 434709799 405315449 637864334 48786779 409495382 84488670 958094641 15538275 863694241 969872416 262151663 312395932 140848652 736545644 340307221 97608690 67352653 22535431 91640582 536764962 773748041 157719689 39311697 720756018 178265753 727363385 499585726 171154035 399114251 132240705 218089449 268195504 131951854 245585716 850255078 177386254 736222769 127424247 653001686 311948139 822882603 207889132 47658620 6670713 116701269 184864674 544705445 728560574 978774227 323096270 596501283 214241935 935068947 294459238 157109181 682598719 155305641 228891245 242682421 476817139 552202947 459259854 419388628 214240044 488873679 611137022 565803581 740541398 752392418 624253911 577120457 696063874 680123756 294405371 200577 739957941 730055022 65114955 114429402 499127161 448873263 651141372 530460695 147523344 780977070 396082790 714814717 667310582 398020415 807607658 738122977 206764902 9687806 528669787 271679441 357272897 889265014 822165909 101657504 827257440 157090116 158243025 372323391 39963578 804331739 405700153 226741554 871687713 426929314 438526320 488782545 605304312 573707798 137066929 458411491 308635083 402686898 183445647 291067098 425934210 444555826 517162050 295854580 475633292 461130049 840074641 749988424 913441323 980084938 416688017 716972184 546333686 405643232 664398415 553874537 302290740 563268384 759660294 535190114 784869995 287769520 918355977 937943032 991920774 160821793 722646244 821568472 781770764 650804190 683410519 691846874 943135267 419888526 779700805 603077527 886880446 368674013 574280990 369791199 774908687 140647433 800870219 576461308 685016783 1724628 944904200 841732113 928344360 971645074 781469165 855186352 873837775 568938491 709346496 348047317 205492140 271910011 820108951 560679751 359691547 945553350 671803382 402573999 170538788 61483117 722408887 608040858 837166059 554190386 372382552 123865985 364889894 689609085 475662577 817393425 418276296 780845692 565283179 514601487 957856965 825983046 361708265 345919271 590309599 788565481 554388287 894025158 607990016 550077621 599305228 512323191 208727946 903648382 956211310 700085331 1533323 20966571 286021713 997950027 284672268 896708005 552964521 32273758 306219285 405376535 561801393 414359324 158128578 172838480 100727040 232914324 268178997 291281022 225985482 622824099 912787319 568154331 578445045 919114114 13034486 446913366 408999216 40722441 918846772 595590537 503427983 892756081 187416184 355188385 904579514 465647786 639953887 348494670 292178143 775556785 680714330 531650257 967923119 102656346 714977420 823677146 539756501 319509632 677195517 105802742 476627187 337107087 214319631 431700213 106438584 177855056 824142177 200740425 989239170 480920186 177637460 65173347 507320389 224966908 7219420 824971919 570679329 352758686 390250864 239271708 526950042 147808297 262523092 22226482 847807041 578519428 924477381 279065445 943326186 225515096 458986172 58819687 264232060 237236150 222570479 448935052 826734443 741397170 107244799 137558652 548710641 476718596 515667438 576490917 375214575 313532645 905554958 890677848 996195194 284859969 628163010 514149118 268792183 444235502 919248841 684378791 801295124 966211277 460040273 219722811 824295801 904052632 824029531 706572387 298874516 640140246 248329237 441738759 647730832 523076384 300496396 797356241 455845088 328405067 65074227 220892875 263720587 143196354 55893794 880133885 334631082 853376153 874751118 940125672 206247698 887906892 425877066 211797559 899425297 657558419 73911776 163680254 192199589 759638668 854567821 186631633 942200631 990726404 388208656 611964013 960247775 712213903 195419349 583142058 753453385 753599108 2258168 238715287 86153896 933174566 160085507 722748995 490136006 583519528 672174775 228871157 83031839 333057448 460397079 416066654 787600424 27313568 453865017 431996366 964653816 83414008 140772969 251573775 225716227 960586232 466111833 728778034 773240399 149554377 850052003 566614262 731164824 601332984 747806307 185521159 760514843 212136251 24165025 413693465 61854262 825619971 633702839 219541711 381785739 213178067 678928921 270815939 811963547 993770074 55337713 825076360 374522701 466384674 754852808 739461856 891236171 567965370 23650951 471716420 710679864 811821294 597418628 979806678 722310139 11620772 571302775 885998836 608707035 600963425 215440679 787634165 838516868 775019333 549662010 10236320 922608894 239683767 213751506 759947581 666439869 482729404 189745457 729933439 712412760 126843849 423183211 945436664 606824471 245005097 528541170 888942549 650371518 793992215 651531645 753918277 56500194 772045632 782930471 992565411 928677654 606881857 636817153 83546788 509835441 838115685 49811215 65468836 646016483 622019995 405201738 324362319 838487318 735335517 273702649 374056995 132750163 939876570 767139758 611304678 363268040 67856295 86079743 748161770 751263453 372212106 366362793 711442273 373656072 946204762 543115005 163564797 642455972 118826023 864930226 643771405 875480351 213506376 220368557 643355965 512184675 230465743 352261182 731465373 887592869 281845147 900922470 258515903 635932819 315589682 532480958 121854393 216532645 895835200 287436925 985036799 46377315 766310601 330388877 503324523 884780029 595543931 151339892 287624780 760159657 620172582 355727471 805413139 209596377 486244805 15965407 856579672 302695907 808055478 321308220 333856324 10012043 303120638 325586377 178659266 630471700 494431166 957799987 274471971 779912894 341164106 798762970 89479184 349690529 831831185 74902277 584343266 652000129 600431918 78738666 52316215 200957000 128906476 243707018 296989156 424174780 224788094 240297642 963039687 768382481 75403316 366022725 510208478 456129596 362147062 431515224 295258012 788161902 499884319 565061225 726706725 523124599 699666862 259890227 183812508 347809942 831543766 251214246 584642926 980809870 981565397 981464567 697433066 877379690 808694067 583140379 95908989 923672194 281449310 981725084 770214952 254307963 619000645 846284524 816964042 758279154 652254329 624796088 291353422 213188237 948884547 173422611 736251020 254299543 465685845 685239849 478496737 611801467 84713869 123775566 659781868 976333871 43894099 721039065 313821009 376369661 745330636 72875852 210268663 733558461 429498469 988029013 122200442 970720460 202239795 456921282 66624242 152086928 129530759 348541233 879310113 740853320 233880199 778454614 690352926 460752895 646148574 753211584 405191897 767155742 911657162 443187065 934149191 905092380 995883204 505728557 702200013 380889678 511269374 264146621 168405255 335083820 296738999 856945889 254758033 153890240 576565552 821721689 81937209 178147842 230986727 987711174 27784749 941082809 693769990 462539690 140087604 123663724 833597295 527326858 661518269 360456954 551426387 325419557 397643564 167888392 697835378 762271123 859271277 940043295 614246672 742041813 40475072 220441615 882615552 707546385 277322011 173221595 252167115 216233927 922652856 692444118 830994532 505864271 671842616 914471262 304083686 393689355 787015632 226099364 204167255 178738227 987513909 665841763 410430747 292334588 623203073 997961721 162266782 703302231 222806284 739771537 204772815 917305561 824416131 483573713 264887949 389221572 541081437 208097561 562302469 834316177 919442889 785211924 689767608 976667340 863618867 691828046 636884736 468984145 893623267 850930279 383280264 818932401 971681934 539898990 560572520 80321329 436689716 875647345 938505128 665201331 857178669 9245018 196653131 665126546 976487638 200250583 757167188 362369819 941901186 140713281 155527611 7407915 449396873 418543599 476193408 597897997 54211474 887369445 775625278 8988495 944027664 345155649 872147869 913680756 872750073 212371004 363515352 500911427 411757928 217668702 406708061 947556274 595073755 556567547 914450586 898496366 127089220 298824774 627389771 654344984 108311099 487608125 809721986 81723054 452701606 194072788 60733841 993254467 277541427 751945627 455827006 121046626 7844101 160133031 780362589 186214147 104459257 284147246 539343319 656453070 87962314 408208652 950603378 956255082 965020187 138966128 287142823 106346388 309528556 847917401 15442907 803178847 356150296 75837523 705862872 741296886 231259951 914734352 743753601 480429709 651774266 168649097 53035891 462095869 375220141 560281225 855191291 196744582 751890 78851930 507565740 77312158 444904878 973470502 373246639 105453497 16210578 783338070 240329100 114181947 267441773 151894577 870192391 258037289 593414344 76773869 372822781 194654249 53655548 105429419 468198297 638432061 478285427 393063948 751006486 349202112 126840321 307483073 896856937 212500633 682965050 19990854 837659436 423576248 686803045 198208269 596188506 460449243 270185014 227856026 948087964 941026403 11837673 731535663 519405263 633573014 101713343 446655535 915115396 68061704 996933147 837842295 957637958 377802191 847460439 91445494 493644133 564577128 576829014 346156510 250147671 916088016 484994172 168604635 290354206 82967369 197420253 322656466 542404219 227187232 739502329 505961768 526575635 266155137 357100771 442494077 817451014 198360507 676949773 764397974 986460625 724965692 874059031 638786161 505372343 434580339 598326900 779952672 433088737 9875357 538838467 42889970 620379692 714023839 428889285 74960547 530825880 555690859 854784525 49312519 640149000 206708399 469897628 283225102 582283465 212395408 803620157 284042606 243277003 856965188 558342816 407516477 639050825 664580135 142923821 529168581 688625159 952055457 262604412 621162139 678593369 936909219 576772419 156705582 751646153 647662911 853611712 885915794 89528394 470059765 790741285 830830040 319999807 667674136 503082639 64139897 702449966 726781337 390621138 889510571 663297378 110777622 809198039 22998086 889333764 265519090 359000141 538040104 321710252 342822495 297434537 208566317 921448843 939005645 44165640 233205543 445836192 759189614 510279128 372674515 688438815 310537732 184818922 151043421 281284860 949804605 90170674 886241690 923957006 602555407 60789836 452780313 130035024 679970993 168136938 375511625 731791025 764063911 827361680 506292714 137902008 589845427 60560111 838541937 36934912 29762077 479244757 895929238 543774827 854997208 638235120 777772479 498490905 773029570 297540142 937049343 927983016 306597673 321372981 271490444 140859888 432147743 578215283 894344381 917978976 643391115 765156313 934795857 700093872 40819829 890626203 320798229 508646477 874006294 818750999 853866481 399405159 442384538 931178825 32985871 296541221 161829008 925924941 13502418 659750920 954409435 558444998 560567815 916954718 16625808 399413021 428700310 837558404 707248704 175530512 700762885 114477354 773416598 693445131 495913246 946321990 57966504 629316945 769727834 842151671 685933005 204569161 893335372 715381837 155408684 817929634 883836731 183168226 708203877 121339976 794356374 890365999 408897136 85116764 518086021 198393522 141582611 203491969 32557459 215923002 429479661 378662349 56842363 576966601 877276483 516623994 377034631 444008200 133511373 77491647 540472790 549154546 935100102 402039609 308327020 391706759 749645862 929193131 632846862 547833841 513549048 189160615 833030670 573219257 451223487 134964170 962271460 998941016 772814785 190171312 782476098 335458102 323547087 746514049 628584740 937876765 686432119 929831996 838677620 568593802 656687054 326757242 845813278 93159274 62263533 947967725 581339206 974391171 499063710 3859115 167130330 236262154 479627148 202515943 770732661 342391365 743578665 24796149 106572279 661259509 2889839 858098279 716312597 656126842 838652575 416324671 717230595 809932252 192054351 924333100 168746678 450775921 80053900 923484099 453325323 881234039 274143174 536193266 740799308 877104116 77988112 759956555 959413979 583438552 854918911 134343602 201907354 236877350 946697796 376067094 365410648 55185917 51418560 793918339 272193311 497941982 935679754 135600192 998003811 866370334 51043736 422888865 342461822 963107942 986037132 40651725 540200982 896432651 533160479 909979129 287555471 623412531 655761536 456639697 993575083 706143741 379017928 61441503 19514490 353486182 830339591 540689543 708473234 599853336 720132488 794239676 629617060 316580130 680048451 907270224 256897017 278090864 284278888 486969322 250277847 388577213 165462507 432603474 358785358 225725184 652768535 124843778 77082755 553373659 737608637 611176770 256601872 749853924 52464255 725390930 732876370 653289149 249152736 119631249 922187505 855928801 343084305 438654111 729260390 575096269 548091956 767117228 125283919 723761525 583353627 122414048 741295667 941622659 719671759 263659753 851736620 41102179 31428541 110244778 511035190 882066083 439761155 685061234 292434821 177809971 702590310 939930160 667634986 886508170 128235321 309329940 492092693 241882058 44935221 764967739 377948282 845638757 991895433 436276226 255909796 531276866 174301029 60688262 543279083 691627644 737448605 870145998 883122491 388023645 445003744 835361345 251848594 352036088 880853971 911799866 585207543 643739619 403498915 267112542 538260585 237638858 517170915 723460540 837050972 892417501 738128576 65182166 538173510 232364934 333577452 840213184 111049327 901753321 490486564 811630293 433539250 444862554 886880774 729025734 47579402 311828025 448200796 689729255 775776424 497350535 981320948 863293505 903992854 293219048 566879575 403871455 540134812 296065082 929379887 189427732 263667462 861220829 392585992 128685301 579831100 942446760 667561991 66505880 540318397 362114608 654122480 873388201 917484815 333519135 478011820 656442123 82164387 335943453 73825384 779014998 903724388 799848918 797217852 695303529 693288591 363821278 299234551 666263202 565589871 743882562 712794217 206609487 723339177 995908702 724747124 554289913 175867537 157092094 634561296 256206658 275325163 793502225 148541242 258531302 757004139 289708532 808243296 632579474 415171758 261396720 881450627 695026832 815832330 845202353 167563069 304639741 332232930 18597439 565866585 209925024 758564460 629118615 984271601 673039646 286484681 822448138 168451978 230712142 830549792 863007280 853270580 212756892 22918977 549638570 732756303 602068629 75381473 691312138 374786201 816991054 663991589 96085317 88874891 874838800 960516255 36237777 6607075 45282622 147037316 590976486 108117917 934188287 369692193 924135276 586739690 751696859 74876566 107823130 493462263 629501974 113658923 837990809 604760518 973372103 413468257 725147139 452006538 452987234 610499438 812647897 900317106 478521944 382631261 580722047 540064742 489100380 856547427 562711169 260319099 78961212 233947852 737688412 659215631 858812712 360962866 711005395 2137303 311063999 26918797 55646548 252754138 408928760 93138042 161278346 840154896 123800092 517840294 444886581 328464735 729449843 220889032 83777456 458121534 705793308 245916081 660890466 851081370 196830924 316075480 763101771 690129936 893349538 997719152 757186701 870964533 83126523 81726361 593700297 916082784 145273516 836019791 797490801 159905206 585741242 613155114 128021000 880504838 203240149 177471578 530853500 415520671 790560051 89514745 40645061 107464101 245577784 97333752 783368312 516176834 572301749 971378069 541848933 943079332 149542320 799416113 928275493 267025724 783746378 113626612 944300685 789353869 874757310 634362670 423108595 196991195 453676894 618381776 324139348 662511455 94920949 986763734 318036231 530425027 599850157 459415784 987994937 745228409 656526389 689176728 476687564 629931935 242092171 27315134 309136444 386289160 621544410 209764075 309885245 162482414 612852066 663538510 405931384 308299950 695009252 642124891 338286653 192303843 137102322 913421268 58967562 984366520 3276685 416775239 611466270 139050769 881177202 25175023 826950480 404143660 633791514 713121382 247468798 324994472 839551707 233650969 721145645 20900894 551237647 335816686 377306820 75224517 227461652 346365141 324181288 393281073 31252191 921133256 870721381 22629976 239200359 421160991 721433208 165003522 470936421 998551338 736754726 181956604 915964413 212630306 287132140 798584364 487677297 912682957 732128644 916702430 62211338 376293121 538504797 543183092 595380251 485244373 914352115 590705294 224873719 820836498 506672065 408284295 701082105 284243183 295925026 593185913 850539441 853987571 184376432 821143064 101023147 303783850 614833583 343507009 66557754 424252298 830977602 766118932 954882498 759233585 753017774 237450088 919579592 202356909 634582473 59230600 877018785 77804779 605486631 945238223 650227978 396951969 610545406 308997887 315495197 33559029 575216233 533620186 989217997 859351197 620818160 644457916 925927164 733330341 146377864 123782265 260298606 125977089 205715943 721673015 16786925 622090095 413865011 862432325 475942305 511193816 889686439 390298421 790187353 557100236 132022939 795373028 941534282 500609566 769480418 64598107 31082444 425430883 608240969 365888320 796998969 37304645 141701559 263536028 909374472 153648031 91039207 25006521 51653557 805814924 811165641 469064537 839859466 189093126 836769282 626736461 547273987 820486696 253828105 788190690 540715453 274068141 239760409 740144504 481666514 313975134 272308083 793167164 82974520 517966885 224726407 510526859 684664983 363936876 388183976 938703858 20325123 519266596 367765767 751781857 490130590 257845438 795076497 531497750 55151913 872574710 803460889 262185278 415370311 126677213 141575628 999627389 224823216 783841023 127710756 67994974 845008375 956506379 958401351 778222267 233588908 656850043 44294996 846149960 276840255 782901139 733531861 87548091 857905893 728623900 415565683 462278768 322393834 434554965 401714177 268719847 555200393 154638991 392951817 77675183 393359824 818943815 566766830 122873448 500402925 125903772 801894011 56787632 526399619 290276747 981005209 907482257 888830590 78165559 803302413 683363978 760629548 927074185 634268729 406303884 569794322 252219605 224920093 554476073 200029204 549270623 956788176 857526401 268387510 743003615 521639558 416110425 39066955 697470280 19789702 224351342 312714591 264693895 183141146 871298198 386750461 140632899 149727249 372032270 386211995 638369934 662455311 942227124 326485674 80784920 459518103 926209871 405290882 741358933 830096425 672636146 69592589 911444087 271355092 949063772 647065200 892595494 960540982 798526050 74027072 204530591 573682186 642381300 182524731 465094573 578754969 665786003 476265162 885128811 555799502 866076122 159386601 114848310 883874743 776242189 162757507 542906241 19233983 375327772 181984185 456237610 352480599 519537642 992093310 991816894 355744442 808769549 198499013 807670345 602488327 925642666 112518475 860814808 704454748 274382369 507479157 63449786 614348250 589670910 409976326 342762341 585926962 51465603 25233691 14535427 516379503 150909639 599063703 512839444 492328002 500589827 796864496 729083152 867634795 598797422 649091863 547400002 684431779 165035081 490176043 121624774 735680887 494538405 141184168 237333544 267144555 762597055 507846018 882592127 663908491 412190340 470529150 376155738 379039691 132990640 114020067 684161824 293002024 878731892 288335610 845072176 197716683 346042784 621638059 689511687 179504956 652533539 344423068 518570152 591712743 938630688 578309479 35589387 626367380 82260193 397618487 476623808 243444286 93212137 967867487 345448579 679633291 93278484 682771291 267605902 593545800 317968286 804617389 584509292 116188860 577258609 5941474 948235251 597954526 272070807 674842485 294465630 429986359 427899351 511969254 572411635 838813808 384745744 690199885 930560024 220437359 983059208 898239554 137609533 833824180 934079165 642878833 310677494 149945835 497715683 656554738 570905686 355878155 129027919 59018121 591051548 935905070 92222280 270507085 781315718 473507531 724717241 700902661 598006375 801613993 373935854 511397736 555197356 163934082 149247438 492434982 112455396 245762146 175115782 527937939 431629018 816032365 706006781 178121424 659399474 205239937 743894222 551841234 823864318 406221466 976530988 590893669 950877186 467764018 635274674 699263301 274913526 394018208 261919526 184980430 838074924 71245851 10489732 867063726 450767953 663674881 866664462 716310596 703476167 521878899 155986187 116131679 22325120 137049371 671741926 448337701 919287516 432207995 641208033 569700453 862688720 918016884 807842162 276157648 896376755 513203653 837696681 873853252 208384244 891501862 691756594 95130858 432527914 816325789 607326913 498820166 911588309 672550591 31227010 624869760 903652908 777038430 988846323 628655326 50610049 106041018 393212199 731359300 367771525 12948679 820849773 214501323 309229087 512114177 417127815 99776719 19397303 895508198 543049585 515455290 410351094 445237667 448010872 826703876 662881926 310358963 973185368 877622817 329550910 473244543 874602515 790521096 677341896 947778839 687397683 200534730 724792964 623180846 124555958 152709574 606282459 355975526 452215416 192377082 242235326 459025386 791098852 392661583 84398856 905253905 879371093 541603633 503355708 915527550 121672035 13746430 626538741 558390012 180418839 3044023 561392523 272320252 114816677 396588559 573971684 406211457 87942640 962346422 86430701 635228604 839619100 308275413 197381112 850671536 17639767 574166465 685409708 385227621 776288061 132261103 676485687 878319047 174310800 538683457 895567673 472555023 926282188 29872313 531254330 998414408 202426890 528501105 280519093 234332983 687632639 728945264 989329003 183933858 338200148 341481629 125544527 688154365 521709685 655514213 534525839 485879123 544645068 138600771 145466224 805075739 50489883 741890709 816679875 363493490 98813904 206205976 80903515 587758236 908928340 152566787 458064205 512360099 880471242 129460952 959999487 692007771 209106603 857268616 475975616 598561332 613619652 134110419 912446606 897277394 792220718 433619743 818330428 283962091 149829352 993935 680616818 305006430 586987656 674352066 415352472 835305828 73258948 27672190 231769279 798238606 753173171 236652430 396227816 214493231 635241093 505522787 708435209 500311348 234787520 52564453 616449604 222398838 65607675 780749507 329517122 109652525 790146262 474233420 503139675 585258009 898540135 138415720 618154923 802485957 967663252 844766571 100399715 628023447 13320373 928942242 181394661 951449371 722093584 426213532 393517049 205934623 333363622 447490557 744305270 30596414 967679281 266618980 981533957 447792892 469296298 446151577 496842447 641218869 361502167 152517671 260438069 873564656 208314999 525454453 1191029 646936198 203652165 31696648 30637745 35496812 461142393 975518221 139770059 498207556 421664030 594519703 937194962 548092204 565120896 795542163 959797510 74334647 920334158 299796567 469272387 982048039 602926466 903864039 351041036 201640992 826387001 801321436 271508403 62450238 987915749 121228495 702741693 162752162 707291623 831000591 743913269 301989993 740254936 742960776 782897833 63214827 72666932 387793161 751434416 875594983 406450977 115045187 82546751 912972242 585990841 371320014 284696330 409275202 174956427 184818173 180243992 993704556 961870053 668150686 1039685 226525805 43854309 522825215 171288547 786044916 149819910 64187803 319602591 553867226 70977022 14601677 691031920 280169715 454980754 265155854 147915328 763558204 778942490 495874415 230517437 486723198 508764807 484356126 440849993 864350239 457130914 898687355 23875535 863985636 594342462 758210099 776873082 668155716 983523285 496756502 278723347 189159463 990964487 66613067 295928380 852588241 650627101 687365651 611551315 813262715 442356778 81505994 169765633 708385096 269866542 368910829 169000570 893555496 703524921 572107794 534989343 904740987 27047752 327877068 83437676 459893129 610743521 665051142 992256670 758743591 951275572 131736824 689331029 109258050 610645087 775524482 779817307 977775757 413380927 391430612 459907951 427881962 531234579 754898393 778374002 364978894 342181566 464500746 986739925 975851627 752528204 970906486 998732768 590086536 121940444 818631556 183328143 905248080 426376739 817051169 848017532 425371232 681951889 368469769 945507482 974043950 15470424 481900864 466137548 631351622 340102202 406504944 448743925 248366911 620714412 642045379 737331124 435441611 138264614 528720250 879926550 726440290 211983333 837313074 12562821 351259329 2030534 799023684 511680016 399933977 378616126 207831799 483516376 573299218 507947953 394058802 878051545 777263259 246155969 651504582 338810249 515262255 645585609 347801807 194678844 184915883 404796852 298639366 975562358 819487049 128445564 473121567 618717315 406507413 510335280 589773714 833534004 521621802 969091811 435908755 699468515 32036326 65874247 720435595 478478788 154792474 892893647 564285659 410522510 643251296 805534497 185433341 623524859 194685285 809170504 672291323 193519414 97230295 791642511 738730357 606093214 498915868 286167170 217044712 730977685 997104125 298450041 85786355 681870468 548392113 538676855 747408303 907403268 947100295 602989683 867992000 436841702 582729334 931550482 515106288 860755719 454979478 116476676 5181350 565111251 531884966 358604784 501132508 410662551 444634457 452445669 238582083 125219664 782813194 417148585 377315442 269992535 642409736 111929267 518228435 182151674 801873610 44168365 280514955 670339651 345302731 585328804 508576556 223459496 129137598 789543053 807874376 845533879 111096078 4493333 485682163 603747094 943757817 101742196 39791832 488787020 964884437 593570519 312414887 947456211 734654943 150769344 193368452 711502772 405621285 246527701 345757605 351612240 537010555 78915268 205850617 414350893 81727947 624832253 926960898 984616632 972259843 785250430 743047523 160429570 271974919 801484481 913362044 120926627 205269416 555863692 31574634 678429098 476131346 895896360 364167501 705523223 558753507 759333446 180190996 830221158 90095098 544903950 998291782 685029862 363786747 351487987 697097857 423351913 103202368 668403418 384899572 215270427 744018759 256543833 3764103 518034648 183488102 842208999 405620038 879666805 764483592 197297285 361986087 67437579 111546324 29155436 642261219 8632433 348025064 418741530 12523704 13958789 662237922 433181282 198854978 752587494 850566551 12779881 227424176 276316855 511820926 465124545 472943106 905430423 274512254 983453240 149212494 918476126 363345077 318575223 369521705 983164658 909901051 760636016 793953648 556926724 914839807 47869750 10688306 339315547 495598546 495691955 174359538 829048906 989909301 3990796 674447591 127283209 237577154 697501135 463950902 686335721 14953998 239364176 71577711 583504078 253382248 44038168 493396822 682957577 456943876 685161421 841153873 714020808 356587876 164751601 222880265 819074527 288296929 62198893 945718861 491326910 350555960 869542117 264111209 245998217 612600459 531887142 929807343 360663110 398144444 840588246 319716074 446916163 87118953 482831623 67509571 156529852 984432073 137137420 391154504 757593012 456327232 458631977 617822029 169416007 625496206 796927768 600577388 347781271 307561720 369161695 515935925 538288246 947038066 292034728 203281294 198871322 3301390 251817557 808182234 476052670 348893103 311573913 73222805 835596726 521773972 674680 911911916 931129677 692321300 702666952 119958383 987496562 248372579 454383174 95860007 77456253 247829732 591066573 256722059 303669588 666818913 22935420 170360282 210167898 1669146 292166011 704206068 253091646 366499193 669786088 623579915 544803235 600239771 310738741 458301511 290957607 23721048 321706706 881827749 328215405 208130814 617455497 592355659 756601771 68368607 815716755 953992526 376862783 133626510 342616523 468818649 20617739 353416051 658904353 522207513 993659557 177848286 980612936 408805613 967671439 895427070 575001027 432356684 934128078 441984182 276598504 455373417 768544071 65762261 719122227 348133048 370267548 490262012 9312855 75759379 43347250 967106122 626488395 645607874 319465452 128023017 238243274 408762163 656714234 15761514 27857147 17036583 117259966 531414272 204092278 505910801 514081263 83632870 858143537 105577825 455409467 515780650 401409152 698553898 19866346 446854239 758483299 953727757 258046238 580785018 831738238 77260597 318186191 549864471 101600841 364889419 616821782 600189744 622107484 465816772 964537217 934215051 534018957 393697708 164846206 783678054 821119326 839886613 196445065 156230984 97349267 357773562 432705012 429732398 199825522 289253610 256403895 85788074 323992938 263086783 900991825 759477595 472618326 850659229 237279840 702715960 132414267 232643948 924786146 574832051 314618546 980031799 944657549 360745038 852976561 559608614 905987367 813002475 930338674 345281339 885795899 807299227 976242628 782450380 268853669 52357706 526370417 556971140 658414638 24366213 148694864 574348831 404578571 468814190 684872655 704373174 749076396 76357375 50620533 655319323 408533682 858171977 223996315 368718132 303543474 122920289 649610725 208997975 873553875 68726654 610178619 111757633 284273257 3952252 770108409 971822217 146742020 731745793 470241524 260109459 222648092 655479001 693732112 391486800 591152043 330149024 663078962 937655486 479778655 516827042 800036052 216812979 446861635 592658863 768913020 734124677 593580511 68717402 995362145 336109195 621217906 900190312 723565379 794566702 569071960 830728084 386922763 81550197 478156266 284458656 34149968 743079592 171388460 374199791 896518000 973539203 928377970 536492235 129720421 164808367 940257163 320346046 897038894 178734838 73591612 961602122 590077356 592158482 144003348 986785939 564672494 712044681 895952352 180988434 139625644 732997894 515009598 147593496 454241712 571119386 677158321 239786522 17223210 623420985 987481085 450491506 639782741 768314696 412895212 366286556 797632825 489151494 420110302 345645859 970384520 675894059 220135819 248470564 271450480 984277112 925931588 578565819 173273471 674336206 880119469 424163151 784844319 882867488 148010993 928027160 46406854 512637506 231276964 161783789 531027831 420074650 327405483 254512448 77184231 921646731 783298945 703716394 195025026 875554202 835762674 680614696 68318257 329314651 582202162 924380973 31571202 362078053 273149145 440524622 140588518 937953329 875569558 841816632 340917959 147680206 891036727 927565591 141943163 597529610 107888882 460966993 904259126 176843456 480776862 769811186 13997779 335798615 618898282 564236586 314759059 644728026 45776692 347938827 810631213 958020677 688590177 146810623 754811764 560744408 988912406 443177414 17076983 453868983 622890154 271013094 486322762 644782074 458037413 335780783 962280039 543710041 806779604 854115271 493825473 214739224 427964990 394779339 485783846 424793503 344192780 147934496 660913291 543449995 621033376 533230105 669150355 231562448 58772018 706185974 229036544 309055486 284451101 198963315 234543893 504136921 259113369 299362578 153009560 423191241 20813552 215705694 934028096 163461702 431560109 392791286 192044517 360091458 88143800 10713014 633090404 639519299 17296350 78885706 685694519 21778130 630737271 826291132 310390705 639878190 389578032 758450602 215643343 487308725 124287421 407997632 677411161 876350779 428273431 586281356 67982167 734930720 571016700 557417398 376984141 298774680 950495206 324970498 583192028 39560351 215566651 813824436 503346173 206014224 597784026 950688635 547667009 110069584 30563551 29348515 118148457 104824059 364318404 674546550 735499953 795924937 354302640 269189082 721011847 674469901 338531137 669311091 908857857 600534651 234640697 598573899 523379596 683206262 322269264 135991157 979042478 223255970 867930477 209468201 690800951 578141864 2181542 910252075 748730136 76052069 109798091 265332806 135116129 601611825 936405281 585107892 278107163 986088167 208763695 91435419 418624646 719907651 563182469 656724880 157265039 264597684 821723152 53787310 202422663 267451230 412188033 647463137 464070194 527691182 880537334 179657105 484727070 921003588 718392614 168362867 473898430 561919302 42119976 768832966 350579802 224702778 33189645 308670932 89220109 732875688 487122708 922818205 759775176 325691223 176107930 735466825 766201460 818947438 23142429 12263554 860210257 339411506 208890081 709036160 593036273 607293726 78839607 180054808 47071874 849015996 226830418 235819600 375992533 963663506 994878470 157084216 931709239 850476535 257059643 386295055 791000878 671557646 651446042 446273721 896967711 54093457 242149999 451626386 878360850 376712397 34943196 607209102 768512451 976652224 482063501 400990936 660722439 640285922 70805259 380139669 809476521 111790374 698267256 122390274 742325928 314473556 367384279 923705352 692238075 388116359 131548163 732999565 327757983 60626124 151391541 637694342 156708954 620179127 996738522 826174801 977935285 524282575 140534188 615602863 582504013 913438367 646942208 174563324 962125498 947790064 376114288 447774472 818325256 426881574 47636657 865038784 433740611 968653618 227016942 711184257 387915223 882196221 312310939 353202573 546923154 697787309 375738200 312283246 802682745 16178530 616674320 977662603 862426649 921071197 658391545 652102333 257915389 871668515 775950973 980691502 893433878 122115103 210006895 846368506 346369697 911621799 873276881 646601047 854438134 75497912 862656063 129577807 545134975 49210532 156843826 200445 423707726 638766221 1657549 755768375 962162013 956972131 861756412 709237742 800279939 996265675 408046839 839608683 144961800 979658846 30753026 140684495 26012592 139332392 937979011 447356757 956719451 681481817 455312989 844676025 447946006 739449885 233641112 699975894 122673458 85475560 566199625 511975470 797658326 927020260 240454536 623629199 365123767 701366995 360810554 34546021 165200797 352834692 344964431 336453706 3813447 296845468 895699500 9640409 222321827 514596035 719162251 770892022 392180798 740869518 781679724 927835192 117624849 910360730 10109166 632735593 432193093 35885631 374436691 847701449 59356063 381519815 858718502 123342851 660981639 864653319 710431888 595219900 128424265 300889 193610157 574834205 367919245 582252093 342665788 513804499 247134661 47000962 659108018 543257739 830807409 712650013 633601456 884722104 209466561 651232643 316832807 366994586 788396342 336386270 789073484 640666413 988653539 136044435 887306435 943944556 10803801 766104120 813655840 735776936 350373487 524737384 141101579 625840747 902442021 617403070 569143976 757322720 718962250 230806110 951155794 215612079 448786993 190750226 212816080 870128414 706354788 632915838 839300071 409730408 200961486 13555976 357017423 376197923 569975647 653552972 296256889 987644168 924675031 545088362 96536912 464630293 279061634 647295870 296792787 407136203 134133122 646631755 55422802 8791332 282963277 430909200 588821976 950440410 74885552 225804829 354380244 273613640 478377072 903488936 405181803 947825396 261933552 989107712 835712943 556792313 820848138 678739645 478516038 554339351 464637726 423051973 92271242 644979494 65323225 78221776 670310810 578092265 503286150 810542970 490375566 300844244 224679548 825792671 201865599 524565581 803704470 721120882 811243198 841480036 409641191 733723566 275567521 796073505 729841443 765880792 454353722 813449393 866532850 527280534 602452694 31993149 488796530 184481889 457146136 982354656 954781031 102455272 536088523 98832531 118170625 765854640 654026588 562906793 661897275 618229962 117600806 133974632 755454248 415440814 107771966 531955707 187049313 129199181 190246374 407925843 878231056 363096464 78609752 176096028 564708829 251079352 530765876 788543864 219074261 433356748 784631605 531288919 626864969 445626291 387817958 93970341 632987213 597547876 473112406 451546363 543152669 943750623 7157284 711816312 149064145 281167946 150115282 811310638 511927 814230144 753688054 506433615 329065266 840334878 663617660 246145837 982349346 256293118 872157504 34442014 243197074 957441889 729175788 369215587 982016811 983282278 320707317 785378609 514420989 51819592 26978954 943932876 38501015 16425604 644795565 889117304 57504503 866773061 230424669 963801464 405430598 489422676 423969408 443475582 955233263 408106232 149336107 598316357 90373219 504875047 343946378 794249278 631225782 73207536 458569947 338929026 495969293 875138240 278122195 476772640 434817485 982643668 953472974 630112812 949475999 215634808 429162262 440998405 659268246 532001562 406237080 174916983 907286060 275421676 460127526 31868607 33168310 584903419 768607002 999036991 207833412 609011455 521088192 519306132 550398487 43773815 853184137 31090134 705220999 406273865 183861093 607884756 119127730 20993148 865563682 111195204 74180018 392386935 792930438 978867323 135272534 638616376 258216303 503147710 584268541 559591540 54940527 810940291 739046529 678406229 942582109 374649009 536282031 909522875 799005380 229403680 434346703 836423583 119734678 158947049 596146553 981136167 22907344 209012206 8846762 517997486 926566999 433031363 816422066 149637865 805367940 253588987 411704096 64598850 99401612 408427590 607411240 482127901 283523241 820965079 685383932 386553653 457382299 709678438 240584893 264449634 535959419 475036168 968783907 47280809 221967068 829500939 668334660 74022174 162484037 513884970 455960805 399416393 435971890 219805907 125299348 356066746 143259207 497377206 9664118 411109356 544148370 176796665 564682988 574172841 340754356 683258702 41878930 16068006 496103834 665411166 312242571 491855902 957576447 214842243 332982912 486408607 866769858 576090472 300986027 831487334 257598878 334074087 598155711 11202054 927325491 997432771 771625979 147232817 331059889 346683559 892574616 792160681 914457187 135500899 890607714 229825211 201017891 163376237 298317401 621709342 632818562 533222737 257590352 304426923 97205744 678959777 991078110 576534645 140350593 537257374 940782024 224173140 547677087 325834545 678717809 615487176 841271432 161428623 59655423 861800671 773997848 609738093 368490903 897883956 937053092 640850901 634585706 801708686 314687065 684823955 554296337 432086277 327438178 752294042 610258867 743562198 446680449 539650146 702358336 936290289 589166319 797247013 343062088 268959608 681897432 423895015 401297577 106500396 525099931 861236946 598827614 432231172 371034455 247514857 913182594 727329568 817309513 462549220 581031873 606955506 350837167 693469551 807602885 511746113 14991486 819001944 575699755 174801681 657751310 622537294 335550661 391532434 342945073 694379541 802218844 674146844 223736601 791204558 498947789 140845236 960661435 906702910 916029574 273315601 805878524 192883327 377632671 102065457 929031429 609894955 453703680 891688339 342830256 445215130 217896832 709319523 858644521 561389889 110481291 398221335 301536672 928752327 155614524 971778146 492374251 546785255 902868723 403289905 598188367 762703065 750257801 932888019 44713679 775113260 320964793 417701500 104536616 893015987 304261280 608392685 344201838 110126653 58103590 634277236 295059633 642751287 327183404 160049791 136682647 245337590 877928820 772279221 592295001 336143380 387628173 610815919 288971325 508583268 408929238 269073172 598240686 85998945 314806533 807571291 375854499 791114318 247891915 217795785 961974170 285249997 511319815 816542123 374225506 497506312 149305952 3126008 420195539 342784708 265249444 902082695 50920880 70276701 280873896 571677806 910567685 80402616 521282458 842186025 13911353 551404728 703011782 617350149 171861756 952653711 572944913 28847063 475394465 87147886 108700143 25388973 224434097 840523186 159356878 818492954 453662063 521094250 80367079 222915357 473081215 643509988 614136767 943727032 507051912 585092626 956863419 870150042 776899517 506122132 41964334 627397758 121677549 760412702 75892274 539593414 235868229 832785260 218939976 472980950 45859110 126124587 280133496 480767382 171847296 796171129 533709738 677952087 442863723 381418304 977074187 687028998 566928047 393454865 989445104 848171973 469814754 305436436 913689719 268806000 541028019 288559196 402193032 983114874 870181939 363147627 605968457 897532341 933057288 396880867 842771805 796627630 773745093 622119926 592477592 596291129 862131570 229976778 113988201 851437509 585737763 559579551 355225045 463147417 230129588 132187514 277783866 683284958 729537430 723293298 370609355 235710391 293871765 395583821 417076087 371855736 221482357 420224270 892404283 429869024 757335361 810813193 993828979 974004319 576879708 657189118 157199982 305736953 42812113 145536815 781425589 730946587 599865179 436383028 739847883 795803235 330036026 644427587 802508872 34498475 900499121 652867054 279177183 207803811 596082739 51472630 747914710 456096011 859452489 748311498 954769837 612404768 844641170 684721764 743963699 456361685 259720601 638957964 904917174 816476907 839089840 293584743 793285181 447464877 277551036 616250967 927542562 648288787 129059839 177701175 591976276 149720 379066148 542225169 818262359 561153362 220638389 438010099 389888005 598688191 78981392 380997230 866464388 105091592 931048328 922519143 854379923 187192039 514407733 531825253 203486440 896230617 457133469 997224941 529506830 337925224 687572243 976750452 701317423 286368 442899263 980803686 337246708 892263445 780993938 737158481 580009235 860515164 947795532 818678603 946719307 654342034 310774656 432469307 232169137 843291367 732578414 502882756 485848262 334119608 248518513 931166793 221511141 546618259 462446066 339054531 658227757 548334206 404849565 582901913 654075520 857016297 507068332 594034268 51764181 521610194 774123398 318067993 701300154 985825147 451271890 282677026 50301498 809054056 136248759 723017861 220362722 407850848 392821153 814029000 523325070 713223461 232944037 403892772 719069466 135945178 287245593 704283640 565888968 2723012 212912225 558578387 12602431 192038041 215031713 120844694 81616541 35345991 637783975 383676077 216195127 415449607 136982957 78186163 135789252 922231678 518611608 833810196 554326385 848551319 747151673 973428275 805275303 815451962 674345191 70261835 307777772 32067457 211592077 317690900 498046615 264638999 580448952 128178079 101303442 717847654 351754854 895435758 365223168 669017244 170711291 381688265 909444044 845254803 559683945 714238974 278367582 47545937 756329093 493321604 848978012 671571608 585740352 179858962 706544286 475964746 900106128 934011790 8710029 424843224 125562542 410684313 900632380 800627495 394585794 570149968 245683839 94085313 962777574 842570381 26304661 175061342 675787802 335097568 731617214 711125331 362677064 716575334 648169583 558549416 451754484 110055509 649904900 267533148 391990255 633497541 819869635 509476974 670543108 25008814 420442090 335008717 580881290 971762404 551415224 174176209 618439470 30379851 940878496 536412729 312920117 5959757 5026166 500936517 232319965 54756229 108084306 644131803 138738790 186544249 801440465 243416743 459291257 528231722 844856 874227966 528708456 249136796 59379505 880408392 407791025 338762047 523458101 167293820 270731108 477141875 754808859 419889020 336520630 786459765 607482384 455535859 383786664 281117104 934362001 331983520 809803706 483993106 114813999 244368455 978642675 941404742 917546083 637465316 249982731 226526380 318902666 487567367 167544111 550609686 241937099 80328301 412095377 188059757 499115080 995642650 189542728 705565858 147516194 72461674 989195341 28444444 826724156 487131737 522014177 506883601 79271621 485530450 764119765 267168269 367808590 111346737 241895760 254738420 640108401 997768764 305507903 826214720 607121810 384105967 232080262 79541819 823433052 299051606 50344150 176972319 801383677 615355403 631653470 145299909 234919495 754612314 374095958 839598210 32146524 957714250 744858739 298746753 2605926 343593805 753293174 366158549 902639182 709835491 969500483 204118411 785388521 673302004 544902187 991458439 461303058 923066979 644187314 412708147 770395230 790683347 300140092 992304312 273897047 711309246 465628026 377486043 314641557 589361712 813492695 901599936 464745885 551086839 311983813 893191697 908436021 934559355 400215516 479349810 988470368 69219927 529366812 999194578 950393189 394747761 486455777 332200446 377173171 803422248 289663179 799735914 929467100 418603098 589617696 599260065 666754033 730138900 76081202 615944011 763088069 618028531 246502058 333003705 438321449 132292057 573243479 124552412 514184654 273110257 736853970 169224866 57270825 375096851 829619182 877268757 29216171 771060652 616557884 681417659 449593645 638334278 865149659 734632861 773865341 513816577 574070547 138944738 724563836 65060397 381313218 917052678 162028243 733249904 302872109 395829422 46334472 375361347 613360331 156434270 353185469 703008938 918790114 631320180 70573394 106533800 646721673 947784505 338601407 9854746 699339003 329412625 518662564 490459427 66020743 892908189 147318649 484188365 763689053 134185807 920431671 897764845 784666367 649612002 90650951 955963109 652426928 127725556 115416985 699698637 571923607 122263187 284586229 261196880 1350881 840649933 471310225 408638735 79671213 717257279 450783590 274159612 559759700 62646071 336105177 687999563 511381750 957211509 267509925 853952429 260126161 973515069 310379340 332276134 259947887 207171903 169692207 809857763 663446265 398815277 448268687 782663659 735165225 874961072 995907685 459278901 912240933 736470774 581952802 821588899 895709182 373218852 46205946 901018090 936781888 422126376 110172969 466119235 253936382 773826131 1260639 818499275 509221805 262802741 607471931 704028987 498915506 399312969 727160537 323391605 94166185 432567561 33044816 983145761 771471100 71426554 104549455 442787088 139779213 705360908 160585366 874488851 309621526 351488581 480834999 195182223 692719192 380708650 164986338 795528939 755299913 877190989 914294484 174199151 559841895 49743001 823615271 162261023 57075469 962939243 317025145 810469028 410767614 542142423 203402285 160398203 412754056 734985280 987209236 160699718 152606952 984117525 426305381 158849774 252019152 411123276 79512028 76373775 232910750 723115574 17848970 625600379 436835100 67622975 920321097 839304012 815208190 544705341 338197686 591580876 47435970 756648203 53661629 724172972 273144334 831915118 201544993 177533122 361259846 650035318 309872991 136195631 678013853 252978898 192458986 692812380 455091325 211257668 451877273 705409390 887876161 388736092 128947043 849449594 616690683 808670394 372733150 320928553 180686932 364051144 341334317 77266663 398073840 244090402 718795316 529494689 466804445 310337661 847274012 787938000 924892993 989510224 211057437 978691248 678758506 815388176 999297719 25368654 497364830 904517491 845116725 528142293 799488268 418128244 247265291 675206723 589443839 888170893 76169015 677044301 985480559 562848855 492207124 865203446 714641331 38468006 270502982 774446913 430667684 782485027 646103149 475159656 52616817 353540726 350516518 93964487 513177771 879181899 345778642 14350949 431906330 15680797 670870248 517222364 527834762 443946158 629256501 813748976 867287770 670069278 149748451 489415983 73745818 730529786 549541776 263905937 408159163 514209042 33217784 730228657 479561480 715459673 259327578 145977697 129283344 837210066 9775396 22507629 826678087 2781205 824088669 450134958 968067826 408209237 983493046 746676641 848956046 598697378 200666527 328293086 721763562 734151931 260930459 202214777 72744146 970683937 453688365 387590982 757520198 343708068 364407910 22090038 753605771 265296489 997794211 992200837 985348764 642688393 824461437 535477249 208988863 503557728 273574402 330796541 337672930 219242709 648607428 129780262 730916408 432029609 77741757 855934292 14531909 207094933 840712330 146410816 154976043 169330683 938614328 259681457 727948847 197904590 883086997 156060400 59992315 902334581 314103091 485643011 249848662 906240106 711973415 60307962 104059325 67904647 943452203 153328503 337110638 531333935 527283336 362886763 690144127 220231744 410670921 301798647 651312575 129048897 322680846 358185587 98584804 298404844 785008820 62164439 235392076 633253584 920740247 1506549 292153525 343907962 992678417 486067587 538697304 73576093 444195139 220399257 747462010 335071139 684917954 61939251 824886286 307711162 551408271 488771484 585868868 394537610 697699358 721501900 855693496 377570864 905277910 603492886 394087805 38014167 89922050 814593609 237751595 104907931 485097118 801626920 758630928 772715089 341887786 102534701 211640840 535928062 633932791 746162000 820183818 124059890 902854481 265285653 122111036 222359673 835269119 858604461 387259324 863280079 2083824 424409138 691123840 370318106 296821580 708858195 390286810 587536839 428855963 145112049 518221448 932719681 93079486 839300832 788966570 387255404 85953472 566096872 21105961 553641416 813979946 914231610 550840488 856241806 183197467 414907381 638473303 604179637 565125300 976324290 13789690 463819225 971663313 44484713 72127506 758024206 685638134 470426016 406671957 183949235 632193556 418346925 539657010 718083433 158955166 544124296 19550087 361298646 396426912 154452492 372119991 892483778 493972852 143413026 695535666 283607458 298649296 789976568 22353698 869773739 114221294 229291032 992490112 932954318 26794231 731311452 921041711 258467363 137265815 371397976 49269995 516476659 61063736 353174257 539371195 137010896 86022932 418411119 679721045 954991099 842364213 757975583 660400414 697814926 913402910 929499265 789151434 58705187 694731509 91729340 369770480 953207082 796161134 177019408 756978311 221362913 733753178 868506482 100808181 982561919 772782435 133474441 35643544 4331075 943484827 370567892 421328624 754385981 567983127 122606160 701220043 866871308 109886553 849718495 227474995 273668035 317834877 175025642 480927920 446573094 117134410 199667773 405832706 839743417 582351094 329142800 757317344 50850025 29794067 675367880 735628550 201381525 279374098 670496812 741151736 862123360 147784148 617277484 529773710 343308412 583229757 721660934 968160072 41329786 371744720 926494082 717490787 78110100 173208274 547372333 600437480 292193636 531303087 228038640 194951289 380527737 487409574 424114197 899123054 316866164 959532890 960045570 29626718 139329320 308995720 900132443 651692888 823384202 180505901 348076610 501153939 786532327 836391631 258508482 490569761 283534528 469789749 105939992 383324355 346838296 91083732 799754690 418989320 948646494 766657936 882720570 537022430 469477296 421466854 652003176 105592974 526619594 668686345 426707771 619447204 368236011 520802021 716536160 94110394 243897519 996461302 97854364 307003838 527100181 631615753 942492337 8687473 573823734 478684934 918561019 935255221 395295180 837589223 297426416 433256136 619844203 158831093 305595351 37352133 143405140 611282834 82311570 19394640 499059185 979715428 3631364 343236389 242313262 68258705 374995611 710688155 165426041 762057883 676056078 745125028 95241531 750189875 686621992 497474303 361905138 761788932 818578200 381103076 539307338 23843773 322835546 798185147 377825481 543853976 230371243 662290312 897995034 626954515 549867645 190570214 55046212 868312611 523682400 433594905 916613857 383086632 415603920 240487307 104343277 242777822 283683171 663917017 496902864 864934662 193497263 841332842 208571982 820769238 78690028 489108828 922594729 114426309 623046976 791498841 356637308 630924011 158850187 478335605 661921244 356261370 979866805 266177925 718178967 766734850 872336749 528157913 13895745 84047402 692626936 38877240 417495033 315652935 528897025 47430092 333219653 782962156 154332293 142935063 865615964 455622851 171000990 862796850 417565760 248354286 420968105 463524156 796779649 798360489 85574967 617242132 393375485 937122529 454449809 444267476 388119815 819533934 744171695 248267308 338682654 545109150 752448052 72293120 345693676 919571575 559900432 118074263 153273702 308770546 948961398 915155426 579744313 924138290 519782421 863063151 656084714 395629613 208282515 406527203 420377962 549104862 242712266 592705022 974924878 94446578 277393797 280802123 708515695 830916037 942765777 986268040 111663926 198425010 20377869 318513426 434539850 415781427 850887075 122544575 636929535 824422991 908137361 174757952 534579155 336002381 530772686 736136245 704986618 667263961 18361976 13450645 968007606 247360372 768132363 594648614 897964844 842948384 575859936 634521012 741736754 377377690 440374371 542393460 687815522 832817674 635298868 238412983 548490116 140822875 933895343 200134493 570681575 379853912 805984750 310107767 867905489 262785775 867920452 651764163 381724901 846060030 615950421 226322 212815350 39816828 987683910 898119764 838964109 255408243 162396078 412325962 812465087 755299307 403225830 896648262 325197443 979560545 652187065 967298229 143528492 435003994 229628971 815738689 44156087 936624996 174119510 955451912 95228717 780064343 548546810 879310522 674020287 384408162 593438468 847808842 392742442 340299297 694773427 581372413 382302043 445927965 223013038 815036021 529776311 951519468 823179691 150717469 685997467 674405680 676593887 124392515 532868955 976292296 368406859 683526655 328024888 727380982 630091162 178235477 985542585 896564320 671651419 140162005 161040425 416077881 407884108 28932084 896098030 347376653 960187917 799211658 859314108 805813661 15868229 217336711 821560466 161551039 180895472 540071183 49144712 482086613 973903256 452884226 596036342 952076076 202350850 387501077 225264792 363330972 305281726 643747614 983022115 728446076 846941879 327110434 153289630 674832723 821204467 704732718 855435716 422830439 152926770 966912545 286334894 300013418 619071507 910751294 576215323 654114211 308185584 173462957 497253473 797090069 392902554 953008049 391900827 871875149 650928450 635586215 618737239 402036834 758799203 79564545 3542784 310639531 397197124 508827872 615482823 167537103 690817191 345594388 640497543 494755602 481039378 712703814 475593890 510269801 16148325 772855029 525228671 428657400 862936079 250726868 217022007 503641563 982957225 952341260 49387744 531615650 3116940 315883446 11178700 227485620 95910509 532872128 276877468 949630669 457126238 328275346 532678424 43752515 633473404 79438921 114111424 705610397 951585062 294649513 385791296 119288418 829565169 433131734 102933551 890496505 763394776 986660940 551268630 22675007 408258713 179871808 618774899 602873429 975434589 574695512 235978076 59316036 679486736 427831562 855846290 453298923 618347345 254930180 805547770 349791567 665643452 407030545 264152190 246873651 428474665 592707269 882675726 915674361 501289327 672924573 178756862 921107729 483601561 755038379 288242491 135279650 15830794 969712159 133934019 959171983 222952714 493288108 714263462 400406177 470413061 605625475 745939581 932496295 783749856 51370314 821608158 719382996 753964166 450544616 137108789 299514112 950142340 659085327 270270152 356947402 307204145 341174277 483590134 406250552 707330715 196048917 391066799 22937753 484537430 446053384 535330031 83454339 955812234 740207069 63963386 543987450 653474856 998533442 14887416 246487787 438442691 353122583 828532533 817971399 891471183 994825840 840583112 659826987 455060427 240496301 635660242 411842547 231653407 472288603 509052867 789227109 656053872 167605672 833175138 489290595 382805263 280393983 178047755 126665841 9296058 973194992 57936132 129124531 867843495 876051465 957362583 379287559 254865794 450750834 58482798 7992321 151699312 663636180 531030430 889305775 861161876 895362222 611483760 966650582 916504517 874057252 527893363 752906561 774401587 606844200 68850207 292622060 817094221 337094243 332123683 976299016 689621860 429287267 701202899 368555348 643907301 664636238 143352331 703183811 434985695 773599539 679081274 778604902 624950767 280825906 256813795 413850682 916420362 254113695 356831283 618742453 494812696 5313462 625436036 782626579 287640482 611105281 309455444 371020561 792788563 262076584 464418621 541892124 439759202 660568473 325417414 465222074 540169003 281972787 875775640 55713565 664245281 663844121 195667925 897083255 701384672 300283608 615754693 10721688 551251603 513307018 211571160 320256719 879331266 990994493 487001428 496130480 546438786 135279957 129529992 12704856 954880480 713434725 603888132 84521291 507843955 364486565 626925107 554567038 522894850 874950833 527568940 411001991 278755329 570789614 728851159 338763333 633110500 895532515 83820394 719928926 391395290 112629787 300473311 357626401 96667937 953268261 778328916 140370915 794127299 404775299 564446942 799767093 953074276 254870701 896744137 276758960 227603693 630556802 236873219 851525466 810792918 638853957 638668020 990534233 234312274 260258944 126982926 771395039 348207529 615040076 269385755 397720070 151744225 468561149 466951621 551974162 302749888 999522943 773911729 782149149 311404423 924146069 460630714 737884885 296833548 350449945 882643517 251209693 910418510 927684182 661693405 955368892 25488097 134905073 566931211 290661082 405178152 74662084 615122071 125361674 503125813 660058459 856580660 598720844 871630895 264929521 897225860 713768839 196955440 366190687 869885798 236431034 615380305 982938855 795095965 32169090 120068072 881480862 650093855 314361111 649731607 174392016 583389065 800879502 260539329 509934347 713469844 470247938 929211198 65631189 691761878 180909136 456611379 847474614 820405549 567578251 772161380 284089279 815459626 178179213 198884032 325047217 883247082 989796401 91240631 598534726 314307845 805171081 97337688 105940783 972080131 878616199 789804526 184232155 966386887 401629104 623691985 724190704 283670606 395375776 131191020 997352341 230376864 924588417 894753701 875376078 475328609 545949210 942633772 421922379 206795412 156575303 170332188 609265591 432706378 875789825 393031131 477568772 738704968 745357536 101963231 320816671 644242459 907012202 134197880 166331732 863460489 148938748 128893595 423669863 519586621 713112804 942687965 87728594 578711716 693422762 634720720 900365236 771850184 919264252 220309597 323685744 15505653 234842099 709752449 236810326 658037135 463976130 120083481 605012092 101386571 251830966 578950774 915688388 251977199 960023190 750138163 716658133 849468726 863924908 52926130 352683119 80413222 541861673 319576959 957165678 248077996 30035254 812479990 788935116 260155286 635833324 885527170 588594090 491622750 691084681 961497713 675033505 493421292 987332780 108822855 725114347 73414871 890978176 779243503 611447053 736176532 741835300 766100012 614498080 394334260 188063696 105988579 385904903 868637378 710340795 754390716 778231875 664008087 723211737 171651708 593194983 824030795 72193224 476947332 863409610 253825057 881598224 37069678 942308257 158197510 204054178 998853109 303107365 321008169 383607008 687215952 86616399 705738984 280188289 484676411 110720870 517390139 596570438 706231487 805305409 112906148 702131565 720792077 487616241 805481239 754473847 152098599 317868219 958437104 947586008 697071833 35964250 723783904 400964651 63010471 386170057 582881584 838209730 88480229 324904719 886266126 219872891 254066449 598703049 322261477 772519859 750534480 454462464 902927299 598028311 433724770 483090110 603787745 505727519 51987216 941515730 341338487 66121977 709963123 576998685 320276529 189342189 932938404 854577941 713177934 20208417 778634981 760583334 481498642 38785618 933357777 827171749 984720738 579644351 766174114 340997570 650407802 821219485 978225650 597795385 521773319 158456564 999557208 858727146 20450754 948670887 32660056 575198797 103212084 167776640 943950279 930353912 841563679 309543957 564319214 246181700 69453391 83330622 225411785 479257731 346098422 541234009 612884225 342679791 499795015 940375721 979233056 517188805 317851976 853718163 218352052 794689479 208924183 170476733 314714808 372476520 650488633 555799266 90805573 426822911 806083670 445113022 407373026 296018452 616183883 929320369 815030341 425253571 14362994 235109470 230836874 245488644 449515504 526740510 518859306 764410632 113734222 561105314 471786995 918054939 268443064 809561214 194706716 487958949 984974694 268426269 775053190 234134630 745929998 275384140 423486326 549410543 27760766 808141933 326305512 110148139 204664600 53521500 33824498 529171350 977499667 514251637 339851975 491637443 546015905 852476690 389430193 837953888 256607434 602875999 204228469 40388959 589618201 391299580 915741951 996008989 949104772 547938511 282447064 241893175 308360564 842966089 237833085 156420626 367302834 513955947 60433185 22720194 886768183 778269585 838336410 262036614 12036593 559759884 160042794 478293268 950335509 65595863 491948455 704593644 957681115 766609323 479162785 264698936 229932592 346402547 313974032 910093526 74957641 458214988 497945538 690138697 607059763 192848515 95465591 511772011 847037080 613652192 92968523 407224817 820179902 268470211 564854435 718132229 468789822 970360675 818632858 215262319 821060550 945584740 376787337 980453878 176012773 474101594 840834789 514254294 403040338 146780855 326587364 269730131 864462366 855590398 514528997 301731585 871457442 836896340 425553240 222223321 234736614 924339539 122404509 481677004 318189925 666557400 592977851 356518561 17466648 701161234 556711275 896800366 661600053 922724567 233964877 601442578 965886187 415221334 742849149 215011832 949032879 60836899 108591574 862903481 593948117 42243667 378980731 767476590 576233793 387983658 581157301 259116315 757718377 685216530 64952955 634424230 257367466 428153331 361337859 506567547 229040179 73223514 648658611 447993893 113889108 814207391 487405703 335043113 492074558 586772167 127141935 881742408 349064524 593388529 87639298 479842550 755006724 554213854 998888996 284845358 794467286 606425816 823350606 548835647 930844272 132954017 446040545 910275852 526040149 22673072 75425841 619879899 923081813 942177394 404531024 417633318 438341523 148453028 188888621 41932862 611762250 944478236 550601917 592546363 98185025 138948627 307974747 530423753 36348861 207977386 509750797 699735707 868194869 146763623 279107436 510859821 465098096 913980961 88271445 531893226 460417699 757380582 208676911 774351069 104584214 659826225 216990452 751167592 883380341 743732301 383158809 128565253 974196102 567745580 399518112 150715889 44057347 986776540 875935760 272817544 883933960 482011360 379912989 668798812 726596399 706526648 451072185 125862806 599819218 468415214 357425953 691391110 573005908 439064726 165468006 262755482 5516823 585409521 85111353 595303542 666693443 211262563 728925757 623346979 820431828 485580786 90791286 322670015 281210677 748232400 392238757 461406360 59313030 881046585 386764763 555362772 735735447 892576690 973458807 684798031 265175352 733029728 103448007 430641179 350368153 352511431 202637181 785289268 416023640 836489207 603710122 409937228 272791420 895817850 777988371 145010726 7208187 319876229 597613608 684463255 989976521 885149402 7338600 158246074 63612815 714087695 157733369 388367168 204953749 56609464 311312451 321184515 825522515 958394723 999940923 823836992 693849404 547605787 554947238 698521292 224919966 749896806 680172614 337936512 995833492 601259291 850493556 515541412 211847813 430814321 907948035 365055770 31428355 911508091 358914232 19006812 270009457 581604039 955741941 624635768 671183020 917659782 334381486 220125452 839605231 102208771 847715304 522688279 41666956 127762441 990124248 680122474 296296548 169749493 947573032 957812568 175189631 357596345 586589473 545810297 693044309 965414655 891829878 906259749 513662715 737302977 886839588 973040602 861211047 512064150 309661111 824992265 497434422 51360482 518491495 700386170 830308524 315296242 735892040 222191796 594847974 626027649 433841405 547566122 52996529 675772862 253739568 351192844 188705873 237448916 898271971 861459632 237451070 364749975 312659304 364466542 606989730 606026934 875082113 343600298 426196148 689842821 859659528 405930128 439621915 486773039 335881576 112910294 269224253 177611989 142068919 684541141 995357690 771246614 364521411 63657516 706149526 815317086 282660526 699578399 867186589 659437073 188253387 571167298 51637844 853436534 342235358 948206175 149457562 146306176 768400227 772740658 228704921 216601259 368695429 438392597 538854610 177411593 281073560 3377879 259899397 54419178 259686690 644159168 796383986 792125217 139044576 140374392 270301098 301763352 190082735 918779859 847868685 209476530 971873896 663956468 859495188 908665130 339719702 865302865 428775604 744425272 587592581 670972533 34391819 187462719 781733252 177824744 103918597 423499910 853490745 18204756 388188617 377312409 648890658 962378452 616872984 205772697 580281545 310146139 719258617 988493615 76294667 361904242 330349229 858595989 533962627 603779359 273533891 784650819 940368489 152551637 985179266 704629494 302425066 508797618 852581263 483635313 860767489 855431002 632261256 948968034 771250978 750108043 909358504 600530251 805875833 628201 151563907 46207454 599016185 411116414 498713560 80683603 643255533 423597012 332763997 237407077 807020776 315153192 13089060 508834898 171578215 614071781 89018920 733287972 749644426 131120666 219590216 13671297 891431529 594320119 747766037 871789452 996519264 437298486 378948833 507612220 283209396 772455652 842259057 306954982 593817233 491272249 274338584 810853498 544378040 458950843 234737130 489146654 361273278 331990551 831919086 474370248 98912205 649652814 37820988 76713341 863465730 871301751 953113993 34511142 728625488 299969178 532204987 64399289 492040273 207481302 959990998 843511791 502779408 442888170 276076979 821518382 749920388 577112728 875799951 291942042 791338474 870741251 633715342 950991323 407186820 916582037 768632562 532896139 59464325 327072479 396990958 118113715 219879721 827843602 81811485 978406946 874695446 721383093 916370321 36168331 843060865 894493186 940304474 588484892 611189484 542843013 126170969 582330862 3939822 879273484 396149366 251481393 239867717 131304286 411216838 441874759 316466392 55014518 185980639 513692789 542762484 243755117 325232242 515080487 838239441 993989649 385821891 90223976 564083196 287010069 819730447 869054845 303134355 47689730 601979367 318452394 104281956 376204122 434733916 462819793 607172538 882360933 701858495 960689859 396289942 531951776 831876793 621755774 260454180 18761198 222699578 374555957 114580823 615959608 342899048 180637310 858484377 723022056 313917000 575265176 749395478 215586391 751795426 119591389 854441865 14169714 104691902 197430249 605463633 78760389 207323216 370933634 321909858 692216836 6314800 361412761 250081608 87126589 473310431 130712157 468960895 886032099 5618150 141303410 669938949 721269241 65980668 562568511 574710624 795437317 357471075 401662895 634750305 918299236 347034483 521073062 336546625 921057373 712030427 58380247 266835747 339975472 84841655 575986540 426281458 919733008 204022254 230945673 325417557 337360353 264092166 565290456 908245491 445910623 658566230 318687170 569883687 560041972 891949542 506408988 579363277 210748915 325842685 892751302 436597971 892845260 870081135 767869525 692996606 930351682 791260353 487476562 312271369 528462619 708426307 492722133 940542474 782186813 345810966 23926495 650857505 792575326 395878870 948750068 909994345 599718254 856656281 381434241 785330223 951452960 754868996 825004850 131007922 834359577 940098177 240552960 329033435 967855823 279177340 185737288 336125686 608676304 809353915 64418362 864542253 483112015 900483351 806417717 712387680 718101892 509929447 255223554 397726850 54490907 680100129 741241287 213114199 347947494 501822112 622999677 854963862 875151001 684035088 129606912 989430966 981936265 151599482 576039253 193129691 640855671 962855891 623372202 334473746 267533348 830401466 44070535 926417429 694517363 268797956 703000100 99611713 109010512 626994082 72174453 672741684 719689778 446158363 692344734 887263637 823184070 155088054 173305095 760108797 962659273 365697970 382351005 44557541 430576119 694977876 216754491 923487693 875670554 556628763 810087700 914773391 230987187 492374237 788368869 896015135 254865464 697849037 620897438 695058902 32785948 636883543 922295455 908262918 820155977 351607499 642667682 766030974 306082834 331489146 113231379 97185981 53778936 492981731 743153804 294346514 677969753 395887502 758345020 418731342 869475205 297539218 457131813 132933658 98065968 84650412 743716225 832574816 174557880 50154239 214556791 302155410 6803433 827081342 295441310 481362414 283970895 825781508 462474904 272079095 493458955 787286498 761413005 841977580 641254600 829410579 594719477 907638439 981161247 271521899 996263674 733778543 290506384 319925413 752168305 880981077 754183562 963131335 569290881 439643106 715835963 725380393 961187491 765181270 190684635 239064559 447272484 523509944 345686785 499547511 466554520 193911603 807073451 335006078 766986488 459027126 267751245 545891320 84959282 756490677 288592498 296225257 990624515 408198689 146832506 936346787 61224737 93274224 38325707 80311410 457867432 353457819 915913015 737172593 305884169 319324755 910942004 40383451 739776983 160381868 395129640 60011702 853020804 896422296 952572176 249283789 190582142 98559566 885021383 765763945 788187984 866182673 208839573 695051465 850127803 815603463 133846404 749304695 726235874 794653459 850899612 678360529 171665481 411209601 117942816 860456175 428783675 77281538 344067617 982682908 638090260 606642932 9914533 398369752 647027956 811828110 577800632 633970635 405694553 825370780 209941274 756750404 759183684 60992581 927499013 81586828 346855782 339721577 881953496 369166439 123547979 385069260 930497736 570451433 818356988 945203293 376924451 957010908 918815593 707130915 986997806 711136935 814216490 770259694 150942373 576702678 65590796 760041027 580035743 555820776 904335813 320335355 501453543 229069339 165880029 92802980 838439606 416455799 486294100 562130375 472204374 758811295 329770929 82956954 818034688 303942400 87235299 93625335 725537219 777187886 485416058 68477009 780330738 18255396 591087668 154056068 981395761 966561722 604119907 831525621 120271879 149577929 521452828 230398151 49957368 614615502 726839421 424004838 752046201 570135593 867228983 441837760 47158636 999225778 288032519 203099455 610189788 204550430 375732622 522399472 400133136 316397760 112880624 498138010 565626751 428691396 594350485 636148422 176272029 224961840 203477633 358740568 641668622 77221112 707063882 503958001 336339311 534154966 178342207 553946900 988950903 875270352 599196633 324239226 643179674 758603879 881684575 245245406 588615536 327220490 30951949 529059818 751230230 245482071 758818744 201031453 632597724 400659392 963424384 593045426 389321913 878971427 484532561 549165687 981689455 737938450 171139438 155015980 924452237 346905506 381726460 586959820 106413205 489223796 472891456 384574711 775091616 290238787 881650087 993989375 48392297 790033651 921448663 846849804 138991806 553219517 88802162 35129878 227275189 93814522 787600405 457205950 290347191 179936202 978102011 816791129 741180100 332442948 794299270 564303214 967901491 302264407 800470177 609040161 39661545 427789032 821265141 433171331 675627269 152819774 931467482 965148690 196361556 947003531 304173413 137892426 994276814 625798834 764804011 70027528 222959192 396378918 495799735 797285381 284098103 715572592 948958372 208994739 574295296 629777844 922417421 808768475 300806197 254657434 7452950 585432533 360668074 982967895 985388348 95840832 179287588 983425292 469961406 570855811 337040747 694132599 797016529 9951087 148186648 854653838 57916682 251655411 228182936 555431429 778878923 356383346 840072135 585728862 112719467 682369256 321747501 490024789 332115088 153868086 423797736 647834727 874827210 686822841 900736434 774685034 23595760 528892832 676846764 180001011 48473481 187487510 876831210 483000080 626806165 53963235 40230610 798090579 779027992 401883624 953478520 450416443 911055537 497044764 9944645 923224328 421846450 372420591 170713128 3797524 363872938 192117105 471461951 482503121 996814369 266821365 839067229 462679626 559572057 544977339 863104985 567192003 627607455 601345999 569623810 173590485 859448480 327907544 26939352 87996131 508559176 918097957 144196332 840766720 241413818 4262786 558014301 482316676 232072039 413741289 81720018 466596016 549533293 969526804 392558188 401257517 358316901 898072903 596154644 637623482 255471628 263681441 609404158 529658815 869538749 733139937 49060924 850417063 226485809 800707676 825908574 977905110 480195049 705235967 144891272 251227457 691668986 495721789 386991651 912961685 263363438 867457549 400804713 915686167 133010675 431417617 397086103 124813059 368157638 448388007 381058708 397578798 302017803 677059194 592180051 606452642 932248379 645486258 344185065 380962847 81024391 406499778 612434519 398754983 483597292 111550698 505165877 356669867 197353233 65877378 161071520 996768201 600480586 380516752 775409797 779600167 89321562 315649386 207040232 479105335 245876306 24188712 144787327 63579940 435774490 496979911 223379812 65872602 120589764 861809003 202736252 191405331 221339476 649933332 244341248 81808951 41285339 141329408 50106640 343237245 572593907 621006262 706407092 427392106 490113276 495093146 706691503 876046947 45012855 786736787 649250628 411478367 267980897 906417165 976747528 487042152 867798934 259047972 874438022 402509730 949686793 508514303 482461840 492798790 38909247 820852818 352585020 844226467 653075964 790317182 852899790 279982912 30611583 113957842 408025059 101501530 703023347 492745397 47442640 522827675 154647283 287458501 296756083 573332298 184589980 893684003 359112227 220423754 10136298 124816128 595544561 893723058 529797888 120573904 477031490 338608589 909158983 976976167 192297543 204594702 337992789 141239799 630146487 693742992 780878574 323681478 884371375 152048544 886712707 482520892 861293066 76219451 178972657 908816300 220988594 450748997 411453710 942268932 514982727 2312252 524758177 63062716 978909334 833341229 312496148 232730603 252345357 675945818 996990308 635094467 518866026 700193464 325441281 261068292 580597824 777586280 617621325 686936807 369537859 676047829 278688661 758720103 306841381 997517604 809942798 869096185 415094914 327554082 840378741 883379118 46076453 190055090 123191118 625656104 324233690 638180272 420831210 894671207 317404036 601804353 673005215 269535372 481514434 941178717 623543828 298118505 219206098 566713492 662141626 343203550 204168725 37954775 987810553 842927992 732285452 9011537 156400378 39054451 205184317 394489260 103169448 221142548 247124704 982696070 965511375 793804313 485162075 516365102 370240498 901306940 594200825 920977631 518623563 866470161 290025774 768037483 661477871 672345795 780980593 899846608 776572670 560502321 417763929 148986889 980735382 165903847 803288093 288029351 950928298 179173478 155618360 364355944 449945663 173199301 203783013 49781037 866980402 919229135 809673603 38309905 655057346 181507346 516670306 290112561 696331747 95674196 738151244 378070987 106195385 68940251 913639125 168985356 673344463 765663009 833989682 173105970 687086661 153734543 681567584 779053389 595654918 427490916 255982223 807171009 899052649 699619931 431430940 649581166 973410073 288514044 864793029 453339755 657262814 342400535 611479982 636113740 515107518 683524670 36498481 439711403 611783025 493934193 178357089 700790406 474367384 626850339 626969485 46582498 449808052 745912581 359018167 133663935 295689219 539188609 503180827 366542676 335757593 406487943 204539766 393427122 178380524 746216297 226689594 335730776 762450710 517277578 206330080 650487936 488286013 201666362 310685372 151137414 22192332 938488176 197140064 883332992 40111169 432269020 702665862 58227333 978337110 741535653 792101214 621441240 845531625 239344844 918269898 898234944 628338268 96667170 184813374 375763842 65356046 713539824 67245088 278244319 672371737 305799207 74831415 147303449 981440874 405174543 602545384 906683853 868279678 418584700 88335636 601395609 563728829 863493309 643207688 511047360 504772289 629092997 695543231 338146237 514873745 199346241 868845489 614646323 324952210 792367648 301601514 685199568 480802011 839970162 855770467 288436816 634955526 290610201 512460827 123004538 596624162 865235874 534826651 22771324 722200896 8632260 469587595 889918059 679429262 632276825 40157903 505891198 312971521 646400469 215580748 149739551 563512379 109805323 264235693 946888862 830520564 395269855 613140063 794979941 913121103 532575565 201212847 470884936 549812661 414555241 849224726 514465836 771256315 527875103 447630594 525002720 669187935 647335455 379332162 696914592 683343112 818900961 483386228 133057153 959780707 325674511 695421410 467092827 75405559 106836337 641961560 268031481 109414786 369138471 519571904 406312598 221787017 716273155 419544682 713046937 952209182 948557424 247691199 444947145 802749600 406113248 877722401 485579607 592529670 96789542 150199342 902096233 121464530 160489617 512247168 336024129 253461220 914544705 153597947 470562719 780535220 462386965 420442609 481701513 978613502 719970581 231187388 173854280 971512882 134161048 664615823 757499143 970475407 639008668 75494819 733475938 385138976 566406287 960834313 46670585 552155354 211248533 630368505 809383602 156696740 453514906 39532122 654747224 785764166 797403834 213601750 941595412 529225686 760402486 266977766 531503052 242987880 472584818 436617665 699769953 906926356 756161027 37875393 205809928 198633239 730130898 420504906 573163339 228856477 577598204 609816963 461871305 947039916 77024275 782409667 563299540 10504555 242689655 706743245 111725481 479162586 597125301 5257357 437882249 734230036 82055547 430619938 366493355 425152243 60915165 261298925 773639307 372665483 733190300 662904376 242861785 134319648 884506466 741241910 701476601 719052575 556135605 324708997 677007753 770389362 161500839 989550804 45681113 128656577 462318859 791770579 558974925 679878425 71758886 490629325 638926008 512825365 898969570 160869785 692952952 350906706 97018036 367252157 564036555 382059787 534331687 191900827 52744279 477152593 120908566 839635141 386538587 882450586 142157776 271108957 119899919 394995265 573525797 933455695 551170662 203485954 969409130 114607449 830850144 4743717 967868877 359598687 383795219 487549446 954917554 47817189 360433316 286351946 449148821 104241750 448232636 992052363 991882536 163802824 454522922 613528858 127483631 167489686 998547701 546603590 164726272 173120057 113691154 286756021 113286950 32607566 647648950 766418381 948195180 167720267 512707803 879920577 278640157 289044686 681659706 934126316 762741310 74865695 469770688 132734672 430434987 896081752 29627258 903064999 600545502 83426985 378676643 775188746 984685223 31710881 870113922 891817202 706951809 535850925 614704156 441083160 262637474 911567285 520870764 233637283 500974768 491280414 147483557 775912212 218651636 700799222 355917554 297326622 832598741 832807159 366037129 110075094 255214429 518262617 776696921 884662499 106819273 28925735 56372615 393157644 427768791 681406369 419204250 809466355 959672938 8798423 63636883 630109339 697887028 87772926 605110132 405810155 922589420 377128291 764671477 890361167 688172847 301286671 663612026 106528105 741136158 732615357 853161338 846327757 363817593 398836684 41119202 511257236 541167584 884636432 959464329 435034229 34432624 877882470 593751371 521456474 774235895 600021051 631119537 870593185 222298361 450456949 290258985 264649946 776540403 688511259 644145321 986089952 272972634 518415773 854275849 80156655 753822239 282331161 229279477 736068570 724938445 142199603 37726139 951114432 502282612 128895157 427973378 652993185 62747139 496562732 855157734 934551105 315444089 368854513 394973986 559247245 360615100 326323371 988032363 774073373 366197032 355876652 232922131 51316350 94357613 171380631 841972332 550859579 257400175 977512874 31068066 589505262 292432463 454210956 387283297 279303787 133940126 918680276 627636104 499159627 268857783 140744954 507818125 554416870 109702039 950890638 988022843 141343965 481531762 279097854 680504986 28423552 723027648 345302530 80683040 630045631 706700988 190202902 351229813 931608719 717337392 575448746 628511441 899618813 588854434 214129696 666675677 808501362 557218491 86339168 26353094 385708145 615888673 911244164 323903536 336708393 854301191 866545537 536035215 146133996 537691018 401460869 58624699 509664772 861483377 285106709 443001272 428758380 436182895 536501646 284943516 332442215 859716526 116527148 718234197 142613954 356746024 792575878 475683264 719922472 748227498 281860998 964943021 728952743 421104272 903897110 120217494 673533009 190257059 104099410 101917881 659203086 890089498 738894187 927574098 718253872 123784174 361309704 403408454 201799580 705399637 575167569 671934576 627935017 178024356 86876918 498841620 986397859 469630762 277199946 269986080 518171673 27686652 119557657 153293474 825878289 187140298 21976362 361656594 824920895 213012343 23549007 301986344 250482599 598066605 579864582 881432693 820492142 502672692 763988868 181584536 451035635 293427621 456984905 480133258 561359730 492556041 124580383 450727364 993592623 676035042 991335816 856912663 300204294 325269551 166503796 296236869 741231851 242556939 758893371 93754485 149742796 213439377 889336883 215432338 200031100 767039445 570245863 61627730 193174603 761701614 127558373 63570135 651159903 822403770 506261937 249270375 724888362 97708739 51231779 102172566 692514361 573777774 568309542 151639256 45329632 674497949 982916114 758468622 306160743 256132099 576950384 884841129 740262204 478333208 110351200 249784348 239973168 908557594 307549580 622813244 522076987 763991135 350406779 685840707 71937693 274512663 212011793 473457173 978695200 689479756 342531096 138221433 855526787 47718617 547132796 327099908 167027300 196610592 111416872 555112790 707116919 127169616 518632114 293736832 818943752 288212646 356550628 250518251 490832528 969420232 863343214 349717757 476333613 316766297 700449203 599314095 262175145 177285135 479214314 282733920 403907323 314568675 460390978 56217232 442045087 881689645 517026432 15484947 453182573 611833937 594227201 890694090 875547257 623873 554694593 260336951 736316258 436341241 89048486 56646445 830723328 849961337 710818767 426098190 604316645 857723335 721335122 905533079 630247108 895061412 410523444 774699451 680727736 361100871 340491797 866220701 350586193 996271230 170335616 771743535 281557616 678938738 236905894 35657021 182134778 801954263 286796563 354183402 895293072 448602830 964716211 196611618 230945809 489205225 873605731 97629640 209215165 736842594 358302727 591605047 333666854 381494741 791574076 530424723 576727766 776418503 125169275 706001547 379803540 28862930 670224952 213213939 807032750 185356287 202653408 485410240 380459115 696899935 148577577 20020064 43756736 373519953 574337755 798635611 972654335 433899474 659460833 141679775 458144332 636076990 816533311 405115430 920563146 938729521 861669625 248140902 799174322 593930703 720679784 149066182 721671924 166427766 378293764 432815397 655384716 681688874 537196906 45294674 364987619 843659310 822903975 829405336 662052854 642297511 64604019 298475575 927052442 245262258 794116823 42061717 348381772 173524918 460195830 424194527 330922767 836685473 205549239 617097396 565587456 228507757 284696247 590982845 621354285 56111388 764280570 287348300 576506846 808117393 577220324 407779454 750170802 936113780 624408475 68205877 984050619 112678882 913972921 150367792 43128387 404512909 15596294 18875344 550535817 9277050 988436821 871076857 942762566 451291568 813059653 947401455 327391963 975772800 904290242 734474903 158069376 76546897 697981081 762795182 55842210 520387541 967044835 241967030 615531284 755685815 835596088 326691177 635439392 316538704 943551539 260949769 640091013 985739256 480934830 820965688 350482423 791996177 808945123 29962970 951063902 535460931 986765017 875300505 297669094 574031842 629873375 6412875 5646097 788713182 733255231 845109393 763108633 600378916 654598385 868483807 863092034 848938386 646149962 395732530 234580012 470339952 980987979 845901636 967504281 633287297 919137527 428806641 887435004 584263383 453435134 624904030 136982387 949912416 379869410 834066428 577597904 44227563 755291319 590851947 205635070 678058334 650706210 757088038 325848888 434596724 329940443 373563114 836285690 967939568 433189064 729142535 676945723 304279636 148817615 123837094 890830547 381761568 863049614 235485690 679145629 157744462 528491315 505311249 68685248 976263462 909635109 337551768 608940335 986689180 867068954 481791429 696965021 227085593 448210457 750512175 996424845 19250868 987187581 279457840 535539075 66747791 724361038 840077968 332735339 552701336 934502295 288640241 226592918 933403144 78896115 619758962 405488718 33431024 6750044 660786466 82945704 942863345 864279070 833195850 946114823 966115589 451556079 120766185 826497625 682789824 821842223 952158970 177773896 164741465 682810996 91731015 836427064 121226298 737468779 765382581 390995216 839893362 156959877 443217704 554197696 929115342 837809898 567409911 97987241 52134399 829274855 538443445 276302219 455233425 347442472 121809278 513605595 184125292 710626906 644690574 966868753 172902276 618985638 47121552 731115047 655605914 648195710 317688614 283712523 877666293 869608997 365054613 140263151 155345896 337414550 551490127 738294326 343727586 919119398 151044048 752561603 107375242 426821574 634549408 409214229 235725944 741037874 571334303 797120914 831137591 824175570 283472780 164441457 717549084 592564953 697991857 140210176 548400995 209299229 790930853 417976636 24566450 416238962 901590162 549380415 40236080 553378116 631151648 286578434 177090065 429817921 661546996 933070832 406446714 121100476 937211070 218343874 980377387 888285788 53772040 314136856 11620229 255410875 601316626 851381340 6088905 470841428 68647010 474173596 135053368 459362369 361203021 337353220 239126809 27077692 715214272 860636484 575829966 457216534 399571376 774597622 504481182 467187900 808320260 395624451 744221866 596674960 214735602 548155974 11056773 968217579 572525222 966080078 393021016 954099753 954146775 699969717 130286093 288153047 407991999 295871502 593958070 749381504 346817553 450892203 952158540 840942576 783802604 46324487 364932433 725318083 498811086 906977387 115900719 361456255 77066402 466703075 928645312 417058387 352300680 493678139 621092461 412799566 958287365 753610757 582054092 720025003 254374954 318573898 550793900 572674946 251004243 570428687 496484685 290289702 721162792 789576721 320800540 508644623 151259949 243627802 330809646 998522464 862497099 268061793 837581985 901765 419797801 486951629 586482689 921474452 32711775 153047451 12137657 775116247 900703526 11815590 132934979 51084677 571756075 186271484 528815246 547909566 245464445 661383065 836154368 333319002 538477274 685399225 581915932 506348308 736636984 1176777 404085959 304975094 41999907 737334783 88490979 272100950 156838045 742921340 688081230 557347317 259159494 663804219 890245398 659828313 307970412 584490983 93724672 146713245 839256382 288654164 690901366 402394957 857166703 437168982 497154840 756681854 744487338 384177403 731198061 152786011 231978331 855177369 457846278 994134406 205998341 504915615 490526627 535479124 591980643 677728158 485956308 91396007 795105649 516240914 988169686 63844881 86618740 399167515 332628416 794278726 656052328 32634281 419497220 575382481 312625838 221758635 686883001 451293314 658165583 205764563 742693507 888673593 356453029 946274094 594463603 264503019 263137311 933683683 46980763 133810148 919139335 711946995 531289421 166654521 247985243 963773649 230098129 346439326 298947378 429149002 150512586 532786614 578300737 148498596 775628393 3232204 510892207 948513054 211233291 216748506 647934008 742837297 13720948 819189103 334921790 880943993 433317394 202782871 51697124 747777381 881753434 711208659 721402442 643612566 763658332 337599800 26410039 523366617 842495329 984155108 556828787 808322961 760402589 919151772 820672194 513754829 144212902 291631082 695936176 264745377 950121139 668007295 395763135 180128312 117591802 469059030 155843020 264879175 562683321 458148229 516149723 479135797 909889525 1687760 670419225 815548826 968338479 49712182 134685197 412893866 326535426 748393665 662487246 761184620 809114247 618794471 940444745 527393447 265342389 461505866 270746973 75812022 575052416 389149594 838350932 615095201 264696325 278815645 354417782 566529100 622106151 311734202 125557812 223989702 34693473 807571342 922876364 605688022 493571395 677875708 321301152 825202392 931780943 792440146 135004708 867332729 207942366 895883062 24576006 372492269 515696353 87294651 833682550 304827055 238331304 450024026 510417862 847806597 468234337 514720843 257460141 737653557 946882956 32360506 899667776 650492875 892123497 580938502 15214520 190460699 526777965 119720218 581149534 823577450 483481930 627550591 847452292 944423513 977002720 601256433 384670850 776847089 115782048 323812141 214688021 918138041 445588476 763681665 374588349 23544226 238107641 856931052 888116066 132241224 177110605 449281854 112961882 225123521 633216680 836681861 987098388 233992585 650847315 23537162 874298234 882938774 243729812 333915437 64248637 753354629 602690793 173411031 757660432 908291564 351983335 369174035 571447379 263770067 914161211 216088969 445077348 982759916 605492657 298700371 537361783 93494218 644399592 594863648 988029709 848638201 210049862 258721383 629688687 69821359 86834339 212599977 902023231 848316545 187200553 216944906 360067917 752905747 46126390 749282964 244803351 537579594 82303557 109030188 783715587 170998874 759895534 740190695 170365164 469476200 67741069 631024679 241700607 210152727 59546402 115500596 201698537 39337467 691745649 682786457 867961466 943443993 923478122 90478137 101881951 483087509 497877680 918582216 124741392 335193081 7999683 630832943 890596296 640050691 258104151 869275049 203796645 119340885 574583145 735509867 66078106 149207260 139393237 636226866 154772130 528939421 983716587 879884271 992813925 846333720 46660959 212832596 372062161 122168206 913362267 756788050 289709539 336598875 573143830 160714307 852955133 961627921 950554388 844828104 326185750 368746705 794748092 458924705 409971467 505500683 668674115 57084093 553557470 426562445 200282928 469223018 457542448 761439611 935667119 244302564 374419960 295254349 470731222 161278336 14373850 440907709 319106069 95282567 641669096 928733354 890207072 620365062 826303292 191051393 221019056 617560131 875943330 555330279 935126770 30220222 811199489 725201406 794482747 720235165 646614084 831331756 264890110 567937535 896105673 875554813 208145232 297453386 835772148 666640407 833620918 350255381 311752939 58628523 447063985 861830174 608288599 200768994 495564619 362881956 845781927 355704561 881436306 54275884 640560272 769114758 327634107 896009871 954976226 579986737 525665067 801046723 997934591 876874100 82123028 237020863 436878711 6594488 321694144 149556206 93542308 317493687 351782937 554384419 520558397 721056710 469718120 820360003 86267710 410564873 388561300 165922247 915928698 375613165 9098361 470659063 454386916 608352243 629338007 479579186 879475225 988335411 874623647 726645670 966758425 623143670 830378080 155528272 615851720 510614280 992771547 817569252 965624228 646718863 229113700 25409618 178758607 233728591 135673377 471539282 571468412 638904844 577062196 949453162 926802263 866374412 203461523 393403321 135217503 571912610 987359316 641636027 884724974 334704403 913995435 983260690 792140010 959786280 519510714 527927719 952066074 389242192 675681135 504672122 566252865 52001447 111447647 344266897 296787304 532679989 632182228 628703246 69109044 567916332 266300253 514525751 704583326 979005153 923437267 535716532 688004174 266416485 738873174 817730452 90911757 562291446 908645577 433474497 202517785 415424661 317696262 357283648 604889960 413395772 615973103 840304904 727856287 445553141 925604244 774959817 120868222 557823526 61998960 859411729 507000419 986860505 334614450 900306315 568784644 435625908 474445132 578142003 911058236 269810633 880438775 947878855 747501001 99930216 462108994 573082265 476752046 63467236 867941729 155129069 116185323 291595018 791031486 633374537 745238190 579533021 725118591 645128742 966015200 126336451 489093830 340982999 950422225 793086092 274842250 808972572 804595327 22617289 543675048 44244300 190566582 431100352 455675684 603970808 429219400 156705815 816121865 529650988 227503601 266191885 165805569 407767493 408833273 208062628 742713710 485332705 140551765 505618133 295338113 908549375 919793726 329083331 532250055 208700941 161368025 646202999 280489734 708573742 294364001 746543372 460495052 469524222 666944036 411211976 293096843 357885082 185506193 840400132 364446157 114958086 104457425 440629007 961773685 593843350 800125311 581991401 749062182 895904635 494991339 564281324 880993802 113914953 628129693 845033336 533351860 797272128 918371029 147927746 982443532 181050663 524148748 495934768 714197544 310354461 863876731 8636734 292917714 223164511 959128019 983080317 705692394 557577450 382539750 690658626 29843215 760069007 158353416 533602805 836750793 234515203 891590638 546921745 427730183 702952662 65224348 954476708 816699025 562987164 653015521 879440852 677903879 651445857 266332724 622767192 8299412 798473678 959107352 922128681 802272976 293981466 104820570 615829737 574830461 131728444 919695612 435934375 241344744 359242983 305570791 474715977 119305775 352129574 500280635 344139246 612096568 510386042 913308899 700699541 105796100 755851827 677102050 764973727 672282492 658912911 851622912 511168126 31771970 770590327 272995986 472802338 765968863 842978738 300233018 636443675 224846724 289147629 201839196 166445102 306885660 23246361 369581251 97353303 86437507 612022150 405369311 138499569 183618234 193034177 27027461 717223383 563733225 857156847 865115834 949005702 628140276 568738892 818247004 6980632 785966761 893095161 76295286 323380377 238931921 827567180 906142186 13310965 85544184 88600121 584790483 390241876 730053012 239087678 665091199 666971731 31647718 563156979 102497959 914614421 143773111 472917857 940309508 610830391 561439117 490422249 61863864 871664266 408306747 52411735 553094429 294342758 487874830 133391851 729078920 359980842 480519134 507213830 480077054 72562303 214632980 416166900 723979564 615964344 874996813 550730376 372125441 395307422 6404093 367672260 853910807 464079206 3834906 395037663 428878430 567387730 426468925 444895149 13066606 115072539 905151893 415814231 563521836 996559956 699924784 495894694 249658780 82068353 284905641 803241622 404646202 375239957 274280775 891471216 916723459 594057943 736521884 225928883 484845284 976716906 602243915 477442642 511170782 469173513 209017537 834360100 651364529 21572519 796421996 799544706 812792864 78813690 714705214 176303536 512036564 55481802 90589688 161091920 727284779 511621625 642517731 454677468 815367173 406814261 579263529 202906570 241870707 143321446 289575889 640738578 485345002 85026323 569540549 764127379 527863541 347021523 319172119 722955344 733129830 839075717 432759941 250200715 809836318 434419107 181186387 940275702 925346996 357293823 143799848 847142641 121223360 419314462 23848352 406504823 592366635 327214211 399983966 396014718 708525338 937236234 306104041 715731131 476366027 648568020 989614393 440192501 152226590 11474034 648603747 91093328 385085914 307035171 605389585 546011629 947932776 164450799 407225809 993614317 136297816 70808014 27358762 965561013 876403675 3507011 294075629 278826645 529259904 812295420 133188945 923158081 404159246 76400615 443102727 829763752 803278645 603111740 466277888 884043057 286622271 115700484 832236652 357178287 664451198 3951820 822626695 528026686 368184515 873241274 181988056 381347714 607456296 265197215 670512160 813857393 789944871 686351680 387229315 472049286 1666224 52572205 38145520 662521951 47970984 617068579 649189327 486538851 59610906 85447966 590581297 901518249 644196323 221434567 660978131 244152142 239200386 492336243 596169857 416124971 85749605 308093430 729861927 566555641 455523188 356874491 297045848 86824923 533951086 538674893 715147434 646851154 377266959 357090406 243224229 415922513 309854926 501257084 156888793 146463939 621954386 732772413 203533221 96989699 884376189 46282343 861651619 134098932 642915987 133190560 21977327 147266584 194012949 72100247 25235915 557850058 197188974 739304359 776320730 730361220 686515221 17347089 100464234 239651017 83498937 304359197 620108929 189987759 806413589 92366489 149862486 540554611 289570325 833184357 631677261 753844479 604857282 926131164 362256336 506034791 798912773 715415028 49026909 941389990 543618876 71218367 683256950 557951309 424763329 242687473 397490736 837756103 950720113 889610013 180156620 512143709 636864510 158768116 213245925 477664238 883355253 948973221 998910420 8065241 244211832 293179363 943803716 887094630 911915380 611892684 653154562 358306652 142820207 605227973 275521610 496573271 651619078 654871315 998332201 691770726 760831679 626728541 38662081 471344226 933154999 635066134 134605918 185542871 894661061 572268825 270228 682830020 163362526 929166359 198817796 123769667 876067912 923292814 790921951 971036414 49480002 846729423 66161673 668103189 841991722 343090919 15135837 214102431 713949691 451368134 34487386 91971113 143206921 706020157 398129598 999502673 211277975 161965753 264124999 874786775 555622553 857784748 37494156 350031942 338524642 61472593 344480307 365301992 84146089 10701785 266623554 924576370 70148111 970674137 520915433 118472097 556994913 496410289 812201488 463317749 118332842 471818557 309403639 590238399 454664086 585538419 155008635 673840481 138534356 465637688 566349216 463409130 185320257 625959432 301071234 386768308 730002780 620567404 698797502 224838557 400680074 386109399 171072402 666639223 150829073 682533092 58418747 193166212 231161086 391555462 853743852 563949930 21178025 572054333 74298161 45966400 367555959 411763739 376660738 714925150 479419289 773711871 350402733 324513947 80991134 468661457 148966833 376121491 510655537 565149958 64811382 739978753 237007157 489066931 268837188 958287838 127117216 563386467 445747421 641861887 729955225 105669863 23437710 480929331 794656218 817793666 89553802 127169428 448862993 274077338 748718830 450162226 72209431 624527861 618636796 832567981 195486411 365946845 255843668 938206855 237557540 526525358 55380210 58319192 984781151 97004019 929408347 148242253 843318458 202681813 76545067 324142443 46968887 49038945 606873936 720839647 410477784 389048800 239793988 878353470 410664649 324934187 506822582 911346611 317035295 823481053 219605011 675106763 189843916 505963262 474683702 382147996 441496476 753008425 834891969 416380168 378192870 553858769 495354446 110882259 926535240 445909588 662347806 392516628 268254303 410152622 223096103 734513573 415175515 760646616 759041861 505950268 729443928 329018053 69941611 22347510 859062955 414660734 14476137 736483098 240231161 521451579 432984251 842150094 914436524 392605911 742806802 847406470 273975522 265849497 779359019 210272606 152979728 242404481 454056266 452139763 364561766 791748037 767555539 582496613 522123535 716204411 785043032 577472981 497462888 878752647 595946490 848782779 596104328 690506955 595762381 423240242 195852377 888910731 575236756 267986190 399336353 973293542 546779496 55462698 386564124 473919515 812263575 252425275 46710552 258874156 376716400 982689885 125376535 202242289 612285217 771774807 222698467 34096395 853670505 570157497 271729659 10843666 413755495 603764037 118056716 332751285 300764218 895331795 645778805 835660114 653211908 807982739 447737428 42305882 581457068 645783871 245071158 35504896 328247110 361285035 566095867 301325599 272981078 791837870 33497407 964135983 669836378 87175064 108768052 955107175 843672537 692698559 891733255 149797706 882366197 649186161 203096800 284581156 385927388 916547954 685343296 370292303 701637912 868295062 312289137 853041393 907805782 84880217 389504759 670535242 454809583 271244061 323832505 839052883 678156695 836314578 74893242 531545641 304432016 877023687 311888431 278449185 537717741 114781514 857741987 758843250 232349709 632461088 725325179 83015889 371966286 608777774 428380958 880584407 874623037 920035446 659199955 771309584 666252826 497496805 621200800 426600855 550124340 3650475 797714819 396624780 761971712 416142097 499312356 683916443 398012589 344303277 173291364 428576278 533747085 9947520 39864316 767989779 191872309 510075664 897245204 530185269 118007240 871314709 945765740 547315926 314068707 279638647 841203455 90557024 220299502 700111250 674315521 247584692 642615236 342733059 580616128 44951772 723775166 705210844 448796802 630583939 313537059 224820432 58269475 319106163 207960330 591077848 928208821 815083739 798730871 631101111 563411853 611502891 993142517 748945402 170728142 135076356 700751432 742389278 37312252 663625202 508207345 130986396 515054799 507752766 956839777 404393804 509495501 477132690 331459808 171886784 206743391 861155670 277860303 656044186 34893805 770370255 81157134 43959093 435298843 434077401 493727328 331292001 550965929 938544858 195414601 826380507 903961789 224613444 874601840 367971630 398871950 35364124 605866447 50650599 918987673 985742726 222891628 360546789 796412517 699940128 394282933 327646438 170770628 630068753 780180960 802455507 675887789 8393562 359992413 83415090 629290150 601758067 709835139 39374873 3123987 927025485 720157141 222613633 628822319 664904747 657269605 714628273 619614263 126148105 765553938 924883588 218383336 373071947 727182859 657327711 336545795 973054717 594641954 355743747 159541895 38239072 717685590 587892544 857536452 18545784 669074072 769690811 686696407 154182550 747029340 631312594 776493875 742049942 844143170 987682228 696484612 18360109 976490986 856338851 348718590 248686518 551533442 614562139 58026048 298148321 746674992 232933266 516173150 791215320 763318209 572331085 357403738 409591127 10903965 507104187 144452688 478460264 294262039 49399649 777100709 873440026 788964665 286160100 101284034 624583004 325235924 482771798 391169664 475585699 164054262 221922730 498378723 911902032 51354155 123310547 256610731 127667555 465624714 123159314 495941960 783367678 744402604 529031770 441068435 997786021 427920201 406532183 654415420 874650293 55257453 965253518 163393913 135135464 565005829 583656868 602188934 354661638 437591948 463693011 14057001 809211447 766041320 51618860 603826049 649738216 99815415 274618371 122491902 926000900 756608462 245705672 187279566 46357238 687045271 187568429 508607270 239966695 312429759 996710128 8751226 530895290 13251015 389566853 228462608 653639089 451408535 993294249 855317590 428447943 861410014 212916653 912732076 667024288 697286525 500541289 492995412 404642781 434329070 12776960 78517531 185032956 508272858 550931750 785779420 476624899 191155231 450411768 568071485 863764785 119461320 554594975 462046747 524261527 728601358 206940330 352273607 423378270 64583258 21432360 580845156 301637568 320534234 836656758 457432077 67834836 637177440 879359657 777710474 721373049 528774607 110278395 57190702 251832614 548474509 41109313 984135687 310593869 346171920 819461723 823140076 638306004 278262461 911556366 38261493 410091346 997372739 932043004 710752006 314367871 652406863 85417935 984833571 498928006 357834661 432807890 766040585 479558872 218240813 721577688 161526783 120447703 265648611 752706744 293032685 619643682 626230588 333755244 902238085 387504623 999484246 282869667 528386832 382827775 695640070 922365423 888562156 239670801 661700961 966146332 4124007 308906726 372613231 430009976 884467540 17383658 858113809 109625977 628145902 524009538 147992892 152649934 220077224 187432285 85563885 450707615 668941853 977514330 778817863 567664812 225600706 750840761 562574667 256237238 5608643 529033146 796689315 259146038 338589237 271554936 950178722 827785033 672907424 194071315 199729886 495060560 151839393 19462031 520682171 640131858 382670279 747116638 446836478 616877565 441531190 218621049 604119727 736940593 872213121 961837313 687720125 655316203 267832547 773492468 745750946 827580466 337523827 592415764 912144234 8288147 256263059 808164811 766827914 579544455 802823363 468959415 143589283 158956176 646715147 316764378 884510158 694498481 758851094 932698609 935358599 736277120 509245543 893721617 548830443 393339498 738078332 263763617 294261348 588871602 220727858 565913603 149539630 12659726 167236327 380296585 81190407 272960952 823673758 573947817 802935091 134453769 452908793 714314074 758778838 386463538 763544797 595487905 928101069 957895830 966065866 360540844 938041704 533769805 347298924 656197947 909871283 562262723 196268795 54011160 107252173 800917686 276010890 301624460 797290978 824291347 513924112 139704878 413594646 128705960 310816908 698905502 334221843 860106761 193006729 252155299 340481477 791162664 430967347 529105187 522951630 658849759 387113130 255241328 460069444 990288852 669500933 222536467 379693862 283407406 292714095 897163148 612512474 275468945 38168856 102819372 75933585 415565075 1477795 813509503 870346604 917488124 219374406 334406440 872389910 484209070 379449263 954293803 388836269 773017553 23590763 674233609 810520762 850213348 805715174 998779662 356600788 57951067 59059592 231339536 330736210 579005603 605795085 955214231 316237520 403635216 854991361 392540516 818586452 69133764 371055424 636804904 351765656 435554444 65687678 656375000 501361259 91602090 122472575 90537896 242969354 181711983 705251095 934784972 39516108 266085406 746719128 374698643 559645046 6631017 540888211 277881548 635261344 111743284 90286997 394941076 686222848 302486952 438040629 59445288 285168058 883850415 478335059 893881578 890721170 991780888 116049585 168898773 594208752 232841161 923080004 403390977 442124015 406627841 48473350 140699945 954787332 830091366 753497028 301899879 685112597 93661157 236141512 570357867 868585394 98863134 809871450 907229970 111405113 143868785 513414471 897095522 448715927 308014477 523329551 156657133 471460213 368932298 155238553 371335733 923174747 370875344 254783194 157924737 692259166 204214196 441244294 237244246 345900985 870263842 736782401 898341002 453195880 57435693 248966653 389585192 505559517 420998409 554419835 235695783 879423566 94831429 926513450 17110521 549944283 789793872 25260121 756505883 721976537 370923024 228815608 634887968 833728079 855682877 685584884 601890839 885385005 592461442 51676994 342712106 474086364 321618251 540976791 70411267 609336497 767731370 214083374 59973986 315235261 532353311 532212406 934689121 493993845 678369086 476024997 619595321 912997665 960728997 222541582 925824952 131375373 391254558 673790553 730664207 131597827 990020339 555587330 590389338 763705403 99061485 778137724 902977108 761307314 727077226 651229951 907378878 85593460 888077173 632635416 766429636 385548461 574165261 514139226 704681748 869051229 358727682 458497929 442349266 57746244 639270829 869603541 678292546 380196707 960598848 6654822 85441372 853913026 920429336 227887365 874385871 275429530 371920227 642285590 890834149 270081117 628985197 641424831 663287376 218785566 513015441 773027580 405236896 628264016 800681610 976186042 867805743 249917200 58831814 23511156 610467721 701434037 12179985 910049680 10835810 429293618 414334768 975432622 670500743 443537380 223763775 429445918 288892452 811338275 967948713 448738125 670394306 579587328 741775835 636193610 851978961 3368390 790608140 447251094 901789172 660642571 593567091 53051416 24941896 265423773 285042437 668236228 66913871 913316885 317761729 5419838 403502853 351573020 842355039 745426040 244300246 21617051 546693574 623724212 227269969 454942189 321100783 167509586 884681564 495775356 106979235 223487792 749686370 120311781 253905679 577032751 704001344 430740094 589412099 428007586 657685975 841055774 971900280 777842139 47644810 713091747 869118134 985098209 307679891 646021966 708913607 103646888 657565531 579157956 731126574 94522277 182181169 899807470 320490454 529620571 756672431 947070209 519025514 153890689 840841046 82955856 574248794 129525919 229315892 310175331 630393277 395837915 497377193 964936118 440013748 545981385 658664629 534185411 790657927 648461681 743639417 321566465 833505681 287954427 602451457 894872727 741894580 761026994 555542904 353891378 441030620 664318608 645843759 515817394 667067386 966254856 231353593 854116502 494575569 917921742 231180911 817726113 832443722 687136697 703204268 300498735 495319320 188212353 366350310 331433291 954342581 18182362 285501446 755562918 556659604 420879403 37579609 881139474 378288517 501522550 97578709 178474917 834211478 492122355 318000027 896225242 888738265 782201450 364215570 887094473 352981331 489340665 36159496 266600284 509433573 87528984 58790982 262350777 982334321 608036803 830454177 172600398 329306944 164393912 93831556 924318446 969348283 366240460 354803892 254962921 902075246 462394189 559977521 390085251 928953827 496860984 611103479 649943630 204552495 565003064 402681493 514903144 365343134 935822162 765327608 576524223 600714236 177238702 127380252 198913103 620114298 227769396 37934444 131759475 518260357 855126272 250816934 208071368 357520833 604474137 654930993 437543650 627557751 375921885 708317437 633422207 677780825 874926179 424039681 447812694 137538545 396440287 366988450 967321333 53632300 791435082 785315889 78219656 36234779 714646739 655224569 201508803 690539497 569025106 540178274 688925595 70508931 359386130 990178906 706579338 21600564 297478491 826516569 691402592 504363887 210750690 994726365 594199628 164911899 158170119 923466934 204869533 512624792 19827088 94935769 463451644 626036165 322809048 942957057 910751599 965521368 918502282 193385223 275685454 350437493 816553282 942297918 407910705 460835378 880992799 709983520 776340001 437454374 620884521 232147913 145834751 255811299 952667355 302278353 663160541 451648586 501797934 363162976 100783306 104350928 22678560 910795206 551786050 857974486 373506177 333201540 460077031 69525516 664035486 72641982 615833721 592408531 83812207 643072866 287349904 882853396 604057247 979917793 886558873 577038419 821006051 306435146 135507030 834557460 708981423 517132560 305022732 580667250 806357427 397706704 477736374 444311212 580081874 966505827 981569148 225564749 367434723 303515008 618601573 93920418 842670988 316048766 424206861 780363983 639515054 462164630 261946881 848659471 477780442 307297828 929423481 670942498 227100669 858207144 978477595 643429567 169083785 907460645 89469516 831326601 447045722 192760544 257231151 412435967 808712403 130433838 107838923 5596708 114780900 561470236 112892144 240328167 384023554 65873813 601638499 716162959 540347102 747594220 430426770 144581042 963794596 303429262 508286038 473307821 292360185 490223917 350111049 766110067 697423970 787049927 899106498 918406481 952735706 347775483 261661449 728637961 884930111 99136010 752775192 203345962 186765616 73590019 379012306 794740809 176062706 462032548 929759432 144594964 710719356 712010801 10690546 195581381 955832419 298968449 990804301 837534161 916027275 669965819 103680998 168200052 198411238 176142659 730238791 714681693 739097338 331724524 967230813 766731913 343271852 871828901 60545010 922869394 370055553 951289612 549640381 346889546 279692413 573152930 219474530 898626519 195371461 854206038 148076521 506441894 928579169 773294315 34931357 530582982 167594735 777126595 19534243 142787415 62420441 896844228 400385664 900461907 76564217 273391238 672893091 33015531 806838005 917307514 705194117 877113782 628231827 645875428 589884376 258232163 607052229 287000501 399238997 523532420 552279436 414476335 959413451 261376234 215773101 642069894 54966283 379732905 389474368 258674905 449006432 576635989 726970725 673764849 746276912 967879556 237416721 751248948 513445050 915497870 134919616 573713065 968001253 494917163 68162802 716332990 988175939 771200011 88807519 949925961 673304564 583140488 985061359 671928169 338855983 221609653 283753610 244624021 875334007 536038288 143429400 443779944 745206901 832538943 201464951 274105025 706192598 831476015 553492415 820683043 49088751 79496685 340960065 860312748 169161724 606460700 182362102 960542834 419660315 535378989 310832622 164819758 8399209 690731000 81169776 986648207 265311408 288794399 180832 854033375 186621854 354411097 869122643 6270886 441212736 208191682 601090619 110095103 956073220 199001217 722248806 35800885 76177897 515510471 735600154 689898020 399870682 277995360 530249523 592167095 290592670 820838625 945727017 374191363 897628868 189208454 711340143 982902163 259187837 260958010 947327755 533922867 155157974 201553391 644848474 344225726 395514049 673420257 572263467 72655811 87007464 900868797 108001695 816454317 60175466 323740527 917018271 223440511 473619002 869285952 78629333 31658851 843243358 698579123 398366946 29124253 543344119 811814069 391681400 187173870 875656135 9855661 421455140 551260425 42341073 532633685 385531215 467654934 904307410 139317068 78556287 55951413 46118380 992905767 909322744 530235717 780494766 142812512 227883001 318537458 93892011 787396420 493642277 947552022 739351050 977344959 394663181 755200637 533114824 699577931 912512586 458324552 819611589 426637042 667563738 968669199 859792575 497196999 964334086 961725586 717125299 451307079 414652481 692843519 434050273 654508610 68802625 49734908 497447695 693012958 662632430 358373132 276205124 944873066 91939519 644402552 374840275 718589715 666215331 198850334 283401888 314396996 578963238 644759631 488769356 238150782 909586909 733674130 742128242 562844947 174826362 299168653 108180240 599051904 347584864 172385061 212602346 115915680 682486273 676364595 274279044 643249692 447163803 211638216 358831327 620603728 605603829 388651927 994443073 375960451 103907810 502848240 716264973 620482753 809004391 556454160 36498708 252018894 913931857 700576390 170564399 791630898 13741316 665754508 166506528 706796334 939172794 677781977 482224480 178373356 5577979 810245252 864777898 8092369 386698849 891849705 124229124 87178293 504689021 996567940 648432478 125675003 364205402 686091467 449680523 558124754 176148142 675833149 266142174 416782550 362200576 263747884 402893182 328101613 600803985 146592152 648595251 122167969 242417917 591258454 406688331 621868063 318608252 132355945 756475910 990690904 767026807 29370363 230150473 565745431 607738537 468965046 556809401 500592268 142923035 835562477 468507785 347560813 804625520 475338372 781901905 429427898 724575424 343427771 19095332 971995941 685729221 732240666 610337412 161157281 246059040 689947511 348975094 477533937 962377929 456005919 38212469 480448930 40230498 786893274 675764095 680742654 478582476 805478676 598913183 135872275 78861527 815610360 606108948 237100997 460696412 252116075 738528377 833956815 40057583 982202846 949601529 959370478 244765470 618790653 943758220 685081637 645113876 870309821 66376319 845986538 83583353 298855776 861143771 777978926 203109025 137243354 298578765 268049725 181639535 85067405 938627191 822402679 949947451 183595563 728229999 749933288 239613315 255091148 822002010 553603613 815078104 592303165 378334396 551604179 496438860 89070389 219717416 561161954 525732175 668105299 403813868 117148089 111226183 611244209 506023849 109461679 572834531 114093783 583285121 440325334 386641382 786475022 377785219 870481433 96920810 342701557 161386429 360464967 607993033 478534924 838360765 383142794 926214720 535567888 25076742 839647351 311688142 898169519 509602744 781030243 368393480 629087780 299092880 140731611 386923994 6704142 949352679 919534453 342947722 89150840 452840560 814937208 344721585 206933628 400484461 614383997 813678711 794020023 118407620 449106920 523377807 242286211 492918022 270302725 802658098 165547618 850883760 847070664 516688928 593930035 228384801 566836716 601624005 834869154 241720624 764298980 224840844 464267641 966588640 633467348 258529192 293289124 733793660 681156833 127618582 631052387 419640073 855908732 907736354 592469336 732523380 297189148 15203337 784301861 890455288 274008612 79668099 599153745 115038195 847937007 128372247 560950263 368366928 33013073 977947806 215541321 575865657 405923413 119619270 871693330 974025364 852393437 729333966 111803804 948881322 641648034 535355826 289329873 709317961 703281949 143284909 346021383 34040914 905365900 809065062 800558659 692334136 117844016 564549887 398819143 112934053 990189641 25941850 319743172 17342500 787520037 830294356 683889339 626394159 625268854 374832335 705585108 220817900 920970656 683530498 229999602 349821038 622350486 347307748 811970190 391277351 444064003 548243662 579924246 812087406 789422202 583343843 710109464 882693578 830670418 721233693 579693598 422818818 717859201 317634196 546133468 395808964 93160027 748201236 624707182 850715527 35723792 757665176 412400713 733813433 208517192 878219830 646790484 165199143 348668064 378620490 132806791 855380004 941885676 324246630 177205261 294571637 858188559 396586028 29568910 348663751 309841635 475701681 972214960 545492721 903742581 958493348 324040158 920739137 727833746 335353245 445524342 131020979 463826611 922172784 31465358 984183077 432868618 51465487 717669093 946588443 295583583 968401773 998762245 377770114 213588426 897147696 369650253 490298993 454408445 568880235 177931176 225508055 826624068 338115322 94713348 738950012 834377227 519669657 862647692 567409040 424383962 971744466 813642241 573755280 505447152 955733147 818322635 556925510 899539567 969252707 137322804 595205157 831069521 953446807 69415857 260877989 171909478 895770711 824063038 332687135 656165828 822502515 858153575 273513793 785130781 589079241 240975863 776698987 61244025 200793145 965388071 137279828 63790913 514179387 921533525 261720933 829432277 230865505 508132322 446725629 611666081 209485804 584899994 213328859 823548427 469706375 511668976 571313496 322691712 151273911 448871113 849628529 696466859 316371425 590094226 343083691 230079105 859618808 172447536 754523523 664163741 887973046 539231627 447933600 912111606 321288716 401147700 962176219 200973515 691103606 959590667 354387672 716528342 624305066 124671404 426409158 779161271 898780420 59644850 117481348 165202073 130427093 336815366 790253452 552109204 570008063 381090337 802543450 247947842 70822697 423553865 174374989 422447508 415779664 947533327 621516198 581452555 153572432 789565298 754818916 695726024 480882209 961653340 704788908 774003300 669268703 230052408 733532739 639923153 228505106 430796646 186900650 395929802 639441561 52017405 680669225 201577418 458768036 943380428 64531782 429911682 830014889 46618969 108021236 311543524 237525756 935888933 341214004 778753001 23124409 204650111 2714531 750832859 827148749 520974458 608220744 348761870 220883368 587963083 29120217 142000594 516338373 577420373 141950843 807076301 358321983 727121061 528321402 322679638 956967782 933801097 166884909 975183424 186311844 786517399 359328743 853878232 536535128 672914145 875942341 554011861 40677617 308407951 296690974 304610405 601622817 412400527 444718915 27883990 546804331 531777804 564191269 482145910 79537412 478328067 289062186 634227574 745119478 637919597 62111924 791591116 391974828 542826326 965166125 840412858 667101236 820157363 217175930 263800387 796773213 474536218 408826320 755750667 691372479 63653553 870589352 495193327 113557863 660658208 983668995 631136384 729702797 291466707 404845577 979717236 642192087 575978828 609723528 173729695 832459726 228745248 411046523 541913661 751926195 734210357 546532995 457969515 792589919 956493715 863868591 408593196 786409853 966002880 818358845 828488496 128497120 194634264 535496358 526882065 682483071 277298202 99174624 502641630 551857574 808407033 238393656 416111813 492682333 617897035 340039742 530496782 985717305 572753031 130652941 879481475 583260622 195360956 505212944 605093895 415348339 143943967 772640550 223741170 394162649 534936651 780128882 680149271 658783405 603220950 620417956 392512313 330339046 654352376 291236754 439233995 12307995 888132751 530358387 767666101 23672510 60263637 881762620 243013770 370180325 305170977 256686478 412591200 31225476 457657002 25763565 535130371 693426439 663386704 879401902 369324092 709720817 829178234 958010885 508174964 309555808 383819271 341082055 705869513 820848585 660695238 886790272 559889284 880445664 569103406 804593063 247526704 924092763 774220446 887177219 705073505 778186610 874253803 563390863 83626682 214972159 975978479 367234239 411974681 469740394 987464599 881652066 550436333 962913824 423228852 457310605 765541630 205845836 251310183 67724679 971405142 634101012 601531612 189062180 321409031 502103717 93844598 794034693 669871606 717733943 331738057 843020705 119266015 776496 929717461 85784779 157159844 260443338 219403943 542212087 423214500 990352644 678824858 80841223 398458432 133142609 366377860 444383617 825526932 39797269 674777049 852816830 741178174 309014836 117629292 861691575 733625370 444417558 556416565 947336885 74237664 571441597 736819221 872288563 231436211 20088918 912951708 884209417 28732211 403770492 430857536 750232147 378909779 826227620 143919140 673656385 305979092 327669187 673277418 153802271 795630125 407644600 525214627 828437010 982258319 376178260 818480813 708064958 716597244 596668550 478379396 564706356 480424687 809682366 875842911 534898862 763058279 763015911 288290056 531560608 453643721 381155655 250919344 765167192 391604967 551326890 398364227 929800336 478322359 511994623 985485606 240691143 576100887 61809291 749692516 483913960 645536050 21088878 890000112 751226689 559010111 656809362 218400614 946666721 102660233 456549449 327255424 107934469 211004658 73135522 906811282 655923205 609105843 689879303 318744950 185357571 650500145 725848034 418833946 236007516 456462981 856244382 81043068 267150207 409768563 745981692 340161048 535820887 160629764 60443706 360076865 240907304 625476436 124498050 267732041 320681137 661059045 573263199 546254752 702945886 263972482 248741737 628534180 765452517 547709486 795188694 25606280 997191186 819950487 519467653 39247444 232906638 838035415 120609503 398935868 930749964 693322920 669387757 46308561 539481857 746961186 1425319 990781594 258693963 397216585 433415620 577965908 325170726 188184478 418811550 512754474 944354005 346478108 536980604 935782265 200094368 41548449 660927277 590941579 418093331 323768942 380111600 787094682 430291649 357460663 764887590 724211325 180519733 581841416 909458099 73988950 93557388 128465371 528881281 494696036 985115878 369273504 674848744 289256862 240124577 48731057 572404075 281197107 221899137 489498140 726956234 25465192 524172502 303146101 50414078 495945454 756095328 54403304 577742406 646447043 99940986 178464438 261242699 547401014 873014488 325741158 679857158 911447989 50707282 680560879 112574009 863150241 592671168 348769736 174681537 844536448 869362608 290434502 311373269 330497895 467657407 664537486 484959533 644048745 998770225 21895900 959532675 721184187 793301585 412801523 20001958 685821016 110413851 130848396 798720179 316823936 264814316 723368359 281257517 416766476 952073124 703119223 719559745 125774583 580575814 613740615 502480657 363158642 181675452 227246848 742528490 984285245 448885271 297386368 215443893 946555282 493553997 798987890 330282663 992579683 254908947 692484996 273309271 34892750 7549844 302846202 289913646 480329473 217535801 288002690 495185268 305663983 278193337 822560479 21313295 459192018 927841248 605710989 307725466 595227166 773528056 242713517 17474493 408360438 804692093 13543302 661281884 639682916 630262434 186983128 599774269 109846435 150898512 208029375 650375933 927682485 688989842 658557699 900344618 945325501 692670296 856825160 353395654 1631399 467482724 699404303 41128722 627497617 24901456 337612451 900528404 697347798 22280576 877018461 347836090 292213182 404504365 717108129 270603831 527623677 120554102 764797021 154667223 234788158 96862737 316691236 320512272 197835296 775220508 998363086 168815277 117882768 146896633 317264609 165374328 853346101 429518667 161963030 739463763 45579840 503103184 447612149 994584660 733130959 720558313 930218527 709149459 958166162 601294564 786098229 948078582 379528057 806992224 624364943 982649563 699165342 94819095 873567822 448163687 675064615 891120574 532295456 368107086 649983705 190128675 636894931 797582916 603099432 204274072 345817896 433508873 952032340 109794684 131832264 809016509 345400367 582914855 933518636 50413078 156242537 115047153 388014760 108238531 802357847 946497166 743109453 634034965 696863662 262324821 197239481 345235103 85748695 204720676 598301901 44752039 863796068 316415216 683958779 757888405 127252865 593349494 339769560 168543949 505667539 589169934 523319512 972624918 551935052 673117662 67022767 439875232 568972258 663152267 610255551 963815478 625011822 979015907 504999588 589448398 588011318 311051044 875371511 815953419 347931508 925367810 140125832 752817972 582464592 248306967 969990316 748334068 682108342 349475922 587751812 8386472 573174386 897000169 458702378 271054382 20341708 395011394 495576583 584383083 801526600 412655267 359172966 926007061 644741473 457261465 257810915 153356978 265838427 928046425 321525251 749106981 107491253 704261201 34907319 362456312 260721718 52024050 606396557 957412944 393357696 633963841 279728739 708015672 855472884 964477963 233512442 439952700 507410401 55936586 263445415 515093174 371259757 211264066 364231997 887701068 763423664 362414472 649973146 738358565 83438481 396177753 763502260 705400101 487026586 134186053 825314010 721558285 78664805 536544539 708310926 836808148 73900043 533547304 713704682 39642315 646551951 210629212 998144058 940763825 653875151 614406006 217591341 932018453 883097368 678094031 836746972 650783715 179885682 220586779 547637895 414418458 448105601 224924970 837601936 85799943 62452583 91732315 928949343 662503873 347620498 825299998 586673049 1460493 445364447 635142784 815909799 377893252 51019961 630275622 749873990 144931900 256324176 169595979 435596572 578798721 894827762 395264912 957007037 527022345 646493607 422886730 484538920 844148032 999046996 118471306 415871712 363175964 12403829 288328150 813824240 279211742 713109897 625567393 263335102 450031427 41452489 229752091 484919741 620240509 384033967 398120560 362115637 241838501 397674711 79098175 148376563 223393376 681950682 325532476 330015624 421450549 925528121 140285166 501376422 132374794 265638537 734955335 578470938 999501305 791465476 346954219 488908397 197546407 782648975 162285413 492917353 434594226 486056400 416059844 308403220 227318787 704785873 268103475 632607385 713640615 49571818 401185556 893917228 672127718 893504635 702941815 92598307 909858126 201823649 733941940 816301867 420381088 868895311 16322270 223400013 901189961 383017802 228228269 333848700 588284868 339808893 239291072 24856332 631008446 894116632 129799562 710749251 550698502 986614879 258453612 215909518 116890515 381881267 429140155 315098071 335919159 525999292 864946060 425646172 829386767 996143236 677896905 404808825 803775219 18384705 814311841 890031741 458163533 787994683 567950270 979266604 659081164 541876401 114901350 933954768 388500102 10817202 113236912 270140424 550330977 476150760 560797697 573912732 70236702 912992616 138006096 367939709 242749438 63013599 607419225 156506201 991485115 795704201 391615686 367320560 933675302 64905785 72721740 708368595 324890521 265920331 490878692 777689716 862317391 562122068 659117497 930916399 412657401 273208580 682204196 829799940 490609277 663997736 795231436 86160781 103579506 643104498 454461 5412078 921335937 465377356 597037864 473208565 775347627 888306543 814061852 344944347 844795452 309115896 350760092 544832426 424659134 446725292 308945075 318295593 828290485 485770674 841471431 479650478 626826892 259693861 947902701 144809320 538499104 584814342 829381743 161623615 377847508 53764318 987028576 931961364 496587075 181794997 982391142 29894252 273305283 283234938 149706254 548470373 52740491 668704866 580575943 790818682 821887901 851903430 336223654 889157562 614415005 77445633 880923875 617809434 892195413 745162241 696872652 178597424 381683855 388737919 151136864 145135473 280150479 917379888 706419335 141531052 544952296 925402803 144793372 962325232 74537880 170372367 726856805 952329807 686655510 522621753 938928484 854404569 49632821 241543060 429538247 480003044 202319764 740112963 743428749 478104723 85716582 409538120 961022040 390231330 826117868 961378674 525712099 427813119 885966730 903649335 490808764 755701120 772016247 584696349 469454529 744216711 910047333 162910578 197580455 743736528 189290714 569837987 257995963 134973038 554831385 679784004 684382133 990101925 346731443 123296602 96348754 392311430 528261700 712382870 278147903 148897395 570127327 627869952 867957726 84685436 736753127 266400811 962260440 492386972 788871360 425775515 993336947 995147987 425913065 675055700 501256397 592133107 700277775 382372652 510364060 27152538 975128536 403112761 141464470 750061084 891063070 272072602 533484764 680909424 300911074 486042614 224657672 367293337 367589991 696110835 400830902 634065319 188692051 374413944 847150034 653567128 368882056 736276956 420204572 562078872 680399764 981767623 92218225 941126109 299677474 975670500 492414330 920051811 845814429 25785265 260820307 332615814 407795089 151039879 599636218 171354459 301559906 4384068 580932277 737968527 811625122 114184228 94256541 501394774 158086583 921288913 886839092 366192410 302147786 91593991 483224604 352164726 431714936 144290857 235394555 757085290 272306185 709077444 280128631 543623723 522628112 972591818 398840597 517747566 920782399 530852336 731840239 886633969 481659400 19694720 810164226 275445442 685106846 353156926 172338117 731655732 801401567 471569106 322135766 460779133 349672185 736697734 130948818 301371210 693470732 372903925 852698116 480551320 700556293 93790391 273187226 173025541 465784746 295455510 307465884 458385656 538721846 340722892 541680468 951603404 878396818 832095950 130953980 330238164 997213852 745340562 708962231 516835743 621383688 428558012 807955882 488196959 512150448 222233519 961103480 584169007 204123194 679074534 379502703 417302754 88351209 987118350 117707067 361679928 452041995 128423788 787507776 251644466 859636996 744896237 778335881 726258113 554788892 630455579 959808918 272542883 783762143 451691102 220254399 863375360 366855449 923869244 983091051 360634806 661781770 215124350 91730941 50719974 279507374 831090682 228955131 762000684 171531794 980301403 822817412 653619294 586783466 945299155 368935950 489462852 923687184 972310444 520159759 191304675 658053481 272297668 957886876 826600513 178320012 610017698 103293228 188657036 561694520 58037046 317266084 346805654 960906198 469313859 943316595 383202549 145123080 418519204 862057422 776126380 302559118 337142585 71669677 355159710 322601099 285201908 160499312 531805299 452555915 171645939 28854917 826767876 134961822 378306137 130031372 879825003 674029806 540490118 2089765 713865227 732899853 5923136 512493033 969017422 767371912 319338977 920227062 330452386 906351156 763719477 987792777 262249787 775512049 749575866 286417238 505825398 631042651 971271111 958696755 381211500 692642268 428522462 645517683 445134469 889752484 794663087 962916708 529381412 92016958 626281076 952548643 158732633 203389548 893182876 918639648 164162209 801899528 605947499 283467582 537571489 16951098 423342562 316739740 668931947 77126341 786306125 726420263 524635383 245538228 686361423 156161018 10603001 242198324 938960479 249188351 282459777 129320122 651496189 564002942 869748966 453303453 10615839 808790865 872282713 414780293 781650124 503356212 378706588 213086948 289078284 570729135 519320341 690589447 210542537 48397301 107683284 310749478 523830565 880018061 479465175 490786222 803103388 262647273 877532628 240620888 927625386 608271731 241774302 333292307 376355443 743016433 355383833 59477363 211523467 626011755 298760492 272682489 922608660 814292817 277982268 812552632 771870746 374306994 420854617 451210089 470135605 958868688 651793105 795952787 874342955 224016580 791208794 457314604 485232517 280549077 634372694 602604499 720666061 80105484 961650923 180048815 96728375 316085549 519157814 769431665 403391538 915041275 556042601 691912820 25946270 378368220 473630076 395204922 681772276 253352047 301828646 314785761 363206027 22250926 8374060 242386191 898411883 921659053 40339560 493619817 172300787 112274462 232290058 83916126 3698342 161508746 292046944 89628401 763042469 880717539 121636853 440770971 591008006 872252704 780870963 433519773 687775701 159387178 93161739 810022940 456594322 595761057 673117394 533233865 634556432 932479840 601336028 624391276 810724971 296724223 264803381 220456512 980628775 94540715 750190637 421628843 508822492 454696843 799832168 277722469 575290004 478422911 612382690 698824150 913187581 285731460 305182828 622182962 769261136 863426590 626652159 88202961 422615701 266374282 375652361 818306831 815971359 85769744 405119354 181473226 520313601 146690646 190841396 15472443 509131803 426329269 571835466 960621567 287155096 27118152 706040766 96803470 508057451 599979743 3975144 833995837 621819481 434229151 540933605 931908089 378777022 765972512 210801739 794219715 176833739 88315616 742422417 933617471 380941107 204290778 899127169 249528493 27182946 796292463 345896417 299055089 905189504 174218153 933235911 111342893 862964180 516201828 351246203 845747842 313997099 40855466 874577115 50596509 636886778 95310270 747622949 467328219 37887111 302731879 303712606 855016068 362220736 341627068 329831739 654544685 809170291 658152509 996109452 438360825 713163342 209296980 298113589 645893160 687629884 909523037 258010177 343953488 713381795 334878874 356660793 589572669 92582089 461373839 308414235 926874859 817428224 364025601 86713306 242826304 910108947 207254853 508529056 480689449 555397487 842601090 86616757 298907271 553957291 687979736 677641012 980830726 753314744 62972241 770031778 133170347 884132220 814070536 172910704 889922999 905944749 569215271 648349036 365725817 96929377 322474907 892428558 528832538 278593657 661972282 367273309 386799256 307181581 758946851 199916509 856594307 913210387 635398603 602254171 206929436 930663597 725358263 395102203 65679486 198675279 678055174 536421203 873995339 818772787 80757151 750570326 248771439 547218088 216258638 417377982 42460011 522999720 786597447 702033318 432612315 309175649 570232316 112752914 862132517 986320030 871189772 208887437 406000464 48949946 741240265 518339686 857933628 344434656 7822923 15255617 409778406 838014765 787565463 986571708 483493454 14418270 733552910 675484834 855680235 435268932 940655020 47236225 961398792 295860761 604904129 648297389 33255809 54940525 214558137 338829516 879325070 535498975 414852150 607955 819409989 836889303 404867801 582660944 314678631 919125470 364430601 677965031 445208128 294988507 588719377 128637933 33614576 887143418 87003907 621784589 461018063 966781639 555035295 785937018 601409123 466005630 869775535 612652971 560784016 187486465 948311652 943690316 239711238 909846435 239421107 992528611 856441766 155528823 249211371 349908594 147308001 465077653 746369449 150521718 557392000 771037237 792625067 38246651 789595737 842512635 187580425 224312890 1091752 561840875 204427279 801985458 397016710 728700424 914592236 652263649 3658657 730154897 942343584 99257688 924950085 401773806 919809517 664483331 685344204 599459715 146892934 575594054 425838064 584141993 875656880 745876407 617891610 621808491 680842713 984325294 490770383 239111856 756546550 844555082 60943435 860948552 339498110 714222060 280573691 961803030 980470354 488749028 401479909 379440187 779202162 601186642 257239668 249677579 537472524 186648536 631770799 357732110 885442659 417037396 626270993 249956279 301055722 470674408 310372710 17797850 437496119 485395227 959439732 384578286 804180023 848159831 2707383 379144010 211621601 647338194 263662981 792861190 350820061 151773411 780135728 857937104 756966534 298613555 419016501 432194677 423056184 264233580 477000626 102083230 28857835 768396408 699299481 408989361 459561872 301160892 821189989 461385024 19628304 363141746 984795427 786924838 797102991 111266778 939450511 583603099 372693030 34273393 533391940 857760639 546900781 618520278 317732744 168582956 379669983 162240843 29768313 918174548 580248571 226255103 88814922 690042895 15750280 574367038 528254499 144267030 207441976 7591400 598617465 606241088 609031651 636662380 275610934 922400319 141469170 248814541 558428223 353125110 737530615 532763188 418300789 780899797 179838862 466128381 701536644 261996440 846438929 296485309 792095070 224429768 264361805 378384619 274222742 511576764 11463327 980071990 359902075 786431745 96955906 592274010 239835679 662508894 33930959 393135877 73477914 615442213 810568875 357196370 171502348 166688042 620476064 740327833 908493305 838298645 369613109 34949063 637689474 289914562 299969428 325416733 783895559 791773662 753250238 405934372 864039113 493279184 929386322 793455780 740785511 280598377 895902774 361474674 144283381 128580287 905996909 326106939 132782863 694963546 300846666 37879743 504510522 892811230 801321146 964648121 196939452 544109347 211017031 657636765 865140 897483528 482088164 791668749 830026276 243524934 166233132 39982786 951680601 716819111 653908819 597998368 256713826 271671357 598661068 661316861 932054542 283414002 738143643 455235576 740744163 694723958 111375753 54905759 708895124 157789189 284508588 100546593 203177971 958616348 909042651 869838276 373468050 377176952 155353901 526595498 565387971 73241170 834044015 611575325 294726692 257412398 944115505 791045632 633530609 502186752 115172638 403192413 363975019 241709124 557035960 983305916 611853264 956397054 903022472 772187084 884795579 698212122 65365769 453543877 81626053 881936222 378848374 317064220 118681778 514451609 908812165 447411641 926799701 724288527 700962482 127109866 619141064 499251462 270660845 324268055 776707437 528958978 746597496 219515040 670887468 768052323 814121012 842796775 56752732 769669044 427310101 553879716 169938897 635448351 223232108 514834813 111675218 846049926 839350260 782868181 641351123 938242834 946689371 261140761 904958022 278370762 504056089 355246976 580217378 900787016 564847026 366126919 280607806 396298326 446656062 450770795 970571459 70316494 223059052 236429259 5839609 389304972 29708966 331111385 407816189 742054091 958369291 735970712 447053195 340192524 46535172 971420872 785522903 172508553 826748837 793995798 980851406 857182623 511532028 730712422 94831948 273045200 716876605 820875566 16608067 325164177 744758137 853290574 60478588 723822854 24648523 255328552 198232961 419445594 331680585 700227736 980792415 904018420 304038065 949052979 949454222 166432220 107451181 740866974 111718387 321486286 353980835 267860087 99248288 198232914 902002666 745325460 61325104 515643665 489540183 588916308 216606041 99761307 987828568 309528096 100324133 779773877 456700746 681316651 571731950 707985211 344199445 999565839 635722570 750295118 155009637 838356433 851976093 570139742 592047972 694807230 647398698 980017069 861781225 960489202 155663375 796627047 32017129 269177828 991047681 279847811 37105022 876201415 547406673 608671756 252755173 238961185 817128688 236744253 238872241 956593381 837691767 939454930 164599966 940046713 974222556 15947295 126871851 577164379 290222898 142541085 588767506 695025460 882837725 517455469 894104284 645870485 44156100 211567914 762748310 593303578 123570324 176278190 164367911 926247716 607274469 419832841 253803550 287816028 779772933 881266018 492585744 914438213 439819094 484134142 619746452 266105674 946781869 313276283 849336798 307935170 981686002 516033297 953696299 150311739 66355148 873942786 315782844 733135243 451846401 412597270 289732743 872148508 612745839 87120221 694363710 515386895 160882504 729216338 268722139 528891378 817075108 386007022 232354769 520271503 844253042 494810993 571930913 991631634 846304384 683228873 433010858 762411705 772726700 116596085 374033592 737791806 710743276 180675888 478008894 261773730 67802573 298913580 927612970 674608895 129277740 423924098 532226402 202538167 43009659 610742740 661382181 238415388 867610430 860834740 820643130 165438116 384487179 688466093 845013266 805007758 762569529 841257815 723623933 247900315 345653068 495286154 405515206 237797503 730893788 284519764 236509118 741781008 177910871 501028117 377469541 274410904 319527965 6175466 7781954 91970853 5059462 91755225 258992958 917811281 850722872 6690890 525284128 739421947 545768517 957168684 955800778 953913585 42504918 791087053 702156529 90799432 933491608 672480836 697787049 30412574 692282652 420207995 473970956 148079876 356598610 839203830 588964248 219379683 801739383 669865193 900042340 630380578 704229982 180016723 548059734 180506100 613041622 911197532 983084427 288329128 731315937 4981551 867947306 522861819 827076840 864014070 180291857 446132834 640543045 833840269 106402013 271011631 955991314 201201085 549376574 35970777 25168720 635352598 730740952 80100606 107319789 715955271 25870240 237010560 248648790 580417799 144795195 420266935 351106732 704571308 838643617 103330442 366876500 928708995 305144250 560027303 711684768 985257798 612231154 279133116 175011928 503497857 47103843 611543392 293391019 533033596 126820119 757487165 125302748 858529460 859041162 844341370 283048253 298370804 862489119 92676734 244908123 272165882 548157986 933413355 961608061 317799462 437328261 628998261 641076844 807987386 904864127 699153089 378753311 524441159 241614322 975272138 777107080 1833966 285457668 955625853 781302 514341777 290663178 186742160 206890378 289121537 38012213 778625351 768009661 322100859 249717450 916863515 972730064 150412819 852899738 632566373 664361604 690620830 309005137 224003777 392690693 368342023 400289257 808262018 401276937 330083843 187783405 280280193 124345563 807876157 754106871 76131204 800773859 416754276 277656440 515732845 311869618 113866499 444332120 301679457 467619168 399535779 600447372 912039717 545414972 946369321 291669283 440413856 71444177 636765978 888457308 489337222 232498772 757948870 308668 116195292 54637614 57061443 306985196 22141638 88098416 935649413 493072417 902081186 837274555 260427237 799451039 74894553 578397097 274085950 111742807 985955376 402404450 128107611 176785122 60434193 847004478 648242587 319612575 479327011 535844821 506700486 11000263 538576491 996241573 52720447 433566888 821399196 79638164 601447805 963129853 120263350 604663610 251073293 553028519 122064646 304476343 433383161 914603424 121257645 827408129 673809227 358545794 710764643 950116319 707305343 154562772 894457703 666532621 947030040 401141833 83320496 821771291 287432320 922654868 416018379 299989344 314928683 474891527 601539933 382213000 528680757 927771392 220667954 860467239 586614697 351390585 332873388 133080863 281230980 221101348 238247977 356563294 117093550 96281602 331324753 83390131 105750787 133479113 814034870 711342585 868708635 864783518 190135038 573608676 915009656 965147988 269757519 933532361 350362166 806204712 394990477 769089927 989642739 797482869 589783505 709547282 740050953 616670603 505006912 646177390 397124208 852189950 878304530 226694402 94576497 160193848 597020678 639734437 500196958 168202578 299340386 910274130 82679077 235782641 177021325 249821005 533821628 803183655 132152468 442537535 825605265 697086760 127318748 653722962 675736586 319200864 645344059 524132543 363295216 672902567 318125921 830823470 432713265 719788708 301511094 280501160 593723381 974915415 651647651 851267199 103460639 999346869 247100581 51265925 294159513 792680830 392493120 946834971 811003181 644705254 218779359 487026997 758294154 882972097 439312292 918951621 369284342 609620011 388100540 639687829 707330664 670683396 440510787 60993878 135755348 952123489 853840814 829380426 942351708 931872346 175268325 350008000 486336444 894681400 759821350 675914384 419199843 110727210 262154730 884914915 798241800 737254145 671211532 701560677 495605720 732808673 78989626 849821833 971048190 204888506 307520487 992247546 847846516 454246068 386607989 739458094 638300853 271817667 854737633 3823248 761469723 404362933 754169059 517171748 634410115 232945351 496737178 986083036 793234326 30869236 419461320 114370082 853647522 596414479 253857210 147562383 583576365 841500697 803041099 175202075 774674790 966273728 172295600 380237600 817393906 385688584 189652063 631346929 372478808 784892980 289031160 787095497 288030984 70167803 508802139 498371074 691182397 939008713 938641416 991171107 155028897 872624955 39544551 712871209 886141839 368521460 366948689 98558649 257559739 869355490 54893844 293863141 498571805 907322760 33332898 245800489 644703001 527467631 360682398 833284188 91433727 415160136 606068472 935643219 435537401 590885770 187525230 786252335 767275710 430299106 108409352 718222740 971104550 973404397 163466797 669810944 906082359 556836144 546517452 637606083 668541413 131770316 638121378 491860895 124529869 506968562 964320506 976912588 249247287 910383958 420286492 224782160 156164411 630302387 239654683 631358129 913319479 352311459 373853952 895834165 930236487 21657250 4154739 108315449 497033217 579701356 337106974 168392125 282739851 524057225 399619316 872703863 536193767 620688538 241537854 433538535 496965441 88369457 292962558 510718506 23894723 504136808 830680675 970220377 679094578 990986848 337039593 116197893 511747047 592278137 901199708 923573261 76170797 860217329 230095926 646100921 560601000 940886245 73576721 308130944 335031198 128798022 52072664 925806282 147852884 690531390 31671404 255207116 527518045 608611427 145910430 997693347 949470163 915444629 695102267 929209434 101301543 840330551 926860720 802471356 539484945 622691779 719520625 825208626 249169675 172926405 158517805 824968953 806144155 304441232 60017279 561296101 859612408 246890874 619235414 900300752 907655128 834380061 810027982 199201593 820558347 548007106 563758707 106859821 879465772 725172975 968614940 488943231 905366753 347600431 944614395 753220536 560076098 959758141 602509457 199661445 502786511 498366388 415721643 739396685 695067169 909613565 310495152 204049419 562189917 719580705 890745376 915258251 110938866 527072326 167703011 606840277 985016422 138572742 488413738 98260705 109497131 277600758 587172755 189524973 723940872 136984465 793406223 766490103 254897542 428487160 728951913 306215453 627357496 753403478 692540611 624229871 200885856 91921985 388327767 185663039 564918548 775716307 626906520 508843464 144618732 556961127 876442085 250434616 787955125 974776627 752736124 731452168 742451539 195092740 361780369 968317537 841530331 383738153 801075050 536648195 132700227 540349405 87044979 227590944 755000014 308997828 18125818 716997840 781182033 818115392 979624372 865787105 513847328 763143672 854325958 525673522 246580889 521451399 165392114 835180061 934456825 444184487 996019742 223590497 833391762 34366283 845196660 755480891 430966516 798138082 708087980 588227879 544666099 573509625 274482984 102685662 341060540 152487375 829947572 635695665 177296712 175545678 11401948 126409744 951876436 468433737 311769120 434712839 257702844 587129838 933776158 344751224 913492098 515770803 973009573 586692498 767666668 479827435 147393253 200754444 494535430 452831372 455914516 592858922 432010256 320737659 164883225 31877792 356862114 61090150 343334546 271466162 89763506 781864681 591706490 662972377 325626427 482338274 524396478 545764742 928405848 957041878 121761155 28565564 873165466 581841948 971504844 677788456 146658594 644343104 445621251 399112056 273511894 13757518 505787270 370413331 126388023 913059456 376383925 160486737 238665506 141480307 763802554 327709663 375738766 270962691 711126624 946487721 545937869 400183990 23905029 761847126 528117761 327858709 647867209 559505999 211515385 692102093 491450432 173973214 381017279 680417962 558381150 75479938 251650677 758634988 774300156 606522546 26350377 120645974 650964346 954024961 784758873 486340527 633778028 370092545 735333028 842910515 893326064 56649198 679153481 992362564 749768798 184946737 235088027 847708152 378042095 866622771 23199420 475517755 858934148 728908304 355941417 273948035 750833443 109155018 168101429 223294501 931687070 429815008 196803853 114946826 416978184 343448093 711963749 981639649 516961089 186991591 887742495 85255564 937027357 842707655 546650497 713521365 762129361 522245471 148270499 943030046 624718548 620059887 439011614 773942111 483369133 876890084 800796898 245156446 472763326 746627144 557134694 17366703 6804394 563429403 204106292 458278010 635750374 628355327 280061919 645184502 331121204 608073236 756060331 496456578 783981639 110600848 742256390 219723171 363522910 684034499 570594119 486712048 324104379 922803290 147815884 301499485 333415692 464751382 309944898 956480663 599986431 649434740 644119921 509083300 971023402 4726185 581091430 533087713 321561606 19673295 876202754 833590789 931430825 712263641 298772961 437551890 343739556 851616650 823957635 185715086 815222948 995742867 114425814 290494266 138356193 120471329 473466636 281865466 932587909 514024252 917697306 715122009 846298596 491127211 454678153 321341594 954278333 526390040 974204383 467871604 821315390 10697971 644494853 829627369 382429026 483575968 587702912 196032350 33175827 519606522 869809673 524194570 75625582 136392275 478477658 895125955 792453598 850739937 232798399 550764117 896178718 259705626 957689477 190073891 24178232 433573397 132011086 776967879 57983339 981354177 780224721 643869888 303588958 14638899 561452347 713824129 77654494 329460353 550276258 679079522 504122131 510273509 931133 257389099 337593914 335231883 696767451 298575807 949038833 350282186 573074145 728068905 682318445 471355870 954871773 915710871 47506005 827810509 446873382 485061365 793386852 728951072 731665865 459084545 700951804 819542661 143051010 660742722 594367256 941432202 168023803 972174005 744600654 643569344 83895935 280479490 310016983 611825369 608350354 120858063 461929571 917746917 96323903 536380159 146791655 411999724 119260273 991852911 293268244 482545806 616498497 75168105 860679554 297853674 27747582 264726884 79405339 632579804 761140183 269835888 784806474 821677061 827844703 642569051 668283920 996054907 167940197 756954370 804286150 351818251 32605775 632799390 460669297 339617040 204035740 157438262 977120912 674109404 23304072 967824277 983650744 944687110 129517773 356668614 52593407 978651290 981673688 447467726 488692704 164385557 14089955 241983267 479887181 669230742 810669986 311962094 801842256 78143468 494030765 868361420 421890489 25644876 748216848 366054183 812311068 660452643 566601154 696549192 6719438 137283786 44407574 971890107 427977959 819286952 237338355 837410558 12507296 735584637 590496166 37115585 35209769 232889329 897924845 121939795 655914618 157591721 616097345 390513708 910689724 831559785 362159371 241146685 725821966 733545096 4448980 650004704 58745511 894876993 910193934 786211420 439409218 311256065 130520425 103420367 604162563 809203072 107652717 314656805 710455014 864134869 287976465 874216916 444695766 79768533 753831444 636071103 696541348 426113638 212043251 772059293 425300305 355658064 81239081 177071176 238600392 981795372 440238843 288617430 640521857 636471076 683968632 896563345 574929891 304693457 688099367 718832782 28438280 60605603 534223624 21872449 483905300 532804574 43516564 266330261 602358170 342270956 287431309 150254968 735199450 210578441 27015696 920015390 978159406 362277775 830354916 38681166 277767331 509609447 884937401 268955342 814043465 964782251 716579782 995380201 950367193 230680948 461230738 223277569 163741106 842209921 43415359 472028088 79484063 622716668 479906449 740780498 145708474 976909885 150961491 961401852 374369145 56859429 845772679 661402299 602528687 431863105 625958847 735614926 87336741 852749540 521348263 445436496 413447390 447028689 118497907 205665646 906348878 132096510 867079132 421111300 831436312 976973546 787361409 900743749 846459844 200954892 338742383 446451061 329500536 829079740 191453954 387380896 746791806 75803236 187165467 47765452 158213279 142039136 370086161 653095314 696994962 321645934 729658738 588451778 378637175 87386800 150526458 154824827 253489346 969089055 347648175 316526944 649954931 296769884 720870373 965728242 134376407 239692841 302757494 770065828 627986727 784907091 799832992 184890787 70199120 899141220 270454753 116310678 174582271 1309833 278498018 39890412 995090060 942600212 27549189 443759096 402006498 953765976 911066765 408793377 489917285 249453079 307346820 357013076 523830132 877696356 244921569 778658255 876693124 976540209 847385077 547696858 320280185 384691612 403633304 537509983 975030351 254241305 525317863 314091489 589190566 799542236 22606765 471591434 730324345 312062441 874446808 856465140 888143686 554697346 662762805 729544858 377005775 760753626 856625922 516764133 517229510 826136500 353247492 549459671 705491859 208827805 105732624 555480207 482883323 663334929 228380406 324706972 534343843 205913469 581860066 225094410 262624590 834358264 821965556 993013803 638546583 783392732 332313387 806543490 336702216 828930452 740361647 74298756 387538687 150316297 783009563 887558393 77923825 922312417 459401935 594559186 627710577 511052020 375664322 557358468 722990008 389255470 780370423 43407692 743905943 888150642 141829208 330916554 241480790 740124207 281902837 36044260 894891492 919053400 719287172 877510325 209210544 403307151 367519287 280145241 916693894 789628065 249864709 316404116 267795103 281792039 195483250 468984924 224493630 525117422 6091526 530360602 133636102 320765513 607379846 46710494 89262340 225984792 329971527 489830413 334059822 432348082 426446718 40849981 484047505 676129167 444075842 915476803 663807954 666496100 902786318 609701688 285657411 216915928 970999912 960967162 744826967 265739109 821153287 235163331 685963159 142186548 107352280 47500107 839362292 570117709 80693086 784118946 115563529 141669296 276135759 861682956 828758446 287921534 245729482 807946037 381084318 747948759 800269300 37286005 188659677 557971213 165690743 669673296 186223948 767405355 313518946 14271819 825431672 331953223 267142759 264387606 673137769 658488546 647580238 379243642 959311729 766185311 565260160 855436889 551732261 298266872 77828318 163658960 54694599 592571290 755211757 642755769 860105853 291252333 504895229 738323741 967273506 573327518 920227273 580526603 586155734 924829976 369056347 997662375 9364699 822397805 122704218 757768243 796704931 639074620 611593549 948918731 779870131 485563853 462581996 505116024 765139746 698555563 39600556 627708756 879145145 125420780 169767004 184628214 883295708 133568833 563982602 506850510 239454041 800824589 411001606 860225444 684025575 706833008 881729497 703607089 679680999 446038722 477400850 297828117 226952756 515247677 540509678 476935711 330661205 948434299 345834929 494128121 936109519 476165969 732456409 715317359 465006001 728169674 42642571 775295107 894215114 78850789 589230858 264133374 218439891 177977864 6375561 267654803 819002768 293914314 813554557 129220605 446546234 250829493 613387939 682216862 817901477 314117137 715558784 156909039 507862474 752724905 753201810 654271875 201976226 918478637 24698137 709699999 293818872 105301966 122518900 964749546 366940627 392792521 710293928 482707991 475182048 384986139 856583506 349534770 994958648 974629407 722593530 10833911 766698849 204380162 864889700 977114923 179729319 845003391 680241320 226649766 245172511 948912388 372059485 742642191 386248475 940724450 102256441 154742643 524632135 608147944 560155294 958102821 15701563 14547069 667265802 693073355 46079610 968561427 54033908 737777411 17752251 760925836 211302641 817492940 42024834 46890656 532983335 869007037 546090020 568138164 507859432 882601366 414267785 391501219 191489701 518416203 368572506 374321206 339332220 383474781 395676024 261868200 477289179 847692940 220099797 491208810 67308344 332933418 290774019 1551673 730788969 687631508 752817671 670104454 184089799 165824071 924110942 768437584 362752383 928678456 291840352 279454692 951234897 784538347 111958186 342903010 992819669 437155470 184396982 359837495 746361788 86405635 312642836 802502169 202288789 125878543 361445731 342354898 510732171 88799567 285788503 894083286 689399043 249663060 437418762 162777603 898116063 579916922 437364082 432899911 710123686 636737784 150617601 473242024 765400122 995036594 139136949 870451157 695676855 553374291 114102216 316719521 15521056 289699936 311062460 864729215 170339485 560501685 426754081 216250851 204303911 249934536 423891931 226119548 951508848 428197725 363548520 327951741 700026769 954206641 749130150 115192392 943360980 927318952 460243333 374502364 147363281 987659756 874750340 340476341 46860431 205121962 981185718 521502806 90889484 363898525 944955201 610423339 405342701 86644219 988408060 875720789 13481152 374581926 371912796 855671768 376712789 351471728 804203343 678480723 33932164 671715776 820075625 751380150 14072147 468811998 268432227 153907752 537539861 711606829 836937672 690261488 66649974 856182513 618677623 990262536 196648021 433208448 852320701 938895729 534655042 183006432 913844102 918476584 695984907 119758427 328108169 15087578 694676383 349001091 9466831 397991996 150085845 858573813 227247690 584967837 788568474 147471107 735490468 588590833 10399467 306911867 722323039 969576005 691134898 259945582 653506242 239144220 662704511 328247062 516846285 337134783 811509711 683385338 238838334 443278657 768219183 59163586 672094 328856210 409481292 426159836 180761711 801611652 895096578 821306076 309965990 951085402 85698628 958298065 700897203 298028679 816712313 49293199 944575389 642826947 739063440 493410364 106188867 117369919 230156755 694964335 96825126 258178869 457094463 519084359 135098847 858324586 39179170 427519443 176709908 484178601 655544594 837225479 26221562 385714950 511612982 107460028 424726030 24846647 713045800 651196336 862293838 490632964 212098885 717690944 937990955 61128880 256743191 810799390 188716285 349107097 585499767 791603240 255442153 976235639 627393735 815561546 932906870 676228735 825611713 476471722 815530789 349741147 890395367 912646266 910031828 787278955 10940555 665113236 584537605 860208480 974975753 119568006 76785693 785436037 426883703 523065726 407765775 352148375 980494843 856337508 281313040 94786736 500792160 398687148 497550489 885314003 188346618 972502889 210521929 637529012 153904374 97962305 289880122 592621046 417380863 923857714 52819123 367959616 151502802 741913393 114371093 470062950 875480047 793189960 322362465 35000556 484033861 726310110 461492736 19135404 502768587 200141151 236942786 661604015 998838857 888138214 909997538 978744543 929064366 229905347 883166805 106100139 267237451 576865117 611723168 123464725 649078902 761573358 289660469 18344986 589398580 405600944 332838434 493930499 957513548 654332760 350366072 478062643 325088222 344341290 73343928 860017645 30095549 102872659 883838719 88604502 656631449 733472809 82757032 286835634 918224756 621433912 584850406 27455525 795461065 783068544 474099000 927815324 145792624 171817592 925919762 911943119 948134682 529569883 292460836 915280492 125740746 986772876 769755468 525272234 610528067 184611782 128452054 142149904 603056685 508203796 213918957 511092680 479679220 795305700 156825546 136854760 790152719 367923843 162798351 597230628 469705559 235293681 700137174 686175406 507019116 625994379 614003995 543533485 971195250 909567433 781872498 495884858 286158674 771630571 983212748 214873580 272536850 967949614 231159570 391783618 812387151 86913718 221484626 552994702 66832930 489010106 622303788 548233728 801544310 234352340 316824489 897923418 763527200 290619744 675179017 347961709 379393289 372658893 619207460 668308536 27413457 320077562 75138761 112063428 365071406 158541766 935615604 14567878 761435498 867691635 971049634 162994073 839660155 798185622 941393662 724721011 113451247 312743142 979592186 355230595 844879714 981194869 405352755 155219403 958069386 193789536 637233483 972835757 702322594 62035244 636734361 125369648 556217161 15366331 904826327 619209550 442045356 563294915 126772668 491498554 954012254 191465076 642418689 783068865 330264740 723747103 769726880 881782672 661900181 311533073 491149773 866816397 8005242 205542453 534690674 127952224 265048160 871305958 834491257 651425643 567342811 625907950 546956378 722702843 630041846 39134618 995426099 692506371 144366266 684125256 105071874 560564578 869782474 432962715 517842179 530132895 721938294 648526195 742313797 500626836 87149318 156736872 799212686 825504680 104587820 803625985 320231160 676625439 468224777 956682699 950423410 736312880 934367399 306934758 663832949 628947417 77092122 560345212 211921109 720888168 284926702 871162323 635425703 614633034 532439840 726501583 668487363 686645466 415787971 333984035 672818176 180961027 504514327 993474670 373095253 832289446 217559666 212274474 905873673 766107817 44881604 224120392 338558764 260655457 635654041 418841981 440744451 246844553 294099699 888489852 971447198 521864839 715784841 511769805 308791625 432343090 98673080 43047590 70455582 456402162 472003297 550999166 622934988 604893923 403048298 952456383 93123418 409242997 764023333 538318088 777419774 12701655 302662033 714484317 231066290 802122753 870806822 387181983 212865336 393033517 520439201 441997458 792969095 327542070 546712557 330514119 884031732 548565798 95830340 614779772 473981322 781801229 251413918 395217334 147645488 285150903 820763090 938111898 708223261 67034920 23085546 688728275 918746686 623445603 146652462 178012784 357602764 324100252 769476880 518041923 883375698 972565177 494376964 276294175 236187083 266835062 761697796 634131181 830729861 672315916 370440590 840231031 33265673 81516547 694343237 18252096 939798768 692401629 531010193 636523815 367901588 733228456 751913711 12135657 610591649 270751415 552269894 411329139 808961809 974036802 471411258 382036544 850019144 674288522 391218922 994835681 961252287 710606 346247252 687395031 121921487 938148997 709136050 143872727 635029159 590292455 595390432 824636196 696743896 103714385 259938221 555557611 46137889 299928286 576520636 219843343 262847213 840094498 438885251 946163708 421493491 434943523 867629709 509478122 524211342 908757234 280737609 228795877 568407694 291911656 295356779 97088504 396561288 474959479 459307315 229437123 174519148 176495413 535765958 165315683 946419757 425102195 493045973 875242879 815055747 282345958 572366460 476098671 824320941 486685012 626333147 254984081 978226809 741415635 597307358 746944442 282506741 525270894 870488537 751866225 172989407 166100370 759330834 257499413 627539925 70444275 943636926 805779485 394857436 122934706 603453379 536998375 141917178 222571901 804715228 796958953 102585071 611519259 311783819 113701732 122708268 73695014 132564872 859429510 231829852 743169948 174413374 692221532 526651334 721687010 586801682 89187405 160645229 721690483 799897965 793440137 700507453 549680239 810714424 323431702 931864898 708032516 440156282 988617208 387548910 862248788 450972240 121774794 838810246 537907003 95130273 443854349 89773250 499087929 234740653 867141335 684604476 19773505 109827728 172559347 902456146 635849091 167051522 243828387 69733999 474695079 427595293 356492456 656048484 604398761 306778620 378910213 58529244 696696146 106228074 137045677 364420150 102595048 983159158 478054551 941541646 341612446 366012593 686880893 925154342 55189303 660666619 21444518 793655969 480111442 365910228 429666464 358224449 696424030 134529661 850773409 131056017 785404381 624669900 366090946 674997400 536196461 820693021 214932018 1418311 134226131 639984118 961455121 903025214 72232075 509797490 15057901 620629979 811524880 398701401 159841164 719361438 928840920 74073478 428052938 943042876 774390738 133352019 375676071 934458135 500101501 599973899 394959035 181663270 239039187 451623510 130033091 190594641 262098325 56369974 916797239 88740142 487499388 756457631 725349626 584139366 710595886 927174813 57675067 955966156 276903912 613433624 793754856 711927535 884705695 215291261 342625014 257575617 235382473 31483990 359944197 266453225 302429726 427433266 585004606 106513120 267242909 488538015 667303433 260550675 415238169 292833320 985214489 300808644 131751279 971933766 130396512 106031520 141610794 973335179 649758856 251157167 590919902 413974072 616235687 933261217 271166569 824082237 635033368 527375692 115765391 870058774 911160662 697452525 485590077 94945138 465550547 367838704 552760581 484077949 211456595 43790489 278602053 28926572 602175462 591153629 582643870 861582614 11881462 152929538 349945614 496000502 763539752 507318367 924343592 961131677 657701862 822453649 523300315 372160636 545261659 148616919 508769254 119097763 865642039 825234006 723928410 728005553 102538477 111216241 446718275 101470470 122822278 174825987 896248395 111774460 481075103 431522708 691333396 434871121 812429997 718084432 138420262 160933644 31913193 793868792 852784069 264303192 650761706 411989543 892751811 492140370 379176370 831345773 95090540 750848270 279165494 862941807 593389194 614251233 34803326 954420709 351407162 926131370 548024234 762860175 934708928 754261225 458761632 708447059 786946547 112904251 50991697 549217003 823010618 843852291 880333421 76232360 371582117 550684391 166979493 917047964 676034726 653724382 270805582 130544754 899193726 771364430 407723239 113740546 219827478 677430078 622549561 317684577 839974184 595761939 676614792 256108465 53208500 60478194 410076468 197487725 156359193 352886621 15282720 830618026 163358576 644691545 232484479 862687638 472656848 820152259 79138014 526253350 135359757 620523516 739833915 244988812 466898111 714166703 710007154 772144488 5659255 790409149 630974478 341541809 28702943 815980034 484759274 859802194 669966239 587690533 678565007 202605334 63913620 23161178 8378285 972907509 697195694 910248778 353111454 747230376 69451247 532721271 826099576 760991945 366767430 581213012 34061935 145478876 850053874 846816681 708908968 850351517 578822026 314000560 72791141 870598755 322529498 144336191 816190475 780016333 43128606 943694449 627773688 286934596 40289544 445770069 321225651 442312360 474889055 293952776 173253184 694037175 81493259 446131240 274084354 129913237 611877663 219310357 59223950 966183802 526154968 833533163 404684810 481505777 233417799 596268675 896655503 580177236 319275849 844220469 509361339 133211755 216975279 610608227 614531702 648736727 772301648 19563831 554448377 266948474 760091740 446636997 405384221 888078597 899658585 189189627 862574824 871634312 465885873 17226176 668984741 70979101 313064935 868703299 95755862 402160284 493522909 348994440 314746132 760698535 829977470 899341194 210372696 111916271 555214110 983525143 587068139 730225655 247102094 659712858 147095271 750835456 898742215 380994309 728700845 161076498 726609630 226739242 84153362 360094551 687247159 23997518 285847137 474615780 526135457 978501994 732568914 449584565 134089364 927697771 247310332 48815565 452080489 258251295 450611511 424727532 635618565 889621866 259539623 320737665 515315417 466157311 598969438 331715144 982181654 743647556 236586930 840573289 548125748 494065195 895339634 591318550 706020017 30498361 746828227 721514686 658263419 418082038 235838635 340998760 438939384 904054480 386609919 45960799 636822306 817206889 307047319 601478452 514289855 601508072 364027094 849099621 333930800 280745548 587546954 25339780 599679015 14677468 114594640 320205182 947633768 136111545 600563677 895231039 866724317 18285047 535195541 603104554 834061610 654660319 977209406 445897051 466964477 125972950 450936370 288395865 91594402 868956469 755254738 464223398 688612064 978933724 830614431 559533367 662750724 849535327 952678126 520062166 184820622 384048328 551039681 822691815 958469727 236341974 403196277 700975394 330656316 123661878 12310203 775409919 252846166 360046846 586982725 15261193 625054296 775757446 609834288 920723097 82499806 807292108 828934178 976835396 919252044 836075286 565757551 839973684 497872057 475863720 422264403 475183405 730184928 306769781 189824705 989579775 640916220 962169120 517942424 423701922 176651403 442091873 343466112 899586918 210397588 378158572 19403452 403955254 528835974 311209655 96583122 833245843 635864641 728603997 493961321 199211131 21098965 426353449 541424417 263997564 414670865 149903113 228470892 550594181 519997690 202833232 628068016 216490317 813529270 793722680 282822519 712942467 963560259 359948126 599487513 623357046 327597210 558795716 141658989 459859700 888649305 960745311 107177641 11845650 113355313 142351324 35828235 483197768 234677560 926763620 565643019 25156578 175322360 308735681 44331806 75222278 854737627 937285613 639381755 200593033 466398738 158680929 315514548 88229333 712299438 87292590 780473656 328028143 180632629 630397002 787509910 429340835 400343984 317095614 150450051 545597878 930644858 444529776 377077543 959334597 620066115 310190632 42047528 686612432 507538368 303290950 279073765 704639562 581502361 822991539 791614926 748726799 11110704 444605139 196678799 748608788 638756734 678176796 379574808 566707249 411628958 324763835 902108388 636998729 807281536 556740154 680236623 805508312 981764725 329085725 336763925 288722376 929531890 498321403 471561179 780421159 237815033 459701170 335142837 499738116 442674987 244019782 586018871 579616352 902147045 439790907 476932892 948453444 919885530 641706654 243558407 133283540 189686048 45789081 239460688 697586901 15815688 301081186 771354567 620023656 999503069 963844129 197902873 812346823 792932916 306314591 821702007 965766258 476372912 750112207 112256195 969127237 498543534 123498160 980405466 574837137 592026589 793959775 792856399 843378317 195699888 603950032 475197330 242181369 436134838 126431993 984722976 982087623 370068716 162537829 625288013 999455835 787078218 348082723 713864473 665326963 421150021 854761384 107074339 406942657 384765317 517541086 520512707 229856689 643565966 229830923 342369665 455292336 506267971 321265913 952379585 788691659 768659439 877502324 207360602 961464209 466554259 497259064 314091821 472656082 2917444 666089769 100329010 490475967 21984196 181551522 272041600 393192597 553783675 278320107 241388130 651000040 874821249 79462882 736653019 699354556 106234985 605832951 536862064 262805786 599928940 824726603 99873604 119587670 112683508 439531382 724235791 885547909 295142209 964552728 934897682 842014059 370372426 434618836 271041704 927897767 733556323 461823610 945423780 532486721 956965769 989345231 223365031 173390814 69090980 720718325 965635837 166239312 676371542 928218736 279797145 384888610 236642586 181307359 539618335 431805833 805199161 971145954 491901274 449838436 309294387 487064685 475745768 781015854 212238962 297892151 318244761 298123800 523091138 470858349 341527130 95800431 58959094 207129029 513871124 524963524 255333617 609898273 668148193 614303035 265406817 142503548 228854488 89579290 117898802 694284368 807082554 472168985 711656916 415267506 236368359 277354711 738077740 677888566 6659293 522806994 900679219 347505906 637717838 417786603 229452204 817921900 506619302 314720434 67316379 453041236 290190811 361759378 977113143 799067928 94566773 481660669 186314271 518987383 176342551 774647464 690394919 264542403 997100101 498465651 61304890 899333330 347006507 837386787 427158397 641424979 393864622 662301361 111982736 990562359 437280783 100795514 760939172 826068234 359446229 14237326 394115476 471580790 871903482 639814979 461659413 438399179 244527000 825268001 754068860 451012248 920351707 651724452 202350034 310603232 591951758 243286357 587361414 714511684 767465498 523777692 728908275 220975704 419049930 296389000 469676658 62824809 583758766 483550335 855497106 85246080 780132819 93681329 24793122 670738904 510010464 455337162 470613696 153959847 555713812 658148940 936797592 253730250 246585564 903443466 545346878 842654927 49143768 289232536 93701411 280737137 857936624 813588283 512039276 128339339 886004758 743384191 442998239 187619647 413366586 695265371 681247044 103330498 118978235 478243360 921082996 930158155 933852819 920383983 526931491 414864259 945968324 16664836 372660732 548398932 152089702 749140132 808913745 723796719 309821395 443613437 431343798 957579448 750620358 521274682 639092144 996189177 948435241 388806510 472658032 321265921 457273673 945115874 921976724 692970826 223510670 339610527 118998819 779777171 780486930 875148676 899558631 36770974 963281218 554277769 968656490 376884537 994007263 75230898 283408149 358259819 937638837 474815537 849689499 487916333 450681831 866128451 225491232 378053262 682130411 861216049 551633465 401767160 885117130 137972027 467789809 528177328 419342483 64192022 503946267 857003871 581913816 643408715 304413531 83437003 875483838 596076765 473409804 161131541 394604699 731591801 396512013 311919751 969191145 479463682 315754428 220259601 746318510 645111261 173933496 189161102 963799157 238594830 629720212 675889121 260901788 794694819 192710713 563137287 981859994 896053086 401893367 246522125 10192207 480903624 242060246 824927133 547494505 998900408 190989870 2685692 794381800 413730473 880546710 505218040 774358468 599287073 837044106 860247512 262108729 15684805 28251183 820559951 865633285 593303379 940883771 51881963 379202999 701527050 640627662 87947909 114174705 925923416 402930746 868335716 787464940 572385700 573345078 819096239 508792404 399865197 395654880 267842432 881050458 37709611 136106903 286554145 588916368 159209918 693847088 432143011 4789391 383862175 717725659 3960881 295953713 782177317 950895959 293445048 453560699 21242350 815879499 44493717 890292375 712761025 440728424 339536536 288274981 305601488 460638546 388549836 223910362 683347561 417219805 115285868 731430319 95615660 950928093 633084611 922797439 886795089 574673589 820556100 230628016 975795488 660967481 143531412 633112857 673412002 904746940 762350866 319491960 984170962 336235750 655728793 509171082 218180087 618324127 543893004 471106756 866682017 779501791 220199050 684562262 256896479 167820582 235226866 196161026 851463606 530724573 24572822 87567797 477994401 620097239 690423450 6191186 232063453 220873737 545507047 207753327 293937899 977119211 421927650 268829033 850539890 316372094 93853532 859950182 337379737 739284872 178980455 276490334 927353870 900505145 656409736 370968773 516490275 308674341 291530227 448246461 463835875 662608803 272850602 294673739 903821968 606732958 28086695 234403345 496761559 567966963 806389626 610823956 515999662 401631449 944940859 431322280 106541321 653434280 373632171 756651465 747344726 650126331 955228797 412491067 637338567 868812403 107607105 792426718 805503816 793463311 265879482 164224250 659366968 340432736 661758741 819174028 415057542 880838685 542940915 291484675 870603258 506015241 266170117 185698313 935380777 969971368 43545401 100404212 112021429 915247109 216653291 736384669 795448219 533585010 801378437 440367412 285357407 539870347 45590030 429037208 96006263 114475349 492173596 691628098 522109686 655806002 184584448 878377672 195769599 89038772 503834433 882261482 910801866 782565984 531959878 69754256 523167467 705700877 498836293 575102855 375775331 390377536 498653555 904271670 161124621 920877076 932811118 402764521 993325704 284983752 275353205 3081908 458259421 478086049 808259183 724002025 651046727 890017747 940088274 668118029 8880405 254950589 477152103 239971039 104094384 926317246 541216632 922949511 698368500 974737517 686849031 985641096 651537097 983292671 705427858 939280703 918863825 946325299 231762301 696476443 440341716 269905621 284594579 289045590 456997574 568077859 717279981 402542569 648932567 268209200 119389284 798917627 233513039 502680333 957532075 720447981 193917925 124024363 465569994 818168460 370135361 487195302 283543943 873928230 727012904 372739073 677596195 712055957 490437916 421760738 782894715 260285832 845716039 762253389 480455968 455592475 620946700 48365839 277955981 321560146 14011651 186554430 397654958 472912845 681112305 352906130 666408984 593646648 202431475 147840953 806468087 44453509 45155605 632328862 664954518 825465330 241681238 132625723 371831492 873654327 247077483 885428556 60632791 466637990 86978631 495290927 912197189 569163821 975332146 275558489 239465622 54841185 950585400 10930091 190321005 490306971 650031134 307228728 873911313 129542664 751796283 234577697 606203726 416437017 818291250 812248778 553064494 647858127 575700071 509332168 820212946 248029374 200912878 547205623 434186149 87111467 384049631 919009886 811031458 628859807 13015846 290762794 787049387 736909332 394339916 713630588 605392638 770998750 565320853 490237526 63802706 126857522 589966773 568538755 578836747 925261976 725787950 786389671 394537039 851458148 943352128 999867198 465672405 979460417 249001346 441657315 256019256 865911234 550283488 425277903 814550028 382599657 999173544 401926770 54675864 322086461 146909805 572713696 825252056 965454698 156307949 787786464 496918971 354970273 263821298 321407588 238516420 818947159 12767042 222319942 25881648 896667741 739240197 827725235 995349218 924727795 422926659 294144818 895822134 3337886 899433029 7989617 173082628 796199703 234092732 528313703 102396529 493631557 464296329 229843079 660749559 77305241 206632438 728688296 232603843 584902843 636828328 294671006 788949843 274437116 806449121 653127140 615483357 371058175 885023218 561413995 690201519 133267146 905939215 29147948 769961015 991081882 867291468 538906308 620014400 378176004 649173197 900473611 808813785 618501923 828849273 129453703 111199642 16533671 500978959 272501214 765746119 437954273 229696993 723166939 602666497 239111212 366352051 321263502 158704774 304596199 16329744 403173739 183815467 346954638 98757020 434972531 133676427 118230051 581942066 248755582 750247149 880912308 594512319 637842542 381200822 38668781 596010861 261423716 114010323 311989981 922088059 690436501 903509960 362626653 915125379 707291538 411385487 948643600 680244101 900443543 295910036 147587010 969735879 468426788 263575326 855182829 455815903 813618759 841330743 625868185 311904689 167657301 150182364 306838977 67535560 429665465 508134421 306075167 457701810 189225314 23175299 701104793 839321443 127450322 529275865 391411596 703839552 558641083 206134037 851841221 794066993 720912888 790506285 536212452 659050130 1374287 526194487 375485264 508820476 319348208 683851479 822623007 42752793 481194573 321366618 151098544 686423309 42585881 434461686 226064154 937578268 228526514 835542058 969582318 392691656 174198713 490144337 466326403 173832461 680434812 362937876 310347342 573288250 732724008 856573879 841265329 132206273 596464466 71956355 541429669 446122169 775896744 965147022 594252005 626183584 112153370 828593894 82019426 461247402 460705855 521842372 772901727 763530078 529228309 970539647 742457331 797376276 289582618 504960801 693523780 992575812 156214490 301458033 794452748 622193083 608808361 980533403 467657726 422915044 842811869 426573739 386069957 190662832 221123501 508047389 790194316 952395252 537836962 482053039 16590312 564692787 898057825 282364529 554695920 686846770 907477873 683852092 601844939 211014624 432768558 364465715 880483352 972069395 241638306 944978000 241231406 260049868 916381586 674905595 240803482 191260544 416469535 80238333 486001825 888374298 87869569 556623466 514034312 817046404 63043131 963197848 181568458 858168836 978468313 947128411 35924624 499755277 299420923 18105410 164533100 846987785 569644403 776654527 702223738 507630316 898663213 384780458 784407049 941022154 762959597 183745517 52388584 97137631 5142978 322542856 866570836 809695719 189897767 223018948 936627467 779886147 408469833 297682609 612268153 649881310 111465960 68556696 651308593 928675787 25523234 10182077 202347814 753784488 70001568 926557767 950254470 841359544 91510713 369788559 199465673 821001286 105127118 409264769 481662492 601216093 140375136 642389700 149821590 887894968 6373328 926554800 367783055 315626721 277560208 639013208 534906102 752056432 29921148 531469474 140302841 51211832 62095200 115275289 923678777 616061644 702900192 802603731 145665319 657045611 639900697 689753307 998121036 420808530 753026655 235050209 636565682 530628093 107518972 645795418 907252952 376493811 176996978 53093454 381227161 873093706 826968030 980360850 744678037 547301231 583268918 750486458 721740831 759615230 864354538 634567351 802124258 565003431 21459193 117175520 836855761 194380694 440850501 55462778 779994343 227078074 257676325 659700070 754814523 11757395 33567947 440322510 978741899 51228706 343404093 250876205 183346696 238590589 970860778 294582304 662341624 151219806 376731810 546144264 618433072 687515915 17868642 17675027 792711687 359356813 96793151 738906868 356324585 92217085 131247944 525051488 864423692 468269345 65765790 802942490 460496985 624588054 349657012 309942323 89644693 906019181 525033973 783776933 190626789 397344144 648269871 84174857 130602356 5843777 424205387 899002038 862549426 879580993 606341793 513396555 276989359 158871237 766772774 961316823 743018270 234032969 399122530 702673484 608119944 383202224 62419911 196470813 790284580 296271554 97272485 94854949 244519504 356721432 936448085 684619221 182983066 797081600 942426493 954645362 737312781 133682775 826593289 915055839 293537988 520423300 918785383 958033419 210092137 124297653 211115823 121930529 297490283 792844810 972547727 168048319 34173064 712700515 883410303 132427960 939513516 524811222 260687707 8197237 2024345 683357085 529124260 146589820 975434474 391266854 665271758 725808346 942653165 408410894 925217257 11550863 447264322 321934937 633542594 772621832 636513318 483830194 685589112 942669786 256009261 415229170 999128844 844506427 378178891 266229720 48169802 882846144 598893545 215765102 46593870 295880463 168027967 736281996 689341791 972599708 231169603 508213648 735379298 702834971 559008707 263309105 627063035 13014705 541645656 373685255 220772645 548145007 183930808 405554843 205367603 724556928 911772221 395044102 880467429 290229174 498258997 642872123 971447691 834185775 579802315 89631126 819398780 93314364 248192398 322129819 115066875 151470836 17274629 511126294 549922089 699209835 843014871 813004462 667875897 163715709 799753226 18034497 653791781 858764542 891014874 277833993 837809521 393036182 744395523 76928895 566735051 158552198 470541575 960454038 580933162 7230932 302039184 720073446 900240817 641037887 646003744 450423072 635905645 434110171 455073792 305762004 41061978 277577250 324616784 632015002 207349425 446541318 179391081 485830201 622314014 272923541 33437627 118844310 686007324 752335457 509410617 980616023 461235945 293221268 435580636 204959306 246292831 299522068 424426677 174867948 316766668 164752022 499554393 561073384 406305950 17888881 5407899 321939103 865914353 380996159 910065592 185346114 472775773 758174674 564166393 396069574 419208175 306399625 145461624 746972011 741193504 772155451 245666992 201356264 699371374 435447 511150042 206105180 883139076 81253018 221307507 917983983 955958503 169849036 820274708 826675617 196444772 187863073 245446637 504026365 41824083 828483245 148891137 669581220 112142758 976395380 254123679 768386621 928142465 204299555 254443044 704649202 217093871 298668876 350435886 517225225 346181458 741488688 315484914 51210788 574011627 553225354 448770416 901099680 947042536 412998712 674771227 704769813 891748224 762246730 728153174 469257544 930233131 24630746 481905348 399171662 448486189 938093377 91753705 91427487 744722109 947607018 266044445 973532129 399607304 276943851 874160 501826724 111420542 13720056 582664740 949474144 439636069 863941705 726284850 974777614 521259447 394264173 664696842 143044930 295185656 527004928 354634799 772945076 21638269 704607866 55504588 284520688 342051276 431305901 143680990 621523306 28095473 204460430 810167792 107132503 51531768 764865001 697797444 921075418 773729912 48238759 522165010 484073504 740772143 410724134 593139650 578640268 955755193 996421902 111795394 538397520 324692440 772965 391493826 144807668 580422791 826687525 127640541 42139381 793579168 714232828 592358286 346598443 314386108 59067795 865831819 977367903 526923667 943585985 91646809 605048065 887980263 168920214 167238260 820472368 225662943 442757570 690453824 285505030 333569365 522456623 225013884 423840962 294034784 23312093 276132592 258919756 265605911 499417164 251039577 885029501 56099555 592885668 433951797 40384914 666467137 714998426 793757843 118215535 662421555 230014677 102610828 690917927 709168151 596246513 235087398 278630823 292325031 212818419 658655675 301798405 653538191 830675570 818895065 64109434 279131489 231241222 244871209 453570344 94234698 300449035 45582888 664249601 799643699 54225417 351841864 442519635 625237132 287507624 384282555 339673024 255329417 702915770 620698018 430982857 135618946 413019542 663833840 262677321 225218534 564506292 799244894 712684197 219567281 131463401 90280278 927886902 392007507 338954879 566545293 134635211 138325716 382296254 730092435 262131890 507520266 137001298 935045580 797110219 758665491 754856316 133777500 877146838 634688552 908428509 505725486 217574496 379062084 767346257 942456064 670616671 363316386 112448462 997903405 694759178 95292365 770166505 851907851 647480486 62135619 476079485 273384968 124618653 792051759 201698108 329955750 791064977 658159802 266918211 616007972 862528920 908981022 460096392 765576378 679576335 231770450 788839961 264717394 573216711 364983598 435755657 627962129 579532857 1026809 860199977 697068307 901193535 497348760 418004068 868704549 117403198 738194385 928096865 224037401 317846315 411783342 678182454 158679936 670579599 122321560 889406980 851974984 903615041 341800346 912636654 405375999 768363374 156371697 398746348 822650656 810271253 946502093 593757998 513079698 600423868 952944191 758007940 891177034 116544178 410004153 562720616 461232506 173404061 511897779 291804672 144718335 116195287 78324556 754403176 999074243 236989402 395484943 219221114 265745311 645732813 760291506 696883201 195278448 930637015 980562374 635257505 914250542 943873664 586174238 584230045 829446706 256031388 882668902 833943519 845129020 578304659 384573585 32272728 11576806 409342003 573451569 775244001 776205832 342562011 826898605 880686123 892235005 548856204 698295290 517327037 647839434 716176063 511608371 233774335 797786092 389750299 534015036 782379800 995212531 91850494 348440842 750636297 536675431 605902543 927496629 886314907 417898027 254336883 211567446 643269747 833036361 12364070 225507568 78937962 149510267 441307215 391667729 694409639 21435801 237557449 168908198 106810222 666729523 185849502 304203496 441733002 517829288 478758284 337259129 436635583 567354236 581674329 222220 176221273 62913185 69601722 645903106 106575542 103444898 357255623 961438215 875125895 143542038 706917909 298533692 68130482 124680530 434058994 551573642 110769669 192128576 631514047 808970134 971948162 697918873 986229061 96094786 539832444 245055635 998743019 639517782 471354319 711585730 729819475 402027207 391345618 99908265 153391900 610398816 639364277 658210127 830252856 471472546 568081535 780772598 757431134 436563953 678295261 619281963 678799103 322577486 446111481 602106837 199088960 871286256 716880392 851473095 419139506 341965094 926529733 171394227 109944311 802621367 366826231 5250042 525123866 140509797 975302454 979797268 951610974 598877790 245066110 482601724 975310677 164276699 996759063 753160459 854542871 568337341 504502423 296685084 157779364 407015487 332187725 290703039 699119722 60250487 764248833 886520017 835443324 52997203 97637700 127134562 832685105 321674153 109059365 491291668 269710722 742937244 537618980 910867225 845241082 642515321 241344919 523218981 328924084 800904320 861372776 479526666 929033425 457374129 293017014 349422352 479482500 10352094 320607025 256153813 59976649 609758291 466736406 832479134 272645878 465674280 344332617 11080575 932723726 679812617 314348882 262350132 644599016 898171464 219585883 459983552 978940891 796844450 430613747 989432919 501051693 727218044 531206020 48001700 507971898 53857628 664885412 761440927 377850448 596918323 948898917 827027741 562922559 962679930 590019282 979689923 585194439 583151050 652744809 301625115 656255263 991863199 301278840 764913903 590993566 854212797 494256174 137380429 277177445 938629201 971035585 826034746 218809703 408617929 678893088 799577199 166065661 225202276 699668272 926903812 764970101 121779075 934201441 918612238 902801750 402493266 857746458 978752500 186323705 363934770 434385261 617216196 333496413 756006929 770521861 613104888 998401950 828345925 236606233 362117155 1503587 437262153 106738282 26952589 991173440 964670575 991970312 590841984 621122834 700743016 22358121 595388230 505250817 985557570 346530817 475174273 46369805 585533766 962394777 274612408 242904247 853778990 97624190 733765940 598642921 531254224 638944335 460558012 501865328 311694898 420639325 157823525 767424109 431500632 610450516 86621202 870841576 777015343 334534139 97843308 442894971 503940113 317198383 68311619 893039678 349807165 271951667 597315754 76734207 135273456 62584352 395651080 795173120 637034320 694535835 441904929 119675839 965387342 339025686 922126846 402547523 47405939 979975146 476991986 443277554 155431120 724034684 298895029 813761474 633448699 73972912 346549902 270872495 3164232 253336016 911710461 915211585 103512094 141040052 998841243 877391027 814924939 251088440 425401977 668888768 317478470 79705260 350335050 515111337 33583999 370685540 841948721 161278515 999136465 644894959 757530366 85431343 22013976 190816619 567887134 925395239 788878154 446366799 356698376 258386391 817322554 45313738 573017686 25006276 209283717 101606343 115704059 505636178 541557516 672884367 180026829 329614116 656228224 961611101 407610955 661110308 473834584 726382321 864640443 232080421 844793687 253272045 300925001 253846568 109181227 254516024 530688481 919310624 37674755 574617334 752058526 154320658 842859958 422239662 474250829 393604816 991879884 358611935 151948879 785756041 743169092 637440883 296167982 657314896 493506499 527611705 263258908 802303871 127953504 145277854 644710485 132482838 951199472 15695528 291948924 3971109 989664668 509814225 635998069 28860821 502831062 355108971 925165229 664835868 138347061 291716489 344829250 247293069 273728539 949479923 12099297 707147613 173417521 459077637 681691695 824780947 397504937 734864904 818007457 128023030 600091325 970262724 788060237 271885419 825969698 648004715 655840277 116375995 648581834 52526423 339113443 180169579 711086493 648906467 969065232 135664404 78449302 897904362 733376642 805767748 461899415 79438977 428242937 246071737 85956327 998813877 961063858 507169614 519403023 485411479 940539377 617704876 915723559 940028701 408976603 494196387 786164853 866085408 404212287 88973883 660144408 864470134 442366645 246730165 424179455 955908826 538370468 388572975 559042486 207626092 666976035 414797763 82863268 511786431 909806519 818255365 442753519 780170841 703056133 242215975 286617869 754764133 932525084 308886515 419842835 129859377 255314700 397789874 321584545 420400119 636475839 556015693 13791249 753155745 721457635 955357850 369049509 427611193 915946818 667092732 526977806 909688369 11506290 278030194 897507519 320060482 316603417 38946622 643959577 815056619 795176250 142065314 969244739 401114096 830650696 886443171 993219838 447010251 804485751 931228500 397298707 337130254 728253437 888897229 361966207 66403904 193998223 175082918 727257536 297490517 219800676 913721984 663082851 974922665 280537703 178563679 327329312 311004169 119806970 50089203 413961870 745110603 607340958 271670768 151939203 489358873 327619851 138563007 223833875 346808945 872620356 990364065 377674642 80840530 518393645 587597517 691347822 993773463 271315137 563582999 313787678 153461807 1405530 338502007 966954332 466708662 649064456 356322248 246053747 480364711 666604480 248877886 335649526 842150633 489711181 258837535 569807885 81404122 212976500 797000269 387616028 885143453 513296253 504879352 725681189 512826566 77830400 318231065 720177037 658600511 64504224 212695729 7917727 967823072 55982348 669097945 278533682 360057683 268761432 477967815 44450245 427164928 903527851 786847466 422132638 712448193 121144875 639635372 317615613 139609513 679983789 769566652 241268650 88638401 344788006 914984356 78905751 141621777 674696669 511917932 835923150 243087243 443523414 823603602 101797238 183511551 360364747 901011715 513596055 849346408 348835949 855212605 110392693 436747229 79450036 76754981 37215124 302268486 4763774 102041879 914047400 123270219 470345723 913393390 774134033 813817509 187832675 1729487 170157212 367164306 750210525 214899441 885874226 696391800 791099970 750544395 303470612 469721446 172861562 983027287 842850255 330693050 220427021 610191409 486722966 46472028 221183461 786059729 575434186 666572039 471850762 904441557 293933427 564651765 596783040 802085096 940487169 153289212 911951500 931121796 598360394 16471082 208512622 98532997 575685903 60825543 632801397 396801582 963837398 965278834 961582084 472624004 819881662 178396441 542445235 964390259 777252707 501655821 645562717 871752077 318364776 788559611 48373055 176060235 727871247 583890805 567468011 662287609 123444654 352300885 548144906 187113818 491167221 237170019 349100238 401473188 395439340 687176756 956439679 559842239 149194970 529193818 852291923 517220852 836973672 264720193 402258541 101465801 244197874 72086440 136322537 359383097 889543579 71737376 274532562 696616078 703239487 376771802 638641921 818663492 564219936 842928916 846220950 793683277 512129411 874375107 893421875 189404952 954139571 573290615 745610771 284645291 475344092 229991896 388551926 560541029 907962445 237343398 743874939 275612391 438538028 115942217 748448699 207277979 681959764 271335341 839783636 264491530 953914426 397077988 213724916 245659003 308565678 404765684 979484306 179744067 718054258 138256911 626427316 250756653 687075930 82901279 873721691 16633044 305527285 416133481 524864673 603236324 792177537 343908929 993829309 243007909 428567825 139403629 574362251 292973165 867113322 478518547 731506851 288347782 912124723 72859013 320586255 118812357 386450890 755033848 107678509 220676873 614591812 490969481 757080987 285530807 858815261 644493289 431465091 26787031 222151373 489711886 966619095 1968389 602687796 506026118 714679250 730671978 917710697 819439712 826220033 524274066 180800165 702767667 84748192 343340147 522156849 133754492 225469947 155365065 607050869 383871991 156490766 18874555 838666001 156655925 406479918 72421423 841971322 77227604 942574427 543737448 954490511 890500891 618139129 311008945 279096162 424785899 5742953 987622694 631813543 405388445 715516913 267384179 540167025 736792272 98937060 298572746 468079916 39922094 199441125 249805191 548543698 121614407 31439352 545515940 210426273 874616644 104365368 359794419 739296884 747743430 225293476 866858300 905124729 175211862 636585744 223184795 954110219 792254560 383154108 655650743 785213189 16904848 450838876 777448800 494927455 100566846 750993911 788116251 322879391 145032211 138004554 978774630 679627504 639093188 987578279 105454591 949598581 130474681 776924701 127243067 158652715 582016165 612773663 323278613 189285390 652906682 933686422 853999419 831182832 426972039 677533355 979285859 678514310 39995265 260814263 597852660 656682405 951042559 879899478 913964095 468971170 849139055 382005850 608056774 148330689 904857927 829627284 747404316 653731374 525007823 818280849 953697662 489135377 645263179 889705289 547522656 816321310 14100987 987390031 419999244 985534028 813555285 50571680 59400265 947100808 634577469 274689459 332373131 995537344 851273325 333890972 543440271 822703965 494961913 31237737 167117828 223459315 831297190 233800467 429990196 893481177 71597737 762685429 311706587 354251453 327524989 413305752 787375833 484458111 745669327 860838891 245487089 627207770 913207476 237088841 675618169 464149022 276690867 17459715 16976214 436681328 427140868 95588184 672005151 971245000 659288019 216034928 588971364 501082318 796999913 432657943 880268213 80701063 505020640 692761042 648209798 637291896 824478449 703139053 117339012 76976417 64944319 954020620 535584551 224688324 660343304 140423088 819586174 926609525 396273106 645034324 956589621 333312349 148741062 697225469 927201530 448946102 356823944 880689565 177949370 90560901 390431571 655505635 979261665 765854253 442514828 172585668 579481282 979726459 609943050 320667213 6027819 530089431 79826878 259056447 285428425 109307982 552742465 975912305 970929765 582726150 945620909 865316410 642461393 14673787 590980269 794337950 987496809 232343704 931463329 449865269 632664047 726959078 598759277 220361224 90925130 580487700 23924625 228239483 797114008 799033508 844046559 144187085 544444707 720871755 883828079 184890954 152316688 755913254 769941379 937475469 941042719 997155367 28208122 760536382 887077041 34338154 700797298 73661950 398985299 479611300 123571142 766815272 126257658 815570156 327627610 687336287 496430184 879431339 459671526 41862823 718101775 463763845 569318162 381094244 414801938 85902691 221422149 968830764 661525110 206986223 700417007 911914640 920912050 699542839 751256610 520909264 329688158 523891400 593134235 115435087 986678781 131247068 157591570 414988271 573340715 842508431 320532996 577963564 715083643 336998603 706340124 13758943 907750591 385222794 329877383 496464700 360146160 814193683 405803902 441920317 191659985 11695690 741328529 882092930 326484704 926915531 494181291 102859458 179951371 983766843 88647690 55600048 964988603 368307420 650781442 903903589 213723288 568828974 374586292 566120458 14600345 459607379 594596437 742629390 56785693 30997908 311117420 965041472 240663234 796094640 965642230 520612897 378282136 167005257 408352533 354133533 417782288 568425149 471553801 372026621 847403604 950219711 192218031 204061592 844436359 441204159 195932574 300799305 463358003 834468882 601005729 225000734 822136794 105975468 632555631 712419421 556056447 930146731 572169830 980871929 522657708 90139518 259041335 745382644 77614215 166761336 330733014 803807662 454034255 660562863 208520741 337809068 928373425 588647767 85339966 424075322 610967304 110085729 78591535 154652659 481535706 776146064 815123032 477771658 946541869 306024632 230088620 196944162 619419480 747503855 785839414 669977787 898678694 524684806 303721918 709760094 77659217 953963289 540578776 494908350 521879272 1787694 757322415 121470701 652450660 774982138 4562308 309672592 260167746 948904310 839224832 564714390 840346796 606565452 556625332 286906477 105140130 463044250 430258536 397418099 903161121 218119959 192772515 977564586 373004362 305233476 344406422 144165132 652156133 438554069 473211842 810220165 158216464 180549917 424496855 998399814 553435126 493922268 17564645 96087606 10801346 809365133 439005001 265665808 439236500 982581299 415866422 321537806 55150987 753473733 293108731 16351967 381005091 136037538 796084500 718011942 927513506 685538265 115186891 150936132 295606514 144795589 16243998 676248064 26951435 177001906 780777900 432919307 40919438 83896355 771471520 380565198 508445927 769501961 465570222 587231161 615728001 969553653 653452277 131475167 410559383 137853410 562341084 901315643 753049363 274451566 78010079 346488040 139734412 639877147 382033525 686872333 835204246 96247169 799508823 910314758 874969806 705093437 402561373 523811861 730161675 599845506 27163406 187848462 181853537 663730096 444986091 919056725 749587967 133928043 983656982 522008018 624812064 982747756 818979426 185281578 66122978 405611781 53846712 143964348 64144073 264451817 430791237 969216909 511254593 45477113 699723337 279292198 846596154 259868969 100043009 766265605 883315331 725954613 231090772 914656069 139804253 48850504 24854951 722817346 727660641 679885485 198476716 973961475 456706074 356981785 362611036 963620224 662593926 971267113 904269863 985918914 945758309 598185380 807965564 46162065 401490199 95955306 191341706 976216170 603537525 589995785 208034705 271672606 619625828 341187642 220276491 202182037 51474166 726527412 998578802 939317630 896420471 687707772 863954906 440143558 489099471 265274479 831909988 955071161 908773543 13247848 276613574 687073428 679232502 206328532 853335512 532773758 529332552 68747092 169922188 341981055 732548209 435356047 203269220 393046963 890585069 575618698 708237152 382859311 291561787 685104504 604084106 393593101 789025699 395942585 661899846 389038996 71722031 231608257 35561432 571305629 562789257 529031639 602823456 260196456 500464547 571351447 833400268 464681855 827463195 334268021 869585896 49568577 963364537 640469918 954960320 231764793 116927732 881470679 205353333 899536714 239921801 391984034 125949241 112820747 274750921 282762859 371886694 997858759 438167408 599713557 100070498 983287986 476079720 226289179 603428954 18265024 106473061 492591086 559854168 287161973 419642668 997985650 665456517 616564284 618677708 85083834 794711339 873271030 548109156 581982096 599003149 519987969 930490689 280912042 344395940 247186151 810119831 861396609 162286058 250140307 361185605 639390920 881063768 362625454 829050901 670651449 527738680 66758065 936401217 468529195 554998377 682409895 634558154 242273488 401782710 14341884 829182072 685913780 858465123 243133901 726587343 825237232 649312076 389207655 662102078 346478850 713444492 806320786 659398446 452245495 723652112 477803105 650674158 359703897 813044129 434538737 366523926 662740468 580126691 237194562 391870100 68051623 393999359 20493717 881729661 340238300 792753139 257771248 371082953 373604722 320173958 81423971 762375606 565762456 554073275 235962049 825760126 277569804 695267674 56459837 533419562 427869310 151728244 87447685 963527038 397919165 647430576 304497166 875458125 273823111 40349242 991636266 994038203 595360822 405441822 771919256 504438126 146274561 932233800 269942105 994096470 191540396 584367256 987889275 270956014 50849823 988577573 17950505 108529990 672996499 422761688 531086241 820808310 110715755 851440073 585158046 676201835 527002178 942408133 739603481 233553683 557838474 822923886 516566409 196560690 848249348 159309549 448532436 43114397 126836092 767394554 127568046 538873217 977451665 95217600 863298066 415941718 160109142 302070518 243964829 836107316 350684907 666939980 975918931 826512921 106727969 205215509 983292587 392616527 636150760 573655308 528582250 304860358 715759418 644786804 543856327 343022517 775194924 187561705 471506133 967454208 652339811 155938615 351780335 338886872 736317275 651626225 659786448 761992734 480234573 976750621 621308286 850028249 997766900 244769048 245455355 711493344 571013655 19418936 54308312 120286457 174616814 37852615 760318344 388678010 635552836 781719258 829563807 832622389 575147434 658912910 512324554 256074841 303994158 742806257 490174167 877935808 21276426 953290257 690340832 974443760 110917120 631583879 989269535 442350853 386912986 298735620 666213289 415133209 685385378 671303499 135450913 175771586 703896148 643077472 744919164 810737085 695129831 889028225 40212576 556036134 320337732 813471371 217387025 298455322 140358919 676456643 469578657 934200649 481274070 361114622 654274124 324167888 702684123 997240513 58875914 629539783 644003058 138474812 819425511 527224888 681253944 219632722 343705855 780867946 117080345 793698218 793523949 362460087 687611704 112149404 251346453 976060928 479536984 636784585 90386372 124327313 918757822 699758626 620420741 463616071 503524941 305212880 718777098 669632418 99606475 462865948 121089185 329398962 599555136 900818461 800480609 846815339 142529482 675239141 257566506 446128320 448752928 688520547 28730353 384390686 447551718 120909741 621575922 172030010 366186287 656054654 61143852 157282098 880469096 564804240 570517413 907721874 462391635 93338886 297075372 448302029 42400607 900214363 340054623 335660062 798845040 523273794 274711906 96257052 83160748 778920660 167234977 759032094 76585244 913909947 419676203 151996339 848561136 833361551 408783284 725997367 838179951 688594009 332390666 869060895 112825098 515372680 148088914 55237418 163621058 971991751 964963919 492873255 157631159 993028759 563086882 741795870 953134196 525397222 601546691 951658143 210965247 711276679 863285740 82459225 78373216 977926697 990619508 88604327 599076470 799001327 702082092 198795128 496560906 32936747 393614990 381149537 273045579 805231211 997526786 977339136 791558738 876768116 944628834 663747441 961450708 702553996 700798841 535879005 112319597 984211871 317353906 687807412 760842625 884739065 873631331 297297475 875030926 995259946 724321452 836785444 62054329 378167185 178782834 410225423 848167023 506824622 36478449 298636499 187683513 143105106 363960117 76368173 174896187 509546842 211799329 118095128 160462356 863753194 210782938 780667934 587584508 970691955 197743232 562435424 512017814 643864767 556536746 873185848 49523912 224509276 90521704 204876201 141513522 8639765 286679584 883900498 140593380 435547406 687839285 553816623 55549018 140509329 375936269 738570234 423052546 972459774 564421420 568583650 249520419 515703610 989333227 766719314 445940715 57182842 965725190 35913405 777253176 897878144 712830944 183749081 157540253 490432497 910467094 669247889 387981761 726710879 745208242 241448534 904950285 9988682 659790689 146196735 217908301 21042302 182282506 84038473 168187674 64815191 477471850 850018963 697397112 448623412 315001964 477669018 436448296 392741770 430125306 349167000 721338604 68085485 881435573 766355157 499270703 842325376 194270466 188147707 983946302 271129916 2077068 94767804 20609307 431679385 780200723 584037897 26684352 321395723 96073676 639168920 960419626 800249033 720458871 686599907 396350596 217875383 186305349 61955334 704172971 134658736 196378058 527204803 278476151 206090453 132931641 170349422 136969561 279977889 287154253 463583586 936714508 605958563 124445717 928985374 35162532 208041672 207465003 606945713 996971810 493416969 699148806 286517642 413416650 72308264 46026895 932767942 76010566 222817042 838322526 326300053 443499154 611294981 767196864 508961606 568867367 344301760 995142803 914406099 371402901 579536729 637188794 599888219 283381067 544926424 992955068 641761600 264828832 352948827 411256565 454782057 657042665 245515446 711918381 28797432 12709558 512600705 50434836 306343787 161382791 87982563 531948759 578640825 784075745 652098092 62874765 858647613 649558457 788147325 985972914 591507796 350911632 856168451 812141540 473085043 692623215 322090321 269947546 222081398 786575505 729860373 951699486 373322161 286793709 562149422 171722210 506943608 347206413 218809356 985647386 330437350 217141972 52215911 813451242 716782581 205537001 152033247 753099020 700277221 197379591 783614727 68320419 19612934 182054464 635189679 252661801 303079504 844225200 955041835 599329482 55576179 363424422 377894846 217306262 178310647 4941270 755765198 302032829 126682609 285772369 463617161 24927933 744858335 425688403 272876005 701820140 727210911 212965313 287077354 804255261 328673608 392053970 483192158 269355243 18793108 833053299 155126220 277860567 616383901 371732581 893444432 711585901 450548180 643080619 125717773 99890794 927209026 443847475 743786301 982471212 42731217 42881618 847663776 211129613 957436668 562339371 294699745 535732598 261348935 273962678 889434293 673792892 773188046 355479023 648559653 532664309 371431041 863919523 530219328 771979064 185406662 645703923 896165605 23676646 429233494 761573448 694225561 996016376 542577203 761535630 835386513 976468583 733391161 496850224 498657061 991281524 342983180 586729688 874674077 373805252 100353829 933881928 775934710 43084915 674959750 200838413 425444842 123018256 880961779 383623120 589133373 734329912 741457096 74895645 96957380 403099002 319149858 876866031 891213228 5800070 649966670 59707308 562983170 908277686 40496751 273352679 578989358 398433921 228869626 445684262 53861259 171163577 664606491 685098039 150355618 572933558 932974249 256868501 497870841 854914011 783994830 843957513 240017995 91263172 405349474 658257630 692019279 913490534 375456313 668743504 880564412 942888244 997409048 68949711 256933270 553167118 114974723 604535748 261609341 502114339 249363900 756975123 583024214 180159199 95349719 231081265 399419309 482706367 579293242 304373925 667469667 112994376 17742168 95179460 102799638 387127196 316770776 776595048 738745943 507440951 372041440 830985098 720777209 28290280 524508320 731209218 231933261 654016575 798509656 857053048 929814146 946799713 738350236 617118015 752699990 139615316 332613821 659261397 550271772 761104666 306597116 48306437 521842045 880866783 556604196 735018559 907376937 374550484 200153399 853648521 979967357 624651498 534714667 728130606 13514138 25086049 715299170 757440761 311649531 645299447 355224708 279884237 415350653 29592929 996823273 529525532 57975544 389669608 635865005 172179377 327352004 152487701 610089814 17941326 194175118 874180034 262923432 701406730 823742976 564574488 227245704 699177834 708442211 998436814 208228670 501822463 683019878 675043454 92690807 873743182 773354112 545792087 47988760 893714822 431016830 426727305 699478126 280326890 153181060 532992858 537439936 49165917 847521897 247910403 409287473 729232421 301959183 5052867 826675873 496069444 679515139 523172696 170025118 627461958 598194761 159956750 855902176 862912618 516945952 762654202 932308316 161911126 906485972 473440734 336462976 850505640 779771253 328678230 61987064 780917154 720762426 657780335 254487673 359122984 475121270 305998963 552344287 133460199 118541012 337969478 230237503 976435670 193637900 142460674 331833408 726025433 892948857 955671825 804237005 329355927 908654428 873170214 296432207 724949491 200343684 282586889 273348944 394535226 12191905 93877272 284193991 630290684 172618082 148754683 950437314 184416413 723588070 410783271 966568527 444455931 29113366 588633225 779301234 570018209 296260898 929865005 638461391 344511880 924777341 948393281 424293288 211523676 229930681 131261087 880035182 998555465 409822216 616754749 932980689 886244937 694098084 330832128 314544393 896046242 960963675 470002754 45514058 421454993 532776121 682361967 591173893 82751327 472519283 96112791 890680779 375907073 201819085 199124573 65991443 316351423 902126292 950363392 764708730 827905195 341894982 904478913 940628756 726857626 358491293 478725368 306017708 841029987 891138888 565737448 244668820 671802112 403426278 596276226 772843317 896330636 96466287 753003075 502411687 232460394 557118172 890916796 8142296 889013617 221486443 394345754 247504972 92957235 172289467 222299267 63421676 925418529 205128293 137070719 615594567 624966742 906096960 163674478 122711883 212616937 596059414 117662817 808169906 258454702 407988951 112864437 562687858 363322261 502292565 451373848 843283380 537279266 623268732 999982317 332910262 744124989 956062864 962756976 20153938 276527135 173145813 511284366 653225826 23590988 222830739 282645300 314476112 693427615 45052808 733361662 798078569 158457664 407341270 79325626 711125265 452232922 590272463 219345609 852461028 668956346 505106907 12041847 810244126 625980958 132471912 305076121 335155395 77028059 355558993 404309268 357158675 226555156 544032720 511544084 271103875 547152967 724804753 296172671 158137195 798712911 325673825 805144279 384137033 925246366 318684260 864613293 474666578 544258094 44896686 158147958 921353370 642374834 952015299 232759393 33081255 157936545 725015503 842604322 459306088 333112079 823382116 110392471 696974167 789646277 354648765 402181127 478742704 190116227 603979845 563116245 3713503 376472722 799743160 397218269 543793097 753075072 870611141 489571922 523175911 244411836 507584791 839441517 586418634 795435579 716791612 334442488 566387219 141373876 564178253 267860161 19310130 213088253 77198395 269677318 303673083 800248976 199718122 53756868 907052129 12121323 198776783 444749283 545096979 430330905 537013490 962707900 805717691 646711818 210354729 679697093 720490544 71031135 834465588 485747041 413955788 506617594 618701061 42282979 8741073 55670403 96830771 517602188 962332334 867913920 258667586 487281396 108767995 45318292 589647091 516419100 379718024 455165123 480971104 62133943 188902245 759280729 501740733 567243235 142599202 316569286 772726810 545730079 122326809 151789518 653912796 312684898 230868827 866054150 858468104 570937724 865539560 235722390 733359694 75299178 915748243 373953437 141659023 669775500 670657446 482936987 232510083 332314009 7270245 747782702 205999108 914625288 141135567 455941587 856101082 334630246 25454467 686813246 679515173 844369004 820659694 667268866 960748471 281789986 47611208 967778187 71387827 716912119 120372534 809653570 995756720 534488078 705727448 926062008 471188008 923335923 271062980 910775235 394058805 600091200 968807067 153364079 904458524 360031465 165139297 473888533 571363873 202689352 825040691 62381747 901815051 7770 796786660 786006708 171495473 145054304 772342836 745635356 741832727 718522685 527958581 321489522 896766900 565152102 8202781 255951193 71557485 767605929 48881855 627490298 41273604 288991404 942629197 738153242 127348592 721782608 699533145 458867824 187141236 707335392 676280131 582077079 661383630 521219930 38204848 944572137 299088549 357193464 924636887 856246062 209681103 627073287 487253121 910222572 871748239 683283552 277019661 910811638 227170469 341294954 145439314 701995466 670520034 398744553 646537699 138507507 366438974 395466819 340229896 240467434 222834008 474172492 87262187 664651718 855081259 828007151 79913961 91271076 413882503 816669680 852465489 15848828 495246073 809460610 517920547 509791643 545784731 871841952 38450068 594966485 567242688 128203974 486578357 33385832 653461360 124535702 845453118 533431248 672613392 419311801 337594112 979973111 205976456 893404983 404879343 130112735 905439062 715607740 923198070 300957318 984164278 543443989 67568939 161180455 590946437 46901439 301550744 202693890 253330819 240436406 176779880 493047830 243767974 99662262 606384409 114709329 119488507 615258065 425104822 102773427 21760161 934828412 429492437 226231083 925450599 285007046 291889341 655189610 389090430 89062520 876020305 742780538 975541739 652125432 368868543 777077960 381710496 838423840 158484080 663518201 656591639 588180780 451207269 201028084 391012490 185453338 743798542 316110471 913115995 957510431 923745600 757521608 919464050 675190501 970050596 440896323 147529664 264573539 741791591 176267133 423061599 881942931 758571478 315029212 807231071 147620079 253487481 933495673 754484262 976538251 603298320 805983437 202765918 124952428 809778215 639737638 713521616 813595188 938961626 965119732 545967499 559527600 836762623 878317027 533776595 47942951 765402560 355606530 881495498 480044688 685833207 119529104 455091754 642066531 184232503 658682194 308546801 743621140 112510387 138166371 807420450 351590638 962462065 656647819 588462821 900844103 13807274 235063049 53758951 797317029 16643895 194382445 346688439 533714723 822513513 847862219 681213371 166512442 255172248 312102836 380882292 685302984 773056452 194096459 230797856 748729905 90940915 269065853 801473855 727401901 872739571 217068679 887958177 229095001 388208626 345275824 964242711 755597311 698138810 740964331 172550826 337889520 412478086 398276810 920468713 370785759 894576697 576112682 491511160 18204185 257651157 276739652 905013588 743346665 467823359 991287941 911622292 341009752 70359139 976950733 29793077 110807290 832911750 410713008 492402761 99439969 765604593 606138352 76790775 758187563 14347813 709681992 396351190 93507802 151446915 397741203 919678528 201337167 909376263 213023168 424967046 144409918 573184973 636058623 847273429 939920884 543071605 551875931 446898862 375990818 480312205 639814440 996265510 760539318 798066431 176452714 420096117 722813250 945057316 883412328 248130434 541900251 943693764 934256608 511980082 723317343 54816448 100140362 89761230 102725066 506484929 491398331 723995770 240235021 85581257 284848440 509308028 968216392 828102897 460018589 418962181 632498911 812995585 702859505 790922092 781355213 739224075 132875982 624533753 484996692 272106175 637155787 351067108 562841614 433328827 607107123 215483510 927338394 889970467 133024197 833151200 717405278 316280937 638255051 731816762 794602453 192563679 285311952 398162206 194100561 69770529 11770414 23501358 649945679 467827060 46951944 965459563 367341575 125228316 381353712 886852196 413371263 982807031 283059185 165209377 20291971 923888100 392152461 781420072 900356304 819311967 82720496 639889712 735179497 112093595 229873670 922952772 876530369 589600489 661389365 32913335 200742811 936142554 98017294 828294483 190080554 863694336 122848653 351324150 370766369 122330481 662803996 194280089 778996556 744393329 264954393 899475401 566992571 939353805 487174122 970766477 641633646 519275106 47412401 574792291 96492591 730400531 720209184 230749255 977101688 713444221 95651460 81101840 741122543 637095069 52685327 984574648 827782720 278689026 360911269 529403663 194502035 827103496 369687739 542412879 27444320 235862792 324578449 933517377 726664658 167451163 514193952 302055149 453624714 629480253 421909383 165766765 740505146 465759899 512367894 19059604 583853293 928347397 548239131 968198773 315733580 765092130 444408732 999684812 487541619 165335586 850947911 412075138 64139348 969767571 803227311 106381969 167505005 380076533 98864526 725843567 439577203 49960039 596728829 587113944 771363722 874943082 949882174 529422504 803631270 312491732 188895816 786390327 567466015 720007368 153016871 510605990 833564422 924077647 316907215 305137691 390913921 845468514 918059203 186832761 898099110 937210222 889780250 630779304 72287430 470481205 987108256 812496144 946515306 350791496 284787050 376022466 73200350 166212829 36935482 671353888 36981114 515483214 883183774 39294264 829507301 945121453 662341571 799525317 215269260 801548438 897021405 480152951 509097090 577563429 881344106 182856921 947910044 697316086 382720963 246248713 436654681 250021097 863817248 15734803 954646176 666939186 99683225 472545296 225826439 559478046 426064758 375887996 245476584 231372635 221226660 171835058 23011539 75692782 905057569 841917 683318580 630036436 822101729 740447205 493593116 569489340 908927453 846782916 240250277 198311946 325706659 55040146 101861310 202182726 310654222 801971279 719524777 921701107 409658306 914095608 320698751 380184546 411907265 237701777 261218402 413742948 171715241 201899588 599865482 552418472 256637013 647879162 637863274 302111297 294605535 328120178 213744438 40290188 757162385 384257549 172081487 179003986 288988868 588256546 247063043 384842082 696665355 501191841 100842234 482769172 797492609 237720610 776355049 496755759 930131178 802306162 321643614 13791553 228682361 917595855 121424908 242484040 709756677 401101864 497499564 135905236 998031024 308778130 183219499 857144204 277399408 904808844 662009985 735315527 24149734 630195537 319392680 271394019 670909075 537757739 692720647 565213548 849110008 615425313 889335094 975440758 428066614 471294526 89712083 225862937 600980388 344236296 26791468 957648724 18770225 832414683 580075356 366290266 337813168 343329881 923403822 510400174 986147797 306994881 662807973 762857349 468980154 704060053 586517020 285892510 261867841 814666582 91458229 694384939 938409507 764540805 930757118 628052377 128577566 484478891 457564677 143348099 533930944 287663999 358731382 924611032 435100712 607238551 617872522 179907824 418203532 66639455 397020623 626805343 605160814 895050827 624070865 864744991 490692952 58953757 700619886 577099649 926576076 911529412 451130504 682765637 326191478 812641671 925534802 722305069 239263586 713777909 432982950 270979811 30086760 822646072 293237776 484182700 617541023 771816801 245045826 85886917 978500462 623274715 722515920 224271590 164421562 647821784 82978458 96052423 169384131 629747769 558855282 679045715 998254486 274365014 270072579 836064990 354696081 903696564 483694209 143373769 150190398 251002644 448240261 677822050 56520906 660343616 44125662 103167472 942749672 769809688 426120374 201025138 199284291 620214602 643913498 470338673 365561011 12127130 846641659 722076108 823070033 38521509 621529519 416825581 629180839 319084632 328261917 886991848 442405328 744153338 446375750 794956864 340751044 346044967 636063921 930330723 754590394 169881118 8197185 867704460 239013787 919613871 277424088 657460930 625502307 608708448 659564589 782418598 648129176 445932193 744859643 381000182 430316790 210748836 188497220 880397062 82635023 185280778 557774870 716594305 727042838 819798799 519194395 381531528 751095054 47587612 616133740 82495299 749311836 225422129 216632614 768980499 796799007 609855027 372311305 200574380 515531079 108962490 19742363 842091065 317440718 38060823 301680119 617879897 734178649 899870821 413376918 405066700 594491446 157961667 374162949 931016225 442289342 407304368 675451119 51517264 139852882 258156268 333733372 611763366 200873408 754691706 467675233 786121330 14569650 421365548 523691607 947419298 896478338 410461846 767203558 947599771 953160860 987748946 777222829 548294423 374533399 228013688 25344680 824138635 235649545 189434 235224373 863296920 308236610 973048708 997759047 901671315 159129865 410871416 52017584 728138141 127292950 966506392 834337263 866530159 903218126 361769646 716807229 579970071 860494525 548899739 221866386 784359386 168061080 331318358 979924888 127551756 506815176 489134442 773473661 467479951 281047034 121918570 278123112 457458937 600016905 616375722 117235229 606568226 5861938 914750661 795169935 964420772 939958616 628857728 310853795 310488052 737620630 110459404 105410540 318223651 519456889 319590920 124376851 657405467 719557111 622514832 209136861 500841895 515014316 655157240 183454144 489748401 48506835 427196778 467010270 806948515 541306326 723603216 644936931 744180451 107045594 741946892 789718958 480188523 839054553 638920011 445662904 601571913 861172222 10628795 553371736 911546002 113185071 263906794 203123339 458748795 176567971 829117274 615024129 784510129 313957368 740226903 80608965 713644924 517890627 881245097 413385994 567590735 866618318 541457599 736427614 505380296 593781232 388623107 917067640 28650056 734637904 954789935 231906442 336118779 613445528 259026897 894247211 957797108 564347028 74057244 954841885 598126698 950628612 390491737 366705957 636957792 587297810 93264883 656243802 724502633 166388609 134548081 696844848 282077373 930136725 851401486 135757028 205848523 217175610 727807245 866665537 989175829 649823844 326579200 447977409 199226688 558681449 20190980 621865595 63935345 216236691 318993580 900343469 418075529 109158536 755859848 946640449 953203995 207825991 76130175 379697244 488018186 890860363 656120900 500677174 788492744 834424076 411379494 981109192 337470141 354307358 706325 993398554 999763899 248192737 100812221 289683680 732228731 576572977 642929857 142054971 741076913 614561449 525275434 543058962 265588831 408575822 647947842 489492025 824163232 504180150 881427716 214916076 73309132 292045926 324588121 325842819 569216948 69429621 862160011 680531633 600271408 20031723 345552675 143745853 742314130 202113050 72975135 144043384 239136919 856253874 808177641 593036097 446510718 242366888 351702077 208433595 591744383 973290786 177689757 629806851 95867916 164355152 802358794 375567534 969779001 292495089 162872553 265195717 12434103 241074155 26983481 161758248 916783755 788090932 76050987 328651942 634838053 681893183 466559716 618798848 718973919 191429592 871579724 980937294 622326890 539128735 486780022 61604119 891177152 458578026 36374200 562293073 487532635 785492704 992404187 876985305 617311087 617253742 910204149 896493231 448809779 424665056 705033398 125652421 833224528 810934012 308684312 511656668 90188296 597212840 649412806 198406804 763553899 555593556 858484502 137011625 231221516 107316461 3936171 59455450 620294415 577450576 441404374 502127860 298898515 837468781 256946216 859606444 101207580 883315637 595075278 345403539 354590480 175826491 935248463 472348563 345838900 598415675 430776994 791286436 883789408 224340550 161077396 901521696 581715423 109807048 500912626 981645548 701964678 327720782 620775626 985345438 563397721 765718474 857218463 973093338 179905519 136193131 122357162 523312074 588653503 254142108 404078440 675989799 831190116 674274018 655940282 484730261 261881507 854670494 198037408 781911992 504697467 876752208 754220059 959316025 232945313 710848265 258687385 757222594 317289164 963622564 88390307 89924213 930872219 614239024 623890842 46726871 96894795 351661911 193861190 348327778 59955343 110904181 16444089 897501647 100687536 586823972 564691195 369625980 903403579 418209584 716917622 286984679 139723683 380706428 716687192 522338668 776807763 320510377 499193990 371400271 635083389 234325669 748338690 988972369 427060869 569932183 436498777 541280671 511020088 714933049 295273825 830361269 56643681 688066717 359827700 161987826 756969875 550899271 584585295 719927360 820173543 746211448 527086692 502808110 318967001 179720333 268524725 36476671 121221609 637451338 222898077 779635627 456313451 420833774 594603371 268976208 167511189 423034721 967263109 578288705 897273894 755874153 231701155 663585852 779333765 590817600 786630066 838286555 761986019 36555717 651051385 397394118 291550648 643523517 98306463 477629778 170253969 569752377 417460067 836618267 760704467 526600142 341464924 362232332 339133979 723054460 919972040 434889871 644649168 554386721 239483154 180865842 114150538 105159904 269640630 423927482 971031758 579560760 829917847 350676197 799993370 164574004 673331618 913543496 756734868 763109297 143005842 601351118 539193908 510788522 125584259 93050498 211672260 485030545 149323145 653348917 11153031 423950980 171727497 786725189 95392313 676266579 691458578 575080798 713447104 364791912 234250290 285822478 383384434 792636469 194863317 911777567 301851281 163821203 565757663 462449496 454698332 929252959 374609200 44712358 408469545 628119878 290018170 736697363 162550485 690361534 138628456 395129880 664816030 320448822 546528104 644324273 623777043 209266915 644668477 401178837 479912123 265065406 957106938 337328896 513576273 678214448 508159243 380164741 383063683 9047457 858586369 536993050 291303735 485597966 261516951 644904715 705046940 333293971 440316366 836414587 584039692 139363732 942176590 996346352 507124389 8932452 922408459 567694221 25759415 936934825 575822921 818172878 287082735 341198475 644202722 658743994 581322402 773779274 598538113 455161278 770958798 901922532 427282969 633891340 414741001 944873474 705187887 156318788 892595352 633233439 719417058 678558595 570101691 712571916 488346603 352512986 909299547 923592843 300038394 522979004 822414851 277122964 540634117 589483277 79606538 351456417 676740869 576518829 284519344 146334742 862968094 15481685 392251966 321541653 28030756 913505400 352414584 821355945 473128903 770345481 419885691 226131789 323833275 299350953 476154226 142834711 609355322 237429604 857190715 287008636 783787165 668741047 496482429 586547932 977949206 432947400 465008696 341971688 514502030 887493366 162953115 368022667 493353806 159124600 514205399 996895438 337399908 736078912 381045419 208612283 346536914 662542287 660142002 229467032 935796725 835976384 666855151 765893047 957671482 886869839 533513388 935702881 354967863 93489382 116933502 615478175 162360482 355162098 861048064 59142972 863221333 515972719 227262102 74759991 148805966 989863566 550192588 308542228 348570836 986157717 408063754 350085926 408161740 741706756 763521125 165641558 344944195 409868731 60815539 410026495 323817139 113149240 388908071 600010650 211504958 476338974 624792355 14273446 479892162 220323923 672422784 104338637 316994096 893182130 804888055 570785951 822282882 250916918 455423594 143577323 486285382 574425000 256851176 644061045 557527731 169226996 937743597 734148143 268043820 14218856 185706434 243960036 109572587 948490184 108253772 422219977 645251727 967816001 391228418 228889127 443779155 346694074 993873955 562414538 267858240 268503808 357151932 770256863 866860387 862321491 371679655 795367355 170175880 608037162 353309214 889058805 306994397 147485294 819615243 55658771 63271363 565031839 958040020 858995719 284616852 663060860 503780095 37760068 484517871 388492677 416361560 269595609 991265807 614980897 363691443 311572364 173107889 394064995 239517020 121968976 501082272 144124630 450685209 303646460 614016366 119590544 779128260 670382205 641036675 120114312 626462769 889704552 195257462 971635606 556298294 593002882 116475291 477021083 217788787 901487022 178576190 415732435 436635426 176859072 586955218 498502556 105180036 897571372 46267973 494730357 806998171 705036148 784278917 971741421 845139535 610178371 93391874 16494326 16142739 827581571 385891044 927491093 118675981 957617328 888234141 250184927 496021386 495822830 981051069 643735213 593598889 32747944 649925526 392183282 842688556 774193809 832695908 197978199 59361463 581367442 364419750 654175421 349028158 617322592 253021732 999820188 189784490 785641559 269834753 421318832 463377363 236722817 85289686 700533364 357137961 878023704 919683492 749803189 476570445 953820521 740109214 314869082 966427200 779865833 377987347 80686733 346561764 91647826 194200703 982841140 869248110 745486389 912202004 124384278 482279612 410377766 524542384 966952854 671129559 902301070 956405721 406389953 239019269 293810053 422966812 375749360 774756709 497728809 923639171 268014758 453843702 884394829 291005589 441176601 966789640 938970192 161300458 823244291 296572693 47640078 148959222 93209914 201533550 661538403 391309369 343089116 219447265 812407992 144947014 69928363 946441636 791815220 575736535 528775104 628742379 733851435 299831938 290906227 88376199 305642809 723777172 111948600 932937080 297521294 249921792 99806583 328378934 153456736 794410005 916014492 474685015 491171631 138865258 782196068 927898271 12698111 282027860 928600877 218265652 549060233 229007430 394802204 716660556 867698207 972116080 460700275 883799989 973267570 267275108 736488795 624568174 22003845 349828858 769358993 937209269 889422303 47289851 745247787 136118560 246525494 528420119 89841659 575392543 644854849 349017725 335041985 812347983 862522059 710578514 838849593 356661999 484883423 743474135 989021287 727043639 245199356 700027098 16106673 103097074 188506248 417659045 675222527 953976005 943299913 594951133 231273224 338806086 437758927 224175402 967692878 635484684 225122943 272981891 263804902 784829867 875245664 641034080 520083846 482793166 82921371 223004362 117018405 865206686 954061223 205789689 373531152 552454169 213039806 970068839 454257718 720105588 230108562 329117009 66162346 748656363 236656352 42238175 965315341 795126370 601420929 374041904 713208468 219809489 789421516 892203197 979945100 318709137 69567673 383370603 180093120 320117784 867393170 675171547 644438708 610980150 411476171 840768135 112778998 326975526 937379844 488513528 798700171 944387979 445916894 11141599 764745115 943626970 176366530 772563698 982328521 942760201 34363832 615911001 779234897 763149285 807842047 6422447 40332542 991789145 146222140 710106742 138251575 712442234 127382770 884122299 859629495 309315740 721652405 944411921 310460271 378938293 813415861 524333593 185464416 325477610 86421889 539270927 800359752 268583767 60553328 756269811 220477239 658775734 739516220 200196169 743313526 63687405 620866684 599344283 287586581 722378997 558440530 83174760 50890677 39661268 60007651 740178423 357056560 66318990 539704902 976434426 933683718 990972870 379554537 609400226 772916703 773025566 108376601 147029943 405096424 289004071 686925507 721866437 58972203 537296543 532442743 147281796 361373090 747309987 894290894 7816179 410051234 736440677 788802222 816149775 842746268 244253761 875751804 639796439 36830659 375851394 904996154 113457031 399560097 796820440 458274309 828486488 177975168 722697698 346339483 15836393 952401484 496637732 589624640 384248059 990871087 849366196 701922871 293894268 147117866 775923506 855357088 945208800 821599040 868230413 214937434 397030596 313588983 555448473 195279858 308017093 478627835 898581532 980794197 892341823 392773193 191104116 876593065 49994366 252521989 897130062 75728300 701254544 379451062 315861360 592010096 100741407 730732934 577967555 85524272 389455278 912068782 270372699 733411891 1966616 860980468 254480620 627278736 515256610 8011169 196461757 721940721 107509546 469400968 72972080 222290634 776818561 815856239 988407896 581646285 635883701 443569613 860788278 162201041 479647896 728753633 307815153 922797432 519063000 419316367 133221132 469784496 856963099 362122043 429800784 477290684 925921803 659603804 358052076 370188048 819876168 590437576 493149940 38489546 407919874 640662309 717295529 695409994 150081707 417695474 397028650 632963943 507208963 330440945 463656654 328744787 988463395 857759662 259270729 952457119 48434213 285234947 612891071 178306980 433544687 305535637 40888387 453874757 838266337 495634641 367755146 149363882 270580831 612713477 738875870 634081471 866403540 34342557 697319119 991292201 664619326 149615615 951080833 414285648 319055163 513932191 295514373 389663739 503030843 477118303 198239983 716803552 78017175 431342150 144602624 197995188 713556160 156147863 967941250 554203726 524726036 805823289 891126603 403626219 293737942 602137399 237227275 827884355 438046065 628806954 61410251 548591908 382801306 89112843 124114353 750847064 847882487 610258206 780965393 525201447 391211381 318784260 404099836 603101072 14654808 2407851 929074081 171620432 920507240 83730414 793171896 194988660 295332643 219641908 796137592 880971857 396754731 363084372 714887270 563897256 629508484 370537593 121507420 277008308 201350142 226905407 461942533 313613793 311229983 591742451 360719851 677844049 189617371 271078964 772869303 668225804 820264190 441103140 424097053 506205145 181488367 209693607 435449938 554336506 269179908 324227734 655855375 652010304 954711978 517922214 294096775 366544269 617328332 217451141 704084739 350400179 207337234 162062068 570731480 729845272 90180430 294826229 942988876 438600366 67674332 329468836 946669669 659760476 345483248 705394215 853840479 110667309 732768073 611413489 263849891 261437398 46758397 284755804 720550523 462900347 511742551 998210424 569301397 186662285 202375895 561564769 422229241 613455709 295891629 429952633 165534061 693074820 336017359 614850867 99522015 109412446 332818551 278152745 797295349 984460759 323383589 700910660 988808697 674715734 34966333 618754987 411765130 522732238 836934355 456993316 14606729 365944991 409785426 865114568 804973705 815040661 961845025 189636088 337519843 549553193 545521452 765879528 230615782 978074096 328116292 457215249 906943947 369963183 226542996 12534396 144038028 574360529 711857034 421548376 369582362 676109283 15264452 418423675 197219038 992322825 792446643 504016686 69888642 773502932 137384333 810285661 980791854 394251757 781989047 281680437 616716946 596062354 364750366 836218610 457386395 564386142 214610511 281292215 389064930 902536155 711649532 405510028 268354459 58168825 152080611 238437842 669935572 805539982 189658399 73705909 16443019 567245558 807966202 147473180 338948855 770449070 444465092 93408314 617677976 6310781 934160081 438784576 961783861 126540646 843433639 907561274 914687500 407474745 851157915 399441929 135184823 340280268 929395717 904753182 735055422 582683713 917388031 625023761 744154382 346829712 750089592 749984134 298443528 411690763 994357721 692602710 699249530 130054991 926032603 21336295 847367700 619097685 576737229 53130670 550535615 180251001 398157297 982563923 760935610 725135752 522544975 245841587 315089099 961576670 75949985 953917110 26294096 644662494 622327147 230045403 213218270 827617139 664781227 997498960 319417094 989970566 257426967 560794374 494963161 599050238 361152343 232488772 516875137 242257248 58462141 812742302 350689315 249493858 17379135 503800030 409356625 33540010 412432480 630679691 578740774 82266714 20941753 236550569 75775633 569514522 164326532 41246038 257017561 883488794 995691039 781643430 479780839 884381580 365959482 384999613 474828915 84277485 906406951 203300420 23623082 949912486 994994830 843465973 220749264 722366171 318059182 773718581 189377262 503549104 557681795 584932844 754729334 877843826 337205090 602066170 388170259 914091858 135815212 465042891 877014969 813911081 80991678 563030763 326011335 224323790 617142512 761659529 437478782 873117459 648675274 773824961 431571117 698181060 190950711 888734778 233367769 630470749 754993795 518977484 779682837 628382296 854882748 555142315 254031573 699590790 165619651 466780887 342491561 751830176 771323057 725819261 905743072 627532410 22997438 366235228 384885325 67388121 860473452 744008148 437191515 59749957 591250273 794978995 764052128 15463296 517804391 910605697 752786114 990966905 330757310 367999263 867436631 81564538 22683364 651349682 681299505 620738874 304437699 782837601 276548645 915215430 879245798 626382784 686901364 126564523 932931119 211750927 779848431 740723300 961002811 50891733 98761006 616697224 737852859 169086932 248844106 236919583 429324718 434951685 932315833 532381097 193368092 631676266 31137721 132876390 971050334 757045247 632425417 115251981 132230970 267977367 142822060 609391230 266940512 471743351 725005376 799488971 740310229 271816934 15623936 711260610 343365567 798178484 920562040 317666273 855860555 826443279 479899727 937647002 317043121 42740011 839118958 836560374 138646704 847044292 214350464 774571710 712005645 367278284 930494426 493939783 485704662 592896477 861582658 101157346 8230173 268340632 585652929 519468605 125158191 59953437 477171493 55922480 24069859 139556055 464070083 180022725 758117128 819252330 818937903 981239893 261840453 287620048 614585101 859451961 606251273 241479222 243622126 727711834 654053651 736864077 41418844 225367721 884064193 352610150 845414166 124728970 104639835 832302789 852180922 94284824 146434637 773444106 458087073 207383338 692866044 277882956 129042120 390039684 804276710 598469471 875970706 749093972 469181559 848843111 69198543 391558176 672648406 508454706 894820622 652800351 954275072 213271716 868484105 388261968 357739688 941458186 482410977 975214105 944698387 578239889 849626375 158829987 200836710 612542665 111975883 880612724 172063107 469003367 56809576 454189346 948023234 825089351 91979777 662792595 477706241 276082052 980484744 550248149 24595016 896907864 340641836 305579557 54013165 140276567 805522095 30549660 383872960 668635209 973898303 510236715 923317906 681122219 671199665 325763311 600690493 963975707 683517090 827502376 554171946 772128132 125016788 235836623 120682679 697637600 201527414 856816505 720332268 65071614 103963933 472001495 812307161 213692866 556799213 125003020 896981719 125332210 568194540 60604196 346977814 97380836 234962942 455652629 221019294 956575250 12199868 787103900 375229032 501635663 377501470 66699937 552636669 32396265 849434654 291005402 281919856 73033493 930855794 576492283 451773851 566609008 30556408 647530265 144752150 985470183 441621915 284139564 903896469 832110236 424911051 911939594 451485404 991202034 877302219 618250324 617636194 747284066 326781583 795859524 214633745 11619171 765216707 161733703 956937865 611604641 937327446 257559639 916827815 217307550 310537078 110147776 554870936 458887464 566916106 502054993 211733228 878682641 509281519 888729210 765802331 350444850 25993571 962190933 113008364 970621367 717725165 629906893 787773840 494585632 29897355 848370124 56196479 434954532 67366282 306773431 653612227 305794098 671895762 448746917 680530906 666997384 261636678 38618838 204297861 581824354 27803496 685744992 759177179 470296649 595729779 325702096 872544713 516218364 556096150 81162874 994453686 101297668 615064600 404385486 409999792 518411822 4366190 651535802 794309812 898901600 172606395 212237282 961014143 167328038 912240436 272670779 386247214 656959322 674879231 563773775 967652669 120984923 242694703 509343545 779739173 740655895 765352103 87061194 258208069 778378887 973983462 816033325 412196672 380701972 482408150 625520940 808206494 612060192 694599766 974107142 455851085 218884589 738769685 240145953 401351337 51605960 156073917 364493093 931045513 449013197 781551202 605939284 823202696 620209834 242317090 478932108 589524163 177048430 549366147 426323227 809147815 850805834 702557757 604001739 120621018 547785497 936718067 146559798 971146034 724817419 225907401 777195789 463487823 524332699 65483272 768012551 746129135 102541967 27222796 742767653 471956727 719154542 249340123 725084000 575649529 888430984 259337002 36644699 302130085 918357744 774018206 377562059 717896053 188183804 843356086 585591276 831071722 946545174 200057855 646044565 978584009 128358302 508037491 269406942 37848885 450981901 428458984 672788945 980198577 295856683 341047651 236099318 462153425 173027346 12941344 137947872 327392359 618917527 242550855 189412556 125071431 565128240 418424291 396535269 543635094 581423862 967445950 442747227 168125482 382928701 148736278 965412498 52112317 773812116 546192718 308717611 996317014 679805977 788041804 44573745 50565386 589144542 974923684 903900989 151060993 491960018 357731547 116408508 765493906 463966187 670301715 724505401 331336084 468850115 913177127 770331335 314909505 911373664 174888490 7779336 255524818 806512866 824209605 122467238 682395444 295851628 5095506 415500037 788714367 249437480 509104660 8556829 587721748 170729868 660757934 63226872 227804137 704904242 250237925 775372820 822294650 781706341 905084299 815140735 82471094 66904418 86786660 626105471 691159546 122030086 496387059 865062002 639360474 84471301 171932730 382701356 506084963 475389640 378006326 545841544 526256460 73995330 676103729 472971502 331243050 565664471 979651521 589472645 72504240 205802116 101935725 404061825 267158529 151752179 720503512 187519218 740171931 844353539 543916627 103893553 928382021 628350367 355177888 284895780 326618395 428575741 534015286 314835431 17472417 747518682 811148668 22895216 856718890 100413949 621528109 944174232 439064610 313313320 90517346 954572514 736734433 280213706 774999534 342552023 44701530 310181933 175849281 681747645 492084253 349581002 961444526 819697320 92075339 526262627 256093761 693401550 99021093 495272393 716235794 462923369 466768192 595525617 487971362 931594248 23820886 212276542 204056791 621044777 497084777 540332335 61804650 402399481 144981491 548878076 469869717 842494752 795057172 354059083 437409198 787286287 548834507 119849260 332620918 8544755 915956370 472510206 163555859 816589788 849051333 104012014 134532053 309278195 817992090 628931534 675240948 444284506 203689325 155288555 181395677 493511586 337466326 475294750 516534703 158537968 995168606 775539982 634573029 674522315 756977366 876264760 202756282 261274642 135888013 116653547 286759703 156098009 741417818 398837271 47875022 104577360 684838616 185764267 998189641 977151375 891117585 959829212 591674955 581568699 511326549 556534662 796004165 463960385 827925764 521872067 746411080 135202307 539162460 501667559 147709664 517874532 404581155 908148088 642690790 979635560 271843709 94338009 474197971 328060 529958442 40659056 521629110 930795766 954845389 177580971 138409320 562865259 391501733 570645985 844281300 577328255 339261153 767931638 315974363 345874758 386349567 778714200 536127847 355529217 784624122 988485062 954206152 823366818 777935744 467927264 421519783 334516798 794070802 266766615 101239745 50249784 775283361 770973121 687912659 40522790 186683157 567739603 531416095 844980063 769147301 330647628 771288690 38462526 660063599 106769958 112280463 678906032 615087261 289483287 302130241 607287160 507551443 494176905 111328861 498777396 460986655 484970864 997694611 182311544 60369188 202262205 307392584 630318563 544220265 828223959 88832483 523985475 424723107 278251441 259369753 70488699 874656520 543846642 662891877 675696953 419854476 945785942 56443704 679909221 97062708 150716987 391385737 279806385 132681409 934088189 364987524 739214030 383504474 858957887 89230045 529424455 21128314 954507588 685450000 649571307 136215409 853096336 74490510 511489196 734392423 376678236 228353127 377976889 337800926 614147720 979242867 851865600 372156582 622571252 255631348 870290672 276186283 184006426 319242292 348078936 228053612 104862232 867825792 509986035 725530076 516657460 562370198 573237571 457007581 244154368 500294178 988764579 630188269 814487055 734363208 119840507 838553541 592591221 693732106 248672442 376646024 621968725 472654284 892272395 101460308 607185154 684668894 313116859 860192173 681856662 695121170 312705981 234460173 585610485 919310268 433511293 351752667 912362479 452540917 257672762 112209929 124554790 573798904 150404411 385474030 984878905 836454997 336823194 354558012 646641122 580204764 816317577 813762437 122110639 305741852 140680935 87843248 584825203 201393382 223217511 55930964 407021706 782051046 910599388 643036114 266213636 284297569 856200130 912798294 626833658 947622156 736641837 340883885 642112535 101815403 284601960 450571947 167848092 380028307 581196435 243280868 947731085 944615711 748341139 577499834 552728378 527696254 470717109 665095369 93759955 216128941 743381256 312741415 234867164 37292681 953047806 891716498 919771285 535213851 464122907 918584679 550811161 117864557 472025532 219491707 886551740 51184940 831261413 895471527 973225499 271612438 441513914 927237801 705182122 528482341 213184337 979164393 306327307 526187078 808190240 316957053 752174890 784163159 941180511 893009228 225408929 891174501 479006279 149558682 948109595 926131161 825178658 905639251 253098110 583288279 226884721 805319213 587684946 526638546 932843282 467710662 667400167 223388410 518825654 912127763 939044832 687801404 370845091 342252640 170178281 826459241 150340918 317184432 27660779 954324482 295047063 589946325 359384153 439665417 868694932 840092622 889303362 277130273 968914069 738731294 579146465 567234103 979359366 681977460 812510402 336921334 462133394 364269993 293611390 809149819 985836142 900985808 168115936 279496322 865905386 231030221 131649904 522947336 918346896 146946584 38110589 207615117 344256335 578935689 401611093 176384306 786254825 77902471 784070383 4606706 470224575 257759294 655272491 81567041 696386757 967164261 565742050 385848102 154572759 561023262 507106747 673275431 179027131 890850342 437266851 243409121 196576862 953221367 549003516 421714729 991862586 207563310 763299174 662941434 460241897 997771014 877642778 573406920 853002123 655084156 418418303 666293335 705905705 670419394 828089587 607882049 401475804 235785499 452326121 852301504 906041161 550262073 553063545 560231609 411096145 776972964 159881150 224283441 746895957 668929644 10176461 599662514 998582045 245090414 170160266 806545991 107068806 732249246 889917767 78406787 738742203 3495646 763653787 922907683 389550410 471437637 896673619 695083192 240593415 146628763 812137818 12508783 709808420 856973045 480842507 94493475 451219111 443818995 81756062 610487738 915975323 663260124 938440697 943353285 88542659 529021136 285494532 833109656 53845879 36287516 163181849 727608756 622809485 295799679 534410553 958932828 734554051 807760603 620874726 564084048 891862672 561025520 719743378 146185772 907345994 257879096 73965162 898830637 718729849 177567132 130979545 645443440 779324776 815979449 514746260 928846822 976324215 854821654 459672339 251409615 155011970 161323685 428545075 927896491 860666500 941782939 84747099 934763674 64174100 848032846 746360917 663917257 363695763 170825925 69929486 804781556 526836053 35882268 449523185 225049420 669856761 212576581 429566344 78479625 19168280 8728130 609161118 100591727 890769482 848633335 659172423 63069402 249515941 989240782 882743629 280183022 584935290 325209178 894434329 369365483 920947222 112788668 345596335 772129521 474474564 686356798 82476869 781768060 339983890 333717997 248585986 873105082 215824168 76265747 844266170 732018806 533127107 732779076 423709925 133050293 408868475 749577688 955502703 716426138 71832798 420847051 514847592 498577163 339089330 784015886 587823217 133044821 208823379 503641024 565718039 717499713 707887706 996524773 797181639 948914959 83087927 34932263 203600437 749267201 338058387 538576669 459344238 737161994 738352491 19907307 958323509 579322408 945620720 875655779 913814903 468994996 680459504 53699531 431488831 135720371 249509096 699609808 459921694 193829549 86748199 949168066 215707289 356841622 821351528 71123564 693484336 686651427 870133505 16997218 692420230 263293271 220772279 556703579 477353876 806462191 321893164 22810021 839056372 997341077 836423542 608650877 885726904 741053325 698249060 955919872 354093706 531342515 330355456 422416867 300094798 17290387 97973516 314707219 952139006 35992068 684931424 92674306 388944045 634214757 353869794 303826018 561820317 408356750 214812042 457595157 588052921 237070062 893665877 82436599 303778274 41026371 5970108 187658971 772842460 698614419 26476645 480869020 109328195 747400369 19211516 198347134 597511236 974322731 464060868 682978248 398501146 432279498 787994160 587650895 48869035 724247884 936805707 559012556 910142002 896016708 11469543 379124220 592774946 768023127 213075802 742256308 186276224 605452606 934172113 84249403 588209023 421713248 334216894 732084394 247164110 60977913 873755185 812943581 143137190 644932687 423174911 981271990 315146330 253786807 770469851 8838524 371346641 443912839 534718149 420477470 517378552 988350285 768951043 419639055 504295251 318805848 346137735 570070357 93020056 598171137 412477461 934178615 519462633 82252617 215656776 839141221 60025382 764315549 135440884 385933507 704664834 69590845 490126434 23977266 776590354 679831619 506363352 982739429 51941823 824288398 241403212 290377776 4149788 735396195 507892562 508386974 781662971 616037235 475008949 866132315 146606822 871784091 1205693 817565018 802699660 429166197 507599685 424782282 885274304 589792170 721180696 140886973 940938745 916287131 547012870 794244759 377987990 816823016 502638808 415578831 786856545 800872535 970080688 93084103 547598229 534532168 418351572 243877834 277084854 227933719 46381583 559989305 862333916 151450852 22603732 552292782 899784324 898857357 571339981 768030976 170961128 816089621 186992915 267560928 27094789 878866605 228688561 703866433 642358857 12434445 176311012 621822150 523438154 596547494 846159812 555634353 533699493 274067770 982861656 820401690 316342893 425633757 230802455 214944535 423896850 557556361 458996818 753032585 637095418 237737837 693204872 158130213 631464575 884325510 403168401 319318758 539916504 308919605 228805925 458286574 277458191 366486480 881730714 970939839 264456626 513784376 971252621 129890376 643667700 2782120 971653777 515536234 968526603 398444573 84340932 589938369 326969421 175267996 156196710 562277622 598386326 807551014 115601901 410931607 810851315 415298111 434586502 484097484 455684703 77823664 438575211 825975817 24143818 860949425 572509554 111419846 710813708 518839733 510673044 139944300 787288910 908486271 28617820 726360703 136363200 694210181 156719665 746046712 734281189 334483594 796761925 506641627 138267611 342233039 410778956 202567218 480767453 82047038 177774085 632529994 116874364 277661006 227323362 679702491 225141869 375089698 623641792 572391254 78571099 669758421 348153479 614418844 429675944 124842743 505557782 928989590 930743691 859105942 973155515 165620206 552908044 543787921 266441289 99414981 401716470 885956663 67658031 7529234 43084443 604544853 356363762 980448335 711123370 529858625 499819370 398519623 19809014 213987096 268981256 593999505 249628994 439699765 256800221 1697968 545107347 322698690 414012693 547748153 225960562 125745189 829902483 159978489 610947586 871397811 863291298 768588279 558335791 848489158 522499817 408819661 444251901 543340005 172042969 614964360 232723792 794327449 411930781 741114097 866163526 632028007 159085682 338791033 704590848 324073675 52341612 533621265 439451392 543001899 647752940 725483650 46459496 958107936 445728635 209215440 466036125 948222974 684503112 55482322 987046139 143136893 623739216 54976313 929087534 556989227 196274883 723899891 911733134 840054890 829284667 625008293 866119168 715560710 886166445 788829085 369967830 693834710 232948608 483727714 221343229 596318997 771319894 18022486 82984990 867473104 200920242 605599078 588298583 811780825 772466365 943375241 246114914 629261100 47184060 451145241 309831315 177085014 115456387 544687659 695628192 665871115 601319970 580048423 911358060 227846275 971061356 731336803 896858713 632919034 123723464 629970682 29445204 733191273 603728122 599927144 728222918 994014468 891674764 796518133 727748318 378716463 462088910 305920106 91383374 373746532 188233104 997121914 400587937 89564193 628716960 582606368 449530880 606120227 182866161 966014870 537888701 676063804 56476724 956759272 313324442 278950788 632121888 177870414 523963529 575700969 483931255 419207060 947210084 504226444 295651034 135630799 297350867 150213316 583186943 935023110 294951053 866043899 703963801 364494320 396997314 767182531 75217908 169856821 751101415 285196926 678089179 119100226 414661651 368948795 21838660 475443528 168048432 32927543 7414207 382340912 82192393 214625522 950191494 310519952 852440474 783044318 794122307 147061496 182479896 94179060 50145497 467328022 329146920 725544147 587175767 519354404 942343238 185657527 733181222 874075188 501591598 950420810 50525936 144535252 132529825 875611122 277400774 884146238 300117469 876503955 227230432 752972164 187985712 632813438 844653190 392313692 543509100 859505219 195579527 912777796 633546473 13156640 894410913 327618595 851521190 883635047 674705981 177025276 281444543 563563716 98742653 662506706 560941395 971239107 115322378 280998467 41972841 234065821 972380832 974775092 46621161 810439452 699305320 415942156 659137205 466157982 538854342 787349717 862952131 176236968 800095425 233288441 848965740 717732115 829591609 604341024 613545790 316794502 695668435 193598377 619915280 398705340 718643490 702484271 171057289 502820757 553525161 394141165 999956525 999021667 536817123 798296780 74461477 976283578 498483361 915518758 632154909 735062619 677398653 276422461 356248841 875359269 36771532 907337617 564278251 224122316 839378116 982853281 184416929 944010500 48895769 967299297 991078449 717542117 761689398 233148461 212041227 864779596 117901008 128159870 194316147 407766757 132901646 451922940 937453702 307262906 500085014 207104658 986343175 534715136 191466733 98781726 74135707 962971670 845065610 812853724 407530145 734281496 630261645 363124880 820262190 148554727 22045029 390798279 464595807 732463318 271783094 600641752 24613593 420242071 168269302 347092763 796467842 731644042 345429065 489700290 741273209 334889028 744672635 800755176 555859088 77273365 438011822 531565231 334807689 472403167 786196064 831014235 839423816 562937584 747368057 493867953 925950143 482247265 261435608 613701805 758355090 615063583 509023024 685753579 751085931 929182901 851141015 647039705 598489214 133666222 240290169 309137132 697065536 297510565 727762275 695406875 600770574 345123891 509753689 637562679 503121678 979693724 672992141 599205909 658796402 762053295 326203857 302208056 866526691 512512613 509604287 665203911 578629929 870315454 673149013 515761187 537247345 198528644 685197816 626721584 390719073 291347087 226960430 107597003 856377550 443813837 748236164 247543789 731493350 349036335 578321608 95376765 182047396 651814487 444695099 818995744 819439792 533755483 19595926 73502482 26909297 782900064 612137432 143625935 853872746 74778791 243565111 377829930 472347880 691020169 505239922 212707882 101946130 371345025 659048249 20657361 133963992 947005139 231911979 317855759 30812983 581958344 169501347 531161915 649943370 174448479 570584662 306132286 523924643 13148912 382965517 365685253 756349950 800419066 415290987 77271643 462633192 16939741 755746483 60834835 677493665 3625103 221323183 104420434 110181599 847738907 223912484 724626078 6279900 337255609 166882626 869242405 5663248 93396259 686812441 499841460 796537320 636930553 109883778 704864088 263514775 713375010 424205805 980242291 891798545 721502934 428844727 287971226 721908660 800965039 290573028 184432641 824228028 322531475 73311049 771256631 599177244 770758441 328435205 276348505 453726514 52215124 158380073 339893581 782984781 11952515 229016737 311768341 503840616 554018578 46238452 678753618 4441126 34994980 114120333 637656542 121281322 263611107 776542058 629163506 492981127 137484477 793208598 892257225 806839925 178845792 346387911 313327100 446987891 211275501 616982404 519344426 590902949 525542818 611237891 235566324 47660278 147899689 677541044 114465959 293146239 813174860 829207332 54144371 680308919 285899750 144712487 885031266 899232511 53339124 189866727 57107281 919345571 971242143 220955704 597377042 401972922 635794342 102761810 889168483 918678416 425022145 146625931 486876806 75646719 8702971 274782090 116937660 505424217 528710929 328844251 732087273 512777430 158887350 413219989 356758765 287406194 960656845 133849280 44996754 819304822 927858569 362503742 753163969 242895831 837936658 680063537 316136397 990592109 325925924 193621171 485799402 741821281 753764794 128612718 575659895 890798175 744830614 681429970 370734651 161719271 949162240 101256197 68816810 320768015 970533734 448452338 889539999 356613345 659203412 907651526 536249506 805905980 193863201 486618851 11279719 460225315 941698556 392329346 173562486 462525818 98337645 403196472 417647569 712524240 599359539 431072139 312260733 723521953 497331276 112510345 543514938 942400862 279604703 257371831 443536065 743677428 595219979 274232186 900201693 357906499 415154812 726318428 158262427 387428559 351752925 960018343 999988444 331971089 360958068 250741284 356078050 207007685 356148812 975497388 986313559 323657922 654162695 949642425 238620185 402971985 252364567 227109920 656203962 486375101 210546966 330782433 166670982 711721040 343636329 465856857 885738583 730632610 887554477 917537645 428653975 656103545 207706242 214050124 236964694 850379494 435453205 673173294 347476293 657709049 82270452 440591602 515528362 225366944 8135046 276237955 834189060 166690315 148595407 562746472 662814002 241922253 735877573 203953643 920901321 494086593 527819828 406404964 203004898 422824445 454835648 160549486 113119698 465117427 28731420 770736304 790549374 224269456 237318771 270470606 891266038 91562632 926303760 397002609 644503246 241617386 436553521 188671685 765946063 263793148 901646260 378276143 733261155 212605751 946849062 158836570 236272489 303773139 323153351 552465775 346634561 435853575 774255392 58367406 913919537 161576010 423636422 502858152 188086794 636235705 431401690 456684500 759406373 926844901 874787912 891181511 500460842 353882005 896401935 717674636 861232342 575986287 357130796 202461988 76837413 465960209 34413203 534343662 923362960 352970478 865647466 882161327 66186281 682877437 192013566 209827763 367680402 584479894 892808796 102028393 835378424 511179242 703396032 426486080 248237813 913845894 122490196 346239640 819922902 693336329 639444373 174871966 309003557 351980589 159377935 815583117 509081272 984388003 445961736 235501572 935110315 994773382 793772003 434787796 382270698 757471728 634923083 554290371 601503010 761750080 95357008 919311233 701361111 231991732 92206007 138831033 780867930 804314098 370290433 278863671 911013533 382578848 125402316 471234027 828522192 71428210 367635022 22434680 197838708 710431998 188668413 450649711 970805986 963490658 14847826 610391339 180401749 466407136 230096773 511772096 3286880 418801090 331859620 942458064 653663739 468515983 74619329 813602993 487649027 857405868 697725929 735011728 172089058 693797497 399345667 795862715 661246543 106841723 331016947 331044382 952854360 775566567 588249285 220058995 908058645 594708929 673041306 106088436 788696501 620798152 959676935 855180117 921729859 29467146 851061772 352721285 107965818 32485283 225064224 922869970 240205402 527312926 506167476 112309006 56692800 91905481 335080981 405939393 757100307 991739029 477454441 503157717 205568534 370431051 661304098 568882129 287582757 719451965 653917450 893220819 831493204 659515947 547232633 538968650 13102006 567638484 600866267 113297632 256263266 834747331 710828558 170592001 626609154 703467736 75209003 984793226 716554235 84061877 305432246 567717872 937233930 231471116 710014280 313033589 433434761 345148208 536902955 657592993 656611128 391377610 232727973 581418708 661034380 437356134 595557406 99293189 123183425 960801103 398540148 958115950 172929315 253611483 663150414 812275211 917224678 858721486 514704775 131582579 818350495 476201968 229680206 309246223 218343738 761366395 565870325 745089931 597407131 787117620 430817552 909446927 354668048 143626224 288312061 636099465 528172088 254615465 526421684 411715701 963004209 934353652 414355284 227440487 469305581 481996781 959496464 354833232 425460499 429903544 346727960 199098401 538848952 326552365 315019836 821262235 370320382 320146617 860124726 914766130 688533239 111048497 342513674 281679872 628144044 64733426 256665962 665292069 962309050 356525749 341498087 224004111 547991306 275704727 103644172 954372766 519999103 719261087 542634956 886609337 299897056 720017020 736978891 752075729 676334871 499721853 986776777 177162670 513142657 123379600 13220944 887024880 667870458 259182989 384669656 493372046 735635848 818478203 349747117 266811643 552146604 308932068 535767884 956592141 425455853 521403110 818159633 822599565 805902206 12050643 266216663 61843075 734131401 480114502 497030924 4719232 738981684 580466199 557204741 59477794 84445902 407652980 453334234 148974708 225920987 678569620 451770292 865165952 907185433 195635848 228556031 327328315 898771873 413280470 760947314 292768998 931760152 715995348 805553038 985302011 860079215 460071163 853289922 244921775 798937045 427093975 906197559 113701718 142747650 664980872 986138850 959344171 681871784 788003694 688213944 479584562 93337878 936773806 992604788 464897548 308627707 819371324 434264950 960502805 825578126 49861365 978411636 802479544 614543537 837469432 948414002 718765186 200246338 594046390 844711759 86970612 894656276 816449547 771749740 542967481 918619237 832996441 219585012 490245118 418509679 523723893 206689294 100814780 720935490 664078146 869808572 300558755 181736711 72139960 694438212 96749886 300317869 824121268 395376664 702992878 120953015 380761208 654058819 798957504 732376520 501819199 355641997 800660730 802597097 356139762 302733664 605041176 602313830 560813485 502695522 891977492 866770131 875496606 556505358 26237432 862885405 988776523 666631829 299382661 323786961 829667359 687794211 6340232 229949877 767782467 918342725 806198108 675031546 744139946 30186429 878047559 193670030 586826166 342690316 797738023 321548952 578002506 46904960 594751301 292884463 690296802 333859082 162741768 636612145 264543632 792549237 230345198 592521286 469876136 402992120 418777859 983901913 779642455 173464904 699495007 560159627 129216169 336560204 501846842 891774002 50119005 391522566 853671926 478180596 382089731 12809741 210759332 959526421 723166689 708127952 505433642 879874306 437131601 83647035 679341966 454750935 446745495 343773876 208613963 106830554 319099356 588581003 484637995 938281916 618747107 856789763 179979250 771594033 826869644 107948845 515059857 239150106 861503865 320345908 229331457 335536012 251396594 403839123 272070442 39527919 215747104 599609827 668685885 14948808 117479039 697318923 815391528 257809827 157064687 890133694 223421267 565899681 362824446 922009989 750326956 600631507 371804191 983494401 174127847 89750988 75022904 371305497 984776284 674144022 139024161 561563687 300871256 982588574 319889356 120918237 805359102 231430167 238391919 109406253 82118889 5521792 69269871 417587044 759766896 463634268 230897930 955504577 720716046 476097790 120787206 858581542 162862517 158233888 388164903 487736803 831729820 890348601 147139605 895431682 810897757 864559849 280343211 991145849 819799623 360959572 896518298 255666357 988237640 359550718 368352064 830722705 325968012 785194089 148209148 381353388 477379554 26810403 857778502 977114208 925942606 849280486 414926157 195057231 239117283 987639343 609272472 887158495 89805276 367371126 717348903 381112687 537205834 945614095 444042 657020321 977165224 71083342 987471739 618399258 709334730 289943952 128788015 257765762 916905852 433006011 431488463 672401556 842270407 277179709 764447122 30508060 812881976 475649968 363703152 409798787 55204417 312643277 320872401 109498724 38865042 578327528 149082553 352100394 46737785 658907766 777265696 714803502 235540521 829945359 745587653 173906059 1822785 700114512 910661454 830470319 186485021 707751286 616055760 552936737 188111372 994163086 937111278 285256178 665125573 716748872 690516545 282853134 541299370 336053780 624467474 631386796 890813282 195794752 396389654 553968070 973651669 616482209 417088610 328395575 282409899 481030121 380281956 354441867 52348615 704663378 600463646 966600591 419541514 945540216 955318466 413528212 561543653 48191633 191574902 160090326 239248695 421017656 235360567 457494147 848386098 351761560 948313654 230064603 890708743 2231957 983270552 964412631 99285650 782253852 499562675 911477888 152288562 752884102 695663416 14625921 158784892 771231083 908916426 836939811 227005441 865102390 470847595 427195771 909555448 641738195 104796595 828900950 634883758 586653561 716916491 735275833 658975617 284988730 949098280 908816755 260273253 663614452 90192716 277727909 13389574 731839599 622171629 352183553 288250138 650432404 871067970 426357159 621437113 524340030 713032134 671205473 9415963 392309162 428253904 932611912 457261779 805057892 928084491 960254229 171589968 118709229 522231346 244930012 491499384 640023675 321124198 992552885 150333362 989291745 731601174 606027683 972788247 920458526 344309267 831284830 635644062 104645979 65590388 141715401 569508160 226416284 314804980 611829232 166160698 805118790 197761063 971375328 146689965 945187936 111330370 882090846 83164910 158380965 107588931 487930832 285812064 557001961 235894575 641589840 546003639 147265475 22358958 384520815 54675016 985325501 280868534 200443787 346489769 731384961 131305940 55289044 901266060 678122542 354852203 929000492 220382773 904232239 473884377 336571311 23482671 894349160 313091785 663120112 548749955 779704723 120161960 61405951 618032885 849312041 928627851 760222891 901045559 693399340 324484947 54888594 137571223 84187335 677619240 663910060 621646969 897271121 35068075 792271077 974952038 681533232 652671400 497001885 895255053 185016663 763910438 196959623 649530073 789296173 212496319 860531956 729089921 950899302 7622500 136389185 375258582 754409077 676207067 2248673 413721009 750042093 56864160 470350499 769791083 593795308 15132244 355820718 987704065 124402936 601852603 116530712 778730965 536877484 322053728 84628307 126400751 174320782 58491954 377432137 939486512 356530027 782943125 897877005 403442997 168907983 693088618 610644720 499833331 957562840 836145155 423634818 113711036 234151770 626321585 926696317 665581568 980308132 386956908 784964626 945871335 860125209 450783681 430673223 153130962 744489443 117133736 939009408 612684835 82323092 115230524 56156915 619008058 382028601 493864445 39335894 698944813 248197648 797005378 160702261 933741066 247198249 575918271 801661651 746401382 351904362 752469686 514645519 813748597 86050901 630574173 627514039 285208528 833069356 510967449 123744978 240454942 22313737 225589967 299676998 17831434 497972759 402789832 151858180 659379094 246842843 357562991 852781900 274395926 902027974 736727230 298369839 526695263 116994514 69741280 511897562 691949160 893737454 535164823 208895677 931815476 357010669 519780969 613971163 162530062 91826060 822067349 217800829 284263105 14656836 858470353 862978993 729407324 477688783 864344498 615718970 675051375 723643416 467327577 404345720 475850398 139185555 189419313 984897068 400701378 824037728 210925945 85331775 671567424 238865988 983912683 233672859 56987176 68848999 619876564 935816587 380190351 326822220 582733855 592372122 562886282 952210979 68190369 864582498 640932368 667435249 669793296 55435938 16023400 136493030 183739361 874682186 542504288 25955866 810153067 418336134 606712476 501793956 480972373 797354937 306716838 677445746 899255024 994855021 796541748 242850203 377333094 73781252 709749310 427405097 147869261 286093148 21412886 484126702 511535456 493304262 815316776 475571311 348870262 417817346 537814555 791625766 136606548 803626312 264146285 7027349 729215444 565387912 234725260 298860274 398223249 546844428 763392601 948450974 385960149 249795250 513675083 196980827 949016943 478729582 207092814 407903376 432801820 517681314 796630251 803063636 381955983 775845167 677658001 293049167 861312515 304654994 700824899 190045892 897278969 378154926 396304188 116114181 880769453 658776296 59995831 287275481 450408697 113348656 865526068 46746052 837341011 798722414 910716404 181993212 905932738 453453051 565860129 31317705 111683987 85098280 243928583 871830005 107860835 955064306 477317420 1173491 319530750 919297700 824335711 520970576 871426437 860435931 516680956 111896015 84064625 686027697 295239465 109187759 559015433 534408220 581554347 53837996 828315915 936030801 153675902 240504861 336248430 316836355 515655709 38029787 512723282 849788484 302070280 948687468 779109647 546587523 79448919 206492178 350996528 593896609 84405405 824126797 96194229 850498740 392244997 891498116 592487842 353498530 713640251 268741779 209289224 918238784 271667943 157167954 622329543 551814575 29673619 960517706 518931029 949358702 477215970 694338705 679130534 879186186 719132072 963384508 850882643 129419369 957175293 219254223 70416013 579868895 203387566 257919313 156387163 873122917 757221798 495879213 250420275 749954546 906925519 748602188 27390949 638964531 51874402 9091944 392700399 579667556 922157619 496311883 377820810 346597058 941278595 557980608 500305845 194369042 261995664 829191538 786632310 555798339 644449557 179685791 447015805 266644271 563647934 616139109 471532100 687176366 722489577 295681091 133869510 622157175 140706382 851461767 496833387 46110565 355045191 660230238 165882975 667967550 746048926 776537220 849920995 274225823 900430361 868885768 687206673 846563318 45394232 619903281 129196877 636966783 652769788 599663487 819484127 991799266 560367656 157162810 614966414 801876078 340124336 664115172 313769027 296109185 524618593 167052966 878842688 582631371 857980808 469088612 480108893 601235568 788927694 319814715 767478299 656000141 694251829 10690646 964699816 682503245 422200456 927242930 79623296 343326264 155838160 403556521 843721533 913703259 678265288 355572835 564694969 735474844 815647675 763937871 871146222 260069697 676709469 855952867 406722913 945729116 686220557 152097212 806586804 951950376 884669631 29678058 792067394 436477144 665766148 44147264 476184611 263265175 530821190 754506609 409610653 904687753 803231822 560086007 427266598 437263866 212874088 224227178 264100068 75232677 934331077 650319369 566291649 992754703 191314137 293716781 551606693 932148244 873446877 2047882 686067542 305982249 3566070 758750617 394315206 867763190 342229157 22658258 719008475 429553185 735961782 86361328 449542041 808321461 478966283 798646901 605577560 487195605 611327493 77157338 341040968 112655108 955468912 22739579 774759713 293778789 609339199 906206970 467448092 973836700 363286058 467493740 193213962 293742059 795414201 952742007 310743910 634774850 387462983 595085488 479568304 724183059 931202355 741911331 637846033 27988586 495277485 312018547 461390452 714328170 744205003 465569710 523843817 319853108 537193741 567958534 176641031 604211173 979607537 35502302 359033507 734351675 695328043 217196012 477210575 683076909 64932798 190827064 809018375 832950302 97821593 626526261 964230058 495629750 571228804 486441087 205203964 91485387 562454568 780228886 924918069 825995939 579797586 259453020 946382948 583121460 657210529 967293089 446550145 19205544 233971957 101428463 672390458 272335364 361057109 689040935 805235867 798905091 203649143 642323933 14960375 453847718 401568094 517071623 690149430 74718188 506845964 930592008 288784818 329845232 530168794 620794304 620000455 604689720 876069649 431256363 694646815 159061293 515686606 687726579 496254095 725062956 15814748 859738088 980892991 479772858 72084498 360653377 218142925 994771879 808026291 349808743 564205129 612651922 91595410 296779585 844599204 223871660 188896063 634708985 36920027 49370432 46181713 654027602 298954792 147020085 356186678 839057342 935812513 145335846 475211995 498927129 638832014 562124337 7286824 514420599 978012124 519461110 697699949 396049124 751631469 815777081 627864742 931490715 762303411 494561242 409681117 457662443 729851054 647783875 666808413 868005393 336295086 819188951 786454310 813098379 464371280 637480548 869765124 928952491 712640568 893261945 841944185 925470170 216498583 827403678 335287925 672588287 920074394 198844489 67787469 525584983 142550302 671203703 177169039 556076017 122292276 403638774 882519530 656247259 614435164 74055565 740667256 274206295 383081139 235012714 322961523 538915726 462079400 196255998 640106133 590192534 265164073 501567672 683788613 709414108 157210249 733388242 262787576 732135828 169671664 658323333 823149569 478868244 311070217 405171564 131801324 305671329 862373510 589795144 641952830 940164017 554940779 798563392 845486003 991494947 48274433 327912944 349633461 647145236 671651250 786837093 993480359 572253321 166549468 645027080 40149359 370259067 603052578 813391980 274509613 927438413 598327559 790622571 891744293 995350278 170626327 179981613 116216665 675843887 226691901 220195836 276943257 398603646 982544046 676347003 821387978 817855621 394658783 322388522 338425719 952656853 106311146 789043294 794771768 369681805 328408629 935568106 611151260 62086232 157423468 142947643 88661427 681080396 583457316 975396129 813005792 664950291 458348318 474488746 183902756 615654357 391720121 647749622 412792221 171007793 80448300 129189692 446590129 94629560 30263701 67491524 515799602 848230513 847645987 132051679 229391480 675961130 911181807 44837985 876227135 559890980 985782437 770088906 846107254 681106928 359639410 861486039 469446622 262457524 118534688 942521519 266825315 910290 197177610 181881852 368238978 500519170 828693634 655659571 7914124 375521537 63412131 79680097 470264247 841532607 681118533 752501212 677267841 201543114 53251366 814116080 871321944 984850862 464801093 382587287 450352011 381152340 966404132 246657447 165636693 582824296 945621943 607804444 14403644 174739852 616543206 412296957 903112820 482308665 579727414 728237929 130530797 904388452 970013233 30921335 943178653 416548550 497112655 643106184 838888919 298112620 264450888 433705763 932523563 906620106 689186514 532517103 402235898 960562625 532040629 101836199 8178416 622216297 463783368 187326034 520290040 116055793 966977854 602108936 882459477 633970432 770365139 101823265 77854506 372195565 54891729 903536374 960046714 609746266 746772261 195106215 237434713 431386497 970927628 923348792 664842510 573807758 602643671 192995671 233536177 61341215 497086304 631020583 84340066 800541133 58840620 158813110 506177837 202404432 252319583 394926137 882009659 142043613 458719508 815357361 767604779 919421484 490302069 482759451 418008172 228397638 396204361 949659870 385479369 844458282 440913339 880201924 420008513 347800996 335861862 666903044 363330510 64105950 244502329 50605183 196044947 163941249 525214281 928437970 606738998 927063002 587404830 966704358 822780899 969099414 590585351 610313099 684109686 306279974 824447536 782181621 234495039 199483773 111802780 544226363 204435591 446356975 469083948 331750603 752571196 263803063 184715209 550522125 31527277 364055460 671213610 443488825 234341856 158263239 697154405 65236460 66282831 949586222 577118987 763535576 248159585 155776411 310408206 214473290 188870648 636558226 548830412 819372599 214116056 499454120 718947114 664322786 332307521 115072605 795455076 134968570 256263123 354260521 170803874 481948327 578505069 57872635 900033380 901220371 826920373 249261582 881911229 760590574 433070185 235158929 935284189 185264230 657698448 800982501 920601404 217987323 840746540 684236176 844496592 498998957 812851436 52353951 166424904 586810612 214244230 979872076 368039711 578991367 170721030 580832899 255766342 154578911 384998391 671366797 350799303 160352289 703681172 702408737 670451568 296012570 863751870 665587536 917289101 227177294 816335491 198818691 171161010 800216826 767990900 873623159 431815765 190323117 888165075 807921558 977441700 164415428 588513046 425074692 655914525 704879379 887845337 64268814 364520712 360116167 291053715 241022001 422758247 344761616 908246245 238449915 883449701 10676988 889454041 808508947 779203376 537015761 407881161 710750638 790972771 366986736 377583785 459921027 472148101 194874611 474887862 95668174 444931051 491305663 150785581 409317840 670747408 359293254 430567966 709318542 597539291 662406273 391506345 930386482 922455325 435077930 262770216 630914979 400787219 455902787 620008839 885261692 714200623 273053391 43388412 984590931 717567509 104289257 125573496 914070404 561663443 294310548 552581401 592716419 678798197 622095813 46604340 899324422 165637338 83817756 282553882 67478997 591079015 256406831 897109058 566113580 875137788 985463044 780967581 489973738 290073079 702441461 844743866 131024447 692593160 798667193 301748768 579641812 523693439 471274010 376889990 747926250 64397766 180831 211523676 722215630 375886365 17851383 41870524 24884977 902610083 851301931 186473493 263019820 478505673 764467030 162356016 839765920 142190993 952511492 389684322 502631509 320185218 177851373 186293233 407797848 877685323 744832425 574569303 241731604 226240674 427094011 489489271 278774346 411935418 281531241 234555951 937348114 605059022 985345136 598557391 794753910 879963172 548708997 510964122 386800573 428328909 49461561 151737379 467170962 560085253 677142245 724957958 444043413 267065527 999737500 579739973 273666547 370383334 8731465 113524929 937783491 849369093 620633287 618751929 313134683 778470238 442118367 798663155 670928587 443842916 247872688 366237935 471501057 686594341 108507426 238919835 296193959 383696487 29796499 461609440 594517857 816229134 390908072 414382398 664867397 102445025 654599743 362809821 817826590 558327087 395910646 188263727 853490736 459104239 920001415 370038603 354122160 173845507 603148935 443184645 116823727 208123118 259398607 266210278 698539244 51337587 780405887 480386166 774746160 577696152 611310418 118282560 982001521 492175262 520564924 333733492 995823034 576148108 613499947 227071944 314569151 713800451 536995578 780471012 819561718 160224058 760045433 987642928 175725275 133548346 709838801 914956849 353861823 827544322 315856540 785398961 116088526 305431843 280049596 40588557 638756537 711122512 738354853 922212977 506801826 513518691 664714252 887780202 945567399 694092289 412965553 107670780 881466221 193041561 49093248 82197732 90092110 146655121 453891485 277479075 122216196 639417038 626238105 364709268 561437385 500991390 440823519 387812273 964596950 497367247 935310571 234411851 421425634 216579705 770926726 104613179 539673503 921425119 366202271 346338567 837140064 963580293 510288100 656321001 38932785 736571675 772835849 131112505 318083447 935859004 476209294 899810382 130863503 355561730 274807816 501847545 899975057 438398814 735391206 620047908 647754674 479611028 981834529 524883464 555374528 678052326 276736912 406325483 607162710 852622539 194661515 846612732 342792636 457790761 303747940 361996350 516213101 582546923 348360125 360955696 566512468 142082800 648891332 504665749 82711547 155761807 919554068 523006901 900764075 40144783 851079781 6189030 334638919 855725696 42572148 801601086 101496069 185111534 721854021 197488760 337901885 554799243 417323315 605208896 181482011 282584864 589412022 728409385 326281733 76160570 196044681 310937565 691489281 688809506 456253449 176772830 558575208 112943515 70326774 797324216 215310939 297028103 231393880 534995228 334899848 30518244 130594480 470432252 961577482 280004897 842602873 960268203 56385463 232008142 318835403 22414317 822245916 295019560 262211598 315413757 642966226 849064771 423097894 272163028 59618124 27121561 886624726 312623450 683199278 598993623 213003101 908751779 346887020 201539392 666794851 819279336 540031979 89004359 466522117 862350883 812071547 525918005 18132911 840588482 555866699 731384005 907914583 926710103 638370191 361775865 279733868 432458943 844288195 754028925 679167678 248456174 144986979 534309811 435875611 873970739 97735212 529990762 28557517 342405936 350356743 686799222 414277944 385090449 985960862 684602888 614970315 725626228 331581038 893643991 420591392 689197658 26809781 53861583 771410978 193838112 483124130 860268587 328324742 477391776 639639710 711618644 598131817 916612789 52058876 213092817 452706806 695107367 961872 629557489 800236950 404855750 10012237 611912764 875085867 563309788 277222067 543564478 455556295 68045801 623084946 394938502 107680975 387462166 73778010 90217263 536916642 643823273 520121478 493436565 426832854 689769625 785832206 463218403 481997257 543344809 58030735 630092732 86039781 33764788 330896562 448324187 527346931 997667745 178543973 636440670 657017660 919271908 109626025 719709326 82535327 312982642 824710160 775094028 185156384 406628729 829975892 203764998 596465789 68871825 453838302 499689703 116400683 840764894 164623629 513614647 909467123 28689938 611083385 707474972 826227181 741645785 43390201 513867313 194947983 862030036 829222234 67697159 333641956 504347449 404308567 295320004 980790941 168205741 151428135 694511859 778050255 797169446 569121632 38503038 322159743 275337401 697228598 997114963 586002702 213092882 912264975 258488256 580285530 606012525 367455282 665581675 692455768 914629451 985084263 313582907 188096425 560845127 360431086 58054382 2923767 608143783 102462087 882969275 461244538 372669694 265277797 832995137 61250710 714535579 754523665 98829238 972896622 95228162 409877787 433255831 56743685 423841081 25297345 244381432 780268813 93745261 812079378 916260976 959488989 448898840 434948704 821258906 461125456 947707411 73780088 891026803 540555016 793628494 124248360 480031119 190393691 149975454 838285809 789850226 537208289 334029034 72254939 796954902 705664811 448017581 296878498 909526066 559117881 56263753 482410055 865918786 969454141 879881336 141740492 942579589 389095728 601407128 485072079 859681320 108074191 494676983 157876533 164496121 755601544 747808587 915191781 731026924 980567564 407826976 331187245 103098933 333258168 278889828 986860284 352420612 902226165 849048181 735630197 161397564 872908107 141961964 431201075 189640529 400774768 911259726 820169579 511848520 443699313 145426300 500803128 201017114 637655199 902447301 971414581 495437196 252904613 360188093 804967159 892438184 612730962 705597472 573592293 941761203 885513751 571543079 816271779 407683154 639287269 900435355 891386033 737847910 706305249 970534286 829805879 612504941 894602423 685750267 573139719 489686226 480832167 846642153 178143548 113515260 539384669 373706353 918426953 314826386 14213553 257947758 775802466 595108896 127989756 293221041 793204478 27663099 678212724 234525503 794161850 6000669 396784581 785764673 561873196 39240825 393766796 838272057 546822791 896363571 654671045 399039479 776905289 236515681 923786014 448840158 903918021 552156058 51319288 80350065 968205028 511311923 917907083 29720181 27957796 276570582 95479754 120868570 1389040 216115997 333403206 634470436 782913457 937643563 407448989 888785514 415133637 300950493 145908189 371909970 989447889 476066719 336584572 525264951 586452644 412629611 522518559 210045419 583156859 12091140 646638273 158640386 652740863 52872501 536628485 958029714 710894021 825869000 894575989 617581869 728673551 445795965 18179857 294585945 241118270 106474239 770447937 415881399 944255090 921304953 274515042 487481065 77078667 847393232 327155649 781194939 493122282 97361205 955104893 883795756 893036192 970879459 789169376 208070544 497115136 631130191 194007437 973321427 898918169 737325107 218529453 645785593 868890717 208192763 894628722 430679034 676263583 40834698 795591971 663920359 858591317 965352385 835782607 612143155 862594241 735464907 508133077 915540371 720967140 607017902 252222178 690126613 507515055 43705706 456409935 587101623 577175356 417445447 197580820 995957402 361214621 976547067 682986698 563474048 694645737 674009320 531745992 61443596 766173098 78350946 259602116 129948910 586929773 580485133 191756725 48805935 553629048 8923456 46876159 412425374 942049372 254580186 480887933 913738526 502902965 248383086 991409817 204488031 168781077 755504220 904818447 389136544 947994560 377884278 148001869 986598813 955078094 565230626 911085256 841909656 115888852 6322784 366516838 927667267 593638622 573973953 206923932 583976566 641322789 686136632 208764023 81269279 374085242 705095773 649576623 897126571 679956351 15625590 356832720 429444433 867604625 787539938 977238584 929790303 879635121 493921114 799367052 625355770 777397767 772249997 284802254 116373670 883067280 611342539 687515866 873787517 191630755 5268878 741290666 993672964 22483389 596578530 577597182 718466247 917906856 957316483 948427969 93284071 872706247 877818259 358566652 249308604 383647919 892431570 74834459 36525959 994447761 506405306 802680221 487466548 261422424 43605903 76426951 916129501 644601468 828785787 60718271 241686852 536603454 53825978 314119120 386705746 283808234 762931732 514511385 214552891 240303514 651478337 683637296 443849698 219059605 711599926 724559814 811025880 837064753 835290989 623545564 20092780 396030282 975156402 99751939 32654522 552580672 734846949 800937941 323882900 622756348 931163802 132421424 595848703 843104758 614945005 571838217 481352195 995447537 394423317 546175666 802303337 668274809 42507940 412051348 739224866 400505775 459104925 683439927 396716951 737843244 696998471 26097815 512433178 591633214 205126874 37552844 758696087 661323953 43697000 371211721 860609009 70976615 32101244 529109587 740279379 200444086 610125007 343703626 474053710 905226098 679269067 920976695 644657045 304428691 792101622 830901789 935063794 66819350 816939081 933621795 573217087 494881846 349866410 37527774 283592994 227600917 691353427 67632587 889413028 483149481 391854 468650577 752772947 795334026 841282232 356479817 508951182 737862176 518276054 937376018 882142939 302000018 503578611 502689399 188192643 462518533 210119950 127430836 40394471 201430466 149920999 690592598 931835562 58048335 247751213 209258155 520765714 709372643 513816123 127599947 328986166 656986131 699395529 371318810 961486956 677808973 151403243 881166576 326143542 340225919 863608516 13288556 398516972 14857262 239885402 774050088 178027357 415441350 287068232 635030012 447688743 141081482 570461622 641658778 595977255 207108676 378343450 642356574 650298860 322014650 662477537 550185260 106772076 794209036 440083850 789093105 765056993 70596745 953781018 699957787 930873444 679649728 749812667 685276480 99660724 790060582 590809282 641519545 941608978 289970541 108707468 190114538 929001943 196028795 711314936 815482087 411012423 459108211 189456997 696799719 776209196 594450925 832122939 666983294 233070577 839424483 382890339 897769402 450051579 142183348 51966205 621247544 638098458 68390077 386553467 572488948 995324173 115094040 808264232 672929502 483518214 365194303 659974716 53071398 6810834 49344127 573153151 274074855 200200036 525966763 591526367 737927923 331875455 69149088 968345747 661579253 509496569 860181134 165436492 66087659 975664553 779500215 24965620 189476174 907460953 584209600 35029566 43182853 382544484 25053028 139656208 707235460 982461042 207210605 78632419 847847233 796542780 614393900 187909835 505035776 124232389 158166756 955975207 387279772 514547546 151251437 338536035 615110651 8551324 146052903 122093919 942493923 540310758 992602927 9010246 960457992 581241332 601671152 49014046 394851239 146074638 360844224 284575907 335548188 796164312 9907563 457856409 556105623 630953911 366408180 268981108 808715049 1115589 902527033 107852932 911680532 644054389 212998189 938833332 340212004 39476229 702929909 573844045 972453702 36765748 719528569 571161663 876341774 247744929 198026652 789385539 806637082 201059112 972764898 23618134 52627188 953719518 933567408 370756662 509230031 448958955 639960451 536200452 180177624 422396596 760522289 314372957 623801918 738035144 266416417 641041776 557814679 216315909 449468606 392084802 34962794 676059315 957778862 596850566 345313072 2615622 139353631 84349852 635177048 750472602 796793992 798527687 792349790 218459782 796960452 787169908 527148128 797107621 195595505 880830855 923857080 455935214 655076168 901075453 579152754 356698616 984870069 270999041 630520820 799337056 474093941 204771788 741607285 478187221 252101495 750942887 665739546 44275067 481743725 460717831 544460357 936330234 100844962 319296244 424263573 88340962 53887897 468547800 491354166 989843587 878977777 958480702 210435491 956631752 135630276 17192645 12761409 235745315 8185370 329991915 506354194 545513203 320743336 110778099 513631363 389926319 161568032 379865963 92078299 92210640 908390068 358651082 289643512 43918467 451769574 612610723 175567723 168375760 89104690 295423961 962962785 652955324 53161142 989228386 242576829 713967215 682363485 806533901 690698110 598793573 198737207 420975120 84193116 860377190 823309126 326455600 385566791 739761547 18576008 449581252 782765201 862654346 626657997 776255032 347569958 797366409 49471568 815425304 693264427 510106110 872775135 520669985 980582196 429371554 921026029 680306260 987176266 587963797 130527108 93981686 944904806 206372546 59157963 352064449 45476154 809243554 108986339 893130794 798180991 543821728 880516944 666198028 668423600 974757596 262631603 79194791 571010194 41808066 705096582 718028988 461555935 63354745 108779861 73676670 229446295 994741422 248643517 814742414 320912909 138004561 305519783 53625407 542611433 45883849 650305330 453061635 504946483 525986108 959191046 47462653 105503507 789396258 938528912 186929098 702030056 702715483 528752668 552837268 33352410 14068960 427877550 922227756 539469595 740113211 962958389 320624008 915481740 604558423 159682996 185893187 726768993 795425507 330157579 424061476 417480312 767101791 504409527 496079157 750144524 718227447 637485188 965099905 509815948 989056107 616912756 331647754 350752579 201148471 680440625 456113174 143601625 153322243 562947103 929302743 162299202 960448616 444143284 559475793 89893451 101831116 80222267 886573288 537557718 441819591 530735905 495752373 481840624 131674763 900539332 153773556 777756914 787031747 615313826 535814581 423047997 701472433 948032979 840708515 230005382 637682121 803396841 386557042 768301604 582999266 324632403 366191023 742602814 997536724 697636597 566691940 723897041 565439467 250386726 255185482 380849293 109320093 284797727 374866807 864518664 396712791 900305446 878328010 540752904 627939842 134320192 723982021 888575051 629723112 856441433 105340361 899017884 341216615 930884951 535909699 875009233 286179896 116259601 429217356 399440864 872582148 545585285 183471064 983282053 853230318 241673134 432317486 435874389 779853863 59666119 396210540 913532297 65561365 834226417 711966798 754917313 875129223 131098532 380449323 182896138 339730964 9171117 65214993 782419946 525731235 947320638 515802451 615120581 523887215 676427919 739906925 346455866 223487316 644182184 109206692 80238523 567749269 39849152 341788517 769340734 821286510 652338090 574357309 806072951 233647015 577929208 230963502 660108941 364345516 744107325 317772923 168156476 265986017 952257634 429740238 830544138 439038055 562914261 626170255 809385391 803472201 563739879 587252667 339196200 477089909 106695819 38503830 995009118 356272886 556173805 581978687 236455154 262474652 813311948 677764361 772840684 364994866 432609853 933655674 825793215 546699523 488528644 501945115 208309876 420663225 58268884 958795805 557684539 623055541 837090563 534632422 245546337 882505147 237839703 551776650 703561714 229253646 606349746 42099489 80544554 209886294 514061185 298218086 348368199 623510627 881247425 764758922 543004995 668839561 532758563 686441986 938654859 34364277 443894676 402291334 577410045 279793939 505976195 478862255 211065958 939363590 119852633 635945600 350643327 198934258 726245607 987044665 865338005 331415608 92982549 708195745 995041439 933720968 619544767 334582460 8111336 420731651 236285731 805944108 478695455 331667584 768355627 290225629 894713007 176069006 493679779 243081991 898186366 815002832 582282979 240773134 282512028 271552756 401574083 140153458 260918172 141915036 546271276 524668356 520464109 376680330 803501324 627487040 597305025 975363914 199677237 977901770 497550930 991212921 385114544 570112237 671740363 709404921 885845952 462348601 713341467 479481618 793082420 370952243 764509839 474602964 824046843 897188621 48379153 509359694 277481744 99068614 8032140 386825434 301041142 633388440 889454733 266965213 525500983 149194752 17875077 432306187 664932438 848367 514988242 959237059 61363557 351542375 4647350 279034436 343749423 399456171 72335085 595772486 29006228 689536766 908048382 386515086 811792352 743235999 626176900 446639962 227044879 113611074 318481429 915258382 953076469 252272252 601781507 50138589 574753407 663227630 383532377 664325993 47124092 203192370 144816045 258267876 672304626 832584998 122140494 466563475 843051126 218512568 863078760 654779834 967328321 933103 799516212 611909007 787218915 232131308 120558698 21921305 114464763 138365723 772515920 369401702 864815237 551645136 161860831 8372672 136594358 801074203 548890461 270635926 808381445 253494334 959482201 644813980 187120416 445627548 162341408 381240739 308309488 595741936 501882866 521265878 100682869 590995498 819164932 941534940 705808680 989874903 577124792 780988228 299822959 68479708 254011374 152662718 902377358 314319980 414660746 897294900 190209818 628681455 867807937 946167084 904089726 419601241 4078334 723024696 302260384 124722964 996502038 112064272 467587685 842283737 900901688 493911412 372718711 321965487 878945590 340378681 287924020 245835590 350995985 298815266 144165508 430144905 431486642 797982331 522345490 538520661 772388733 252803597 806084093 408570338 366698493 398558869 469230765 404914441 451088276 75641548 922432165 550230235 79097803 446881767 936626569 733155917 842136289 853531500 155473692 122518396 154242486 129023456 801041158 463142528 471898737 422603746 178507222 625515575 462605323 451892293 318682305 793757506 378385356 305077529 613956967 878162618 78228652 144506837 749582606 501291405 380713444 492415773 190357640 312844319 296349645 31681170 425326446 171699674 408272715 126673587 410068007 360326115 824120685 745017008 565999369 410760568 135627968 246519854 254984776 51196200 86173304 686200903 964782087 865481801 396443908 880627955 92865297 200530620 217210956 69770971 331006363 489885992 523527497 530173010 731280777 441274570 691751045 481170889 875765241 804163300 991404680 192919384 554034254 18554806 822387536 619162192 833833266 128447673 119932907 297051155 108992293 104681322 573859960 499000382 447420032 379938194 110442425 898328427 633803571 701428070 76349143 705685186 731969435 803605333 516575021 163380897 966759670 621600310 405611449 401356687 969705857 561603940 750679639 114822646 747757326 597268905 661957916 284847688 48711896 985924570 824531724 182250728 354282772 737624957 42201946 716220324 780756216 357815983 873398687 137193105 867426383 782568714 609098653 160493980 892132802 320665928 833091159 992997492 591280892 696376749 670250843 914896748 622623118 263645803 421743181 382830732 347994703 337138685 169001133 974586704 917670197 14188243 531439871 185621308 694393777 73228503 631325480 273852104 718168681 407660331 432345867 301078330 345050385 427844139 427380903 883226918 799435195 930980760 964029262 836718494 106814300 721504592 823002276 237224101 87095562 808574081 845151573 203155787 975160881 546443786 542893746 495367883 41569300 81980277 825813024 243662620 955955411 675847773 283449025 224219092 929925744 694766212 12961186 475019449 712345222 212584962 744959360 509743639 900802810 676446928 689809711 908863874 174464293 603838778 92570950 314867638 488137080 402346331 142162400 292353235 492177861 602423293 986250649 645327606 770132176 555293234 691701210 206695097 599983730 544682500 578260396 384634054 456357979 466941504 845591459 734216470 468934769 308751702 571014672 291529815 138570440 446981176 664521096 977434053 573679811 101036419 768787136 72647581 78164665 287523158 554330940 404805549 322269119 149533308 79573136 509397966 982437204 881387308 93315702 815030932 520132465 537571454 644263728 882310572 508449816 747465980 842284670 702028920 59539896 506618910 141070681 239639796 351032531 397149175 329626138 338544269 925710989 446948350 616142940 537066379 955072992 477888296 93857601 811233446 555756927 919689295 107233613 925714386 628169586 692197224 613875466 726359590 111789073 583476054 225618295 997424751 534696653 394143143 912731018 358447912 99331945 504460828 621086294 400791290 966446323 558677824 501146050 854012072 421568651 627532709 25236516 300875387 637175332 272732519 723259737 688111822 245098280 343205031 168628435 398138361 298342931 918827128 10298744 442948822 333068786 252508973 439557455 407623675 874947868 958907316 472169766 51434698 563064401 672142707 899173543 879384795 888502063 548466451 783102483 121640737 834547230 748189434 127688476 437922651 826206999 516492909 16577823 80287713 233061883 62544262 940985172 620857837 950378017 310679800 774553760 72985997 912195673 329284780 936863971 829947411 115426778 791152199 286036481 62783935 649133392 536247393 76552075 484038800 151547597 371657288 598429687 288406151 361263303 798282869 795324097 839005702 634425636 1209456 772873030 982993318 921294054 672011360 402745679 10243318 762911701 958357195 13163717 396960535 754591618 908670423 452246989 813671259 908569826 623730357 522736384 343321510 187555375 16217489 455037037 9993559 463125696 231747857 5588172 626942664 57234474 922393415 2652012 8819130 947353305 631635138 122625821 495856784 117064663 666144593 977613913 143792958 670987331 595645516 824582591 579528977 869831781 888924717 489408851 161426231 760827874 158287212 962360071 426036100 410346013 289410203 406468726 996162064 39825933 544039671 873526145 915738311 177420166 230579103 244899433 664225767 860138850 389103254 501628460 125701064 191030977 13982635 942224031 730355005 666600583 139765947 516500945 340118556 538973077 321614552 997229628 306079268 256594771 696677977 816268642 602068289 176491911 534533350 565734149 489133689 116009526 17626476 865056310 431981260 490542371 589292603 454459668 567905519 15475942 447779751 42707777 357681594 815417951 897228856 750227522 218810438 825953109 161749527 232357087 798319937 131312295 463196563 760444536 530754686 217597437 708585053 965386041 636717638 725806810 433328805 887652276 989527553 61376089 121818938 648352850 919097330 333461327 797250933 941440979 597723969 647616764 672948053 864472621 364416686 465147862 823698405 978118050 132121166 662503950 380970376 471779433 772377391 291584503 972184883 587640337 979154114 576914097 628360671 595482151 497322635 735387802 79622493 189051093 190544067 545490431 570161895 108739130 102004201 867578938 653227695 680070117 445716520 494834425 977205160 545053570 321321877 66286711 269827862 220570821 288732267 514997855 105473659 495541447 767659995 81057279 479113132 714141450 703052052 819770447 43964633 749434578 138289436 544059789 770306438 604088126 540676227 642089536 914880392 945491650 838771774 712819448 395086220 579603778 860776538 445039175 679433604 173356483 227779901 584756723 236731159 824312081 32214784 203672732 959002512 472542746 882554542 950641454 751272945 175144272 891334234 136540584 405194369 734226987 472006083 875873057 336119720 195470117 136651261 344453178 99469725 35564258 597710065 929735600 858492984 223280997 641369597 611429094 438461798 974657892 204182512 299467403 431417092 660863216 88726669 852221292 42493023 181432260 819832355 416982881 436293832 994517694 600996013 165718384 407362799 813350855 841596478 277526756 366490292 370877417 106836524 507517173 717634349 668825147 742101963 217705114 819843145 306716128 671998594 43386242 937059764 839944008 779180457 494182626 687533933 935486661 741283503 319909613 158119128 62531566 415170629 3437676 331024141 508244625 830472445 152290441 906439915 199724179 238063231 510520722 706861752 955166183 325225267 236151489 560430366 804962132 678861567 159240342 245354126 571004956 59981043 187542647 760780033 730631368 875326383 561047928 855553184 305480901 566187056 150819437 366733677 902858514 88313205 162842153 78623836 439605738 152033399 685461978 317145911 436678082 736010011 777906079 299383103 777907648 786207231 820668034 306688090 710248130 265595218 874202243 81893739 488387207 390228088 939613749 456765465 497271844 841752511 798403414 442762805 774232638 474299934 848076575 825157279 171272124 411175449 821002348 177706354 674680959 547028707 468138295 859255030 423791213 37107315 379619824 728651059 569565845 757371123 992270886 917014496 198985191 974140475 350685761 410532562 756218741 76925992 285852110 860357 16284228 458478893 808920366 998521177 664694507 31251288 559724765 279454012 962222595 216325575 428769630 266357073 422687806 650463490 345988689 781877991 602774577 646835455 204928034 913417772 592507334 709031740 138202455 9885307 387376073 50935917 621630173 464335297 255467679 439317104 986674563 739743880 417388332 359873778 268686787 651424481 437757941 809187663 730691341 539444832 717103224 129456067 83001637 508757828 401024408 960501540 530415521 818177519 373123653 233737796 81927965 924982638 899146725 963128252 296289850 329181957 651547906 157907051 356217321 635800208 643403008 468372412 24948857 820452448 512815788 260214994 573475002 930648913 639185530 471839048 869175808 764733435 734983450 433578706 786617378 346702957 459652343 460901651 602350207 170958869 263406941 981427093 984440744 413288357 679946876 208271220 983951944 26973512 865779395 468324524 596306347 327576775 267586001 867307375 642606978 730298499 680138258 708577257 777488209 546675944 200826166 923289768 960177416 589824990 298230042 108724821 468107075 618994511 32273625 736081233 23517819 997870509 244356054 825767099 17975606 793242128 334584134 663796114 997933664 463403873 466489949 993664476 221698796 894191684 942820343 880643146 500280324 465423393 785000703 889969832 14612526 241686557 843428959 631648345 901661710 748274799 931013985 87408739 217443673 957779706 856925822 808189678 42335290 437386961 5257949 685199396 686643733 785314245 942873940 298210566 605140001 627836816 990006047 491837047 629219513 918823655 480448859 452592332 465596914 332589201 463654948 506175693 37262821 406037877 956633107 420081988 142676084 427045627 367263059 660863678 761618350 693272194 15938221 262632565 770819355 176208748 403188767 762126119 592801783 74072733 194908594 210817498 351289843 374534304 570412470 346795657 217623548 212310573 999553756 824725161 15535149 106043098 284443140 435410348 127492651 996770982 903497388 165909582 385672658 193268370 549573753 550724379 75585682 841238134 769913616 380326823 166832863 794743679 387991469 472931944 786741953 870311260 670185755 605383971 246461129 221510243 41744763 127145609 140039708 647576963 143497794 732232835 78563042 581013963 493388750 109163498 153036785 441811747 298068579 757741005 929622528 175456335 600869631 516030805 590250632 39008795 539484769 760080510 205897690 948743054 260462992 144286859 406836805 460024145 770936935 229899725 655110703 978705218 114833823 928912379 590434532 349258051 217777306 66986531 269341131 233969276 345272080 9067329 198275760 233357944 878757635 773952406 560351651 362918711 898444683 915395567 277913569 722020054 977473113 469397553 732638291 711464136 459268424 309241148 520976457 616942657 321757774 672550999 430476364 357381378 22151827 341990272 279166276 69238136 191753755 292539353 23293937 306847569 523534205 825907066 765990343 451600153 676544653 989229056 138189248 72451545 605993851 339724474 444918856 651829727 797113690 788798893 241920226 924577429 290164825 778310870 541961836 90575801 633450908 430306968 524778438 426749151 659686157 547306918 426319006 266457839 931230607 278689469 72871912 42748651 897907251 505891993 122723327 865807102 813892319 665923706 154007026 748479722 581792384 580925005 914558323 673670935 772172592 308212206 958361610 437344585 436020923 575878375 18224529 624763635 466736751 450946754 158936369 502564789 566349258 590714380 18036173 243822304 341662268 661853413 722216320 424344908 256756124 724714797 193151933 811724288 836234847 50127060 481685302 999823424 359051447 151969479 62586013 780183409 783594868 282316809 6415850 37924302 603918827 90504695 805261111 653043364 308129858 492756370 707760291 17504503 923930295 606274614 13554033 309008986 44026560 869378855 142352931 735092940 786918829 134147050 392539163 294687652 827834250 938434651 652722987 929213762 863509758 495246373 973995646 553849832 933465428 316721140 234037639 136314659 656465591 634083852 892308507 270002830 327825694 341836101 807611999 915707160 288234536 972353694 112366511 818970769 845792074 322254757 768556785 843546199 509709725 274926386 463573229 600178035 149656505 526905865 663089857 229923878 595015212 564738150 154262844 173286480 925389826 277492339 285203699 272070138 843892729 594196578 300396984 534646478 192563058 329909291 313459092 324283401 778910701 8101459 689956702 475130554 324820597 714426785 166215611 58355767 989791578 899558804 377115152 638645475 354212112 761642888 665300688 46961026 366538089 636550896 557964217 651113650 17218272 398850176 74711559 833616839 575058720 860176354 15429870 405616182 337172372 677193257 283119121 814913130 474418269 372815752 37417638 807014123 722634405 448300082 24144234 665143125 623450146 21156901 800575256 917699389 758163145 488404536 910803473 863228097 545426919 564661618 816890220 45284646 669452453 662502339 151974002 859244428 91967362 115532575 754118001 573891645 142363275 181609285 354734140 903301525 349656462 410299012 950474414 697747153 651751077 515253678 32847714 910834370 983621795 406363953 141322572 590833796 159791436 755604393 991211862 431245088 245556445 512122030 282054022 87990813 396685973 526556122 463520763 603458139 778801184 875569501 281896802 900302769 484424038 110431626 562938663 447690900 183339993 81151334 474907514 470447621 922499076 448514964 174139398 399486735 418746410 847139048 781555311 741628279 431090732 338742617 863249743 233944134 461403093 241076104 845800479 677091064 94684672 908772399 792139682 966720514 935155776 792100584 550620597 186839424 986881600 414048510 651021542 429588626 360967922 454224777 731981878 31004782 456489949 580023443 889059505 250835890 763236495 360908537 819468881 645056364 109355939 910945271 40065881 23424250 416534837 623437459 845736896 496160659 146585117 624162334 552527739 672828627 550751654 927982190 889141987 698183081 7459896 436101171 708396414 917269839 788269610 158840317 991377836 939052219 673113675 869604481 293186951 115828353 306958716 818878452 188575235 200899244 256131229 847590837 379916249 64591415 29459563 23511960 490500516 75966615 843243695 661725041 875691818 854439951 363693581 857967072 99052029 270003391 973371619 109423144 140807956 161024597 548846003 967810651 718454404 227126223 100032610 817229907 446148022 323197057 949272958 927310936 278889084 892259910 61154152 332449866 292527888 805370195 481141342 896064494 12283555 495025049 852144197 783991764 244246206 272474725 525450311 946199057 205085127 376059044 330164175 671070184 501037580 391661085 128081583 552080858 796711470 349385782 186888477 726325230 814792142 218763530 764864878 359081051 556597625 251587488 445145697 625956372 525585124 5438958 936172482 649023565 85019859 630297551 717087300 999549143 20592834 420009152 865660344 603589113 921947633 738982374 724893890 838638351 280661401 843540665 714717452 237238800 478936300 876623510 494425834 27369759 117349902 738398580 343627140 106277142 798930545 886278511 933639470 28404218 735763866 525260625 269748130 395393798 681322693 889368454 237764925 640715835 502952903 841566915 450959101 36936923 888537901 717364236 687669478 243603675 29662995 866946858 594319447 606926879 669965911 854974780 458957754 828480846 318453276 261886359 920874124 180601018 422713262 674867703 892489530 870303019 118480673 77139776 788522912 653891531 930919134 806834706 959837493 641257797 619315022 394840216 775003830 886122580 229512281 529272943 733020255 250940086 349674932 407893703 335888596 73888058 401806408 154934666 2728582 44683553 937005331 971531227 692329478 246361264 641499107 220902969 926436142 275198629 677232318 153896377 144335377 155994103 531423018 474935599 507468443 206479321 998012920 986526669 841298475 648391884 630896270 280425599 992024925 703303199 134989266 945582324 161268945 392870443 921388795 125432432 125346418 676307783 876215894 385119494 923616493 414144640 955304656 879220536 585587230 893082159 618743844 543354198 304874620 914507314 781248213 852413074 785960305 222419165 390121615 860884444 402188191 311520812 909109828 366271318 474550346 195696626 112356139 281431137 313421105 372736852 284277969 157060184 309211037 107536557 572462745 36871425 115008285 422163265 863584857 528455270 923887386 796002728 730579083 498800969 56305539 200779302 88944925 846605236 167535423 966950644 935868731 431793814 608924211 890993460 628573038 412357931 205947372 322320394 209365681 981914106 876698719 456537625 443156422 178652132 198088439 606138666 234730410 730961402 281711392 425636211 67478470 383932227 225605998 168129176 658349838 637330816 829087787 440013649 179346767 606819676 530801379 898036366 977561584 593848085 216404015 549274911 682282110 945310209 521626927 706641150 568039732 383320375 899301618 736434151 1432732 507002065 733646166 413713706 869194030 492090655 770642385 25866032 471661774 415057766 356595868 398212210 354433730 855367227 273321531 649847142 808638803 265307643 714593154 871051302 14341139 514798415 418005048 839769852 858683283 385567133 306732353 437030732 631215701 934007954 947068200 873466183 945996059 669923059 126596806 977761749 982717443 95114673 968879364 316441824 113093961 271886572 272532629 206655881 434736252 332022923 853897234 854190200 455889537 963526462 755356473 818748575 598624014 168187335 875230401 793921425 191337505 37937705 35456453 320144403 968882182 488666595 40670213 258832284 967773265 533545529 680533679 465335990 631102324 537050736 419686184 711383631 903663234 489150961 643188108 879053894 764010908 941800540 23396482 61224806 718732693 423593172 611484553 904636065 896735305 939530323 623252287 648823270 638144806 680793532 29198168 486165553 342040473 858363255 196099876 499692240 152574377 414866551 822386174 441940978 249500582 867278259 60783538 824194741 475483252 147567837 307992580 827754903 482753219 981764675 632718741 367258970 570372452 513445605 595314100 785682979 358655512 590421519 879043566 203636196 912136640 853744832 461468035 840591020 547116088 753995154 664135734 383907574 856628293 332239569 772926913 429420041 988783088 337924259 384936932 586855677 471287821 967702427 333386571 67606609 680908848 417341416 394439002 584169506 391931717 915782367 759620662 307622005 86747128 648771845 105690934 738868197 55947390 290715380 226635636 590395920 739672623 727854573 249574133 47985140 592301204 585079706 819005302 34151984 527699355 857825223 313695039 411025924 473878101 842566628 185193068 519554656 707777610 177483201 246197896 983644359 314518352 965036640 56268324 980808158 482027090 365851515 608637286 178016437 932061890 843979729 616288689 123304567 225331379 716850525 77082007 949945541 947845746 785198637 265746252 256644366 73446770 129213132 546839453 168980119 788270352 870012624 537650626 644011914 226625377 465636223 114082633 377081247 879121776 370962648 895814043 375614018 470490453 803954972 410484415 222088879 236608357 263673999 591710604 30889056 180097869 291464818 914197220 79237144 794914244 935113086 516241458 453047594 891571294 861981784 874425397 309619334 843432804 607956593 208936558 803147674 552582980 455260552 13404138 432335517 21436060 748790502 794872439 825801545 381065315 721207659 841163006 147350867 638069375 707932984 413294784 108180227 207717531 565861615 456748465 321072277 221478681 269514627 332146960 398125016 797505827 963248302 929274433 256531245 556627803 41828623 90560356 141454047 558214239 659826991 683830311 97968701 198437646 507521330 704488245 983897469 730218865 92937900 312797443 714089510 545132303 193967942 636344198 688233686 181563972 922288321 988868966 333137416 583094966 102634833 801750927 709687692 790502502 554475044 449451810 563460071 12995155 619387948 418309161 226247616 595716927 842936224 900881731 151019982 618648696 674946755 875156513 88746962 885454453 858949514 541596876 374845525 785013353 227815440 665596937 662052047 914643352 444293800 629425370 282432346 437039883 408691125 469075131 647157385 605475073 965241738 665738953 286249306 59492452 707654727 953293394 363557421 338973342 277415808 353188818 464975460 879000619 668606927 348526289 222388286 698782087 312459783 755598569 391580596 447868037 34582631 132436387 905034063 171687459 996080790 405213013 747873996 482851031 591926680 303743378 969539955 227275492 24695211 134504431 969837815 427331413 648647783 841293319 881537078 852481740 809312539 385789189 81432769 99194480 386185272 483322862 345541670 536542360 13116967 878237026 91833327 613788897 294989097 35434980 338790827 892429862 725451666 321350452 266765085 716684500 576478617 368553938 906810954 169400753 607354316 305275390 450707164 247095440 405105238 277597137 725111460 588161623 863811293 90975192 102765300 465547639 540167776 246825791 970236837 612382419 373588197 515517867 381388075 32477872 349661245 854869557 126975046 787436201 952406137 164004000 344256873 288491347 334180698 667605570 633495597 576684331 692670351 658194275 791575549 936858342 521271696 969409790 153724063 246981122 209029929 886940380 591490659 402361530 982437317 988284390 281526720 704742686 427618932 162048736 698721126 196728087 999225462 460055822 845481937 422696640 146512100 617254313 182192515 359500204 675613144 730729317 799479756 236343818 208910891 137246929 688344135 581835114 587857926 480995139 806385142 877880597 338953426 374445641 507985510 808573098 86725708 256094517 798544443 130530591 563167861 196858782 720200410 207601989 133162848 670745552 130458513 175803272 53544399 957768743 800282814 9776842 113980866 142308678 921998624 520920148 699170316 21012247 240832325 762638576 675282059 74614244 200529314 16945626 490712478 661502018 489123695 516486884 333471599 553215927 151896243 309029242 478327265 768952551 137183640 240361768 534469126 621681343 646791293 41079627 147718319 52207431 857245478 761769058 361015433 252790396 507307398 170724482 507445377 213446500 291296304 272053205 876722425 265085244 69565811 870226648 752540705 67368723 87287676 346372998 765746397 483190608 871144699 534801420 638266224 97975141 75366422 157195730 170680584 477490756 148238327 894636385 99388951 210962506 854882549 293485544 397785257 486616876 661853041 798640220 435151413 522048292 291300941 712679055 948877630 899520411 825399806 786160575 259612477 644299728 323420220 580917317 99738959 368444700 918890918 944514607 964396045 845349708 459262558 256037800 176293998 37562304 669357617 177256585 725608712 108797018 310534865 774943676 659211545 922611302 691635911 693903221 330005461 58945057 176935417 989295719 259186077 78352564 837023137 106152117 483389280 739627359 255530625 422470745 449233021 141196510 938740701 65818288 477639251 904636952 608593278 417557648 80656532 567753462 17584745 519503364 740095766 742017708 171029494 521728103 607413357 57348122 170023901 802794018 264315611 54288040 936883454 548362544 175672959 721268906 464426648 502824653 261380955 800497333 596861721 50498894 38465999 138923696 234261145 543105280 822807716 21543021 556723174 514073420 786688948 150805647 821894842 851459584 373850753 872185748 290710635 352137873 323405544 207927047 828194787 648966319 510257721 366930980 951863566 443437541 871340941 20923869 641309129 14160816 386217869 573318839 444726438 452714708 669852988 542722046 664381337 171380389 519293854 593867866 698824291 816814059 651380396 572291875 679956206 800592797 775343052 238128619 531270731 628292059 190466911 73914219 359489094 177041800 711949657 729422256 776738322 266878205 273931700 696500069 81274241 417555221 481557808 104430777 307781135 150190755 11252459 624371317 558005755 179813477 675216389 688476740 678157206 633108862 253703833 409247333 840977705 726405654 999264073 24433523 677856540 930122059 148111240 260361412 691359592 627114967 725927599 358507329 764387384 217049223 126324025 450490592 683545500 342536911 160509195 918308408 735116894 251507013 339862195 861792443 920349903 776653921 882271612 252996493 145177638 709057683 823495296 464235184 972181918 145874885 100439705 590852319 284420298 758045959 500237853 592871895 9179030 111141338 321091333 688813996 73060762 890448955 685844755 696228989 189199719 321827400 274034527 290331119 264268823 908744506 669867808 991258966 975849976 597707245 947767556 311504737 349913474 927452437 672561044 23465060 461819885 965604724 723573275 660057183 523422349 203990886 886367386 454066622 808642588 961410862 230134428 90238389 480020974 244378425 123401285 526879942 695801520 441964871 397314319 456314774 527813813 959539053 987599806 536400415 109687857 328058729 770243712 7214142 618450160 321079589 135922959 368456181 673526662 953779152 253754583 183070801 630509137 152837877 745085507 805283938 650093168 48494508 675163052 224879052 63334494 95381433 486544149 850283835 893093030 210011537 545991454 863344882 92557452 256772979 256228565 650136038 333527183 588829442 31953452 624453365 215727330 748346836 715618899 892007652 7205499 539204395 746257823 166149598 845044815 514901375 8837319 809723176 961602468 425385160 801371418 444665743 961250214 657655947 334191575 39792252 409783936 496464813 91012978 506965911 705378612 181164007 860928172 479915198 802064623 389838348 671648251 240693078 69052207 662388299 248194693 38721287 780168705 992203364 154677156 490240526 373630312 47931203 658196174 444156613 631420803 922723304 347163953 61861210 867766164 139940563 588970385 422108074 544269199 785113829 217095734 892681010 819145678 930955622 728871199 308330416 863506801 806808159 688235592 518611201 564797600 5061731 31145407 807232986 948166262 969868622 107487605 669680979 546450465 156326367 59871928 162089311 511161570 58810938 320288842 41615705 456544743 887459187 101105242 274382749 8039203 268446173 933380324 172494981 658421309 694166733 926664470 139852080 192988330 406559448 826401458 120648428 684460040 942503481 755613058 213267556 623502233 145197410 772981464 153334044 406184378 410218604 658650376 615888162 165705821 11475794 961803431 247920189 929432408 717014488 705748050 232199395 755136587 92803632 382388666 383208457 704724682 316570793 858342124 794703162 190221322 831092979 162104044 427179239 986244769 765074999 540112000 967543430 710801213 951742585 7831576 17939748 528457037 652140550 498835455 739454383 437182411 756043225 209163037 559110610 508532366 892562029 626664367 370057044 879782813 625238460 682786162 64405213 718187622 328341930 956596518 396740143 88335660 507220201 651421291 641157259 134238318 815171663 294807647 499347837 747855925 458846439 126500751 731346910 639426759 752848067 752830362 523130938 392387064 673255453 163934414 896966222 257514343 679707671 542930078 27757655 190333735 425733168 241053864 721320294 207916308 947254861 315123327 786343423 211439118 176338632 839647744 492902761 949038022 679785652 217978443 977939877 825242776 257273685 765995818 937057635 336465467 255281192 321743609 934291636 813674468 536093871 975124729 544243319 818707751 488246996 168485401 115171183 366473353 238762809 922039403 893613314 55295764 214309663 845394181 239167028 157648578 766676504 106759054 314826583 119772344 771005402 476325632 871026624 537233182 910633329 664889263 735919820 573266374 609663304 320584932 74001757 324926194 836879301 159221995 313837556 344498279 329190969 394881402 123330230 325772910 31145336 725583902 974273768 859628166 960735500 581618982 193682832 70916599 475299161 989962298 731692897 401408203 708494720 638726894 787550633 638911926 995173618 302638168 1837523 911139664 828234445 129216917 117093389 770472519 69575836 415998481 99396008 835241928 374387513 591033604 911558360 557071329 570573434 990003383 729076209 187943580 634590919 569787141 140143592 415490911 628809568 890869995 38287981 993627966 864408012 526915205 444131074 571492194 51438629 961905246 29433923 688240302 975459221 631214453 509249229 789240507 875982550 577102424 807862875 330857860 726963793 916376880 141565814 574502367 765918723 419516302 643842339 248620027 270109189 36762936 132979446 47533058 417665874 228599684 678233910 636701657 800806807 13947521 458970834 693398154 893863806 711947046 262247761 336639520 393125720 137317051 891501181 876554678 88186398 648170178 826018048 375013514 850949665 874434236 897801373 722446429 735561809 283556836 569264280 384620926 526942632 346260367 640067113 835570733 68502547 992137066 893450119 914953779 139469992 212442036 177409960 530845676 613915285 256741197 623889759 280158507 772365903 62082716 6116101 83586244 404669936 204564297 822147821 656621425 241793965 652469574 290926276 773231103 200444911 455586044 416087493 503468014 926035809 695546529 411353263 2481311 800778195 884962919 49139192 391248364 319173002 411446098 643850093 935491053 682049186 337961261 918245461 239295331 725013047 836944094 63936025 420195372 514363547 355822565 197067812 842034559 809049103 100423347 446526942 445150432 573253452 486906582 57728191 660341374 891798677 414232349 576010501 216125187 195068299 128029431 815552764 534139867 742016708 927550915 920869505 377824826 909598005 124800462 971760260 854261593 836320408 914441409 776021888 171872474 343207438 541989822 728518940 778933029 750936853 426621082 858224798 586894855 476210811 153451696 950227174 253715225 322427898 132760457 907559305 530797316 984459051 213561423 987874658 174859532 780918518 309507005 689711773 182445735 404859578 892402710 745048440 732775827 958722466 573994489 288760260 809982057 273035517 779469066 730047564 724844964 656565524 199549492 332775516 197898697 612486643 997306890 798639960 741660498 760368985 579643584 973937858 758357623 785280293 540263295 697841416 509672774 450738038 390312525 406739627 507813672 260298559 372649361 630139085 661619500 122031397 266834211 457435425 367053522 244932295 851350855 891045412 899636317 589664838 71395795 8396324 323324826 321892980 481131088 470238583 909588453 96924957 884613840 593989410 865493115 404526253 902266224 947919046 674600805 81851065 623979463 670881696 964448872 480232162 727617127 335830833 91374738 482525265 348658033 299372721 632041830 488317026 365990166 402248487 161782465 533973036 502295862 27140646 621113403 58246210 468106818 75226677 917221963 710193998 206113990 868336363 811560000 616585012 273935614 678212993 534556869 202238407 214575025 837567556 568743275 344537331 133312073 964342911 496555638 473741624 251496433 159861318 947973731 447245806 688762369 785811076 432881895 108807952 914665238 82910529 116311407 152446624 720941454 449125683 133770 307093945 607592512 509973795 213798238 300711457 941722078 572791219 875267986 747299914 358066167 516741882 287367514 199069660 780861918 421239567 159101472 161994910 898442866 294759581 747266261 607308533 770031463 405319411 376582709 238436400 254369528 295140091 466289002 748147044 96980752 432256592 92517046 387471957 188692625 996228440 842550838 971761947 605669779 853985494 883822845 652407631 676502436 50922332 590248088 391084923 422820483 851387963 523833227 964910191 835151999 394050450 543679740 839397552 286620327 220708980 489025923 254481371 961955947 436191082 858574060 391516700 14923829 725738341 85160511 291460454 737820515 802252088 6641003 160090759 364235898 64486991 989722092 24231854 457118682 734111654 467403576 394006583 442068499 794940898 20315680 540666688 816611416 538629423 442731408 247570469 973408235 157565573 707861669 229852227 55658694 477731563 709861210 965512983 692803020 90156285 282725254 465885749 824088979 723862948 820390624 115172521 59569422 115686426 807799070 652356295 314640239 296539286 642357717 219071227 166986322 333616347 559680016 462952011 579676161 431583685 73886130 794441824 456151126 220547538 432599230 164821961 991296585 329453907 665347294 51003958 564224407 931912803 840886524 649411759 270571235 984239415 596699897 370055991 247164194 836476898 52505274 817768123 767152379 145042704 368268337 445685705 371389270 301416562 843953758 657418133 314854920 574976694 45497594 42768742 234680561 54383584 10020468 514952738 660888742 577354656 605931193 76370503 913382138 207226101 457173697 992962438 508285252 411908792 311526793 314856556 447304564 974095473 100975061 882186534 629075544 977313001 37749184 100902782 940605256 447363026 397852106 394043126 289111610 62651563 532214798 17615022 648587113 496224237 669019566 901560619 833907198 612205662 481056757 414073025 927862641 936260028 463707271 272647796 23198886 920757207 990788566 864157277 588077400 455610066 325341604 113279964 892367196 522951662 347363786 87560158 39679051 906825998 669487218 943569136 589079661 286461876 230344054 451620823 674758860 854968656 225316227 896643475 90879845 239892693 544480666 991220908 211210851 730154786 348129173 567631475 840009110 311346920 377749386 325201370 353647609 996969457 670584709 610678862 178420641 654783283 593300063 891892920 302996815 36100505 557133437 115238104 656037499 628404852 7069129 698346906 542837866 812248069 897967239 198902266 723986781 67907080 853811201 592112967 630509274 999395020 691978661 956484569 884323620 439539265 548695355 707386418 979040091 209143915 693251248 874020839 66218674 329656129 955443036 210375729 316181964 585190530 578603864 382662115 112001047 112204023 426572223 521896011 870039497 889445471 364798793 781607161 562296494 335964678 278429389 510038647 321466669 547506848 979424256 447966790 359863273 997030312 218517106 58388876 802357377 221469611 536385132 50587925 45753629 830245083 385418620 755926867 468034735 456492518 722460873 287636935 952632027 223472159 891083280 511118700 790443363 256258195 877879005 666686136 760863531 313888695 417587080 313699857 555022494 584805256 8215340 91018415 473728982 373226355 759074361 434481270 920488888 433414438 199387713 466087892 56045802 940120581 512828334 846053920 811564319 66872773 98736042 278377073 522627210 543392452 437810859 544013086 161613746 81601487 751327609 822582775 836003396 47017352 357569794 38503707 885066615 887540387 135847522 103109144 498438462 617942058 848933990 247364944 229667969 548162622 285238341 217460888 534466025 572411644 312782172 670946268 109058105 767124920 746224237 456506349 206649389 219367889 255174437 292202530 449648172 667121519 781534335 583389985 940958759 567403518 79027956 934335710 434396977 352072284 667202287 705473530 61273205 26797564 175691754 930124824 410708467 427026777 333762177 859798174 360811448 59094270 844926639 143061151 471895776 335749316 703907230 522993377 299988710 78761008 886141110 52910500 537269067 634384805 765397268 112437452 588970086 700814618 705805864 740601666 603320733 671666170 923457409 263582405 293062697 561758410 378876944 172530856 280846767 992175235 835761732 700790065 889083726 414003033 334641885 880785829 361780878 918873614 756932281 246434215 225957532 164675114 28535759 8219150 264189169 763632707 389227199 235698279 632340908 652866014 963311713 3857966 389663925 70975821 637220354 149215276 482874356 873532212 709376742 213989941 229674500 766158472 441723963 255677689 831019188 635435860 894167599 416897641 509637807 77515159 618125217 529265500 383755391 589989541 694234477 463306786 798670017 272792558 151249286 967951699 27416438 903224377 888789284 227359942 824196204 673593840 320214876 536851617 84377902 899542972 431285621 376790792 157729570 43654167 948280430 285273079 424184377 162337022 294629797 43280178 339179225 763655025 208437302 451321826 993454529 587059797 883270430 948947269 59186389 835613247 932024176 229044883 385319263 884800079 812547096 955486434 838464107 929438874 372623421 424468540 447750432 760153004 244050348 59311929 938931674 365777816 428408809 975096175 269644787 954932456 149131704 265299514 450962131 612765288 770453171 969055542 658450997 395421739 971363401 138953693 818796589 398369522 495722942 697078442 226781497 179120782 881296294 73704156 325832471 977121056 43737612 803458314 742899672 532041526 642144082 721199818 337515466 96596565 93490310 857541729 669594090 242355688 175288543 692593661 270443423 49833842 36783747 860846871 259879119 285024577 603987314 204685968 894733602 525168028 918392237 553756638 801730001 944042232 588507630 269293794 543984077 944931232 562656262 34912600 977865031 700188078 263277017 509583638 241209523 728754466 472259903 500983486 638807771 30292214 30231957 698677287 451777194 132657368 796315178 467587471 698173959 481824365 80940641 568495141 894661426 824200290 819911038 462376420 103310315 156315071 22994500 709454230 352901830 607938202 746725525 808594647 20287247 552886191 821855838 771409628 94141249 88360249 549844237 66782549 64279962 740775243 526984553 973759661 121042256 744463210 529005215 785999661 899698757 964971642 331397364 213775906 294719454 872963503 731624527 793474846 730927267 247531939 283090877 370850464 671262355 447898990 288987718 378437159 810958771 941304268 700849411 508083390 937103429 356261003 338518698 846665101 455486914 857676175 99075043 884167410 876201793 352154407 12928897 919030828 703029937 302024949 57780666 592043492 219544843 802325761 669393816 864751680 100883217 467266981 459429571 915464365 767467854 874943471 319483532 970739630 366304704 330339909 403942880 912128422 178589780 237528235 572770544 554222487 978891447 45072300 500501358 590659533 997249965 953445877 732840080 734324774 361526187 196497671 747862466 387414292 665931829 676158302 688829006 482649132 602425703 288427763 56515497 594662482 793017130 908492390 833483354 788740221 352511446 461559768 265787120 117293514 679253262 105137376 807825964 134785075 547892188 239776717 623592922 23926597 455611574 29112800 542390754 223741509 43233705 590559123 281028022 842743984 664444350 4165777 941978325 867330479 96174366 203911530 411507962 829935770 256133685 76781387 458866098 981271637 776888160 808730499 998237328 300692476 238486402 531705369 409842012 500497342 331819631 959891187 687412901 1247933 743078072 921948324 300943354 468685281 443831367 878283264 781923937 69539800 96004129 875316783 849855844 215262587 232728239 454360727 112897342 982539108 473958894 810749470 535458854 826669845 152300355 499148264 279523772 279725789 333584242 604985085 431698969 532674436 534945344 626375781 730325956 758314565 176775529 369914423 506845639 156368164 235655962 112894033 497914284 999832644 424908714 835715457 560099261 899168145 339597065 923079759 764489415 564143270 480967133 646986014 379756347 896650906 402197956 82098867 149059782 680774909 525855833 63005669 453652255 924725248 77079724 122117295 823200699 809234964 661690658 812332669 626156615 437137868 809038080 49570513 48914562 546121453 819727233 629701091 80125079 989050170 629131093 367804235 172576739 447840120 515434740 929097109 534636296 306000629 766742660 917893348 350724045 934668329 615125251 528596748 989434990 538435430 286386224 681349145 778756612 771440443 318239994 315433875 640709889 664267636 419852581 107557261 785630043 249262905 131905328 39782253 863028488 551592544 629403923 610892715 681531158 786706654 880438009 64913086 564008242 895469124 789768262 660930661 774327855 631752468 255579453 89095530 541063453 898265895 892093022 152640350 889712214 262956714 271824909 566159962 798386029 866645467 850599461 280569960 170900709 535126470 211047083 918014414 198925736 438617668 67901492 745859102 995896995 212244102 109374767 261030168 233715443 508768553 819681261 559547479 248965368 340039075 618489411 237170367 687225107 951541452 995305212 689806201 809855015 829130139 368637272 615511901 588899450 168391783 201049821 28436655 98212720 136980099 454234099 357416268 889550944 324312665 761573921 357643215 452371206 416141451 355904177 501233030 285635698 725337644 168087454 685122116 183895166 654830007 647934362 132146708 891732733 866647133 947406836 379920582 594663826 954682903 506293583 998237173 363188247 745159198 596765006 287803009 80571232 509283918 591398394 496314091 909633717 187758957 654221414 695237711 259682278 715916908 264838928 464945099 137257376 808147996 343832179 202018601 26383909 408841798 184179824 410801086 846893875 232680964 185438129 570027901 446984645 843290075 19535433 480676168 928494265 360350314 959057882 497152866 25308196 874628688 630662008 540730017 730974759 787022059 992509448 433874653 809032020 234993947 49672513 177384504 90167469 534774240 240079746 916754004 260291608 751600212 951572494 686289427 834178254 172067543 932012984 67923244 906273832 874528105 467827614 927562369 97829494 697284053 836441100 625146597 12967730 888489296 942017157 256911230 629405932 374853022 240285485 421053933 829729609 799146269 278145021 874855425 148668081 98043744 360636889 381274059 459186360 417052562 448996419 415818665 285351421 378284301 373214088 602929215 725755572 135537963 392863200 507006437 294849531 858835609 100166022 670518404 516340648 918685231 114122082 881956842 712078895 666305017 937381973 608379199 174630283 492854552 426912884 956161683 71193867 575324080 583051289 959933310 734822527 640669308 334996303 573555036 599160265 197070556 767890189 304912091 946569693 199071721 534533922 543444027 564261486 753495848 575835148 294687291 66154457 672340445 465592705 47276577 372663763 898924187 149509771 31418792 892201513 704813264 52792954 170084772 993538458 672407193 580199073 312206425 283817515 949690922 73325749 498161545 759199798 822507889 672313151 919013815 536706071 263908759 356903021 954551461 864978272 245395054 614450268 321 59711571 619648484 870355532 772301675 670380371 437573068 306853413 207523503 468211791 710709990 365605155 708268063 750418061 81041745 320846071 590000601 49173262 302878436 990021430 82437589 428774332 848793701 389007466 240952503 362643720 23696488 533880955 296555352 900246075 898602022 620776674 758559650 889165744 495807810 748027173 30775375 315464957 780437188 620234794 348994405 743040708 187869130 263545691 444921259 777723078 623949928 870342614 102110678 284083885 604807428 549039868 131063353 170975004 397471267 415401330 848288800 881193112 773445381 941523542 741868141 634421129 776915183 298043899 740196504 465105440 830187033 761493867 991080478 490281684 379988093 190969727 752313862 343814232 798653701 872123972 514707197 689790491 568987495 653864025 803666608 883652056 123653847 973046071 212459590 430833269 806003306 433265921 594699231 816063745 562747347 501656998 404612313 676889321 814940520 796726052 737261492 328247733 793032973 379975902 967561716 146142380 113755923 447542121 37689294 534305749 553241981 69347011 747387192 171586500 995541555 716709139 990818054 360905112 142649412 572032745 820769166 991636317 117610355 586017212 508509466 277089380 638562176 834283595 544142377 701881115 428300462 608886467 592747131 247973908 962000922 735880373 894318902 99515823 531322394 878535168 670904559 356814787 468194944 856774563 753324268 936063715 980178729 407469874 213860130 957003869 573107977 745118577 372807302 412923218 151321504 743315164 24201822 81491677 254691911 651287040 456908647 339943399 909359052 474021040 12177755 379615519 866187704 87879882 644840467 452362678 12875809 16636236 778849805 21175034 862864103 777278500 556105582 732698179 140342686 666397251 449309007 156863803 693361168 840702929 394793039 728815779 863660461 125309031 396389485 777622027 124736866 173479281 86211487 681258798 933533243 939149524 14809607 450982390 576530631 415067852 654268568 53048259 406650097 807547367 603816224 366739886 251574150 510142118 841367041 290922793 808195730 823807040 122510332 775088061 229151374 229319182 660722630 763065366 69944863 134792664 252661700 478586047 777586656 995745612 142338558 904960155 646724713 960290399 888023844 586092351 280804865 526518778 292693191 78840401 9005414 797824668 402808163 377729215 170664146 401056892 504121054 318692008 705843492 126172152 50909236 593879469 226938951 169001085 545861426 511836860 565435697 853304668 431873868 563998398 729500198 913326275 160654085 758599957 551126762 849749183 799525911 332494865 709866468 290244690 720122429 644346790 138858264 688540948 668125989 909806046 687325309 859563919 503994566 745197936 733032042 250097104 144710966 881854370 397822768 733039994 645376181 370476181 267403100 947507871 161222393 130993452 82117938 997632358 953182704 153264960 86250871 699230291 216936875 874444132 531697261 491510747 930239909 792585542 74447909 8323908 666907673 850244388 323052713 392472670 972313309 586370897 285511407 512554127 89223674 890197971 257508238 695871093 208184174 432789383 295153592 794196475 382398859 322145745 225768283 677756963 486512194 241927892 658698594 88975488 249499494 413645423 23638031 809705171 931094548 18878731 942768287 824439247 307997478 578271028 351658607 999705494 463360794 171790892 654802346 549310617 592588220 622072070 245236530 927303532 523360791 341301496 31268916 945915752 229288378 127994130 236205953 639541963 138952588 359317072 520290859 705356496 774533314 809360681 256535661 960360552 320447997 73355083 701302073 706711899 564983025 270644471 736822270 706688683 216547450 356678772 783541262 502728474 755491528 396005612 263081326 593001299 647068334 712676271 99194349 739419791 955645306 335294694 922168873 698457970 605122072 483550198 296715366 603830003 549177739 488852146 881698432 96149285 698685655 802323315 674266175 719668653 695093790 383730025 733615250 871845216 455386775 242351116 847798169 254486282 629589112 292519038 674860353 681847423 51984919 403331643 414150139 749569697 533031733 441624252 899551922 963632552 769141375 447932559 721010351 696915339 710280376 416076024 147110799 170955674 652563041 235959319 203093653 40212202 739012915 65687263 504554032 584141572 132165955 31187754 555355820 357154613 794632030 604316067 504690449 19824054 340429132 513252960 171347216 566231205 510691884 860464393 19465941 673511469 507425448 165222448 545661644 450712874 117389217 119575100 690708133 133753864 37911630 195867066 116534169 50901494 809336594 108928327 255262555 455959023 904932844 411461832 884495059 142494666 107350564 539820039 920728865 323914664 843203963 241934931 50080062 712860550 248069454 122336360 943056152 584754755 125372244 794811621 82213058 562000426 514095355 566838167 236092666 987571348 907320321 645920020 577604926 575316981 221372936 525652606 381095967 8726208 516277351 896258205 257955635 821181189 660168426 879633374 977614770 226016493 314342813 313956191 701632394 359333339 15957588 256937060 270341550 602722501 389102231 400209361 669526103 809071297 547053452 518898081 452870746 601117559 125359796 363592769 393922749 991879080 907216596 319947443 625825275 839173432 365074768 821462075 385331139 847869862 88704268 456365893 134134407 968037626 420722308 196361274 130608757 439982554 276654075 76743107 971021674 380885657 890853962 80667242 941313871 648313945 709523150 502437655 759971869 231341921 182715724 449358475 111194115 339219452 309940965 189431987 492320175 20119636 865436970 57091900 879389331 501786173 267571306 52530323 88327297 617413283 926234187 608699794 420818815 371753845 628532487 78074745 17311983 987689167 171557052 920560053 287018593 80015291 583527101 436440618 930929675 429069838 891306723 428583250 958262592 341828314 122836627 473997625 48107366 911788584 471551909 684255760 517444031 621575779 822533497 996509441 879002492 428960835 56637692 301079700 410156935 258078744 194639042 674981626 685256174 981540337 92119511 977756509 123058441 103911162 277142763 959209532 187756697 283598759 461805722 168803584 98559120 834688156 260037116 337824924 919765461 810538600 861689976 357411516 673156163 262778456 312547686 146919274 22982221 766685610 77791593 477373239 266830976 782167500 863751089 766885102 811504517 313439825 794751780 269028295 391260457 467879403 968190254 27068681 863369608 824381690 135914640 862123103 768466287 71652640 204538140 341607358 872483056 575897096 359836859 78775463 377251081 17202017 102039641 484749812 335370328 945300288 664462570 579283196 839132506 561991769 655797327 524372658 114077165 801140519 461404654 963945867 56632929 739081581 695136384 336540472 765598638 131189397 472535156 113008350 114928051 701658373 75784151 236820451 451751844 870019452 970651114 753510903 27827945 638775590 850087644 995118602 176082069 204391363 133251293 200273027 130407718 151102977 62000314 344830952 77726004 322844630 4386503 726648724 381780407 260980138 395716755 58919884 487753361 672651054 79961722 616715246 823022601 931041456 170524086 655703153 589261494 42481754 350122736 992231917 838680217 280843989 895997932 190436446 779052421 962140743 332466203 966614305 204214302 341490184 688045701 430619795 776798862 848886206 347277293 95255912 773642936 215374345 622304985 680106775 659110243 922017247 212919829 480429743 639411360 385825574 109927745 831448311 259508642 455545064 916957021 89211972 336825865 214931359 861429376 846771357 808001277 870181834 512428883 8286456 520881518 720522400 995021597 700358043 489809364 623358753 675473032 89232188 885896684 740447344 454612132 796087464 166652527 162655988 410939994 677937024 980154793 571392842 499939864 572574164 567459380 886132886 137099812 625147646 879091230 133581569 856878197 558069056 249241946 212720903 676391073 576734952 278223651 887169547 840751387 730281399 205978090 111268188 279720566 737993762 987661653 827451384 938099826 794347257 86822888 365792356 426814694 945180511 791730882 114991217 50704031 418676413 652570946 95781834 247117454 572480768 439844728 962152212 450867586 297189370 565323577 91786050 658562283 31600435 922583809 352622583 550499933 753088872 591058694 384666200 200917353 494446167 999172118 677677226 55878311 464409600 230406520 304995078 597567490 761934533 65385527 102304922 984319081 670839271 652681366 783089301 391967649 828581548 384124906 320398229 247812882 368288869 864291467 833354074 187077038 240001690 268893841 693053599 176270911 842704945 483811095 528500035 250102020 550106896 631297910 670197049 415785019 537430404 100063757 130839337 568274321 397537951 717939824 896118210 775307049 67936720 297670528 948392061 665804297 105123762 672475772 349755142 652805136 928015392 16184561 121750444 393911428 750818888 100477340 386494055 338137686 581986901 504109876 326490151 399651682 17975009 488923938 121262443 802418148 410428790 844042523 398798978 595223787 468728734 750449180 291955153 400185947 902660941 979091633 463351044 894151140 748283659 899953697 264278115 233702804 610049847 498796146 561966981 773855811 267020290 639310106 734168406 813639346 804411576 554383536 413177807 982905225 180464133 633533962 829703044 888779823 551706753 585212917 643789113 746611567 622887213 547146326 578148971 97346461 784658479 5520864 593936766 940368719 260338736 175649901 569323075 523748445 682087742 68115017 308021367 398472169 823791350 540207389 58082388 683525981 741597812 450839659 534884186 810516830 327187703 555443617 477475623 91578221 895125436 144627571 486850245 70302878 674514887 759734022 639994396 314526316 669882651 735923292 746441571 172931992 741024726 761738049 941461455 373278347 689417628 542882283 913111059 742528265 374424066 384208185 917286571 631903747 830241893 706498199 658674187 511915317 56521070 432024164 535960334 439373230 849198208 917565609 500349394 846992930 980233227 667664571 453446349 83549036 869561357 269942241 817636929 1184896 41400822 469829384 576065255 756039850 867469302 955547833 465512108 301567319 338090012 955412781 963652865 142652249 672029598 408050035 291943385 560776603 38840985 789099382 491001513 111479606 949694410 803926576 505277376 915421450 61794004 546505737 772627225 144324935 888647305 498909575 786118910 695814870 98304045 33546782 187242754 554947529 762769221 377876345 75578829 260136335 385854988 24641445 279783470 370454479 609199589 900524638 774886190 546897332 579075065 530778156 900899653 822092626 234262964 146383645 370882611 499998904 164130508 505785814 990162822 224830652 403227608 598350247 429925892 30774604 310004991 908708191 525467056 851257407 899606347 298062734 514681727 28992192 432284643 52697120 504892115 539150216 53305014 902057040 525178346 926850978 623250582 294382858 530347736 536160066 916557621 347588934 441071624 558958758 634338270 237210253 934662177 245454070 472002928 679042607 347002268 323782904 230393193 617221776 909330096 766478243 673468547 71211608 556878382 247739017 534505910 252893957 396453910 349571381 459544707 471939611 434889974 180766945 566844811 72359094 364069538 754969973 164910688 895590176 779358151 489144117 247870073 976760935 978528132 1851701 99625845 31041398 695504652 546000 684528649 278576335 916790706 415362416 765264821 560304816 655723602 937719906 887844625 940636450 55637468 107259898 749530003 749935260 674852359 869369553 681523732 296752513 726307304 945233363 369537627 993605766 792802662 128990553 402101506 679834661 372190868 214643898 381137850 334473598 341567522 457673376 382474590 515017430 881941444 332605857 23392306 901169512 683961678 517895225 878806111 842305977 480857441 163443213 615097429 440052866 192839182 359321234 243483664 562726636 283366335 113772256 378232490 431427236 336255748 165234295 880072825 970054233 663062123 832223493 852767629 453322491 793612261 621692773 829364960 553053603 27469284 205250301 734132569 929719180 276489359 274762617 670161304 960703614 707926849 873289759 283507136 743736165 788749491 399729111 502193560 343627701 877185306 260273896 109105640 42591111 895441765 602464230 915623589 211499204 434128056 702606706 644839283 89185717 449604848 402925507 935183057 467520895 713290301 786803566 703811061 825741323 567578050 866288716 927590661 696331908 615281125 91522736 454423399 593552244 118375803 223187952 717980771 923389162 277135293 825153552 917224443 809267395 442966966 894609747 599750225 991015433 151823224 236748389 321535374 481564681 801491360 927726827 660635335 40104497 584599484 363447436 638818556 344343564 866187579 76771024 470762210 190422943 662915131 175607043 208439899 568169810 153131426 676538202 542908515 98527211 182843420 271970373 154578183 577860949 629855613 434928005 531839079 330493941 514320954 359446115 153406204 158428495 946181555 101042560 841795760 977424969 580078403 685118115 842877795 148644389 854013763 894431724 187368299 94325568 213705978 332677040 102443229 318747916 816934225 347830538 781456486 339309130 683300146 717364319 924012066 621791771 432317378 152702386 776660089 922361564 446482910 800899696 485686371 682415705 730253491 882031940 842280863 99904174 513884934 196241582 673550641 435738454 684874602 883645066 269395487 614368639 184671462 543957667 641567174 173242216 677121908 35011540 61820812 857930804 706570618 715680937 528834710 544384104 938162736 392349488 241287765 22941423 647770306 88840792 37014817 943552367 131227595 135954892 249114347 701474017 638697815 222257049 462512263 209628775 254411653 809770386 992326790 709615947 985693962 897046838 961376656 571089621 392919480 632518540 905641267 434275710 721271922 793452351 517347779 883294135 682526585 728773089 574030625 195495743 469598322 276612644 339650068 828058112 962794119 564367694 393425481 575719036 999903259 570506318 990572922 329878087 473923418 105178448 113359650 79448085 264291132 288217281 157554135 566223662 416430734 289840607 146403523 293626933 952611614 428888556 844544713 346362644 628028276 330040780 143276103 953365383 449124508 118869903 974577731 962798672 938935405 238720496 273767286 661639537 64281687 927395129 237017572 893415558 214034398 131385439 182404740 974139489 252152098 83167801 969459356 681032046 595806251 260199859 545187193 732619258 83134657 834355584 27686677 548736478 314761213 68524464 151489869 120962119 455398192 62838975 244333202 497514053 612808649 837526381 506572265 899586233 287314588 898485729 992322625 69309826 513496016 972554762 900233317 92281450 651463930 312436769 440196851 556542089 502409125 882102785 576772741 583448178 54256904 311115842 373865189 391214766 911617245 981952258 128400015 168423021 401050315 83626137 240421988 56814948 350340304 777481214 901296371 51102340 429820008 184133210 319071016 888782394 940065621 230100409 534716211 659274619 362699237 746077168 414938765 379498647 5027851 142491006 670465315 159294478 597107769 374494196 512717938 801634756 780274610 280331423 268381688 759142268 742049526 548650596 156463597 850219250 222473429 369724948 293264792 150713212 156049518 667382779 610218326 754158632 490979493 953209944 796441773 648544687 392981458 721408310 849451676 158922306 316775899 660268556 604590553 935042397 351101391 859156709 906214559 413621721 553583779 167311941 708875353 599664351 674423032 988085313 865725866 257972879 68025182 518840141 493079409 259953773 356794682 455474474 342844260 635592130 647251123 426294358 740762458 15499356 345694236 435205219 989561819 663427509 377715911 199809283 522553467 941783570 231732936 224685831 127195894 232299032 680122007 888693212 646968166 107097988 228630580 350760929 693047254 450037993 350500097 238577669 368413730 137643604 192409856 812380517 578210656 789872005 894017557 539485314 743125729 383606882 270324223 357600103 431808997 365284391 19587120 831333502 876785560 864573266 268062157 296534265 637929280 8157049 943842995 992433796 941650619 53022998 418693086 456401004 506172088 133327126 399178907 16304703 889171597 818772699 652432722 137021427 987395527 5401199 270529380 618152178 788134232 436773156 822687174 231992953 140626115 312028194 71037774 248599693 378421237 902132877 868882690 887059040 115912310 111527809 983589987 839624368 9651946 741078835 497143397 332610861 173329361 224523151 311137836 659029085 259982457 521724410 562327176 895343998 148878207 280614154 164163837 717174013 370376338 858297188 560163782 379011338 659893246 527052829 949132454 955482060 335441040 494947148 752319806 989739655 472747356 314826980 16465582 783557595 664835921 914380039 970377834 636160782 850946339 929225902 438095607 842282580 375961383 515675947 365436272 133678779 260129211 201572774 994050131 141111030 777350238 416749992 954658132 567486073 23505311 70446028 554815325 969891583 294528409 726880938 847807967 518319477 15897134 837032354 466720625 271925423 433013979 290339553 747585374 215653273 836371316 970448129 107695984 201542223 428885290 364573794 280632640 406250542 922633304 603567304 360907880 768243880 521175489 909871869 260005196 219736422 751743111 539114136 957449609 927836298 261978139 611687795 328486094 861597662 304500810 484761849 950313373 808739964 118477565 220697936 923852941 789248549 213614335 37116776 252581293 600902717 243719888 482999852 427929466 667412408 417739600 48063276 60775342 230379007 821584422 234118845 955650664 293510400 81377975 82915935 183544973 315897959 703752190 575280682 506294532 961332507 309133022 993173566 53063884 131832745 663950388 989102064 586362804 512224193 377294628 378468993 823770553 895477343 536773230 331076058 592177596 293915673 774806369 951720909 736402732 532213667 850187328 840290332 770523066 909564622 990736600 875357737 399624130 780155331 914972651 131566259 6935743 521525103 850608474 184654554 953890069 132876614 31330776 18264520 997628111 745544831 246456115 89928201 872497010 775332381 120796529 251326751 297110729 608623656 12850127 223575640 466127336 284446116 702259855 555703372 799145435 780309851 244813350 64398742 34633857 482234577 22445938 966117015 567264499 148161262 803635469 73942604 12174634 612877400 930777914 374104030 387366686 34668656 303695747 478512885 700701634 55723154 424511349 426598855 433619230 928639334 651365689 351766588 502790588 597611165 247122451 10491127 28091967 545779569 899685289 791368363 944666006 665204642 188731981 262771409 951878339 352896373 411498196 305398969 755047299 194783490 659063434 615076657 741521027 842189474 686582238 956690626 436142311 434230749 74363330 147406577 485212566 296664794 656553323 820421587 98683558 404071489 896572919 682820205 38985219 65204178 413704906 433847980 322716741 203322314 222637949 745610482 326693641 973096953 848886927 518095826 696506403 882256263 973148759 740180361 690234937 250748478 206175262 67882162 298292192 935406440 646219689 105437676 247301548 871305497 883959525 421717342 908616599 739142413 780420078 610898438 736071212 4777650 897522676 290248992 891175399 901725128 983251549 411032044 85667094 363634853 501043151 115839034 271107700 672124105 678189790 877604023 767416812 224050025 177102902 109555383 833229566 781206613 589036084 978678707 1521165 450348837 439161196 327156609 451675380 189831143 176290254 37301592 695277340 249301498 471664560 599606754 257040310 549328090 364740935 287420310 783259010 821690612 816436346 878675649 5933553 334220416 503827419 592960898 589506800 81186662 844401416 200457756 648682351 827287822 846085499 887505838 466008251 700648895 365006568 387619506 449747295 579721694 215445244 521380307 328548377 450764560 152372181 948319261 176940287 565871804 729945853 72069584 401708552 71736345 762532321 14862744 6809501 415807191 650342187 413627689 789311222 237469529 2043239 140480049 792341875 974432199 904027871 426820042 250456615 508417329 195302161 940134809 54371067 332976213 435935087 680681014 69050645 664073867 79966428 415036670 185973049 654506044 710820602 122166725 250012253 952278504 479052580 784946771 437212811 63410928 847888054 439823031 555876010 955602519 890309648 208453783 759413460 643464323 817288396 489013179 833962456 925062727 396333727 969691696 488495103 903754129 890466144 689594498 402194747 939686336 437753675 979578921 726185249 706272808 923519255 433640007 534297964 348302469 760003368 292662122 508730452 574830271 429202346 350775713 248505178 745488532 921829958 263154894 960562917 388774816 79698988 128196456 280382121 10883825 123636419 936861044 532522627 328202412 505837953 723984523 743446333 343244888 658850019 410312372 498468946 233575658 274716568 384032949 913684568 756385672 588692238 316697136 443991564 306212698 731365658 751953725 329802309 86940707 745657170 927459686 347788732 668965196 662758157 913565343 660494892 791295067 78668836 8230207 970718383 820848274 944827744 352504305 82598889 669126825 430064865 99589309 227350534 249866539 186500313 886277646 835429721 175449921 261882374 943615601 928478882 884227915 6852747 792042949 627506053 488618720 237000552 329687234 152837442 896615709 337991110 770077206 252041680 896948592 353532825 184984882 746573776 114307308 115171323 226552616 548672847 288704174 244714086 191828436 904286973 337208810 23065599 648579793 420924968 989751866 777827709 981421746 765078573 321448455 473272597 49702097 208445062 110119420 74902258 989744206 880649155 625768303 352400128 139247113 767977299 572342382 406539596 546580231 814320045 201167763 573037843 493271669 666192166 714063268 741371514 661435025 873610045 471084538 750429152 669585241 190279161 940132426 623781850 758682030 343526474 159189008 164835440 552758334 14425266 885706984 288843117 837078083 632906654 830721715 419476926 250798405 850415833 209700624 209921361 831562840 146583753 93591034 730138663 30974744 303686500 871225492 813142669 654459327 285749088 126136636 955293465 871543894 512870641 36522628 295271424 344588134 651099469 383678168 806765381 438479526 461152059 51364551 946582425 965754918 149306311 150425417 396889654 450763379 662065915 725542202 544304827 383238808 653716312 633025943 34344416 469351727 31776355 861921949 724672162 721101756 941154619 733649995 82686412 434840364 648147894 916796203 819539496 574486142 620399200 609293372 951816009 332101528 332811023 441729002 356607682 31463841 163866413 641271037 762338817 799343980 953259788 302538344 119787310 108715523 656471062 251022718 417059805 885248072 738035862 579070710 866078563 749039358 893299448 395866897 471986359 619968389 548738475 200706135 609378060 88419870 890297241 483686449 768216408 18921542 789391859 419329774 91612658 13493374 948721127 302351749 718606449 474427723 211526808 583713583 551171938 709509518 491148652 836025963 245144886 883036828 776875199 535995450 72432592 481291104 264355212 913242897 541135838 57922804 794354984 90440973 836265305 700870167 23397328 49147878 30191649 37459085 598439866 466930756 615240129 476543485 420835440 708053738 382810071 503620965 664296914 330786717 27219036 752372778 764508281 809057633 170836425 814248424 465779926 664992129 73031447 360378514 724787698 307183670 645665698 893558179 90497087 447817832 868576304 648815330 956559267 562972636 469602196 876143388 149378494 912408217 278624357 120643292 418276102 652667727 116975375 361640587 31930135 267142672 824247102 893164849 501770471 137833536 783929668 103499985 499302594 263106118 452191977 587299138 519209079 648354650 373877485 198330056 516697786 344884361 944092010 584606600 752189517 705650948 780338666 508870856 320154388 103357772 706652120 903981974 570221008 307183305 228041211 727254570 471246974 578163572 498929530 378769806 574181012 668417309 777142843 246564091 591156627 46752265 131895387 50733778 82409340 73684235 833866536 447057139 38032718 408225369 488263561 129937190 718331700 602552528 201345470 716036969 319936938 435030130 313192150 779350275 771666707 965203870 381875399 937939088 321627911 245471334 459380997 899111893 368370231 673656825 63770436 137191596 426209172 659961280 292604995 686245256 76586944 500803682 205673410 832683486 482252172 895596567 253104549 123867523 597700716 251694558 247953125 432334886 705534102 194773151 763032712 819052064 83841322 674589141 421595194 124329928 12012642 725948947 217697021 890489697 768091578 304793897 92667536 236065064 889575249 13050640 954434378 270019149 854713773 88940099 497085393 747896718 784732924 535864165 378823404 394059764 182358309 39649923 165867848 690475281 736640840 240284459 967287737 386617209 593760386 314972571 408002835 646716365 698701861 82487007 925698190 328899657 311966292 759082736 60911822 857567884 580654294 12969805 497643006 896833105 29206893 940386013 564008160 407422908 244205334 728051157 562280148 668428159 912964278 278823646 104083941 603514469 757270398 115928540 199356037 261854662 774143868 290263258 674015546 801995713 915856256 863553541 559717705 912313062 134767946 117126001 798765522 675420372 158966259 863836872 374641275 29201389 125281393 788029322 968128182 425055988 436869314 822403525 961031458 318336827 264702860 645785914 674906603 811537744 220631540 277069250 904234330 586871517 148598876 47039507 711443424 898846285 211642826 355145976 232717425 603563730 281262949 37945568 162897118 287846315 634504546 669794227 325348568 334051530 367647982 864806568 833212157 323525034 233785778 143155617 841806671 25641389 85771733 100773922 706798445 617055387 680575211 914660690 271809036 543655315 73683621 503981594 801902144 274707448 26631487 492550733 208517556 125148640 461836574 385819415 884671573 3530189 203932954 431230688 623296755 520446080 153865085 729042767 625179675 650602086 63467239 915884281 599162601 448784612 997049871 921756804 717142323 362150484 331377572 245889101 479805002 715251623 765696995 475658505 282223949 808372929 165993592 436610269 150588977 163817029 676804218 181668385 60358646 911247168 358122699 263821356 307575471 381743072 698328548 729100783 308539552 647048888 900158388 977759695 645893874 58335870 627407434 10411313 794227052 186067474 559973842 448019114 930560391 244253305 183290752 847900023 588420236 515677577 537861032 651953287 161627149 485743141 488272675 780197045 791998330 261051594 614710596 810540837 936735966 297133573 611368990 371792601 864490658 148476349 397587112 244808455 655353125 526699629 859375074 981791326 421558797 667186578 377326085 734754182 238642378 887750497 441263124 905731919 802410570 469391576 301011154 168515534 486202369 585849620 876027917 248757734 27846791 787130296 461389171 405883369 659276749 574379722 602371714 21852764 152118733 448186825 397540831 809892565 923696519 999037023 140140475 566134454 293148717 784467871 726425294 275783256 144530907 564233363 149887027 621229983 700870926 273725763 971138974 820722942 394392883 389924029 639557058 384347154 442081791 115551042 505863387 422217430 704795919 250294555 59993476 875301187 768804818 875304114 463287911 415175738 441509501 103173533 737983230 250583156 142485376 628776993 56913144 40408280 993185790 877208659 532081457 118923872 69513905 96310462 735043102 180904541 215468289 757338657 110368969 79704400 140574573 283813105 99354594 659887010 746504591 555780011 505901470 781596933 437511023 629911815 48241239 345230268 163774512 247722132 314807400 708245646 546429113 290885806 331193236 626707241 168118104 540942543 662705799 257952664 70773853 338119946 355647686 788956178 377354231 708644683 617973016 244321887 789254316 633516870 809424524 412615375 788759007 680180105 506790943 714631454 931124611 680284138 91166712 213698470 100779668 11654178 511450816 609550182 859161901 121961759 913970543 974292974 63698201 823098004 508490602 89561837 768252601 452462061 271294546 841965212 443786839 238232512 901920629 482999415 352884227 712902048 772961871 967485145 955014193 929902870 130158790 905740397 657570620 54882172 351564566 183826227 198824124 747637678 231830864 393587868 225726824 260524101 440776815 911086166 345067872 522376176 193748632 556272995 897249805 333584727 785116354 941251275 802186476 698521268 470472340 312607759 975667492 661528411 487142271 88677388 950450431 322600996 693996078 772665286 63818709 665881859 739439186 749742148 386299245 786216765 871723344 136414984 839380922 450949408 724365022 18126501 449426834 281838440 150624060 542187121 371585573 747088960 288891458 760300787 374375396 914193834 531715647 287987299 401494975 528251456 320978145 811044957 69894126 259282332 383326917 803013118 233115193 162129288 754691257 317523904 286490596 354216459 273559288 614023671 167840632 463818376 72994083 139603533 849805288 536211995 140755499 533797565 622611911 100560130 514783430 178045689 511276856 588444765 825998688 98000215 147341525 727207810 838385850 632458251 407540212 883327626 846336523 193267241 135815034 149746018 452196386 513321203 996411113 989917673 366930884 810420015 166868818 654982315 381376967 122276616 666639689 396941461 248034466 163163706 625590296 161744478 422814831 194570326 94154262 703935706 648344147 358130378 775500579 236830932 530819517 501751105 778949617 828893377 419990970 153893972 68761738 508258965 369530424 580953250 164199365 31925525 548253432 623658298 554023410 842273235 613196434 7610225 552109646 908633426 331259347 661322410 867330030 257918361 548557613 697970016 981474736 637258219 196932310 658989708 697017968 545439293 655860358 854233356 252160853 483887783 666564421 43464603 855083745 470373768 960683531 23779029 296745700 630563521 351068098 76823518 242530534 784744368 969045390 747108728 222482987 798364242 966248322 956355656 518903602 665682262 298711246 635112082 241140661 980196440 567001508 895174625 702087003 130525171 604577132 905904130 89408085 439621700 336694827 952786459 485918778 54540671 955747798 458590545 327483343 420339119 274391828 476152256 626388414 720240903 537049642 804848206 184215695 213796096 150500916 406135761 538443828 634295235 57379341 792667332 210826643 92745308 607424998 976894329 602308248 510469560 508270549 916008840 723730356 718767997 358905577 697251693 131971870 443016684 998909180 736341568 966247385 276071645 706230996 823353060 592426997 817962682 79248841 216559096 797352926 586683842 914443170 942086159 308918930 426820063 534876660 375222006 212602568 728782032 32029639 965608901 37771912 126969467 139151677 898663966 666025331 28013755 878614557 355186165 460930842 31736159 668836772 679551848 754955021 905077727 919483327 845166690 894160442 669450493 860820368 153951148 644218550 339366269 786614008 53330662 743133433 999607521 754960450 278075383 738494558 26804210 666576190 316136582 259465228 582707868 606151342 301745466 873392516 18204532 514841684 473877346 319933009 67602862 678184925 507510473 690627997 585105540 606100682 200709577 35455138 920383986 647181091 375155469 512333571 102245536 968962588 852177450 973104829 534351555 644982276 214431842 799932705 620323359 397607865 292029519 505610006 835047939 939905884 38945612 513706281 119064625 494002009 596150445 191917656 736398488 745099400 844561845 480123824 686243618 332173648 954174504 725215907 91749257 444326798 308674505 896068112 603203744 694232926 177264405 194281634 78682606 235774087 498547610 682508413 347720772 450061596 391817980 862307717 392851814 786815332 340034352 797947512 944182660 152830974 250904489 801848177 194423799 243424584 265310147 690992736 16233902 407268489 529458694 796440881 946378176 491184147 686142349 204613497 475537109 821581308 770148626 296226002 850491252 218929092 514681176 463611913 712586866 776227650 152954380 340488562 421529251 731589177 716687108 600539425 85780820 481855894 100815487 547770527 564213510 867281921 320465073 6044673 363576117 618561623 934290755 537337357 76392641 712376126 667931360 196343616 369703070 906393087 478427741 394559217 597214652 14555391 878989064 27445677 122671661 460077839 280267399 818330859 274603538 408764623 199727896 587907499 356275161 988697849 219801295 744180208 117585116 776621745 121855646 720398875 326436538 420607299 207059884 820665293 389993230 87920969 444214266 262583293 385593079 756083512 861367174 122662673 280486118 480812810 191740722 469311134 767854865 907023352 252445 863737325 784349841 515431609 234354476 582189361 132630273 752165284 497606293 37756970 517000576 8942563 305884893 401050007 963164826 57306038 716071224 691692112 448468675 914316117 858724081 167458575 566349075 443515549 760704267 554717264 124865869 630914535 303267032 806612889 326392301 583433140 79316672 276464061 915083319 751385091 361949317 665252303 778360185 877749277 775466108 773163447 285231880 225728717 426031587 497494988 620640868 136926083 211197086 68922956 72593291 111831747 178169269 184028826 66915046 456221520 881050207 593418135 41968246 815823733 85762688 490748957 926486573 476312585 909791374 708491750 739622260 460076719 737935162 623319909 722344388 56500443 435287173 251334619 938025879 47462309 929184285 90332035 15853127 101625519 358107925 611381219 356784609 977480974 545532218 696665781 216387995 127847504 312346328 592881483 460378153 119805341 554935807 178023600 687404987 621811931 720932361 140571331 367611582 16027921 642222531 316576616 447599104 641411190 820231902 687135204 621062196 201987539 991095998 20564642 221408941 991241836 815311234 154116920 117679861 106417202 649414476 945462524 985370527 262946268 787107520 642656690 495146639 347203005 783417417 192125224 914967923 269860441 819726670 521846671 897485079 541738847 232696127 393096289 585181185 820316456 650345228 707029965 779534971 851183838 87259647 828597003 512185960 111575278 653761011 733736662 419868497 154500353 16240786 59286251 540292214 860616167 700752220 499863090 252617097 618378705 597744164 541615367 393326986 4090085 168417849 560055965 601589648 882380092 49938210 425935355 423441325 267261409 304853168 160768235 993794265 366571912 780057567 896693572 320919926 96435689 389966205 162108339 222122092 257252504 764432176 94284734 227528024 852843183 571691491 406788124 960473697 602001108 722642215 158185016 802560142 332361622 755233631 955513716 691134797 274231478 272362864 553960552 696246292 317983631 595333063 831573327 802645704 348667774 268530974 446369781 841266691 187344872 376819871 223288455 367559966 716176299 943851990 467209595 576858353 944371280 294271026 546200170 590376527 768752322 313072205 68003724 584769126 450836346 507484669 120198641 545415222 10552666 561294137 177594097 864356204 438870168 717778115 201896044 972502287 156680124 500807344 386952072 818170727 431114436 258501319 453962100 140172494 544941336 33249551 597468360 113560338 973535003 474947018 685257037 760076020 235445959 834380641 542625963 13282369 555692097 826182061 809552187 826484275 955607053 923459180 5922002 968103788 110872447 723720019 749497324 313225047 121290312 103648440 546007486 895907669 273824650 274926234 786292026 416052273 953320927 985476361 183132698 425100097 20994778 788802604 701424087 141216881 516441026 689166187 588714259 650085274 319442496 941113649 862551521 126841325 568610449 455635350 582612663 32184078 540769678 113290924 806113223 632429377 262393707 302466995 689822096 849337278 840753632 328326506 357428631 520616883 359402412 804313650 550467345 163139208 5491930 271993249 708448234 386602660 426918652 26727803 946717994 97554790 373572878 338353219 689626151 794241193 641194719 87708572 230032486 863671310 415121266 142164961 343963453 102586872 752608832 15147338 83093940 34355036 44139367 466404067 11647838 662975481 556118185 494956930 41851589 187176182 812499538 110292078 895084322 403175731 121965720 331665485 34580864 266733708 909466084 597295304 841315438 990013017 889187646 716339102 442576743 517300879 578643703 874624955 642739138 964645700 467136294 622560585 78303563 956179147 852944915 488928305 907833156 860754219 748715931 478405535 741231174 937069729 827943905 691355132 453379005 833078624 928916152 50855211 951717713 362448331 431418491 459556665 96904531 231355723 289911082 51761576 824321029 500574607 458618113 948252883 184456806 111587804 374463735 594897834 863885816 513809272 43501993 550116696 457582204 477549398 803047963 532433003 28488593 306950359 691373004 199286202 159575235 699697637 998178039 233130412 751304352 69422400 697556095 154124932 610114518 54603873 265295583 943067863 708751370 656067342 282330372 705349757 585551842 944613970 538933368 538390318 292256106 894717063 326638813 373378817 180987660 981289930 916340603 497234602 205780051 819952773 445583087 236152824 142176988 455267299 455989588 214104816 546961171 842369247 862156028 565108147 45069581 110468770 114728054 434329000 135440484 440231770 9605588 967645000 768627095 801587139 910695261 575373605 154946194 928057492 403151863 578047588 201358896 999587249 344719270 962190863 960197758 70618396 182646661 842974385 63729400 185160785 298479752 911275669 871429581 685868632 655504476 766772705 761218923 910566273 389321503 782579525 558898009 684515517 303155351 862687339 501521304 419306409 155561360 590737738 824747940 708848129 375790506 4223637 328683655 545556020 34768600 511940550 688466374 413669999 809254150 168202403 796571854 371729693 924063108 521461066 5640692 290530308 917999864 610030535 810176332 199102709 741877509 169553335 181498337 297282581 835648337 508517739 265759438 433871242 646595697 65624334 808828222 868332836 166165497 332903742 921484498 340965553 388223608 950889665 697311243 141094407 884835781 271004457 571733957 541147690 111354044 763028003 451703443 50527417 438971182 691764079 597712869 517311652 50866004 483478412 827122994 540449376 638601592 542151256 751858490 884733660 289237971 555901048 944507636 668663989 937230877 530059295 38990470 805129337 473213053 240637618 387539001 33906143 922711112 13236842 609535805 491247758 603801808 91937980 435516873 310366288 888178900 359632855 339636596 428539556 710087947 826163359 704363832 367106756 34735121 319808765 898744276 155025342 627352243 431878013 738406313 960289894 375635024 276426037 953890414 182234871 661125432 202179737 2158372 701630006 484378839 327868524 190975546 170669388 688295098 97650669 374314518 395877700 156297559 738658727 727399958 448465043 863066358 753485576 218920791 429525576 609271907 755793385 733202640 252160521 319764742 865358326 432279452 7486282 893133428 104350918 875705007 827312101 66822666 276497253 260375732 884739836 298281717 734843956 107619704 821476020 463604272 122795134 206267472 856457567 815493201 761152264 606807398 245970014 593936907 172921941 969091376 756174120 219693010 925219368 223813240 213972143 461495480 927421749 437065780 908907663 961510463 240175283 180177688 195835459 998547560 93229529 180583163 915965588 359085570 329134185 10885538 859973608 549601974 413933549 874296098 167185727 4196939 746210695 16182970 207831802 264581939 61592325 363902168 89248577 746326482 894649688 983073642 223400691 428451929 680372705 33234002 407341382 836327504 380458975 527131056 691043659 142299384 113279027 542577797 262464608 804492297 447544853 997015400 420783952 819080397 888062991 794952081 479393737 286254467 646154383 783700812 480479941 102912958 960242988 936610332 387338919 133968054 564739905 606929800 737455777 219638409 733154265 595217703 633622344 398250523 28015218 501555439 321287485 271937672 163725392 401033043 801736660 73012309 918535717 215533368 467704643 163867611 51414427 725202283 745004133 772112587 388591369 676049344 325075786 108141494 191151533 171063941 479358105 160344640 988530574 927227873 224972328 87989218 578189099 894082829 573917854 737309402 919375660 408186128 917757608 795810877 117788803 219666244 379056732 332643775 850678727 198837743 800526950 922047221 518494344 127989622 788318462 20585256 596595391 54372301 944254877 266221121 522255246 710615426 176922371 97791404 968580837 237849729 884582798 761465339 802442754 707715384 474936059 840441352 827444805 851218176 693750883 850253921 442993143 523965444 483673111 700689097 763844338 220249606 911580223 638647856 326331568 776408826 699664364 194413402 950392336 583776914 264563768 636075722 952243251 8274727 693123106 580123605 345510876 824458394 658333515 776776932 627286238 573616583 19151913 129499993 821887017 717054677 997849226 921329487 496350250 949768998 893022155 405742166 98194054 793296771 103553378 285962369 109489132 542443118 32956447 98767162 298340166 759897386 466488055 894933980 90475615 891812455 909886948 6019470 394820892 640859537 482336701 744075388 868014622 965504398 600618298 795312442 65780998 730282284 348245747 712828309 30218731 29068818 794149047 933159405 553719449 455169733 719470705 955728643 419058760 394673522 318004335 622957658 920726263 734886408 13771302 698150787 885600120 170511494 85283561 278213125 472122630 92864426 894808799 227476930 822642477 754238037 953442977 840885266 515773940 612258029 660421963 585775759 844232357 332109068 717112940 15604036 943500274 411983101 269077848 545492963 957868478 103385035 331827232 943382856 981949051 126228994 530198762 360934145 919460968 993045696 799689355 212021441 616104655 973482443 938960929 633722844 979436307 435481537 744841374 196069965 655310684 642205756 515967925 288748579 239074587 983931389 727406442 794333964 371355425 136587438 978734847 838623236 14143757 835284947 552349627 201886543 269286073 178294513 910424000 401503720 35439493 296684258 153529271 411022975 722744515 958080563 502926047 350850157 323430679 19058648 111079099 625767425 515315229 849931686 181754212 417921438 617570081 805680963 635623402 387636739 566462609 225292754 379043452 389071049 300838467 788217637 597397010 567778486 5168467 226991632 543609469 390316617 35685526 491796704 568618926 810882141 837712591 996484634 371481018 753625308 487452786 622090621 305119850 499369712 880206315 920902669 925037417 180292565 977626276 695864645 373528292 825972888 184055226 638866275 819684902 639736416 428053807 408244057 718067241 144969400 866137940 111277924 746642792 175945493 614102284 184328431 125762754 481683243 132784971 867981054 423443298 519260832 173489909 949822010 358705451 491757412 5487819 154567074 938015718 335478551 595981274 384925745 951522435 931793454 723436867 381197163 774809727 156841647 858178570 431958549 559372134 632951579 884155652 63070840 245438350 588985766 684480433 975421598 891925029 500637056 373593169 752784531 326845416 45388465 659460343 573608398 402172298 415503616 613682960 660656914 857067201 363223087 761709367 202039953 746669706 863268270 60533348 359639560 595262763 341408945 101140840 918774010 657724196 177204022 461357000 239687224 283101679 728298449 741983224 667044995 404133269 193932774 185194368 868932056 639833936 321040290 859008884 595192701 333351600 738437444 592937559 206581607 748455899 844974214 860434141 467278007 867665646 57921749 171898897 205036329 774153332 752714917 654124527 115719792 429868558 925220938 906213117 251297869 180743292 243844239 174390930 975164201 586834382 210556406 89295902 416786080 102117505 321022654 248375332 203277638 685141883 994737941 16557598 247368030 496879911 430295965 21229851 161411211 933302378 371585901 725391660 408886979 123626414 705476707 912178903 145089696 485875640 576910054 327770839 607737621 794181593 725049323 918558979 133485690 455839712 919859452 419192025 315379070 756487893 503262940 861449473 348447745 773310053 210106448 589129741 827450895 490404255 935091767 833172914 181349425 320285304 776618999 705701018 888613757 879290546 598348638 138345897 136975142 886618878 224276563 98273753 553681967 531174548 225691264 416225954 889129953 752707549 830555444 755346798 502841242 617091777 528228418 233350807 505465290 174685431 51659778 138310667 929801005 712534534 988851078 479432365 426191431 957365293 413163531 626782829 899378194 583749942 863812559 636790824 372404128 513699793 742116701 802452294 960866820 185345639 73695370 692633124 922077085 513528434 185388764 234984766 879261481 576755431 928896658 541195734 520978701 762792060 920684733 709841316 193376726 609706869 967557170 514508338 231123184 927768529 657069295 939446893 313735841 163817767 143598291 455722463 316658836 142319575 624696990 833249689 296717155 342504423 993773934 90310545 717093449 88800897 436416456 416698879 263121471 646920405 391667397 931706693 493588409 188977619 38129506 524141262 798194253 144733273 191550815 247363583 486639887 202395009 818082946 990977599 784501543 450484151 2957763 818033247 460095358 853559855 533803738 818388155 39104643 845716435 956971723 345508087 107934821 46799316 416598210 821948067 566920003 768589181 239255476 158876278 546138975 356717544 682470969 63893483 219291148 49271149 158186477 813901456 683836222 556592074 618659257 736310500 957856830 503957535 936733673 227981253 879178199 835224622 503282021 170958762 454950032 328912454 502191264 612310511 248372875 996740104 949908302 533358300 767203634 345739932 729985147 406891173 243405890 121150049 199990843 247558075 717944394 1421724 488924875 428052510 847572101 667710861 707012329 147661983 884707782 912025065 404893289 818434983 205665656 424175832 98424188 182610985 603589561 385920942 161126044 54532057 663337663 670955946 556036118 783995311 520804062 431706653 904125884 485391313 320840590 746624761 584385405 526171287 489872558 142215974 457997371 592951144 423140069 868282523 292258226 890347298 10643466 290573842 239427565 663979747 917491015 129325299 688147121 430462808 501108501 253530158 789660727 846762745 229371840 731049024 297566519 237249459 301762809 967917497 643107485 404985372 488965661 689219234 357997228 223900536 732142363 397729539 290428888 381377859 834159587 816029401 571513838 298964216 286643794 788768660 349060186 967875660 940280170 298381321 374435221 422828065 352049554 134661084 427175742 64165155 991111222 103676036 459474844 822176779 754669161 425518228 327529459 907036306 627778407 206019712 833967791 847615471 543840549 5393788 319608397 829766496 455267958 761298286 691479945 647155428 952573579 120418364 370908528 592564609 260381017 46543349 436174319 738856900 387115835 748891498 75026915 660752339 441536451 16358936 400126319 73052185 157664400 394226152 661124640 986449708 3252201 602876909 800592510 269248185 581183820 842485952 314766098 153658999 702924743 735968473 126668420 5409841 501766896 908688058 197172384 507377063 451280173 645466892 967491592 629999277 496479269 948300943 308647182 996781440 718336652 53702744 563873858 398499244 37404512 592910199 85122741 935340201 470607025 353689545 595356956 35621955 376153346 136050773 965594971 784495677 194701445 523282367 53552516 518896074 872677568 650173358 207980790 212322476 829200707 391572183 268070982 813462947 637183201 127558925 746302756 244150197 960889640 903604331 998585416 371768108 572453630 409140878 63904549 902849367 446476733 227031180 464348328 959295779 916174324 462819176 845944886 416185942 274880306 359672954 30348522 779419960 130964451 152589870 142139049 831799062 284125555 230388032 32419284 345582210 777077149 576874218 673445685 400461424 285720688 761133968 716114449 96136025 918031403 322750695 591685502 671280316 842796644 60072417 901999521 572507897 31018143 923563507 586886203 171555796 979994885 14427293 636806191 313299183 255216491 156525585 836999097 228638486 195511694 915724013 216181090 398766423 682841998 822910629 15933844 315198903 478218088 575365094 772213873 494206078 933028469 775906209 351063019 756588643 81788446 885002951 214996466 472011633 472187319 968144819 449457433 297203925 88079901 308219363 379859488 809981883 497139576 121482610 707708947 522889360 584260006 887435017 372431852 713640830 915409055 767878558 577042684 451611229 931166419 87389832 574250005 636360227 338600943 380087977 484711209 409765656 355863138 647711930 261353307 221103543 231866190 921361885 561086996 128669420 860531747 327449915 85537925 805293400 743624796 170873005 766114818 434347978 577605138 560874782 899259627 486661341 3289633 411026546 492100296 737802409 609880211 782833502 202299551 371580821 289288917 279902308 226582086 368323702 2478935 386927686 127128720 960070538 872390719 324865321 415736563 44711780 704779018 959149967 132140133 482839547 840643286 872720270 125948316 956772085 240291900 884239043 920135863 479096181 514118299 792966853 26717208 385807160 647666153 554711216 189505783 303211815 621545306 75239018 93603209 247284290 209193129 790566385 586269151 216020582 427096510 64199033 487070034 544035510 171640264 999941572 383994675 26885903 344155534 108173576 276988987 997756441 843585297 767495603 824155753 684212979 574223851 477133391 390953497 552567902 26775032 497255804 774955962 452052491 459935448 877982597 468639608 139771504 793023758 824032345 764658941 115580361 883269428 899627366 279762530 835039377 344320092 70678362 240093013 852559444 518005240 83587244 822015617 936336210 585135014 26093622 548056837 71792358 3440109 259943052 560003265 595432114 753385809 885702930 662103623 151033920 954938905 204072102 728955434 321161365 601369321 773167911 928108849 611177867 736366823 354264010 333244332 579075558 563193005 581821250 634121981 372411997 988607026 573776942 452861430 235196030 183679153 820733096 308860960 171510310 246755936 265946489 455796653 462379183 95002849 623821658 569385527 265660412 609875521 233310635 976653595 637211789 576865071 682086079 786550653 902702519 671145169 293319431 205431448 80029075 867146292 312199587 793255697 659007312 360080919 93059815 825151912 696588364 715773736 992637832 358233217 723436288 218345345 781326620 199099470 558344122 82423146 432316206 851895411 270022599 397490889 315107682 954779625 462531570 501751505 547581139 178658426 951615546 629566943 430067136 529035801 469046530 798694641 213816997 172470121 289715230 210088191 672249616 994277994 799113359 907778338 592856123 492021854 993579070 327136785 184730908 158231553 6045284 971222710 843392355 801346444 616212864 985084516 676742328 908064223 993985997 358964375 61063312 450212953 942460311 255400104 945815659 809105282 65635478 997389048 89861051 569840144 748550191 868262096 227867492 187789539 615472411 349064356 684952824 161524382 758413387 371833363 915761294 75657127 561603243 240552939 780261155 807934767 75882532 127065941 272964789 147235875 635235634 620424716 909654647 676573522 395171213 699228503 254651208 720889998 645503320 604233791 154092660 187898282 978797662 121307116 880564685 870432538 733142088 58374497 528571943 723622297 210199566 584254695 454409877 957563616 372244187 505092052 552355213 327292488 331878379 892217140 180453151 855838917 549522850 986831853 813244216 215641529 864599399 116102302 986791908 725165507 516789345 951159662 613654654 871229218 165718886 214792953 801071806 86857889 534425341 480488318 303963323 984724077 838065019 101143700 516620152 922748032 896780254 905804981 545046904 682995043 725548497 270285658 767512800 434290328 244662271 823360503 86613280 672130000 809802368 607927825 425414740 677545720 944471153 338082472 531723278 581064973 446618520 336250732 617024058 310492323 388541980 848915719 772659822 111399532 442181515 162942818 146324373 871546006 380106282 412472295 542582503 851294031 680194208 320795057 245185472 724813682 697849961 165356693 791381133 417301205 572035265 835589094 360940160 608356330 909620245 628070111 273150132 813811074 109957774 389863252 254235631 635933727 617145949 304872185 536381763 65304063 405603628 837797806 909273964 217532754 576817603 785023989 992665846 587540332 490434136 614150141 757483675 651693572 602050750 808518458 919472617 72236976 599501109 633002848 577763324 683808925 291304566 689626260 305984640 16678376 258978681 960476048 527195024 999697624 796295787 994298411 675383307 569979911 805819697 187174835 71810884 256031316 807247503 940759723 641505196 176841381 246613511 949842594 110296270 572335748 405247386 558138421 47189526 470898490 84434319 54299119 260229784 478924567 557119587 12232496 326838783 803950904 994650337 140973124 588674311 729130337 954490047 302615158 774817982 846328237 969210434 851948746 583044456 760299181 799678541 13070706 250702534 323217709 126008195 921611577 845330801 496366720 192940530 547443855 852903443 611917657 105060622 636780381 574157238 25972963 88309967 102405132 162706433 642462906 276588257 230547726 389116840 28342061 181014218 769193156 334952190 560242963 988193384 449093754 147183325 253350082 937747117 574561190 456199245 956658561 463220071 292420556 656495805 569226156 947539053 829502248 110561848 573420833 675948957 981171041 295160850 792376379 81722652 17775413 969170201 426431393 175654891 868623521 781785589 14883737 153673268 737082925 454445079 189676030 897123386 521093632 316357411 333855077 110491907 315879485 800919891 489608899 923646000 886080625 779731997 599558615 200016372 685698628 864375752 502480692 469402499 231315037 454586699 354158748 603928307 980051625 263241307 712238483 752864258 912323877 863673243 885411912 75161193 464284140 331510703 209496929 687660464 848829990 712332414 676089175 796459483 851583081 807220812 4572568 8079068 873701614 745481657 519051608 741059411 657311720 499557661 709185674 934270702 828857077 537671372 256611368 409434028 370546792 138098806 465343741 388125833 38086199 685386295 860590190 769580801 322504996 228542953 365711823 799226103 492494667 508835115 155065068 819815945 5201519 814228695 983416738 62833823 108876124 222737250 111213073 550735983 375588456 298022831 769184709 215002769 432476090 526174797 764911735 363035143 596871942 553403482 657939918 922477816 513185839 911773782 677726707 432843799 433384079 927531596 225375931 661985965 42317573 771652367 677319143 118338075 352309359 844774058 98886406 213552830 352817832 178342860 815337919 943752129 458058687 237172797 385047088 57269914 269271614 36866033 201436888 596010583 247666777 969064563 336176521 929759187 790082664 242338980 437861412 61229802 493258033 901793043 586105565 606642023 690842773 539003779 205548304 518725407 609076997 514117917 316003998 977925815 369478311 533981276 641616297 642481028 463005119 531735944 744014631 369510354 160165133 669036590 343167287 315843421 110483867 705542558 323832085 450462768 735902281 610906090 568276922 388496971 527324212 883404091 688613762 810356936 452363861 910466485 480248198 833814803 526106368 53759553 192244695 416494922 865833930 257601769 518529818 344972844 998964519 507695876 804453952 680960411 627494501 643762157 496142877 320820814 790701440 28463205 797155643 299208255 763176355 353912445 223427391 810958512 594714020 34268938 654255169 182988669 327543488 224037763 784984079 417716006 397549648 290434201 535211878 88030475 603899813 616945140 433290312 750043282 792413676 188849175 698698464 680994394 835974385 276146007 135294384 867454608 101516028 730521543 492968503 482228794 111322628 600269923 274737873 789560249 591277920 642683499 13590440 982710428 542955410 457825637 930456507 729938002 220319829 33625980 426818486 723521135 266581299 369333770 980881943 394648402 693158914 975592627 236029999 209409997 925405364 439289181 964187471 12510709 816771151 423488455 2520097 921605095 199373172 220724489 462432598 120168502 15043568 505723211 550491679 781322491 890625021 178108097 104111390 666169728 359382291 784305741 629762908 743896633 462607208 338978619 444385457 164461968 809804688 540770911 640014212 986779772 697687563 202281482 911350762 331223786 235285838 994012849 58617090 285833061 922556521 152049187 872700711 29324062 151949094 118888056 236816333 914529094 207536699 924544341 554677007 379691133 62654552 374066672 700121415 759490523 777774060 548931302 433089875 484453842 317815830 376590371 986730223 842946668 856707651 870724280 130183354 175944978 511258998 363850191 983630470 107564765 938098479 669312037 105969674 714707971 311959846 749204949 337868408 883638682 55245361 215012636 289841570 245422786 596278752 887947094 602797505 61603416 431098225 943372515 836862768 498065921 669456142 88688138 823050250 226993323 64089258 764553005 321811224 251069819 476123590 434022279 203472184 514259313 234407466 495032776 422206920 996132788 235067062 579919011 554121835 397601029 528655246 988845782 648753692 145715430 904140962 584827703 637123234 391946411 125568716 402706853 295264910 798595961 775515382 452182346 523991381 9494672 920397778 39303008 912558536 648260492 552826169 965019682 205522668 831307216 838641203 687712407 536064058 328191510 231133334 790033876 734188201 75004743 441299115 83041368 9180536 753390288 816169336 298566 884857270 160365450 90619578 249847857 913961769 960702506 254122327 194317715 466866955 706473155 144644725 290699862 553883352 901657784 775591276 966352274 756098076 860554468 468565383 310204266 379522817 717099643 310895246 98000250 765815978 95161164 322090467 234943298 685307334 233903777 913112654 815761025 453308182 856271371 208647102 490766114 803928029 282867811 998702222 305590225 329674208 414604031 234535046 469815478 204980001 1807953 775229664 434781984 554541532 604154393 337421983 723868633 591114998 28270024 233049910 378018838 813988181 358527884 494710306 988940288 504745658 313456936 272007327 225266262 836359019 429495938 705709745 912182318 926722857 639132712 537047391 707771924 957709714 932188882 342992501 618748009 716840585 889505905 251001211 460281853 809083839 980083257 988139819 911855487 248909709 357780167 251482999 116344319 808602872 594621239 578986035 692767298 735815754 471834053 56267447 811818235 642084732 779308678 395842555 440135688 128238782 7253097 313957489 168032169 804694220 770359334 55216859 283063269 895438528 673773821 251490571 838442593 79197985 21323049 974350608 606428137 60482996 730133668 934893302 948649329 61994824 15733817 927761059 638257099 496170750 775150229 793241094 914664798 460635105 969428454 679443249 957107129 839207155 262684392 173621376 485142041 568580774 862664793 883857290 487834463 151412176 51989046 174162675 342951586 825514241 200837609 187087385 488405734 575368029 792788565 525509195 838494125 436936732 479367232 595168884 72140655 75810440 91397057 750646816 717786806 372987381 322329207 963393886 574299844 160404537 639836550 218226848 934319917 362169779 837556133 168803894 45862781 806688165 77353633 616163346 969034463 838987169 606102296 352365024 103742440 686229647 222146600 57939477 529842489 680550201 508795926 579978578 230695320 153829841 87232668 742399 816378041 495308900 340740193 260550182 648074053 610997943 413922949 648869198 36675721 233649749 274907157 84092798 502273866 800364182 199571007 995150973 241828533 210610373 738943683 215871178 93093237 306566630 971239510 906283651 342701399 995028135 99703290 389112249 179199037 833039420 878509202 740899370 339781738 586499338 945502548 608441802 644642716 521526597 678435268 594232164 256683057 302623792 394300893 961537766 445349908 125569039 414899309 376352875 112902559 476260360 742728291 248717680 483339195 360734218 78926358 304080508 38835734 446555210 620164333 714992883 782144225 38681522 897674341 808909297 119113233 897817590 755665419 27572579 236435084 639274148 69107982 647196502 742168584 985043313 907723406 511038967 404048940 994816634 532484479 713645544 645796852 821274431 368392189 140780700 636166837 200070303 468511380 793514839 4963320 833277263 560151327 80159449 325865358 893669464 434930929 396329000 748228748 591454811 609304063 794652732 475469315 496792078 767228899 395934280 4845870 68537357 234750609 665866965 416073749 116295138 978587653 159716662 965733937 529756006 523513897 321613341 435173889 221762447 581799842 397471972 225037227 418776665 675974459 114481216 215091304 668856130 612046717 349494534 748466152 776967086 549291841 491538362 684804447 591793987 700309153 195095335 595153199 277468701 148314793 45077845 384874073 810248937 55329750 834371374 666843815 648032153 845863205 155305195 963190822 316303818 943864886 868944569 354488916 48889317 995572286 709675399 761134953 299878550 143969680 58516558 685275928 453473033 838765284 253874283 426751829 35862932 684756058 439119970 221914979 435439156 205235631 192351209 61284069 415070112 871817103 519963282 426509026 423815171 66789158 378622401 9448134 241292572 354718562 910591105 383793047 36218991 30776631 739515649 391113800 904658997 33732604 149462093 810498168 247685101 449476629 647111183 542388011 534510495 761788347 904819443 219935080 744810011 693983066 975915979 752274776 625049625 716587912 618665383 485669200 189889394 275578352 928160270 217645824 248077770 741037051 324164570 436206232 772859475 542242313 293996154 708008458 986133258 454898735 380822366 634891461 554511923 17449876 334084410 94211776 39012902 235431347 888346829 525854918 500313526 935780665 877449106 576692471 851329724 597627294 977497854 68835662 625298456 531670445 974036175 147129640 676776953 968103424 311974267 379635664 688241442 184088149 634596779 813212199 239029241 282685694 790877119 314272930 644629503 160018508 629116694 78672109 844324077 90937508 282533189 93763212 350232381 656102896 747046336 368174309 845588677 400278056 147930193 706854324 372240891 964886695 558223831 233961548 669868458 266260336 236192717 943600017 95860687 473482213 834331801 642792751 242884940 517722599 816239441 661258114 101746017 29470272 580117211 228393854 529999450 822657156 867100226 437578267 643142772 524359818 561565439 16817251 781232460 620049732 188974777 270919758 817838256 239236288 535471199 162874394 87543003 524763659 662789096 938177428 561572785 963104240 708249859 714446882 153269019 383882459 348653923 590018548 147314121 697469319 918774270 427166822 250758495 891293273 241100108 478997574 179113966 513749572 942852828 572741201 455557422 946572918 799907470 86121675 171396707 301645515 368568557 474790104 86635426 38354712 371503909 194070232 519922124 95744030 505649147 819855969 347459069 595173035 355438535 971000143 410545130 32082365 25121268 496014615 229166191 992639880 623933768 534724561 774656612 231567746 620695143 19851951 436882951 714845542 947309001 121542582 606148154 161509737 767812157 38933188 25270667 114575803 629895680 266169958 138774912 735923243 964989262 791649513 874254958 221778019 707651273 308688077 271370343 601774890 570114043 49883767 908669675 221188604 642167518 239832056 372437062 859727339 561025394 137371166 756562289 950380957 437371678 377037608 576529592 168776741 947720666 779220029 590565884 463862007 732405179 650513580 574305615 946421030 835555093 772179398 145862032 764196643 278450961 667174317 727623333 878544763 431584369 161125749 363030944 543787338 835770836 706015303 656217429 934771780 37036163 285810115 430087221 952228160 505636941 178404393 686974325 746298120 780099892 194310009 848450763 488674044 566650079 172365509 823172506 9014671 724709864 126513099 115667669 255563528 123696693 469185531 960210897 70129449 653305178 644740854 400249826 109034404 541728742 127114391 214042963 315975887 786726456 331551690 763110821 809183969 955108316 692482750 38797783 401382799 289627763 415160142 410480763 620757431 999878349 823600831 182764828 736887651 505563855 594889375 224467193 696470596 321370380 843311180 757875356 971475811 86400314 129013998 29594818 518918426 801811227 783738393 149380756 291927892 113384335 585584864 786090501 995608633 20577536 392451906 429167508 523510190 853102340 523116489 945388353 686830534 18603540 608320700 315711696 392961983 566689696 186028072 337140186 789217498 106558742 51866981 602160126 48952398 149151741 88860082 829333068 196563195 629724464 358448523 275325776 366090148 819451680 616202557 646118460 175682769 836469629 611975221 841588104 618916273 115004933 353795141 226489751 271973690 132036750 633201308 253891665 220376495 770050917 805525384 659767014 305858370 972030090 94570377 264635631 430005846 678409688 671554930 807627911 327718512 790331460 529261726 835307645 225343767 480245772 336140239 223502710 868227699 550670992 883980978 322562191 867009581 64167233 508485216 211884277 516078260 500483251 384748387 552074174 105885218 509899297 961974542 376843804 974882830 901521240 366971410 281649344 685954336 999227283 370746237 390905331 974273678 637173430 573556143 397552007 958383920 115326965 649545769 515477091 526137043 811769866 827721355 311715919 145317502 706127336 671326023 934073453 275764715 172997212 953231252 654346789 42124277 859361855 926180163 914528195 699337617 323270266 291966116 775852347 557552653 635018313 500671864 580971561 108965994 763602988 643474788 314110330 608830552 612461870 141317791 481760798 452935513 133800667 933593442 781314021 186221524 601666641 979125216 703409775 326343320 274334517 238431279 58897736 356781246 155030559 334076497 710147932 672488576 221727174 706527670 371718643 914796070 160064650 66477224 159644268 179077852 410789373 625745023 399994047 278365585 743814401 966547030 712811064 74850810 745293446 519190222 560535369 88207725 192777422 105690826 79473740 903629988 213262605 312935742 45519885 575803889 995413349 262085418 684235716 520803210 356680416 107919681 614177410 177276742 657809656 364374219 171215717 560917560 186319992 101957778 160686649 937907442 20460550 937574562 273505116 81001922 277768765 860344415 372194445 96358447 677603212 361765888 87205829 465354548 476685159 126691800 774113662 209357743 36335321 341173152 356191349 296541630 227557200 739925825 258552749 37382711 193297283 911938539 503261621 819913382 433724430 329588224 927560321 934991306 320811957 175470754 358313994 151458523 376249108 357737411 345496760 747082749 865998462 249194353 164660964 961080844 302301723 339569262 233492208 609387735 602575232 792741608 426656450 998658529 630698721 946777633 461687009 389131126 762370512 385290033 674249346 489540750 489675359 866155798 102296465 876064071 803771601 172673681 215358073 728193463 369028148 898563474 277469118 87749104 755596727 665873759 134004424 427394128 989115465 545868379 386160893 747937589 283862025 638743089 397858960 9265988 726192210 842508219 57429936 381223915 452846145 740015777 282933991 153590710 520511060 12972784 682269788 914541767 672094954 470962653 422826190 337860190 4949989 509134197 880154463 676939936 839231519 717635687 191359174 282122900 472316330 95958322 404830655 318866280 25096309 703939675 878697964 898735589 738452926 654563313 757892005 549943443 161724429 553344504 736267568 891734332 855106870 434257480 519568514 691462840 626949977 898300762 227551074 77595533 500558708 341743162 732962708 272203023 955127972 738325990 21088088 115004476 851991321 398783932 739006153 972947644 543823684 207487152 212199321 521693756 65180298 40144850 134644650 980501404 636064591 548611996 409946120 102579753 298253817 533872236 472092732 712195364 743907825 75110964 975612832 138121003 842242962 936670216 954375805 75474558 12882883 526817493 529694455 958503228 299483261 535354517 527956754 626315781 713800791 576781935 333841913 785962906 398212088 915684607 758834643 590203546 291644781 443102971 746973238 74780967 536510370 497541410 948390353 864388735 227384484 866511521 47830463 337466469 261796132 287246714 41736394 71405683 411788081 525202330 627832974 106151514 607227161 262640246 387722338 459298383 241463882 177331414 854495771 821704245 9928165 165214260 797684286 463715572 959262263 126806950 610059125 623429987 835192426 40704433 347490398 788532877 315094231 129888650 799371584 478677280 649821509 933211096 520194620 466004687 426181545 588936350 393869483 359591075 150774488 384371946 40916021 324973618 957949635 354426748 376292034 75247234 645747399 812773848 243889749 650569731 282997831 157085818 294860597 98073925 740306939 524892981 11048089 534282015 682901141 858106827 387965733 657292018 147101182 448958148 409929451 829667172 370537681 588883334 155707516 248760443 34979369 455274464 749860980 244405142 419852359 948308888 383358429 127093379 561064792 304396711 963661849 773853924 865812581 888901445 860926352 878617670 112475240 449242001 947168690 910156412 243299834 941166970 537513920 193657474 922780289 974065573 492923882 475251116 570778887 533128314 56752362 861072248 375120283 827252098 796543504 849320236 212859986 588226269 569652049 994137125 936024310 301651240 663785746 855034364 455826858 291025211 126740697 326575047 619497490 558874638 791585555 142515108 125216274 733934934 47825564 27423240 709836895 746033854 481969962 579422545 43679331 993962621 609743420 763821152 403289990 193715685 787589656 284341129 544971372 491903786 305607971 943937851 692887309 530600473 868034463 723877907 403284784 915842659 426507484 867225675 852140867 3432308 849494510 852723459 544688859 272618094 862971937 981889873 464800697 267025729 893745431 131349814 196491673 417588943 154859957 122459109 504097818 497381027 409880156 954011611 308497231 434957068 394016915 707744903 457204385 974233458 442572498 140144668 65702719 798402615 621044857 72935812 908369617 712820997 592778023 640992357 572555390 675731759 622262534 955069900 548784549 528305580 816645650 50489763 784090090 709976111 93966115 127722397 523948251 218704044 498327240 192829092 246781238 811896232 988360272 893010611 766194047 828840780 226247541 688449594 480792605 336854373 930885497 953310293 251977599 29347924 65534317 725429306 221130332 325651218 866042627 573218851 331521286 91142587 204537755 744999430 464319575 739001657 973733622 656873216 353800864 610201265 149429720 217029751 813313415 748042324 881224992 843969735 271195232 853420612 563848169 966762764 444762623 657247365 716332023 372192944 954417427 512207079 450588634 626649989 277962978 407953169 116135543 246052892 293085147 753823387 396935335 454453206 635055679 252231154 845569988 585578309 915547501 123583562 200123786 267201934 344809620 32408106 918376045 932455843 988100689 289641220 700629286 984133924 574676196 717843461 81915558 213327738 324315745 947091376 337187416 186217560 327607819 158072099 865015240 462958346 801644723 972800511 213779896 998385709 356726486 136835066 891677410 383252809 244182168 836287101 361621774 725449406 488163174 358309216 814455881 581337508 200261028 566944340 384350427 101909784 229431341 145322889 274861636 412224616 253343633 499267292 780675958 479309380 757422661 191697749 890854511 564482798 929784197 293722156 292882003 853836749 268739156 693937589 763155042 244061032 58113632 318538223 945048489 449039320 854410391 466898895 862568759 459644517 421435623 212231174 556915251 718784288 996262116 521421906 690315751 547475513 954008026 963860424 843018481 748457482 428096255 364986395 713880613 992343677 834837179 153591278 759265490 945642100 257385784 364499268 69516153 7819084 493543448 951513113 381229760 784203838 603064196 229955954 14450635 858468434 178749954 258831253 591968544 807538952 318408349 67244704 305092721 471894595 879763820 831559790 179696093 734811402 435067156 768375936 539291729 704125847 778689006 847544871 778846245 488895005 775264486 195338221 565138766 97823689 128341857 599684076 964909834 27154519 241104818 428333435 83877837 575606356 734325190 340461149 144205842 691433193 284931658 212384283 597949095 38265506 584840430 217137042 921933225 7180242 809325774 518481736 702362949 467251536 68373745 686637190 810239947 165019282 192176071 173275388 861132412 471826874 837109247 748202442 711456209 324717605 485625743 786598852 89750018 230757876 288551040 920637732 370905501 161640500 303954928 990253390 216697997 927959507 67180828 391569663 92219759 470141535 465977438 187401106 305500530 560525612 560355289 368857511 871945146 868236526 827430432 660798407 880009355 433692726 595559016 819918983 119748672 458894815 522773768 20796156 842517217 579864360 841874430 906792275 923668839 488970802 925571311 855687035 643666592 782511278 602267048 697798849 887194597 411848329 107455384 866874002 467992705 122298716 374656838 550082657 714931796 915304773 487637643 628001753 241552930 82965323 786225949 300455606 864903786 548260422 429311880 88796988 742667070 2890463 879504310 665134984 981230724 232000345 285223917 942706918 601305869 61761509 634884890 253806760 867705687 292731826 536649568 721987701 517545739 541834364 516578435 782966520 918828402 911507721 91988757 616900988 633191477 621764 709698668 546980831 809254989 282130464 16506829 158683974 534980009 148830373 510154476 188088459 141178986 719171989 431232214 526567752 595505449 865948594 659440852 669950465 909053348 882261098 778477606 227145491 758687160 62607776 259568742 914548982 739466002 14440993 202697105 998352649 956863849 429872590 324609229 891514958 211945487 379017739 379527808 619547798 407986108 548629070 95355922 952321706 79910881 943077666 137476590 323195146 954924363 395492693 596964762 108758070 660861364 98562214 132737976 396868211 431668558 35666931 91624092 937606716 721785244 816518240 540184235 830608886 771292052 179096655 803105359 69980627 949989972 755911578 673637642 896455859 527303568 104756193 513718231 438187281 672806193 413170464 292970132 614323889 124436293 169858454 951511832 397404936 880020229 401783415 857746427 57728992 317533944 461884674 374880953 316814183 825678660 591706857 917542923 277827083 519684288 953099241 529681060 209384422 784368713 665624063 658896027 402725598 302768591 945978613 289235282 403748475 158161129 543392786 105950131 869403795 581652890 742818591 762179087 51184625 865758216 16332329 937113097 371341114 920761563 730498104 692178400 475695459 69540937 780863834 923327625 918377693 781546967 296727853 686830159 888936009 556880341 72746562 60309953 608940868 574151511 553234770 628424246 104381296 745341669 821086664 619777718 910785861 989248765 565902419 733271721 560781953 348430588 370861290 717688073 458811172 726496766 681449955 299075340 588992847 529567459 501320480 443508202 712700577 756881918 400328721 831808929 923829528 540156825 221953345 389273644 814952040 345824722 427088109 874978132 243906216 276024323 412124633 475570152 214085318 380991934 168712809 207665260 633147177 673041982 35156137 515187417 54513756 406427784 284436959 237977953 354531445 649287174 760955912 602279584 505308288 562428604 166451378 526220972 48730347 685325790 313104599 818498362 239264729 177226042 931839554 403335942 16785349 55481361 673433098 305298916 480435405 345703320 199715107 655896749 169923945 533689105 297132259 834678843 18458321 752662786 470778272 660670501 568484303 153637735 602251200 971294821 842670518 530935045 206827631 544629804 206308194 348269541 945665391 797829756 685781805 758345024 131517004 470153084 565551828 781376160 487379193 203401319 50015276 624114113 18101012 996020870 942114157 743545462 469675388 821760558 493716302 12961767 929469556 976585756 98562768 799422259 54912128 353209845 217614956 604572388 607241822 552419942 751551485 84395090 559917705 536761450 620095 812707040 800624226 524350077 848018965 403784910 224741157 940773385 893185745 607507594 920338409 635542913 484309114 940661406 774023245 861189475 550104926 908151289 958028333 400843314 115262891 744159647 764655679 224623245 521194478 369585235 269319258 164448914 134577197 838138144 337593234 887009353 922417509 935319799 634750898 206668436 97721277 5159856 221390859 296299952 843652242 466837289 814718017 99341229 94156702 695708728 946137542 426141238 903819615 532005165 998364803 743750808 321993009 158604548 108778616 989181623 480724097 354918024 103186517 211590099 613527376 355265411 547815964 989359758 346979624 992827848 600033496 739440669 382696674 45461432 928718587 608172966 58380513 504296745 770863351 978479877 427728496 62661001 445577486 490771724 573808114 147875355 19965327 209991015 332223832 787594821 111462034 925485032 653934214 93947983 462800812 340707748 625990969 586503576 337853189 474089404 130988609 274501270 440786413 148226020 808643867 843829963 365676312 900764276 415432844 270300658 35680641 444145478 566659420 718349506 484188966 633029288 43473104 468239849 883545808 287039115 335406897 258063682 963088914 56385187 786854440 469063181 636324397 149536810 425971912 389685366 865964795 962927418 963605911 54067393 335647296 828225436 946927952 122653378 490772378 504213514 60999100 808663507 641429007 776194193 54114816 410174276 815632939 301122713 459545996 923932985 204252344 275924857 63153001 450785211 451048778 177696182 197787425 579109784 780988912 993224788 733117537 868944355 967333633 652700552 648604268 609298936 473406832 434032606 439557846 296102436 92890545 9169840 394535795 384945440 877550632 316478185 231229540 85227953 945447688 377233778 239338910 350456111 952470112 269114188 812850168 786895065 643960023 319791613 163213732 392847561 473376200 204766487 533015705 853635179 425129446 733893605 887210060 699227177 883207100 396057737 39449650 240647045 606402801 742236827 37912019 746386452 919099881 285456260 604188986 500883738 666376617 926579434 231757578 877943572 459123665 173351217 190820756 843419324 510852650 798004705 937140920 945637178 426258062 870829691 762007302 795293080 546916295 669886850 953655010 398352193 910072691 436747665 330965282 586717136 731702367 877215638 349193015 453214662 95050105 416243227 967091099 146072122 149593002 676481588 214451587 972619851 758236762 637409686 596469158 313308081 740318785 957164596 18628800 322248387 983574776 177131860 494321438 597638319 883719387 910273519 878178163 258616794 86889399 198427221 572116293 471910993 802980585 749512520 329884941 526620335 855991668 786425582 548371427 702303357 406073178 904659324 507933636 342014589 982849049 131638108 738734012 915310831 26321728 967852095 42394005 810491764 94464894 347020087 134843750 103216755 975056399 676769904 314716911 809517960 921253348 794845418 183171296 696779824 787838054 529158826 234867674 212098192 33666070 105944567 816394393 268462575 199264915 261962376 16215810 425942585 612213218 966857284 145999191 439654194 31529307 79322329 35525188 199020220 943830685 326963781 291511354 242518569 530384680 346798264 613163527 244050138 66635012 391728636 596257738 220835791 660637211 61402607 93148744 698907141 478712401 594792528 527920157 97133270 431301994 962256301 187949821 267779402 884128688 462635054 395328011 503800924 369710266 34216916 106566321 487807551 452415497 452585453 280516363 717119364 914699474 505715916 433624721 767112079 771640476 790869370 497988707 134734453 125872485 62560575 612135908 297883311 591731089 837305836 547200380 668862640 105422484 802061478 151925856 959641572 27766907 629366452 672748973 646536944 806928835 283947606 235982195 903446821 924731930 22809123 5030377 411899390 742030595 142183147 322141413 454175165 217033170 14045758 389295439 35754469 157795457 647240576 988372059 946452452 998148875 116196972 155924677 261289613 506308917 301302774 140189936 156474350 727025179 451081250 621299418 96251391 272175292 122704438 649957459 650433975 51883382 419984059 508605645 95491410 785727458 50078824 55457204 71303488 514019509 234750597 142834031 899074574 240076294 470147069 806782812 422649112 684241078 610910225 707365096 287221840 62227036 488372623 980332999 700897087 148665264 862873329 163119381 488317935 122897324 384274103 736412773 831790180 17628836 173847909 516684579 525666849 160411239 761509563 317647921 485656927 475816774 792680131 743055742 429948228 619225041 40424122 742333828 748701683 765459621 902908186 588599981 110449532 101697285 619293141 371475659 154994728 792192189 745598389 60673974 858272445 432311141 457717337 934994516 906080827 749293634 947432223 250554486 423788543 344949774 758566995 325555777 297805641 526300541 538245993 652892032 549644326 869730378 558667827 889614982 503531393 492973822 2995371 917209096 709208602 218958648 875412367 510520318 539986186 919353710 886959397 946494238 347250447 207047091 456150935 345372868 340679201 349399817 422160995 421622804 375291084 601275528 84684913 289977025 587345456 562251316 783853385 366228678 509792098 941168219 937215941 735494694 944934327 322034895 599588724 724636994 894369224 929772332 189546453 932907366 666329792 480890772 426024685 131841421 245317418 897529948 996256174 133894743 929044110 410420888 598340716 403962033 504899508 6326214 333628066 131330535 78603776 409620903 146768843 168497092 326077595 788017577 345728024 295287964 53329058 67967359 714952511 321026411 581387059 162721701 166951202 994512877 998919443 656545640 402943160 23193163 606168843 945346013 544006983 905240560 387850159 225605121 911909635 192730750 894874092 978330467 305618656 398763774 980802611 667363105 650806195 199937904 214845609 430505768 96324802 613568446 60668284 585355659 841645751 531893726 811493661 427265959 664161245 793937480 87745628 486659806 662188550 353246212 533791851 760543363 885908936 938058364 713908450 457538658 830625163 422367168 656644331 739548334 816410875 475611545 452814830 870414844 62376833 169085544 417081872 278651314 322935881 325727638 342871441 771763873 955386693 975849381 630287262 202143914 603963047 585323548 191685359 302035754 663977174 714714661 850667572 178565311 933083874 753316268 339446799 1669770 190409410 830863302 45895938 485651175 595625184 762896096 521619290 217435075 292299314 965424434 770818689 766311435 389828507 432949708 701528452 77012454 8975742 398585035 187047415 231327748 188651082 67345977 708153393 769331337 112495913 685305277 833407498 639378620 27882197 92134976 599330000 571460535 940522383 301725997 824784757 461354546 808331052 151244702 59759629 853548416 645935792 531011711 745135203 464698656 319440253 251562286 411556674 727848811 752639776 411549495 18526263 717204100 377136072 185074038 74371328 148100388 629833930 630778518 519831851 700367991 388739980 303150559 44205303 204618003 439371882 517129688 292855865 305511799 376304759 837235913 479304353 433015759 644867490 586065500 831287786 6506976 232378715 18998854 778659786 644214951 227547535 162377662 269779646 76241297 712319620 745563091 161792446 950994884 687747694 134425005 658676773 212716705 200417119 605159845 833677614 573225099 953132762 732312280 339502194 913315659 184462783 187854475 755388787 476467057 511927965 322553952 494954761 906888181 31398756 54444492 181873577 177769887 409523253 631406730 759396230 905894495 798724104 50496927 342794072 417809456 259878751 891836575 466294700 125195600 448151772 532386990 973391443 118421418 650729647 34914546 916390378 137910727 660076891 569318404 842357187 299178312 787246585 989017568 317735375 341816368 583859226 229255448 962540435 305830183 6219981 138639222 501355296 67139879 925826546 975822066 525375430 682938735 325904166 946882239 542885568 56895177 883063296 88093530 159473656 305734271 537318734 929218497 555828967 968468102 379058682 345224946 586775884 581316635 157571365 191807343 844529865 847487352 932568895 665191049 532421536 153776459 276980335 351956991 14370814 528679912 321731908 294337146 21989061 786066164 305150272 118678200 873404308 494837921 232442340 373567101 362865949 622089344 196299758 819122538 713227793 764610951 402760631 214605424 769879384 844395992 661794878 911062554 481967620 311958451 213403553 854568730 950891206 476786013 619737912 142684964 859029146 123854047 564047395 528878825 598461048 264374932 339774125 259241917 921193850 952354847 286188441 894047872 951390512 371947601 491164538 32810482 903797847 895488600 960587478 59601307 487752201 534309994 733205868 6543394 823303554 776193430 350768842 509199950 110063525 547758427 409327971 61696527 939344735 947614464 835585626 488003110 623572212 469700871 37999051 592627993 335260395 334340121 591096355 371426560 991094289 390068511 83419537 888115800 282104814 809852878 744017040 543776786 21975511 284261689 531163284 693808368 590318024 486749718 186821925 196665295 940203218 240885213 756225179 226678132 935567199 871831348 71959728 904971931 393354336 206732529 170263266 841555194 955413093 560715752 741067651 452204353 61114261 907699452 402506138 805411752 138173530 475534941 31878549 399230495 27031656 587541574 222390508 165974616 697814732 401071175 952369769 132064 755141863 334876027 722877355 81295951 270957211 594737414 816289126 266954205 327717303 709192900 750919248 856151810 752161501 473886806 381256752 433677822 517151697 715482782 499025066 143629525 451167595 101649580 436256975 406609165 298533106 370079263 67414194 250088508 855284946 56086830 868945764 718142392 305327602 849648410 359348338 185888408 137597068 976481477 610845478 852081848 866121067 847580081 668896513 173039507 773989865 613598074 423588023 325825116 316901975 322877818 1004059 764847180 696631995 907917403 508922337 520015965 883915171 488405521 410813025 990029698 679005085 759280066 973603995 704639836 540056688 498231347 46693060 778345099 603651037 658599378 727443326 310480171 759091174 186014144 970241825 331659538 596161765 953090986 344749902 913089365 825842702 455137450 411636788 856718076 67080148 357826259 164406968 326030088 652468274 869101288 116799019 189216182 328263995 735420 623615603 343427995 67019396 614455085 867056006 472886559 24383203 973605703 575701300 557974121 54141322 923005675 173392477 634571086 152441343 570721685 754453852 754010078 520113435 982857660 174674024 154772206 796927342 837562817 285614223 510751529 62508446 874367954 483933197 205361999 153871766 177620869 414510699 700828517 432749358 704095710 574033523 180570711 784947647 280907158 692274534 784720856 70365338 477887836 227340621 437304099 3353628 484346936 105915759 130111458 626024973 134344877 910642896 514546174 665781026 121101387 720805009 31447158 679595164 727763647 871241131 515172750 719980883 145752130 902161664 507190256 77286644 804550739 505868284 737702670 306626352 984534630 982509246 365875156 723692293 603117564 520458841 50561714 406141007 812046930 673305020 859767436 493520463 356374356 995151546 767413614 516248234 178496774 435431698 839056573 707939888 392993825 669824979 450968729 913333014 344832948 50883282 911616498 614392688 808066711 629697692 627491806 742679258 90039932 1489982 310902039 150122509 154086300 239104398 198155204 988028475 398015058 258451999 580952129 844547156 391631034 563494076 887091594 290694957 831995849 962358620 899000953 647104666 222608789 514898219 38338453 25070616 454061103 29674727 448151205 992575893 199958358 550086448 394433656 72002093 886974252 574894772 694869859 429578838 644903928 119229816 660620145 960532872 588266787 458384527 185035812 162709074 449728732 264132065 606009950 132815951 828854944 115536356 799204993 858747018 691423355 734353529 220910239 498587038 13986235 469519877 541051486 343687445 850601182 855065037 809279413 272480630 961220754 966212821 822230237 11734411 768600928 452547879 89085150 200150783 202191700 517762865 61274111 587084853 786531448 614943264 807042553 240565911 628730758 762732312 719658515 457535125 48087384 117096271 287422867 643412739 784081741 856812888 545122778 280730750 627097297 563546210 503668007 161581490 250006504 724976888 327130564 912927968 648897335 728412192 675688923 426251970 812626057 182527043 844315519 824338937 978829364 995158437 412216818 992675875 56741187 207253954 762818649 152845324 897409053 710210138 675082620 791433558 787869902 352085789 642099944 605461933 420351045 577254237 404575318 739985719 770129352 983247099 974243879 392749583 386373452 165905611 841255627 251984555 244044671 621412682 352347406 509697938 699709448 797576722 437482614 881161638 324696607 338685924 310333535 643392072 231314899 548585973 553772905 862445129 821518836 27369858 448094734 356847061 698641872 6293140 67323998 962722891 983513666 839261736 874665610 795165028 188619864 935651188 145257513 923582363 73583031 260115234 250873499 555615247 33675081 561958778 709872151 82648631 953403707 403872220 671566751 519202384 363941665 363659281 664878693 445777485 835000373 653554893 173299254 725831371 278358864 902334061 217544164 523417547 827253898 95483171 797983652 648705639 216985858 752485551 931219305 859288858 107286054 935392783 144244669 23704643 253837018 683141900 830247507 650062442 825026336 914030463 644060670 679771316 193528999 510802854 477836678 21204013 826180592 314429028 344095123 81179040 470364668 674435953 879515375 399734871 592892550 559152168 940991940 638371565 934277171 455918751 78899931 571113257 678211036 305268958 53920598 520238817 175729236 364642505 94637081 945124171 192218602 694982513 715633827 533214603 18544357 163903061 646534582 844453137 187656595 468384125 904607687 709015725 808088956 206993129 633699263 261859820 470197772 64013959 445035695 269257316 965006015 910381656 407050072 39139186 506868923 833859588 917445411 797370900 871010503 390581741 519188442 557567273 416839949 871730893 994629234 116862080 794835514 880061803 340187864 506067891 393576445 442726403 993291473 210095236 559572977 913952316 230114146 176323448 113685430 567662850 631616718 310433360 215300644 645833042 92755614 114471172 347238710 926409241 592937275 502929187 596618446 594525666 652391384 51120978 255086265 850276084 27580915 603850825 405792117 936019350 134656479 372763915 587640380 435962001 79272070 687864856 140381163 438920931 473710352 142752023 206998035 779244645 105641125 682951284 231156422 305487938 687867327 593473147 957200593 701866306 83497826 174203942 677324309 753406634 681780044 45550134 245719763 980413442 970267283 126430768 573848149 966936845 30591751 944676118 651874928 924274653 697598864 491290292 30136756 695857621 516449260 188221720 283976213 504294800 396211055 15589435 57893958 559146936 626528776 289769354 18760537 919947191 505712666 388591781 871097563 981758982 681664654 297054496 140201371 723720742 553246097 665090665 840829846 532192031 425262896 289558526 325997391 475776792 198315218 468515605 257133314 655863059 919112486 737384833 419470465 62992291 822231432 870166945 73633068 918474752 297816955 236333453 991019748 685412228 231421388 144711573 896533404 484081298 83612535 596712668 241085525 545209175 491659593 931602310 868280342 594289664 577588255 148634678 927727006 852221658 227511141 537956925 506359308 633664520 521148850 905765344 450674897 441085800 294969219 357244131 779789828 21818455 869058022 567536354 485078303 316606511 140298300 487627585 363522205 924168831 575473361 563199601 948851540 384515359 975309314 673406473 14471701 625167420 80915754 979821692 432554430 830033355 75689812 321953986 860272530 958011499 57839598 442207862 155310267 333970859 553090730 839522837 456929784 809832163 846187777 666099724 180538202 171917711 315396416 609365822 750781350 527317373 188739740 858615896 456241905 424244409 958272468 934858627 948678867 343850134 455407603 945966125 993072087 207895534 47557661 280678310 594522099 892474472 158768486 945641036 277059810 236035801 150732138 937614410 385707181 498801741 742641186 867591180 747122335 806183781 904984721 905039119 711001831 811826668 352094128 23935204 808820446 740434716 655979514 920744044 541505093 382087497 880783871 88791514 904384208 861114931 371169381 453647910 845203964 552660161 736755469 735341011 852832258 812360155 669903719 738152426 528136885 971488607 59779785 253672383 432580271 873229058 249774705 67044008 911421809 288539749 862724231 741186607 340362903 917306048 612677284 19088950 916655461 952295862 950259319 785942129 251314272 143475045 100073646 47187763 993381055 214518884 427209180 161835504 27680348 981534350 172697841 450170685 261870169 342598290 978554229 521025213 233626314 816337891 924087928 527480711 45401423 417406756 430405036 994971088 672382037 291408372 580062666 417070474 420091231 411552378 464214997 72756469 233818169 51239381 763194306 528355761 753526909 822839754 662350570 132238735 710094138 991303065 820960722 914101091 559194528 166667088 447823388 544440117 37117431 858875451 276429199 671426844 628998448 362353582 108280208 252866644 255551082 319185392 753936547 768578878 328814306 798076020 630859245 688968414 900726922 22304993 158208835 108417950 247935216 782954802 189960733 221942172 506146942 193488478 483907928 867823072 962484866 73844524 621332203 975538295 714519061 509351726 497744316 21285860 892996315 879665501 46209192 55272481 514994621 971340371 698410289 507632438 203649639 138267375 84354580 950770038 263580270 711932841 130681778 191308075 832232428 833039636 679452048 43026143 520484398 657234769 488915570 103214897 751812408 291730454 377982846 831460372 362577934 237678016 387924848 61398711 86009207 356403351 622655069 1519013 672065847 261078711 381069902 843235369 22816367 393648911 585525198 688173828 868727585 52388266 423745456 908411640 204040487 657488694 763220977 386357137 519257276 786715513 161878251 647514917 855444996 814002643 233618183 412383376 267564946 726955743 285908620 374747950 292392952 608006872 915464969 336762826 620475876 419315343 547016144 287491290 993697970 483882823 383540354 104483198 481368139 876556645 508411920 705907723 556642789 427280850 862043569 804386363 458440904 148290176 95614711 970158456 437699165 923768737 709735493 918936064 737210150 792198031 946782277 378183268 661835645 357939845 132625987 47480096 212503430 554179004 319269185 708835413 28218891 253168894 690185923 261354606 944813436 95787788 756657649 934064489 301388812 760220088 532206856 705667997 532376918 706608150 864925029 776765807 279806311 251183175 340873027 969455663 208004288 903008206 139886747 669009037 563728009 700045196 116871598 468599326 107981326 613897000 821227723 533196445 538958768 746381074 617085952 586877145 52319666 467091949 949766691 715621294 637471906 738334461 502619596 785446597 382659038 815629787 172303534 514759515 856566689 491331803 242733522 455660357 286069570 669640118 363438396 488415912 355717164 482325502 969924009 936449072 360070336 920282192 973727842 652290172 656896288 519095875 576542584 982354104 5908635 65115615 207292417 885356202 970814281 554230040 459864170 399680954 40315013 186244798 12551840 831735701 923516924 317314059 211486325 624293182 335293338 580058823 515563704 303790607 445216160 548252275 31473348 672689765 24192256 898066565 181555805 357890551 968802598 795773869 819837116 595974231 293542205 353542990 669702832 83331131 307834537 964485172 330933903 881810835 180796721 964796689 178500684 160016928 765834203 855093249 913736962 54433514 875552975 253103921 735063285 542882496 165421016 552651135 787003945 213787762 368667294 507333266 457263233 332887821 801814278 49096597 753339180 892937140 731198129 196134060 962287481 582215288 560533936 209077760 821140773 441562616 556685607 387645390 978142290 299939419 92662383 951935875 455386652 611929210 723813835 21387228 459666982 480353496 151658382 421137199 363967746 18184006 485205135 639024551 17099730 589377653 316723105 330682320 225068282 67152034 961006133 213009293 303575268 324024164 995523663 627946064 302610672 422785009 10167704 275754807 668904137 809933361 917565219 79500630 137173542 889654809 135977071 77727494 747679325 873172043 414735225 600681507 694371359 993997507 869104947 715201868 525940847 84093261 746407185 510033774 148735977 908452638 232897040 995987971 86458725 429481064 61143739 998370235 409323998 214165569 628107912 452722742 471329243 746159081 177157746 713195448 370135022 919084471 186647580 671720342 909213119 360712659 396654191 319559220 114209888 242964674 26726850 145559190 858212299 429939966 7973498 622133523 805388596 852073446 212313411 81664245 380507404 670893329 45106197 793109688 853370331 481234591 235662680 212028885 665789820 32644466 377908072 975836017 399971688 250285922 153556653 866687913 326496350 580494783 819540477 545757852 611066164 342905305 97919642 999564410 561569456 145522803 969754643 203870090 74194248 165299900 533727168 207973337 253324776 223523142 223466895 282399830 156843467 186800627 944918752 914006021 776740688 544194910 496262426 54203616 887500077 619018535 12593405 209279405 345794929 734140126 849221570 20469007 591516686 181896603 143603120 742460254 345416312 407971159 193216903 653220428 455272282 383441323 214749840 994876479 566890311 514724296 28146888 654919941 352184756 475578953 809786919 386964065 74074807 454735437 970820925 246024739 223711167 585959551 900879345 290032240 202954720 121859446 897004145 749275006 66519862 849587145 623333476 32648488 212108638 427571785 960502905 695273402 576149950 471292471 677257626 677946256 427935700 780385459 615644782 614768907 687068365 360868955 377121950 644712857 646387363 1253449 249541410 274723251 843058976 762143560 53882187 573209130 873848513 576718804 440631997 856366061 630980800 843947266 30065335 549170552 939101645 499682864 906098470 90293256 196625507 901609788 263683013 416529774 493926794 541162031 11707581 946846134 550467084 662486801 382449653 852642844 914068393 576256277 472963815 999270489 541714260 538090856 7019845 380203465 67419341 6926250 700826067 52171821 937623176 199695133 911986822 626045809 338049993 202628969 318603476 340146351 956338497 583421335 716699503 803447642 212076739 547326543 255856752 680931822 198506823 242891345 195451305 77285302 199113026 674375682 679060995 801590680 915262544 537760051 255695849 809074837 434919925 345476895 391162382 508443886 340047023 439459220 7685708 261021278 445871992 458982207 89524067 760681006 989197891 328680388 841249006 373370288 908669042 418784865 46103399 347951025 224004026 985349917 892572023 284510600 73193774 964546226 671658973 599043545 976736127 28062773 643285710 886365785 565009223 843067306 677457956 564820472 313213233 565793477 325009364 44783282 829968771 511098786 127456578 737654939 911656463 36845721 114228107 395833823 392868435 267818555 791235108 202280097 241963152 470037183 760301 561293083 372067738 55800248 206909664 739150730 139851603 256355500 422636975 181408845 479931007 781385446 639436445 417883331 814005734 76866802 238638050 116525602 702478376 364068979 254752619 881374715 807564990 108829742 214529337 861218159 661438219 501887379 622526365 264445128 807816345 166317357 996250881 735503358 653930870 975613462 142964942 931775530 886157752 251884629 838259211 190039412 819897293 479349832 43128071 744190731 513597316 27571405 779104855 40639889 259312885 38757572 890338804 813660446 733401302 531127793 383301558 385275556 69108629 898813799 473697380 240023752 536976840 104825947 35559708 671475224 986815914 547910200 503987500 92703663 474449870 588013708 321275103 24022296 123844631 372632027 307560177 545466453 870734333 929478580 53864362 985224404 207983841 3891443 937974446 875303346 290045680 30499583 582805993 637333675 568613981 816327939 528652186 472344560 996166364 76713213 202351635 783851472 123783026 869910340 689594007 844736709 721306686 550754495 831237352 945791011 687193986 505620757 242214402 689813234 722432347 682697156 484454704 377313839 485764600 844321363 442862489 337636584 601439489 684594274 917032055 210631055 571700254 370204549 502417560 226724744 907584301 101409003 927754569 90684062 971157236 993348116 441347602 770764657 84183747 177986231 821978517 358151576 621942627 304455747 790490151 430262510 777189662 206343834 575527181 817375864 694054770 107956666 205665767 447689943 620645220 83309743 393730960 122532089 233933946 561272048 793648105 404964108 815519626 384347408 676978432 251440137 790335246 664619547 687629887 731657491 935444835 717964133 28073350 628479125 514998920 923189617 304995386 640476846 838460739 709071998 872640172 357730497 976290775 60028668 530493516 379907663 30332948 550338262 960881519 638133871 983388052 265511738 883312119 261105339 566486179 285071062 208809307 532898522 265684198 307540297 880220152 914152489 860260873 490514922 55694451 277781392 363649345 673040406 987023004 668450380 582614195 160053505 404961459 355723434 199667424 22458663 527932 657567075 767311450 905883840 688688072 849142066 899650128 808595151 931611843 576798945 709470365 762017067 891336630 808729567 163718050 961084332 697224382 861378682 384771777 781401847 838829267 417439125 570823965 7429285 478337024 999225953 302446153 872292941 316263120 5879515 573092093 730691320 236269824 989213942 498627533 664801698 843970194 355862838 443046877 161762416 238618490 995829526 635211957 482499033 970686249 947499881 871442640 303484025 642433913 653987329 310815203 678949039 194962155 411105086 812790715 313320758 419061315 553305870 295156559 454035331 346589117 883359274 608160230 909596628 332226961 361444310 528333374 803240034 935013160 911345999 80932891 732326862 596308333 549150307 826598176 813121511 816668063 905148904 547478133 676991490 720646221 314715141 627539569 661189799 398540725 748867863 524499917 497499533 77788789 560490006 360793384 864582338 178548142 124524975 660072670 185518229 12343673 202843151 115777248 344470992 788876892 176355208 251956472 871889733 430924978 534646125 672761524 63201691 815269872 682246772 853346663 764394457 214623871 623266434 168594571 84173109 808932023 917622362 963404638 195984597 565498313 690340751 819874849 62579865 771219629 585594872 701750843 635790552 444596081 649665009 406492908 390423545 324721237 719491393 993573120 242158425 145607642 996128519 513760642 490355359 904246982 368286756 693605064 432782675 346812753 374274432 374256270 876893712 800076201 397140851 996943939 946974560 118449394 901712207 929356541 406269479 41336113 428957616 384571420 77127792 709390521 884447857 810195427 726353937 11766652 412780301 319577131 90636015 24740616 122583078 435589284 705096261 619189831 36745395 41579136 558784504 541415597 654260681 693293439 605952864 748486238 346534552 556385477 691339948 591954012 849701738 261306223 670710155 705668157 874997156 788679822 393328303 947520522 651677735 422214301 792807235 735211929 665837250 929224602 52647227 660913921 295234833 819958543 392438674 782302737 258797105 684909745 568415554 45478056 527616383 651140902 628612658 692376050 129520390 402838574 947411053 649639854 771407831 523427724 687712840 603111073 524668508 179797886 182305441 374170471 354783249 63144620 92229824 503356840 992371644 461079865 848992521 637716791 193038293 412670786 79933269 212881888 612799207 496696394 436413050 274284054 3607527 404581716 613795365 222617341 713315291 40003859 87407925 940494348 648498289 620608967 944355676 309712949 198037510 249660317 351563323 726638365 552019727 298933511 998881713 521941919 321076608 972899723 289423377 785088102 705474858 897480953 911180600 560855467 103936638 899075291 627417513 821532252 393375618 765136029 471213052 45212060 811803476 512831793 63324059 140115866 452549838 909916864 556327712 496140331 514033819 484459858 445963797 680573501 403513188 359721394 530202793 905653231 843440831 342946508 458382100 666036337 715369492 636712802 750646447 393611395 71936158 181125913 559920308 510541866 745653461 92793733 96055043 859358065 719804284 417280605 525266176 299022154 880884897 201792118 776805679 999626232 731285154 155836313 296553134 162568700 383578025 318002645 878720642 70030267 50740155 229842108 446890941 422227378 156347172 214074667 843721282 215700797 250635699 186369590 83698533 100243368 399182548 650321845 709546429 605928542 897642810 389044297 106138606 20257617 495273575 367397401 553659597 362053792 210168909 61047853 264305902 100418769 513961143 706732640 162803082 373044551 688340131 522366991 435086284 622862325 285366593 127359067 950103069 51052623 954223864 475319542 488861554 317362106 780057792 414897597 331110632 547330067 710383538 925208370 100439990 491362312 908182263 1986830 711574824 858410187 529485975 531289805 633013229 109692742 419778579 718813261 449753707 928753992 461348322 84939175 366670490 884886895 593934344 305561716 790019810 663885023 953463184 941523988 426992379 786225677 780438247 374836936 969139702 396437032 906524325 278020482 371144163 513490622 606573717 163773292 196872833 58460465 310907010 628050252 369572338 372914262 501610648 537266279 51178214 100791954 496997344 668425889 39190577 872772236 628942588 664276983 810191632 805029652 123295639 831146403 788985076 129833398 938081593 597499240 866285508 766796968 763911047 559426587 798248665 519824874 554526037 861503526 536383671 490564785 8002357 165148842 84633053 663095030 391485454 46411229 651526027 368468304 560260511 364662046 575654700 252669497 725778209 598295975 989202143 354103876 4174619 375052897 961352924 329490231 887553329 996415199 29247864 5957610 27368307 549447282 877634979 448831650 526429897 337828274 358101075 730360603 807141663 259832278 61674988 808678287 549596945 98663786 908768431 605589120 111297063 558306915 402633912 526186636 208608102 613944309 260038391 266973580 557599450 237041878 595494708 888039416 347221457 777514925 984961021 95074842 924308463 28909358 516362937 925521960 61775953 929929255 799912555 615764936 494381023 493916151 630251907 59784800 717561864 617801275 56187177 884391875 470621778 934431759 45500763 359077933 277774738 799667212 34548002 922274088 130455880 150323767 653009821 983931089 234623476 609398497 354551000 10981862 796509476 470593165 174975021 187198759 984262348 61590856 230540386 148273676 306394861 750014094 660124302 724520489 996758588 57748069 469291925 287862789 644459555 303245733 335157682 343621293 323804189 355053538 387114402 914528889 770969582 667608951 152522266 466485679 952852555 677615516 516276152 32573525 362963603 964295527 711430148 833595709 765984434 981032122 344576060 840577565 339673967 601120674 164605006 394342884 863727735 626950731 726696068 793159098 618038102 726731241 362038753 912790714 325099371 543337096 800909016 156938641 396897124 16549311 126579671 795191129 68101288 344320359 976240593 207280300 624867501 214087400 800545889 245773438 409529124 573762827 579472231 198657978 368307599 356601548 448478458 606467925 935888679 887759382 631369582 710554192 494330915 626727415 179332602 775912606 694917887 24943783 814598782 25384016 791497101 691939526 374818116 372684288 469797605 335047656 569625222 414835934 870644717 276086291 238640717 769672684 308683215 34017443 541815770 265298874 205191927 398886224 529779321 149933234 598999697 431197464 528910647 674100988 549570420 920793728 130662309 998016860 657443780 990581791 366026139 284522335 628365137 153347606 295314654 58350433 926830591 732080339 272909442 847746312 810383587 767480135 326523679 352466956 982878007 232115313 252425908 594096387 409722367 807261069 642439724 418846724 369785942 998807114 107292594 68458742 463514344 305018129 254920437 418868802 432550299 614981800 806327919 685717369 58695676 835308890 791805382 31370710 226962488 909043208 788015627 92835397 966418642 399525457 319629614 243689032 817210631 859884365 940938830 502888733 723035131 528373945 505808127 210672502 721563168 474273633 978177572 765486764 695836442 630847963 334446125 861985316 501854736 378289170 847382008 301731975 912178927 800371709 275202256 501863041 869880396 538382786 685300217 31370601 318800804 975832849 4168130 688656173 43783631 420417264 483430265 367255398 353769903 196046347 986656320 387731641 542971173 364776275 244476862 665322793 306424616 917599452 488045228 640230666 713507666 29778589 526563500 978573672 317854656 175873667 775530350 672721891 974943507 252023645 733637246 521659769 539524518 255422986 241366728 315579434 446828189 219658460 563556434 181550709 630633870 672741856 571444478 685693755 900055576 835747129 786299354 502622959 363552178 811425927 58833959 639543049 331231288 470811710 49979562 610998062 648775383 130824530 72925939 72283125 142535172 362294807 870359057 225992085 117545672 818417424 125867181 281512802 676850967 456785239 279671426 625051066 978992941 302836058 4314714 299001419 711180217 778421459 818493722 414313437 723462856 827627708 84656644 645050774 850280948 363750053 811014818 210090658 494774636 947991040 410350561 472923804 403145074 307981857 263928615 458652760 218983174 680300285 518358972 372004944 65403951 941663219 841567831 726067974 403891928 210794588 473307848 690616142 114666254 428952656 765808741 308954914 720085387 80204416 162911464 133560941 23966836 729052648 884582108 700700634 293146070 953908432 359634516 370756534 770258576 785935363 238426724 827736811 250143245 921919703 626302626 452928679 266454631 733137209 663020264 412369088 461828118 598860598 943838022 319417501 585843186 633658246 547201477 845156943 931647592 907658938 464502755 799141645 526527799 208729483 302176823 315616632 598410070 536897048 790397873 37247465 676475203 923077049 108698006 510890448 42118540 462638237 63463461 580191274 103494352 543110163 663150727 275802833 195638251 296925833 17901803 608578056 990034189 303953716 691662047 695800818 721951171 724571702 150383089 14695746 254208753 748544256 566647558 64658470 467567259 540623051 549026664 802845517 381594527 670845891 44224076 303958338 460250332 842888154 445886282 607847256 765014093 857697008 667762847 324083162 6496795 622137801 107969283 336938722 747084518 672630 867395991 894673226 880372457 502839622 900688432 702467367 225085196 866869369 918069654 331105439 391331764 281276124 956603972 719795890 518241658 781936256 63806002 298849621 447285974 611210341 616341096 666767947 846161897 448652565 561236737 392362518 439127877 173670859 713212898 819406923 558948038 368783072 569818308 862793065 372815937 161748825 535437927 950114090 951698254 258812086 7881915 700977556 95881067 714648595 310360343 923383672 640459218 481219317 256163859 456897868 571240510 735276791 472740864 924049510 842522548 534355412 222409067 595793133 701236976 724738264 729550050 990754453 895169803 653109525 337968145 317297593 924505750 571790685 243246621 552337995 599106089 137223589 366693709 519427692 392823350 69398914 992415169 849048197 420624865 646674409 882869491 449085967 938025746 116954477 302030876 300676233 515049997 613710280 120611774 176499576 215006039 148186661 254962946 181924974 988670938 332609730 51988184 638904070 986950908 412353776 74889893 758698527 59397565 894627251 316781250 246997179 863349443 585477714 161508271 769298901 502073886 233586009 389455966 279943839 71203414 185273962 657313670 330001013 534709341 76033763 125728374 553204904 597812195 631079436 502050413 229824296 935858077 980997108 336651686 868056239 389990459 834617800 864915909 291619070 890092696 397538013 263463654 134510765 388991129 923242236 950550125 827198550 808914555 286993037 865278366 431526606 481434397 443326594 16230037 463837130 51047854 466986511 307824591 765600118 203699205 185971852 861440661 106156083 235813316 967077378 591771758 838115942 204688808 663343512 104189479 450650011 32216927 408171495 309012325 406524872 71072368 471768708 459660781 626076546 974807690 952635610 479109776 268135370 945710217 179810692 449408456 264244990 628300497 163325078 206162636 307585452 767943482 894237458 277760963 698806477 969001741 25239594 776750045 603443082 298969380 549675731 362368020 587790833 66614735 195864856 301009784 484255365 327111656 249062085 590877823 31450737 727047436 776033717 371533307 776355951 944077717 711042133 318234999 104819226 329593585 736649602 424447111 568222275 938828519 702235474 758370366 694192667 800986391 777541949 322824652 132396622 105576949 19711322 865274904 844442928 968931629 263642864 559814372 205881790 706248297 672496883 231592075 89838165 918974001 843264495 623353700 664407281 900924440 786460876 292643043 974000301 803652108 757237820 342791682 495457422 78486097 640338535 838782979 453458698 116085202 431240476 942870014 24646999 656346802 385417321 374813130 25014856 77349517 369997506 936801852 643231702 667357550 837778731 46145772 611531449 843681625 638319433 895234062 195571310 519187007 544397562 134390739 570488242 87143477 73103705 504942652 264589427 457990121 998270764 846197024 872988540 437423403 514683622 881396157 670879506 943882489 729165517 534677104 614293895 306873822 262520991 362223662 723693957 969093564 673237087 96464805 818964465 18977334 331001300 985033842 142352278 639392720 569949792 88477945 547061801 515546490 673849409 637373367 996375914 491436785 185275385 5578910 628180823 311773092 982018549 767538444 938279722 289765706 528166201 251126890 310969179 39526865 242529431 160925424 935002802 966510675 264178240 769262714 830883493 602772835 566250220 824340986 284912207 245481858 45928603 615725568 618287510 715173546 809672252 409156049 905019625 824122876 682890588 745382182 463860765 990356453 657160780 272668814 440868269 411708073 111110389 322254182 957384365 625612996 790338206 810620166 755458846 111716121 89215625 458635447 158202619 576066470 44791501 758684454 599661509 481599991 402562449 35580281 621150897 930964619 74409614 473084613 511547875 983684748 97984481 947258541 188619663 156209029 239305638 420945400 257907300 852454784 924461179 805733689 692898052 459852026 857662004 736118070 834628195 588977824 899187177 631832428 21174695 553811839 315979879 985538779 732006941 264573367 598639007 266187470 590079900 282912173 164528523 304075121 306280765 576781794 346943380 697520972 249176537 137777321 110754563 330412080 135449575 654683656 762874203 981910241 512792518 929109235 181770431 12305619 869290069 946202575 424974299 978753749 384274873 371496835 296699414 883567326 485591125 120295409 824109983 537096453 50783004 349826379 837195145 826984700 647763268 91866760 7190155 806406678 874635451 736859264 97225426 291650151 805830555 561023740 475196162 590359255 994883821 300187074 644189916 307356316 504790270 745043614 725854451 249825538 738736648 726247349 13622530 235611228 330570169 137677224 596249590 140606425 552945337 627296917 85412141 387015642 129008508 949591776 342955104 137034290 468169178 909779290 139050998 714478641 99896766 73165267 453492904 654587880 824520615 765513614 168552925 672489102 867105841 197339302 469655427 190305435 477192644 968740649 503994800 127628596 871698010 246912476 431616740 393903525 926770339 382075047 721901222 328340906 640473116 532964880 626861271 651325581 760444863 850883524 603777717 881499657 92435602 5797770 234024587 889676690 260607878 174700507 713047004 596406254 16916950 12894083 182586152 882946536 245187097 527879052 835440573 373054622 344526683 167134278 160443339 578469463 542797481 173336912 914544328 808636394 739930528 67306065 486635429 294296442 615173195 787375217 143594999 632679693 812853037 472942774 828212856 258626600 763769673 568636443 405370886 606277092 606809297 413252298 276261118 803972673 121519353 228812183 881557703 246311319 557268927 7415134 8921598 604110664 680888273 114999994 926463725 247617655 485158092 237447249 152622442 967163237 358081094 398256647 150339741 77125037 209260032 195988200 958565624 206188285 792725829 60947641 61468077 449484427 307513775 880150389 373598757 813100767 939761463 818646058 923217773 318307948 843810502 6980750 482237276 926789217 875959919 582648271 468345783 277421076 322371125 663514066 548573977 548463759 867358982 263296758 476863384 873348952 89129232 751766641 511338823 614086077 843670809 265451577 753433243 657476383 247839049 733489109 874343269 499248301 756902638 470029023 246336681 985400694 844107117 472252352 220346169 109457811 712307861 584584447 259353070 749691381 751538827 20780572 977411856 60162828 391272343 550576889 463749283 238268032 430874632 209354623 602930280 165077364 909378680 484014841 899506980 382220062 862843249 9993640 515932870 826006663 91685749 945532304 38704965 392990741 180418129 898568348 305884931 139097089 997735218 968583482 263108737 382441298 862790546 554844741 498225125 858985054 209254742 862897356 983680657 643745674 921602447 343539806 907254179 558982457 831368431 626389200 311009420 157018323 55087990 118270567 562876500 968367621 957139822 171622283 888271767 16040878 171714382 642961875 450204960 199910553 557512635 930047070 877711590 393910568 920724114 156659054 590636048 361197766 343289006 863279633 489433217 10947816 982642711 373050488 119921106 764246774 157044305 451774084 739511087 671628828 82083829 371191331 15635423 790362603 61497059 390820487 114555541 610640521 534149433 100072899 544414154 447750566 368221055 678532743 893000793 950669417 345287330 778299330 605229123 164447916 42729291 105836152 393932192 580555631 332448193 191278901 529465859 763741547 927323341 454537317 514334766 167540790 961332062 288101763 249380833 534936455 373038043 529625619 156615557 475460871 600311342 59714081 59339222 400934179 592413784 675595366 696193664 306764316 826710926 582585927 906838985 733342234 941079658 185307869 45288274 889792783 574320953 587475537 427668360 582477706 876341115 390394480 446443879 209704937 889814741 104737503 867242736 28912179 132686232 926341439 541405828 873271760 505792646 913142266 634283786 832477908 141524262 607304835 867702126 954417388 922131085 390053048 865927618 433979015 730745480 621972577 886380241 3658271 564391025 281695962 151150488 164156090 47294195 814422995 408556846 868770659 865005121 114193542 63425426 943176136 969690582 473857317 449390072 35311803 812011478 352408924 474881221 885933196 727534820 826799141 156256211 927573111 930132846 553603659 143770507 972215630 205971814 593222093 220183723 475947077 185971525 830758976 86052725 665341865 536317707 811450699 639388522 784265782 250927908 734573614 342862554 652240872 32789107 274698176 773796315 473229051 51328192 454687133 653636698 274952406 214077045 420087782 476470038 620089532 37613449 746014260 944317682 774680446 346526438 749417089 805267394 546077080 546769592 231823201 265990399 738370724 729760674 665507718 502775814 382617821 348698233 630422196 952667413 41934619 833666609 202812030 696890906 36282984 503230097 903890102 625731804 595967304 448101133 612126022 553934173 789677571 448282076 154597468 647304751 721819417 527559792 800635143 899787784 124016313 796967905 370610141 91549468 874593080 327558289 840309451 742781985 151124129 393286866 265708817 639799106 880120932 736085716 413645437 308343982 274210240 200424856 275829749 517027504 673397275 185768911 403685242 88612456 589869596 333093590 337094476 749923768 282195254 622575314 352475182 734828511 800124179 163905182 653642051 501446432 483877767 741764779 973195508 745413826 394538959 728263101 733433855 645513028 160202609 56066886 385092273 731080165 352356210 943981205 579502021 362028352 22129066 462826381 685177739 186296400 401980720 656741784 548541657 955498277 151133331 815699410 278162295 976824636 173342431 814697383 612264801 506436494 71504651 744242190 719081157 789265627 511679227 12923764 687113683 743738320 25351722 528462096 944594554 396158983 804801442 330648953 48261633 726167972 672533754 423604725 861710643 508147999 892826084 507419285 196982448 653656759 850364615 845817646 373590626 342557676 107735661 263351417 471076212 925610072 257975317 207808683 565050420 922937438 731307392 795675146 845667285 156228884 146084737 76049635 418838755 274553362 359737818 272033896 408576307 737881006 222448460 513924637 705147976 410390860 858173807 12829919 332644030 973085426 507747010 173620954 568451559 221733676 879467769 564425771 70061844 766610223 53832934 337546744 277428522 105197192 434399875 551429725 601248215 575463041 194914469 913839116 849480396 521461921 23484498 996063227 870726657 436094530 742040172 952384496 940732865 326456188 373249625 888670134 23724513 492713859 637528524 775382018 554577948 47256808 852799496 674876727 949960481 325397229 137380135 948204041 82275534 274483597 44148219 114241279 649856915 429192244 91086685 351610822 284913207 383391548 304801071 260347503 271723468 689383513 698632439 454537434 512028649 691395353 846787022 478065835 520165111 224052748 716360251 573532238 161033455 564467236 621192249 909682340 717999661 460104932 938987944 101114621 64395952 43035058 346772273 940760102 703137860 694743103 83703267 378337798 738000380 610744922 875633418 367330482 255979565 727227020 218851778 860020621 448431147 73687857 259590337 583030515 342633770 804100747 413240675 628960357 607896253 646031634 693762731 399018854 824749291 636528083 781574009 636471776 107635030 907279450 615516076 255655827 960297656 670326441 904708886 606939954 949275684 388389996 702954232 572750685 925271817 600415997 717655315 495945136 247468273 929787826 356098606 803879579 822658282 993751725 119527732 235487691 742949757 379052591 398179990 391142684 616342549 167439134 388756429 649605534 602417307 303091919 622982393 595754007 454668543 352076619 707523475 927669581 435730198 301333547 198116089 785847998 442126823 271230106 178091218 26097950 920082660 284867644 556867289 608132853 405561956 86114440 957133837 582652238 448851407 952398732 363092937 584045901 845555172 968613201 152793581 203553510 577799414 639528607 713251938 740341589 511200476 690736231 430804971 300735037 25432481 752933316 248666523 453442185 799900622 508365374 805889349 669331842 471086636 799766653 237157075 940528346 110454318 229151505 130512878 931952804 257632563 825544261 152464263 959859703 438836472 983958267 511090155 517405570 220371985 586157058 596080012 82675622 763492774 428941761 138495135 119856430 621247099 234034341 735102740 90094381 938944600 374922443 510221910 839052143 160596096 520472157 84084947 872654447 855864314 830347433 67580499 38880482 782571890 242412252 694235445 394199770 738202178 294227698 275162070 592485032 912702219 846175880 467173905 930933659 850376783 914240277 798373870 154005101 366398605 790836786 662760763 627509975 812347616 531530015 187505036 693942452 533097930 680381790 638668030 74700438 875210848 469447719 848819028 882087531 236485060 504842376 843092975 153695727 144265667 333664899 276984115 923553685 912222681 174625023 565307443 241625369 698127088 893655289 372834845 593243966 529452094 349146857 450484313 413863912 743554772 267897211 782583417 802908107 383524815 458156574 644428864 683873601 516150628 606811547 869936005 702459267 103635415 280588494 711795166 282041674 814592899 178473114 513081317 967387936 857068800 175110721 4842601 275608042 678671353 887458503 682392068 409334571 476755469 562390518 444186948 427954438 598050759 857517069 499331969 708652640 424642048 948659681 889485498 148514561 657402166 236644047 532440999 557036382 633141783 440437170 382415030 544615027 700598567 986232918 920087073 381280822 78248224 494412508 626346839 281603488 97076913 658361182 660996353 684348265 417706268 639229473 852411613 483748772 212014376 259226751 937980245 381288396 134880633 938100641 937319752 532889454 935774373 778449200 281729481 355266663 254379843 73443124 866551701 986638524 851205223 230255443 123160785 558455631 348530988 50998775 953167865 89017056 541875128 591049951 298937643 706764963 806685006 907190225 601176502 963807574 409073590 827779346 476166505 732150174 919521988 435560005 543450229 477909020 618507111 289735750 343363785 108979878 448030333 18334979 344296595 235030699 380893922 851044511 72649533 655570173 354284443 668744139 661535790 710768196 652508956 517437808 529047607 553759767 146129964 555038389 542303621 937725066 862131268 90246302 365358772 737024456 62591313 117050382 923990741 533487444 635837889 146020133 547846196 482903717 335550995 325255354 512700087 102985789 566139951 203665694 705270600 981848314 267660982 443050651 889323085 213693548 644527793 222701354 308927076 523955060 331980394 979908405 267620262 711502893 376566868 985663248 167853792 317530730 736512105 534327031 858068819 246365700 644014649 622549036 720716497 975127754 271373807 287146861 448864010 563740593 959949475 106469174 915510878 554953717 857643386 418567047 23351122 53888039 154920278 23589860 48772876 45307506 43725086 38811018 287577988 444398772 804934920 947658690 333215668 389597113 545030701 912883292 768360075 351527151 927424495 532934355 422778933 561506773 281963541 449163409 938948553 716479872 205951361 758110105 129325889 21120039 177179824 326847776 166815570 52359917 811336702 142688340 365062985 148043781 135099615 450453507 555827257 945403941 258402707 139354055 803844437 216543912 205725416 941713031 646534844 745542885 23361508 342649661 392941530 732468195 33613742 898261047 676324171 652420580 324322445 133479386 331834628 113560002 147685975 845219408 992116699 960992156 677230182 436155222 656144438 336404154 723782608 333419914 407914563 273026349 707455832 134970642 345201655 116201444 913589092 862014415 87208596 368522473 666714779 522694374 85802681 484818799 591974668 78299275 779822882 68931200 411381078 488947233 268443112 627366995 789273415 916705345 952370334 637929747 948616753 290555520 595650241 996761333 795396101 814347807 319764749 139566149 279459571 565621312 873089958 80421877 481657746 153180365 254285722 849679207 253627825 387936945 941997707 215881102 239791785 708377880 215686260 463587773 489460726 761917194 555896900 168480818 887264147 692335108 624565605 905872303 95516984 206799741 475891045 139547765 824717100 644900078 793813876 454769420 242494788 932867544 377882998 789594239 449885189 34719672 860913451 288177109 264818816 870844032 482322770 578673203 970275658 84012258 292027325 31714907 713219425 354350559 7390268 597786355 514172562 795537501 317202801 54573312 332434061 823999351 330297880 796630952 301386975 511304126 590563948 842845943 568645555 33256755 662315150 574139184 355205979 870125158 760747668 746645214 697051415 619732861 633135968 179189473 579436360 799693470 459754468 205299599 528224877 664551886 56528959 819372396 763546790 959949362 726320386 653047894 9211216 192977956 396005115 226733666 72477933 253344971 920414269 52169471 284174441 372435021 171128137 814067410 531225302 264050743 669471068 836885258 629911954 557272405 756162502 436387954 678566678 591569883 826702598 402382863 926835373 605302256 947591511 810988182 175381372 497692518 859246782 511678224 759810739 408204461 359103734 453742245 377246230 710297891 391459281 38525712 423336216 168627286 328250950 830232471 207623195 580144944 996186975 580735170 914366574 311651720 46262568 111604708 726802361 908466798 803313409 450489476 679212161 947097179 49106702 145149487 546668761 297228789 945379020 906973548 843401079 797015714 747584278 650644263 826527207 605543919 995822585 894774186 753070159 25030447 480651940 209257496 66720755 143396284 691198342 653080368 39507171 778023447 692108236 640878692 725678574 912217589 720979610 398687591 987052216 530027213 689765044 20668208 873474513 416285313 431273849 119727542 479811991 241663537 684606570 621678394 73341173 917012316 927051694 644535270 301746775 599670614 405034702 239381103 592969623 997720170 702776351 875281268 100311279 986032571 123872285 813009493 932930884 881847998 500872093 410513287 657101748 484588788 314999628 575859951 945299209 907329321 710471328 186310516 329279214 260208159 270092927 541264508 908158193 104966761 613848915 601968170 756937109 737766559 826521927 720240901 45931721 790426068 514681122 721603353 670420237 700380900 335336166 157109904 53573056 675988014 669210586 228603338 868930598 848991533 513065162 932909014 97840524 67028059 376246584 410794488 622134618 954144400 655549303 302743471 557966981 800099093 40972104 681796643 492420950 511615298 173157603 276323798 494764284 533002948 998948952 456175067 650679282 534173195 535284671 946108068 813437889 424732618 388516867 673511720 761221378 858301539 448107704 266340177 718433766 404448710 515624209 489929725 256286050 695872358 84296993 670277522 74077463 966855915 919923758 965547547 183737091 330264172 205369084 683500984 963496942 153273344 743417857 710640018 540326266 458092661 911902185 951902175 733159910 875827834 14612766 326679888 467056451 221156833 615752345 713496540 946284385 302355573 363168654 935184663 240210017 877342564 234165832 325408721 828195805 290753064 929651618 903753919 429870650 236174897 652535354 616252076 791442005 94867829 862384424 581609716 457345817 156118983 195935886 346977481 262799336 876637800 890271986 962178053 119082982 1199527 819626001 643717971 649607338 277944693 189271486 690259963 748578341 823553674 433930885 285248310 180651703 402293259 855746557 965656325 666963814 780632833 431160497 786877343 678420933 8196149 899353995 373098283 612222703 211722752 329883785 133572200 857918253 53855064 955045948 371497307 420459154 513767540 126097504 3870330 101956860 707453763 711658131 881938374 184764819 950052098 982687644 757721148 704204407 11192091 166732288 743190652 195580085 880262806 427955932 727102367 159398666 320571411 829114410 158544628 718517359 3083970 3729065 528048306 511769675 369463731 908722007 893826482 646384992 996294671 923351128 354906446 646485591 913651732 566897405 666336622 106261300 136280837 325492693 243604011 961301979 106408399 60050210 191887179 724887812 734279502 745592862 487683217 775374413 348579917 208516784 254269199 22181191 379196970 460535559 710268795 756739800 264617094 874188798 520907926 610753065 721835854 166276075 428175904 774179979 33479040 984152254 619739656 835149627 337133997 833622896 964036242 760261421 407340386 231996857 147677178 824306501 47102732 212050817 293413834 524346853 728426698 794834382 947290525 3942015 598009288 776955287 73432645 92711868 648204926 823248741 307417483 167401878 724018414 797230287 49769789 170859238 23002441 78641294 776009262 633772494 715998824 381902378 431226238 456480006 66732897 476199731 379777467 725682113 188183976 311790657 277519517 532564005 408453451 421977695 511103617 929997742 439519295 646914890 783220765 75325503 62296722 311326304 225206564 799156583 612303998 435344100 200193233 621775094 302704355 55547162 630986636 733592394 229173433 911785109 668818654 617268363 975236391 725532159 663279522 842286474 841332409 421621456 809239419 350785829 45610126 144876751 642340625 630105123 797264641 67960277 673793756 755920016 121841563 444385121 136444666 493746416 109301049 763165414 692447548 622547450 264780751 717431079 39608206 215903642 329724279 443671361 480677853 621631249 328376717 361007455 658990606 33772029 131652951 852558412 647374195 690851275 107342700 33343632 657651079 34321357 384442657 957804955 758091857 521012970 629395597 536648689 272142128 431103168 294760648 492479652 709980889 974156765 695771774 516580401 705211495 659249077 720939346 968158502 793287857 671928723 579004513 912759471 318265641 602131284 390014801 827618138 262266152 61974084 440398243 408532697 531590863 587522239 233752548 766911896 871657456 99095720 288032554 119239414 953479024 814446116 84638473 162192211 817939961 591962518 870881906 137486236 323599060 479796224 554709671 506631416 882668461 736741918 127752500 388572197 919015022 420682079 420235648 536030937 816065980 309132293 838265062 752346642 607640974 38625312 321976009 758702410 354206477 455479007 321596473 558949888 231622175 980200072 219498948 732006637 370499929 736964093 777629729 419625771 570265065 856280177 175385146 682291605 422806360 310694609 575789753 738193798 422664628 511174140 799248507 467365803 204776982 308015913 77173426 554073244 113407385 50367060 413858825 277208833 588785205 717878321 222597523 811051685 680944931 391211186 915947617 332881688 132235342 323357464 969733788 43587178 431679814 610889234 143115386 721333978 681955204 690285501 146938543 272339161 937730462 55586278 319692905 641791903 946154077 829393343 996905994 141004349 733796149 151322019 600096717 66100570 345415784 640201886 404688951 127850743 147556837 976199196 275509848 652150461 906438260 698934010 78606100 9442605 827704370 211780309 74664705 334431068 434070176 52361303 529560071 694830921 448302058 829621794 174666995 718642595 440818221 318980970 848962111 533078413 296239475 246632196 693458488 688486455 84078939 556683145 401168579 846448889 985393350 252966432 101723432 228386870 354685901 890915375 823355006 435610443 961953563 145636767 747750015 859752076 403923192 495575361 243339976 950066054 150610992 763491917 326981292 652138036 949220293 316605819 620176295 359799247 791244398 584007852 800155618 686241676 99144483 114736316 950053823 398390707 167819716 578991023 27135732 764235062 515121318 431988599 925426550 203002799 487668635 928278465 333960376 492736916 415386518 753744089 223189559 79223942 150145590 889684796 558241926 883863140 154644195 776219546 487171991 162517864 993711040 494679929 336536652 300202470 661738442 722043161 83919685 967486761 364381502 444717417 676433894 439285526 35332344 471952570 60202071 584763372 733327689 621293342 694972966 245271753 178744207 279313090 252670585 877547569 222238797 238068492 301786976 228844125 102148870 994637023 806419721 680893003 739818747 432761705 375088487 369869002 283977163 630236265 731459014 650036601 146058003 707993569 810159567 34409282 103400652 10541517 480441695 289589589 769656847 500868457 804894163 526067825 361391609 130391528 992372991 303008651 424967952 871806530 891299438 148782880 67549912 776277164 184520249 851597609 217278257 505021690 138730200 896462816 384166960 754156777 891188661 782859823 127829190 16435886 160423978 109848354 294780937 390087801 66289668 721258209 802070339 906115745 811665464 705433173 568496234 475701742 591825933 118251810 828671524 84395658 905064979 792195633 298414417 580183588 400548344 276693576 168821060 593702537 816483056 197411953 737542214 764781245 66023780 122832229 957449246 612064500 896315247 491018571 415519647 144966039 97531776 941712119 875917242 437950470 669202989 131942537 142064886 726310577 801176462 999714615 157838172 645291117 354942016 538392452 546865043 103008085 576738817 935532957 913237550 295556150 828078806 172457101 94600096 78385120 866583518 887013692 102827373 511158544 142212598 811414332 285019609 343024081 517671415 675702989 598369786 230928464 897683481 862412310 683609051 84033637 419879380 473245724 245449312 431086948 309918009 870422169 367465059 322517816 431243708 605477525 102288493 738042149 557319208 834635794 618025779 623335618 540238598 905559713 440997236 723443937 994915556 459055415 14645609 233999736 71807626 43416492 478919136 107762886 798687657 400689112 680823540 384087467 342551886 762363685 574900519 875237574 222151481 578222077 836064481 484574661 813971955 845596411 63595152 727956669 204532031 919687084 15983270 979247708 333504242 670324966 144511159 553197288 277676925 248140118 119953544 213740208 712530038 567865983 538227689 701159231 347385975 943760562 28588183 47399670 524198738 395075192 284071178 254385917 351758033 80803402 171441112 88549803 540782989 825048329 339964611 272116423 698224613 621906540 945677668 17279233 138006473 679723434 815643525 417384333 485021594 960488482 21640360 713229447 688878528 625621833 161734985 852267525 558386985 195870356 277284061 798508523 939707467 893287621 788101938 696814868 95566387 147033849 291108816 732631135 753460433 712920452 661163557 704670736 978019219 962563549 666401088 62006600 62424571 16710088 748471535 860517500 176176306 817624422 401546001 333245525 291161130 154919932 414788495 251488367 639652399 720051877 290109017 919286395 32251839 766259547 678435650 122625405 445048350 689551310 96362543 450719522 59247700 446366429 305457016 969705950 535762863 671142128 744238778 268961070 666665824 433713896 933568581 23069833 880758201 894344771 554162845 639692226 968337056 605200496 86391502 206238293 98398020 619742007 769671118 713285290 375849581 556312645 359736983 430501286 899927691 115010987 795625274 218686171 518487000 954519716 367352883 395626334 752135679 944698936 16359156 253828701 184461946 358445067 855076063 206089934 991038440 971791226 551909208 134776272 389926539 570411330 266173964 819381435 5775033 882431637 664257703 34477503 719129733 369078775 887872222 749321235 543069020 676611760 184080439 833101586 978813560 825680432 532924572 570139594 303119835 366108229 202816588 354323236 542814319 281040170 347567035 536633208 75871742 913397463 592184833 615361293 293885779 514049700 69829842 51892433 316174854 445060094 315555756 918060359 825835013 451150790 157067795 861836802 704355818 268267662 203846810 996290139 354562508 489176923 805674825 660594069 948459651 478744711 50982095 580978143 212065696 656675194 368047812 995674909 636551353 484296328 413074669 170923790 955067938 581558906 766022335 88674692 965711608 635435613 285745081 121590329 542584992 637109313 587002792 342649524 685944675 844173615 468857108 723256830 633413570 332414568 914202702 849773975 426962689 179008113 532741146 715773030 720676178 703488973 779496423 442690284 933270795 840842332 958676178 515456987 642510223 351980252 130254733 759244566 133036292 75898618 818541443 205216329 887365296 605169978 691784982 977497378 132269086 413192216 804305718 6709468 126188220 574591584 312371869 704869329 17500248 571703935 88432184 876264635 304185206 276927317 959523004 825405339 910635626 300793042 957842379 434044476 811512077 602726862 992975217 289025003 790816203 44084610 112140413 517675122 513955509 934652571 47932043 119674374 948522491 305343807 795194331 434102749 496392899 87685191 742020806 67368099 205430863 324838672 347522926 510311790 795237789 843549495 365188158 984534780 328170352 729940153 115249100 358343129 523343017 185864988 963801602 475608555 700227565 870014422 833381714 533853781 49730854 361276291 382632049 583187634 172382070 252622387 251810783 160721736 211423136 131264297 526267109 240049126 483781380 259640325 93516895 782618363 575336341 383418523 358131406 793134978 324294084 696302864 345054064 244448054 424964332 762368824 762215141 450021171 833966811 363787168 78472448 184131448 651854865 175874128 527334164 185092456 91114346 330488249 392007363 101102545 126795124 560468841 814945403 49366012 700588794 541738639 510625095 613262621 215162402 469312819 448836740 195963818 186599869 838467766 123547955 283248989 849328751 45398790 300137885 797881790 47685080 52380281 423300367 529950912 481483533 615509283 227276660 668651223 718066003 783603299 179257986 949503509 384342350 21346251 196422838 429292548 865808216 544520908 97132836 280876752 180181422 968745429 669060373 123408674 522604751 300295576 902197591 754424022 387100045 799331057 535688768 993833150 213763581 544440306 118765049 238628492 907436369 511586014 24238233 156016281 757713130 704075500 727960079 891539115 96472271 248354734 401581105 926878085 59232260 174780628 201757291 53067847 139724327 588442218 560350000 551371098 433741744 437797101 470460247 84539671 791338956 911027236 430686039 27047453 768522228 574190265 275010002 450572337 749737576 956680939 551713269 921167693 654194875 225745254 521112276 606610480 126217195 24678840 288758183 188120919 881093812 131639171 598869107 765030764 6336483 630041299 312994578 634942601 286515120 326245739 946813620 501276315 217907982 75468144 798356871 239329461 288085234 855795636 736732072 548908940 90384820 844673671 267068575 129878009 316347359 781018009 919346486 795315145 425434710 374510914 512857684 559148950 793255712 101111178 898553111 717873562 906962843 78453008 139072446 856018931 410290564 516904384 307572071 731973546 723027063 294971559 983406371 152740016 720918310 193354931 124250080 249886613 568545265 412523657 563772061 192965606 434865027 484996692 327806018 536027832 226382328 490407525 425616794 959372660 389926476 653744458 690183951 613275014 79256100 354020014 78700117 821136395 266844610 399630451 643648650 609423186 983362516 82115629 440075305 284172178 780207869 692259807 188281615 868063879 849514562 661081388 453293320 82550057 167789919 779770890 599139643 604150109 426352735 446513183 251615332 679301255 155953416 156384049 250727306 420494449 561846749 984507151 19450837 207597051 175804887 933921670 801476407 923729782 169917863 67037386 987070404 921290578 452562732 965215745 439338962 946094925 514627300 966611231 863563814 629128637 123844187 372596728 30355851 820046869 487180723 476149997 634361883 596890158 859460725 904708783 130727422 339739790 15688190 676411902 226488599 574001047 495377984 632256549 699601911 358987741 548085185 434401546 650882706 485957964 430987148 543750989 239206558 909419261 177703161 86415085 488856858 540071085 862876233 209337942 21548114 276190196 816157978 889793385 354878576 233244903 821318355 393342315 920578975 309971822 149036580 549916185 295578207 260933269 356340552 493746151 703703398 112180766 605012852 346491362 238793515 510704944 656904398 579229821 686654655 657077928 562025117 246984291 806458103 473498042 616561000 98058985 323198130 867730592 119437855 847329863 70602965 539890947 456560923 864985034 613014349 73128352 415990499 619892038 269175035 510067196 810594796 604108354 363219977 19418739 203438677 235913790 289092896 982532110 389905410 728375336 41729367 774935534 171338459 955293281 784255221 786541192 196901547 990615738 409221511 829736982 35336750 752677683 628160996 732030515 707213960 908857780 894643469 399637452 756000307 852339513 606827178 137386498 958442272 655161300 400544767 689229617 790570143 196890911 106479029 437009032 779513452 578137081 573698185 465953875 347069761 443205769 353384565 714690694 913459247 272220977 362674984 746368451 804385958 727289004 202797312 659791700 890576361 328171425 254196692 95618030 303971645 478026604 312147507 887965278 712284136 601640681 472987818 121149395 208103877 284021598 80493926 969226020 533561929 988384506 268607784 422432350 742008990 208868435 33098446 440665338 974372182 856333295 618312213 693971871 65637731 400573832 578142252 161688950 960399257 803797845 314414168 914012436 10904018 878944757 58641663 21982052 921787875 407029119 952022766 835614026 456136049 111020459 898901615 45668709 252913626 536755036 559613533 311072894 519229806 905705519 112867746 922056801 626734988 279611979 128196703 560391201 244698118 705974429 540146225 227491032 234988704 986901448 965996958 425402697 68099190 295865925 668509882 559002565 610050278 946345693 756249240 212414668 234399963 269274781 751414501 789355864 281677428 995241735 840086105 877602723 926349362 495177826 880213320 706586627 667728180 846870877 696765528 265900948 358059697 550217927 752866505 708011699 541422210 891761353 682581856 209972816 474343279 545853919 780599740 673553046 174052372 889857719 176234815 883890923 653917176 824685352 668859713 362521971 694358709 618408211 523913674 851183944 784890117 954418273 763624983 131961501 57148535 146406166 562658131 514761272 331027719 936418707 920105170 680579678 795841388 154350529 828968245 761851531 584168636 867588824 63314590 531892673 263135414 197627028 575079267 580871547 356389581 433678534 793464160 885687752 327445860 965316779 242485945 86757773 441383288 53586699 217632693 365974927 445011736 920363973 813726693 695087775 370938335 229135908 199452585 246302664 739038959 304499500 142877864 845671018 257596477 912776816 278070914 95914614 560368960 633894899 388930185 933422741 501975592 90334580 441916717 588641065 428637620 353513706 62908242 260396303 735387667 322287400 720700746 546683683 470317723 554761463 178570505 672040354 379805569 304203907 153843376 894914553 760268167 734068939 338525952 289763292 217747218 41602154 872761789 659736994 504800282 44028946 183002202 342574328 300454199 243439643 536472158 730596531 977570147 572317396 19590905 94519660 981334317 447781434 257914924 845038874 458524278 650310282 31209500 406308210 973601868 668626953 859065455 845179025 166009107 249818314 860087029 872152101 522852358 292005166 731616113 585351342 730730020 141494955 766951956 992312596 353292678 679434513 544549707 772387401 672397168 20520251 577093903 597493744 65161036 147785308 298509580 96343677 49322895 932946610 896831632 726856822 716454649 566334253 965839042 927285704 652179959 718502880 673354297 484562651 351723707 432936871 435103968 332058508 837966224 189335235 834382239 682598827 715794040 869756387 921904037 706945996 754347758 819412933 485995502 112185794 688732826 37295912 709857065 439121933 949309968 330583853 53536720 622859230 407321458 309461761 472921753 986965150 546263027 503734931 132568977 671417487 946257277 763227943 901285080 819132370 553805269 820444920 34630321 443228779 602979697 755210185 184004487 325878034 776354221 671164036 256817825 459954858 804033321 283919312 325768278 137493396 308897025 282067347 663368625 924626303 186015731 423234423 897672629 733915514 108440073 623314032 521570041 38579203 227359128 390880716 594494417 114174549 812759280 72136252 692440895 574144652 371857070 395497334 834479444 848990191 302190973 72096192 119170691 102280869 147793266 686225546 246634156 193539553 184461533 89987904 881477463 314424715 927761618 78737909 699163804 198088915 302457421 810818084 220429279 41034945 132193106 787808176 577516455 883048495 352919872 120243290 618986996 33139625 698473410 840342912 529351246 350186434 679642555 524376191 501572641 683745925 528503081 423865368 466205909 128067817 454261151 844235327 108566300 845610749 391804946 925744395 530993752 420648787 307487983 53236741 665297113 723363791 210328947 876795525 871876644 592575968 279780192 298604596 873702150 375360142 156465333 662243512 942704107 386992744 188656583 954883338 155967961 428907792 397015259 608694446 654764069 41906188 646998970 112243625 736417217 42973550 309987365 886116473 472111608 998845929 915272794 745676900 895219511 701033443 507166432 16043741 123843116 653856492 626414586 61879381 292776881 806620436 723332416 276722916 511751814 520744547 84267908 614293084 628487314 523489586 115314670 208023987 131330283 423830063 530181599 27788133 511314386 35429304 585554605 639352730 644550240 953923822 609050021 169640341 953765200 797764215 375844459 844583781 875874231 557620825 231193400 539213747 560455126 239236193 750226555 471048758 822192077 101589982 31573750 875937477 478730554 995775541 262202130 306497287 717247839 895100793 243094403 889692425 258604894 466065119 69393529 753835065 504308353 775367721 209874941 70925290 904538245 777129078 46422539 4920760 139317252 164130382 938437013 309697368 494912399 769899512 51758452 191069471 324241682 278565709 130922231 877891149 893394960 57782049 842703879 509797663 735490458 818467594 819049953 735077391 126968053 426497810 195947306 810818227 709337893 935131312 753020938 894962144 647406696 595405077 566356414 839185378 346388034 933377048 170720822 507751088 759001408 758763440 799282362 18370094 314121600 215480144 775191665 575947036 12231029 339205308 810788922 170619369 129495192 947356099 653325936 421119292 852775183 388585456 11299975 781579717 228722810 323438781 231592703 3763723 3677381 901884206 698094884 352214344 369803660 547957383 907864122 741011432 887817311 111558706 326495805 591816962 416810067 463151390 63195120 369023589 195633355 878556034 738722521 105119473 291847727 928799792 775345481 802384694 229272955 742867734 490837232 628839272 781457126 936043089 423842180 367838732 24232704 420349606 925003865 40861910 536816715 656296107 211741745 164560346 561811750 389735628 89624570 13439165 837998453 273852281 169686383 664261028 225530928 777150317 101561987 919222999 98244721 525020724 619306399 442999010 968754172 839209389 714272818 270926229 327193061 112124810 18158333 589276310 415537350 687891265 511454097 633853583 718964525 493937907 382865402 366691870 124807778 614104485 526458666 207978386 254596069 249376223 433470555 876973411 919456846 726438246 787050975 477232334 992878334 964381233 814952243 892614530 268030520 585636387 920963704 395068910 684550372 105795632 220098298 488272220 315109369 108994661 294091119 827356988 284587502 457798987 146814455 987251785 54646448 353599834 510178111 523043863 192387123 976191435 22946202 490240444 937398064 604692107 160163631 903609096 148612426 192333558 774221915 623175305 791294204 68441734 546917340 245459444 808785746 901171853 758503673 570894521 350030532 717137215 499624311 63646926 861256346 934883710 887770516 152749168 93489292 374745143 554895722 655256583 34140757 739869732 405596511 524232210 885310545 378575007 471614013 21625040 299404507 477535195 82411350 732428592 112271466 131862115 86736054 409717953 315630044 852058603 848826192 4248137 667260583 464858989 822741300 199490851 951315758 742298335 256749103 671088469 42842914 985253692 393238016 484006920 496627821 792561156 980186707 360414664 825650765 597413962 353205996 252860852 948181011 817004634 343064037 131739022 233940029 374751694 852888119 900682293 204583331 896638797 744400254 646278270 646168636 17430127 616203139 114984850 204272755 571189246 167341985 564475748 57734772 878671640 573105740 169688356 292916160 810283027 536329512 865387981 375094598 741307362 126404496 938728535 436354228 79936466 751913276 249000009 5369930 910007647 673634399 90480687 479475403 591103370 380352692 431238444 70757821 841350873 942765467 519905648 138759348 316945509 750023680 772469598 432992859 727933949 416722435 273758549 693784219 229416019 684745576 558707289 142769118 683687104 347481759 112700686 187306743 918705172 42370810 452447109 49932323 218242140 314866621 723203084 657923919 75216161 116570176 675109115 674313338 728360938 918210611 661217237 71819143 69673300 386397334 680651831 285673554 261538762 814694120 495406301 520867599 851472250 890657192 976449353 345281386 606564103 510318475 276232296 76277696 525731438 499303986 579749177 743167790 10435262 101776621 332512389 991104246 646291077 521646691 174172420 620731840 458848079 617494865 879264610 692545703 526086830 814839160 81322320 330997251 273327837 639534042 7199930 566130442 842703105 762220806 870637398 672636040 393690416 880747452 608212007 402262207 702651255 618036984 584955666 877279184 38441041 837514047 750368127 89282415 444155438 533189702 75427060 560875235 329576143 679639204 514421848 559554413 360382032 648212136 475731155 312070444 897301405 296700603 558906954 433220285 258583796 560272195 727266422 713105574 376880501 610057805 608023319 702939508 152054415 820259954 758505093 232803745 502936500 237796590 830982843 486091536 246102294 613743161 427685736 490664865 605365986 397703674 511070261 370320504 79423855 156687897 627202319 962215305 239157880 90154553 449434205 989917930 930575323 562611760 540979398 557535080 501555939 613527286 942837895 100958165 18567032 104947931 331073973 877527979 749887502 543818807 127174934 329319143 74797435 162555052 78168824 594502701 136289639 965218342 838185473 921455689 956067609 768322406 563576136 866044216 158977169 779029419 140005103 714392466 880087541 857963221 386866051 248886241 265459334 408804756 708050566 886775175 668828364 721704561 465162332 529474044 890149039 182812683 287180302 906728800 470505497 812777998 439138728 635975317 696247202 253986277 373775271 753658034 700810751 215671614 887895597 983313268 270190171 459573243 733521810 648637336 749802602 945732699 559170070 5598813 497557661 198427037 373871698 535832915 98693027 266559355 626803937 875676250 773393660 474517458 289819839 264294257 427550072 944046103 237969682 909133380 448858362 810488105 86498684 110160344 449264999 934618286 748687055 301211192 739251781 316047866 150796059 687344201 837658994 981419854 508458670 117152481 945270094 740593347 652313760 375190248 121020043 544703151 321909615 585855050 850205999 259350326 133425369 570734710 632474085 114194243 854861823 239172810 307903850 3069514 77236245 173484590 397112216 402340495 496307861 288262692 512972586 243640340 928818947 751150157 583792037 376550072 681554530 111994995 673118865 460891049 919390223 483555772 316371373 117498803 239931150 333617088 694451921 594748863 514187886 759342303 512863132 946015729 120689702 636592386 695902258 742705714 512926930 128708061 593248281 947122576 577550706 735840445 263939410 87886499 900611247 66347290 919476230 613130593 971235710 380507873 411140524 432736822 792494723 112270758 151782091 923370660 152276058 282652795 191119812 38638646 451152258 749314680 103852832 621330560 273640431 351790007 545950596 826421909 766157907 593636741 882984212 919457118 255740023 130971564 888495267 981616030 201512641 104140841 990014427 691618019 499021879 338800868 440110783 292796499 432174158 147286273 490779353 340657920 956238999 600792197 203159030 616753556 106492069 72666986 506637421 116624468 538189031 680951435 498192162 228351505 307867896 994403955 396344823 885070990 517044479 487456890 867687012 323287933 369199682 555188331 443012901 546871741 909069833 7957182 524091890 439885861 763539091 352192252 625193670 492336505 717843794 115313193 399099935 775475032 255279336 100075535 288942489 20274747 451075012 714840224 128852311 961707017 388812946 707396736 431421856 244145906 303692151 422753356 787168292 101058453 112446149 797980954 965611835 712336873 467377937 879044888 443143183 988586979 798175692 993857211 689177064 948551157 875619911 189215845 472789334 844521674 449523101 24035047 139469987 518147858 704677971 199382315 522424664 273360104 96156575 941783466 488182602 236884891 826317134 219489074 159236510 655722488 159492138 457755910 106995645 722121322 117890238 65737684 643511857 204384630 523631762 353508289 59355242 185445639 314625757 366041621 91542405 859215404 794703234 533026721 814164291 783507614 638005210 882427651 246419601 186874859 866745776 797842255 510036739 636072992 307544985 9489598 506777140 608646065 906559444 261770349 765129588 294589815 370069456 3196885 389810869 892407776 658131051 775221484 421236932 542273255 715160860 66969187 381702211 281242525 796678107 356402391 576766577 513136388 78669093 739349384 353853990 527137587 655620575 566733199 223178732 780261354 630857672 931739602 889234405 25020772 663340089 936698117 315010991 244710079 665475971 982483786 919801801 937229876 270157274 108854004 110803409 47742987 690210367 214441754 734241395 355107739 198983605 183522206 576828412 195653138 596299986 198717638 786286084 442745514 584616381 890997816 995824073 684804843 849051262 786275248 779213607 127793418 665696347 754464570 245567209 936575727 129294384 588030759 201577513 282403233 229273279 134289604 449315741 582953745 47251816 132909448 95714274 750902866 224886877 867845870 570768658 359550211 590414542 161403064 836517619 537586092 920645096 301116286 280847867 67536031 355399230 29907630 635913223 362908612 784534469 757981383 532042163 386115794 905676233 535365901 726793033 454915832 140737311 625265668 85208277 871762777 904824524 14601563 610862439 656195331 526487814 532738417 801087740 926744269 290941461 787221154 473955551 963205175 327633199 380236588 687932321 64760400 61052325 66507866 487415382 15177206 956485074 531136519 650458954 282217869 675526633 372800085 210772456 122092339 480473745 894457712 232913397 158482867 257572581 525401967 355859202 671879671 34912564 818878676 527992819 126551892 520732795 97061895 644449859 983345446 458565866 973922123 787043189 328980366 631034936 664176931 150231138 234709328 579267551 674442060 584383592 973607816 418960406 790951802 144370674 847601746 722090683 382845258 995386804 673039763 208514492 913046602 288562663 655430967 673180346 242502444 351023392 138189506 440249414 195568415 529633789 379335134 517328223 785870413 285405062 443585130 15303557 487363792 744165664 837535562 861290507 598480925 520181401 487455027 513788967 779255899 760463217 333615368 34391071 94980697 300435213 895997536 33360222 60324565 62972395 983837365 920397774 820556779 360321611 972302116 884666711 41828463 568565435 265171295 621273026 593091501 592568333 250673580 671165680 609503807 322061271 184492676 172773778 116078261 950095771 945732044 15144610 942934857 357842561 974877170 445256859 373864575 115725840 137555593 680114882 97782507 35938522 992578020 412120280 959189583 225464702 699462435 988789248 939919810 639317632 173568362 55714173 252385205 665669426 264038322 36600071 26574968 865788646 532279908 261646850 458102831 279450880 162086784 201502214 804172744 977485983 260275798 196113082 269059157 866061483 64897768 210246246 853953106 48189644 589761539 646021386 106426237 222175172 867744552 407727794 426042718 362703434 171619462 950576239 71184143 269768342 359248230 622753019 197831114 824628228 507921601 664485774 137855366 31628586 112982650 276170799 336445023 981665795 257334065 829734256 750836782 984202183 6558163 67599176 357517503 678724217 58795447 775478040 910027604 651317718 424439883 878105800 171360279 937140276 923195770 460141221 792387741 884997342 109222587 969213679 751105563 699990933 646992677 632338398 77182403 642065428 51647633 823369158 18761836 19143944 889126194 91439910 597737842 921118739 163520428 739863306 593953848 596071304 771928306 761308624 854255134 80257629 573795054 712794345 121080355 104902507 965485764 310833215 315155715 981632119 383196537 527752011 27628304 292165281 336981526 957543787 92075861 292792264 184003652 162991710 509161566 635590208 810027398 884388835 180804116 344262475 768587393 806186311 278144983 229281509 721035488 197877393 14459117 126178586 984126462 897870021 981762858 489082556 839561397 437202341 202494793 898438934 97866644 771662965 221264364 273716990 497321464 263848923 211236283 962536818 39722090 183968088 131153310 547542203 968540005 193484710 162730703 141040453 152964669 760100264 140023866 570408752 119409625 929856475 229889692 363633379 459561770 541614422 468455819 215781964 213653318 819294587 782667480 389938711 881180811 459223757 810036653 577071142 942909791 34610835 668884354 45227643 729855504 585534915 314820497 665062591 573272816 88305887 52128810 183827177 60624598 991817888 206870586 581647117 436592258 781710711 383747245 663000382 484918061 503361680 486812379 239500078 261033350 851593364 413896175 860948885 687636120 25993890 570287633 663296865 173917467 474404834 487895643 541878439 54076961 813985322 323871910 299712002 736673188 13166233 311520848 542103742 204561777 414110285 301630452 720319917 463701920 642281528 261002445 296997675 187278223 219230266 972629720 684233623 404924212 887914264 193900815 101761279 409923685 957233757 339358024 652817412 98383107 337462835 767719180 974030075 214450280 658450780 315073019 468805856 599114299 672247051 161221955 974620807 858708224 938053320 44164175 530939954 217065867 333779020 891904161 908931456 262711298 442310924 596923102 585468611 826908768 591666526 988195505 62451992 99788341 61793346 71636849 240657925 126445676 132734979 324382648 150476846 267545416 878348988 875107299 538967800 27518696 946354407 866080993 954934223 414256676 210879128 859424984 214918039 203556734 986160415 218209484 72068851 527174715 548198309 122953562 413323506 966409570 260003766 912044841 613234477 102534947 369332455 167849818 992387623 827719898 586338343 668379718 776681106 466875928 666314692 727012975 157991897 191609524 496715743 67507904 910692569 807560603 540104484 404579636 315519272 295862660 245884983 554772277 731539422 88505936 57367510 467321680 972215025 861119374 543053803 939733678 170991097 807615571 164460642 967625482 297496185 41523184 28216731 704737981 258619599 875302367 896182958 426304320 783687419 335148524 406588150 27564777 379919570 469475241 518254798 973177189 488544955 223001425 70346224 84070997 115373282 565779506 826268915 423090606 659524848 392104285 17492678 848115424 761158837 632679783 887406716 108518473 818530332 558648335 341216164 963165688 317372493 295939497 830885106 683586239 479329902 616819604 206667914 685621628 753690934 594621247 886184735 288122700 469203954 393601266 126806156 31909714 933760481 884465686 780109397 432834432 839648308 123812998 949188957 548047637 554497679 951711440 720420321 352426829 789497462 638568671 99953511 726076602 755110302 105851496 471484992 2101772 798806806 981945449 325650125 34407446 833776996 372382302 393631131 403574166 529153175 7071579 570798722 930446489 902250658 676472529 951160582 593155252 519105916 462717444 402786 874848373 453765363 921273354 256226939 980401782 279935921 632154029 315534628 583544491 67865141 471182773 462929954 827646442 517010085 172153955 118452949 416521135 236431613 563887032 293214994 517768426 16786334 519192196 767327472 550422121 105835716 473745009 157246006 8616468 174969742 836648160 331243771 932694551 52305429 686242101 173959841 861480589 487725670 998014419 338334664 235382416 130859184 985601082 478416415 591391456 678665428 454705477 872412906 451457565 230310187 943822660 845074045 520331639 287561586 629635910 47883105 549146456 504327380 943536572 405081978 705444482 31141523 848390993 300070239 38503799 475658712 390528709 299805312 457770750 760801944 978157226 623846262 848971225 178533209 874523465 580124113 417603052 200652435 355876503 409587369 989755485 189152398 756288627 912428415 718990107 805832671 928266139 685280049 418631413 760337560 301897379 407661236 365835460 261358552 948601559 889829050 474214905 126893348 488602203 336362889 143524577 140063852 62739245 579170332 827866687 19196972 309743808 928468335 542317504 640096449 216050041 609616798 102911340 84436135 558030944 680835886 326437925 270650454 484178897 114056249 510309070 69751467 879135867 872415260 541725516 802544520 466962953 989879273 281366547 355470084 862697997 280856708 838138071 305595082 617441879 265104443 272981054 609240881 233792292 985926653 144780872 303398036 881890872 340099101 842829645 51997783 949578389 120653705 825584593 391158597 232561787 575772714 339012769 403511216 97772434 933743482 280826773 246416859 568793824 630280933 842065182 923636388 859859351 819213568 35807479 65062179 511304470 402437828 64798556 819619399 646638223 280227472 268076025 407272476 387713233 424125479 828516719 961865785 939275563 521133076 723412818 810147099 751734323 919592356 870462641 874720269 844536475 922201723 756292505 169924552 450670052 903985336 443846326 359053450 796307737 70257725 737169298 523790604 342437611 333137147 543022732 381022820 301639983 548441532 891389965 42126460 623751422 647551876 517964124 456227204 65113600 389767731 757624103 489308491 902916688 8242262 334142695 413437851 427943763 603754134 945465412 552920657 157388229 765693567 233167575 338445606 970646299 874944882 329493216 392856207 136200597 996126802 886101939 375498139 838973143 163187060 858776910 972288841 618786381 930279055 824146650 185861234 388441127 664045449 567113940 407934650 506044840 245900953 317950331 990008895 125512746 509577700 322631736 116473575 164795788 993318361 139545866 512898389 255325510 1519535 442501553 733545894 227447836 728639732 17170722 44385025 860302494 86712934 61605485 655109523 593641690 595207347 562231170 758171459 424500258 918638946 684462421 725202576 41092995 465830058 428212131 465344755 568476883 750957253 110114646 628896192 584362315 370297795 905504854 1432642 756661956 487599708 858415184 957081223 170400730 781802046 974181852 71041250 526912538 693493971 685917611 313601394 395956528 172343187 884195171 406553255 120124771 275195981 454363479 95921320 259445044 987049113 91399162 503018168 671025993 302541565 575002647 39401046 685254508 349406284 906374752 484415009 858389590 495654785 491995677 910616383 668671309 281966130 833784734 324354628 918594066 480119635 819499647 424968039 84185311 482269024 36782860 62860968 817299933 448141153 763906843 729686790 952651992 19603067 782104448 729828580 904655419 840104530 93637322 549510207 61478179 284384114 381450291 999534475 107891965 681084026 413271537 975647381 788478068 875790624 662935074 139827006 244349252 780239294 618450475 53852841 573859398 444444426 275815756 889572716 185372414 696102559 407185347 478683089 806534856 958718034 798193066 533037657 54079815 250751623 598481095 813124507 606728901 23133827 160415780 666444155 585415003 147077559 90778620 121155245 163573179 198730697 312751347 528859641 141772692 250155694 566325854 995819658 121378081 300969381 337424587 756385432 233714838 616764646 166908669 514451868 301134986 204371635 748690462 117537946 78558963 236232487 780802843 850298760 912044205 892871307 445344548 975098768 322634463 93211125 134009719 792912055 451675236 563468468 448335745 407014717 156554590 407654631 543790493 611341546 729780441 782220640 410846982 970058621 875567125 917556462 192549047 204318245 562907944 826338545 468286421 552575466 576079720 65381612 431103759 782806575 529010878 936006930 165697695 487358030 358441842 550685965 111887329 50075128 227974877 503547055 522522280 250538237 370859444 170563419 547474284 590468615 20838567 234727450 384424375 160153822 727358141 834800295 149978983 479464311 972064091 986087580 738757056 589223785 331408966 712288605 458206004 889926677 709847348 785509734 703989321 641518935 394282661 257957897 481300087 460473841 22181045 704262186 560078897 91631897 656529035 681879991 896050768 907780639 155208854 561336732 389255041 670021318 123196307 677133564 695668477 789806513 697813186 685726937 629519261 522497241 555060705 231902925 903847885 861453739 117847068 992425773 735431569 920204250 122058130 627863464 454735143 990813966 312186579 587247797 190020123 317813711 587039696 582759498 881155903 673196297 462706025 871278576 241547486 8778463 111833019 816412398 701099281 657877270 629521470 478977696 405032802 649529427 670456395 211643710 2882290 927913660 15899878 412216272 925601966 342587355 304830507 252855314 831586729 132122308 305658670 709291743 830388217 935008409 569453022 994996966 292975169 773665488 199717364 787844201 60232640 510601446 855558200 97283348 679058018 170821495 834518923 833168483 407369898 680864959 686938816 471350193 473421789 792483822 136518768 540240622 182817431 120486228 888420055 731340662 465605359 400835660 567755646 126073888 836028134 787007137 530760263 585345609 553587613 762221067 514411495 422135615 518586571 317431448 969136005 320814750 346243081 983776988 97821398 933671858 650693613 314518965 513354957 559457098 231879177 514529578 275521907 716366542 539013214 501396481 207711055 678818055 77091300 830012159 384092665 876559443 422748444 189796969 321437665 87023516 571034940 371553214 713830077 595632635 668249405 758709686 395543527 136879096 715008837 821409431 11236936 610875493 583602643 128679732 367818593 178379630 402336753 973553375 703565343 655309557 555549540 809847404 377650160 261068942 4227996 424687962 333164963 24818367 43920246 991920173 517199118 297581861 248581456 925948623 306961145 515394666 661108224 716000082 828720999 103959092 255872922 266562169 512509045 896858449 915757423 666888080 629690424 408367183 935274144 656468920 633482409 788087496 996983479 317967117 477320180 511051558 321605527 764730679 467335311 930118648 776561687 308223217 548513680 669723721 939432317 997801465 799784951 290359395 1475017 888995034 102577744 642575845 188747204 864794449 932008476 674812716 309935940 39883839 418617611 518157280 808627285 326752003 273288589 252952744 810919319 841010811 753869487 305602949 945138488 472808044 420406648 188544729 356293757 928502898 184700419 264590825 168284883 669286759 654134920 28159541 929328453 574932820 190593096 988766463 644611706 487258121 907364909 27427437 598584707 629693544 994036076 341553488 936961956 119478207 437851482 338077624 181406364 852813127 52479555 319014782 534453913 104926306 585359076 322090577 703361083 534970339 207920022 973949719 485801632 887616637 925522059 369985617 33459885 233202478 515678874 203335399 234331069 492588278 127758337 615216630 89591993 712792610 986380971 787086815 960826151 594695448 287264031 919395984 953092148 92405259 133474205 991490874 433670120 568016724 219645 770433234 854224732 49030468 468746388 935811138 476733464 198827333 784055245 443855813 522345272 796634819 173357892 342690684 1569338 672577569 373017820 128065017 537143007 71614418 3909299 976954065 306055826 358764212 149850209 179013178 429371372 712308025 936927610 610942974 39277413 508010180 998392950 675073943 918656959 635687555 422482934 197574512 510334402 750934286 122955956 837114333 464918611 981037403 761251439 181174096 358059897 221326629 592432923 957571604 842300469 581002430 781536938 14284423 465770168 660640625 586393203 762107652 540709737 718167987 542225848 670841186 904409327 132803942 422492779 68857894 231855363 436798487 655794301 56157523 557084213 730430876 885429141 949332869 65651692 467675335 886357096 50478834 926591410 626942346 481872954 713861862 570723235 894246115 513511886 591136711 695937914 247272624 896004968 363066610 679312392 127692411 248592838 508642523 493205052 9820981 332517269 654391305 384264559 345195969 588133100 698980363 709818078 799502306 183871753 689942217 284441723 580409736 825539917 842089519 516380677 39218521 307081772 734159233 985582598 703731889 267664201 455780677 332377289 580056340 692516807 613342626 278393607 564104743 972645333 518577346 456022933 167544079 153389848 368650791 614585735 900332816 901934818 636661335 990762196 119471616 543985838 363049204 258731464 574982779 900318637 860919823 139070597 169023883 76345479 928315587 596678381 693253537 643275334 804479945 312457773 574760183 382377805 728625483 978383550 534442068 88237989 923593811 891980371 171391669 830144316 294194979 177586918 346368588 285252692 928902046 590158692 861890953 565487601 954920365 347983798 655335246 840282681 766516896 15602175 593121380 741484706 91465274 532762151 639326800 585031557 996177461 265747836 642340066 747788781 151127019 487537251 935339473 480416429 122379956 410005361 741302394 216365453 265452993 837713801 278834427 481243958 941586042 296662471 743802287 674128870 536640886 351164114 844682640 965904593 760895447 617464929 693113687 373863420 878567868 577535599 687085413 305427151 559167265 711562228 380847706 148725203 224976969 38037966 421652465 625442415 767001488 70586182 633923276 255055458 337210442 830125280 367695013 951353367 462800605 229587859 56749994 374897972 277978179 745392849 287128607 745679011 499529115 271966053 287616776 857686530 158885105 270598482 628105018 972828340 229388652 779020325 880035477 859853212 346857622 186040257 962028007 615689116 886027032 846789824 97326954 596968703 721845875 863962231 916214156 545973046 228714767 66786937 876597160 843445280 707131087 616050884 649574092 262881686 60406912 901281219 36384024 354318508 924919395 699740954 365574602 760242586 16363083 970955822 239093848 372695107 693446414 819616719 440069280 991583659 863272606 667963407 180027480 954509221 49369351 615825635 892578165 651550838 270322339 432248559 775630611 959315229 858847380 262046949 90025327 531475410 274990712 32122780 67977445 568441147 678040255 508930068 47189890 920392680 363710493 782511444 961271496 522845990 748884172 128719815 520897714 811315589 631477356 15421770 583434968 67459057 709112466 476142684 649947205 749787090 133203380 259897725 876554562 666531807 510058844 550819766 926727898 811975984 8352600 651046355 175679660 301380203 134025036 933882152 596014585 238307956 979675944 322859584 450167871 458235130 428123383 195927349 53489024 930319171 32872428 59229559 922271082 899299608 961951719 149910071 741512118 394230526 662906295 51349438 552580772 94192344 931749106 739835734 471295340 951519475 680916297 955151267 564545613 274674254 193719203 257275055 301910916 648315949 216062793 205418253 997572882 297374179 835480532 185355443 339685145 780988419 384658137 626526355 850585089 901357959 998672752 734958894 122430042 135632268 917953242 894055687 299193118 203018777 296890495 258021930 128505870 660810462 306349317 38100832 538114348 119432271 843436534 827232606 649267506 334456967 118500989 762722981 551130339 644595053 496441460 138729202 190805463 451746073 194185679 104046842 272902658 135824061 566778655 124802697 413012417 932410591 768841131 954423581 815504160 127998651 942040433 602077444 202639035 416864358 305540556 689478395 989284417 363128591 65886952 746165325 37513213 608219725 471860730 547020489 667075863 848310738 147447761 885341897 154409783 323761852 56414927 378026411 856202655 119223118 257474099 931854570 552777670 526971324 24569806 428432706 941493911 102373081 220876936 47946128 699762607 773578730 110663889 459182138 391504403 567300020 235529630 22036686 827995449 87571548 601226371 487632355 601109564 786448947 520693056 664161679 288786717 400591943 219782248 280591583 987579070 24919479 314884244 376531662 221910536 667369551 889275398 51912423 96001290 820101228 190453809 939357322 293868760 521245560 741264757 42934830 748058933 19153134 814742876 844742723 422284716 948826572 345213936 271015427 317345879 43509698 163564073 186679585 541366488 67151419 371827544 831201807 947706567 646215369 128323175 659055569 803243466 351188788 524383495 678977532 304762513 438942969 904371428 232296450 725529936 21863292 878555631 412296493 835468264 357317223 229401333 961458477 267903441 69765406 765987184 842959046 770879216 657985605 260810804 488783726 323098688 526100648 866080225 684662966 479783257 272117338 349518524 804383133 656577734 115159714 205319390 801491828 246662481 102969205 251250203 436540328 666963116 369002815 925682981 569439267 754103046 838461379 206522152 713139630 67142380 201069151 85562602 582443041 304756062 689956496 347491940 376914894 775015224 754442091 18254186 907409712 58068350 659117895 246734276 848113903 393274584 82580354 977657387 840355862 617973111 405811801 953549095 926121996 472568805 290908124 385188859 559294753 453796666 274944829 103629813 24270166 976842743 24237835 13824654 315310126 446841207 794176935 248569429 295216684 107168702 743093557 706719107 609941133 541519231 417667384 969380829 843907961 711938661 968053113 519677819 367500333 982102149 23410646 994222520 929188291 821686509 918696717 286664728 39015398 322741254 273993806 392643912 838506779 510147158 778050283 872832899 906440450 167193660 843818001 656085162 54951456 560540673 244405364 399316221 501281411 121978112 653937453 324339476 973086562 83772817 805398397 888314903 305053883 855500626 901198292 817523609 612212484 681636270 717233655 153839891 790159073 707100520 171567294 668468460 320721185 387689206 330356879 110667090 620057714 616955929 886995804 154240384 740706524 283387903 843409617 472031706 941265886 791047202 248836124 128948267 319121917 423092807 554853952 588729673 839024256 433363140 236882361 755198982 120374731 281224753 820951020 376301910 386548078 358713970 816243545 355943476 729831749 524476127 163482674 836938545 726177359 460008591 945543686 99037293 226945721 720083202 701083404 730366732 363968765 710561695 379440461 43387656 14314340 962769092 18070939 724018778 543762698 8208751 370214727 312078844 428779343 338553388 214184267 565309414 856028427 66521495 12613007 141103126 109071472 123610043 975855065 713519517 122836128 95456961 675298617 719318118 334144738 111098928 907921002 673313286 879044829 436695808 89566085 589608578 15151523 478752343 418524060 802596362 363075345 260326648 458634916 677529931 43929357 486012095 318156576 327566943 854183781 996624880 107727649 778312317 944577927 937907941 379125421 396496994 598300035 547849307 176727760 90207123 475673728 935886870 316352089 833539829 198651021 160705865 956737434 495413722 447907043 732633509 431602901 960437391 991230264 76451722 158817140 399255568 869363426 120485997 586235155 393098638 658975235 630397116 930283319 751180734 244775417 901098079 258397641 842626613 769301072 317158002 759549590 729010255 922577477 17497145 241721003 225315923 260147266 200333565 635418504 141438956 926004423 954734965 192782829 809440484 186946865 736910237 301217060 365358856 639739005 948539020 462652231 534128348 288812748 530735032 574025682 283523044 11195726 881121756 513110193 895057191 577244674 99146016 569516360 129329110 255943509 614130744 987793970 525512493 447991092 804113503 349558356 47573379 95075568 305031586 869688153 355772826 409489465 455674814 790368176 986990738 857727511 211963150 758182883 731245279 431949258 881955331 129223257 372105106 510785740 594799196 316457146 185648157 457624969 767338280 605285032 900253327 655036258 361156006 216625008 982265693 643188706 34896050 616793923 316722838 996395170 999622438 938636275 158200153 815855424 767395207 69407211 698320991 797528346 355558598 913486914 781786435 774939069 527709329 40763816 897579096 529710313 556888841 362589746 189718948 825743078 589031585 153602485 600158491 591848937 268090614 885186931 892284245 252054825 516036189 799569701 82360093 999796955 811038953 358391149 268078344 262837229 559721536 129437944 541411481 363768785 76227149 856320031 116958710 734058700 803366241 813709928 299523932 154563339 598472045 866645163 453973107 311738477 363262676 65607166 93350306 345040585 558781720 54719551 443892132 211132144 52821535 693716132 874779797 535510070 763567915 95089013 540453444 529032898 739776581 908412862 487781176 831323204 327974644 974781281 394256228 109799092 515133921 317615966 407573794 322023614 612532534 416768582 906204081 674573156 580656628 367150643 326600699 416677997 557002077 424651247 3326036 572344705 657300728 561920805 327611350 986343233 235925567 316275345 305614255 35352081 47545370 772997566 861457001 355059744 657236759 413858007 640334064 402779471 799995599 88025733 216457548 789107357 383107813 88514666 275824818 929912561 344154209 290880596 144263297 24106050 281579384 832736141 229809913 841169349 507391387 913497011 93780830 536083272 715590532 460874260 9443290 996258908 699625937 338223547 953088777 190272959 671858855 203128685 908404934 623344742 891642501 360301840 94906628 918720263 323053339 426896524 474981504 907477151 832214711 817281506 800671116 861218664 547683794 710875878 435751876 539165643 338972546 349793956 731865664 412011469 710463357 932953958 612292303 535581691 240147480 2333971 416088564 954780099 731046156 284437120 967863379 25405438 216545740 863190700 9018569 809112623 407315170 868652842 970002724 734796185 198521963 501156089 701649555 491618840 961592716 638806620 193052652 655047301 217738377 95538464 863817241 792155901 940260410 996071461 358279432 726299374 893104058 846098420 735154945 763498205 822604429 558392528 227824079 610444819 235394366 327160662 171157999 844588075 947319235 772119325 743989426 850075926 490898847 580058364 913339213 670139641 476894584 469154241 97274597 62525808 133571729 615453593 543688851 881990421 74666369 752549332 912451329 362173980 345844311 518571409 965302244 566731605 495026881 749849507 861139364 884550799 685739698 604503197 358259730 961145228 179675003 362272778 854275113 515733847 265493280 62749051 386907627 938831678 797667299 151565229 979226477 549704564 197912658 138482777 934798275 725774839 282937504 137800797 765111132 491071714 979454639 91308578 72471782 122485036 602519053 632771334 569584853 402783221 87512262 509397698 759777743 672270914 690389998 228779191 593343554 695223375 923525784 829508394 390685278 776132247 733786830 908395602 64399665 892046215 223210038 736988640 908861873 852806652 410240424 825636844 298420456 857237363 524211465 454488195 741045140 793131515 766091229 475812151 624745560 31924051 153596823 253638651 187910693 959820804 435803470 397903283 724908975 395908101 817952854 867387174 314779965 617132143 189581400 116830714 991868461 762531744 626105832 186200532 269654059 244880213 485625425 836785118 870242643 121831163 716313702 202416144 235270721 797152444 699341716 871088515 788400044 814305629 405609998 855400715 228256171 619918411 573462776 720953188 740648752 188661258 923107016 114743753 425437248 992208116 235091933 316137215 765667523 426106845 503984941 632580683 372886845 836152393 709096520 897094941 846281249 977111812 962280819 213274228 285696124 569022998 67037995 790101912 831653260 921791042 91803374 31124578 176383616 795112177 917029662 179264434 839651701 408127881 734604831 446012154 898021497 737544007 108245759 378869847 25572097 918663805 378875526 344281223 427980413 212530669 344579188 445634200 514628939 703582521 312764423 629997623 343667931 346654018 113350094 894637041 262983293 89011980 439752709 723751281 613179647 686869227 316600814 704224194 359526501 629230362 158593980 814692883 622407089 274001739 957454358 602727675 270515479 484971495 330664339 432895343 598157701 265608408 849595073 469648142 247744695 414574632 241434314 340887844 174293655 847236792 252337321 310450712 866877230 464006036 732497884 61933988 98855737 923093665 663508798 333649395 435887853 227422069 398819625 654908687 739676365 347826253 324907922 114528142 436910739 746303820 907524517 990860997 437506766 399846643 261005332 148123355 846121864 56678003 571961968 432015733 943681881 925686163 756923740 422036591 359340184 327733162 551596774 552304155 288354115 798639032 754773196 242680969 507528504 162832838 824438044 707946619 356288552 444671176 794679564 345812849 905415587 151005331 827262824 744880158 257168089 503306206 763993667 73347173 39453137 765040399 316939381 220921657 407667121 350916198 806494725 85333001 877895586 958601309 394261673 47906033 599503862 195812672 235552732 947808481 342033257 582117422 407172660 670484353 88179140 178215675 243588990 759664228 503777291 247091125 401719294 982815017 862713669 184619488 970692473 297674429 849834869 824636507 458109282 748191369 824957140 940046985 213317940 126461009 861148634 271810311 95516830 839230824 366517897 201228144 172143586 329813482 24501165 184248963 544152855 680656375 577950319 111986502 204502185 104751116 295347729 952085488 533315892 418849023 479329725 682442101 970463178 423766657 884021253 207236727 388982723 480349764 582052430 742079033 732945989 938121317 716860555 234234134 350100716 26403320 697589224 851133213 278283452 937336377 368431279 175686921 292970010 140983908 190457894 463427116 881042036 197015309 944256601 880685305 838311116 822130243 433914609 424567173 348865684 590779535 538652118 973044775 968427675 936505544 806032923 602109230 504386066 881494564 360358675 145322669 616392445 549459143 805024845 684816120 606455198 918614032 572367035 189641496 343151189 187209030 601828522 470645537 980356639 751531426 270322430 469044325 301435736 412830586 24995737 80818329 597244428 415909953 258950320 696791550 39394532 248501867 725193655 801935454 683843956 334855084 654078628 440795792 977451679 952430397 203270309 575711971 349078030 627324782 713628598 305858365 686267616 522645131 398733993 524307767 936371405 69454099 619064608 405250142 663328366 812269702 835363687 482514413 326441096 588249521 25825878 480128826 180533413 761177798 833772785 379226597 228521559 116650950 562589996 700878725 634736336 412064118 37587904 432873587 779489813 931004538 827443192 678314987 172883139 563926005 765013858 385950184 968314784 296970258 187652194 153696438 574870347 932010308 843239438 795449105 376485014 109052843 723336256 652490261 486653963 991165887 789217337 819244357 986382785 649544899 176829759 827456596 329264795 204896269 344554514 339738237 933552778 384332084 126262535 269812331 645834950 688441790 292984397 931622656 994565205 692029174 366409157 894494200 243244089 26248223 777357717 296759277 566302455 411617610 130389752 844857906 769190077 749400995 938255519 318792911 954230787 582759254 927753311 595506030 266675238 785262117 306780032 197847024 276706506 917142295 391831636 377021355 779183810 440048903 868037914 914046634 842311862 427834633 530450520 807661878 343331287 841645584 521199813 694840849 573297852 618728399 896371745 150305068 454155626 618660647 823963650 346994098 246729209 337359097 92803254 333779617 6700007 28311371 729568233 608702279 223846400 900325772 313226188 673478749 227307150 73619546 670679787 906440284 80289558 108601007 463241891 930614875 330199436 925884942 478870594 7831762 855181610 932124122 227925145 87940633 963738731 897336383 409727788 721907911 663265582 358138909 648046692 362300081 681682775 419314507 539731004 268302421 21746825 185708402 298619247 538753851 212297422 231791558 251221247 245327873 491714838 197197405 211094244 955379786 796741052 464259455 328513117 120449633 769641039 754705127 122389800 201092248 106230325 5088337 884037751 262164809 295943221 670769103 714923823 275452525 770019429 557114248 664194153 144749962 762395471 556640646 179707979 300869847 458613651 665621329 418458412 869308951 306528129 412401442 687062492 993927349 876314179 505195736 922163870 190035727 330395335 14122330 194009862 215177550 127692831 475478717 979932798 959278700 292866038 53059894 554557239 554874039 811431475 324139322 229800875 908757723 760894106 951077564 720508146 288061247 773078247 879994890 824588675 485294265 890419686 886558891 222913880 410708559 222359265 187150774 267156648 115887214 834769775 888931536 295850034 443412042 917872289 290307356 84668223 403855440 696491936 666022988 155804509 936664196 108474437 305149312 540856221 545787698 385978140 529972469 340504973 648821381 967828540 729366287 835730620 140531129 795682719 378539758 967017163 359636041 867234262 192620376 843632717 613752946 798716837 426984985 83078755 867810590 313879555 936711698 689745481 630375586 762105673 951206424 473778938 18008767 706439027 185779104 83981862 97593587 363830790 222931694 960706775 45459364 976272338 351158518 738970071 123831576 642853199 809540723 409311858 750142208 239590313 236468257 637220275 134747633 752048551 567034068 26186963 457194892 208162433 472169986 962330422 199658753 582062133 507624497 71237812 861884226 541913794 126669705 121751730 293154520 594938986 970149584 813511649 833713569 343684677 326155307 713672212 725620577 803492149 110168790 256105010 391558639 381819669 708479 376399938 846058557 562104963 200149261 910620923 315151605 998218425 991623657 209117210 201479500 100259679 905178472 463226118 203445608 285616009 2737709 25726028 528991676 807009519 192957920 683027543 597807240 552799870 421127084 561022916 426930177 5401898 520183863 274278386 931689754 905714355 477073524 116460719 389684327 717656089 6060074 428740773 173596795 140881118 114242472 892178482 883693704 733555114 114100459 443347812 171654758 67279571 178850993 324613573 618755800 449969212 223340502 336574046 110211066 250289779 26583860 376271430 289949024 243485789 197896364 471217543 1810970 742244193 84261605 321859922 996596138 187843366 539187696 816283926 785890126 150630928 151737898 327220761 108063603 363211039 68726599 433400886 353877684 631799029 351970678 271840695 465005519 707377664 340413185 654062978 363719553 920210588 583644899 661481424 429087951 501137498 607783755 99391167 295100099 590408675 771357776 758627544 442172844 666226970 537003409 300276012 460056283 38177419 643589508 826395462 337868597 699200624 299639817 813111569 618698680 375635058 411277269 659106210 216402643 667206451 734323234 346724911 241489658 714710198 477321214 899614277 787143450 993043586 198003634 468308111 882827341 132660144 613311993 200066709 182777275 797964504 725289385 934821234 282310963 130909098 189646571 611282871 127348785 961276644 612462498 348773804 137349799 32903634 973714511 868793613 871825307 196426502 431893066 878930605 835755201 572328204 215726093 231638164 857913485 427039255 678641234 630789217 158124125 353256610 889010210 525322137 377730312 899260048 189072859 261910590 597155838 186114080 796444744 217749268 896038189 646801660 186343454 39295355 740989935 734209956 176004604 959294503 244914486 690204078 705026432 593341169 374701146 539655452 295090747 221466725 478319249 657914879 250863070 322435802 941280100 362635885 767295114 819137116 855455312 30712878 264804649 579528784 755674646 52958815 956857599 375700718 94126471 439381045 527163716 74043601 631446041 294663192 369877508 245296947 257045766 820301622 253797469 416132846 388119597 949804337 91465436 420678566 712850758 413094244 690955365 825034191 586486419 115334257 885665973 8533424 861989958 120595123 915032519 108929502 376133997 813602947 363688600 926974918 806807684 723412181 32332949 867947751 622513820 513089070 43866229 480484042 427814219 267211982 746324970 445262475 861867821 237209028 232597548 424883486 191458348 647872073 98798386 287376203 34544933 866775201 344481861 219225167 868102957 712677065 127778332 602452907 423150856 874964827 616477711 646056165 205991214 506464090 274114903 300790973 37790233 678275759 413648902 484795066 295904100 910004701 138013737 814524531 728359366 695743312 580782568 918310495 210416930 428845660 881071359 253348839 795972960 498810520 762811305 837545541 566126716 194578636 533679704 644406374 86869743 75645126 372811951 92203534 753244109 316491303 595034413 42834485 720626689 945073624 407549142 359474725 254783232 665785625 942431481 798440437 930669347 639533057 866275505 637970343 320007113 95398153 329095409 476964557 939656267 495220651 89219076 863424695 517371398 659546614 325753355 188837043 242010956 316197920 100021371 465540077 318496183 790119064 163766987 919231226 983143855 470964612 655414499 474009781 170986869 899903888 648852148 817051320 511718291 820535709 631577891 221974082 90306884 274498442 476767538 140048215 432205392 415288488 752291223 412501635 410755826 380059589 702296569 107117126 435810240 76939797 248198436 568281468 817206726 966347273 874652812 326831301 949362251 999928688 628713764 859642602 409747449 751280536 448678536 10265367 936057773 238184470 586889203 4681819 66370055 557785816 199375666 597273832 867601762 470858067 836188659 132318636 490862864 295735586 849895680 274903031 682021540 328858624 294145508 520504852 810063434 718152998 24955032 440855419 364443850 939132226 509132409 90269160 404693192 14383547 323977075 710655725 288755930 145966681 652998537 289094689 45595569 965340197 224953310 479153224 743701379 77488939 242258134 929970586 259035706 179314958 849984754 471909011 916993893 403676917 873838785 416888428 828317849 502285814 252794057 513508038 501240009 157224148 828552930 711732652 123195266 26452838 656623950 240403267 474280318 358409557 295512024 858437514 888398247 855078139 711733017 105932595 670718973 771876031 41760407 223514020 496931983 436815301 665481252 553645123 934059178 664055562 982531598 637848160 877045188 728355361 962084585 144148584 460223303 111473933 795209431 996457262 636043888 371779454 579460248 215972907 528862300 283619940 231505181 333778472 647184517 921587319 868269038 760921046 37645228 470604557 266755878 544747630 475267922 856317456 519175415 707281969 446334346 569399112 156040560 285281056 431604677 719218493 279320508 126601115 200532452 332150031 590518896 656669536 770556177 988007240 539263545 843345617 413737183 970946338 506048964 517129534 756163563 307267270 586938906 774056409 279677721 968565892 920532529 316816924 798320277 491105870 445305106 813434896 219086692 691051832 898750312 798775937 269736974 326363513 889429137 369865288 364195258 557831815 770784785 802475970 704024254 850389670 240612409 373446027 916746207 840615482 598890451 506838427 386435831 229648560 810223068 17242725 431530003 312985057 689364830 202804456 277330277 362921856 704998517 372109943 911100541 203188733 464948952 551990087 920082316 929834765 548767002 857422898 398595390 291458423 85349692 202632327 71431151 460256775 234736830 189652715 426970989 229698505 368698629 877956201 651101068 641562717 472428462 535076751 419002759 465815769 709713761 946230051 534940353 799098076 401098145 936956982 890083120 399491263 664328891 794327354 437634777 466075529 549565074 363585149 982219066 306588491 142496929 882772789 705756222 440883009 779820025 956735467 759804860 955304564 661564435 396800382 95993122 819184657 689360355 110322886 681867551 167125081 564597904 959173394 912393574 133044915 811764444 995038690 102042823 352610899 522777171 942538646 527243356 399251419 99457757 916224356 93065140 443735211 624957721 797710450 922661124 987082513 635767331 388840428 253662073 834279239 144099173 341067899 868722007 900899934 15206575 8703565 379464587 418147807 919579264 10001234 484808663 713096706 75358611 100285813 907004744 55261384 917940425 253525510 360899941 28312072 685533940 560949108 66137936 692105083 742180364 310882382 261838490 827794629 627021950 50185737 458793793 175656769 887433156 292699886 441222124 681908150 123328669 441998522 937551965 248403034 937180613 30365139 961538858 233334363 483146375 437417683 230294899 309873807 604338569 258881129 267631683 100079274 966811994 581494563 645608841 54477269 359471097 343758814 845928408 647938510 451232310 430566196 451889609 151259296 509651571 427797970 296820347 518327000 82408437 837805232 213832138 441663643 613990917 629257357 266194718 840950273 433738278 62774059 723655217 627176338 928970106 857663653 559649096 190173017 173332564 635647208 784385017 189368065 145527011 365989270 998960095 979307582 108237810 790915755 422263529 885311172 339596871 992610840 378595328 157650690 487110990 371996496 737038102 375592049 259093818 696792619 349557552 178155060 801361060 718178855 348109337 497341532 244638189 742840428 301240773 104271165 221876362 815921203 507315337 344072407 131342878 637955054 709790742 928122657 897685080 905561835 682616610 861623105 961831816 695759265 979940751 884342510 30058727 375410598 930760603 212091134 816731151 994982708 406580615 311029384 11358317 330731271 141408078 841495925 698015669 850607597 265938237 732309740 773465198 34759906 878116346 581573259 649053189 9536993 19510448 700261607 460335597 939971725 636298679 187227551 701496040 137443143 597475668 519676257 950571227 386486515 26413535 802998606 571715121 787240270 482246320 339419205 460714658 869340206 623350948 495658448 796634795 180119598 971378347 851027501 57085610 726242570 389087858 83682013 10518633 618633764 194694639 239838197 47129391 300468021 765065091 126914773 594890269 913350938 865779336 42307976 986362071 59945737 239245925 695871742 110541055 945402854 512384635 999884724 983894219 500521093 332808291 507357025 892288529 145378743 710869056 196197683 522414037 886688199 708519639 513466682 411565669 580666967 528574046 2561479 398689581 332915610 153285304 336099163 84364064 857566888 593290467 668023649 310841065 636717503 677492222 786449417 595996407 92689580 299645175 961977726 276333168 170802358 820276187 714878583 110514250 400059077 747995541 159918919 105066021 498233536 460766629 860888819 342915360 491729758 278290973 339827493 694734799 522061396 536681864 289287266 942736142 193832094 449026702 925102752 197167645 279977249 827741956 698610376 542245104 927009051 815697267 610821813 741838321 470471662 59537240 975094553 718594437 479042774 769010989 649947023 844847079 522244468 702360384 376841108 897968497 597649309 767818603 349952476 744894581 39633868 470429694 51624493 117180875 622390747 103376455 395579492 375150729 33074934 441053278 358354766 764061477 350522821 706248856 846369074 453534920 651421384 782522378 383135259 910179290 435967901 324510249 463697278 977005308 714190884 378993907 116397658 825853461 750837062 859066765 7219716 163321639 271122734 635326065 37310679 734784498 493294059 356754329 689008739 913232772 440909767 698528595 80113496 165622062 775458812 952587783 515498748 444677713 573306781 155732129 53346853 665550309 575882194 101450972 535484922 961818693 119530868 802161582 875736552 410702177 209894881 500344337 445808064 148334673 59122372 329496810 103238747 433517546 857293471 61108029 124932527 506046614 504513109 610707783 332294050 855641090 364148046 802329290 1534585 658467171 496810116 389443080 715173771 38756780 711517148 690130428 729611704 639015263 334030115 282587570 939060283 506163500 321825187 875317743 897648890 245068101 320345991 204703412 623084002 751668029 316952429 823687308 658809263 94361988 971625146 626397643 413634390 671378116 897310690 193242912 122141075 558691363 126978623 633746992 980224319 377376104 569000674 323193712 828388248 683224259 692161520 790136994 582486684 611886258 383336162 780361441 943357965 221635066 778295487 534924363 963353663 80366067 972155683 57066359 949585418 170901281 843712619 55389436 722020362 884671751 84205353 212768471 280134876 745256742 71212700 722997240 14882203 160880258 974309869 409506488 29415675 226842939 856607051 480817081 788382053 838720670 912393941 805059819 120780451 70339686 909603120 3495247 591388533 477507607 865708983 1322843 427652696 157509311 232632797 865352897 445602074 578004153 987524218 295270451 830623740 219210683 416176910 261803878 91959750 106243064 492090099 463283155 817154861 610927327 108034375 750861833 281455036 202906203 831273788 633834740 933959534 804665958 460026714 493535815 715676103 591822893 89112569 791078883 390642824 150427164 111248629 616543700 466256395 402835607 424161401 213045895 705733524 608425405 443632176 431889167 991107250 574748493 597750015 1355759 188871499 870030908 420909782 972726166 638857287 418862832 716857034 379294963 356423919 685143349 404153251 134427422 791495681 610365306 987722575 98049301 388039683 29325234 267269931 50152585 559085928 138775819 491273812 134825691 826071466 979931827 630394303 107643813 823180613 384992342 528575890 388287588 120330133 675248926 505316845 910861760 998884164 995010193 434201845 6589838 446145137 602312407 474125706 588924295 981789673 686211314 123092921 784291916 469038555 25015892 487123824 189285927 617481824 453676917 272599299 27008261 199702479 72667638 364372254 815061523 234327002 433688258 284491124 705993936 673375282 520224640 916752296 302443077 490545517 74303616 846032171 699913906 356826722 797636853 534764090 42141901 770617804 76158602 112315727 613913852 56855704 692373383 538218508 61579742 393400921 682132797 968634207 240803217 412119176 504568825 198556455 246019305 421928398 271752813 926130350 999445901 703841931 971668644 432146233 376366189 759319965 672900168 78769859 518436110 221694956 511170510 665749868 979070185 68562593 148766203 530151966 146489020 695137661 814212763 129350873 938735367 634208639 402050170 587130993 655162136 126870103 575219895 755345206 796775470 233677203 393461787 664659434 607413232 599010795 264892037 178355052 549558771 76781423 379761325 5904086 434431441 438513853 643288990 136950656 841112169 615440571 69030306 309611303 531124350 580045930 122373957 496370710 163941008 824065882 451526877 552014991 666788309 215926834 978004296 973595617 441823592 486708651 985539672 181073101 173814758 353831036 134689035 849911776 140822455 282878534 898955483 502920 276629441 605982290 873227866 832329294 214819039 131170280 677032680 801826410 590508426 890216899 37940104 972744235 530736401 166256174 572198835 171673831 378134543 290868138 613858718 953518076 386554431 539363205 359252786 123454133 454086941 184935601 676386677 738450417 630229393 863017355 115662771 996706997 621672866 230745041 528700957 914934936 221647117 711447043 101768535 654321140 122271179 776416957 329592338 282044952 644074889 587314699 777390650 967526185 420112488 477198333 936702993 101433853 807083806 843780270 367983696 524703255 467466584 128473576 460533168 719778446 946354329 62656342 273563380 953565663 427811614 590637316 574793203 487017753 592129822 945205304 90985885 467475631 444751325 508034149 441326806 938032490 344134527 932905141 988712544 400006677 618272665 401984777 548557671 453700818 124958856 796262438 303501179 86875506 288306185 440896103 502965168 412386956 152862448 161991912 41102219 152719064 487967742 280610894 806344668 517614293 269675390 96715743 524379054 985940666 459879613 906628423 897607126 268675236 97528871 144904122 328637063 993626727 594181155 236275441 212659477 271284247 336969876 238680440 666864972 917276278 870831315 409652760 244230680 975711809 216765247 523972594 225751160 538365377 678517996 666970565 695597 163330351 2961074 888959010 882843767 172964797 157857175 120509021 69657142 109085957 840109242 448217947 140414625 311153089 439443209 453032134 5504258 801384973 149713698 190214566 560629986 613965472 411061058 847967250 80902012 782720465 117126969 831938637 316573054 929329711 828726838 560492596 152627253 734295828 148034319 738378393 735260662 179630214 409809947 438391115 198083295 155685552 263686356 446799050 428978268 853864164 52077480 45789855 992002108 908682717 250325898 233965364 60631084 598241360 901439088 536422222 824219396 577231534 793544824 127987258 362250285 68897591 218601825 645999381 239782873 618930631 31912963 549814192 674893073 16148570 807918569 214492935 187273959 793995045 446353325 636602712 116980605 78495850 718584572 496829368 351155294 412489992 753277579 841279205 539517650 31873721 223037845 566273013 119360637 17832121 97241715 109033418 816376907 182639709 999767879 838301096 491204507 609990249 399264595 609692299 293820113 91688638 688180622 995659134 721646810 292388257 91385648 913723618 213586621 671441079 883550638 257465322 989016308 367084279 601896786 617067400 685175925 944896374 74006027 814444427 226290905 257573079 175917252 318330097 694196859 496939327 499600508 412873702 724866555 699586170 755510481 400162506 666862105 648213590 634364357 506084318 522590442 9185957 642528808 98458347 353221574 531229885 852374536 646695660 704030385 63611899 352352955 434934780 141405806 495236635 18951054 146949588 834278732 190260953 252557174 817163842 435695274 424945000 335122829 50463976 206383620 964096657 285463212 325562730 402378900 36687497 916356972 849462987 606070924 891166622 728513464 980635555 102915739 564921088 372457052 223961539 57647647 282623851 206587155 433689502 592049704 732493255 238206177 44440764 710744906 559649586 190511067 557082489 170666318 972781989 1337788 70057104 474148763 161482401 549013063 312745469 388322929 84245674 88468045 506709976 384571559 104889493 833568116 640391151 756197585 76825309 802879953 321951037 767614014 285994085 344778213 40427553 463682481 13847159 753667302 963378776 791055134 959324713 453360202 173820701 241680604 367705588 882167045 208976595 8150263 115786566 183773377 906850242 840306883 167065547 907304867 857675565 283909743 184551204 900065715 233572029 747903486 664002638 716217755 985403187 4201126 883950847 219504464 227626240 137631608 238603848 990401141 293670877 645931171 924486072 307576747 927743018 908571141 614354377 267301576 485231714 494550024 333020621 414806379 612556012 555098184 269412613 522945850 833444038 646707241 516915131 534760671 36930223 54159511 977732138 940485589 824475443 103767630 708733909 533828858 722281508 824290022 268281562 358391334 165930634 843415580 943531440 131411910 436132459 545979811 937577000 669768542 543109405 436870390 423213471 549474291 260425290 451412204 113158213 25762012 919130537 677973828 355387172 493453311 799074285 112001907 354668275 23133417 851340342 417504961 610938599 330075532 768673421 502130849 271257928 437282409 441075241 524782465 955138761 293490448 678212796 893968556 766364626 491607223 831324241 42210198 860220852 557544533 775338638 777796370 924980441 490323036 703597400 62709329 454161475 798850783 186151659 18379638 714337958 590302189 481696285 791579051 389561453 548706454 78874962 877333614 984879253 213900705 926227153 809039818 988799093 981710135 319645560 276249627 477975617 974960120 648184520 804329620 193424130 696086803 559132955 836668490 576664807 396922273 929234058 905274316 7898275 920131150 95848359 480365111 794824290 788382192 406058909 537958273 851825477 307498896 486906488 977562299 974495864 6892459 338838235 577730600 914811638 58248072 216675830 722134054 566519528 922711583 339706569 433407593 260032449 122792864 533185976 641349907 400459801 292894983 12827392 180870440 353200368 699375147 838973331 408995604 768211809 125064173 997711985 632909375 727376221 203080395 655940588 515815936 655033159 847572633 366810551 153859804 442748289 993347148 891035452 222065427 411353315 867376930 108124033 148238093 661383225 34178192 902675899 490177922 914655568 990920408 452364907 847667379 441283852 412667414 540647767 193041997 502610643 544997056 622125688 883484705 303480240 850908202 644332985 228502832 646548741 740765613 189930180 901918655 941084599 336511368 318354762 601716054 637019874 439165266 393431040 670598828 237301171 472188916 846426754 416786700 752071829 146576695 509619192 620397419 347966468 651696669 788197154 999144776 424834755 872833736 960339317 217090436 654100681 327987058 431038836 847360111 287014539 736118938 104838167 777372028 429745443 187844089 338633663 746047655 148523905 89319204 875326836 244373963 432221267 509321869 509342883 721630425 298324810 143215304 550918998 652309726 7622612 877141576 273213387 732744336 699012847 185743548 259579040 214339639 538326512 302268421 327662413 216746854 20096644 108002070 391109382 326109066 989042748 101597164 6144584 10586001 515646431 368975223 78295240 656104234 914970651 841642702 110504958 28636961 818718348 594014090 932853194 457831903 437255042 70758628 117619743 24875471 150845882 423834793 789517976 881242164 992588879 80264077 253039070 29637072 695133543 591792393 504271816 622919026 822973257 181670288 39138782 235351477 128408282 567433050 31891836 346873147 329943530 324951708 113995819 680483266 202918718 110352810 413576078 471750700 896562036 999798258 312458860 306205695 306097769 727525424 985833255 714558728 876182579 670972596 572527270 45526143 919953675 730232225 571269686 187165343 790577348 707323165 766448668 897710738 307073667 34888056 934675013 623661824 513500224 838968143 707689866 84237550 156759433 530447463 205941055 128202926 920238496 746441822 159017844 747745262 903134934 434913810 899643666 249079337 548265043 959746143 994261202 722240508 576180244 498913732 908487308 454700828 350759578 279278328 76883464 334434080 931345370 829586113 701911802 347878958 408846640 472636594 566863864 328659950 178036316 445197920 379993843 78611746 235529394 289010920 837342758 384283737 716896646 733779196 667288355 697148440 211138829 381692096 982214206 339618084 818562919 109833122 710408031 842716639 167485436 149513603 376943163 168823029 866021022 832373103 571429064 180416219 304293476 525239781 359341346 532104054 988889136 257968541 971889941 60049373 967883494 43894583 529558876 314551993 79090485 244995949 962320542 562306941 776973879 607921389 803116203 670903410 371758409 561500143 684337309 217480644 401668274 709778544 602095316 177614061 276814446 344967044 205685004 186144769 596407008 61748000 802399288 95719198 763764254 147578130 161926096 268959106 281397605 125021180 457316645 856758535 720161591 716370005 125207852 603233480 3337661 747856329 284270810 476572974 420877341 359944996 57494930 843432654 358385594 191487941 741783088 373779093 280502342 83846607 151612044 970141679 17231753 886978906 448188850 927379129 829220141 934432912 474777060 337297653 309797289 964995642 393587458 298318622 63424900 438608133 53863244 411467544 395077020 177211332 362134444 890330107 531986363 974553982 705359211 492668594 195634713 47773752 324565693 822211364 978232059 263062726 527209179 403383473 211857115 460886736 819416651 350597494 855988850 299089647 82365765 952638234 541949755 557144806 433297701 693726888 122919679 593394904 182601243 55858215 866051712 742690982 984586484 299190758 385173345 72743858 826247335 231264337 300073201 163363648 294671197 146208661 811647170 455863607 487519629 14683431 844340387 577895987 135881844 606430246 889933895 612398383 750381788 645021771 519019852 705115675 835847760 919338637 210514379 599526397 774008417 369037239 499030257 948622719 167694904 305247735 795475094 730010307 658848721 944723852 21372535 903743040 333634453 85678402 124068384 850926949 130235877 795733350 829660503 516049683 906213378 55629976 392650585 551327098 750092306 860027634 638744689 762570633 855827218 199941088 412242098 138656130 58548509 394048777 208183490 290596267 348513174 274681722 737485043 692610004 283574444 299990456 299210608 629365947 833253289 482712864 208219978 882595608 949201803 976147552 124106831 890714837 119952932 83015144 753143512 797474711 489491934 685454474 356835534 253007053 223257540 290339813 303371423 149886375 749344031 620089793 414627105 543804055 439610278 782254872 938954726 757508504 35004097 644297127 607219188 683765403 693568350 81128904 353786151 399119148 191328965 651016334 818193997 331809461 349208055 281689967 212875472 541400915 796470106 177388057 465501659 462990380 234498681 464748262 336091369 205376471 628722885 368991546 348185157 854924046 579933558 827094576 910494008 100905264 738905687 633960014 553513341 126525694 754571435 584499402 402185545 392464935 751467802 681670664 536063334 671948400 851630339 149572064 307946968 904990586 125144451 230543278 919509383 529175198 360459934 260442392 578467210 973548909 602528549 601287777 98291057 144203477 640034969 267491570 834170175 6493633 269883611 793125652 597463037 415378015 386133467 687783470 344213276 964452357 658705197 479703533 418195031 967703997 723629863 276276023 621907007 437521510 289703636 415669922 518279107 638812000 30110471 916547872 461801102 787370043 271935618 263711355 592646591 112649827 10236067 168718862 926895370 145983666 289654785 460618268 422524865 45936562 620732381 426832389 238113855 334145844 13904624 778060502 316816742 366680761 662545980 957868933 188139023 79565850 264596740 109910041 539025292 964143741 564389166 715058865 990829391 747116516 15929071 44649068 861682383 465510278 581145836 951335109 385998756 289449634 477507593 795729214 614582958 725801926 815469842 130976961 958345082 219593936 783812437 855733499 672660758 59239545 847167672 37367723 446487490 212290718 828700707 467905526 527706438 454511876 569994795 206523202 923172491 808768415 898772392 726266076 667753528 979322349 448151251 542352457 931497194 44065401 385553457 560737726 357380240 56981098 786200031 608280162 617683474 650023310 573351639 505614128 722079271 902783114 235744602 653368750 203975430 756575827 537423297 601424525 93955043 768239531 376446991 656064664 104083554 617272118 205790033 40007424 74807623 152401155 413268673 157809419 277650898 989905633 741693027 470517559 682438197 539294475 229405466 909870914 579848725 37759409 136216269 17215514 948053775 542935940 848036460 923364216 212569457 415669000 817153829 658371904 708502564 817022963 446775944 535477481 439092694 688466706 929500752 663794100 491814803 78715282 889500567 796812567 408060591 237031082 591228285 986952504 944619547 46097489 39910927 588742882 513256634 378729900 281171654 770123404 194769848 422782815 957794721 295149873 4808536 833069518 481552760 715975272 38855210 741582671 984566570 128265619 462090470 706437164 236074680 503154309 856604765 127117314 427160353 380016016 495466771 906780937 547436027 276743280 476517765 311215546 458268111 184290555 633951303 737423004 10779781 919773258 567084389 157142983 458039554 494604416 893251357 328818099 890019941 50046732 751947162 903177939 200234948 520728244 629034793 19028042 420183422 733141463 759497767 680015947 626285388 78829214 55457984 960116150 483611529 356247161 20570055 250065248 926420478 669112705 508289137 696444447 777863130 733093370 318285899 372984290 317267193 856614520 941291789 235429832 157151864 932836148 272568382 642710134 216035657 901748420 838484863 612342056 753405831 476213668 447749448 493753432 537116494 164778902 38476828 405315863 857552630 681659541 480182753 476767562 420383910 665648452 894845961 791706295 173478877 302480098 18615307 800024748 812489814 261155221 708412755 596312470 709685236 718060473 453226604 111256660 333359636 418628406 843706357 993643406 146271826 798408424 153817635 483164581 105939695 452246400 181937880 914816810 739991245 471076680 762448609 441848323 955166402 40572366 203826715 426527801 610363624 248786441 263622923 466524050 885492091 172889751 946552213 566948282 680390973 376313359 951556964 941373648 658296554 209644897 825738197 695667132 22194406 267760184 342292276 211393189 275775944 334548588 550275123 553632170 829432721 817357284 997194743 590533892 682783562 649716902 708460545 747879264 980244484 576783266 38098789 800479683 906148457 469381283 532172419 511426387 893328743 77487057 134821031 369358721 964600333 351555158 798925753 524789782 392892426 193320090 807941644 304142527 365858618 102019569 14965227 51372721 56116327 964222027 209114974 715685341 233359496 443354949 989626968 666566966 108393734 318981138 26120633 682697776 873425037 30842161 112743338 827817905 404168521 52140401 601261981 803600682 673427498 617372587 345466106 764458727 342626982 89355705 542751241 804805423 723882070 734494741 540229481 348914731 180728527 853971748 466699871 101386814 115750316 676781834 119171888 905446053 780190065 136971183 177085293 25869510 973325399 548587745 29293310 894613256 308950791 556566859 9467506 497480981 226518727 104357040 82139087 704785509 307018608 927580942 984933601 610572318 67671820 151683680 411961174 82098360 855774733 60098169 73322034 708769066 622084616 225362189 176702024 262352324 226735523 725923467 969128248 800645975 711903638 368010590 113597860 774057332 515250811 924132594 241750438 702034205 580105294 74365151 705137817 338338787 684749648 41476164 417543849 512536369 365462037 869141130 95771079 29018580 877668156 865590621 706159589 185926668 520742436 595668987 866729006 873547520 32747871 98123885 473086639 508070351 843572017 903049192 771512928 809197788 273625696 986491915 266424533 717808941 86033391 817032229 854057246 848370905 306868525 731551696 416800041 168713981 222904471 800656430 609231439 772996707 850335456 643932766 74230590 833453924 748103736 74841545 101390408 624209076 810662848 671011689 707701620 628514063 328590604 243469685 878594188 300634953 656727519 356515240 779288736 266851078 903569698 385806170 88105268 184206199 118482967 846367441 845425277 178841026 953043533 645287849 828831409 286878229 371673538 114237398 102865044 201741294 594438716 818109298 36739061 979512987 747358775 315250632 565290110 244690609 315699241 261442599 829695211 242863663 161798255 828999240 303274018 480977862 936871997 580453974 297956974 819440267 975537920 930862856 580583487 643142095 62076493 948310207 712699594 732664617 255872023 30184057 553011266 889679872 160367744 888053991 951417883 737194008 831455673 111488977 282234363 216007717 182229977 729221909 686014849 792268382 743017161 384872988 720732407 397971911 952953329 198684589 933237975 764157142 675870735 361618668 82329211 604690348 787850957 590172963 177680494 805669235 580752734 538429250 791640722 974264738 672678189 655157886 3792094 451997671 201178883 175686051 155911190 814702558 81442726 947725516 404684862 437395261 150662177 366166024 30128822 867475762 577971263 83119009 740769490 781060118 208108780 452911533 641053787 548249192 76053399 956439682 456899280 591316615 615519534 247473050 829024185 711538338 883083175 768167929 798605981 224740173 206027164 822622028 872180729 328841414 692647965 676896683 310720467 185794824 914808424 672838500 189581667 788087954 738963498 91815169 95102111 761426894 779352681 127510954 268149190 501157385 669604026 687262044 264380476 128710160 659003861 14655779 864432314 840237519 180980 659733455 984908412 950823323 893549508 413329603 219847444 363326692 259809951 778860931 298218301 851317090 768365847 698551463 583036915 43811584 450503056 945287390 108528478 936493453 36992690 493085243 943152841 368089136 114308367 205174978 600130842 107008306 357235801 310865259 546493038 516535269 445251134 189178742 44555002 471569214 624016467 68153712 933945016 278243992 718489800 166389845 569212515 314969974 655392078 201083289 888140777 571086501 451578963 195251073 21252923 996601280 828881263 696786553 40310254 394814450 324746956 964029156 774519932 226499266 936047284 722216206 862802887 623124172 46769259 922939151 763788650 390802164 138913033 384318924 437423930 679869329 568046384 215648810 259223394 348067405 167716936 862751867 789887691 22533394 518383663 783537425 559387945 566465436 725725881 500137161 764967867 977771429 187053753 673560640 83037444 988689264 662144853 331106712 729936884 87528577 974824964 804606628 946977559 617991573 752869028 429660236 791692935 291725010 264751227 593649685 245267247 38172518 644067407 201107514 289940396 366967595 990745449 131239473 460541448 945709621 431830235 77157137 149638833 935397535 573250226 678798408 167672226 464336563 74936495 814100054 94850369 78205748 328761536 280777598 296191625 311008671 192860489 318625087 570096701 242875645 6441681 6575128 128136332 242698034 203592510 19075679 174240760 541943737 652018252 351749107 352179895 450564806 437248127 459073341 984762266 940134391 332126538 62172604 425657537 891028174 816700172 496592421 121444530 310392040 708457089 844922566 796261773 872989586 419125700 172661638 319730721 860718079 638322190 467286573 102641766 825519542 821667433 745865825 943340280 349392754 300680636 894312314 957589851 500327417 674881000 357922648 405887624 97347738 803623927 793068475 262659847 139140365 308608439 893012831 161542379 969584747 800450805 453291213 6761037 425006379 517157435 24596628 53121135 436955787 634451621 129221897 465106159 891368446 890524695 14368492 959680837 212333865 30866763 898292981 19423688 692448070 236397612 199456013 651755268 791849161 644604067 543570228 55965870 850769833 228475462 692513520 712443566 402250435 67636986 856303062 201551922 91522127 744602189 908326257 362073872 196977202 266034084 320700501 221704117 936530842 806785515 398646872 229943537 744360985 980092336 425494355 810467362 883169617 614375797 932536600 69762714 836303506 886230746 305683703 305451810 956922966 798924277 375828407 169492790 414272723 495536397 486859452 211071433 518810932 348940500 481882017 508168576 639194054 386901636 859315848 335741964 291850910 660495052 903716357 300379178 102703720 969371274 217023309 692937049 428378447 866629222 76002548 691740058 259696479 169903609 49094511 755892757 224653046 255163392 496220097 28167199 854336870 528775894 457311727 712710828 632206516 303164933 350673266 915697886 127331681 606213438 777091834 792570768 971248796 648783326 523913122 578013930 888154300 871108640 170689033 740995677 469017609 72568111 121245402 288636111 529697796 767687298 330658053 302914660 5072313 578132163 580554036 453139153 908005555 178546521 749877348 803544242 832832343 280257609 911494304 858087251 474368961 624939154 856420560 799194883 584838325 530049369 557089773 619343598 717022579 394187408 345814120 572848618 200230715 485760946 344515570 752715143 47807209 39038075 934367278 514133912 29096322 31275209 342690732 757230622 698850511 951737941 430703461 647352713 167253847 373645279 224603573 633708819 739488930 721919828 223089364 9749965 780096418 29023049 447515778 562749475 733729823 260317015 951215873 732876348 499877939 53170758 708896202 104368541 435524365 590222584 302131815 99905007 29731651 656389440 116241212 422947140 926592647 865742054 285089350 462526557 10221085 267749011 463965426 810350460 79329704 130487283 547720989 49325202 681552286 426001097 123625784 786344081 987085679 860384663 407799773 89288876 221839697 538339472 525648853 991083398 535882220 373510326 504505541 427997719 284485116 999420831 558731216 400321656 256716139 919968421 744064223 89818671 81297036 151704597 423205360 805130601 714441231 919312526 660032120 268538453 538796451 404282107 399038106 754470572 214240652 715483835 574270572 303466931 596527623 664623480 594108517 777041649 51605623 204257056 39227562 974430689 259890523 677545385 121875419 972735970 788981381 500902543 977234089 985425195 169225890 896033953 752907105 525961471 704856197 513387784 108215771 905641919 787924323 282672955 781166464 197252314 44459663 248948576 490734178 371110933 500551295 740563405 13084618 427934128 891594041 257546697 747620222 133853819 162856434 337873114 662903137 848408927 334836220 850076983 852008971 696979133 588899647 118055892 565667221 509064464 430107472 315348721 694564369 775037429 648419445 12396497 668253254 759824178 951781457 159598707 923596457 462549352 832672747 326620749 564911402 939313456 457568916 765275006 22746795 730938554 19675718 671516299 374211559 779378787 529272456 523182396 415015302 958500802 471781599 451140541 761998646 559672768 130332951 647967522 104452562 541225403 245772391 739579304 890619763 486101716 777531104 303574504 135033708 127696549 3456855 322678163 232885704 481405884 362866058 713410116 739407921 190992021 572967522 836931991 369804724 207882767 523810100 802816178 133578642 625351421 471781060 318371365 666867999 15668350 598536094 627235343 783441090 873971879 624960951 828142486 803364812 554351108 411483556 440843244 268817735 25700979 957824679 853588801 346985210 888392763 545032427 72997641 262964835 655199552 598162228 471006560 664022416 309501901 968076889 639133179 918162195 554710882 959809499 97985534 101687475 821896156 93890462 60188894 654973428 658133230 236485307 384049393 299837089 657309738 65968416 580646434 872676055 618143428 836454542 142531735 779532574 372847314 351079138 212774926 400130485 604745809 333405561 776159014 932072055 440281284 565288902 683974735 85709521 981815467 334401596 451467345 530000808 223326373 59273252 457984774 61434472 916950512 986867450 420228911 709063838 34712993 152620401 623345884 593749678 675610535 132875074 917294049 54925382 759665722 812752177 152578730 167685983 399036134 819417350 67059063 301582596 816711825 884806730 364949061 249130415 102868288 190996971 114447731 454290252 187069475 723703223 295329639 441996695 934648214 606107862 387048981 786956161 260052834 887651332 358421787 782056308 181396751 100524017 84530429 62409478 168010189 539056567 312515042 518101466 948240304 553265596 331007519 914030884 997920817 738028844 468287669 830994520 753060020 236588231 790158003 911132798 659882646 549084156 45792191 825065914 936729588 967387912 313730763 203956271 413555595 102659173 439446081 35856867 455616305 894325614 873443555 873092745 939938224 891990303 577571866 495717459 148912079 112365409 623854039 826352682 245699598 503998430 479690835 66896180 330997837 977202645 897294300 985131442 756827101 632817839 829487766 28885395 522710282 489614677 137805823 450636995 873667104 928161188 931880772 923169599 167639237 44228495 533187712 78381329 35283639 502581793 606576952 247669218 674635954 406116680 305453533 826829573 341825379 912257879 707626054 678456965 527954968 134457118 415765955 346737444 45682701 404504258 328752374 810941230 596709485 489702730 926358562 881610803 970697774 925139925 604495570 525025056 979982868 143552212 931907488 459890061 445483411 540455395 542284956 323447360 217680397 623542908 835270416 731143061 372233945 24636078 792771061 908868422 983390171 834212873 135602495 704038516 535633062 4977152 742776211 260621944 359644767 471479317 549880263 730080410 363473738 597215765 520457596 131328491 720233237 395225106 628168209 35682186 303164267 419151689 852401107 294057173 945732768 89734262 390894209 441779106 979974714 401486664 955485680 594834740 863593727 169610990 290453591 112997714 995283405 177245354 138762051 319689392 77267038 943281849 288291398 411218889 262813095 333370036 414486464 605114131 989255794 1377006 747781991 422873737 818944084 119713960 904670883 989137339 513234187 364095959 938854422 598464275 616194153 866986559 859189921 159616649 405021714 901737215 10174667 647506169 79702705 808332155 488394336 601182034 82814738 359781255 40515451 290065715 22489917 878113023 840157453 816156816 242194776 411315781 940984515 127421123 787625222 112964896 645293112 728971632 433358975 328439090 765203402 800132508 168322411 622631038 777788423 866189080 547691405 365762914 854208147 447221247 986503352 666848692 957404350 940417798 757460424 120596613 598357924 485384162 598949584 693711852 251535637 592900793 513670810 592050112 113992073 689469210 127072705 105511479 809974884 182986051 831248370 326094823 386459390 341559462 589081167 285415466 822396507 980725554 752205700 227433987 670534105 128680021 946893540 24833670 832936916 53679550 277033433 469514512 827043001 670290746 234068540 468648105 978424440 972311549 239390345 406541338 939211030 301384445 748529537 836544574 998501388 675752142 454499783 488498760 860796886 234228482 973308940 582780624 34516343 574091401 541133768 579772349 765587060 636111767 455996953 62718912 417341093 436786919 215333884 27765011 64145922 775819713 224255184 694974181 893422650 955736589 506297114 161165138 727149033 250829135 242467056 421081232 804607741 203479432 763184120 535652361 816414777 656776156 203099943 772610745 554044477 52416550 350377329 306652434 38294098 85422130 18482415 122604026 790259851 805712756 118310839 948551678 481144976 510641365 633888725 209957267 769967204 844322646 718832276 307740985 249928878 324714344 153089885 364804585 521886797 594574433 115989760 646559256 757240966 233161626 830912540 141571044 681357959 991677856 27064818 102416829 210908567 393865790 688733881 172073149 966441926 873206398 375580691 714031948 230511530 76521159 350585432 528549754 671537161 890353385 205158081 543536928 498322446 39975350 366760290 801152614 279954480 869029324 956494269 792994926 71531987 582721244 491404911 295770785 454272620 129123748 228370687 690484150 288930012 644602608 980607092 95752588 60701226 737098294 361247130 380246221 565861263 296664433 79383329 878670646 281701962 221862683 434189947 552481710 814110729 546058076 781220631 445972378 157111270 992445906 290746056 988418225 961430575 5786274 710503095 634933099 707094752 991960470 50378046 823244687 233650471 429755804 156537975 490483112 221738922 51733758 616289824 447216644 317771556 945889072 278306375 366097593 186810177 185997572 244308087 316320123 613529941 833950239 862657439 278504558 449896546 501954502 332592636 525344554 669007176 905636907 867705324 673593190 342413529 551411925 371887715 86126563 990049755 220328179 54389515 677113328 541882039 585237401 384948149 722029783 320993993 103013947 647800679 906606652 63593569 677974596 878717796 200382056 574470451 542781682 873353328 135680812 541367817 749379833 16856854 687155432 700660528 768273094 990167756 44047529 744451711 567380899 930114278 69937727 616536209 647802377 440532913 818330945 95198255 390477111 40597143 196431230 462771974 906349194 498558086 131320925 931078996 898519080 90037158 422454539 779707619 273078028 632302874 524172651 155719457 973215861 211961811 838628577 453866440 270475528 785440235 791278326 968427936 427345851 185684720 812043310 707905804 227434566 705605877 564592835 809225526 912658162 398405441 4481663 875235996 810535866 619225864 651900791 732751058 987632917 169523676 287878769 479621465 293004558 983749414 286304123 674998177 441638430 411332091 318275157 219484341 871035006 763655466 819242757 312427248 340070075 227132538 663249192 408305630 477879460 550635741 994170914 168784674 391389446 269459698 439965736 400954885 205866936 631139396 891512531 948429381 301791788 320769515 383803246 170562877 908932137 316983579 880235252 959945269 225049162 708808564 33142317 556341337 362283130 132041678 217399051 786719810 222501969 360890078 980463854 683649586 795880479 534101467 957036328 945445560 627765247 879479959 24905047 974765254 358598408 664297863 374933433 331779330 56478899 30818 746868263 490688647 991717298 91854581 869239098 87797466 349862651 882683977 428378955 954386753 958670940 832458149 177470230 896759212 799777910 701054009 618272337 477408757 351217401 621943874 699087521 626140899 112674020 321597745 974583703 240109571 319592174 570531893 955112879 606392597 243725730 457129745 77389423 373306238 868117138 241081005 26815054 976075479 436393487 425800067 206878994 252739690 122929152 573441070 940408550 570687769 222848672 1058991 703115153 142007514 545746095 696554246 121932562 271835862 34527494 180490180 757051840 507139451 946403083 506051206 242761854 342756651 356213757 676927626 48950662 726672648 386224792 563979974 418877328 842104629 586892834 878816941 533942728 693788272 104864820 292471714 599642449 357654236 186503261 237296582 19494206 165488914 727463278 957780116 966161665 185978956 448772477 720707053 230410237 513944808 628271863 240458359 88328233 847898709 895549484 689680159 122996528 807253607 304558660 697309735 285722814 814643258 362010349 229640274 707202518 737872376 320135729 33763944 144131453 482350112 25852721 388403703 85269626 55663743 510569506 970041778 759242942 30666232 182013323 800244468 743542163 728731190 257570228 491431690 141872605 480247052 483306705 836207584 268750234 655823786 649961117 1949387 387247736 694406031 588884876 210810182 219292660 665116487 211971043 290175128 404438629 40241967 456440518 86121230 356620272 878721128 16565807 421351934 626406878 143827937 508635420 166836464 928416913 418511189 99138884 340664099 932592235 765613663 815058578 811120170 514900557 102809962 307853535 639614950 492476778 77232879 890916856 701903717 681898021 379038134 121536039 632107045 992646410 504195446 477944057 425025783 218301857 24686986 499211276 583941764 35035719 806662331 760971885 763998406 174307848 88328983 121791871 239225718 702501841 200901226 904965868 82379548 388812783 549807058 684419323 918236360 761336271 624520913 806215534 707856488 970536269 407495669 804923863 379392833 112288313 561691986 839963431 838662512 420404203 605436292 162384123 967622898 779324516 897865893 807728689 379469982 287795184 185411379 891712503 651116095 887664059 817396576 53289777 125222316 968652811 395138392 93452762 135366068 691290217 732821164 309931116 833018702 709196361 906323924 495566542 265327560 558788332 58538811 922156790 844070056 851185126 141571684 198113725 11157347 890118217 29806583 339991829 914576697 363779440 303032249 777074759 439023193 606527390 948850168 545332535 616957033 765000070 339447223 339656260 821578670 68614134 955859040 921523728 639528713 808897418 805839719 645809710 240007984 395752171 292827083 612896761 816241467 619423511 982460006 790459478 508340549 421715078 748766093 888137861 480494793 751597328 45642819 564328453 309070016 755426266 634100558 365483840 353511183 638567251 294043322 237603811 819927680 936344155 312817319 498346850 832526714 210959371 724981632 208581250 802011699 768158385 982763767 435385164 917739047 801192881 114961201 153112413 187790361 645581242 876418593 458578596 480194051 446069124 186868791 423439157 630046463 72628690 930230496 529322907 523575480 837078228 834445890 58169789 473332552 33600865 565995813 410968471 814039569 793912033 577290939 216840379 397867910 857041376 152507471 694372644 503467957 725652717 983358745 161866952 35750483 325753105 491950298 409689552 785344064 106640674 696747177 480526017 51526347 866437997 553152802 567037188 679641679 868598549 493616638 583721579 688987785 716317098 880891602 990925784 947961401 365142811 625324312 1577818 399984661 3991358 20215943 213594040 13113445 774072517 423659525 276985496 404706112 916265428 279080801 855213319 559825152 655317849 269225513 856710178 24027008 771132248 877040147 565728258 978658404 509206216 402495700 954755781 920037750 737633343 437358473 742626686 704374698 684231753 708556720 430927968 419649534 252494992 702908193 529740079 212965781 596037097 726959732 671680096 728405080 507484118 13500649 753738637 384620063 877008473 305400890 445408265 289594843 574823527 774133127 187154895 166377599 837543561 897416466 745336935 343568408 172132434 321959136 68500742 445809526 506032296 523718181 455944814 313338357 33823666 414730418 557561337 198812960 713622584 667244115 408666359 543121933 264836893 64742800 579887863 320228223 414770211 798079009 646519705 180560885 992246421 604942971 679280536 871824683 344970737 706598401 861974475 71140230 964692753 482345094 541671332 699094468 154387811 451606483 904309177 306974511 140829097 439512374 530006524 354013427 585273423 683940892 20577424 208583662 713597080 567101205 651256376 323830792 747437433 123098598 705514910 195595127 401948127 130848748 458418310 959496142 433592337 859398504 595968810 535041383 778074513 772389982 455675449 749851024 918941282 623392226 475582967 69810734 550284743 779469599 659620407 41098272 666117510 423349258 607322935 714716239 345847557 703595600 354222094 568370181 353950797 2662444 230748166 425680305 823778045 331840999 322714763 649000779 584609131 264353024 96518093 128849160 490885422 158824886 650028719 856042547 522787506 174489538 853364356 670070375 870184063 499748488 816397464 359018725 841821275 819666368 764253221 639149530 758607851 854806534 344653002 376957190 78475245 920463944 306153706 104982742 421025802 666581871 103483761 29456403 115718045 153977535 632838004 305842952 562949603 379571321 390509947 917650819 653467023 460841167 451014837 669201619 980950729 194715404 978286835 481582906 396479948 998766670 100329953 191396457 20999416 957741561 680190505 951082289 29424009 483202188 988311252 922956480 486771098 587140529 63190557 141439024 654085526 149233995 343559099 342050270 344689540 993092648 188970382 507619910 664355514 867552530 773197066 443293866 801985376 467798038 507385847 16956579 955233999 705468442 651294080 572295114 133536214 722422059 213384860 472032435 628073577 924622292 392433913 717832260 919126069 546171570 301782967 895395436 763436928 950424556 276549812 673427869 57569790 716736155 123176571 226021786 473034160 236381725 236518149 151888340 956327894 221225766 211691382 80564966 199603669 335952265 254632549 53982219 38440248 586173923 176241539 735994036 195440596 222799741 50419186 694195090 180705146 729799248 85387665 978535404 289511242 837746030 718622729 257797977 61622982 406646011 173630373 671425620 589510054 103062536 484857183 66400904 659829770 762556012 896046385 670043899 95374593 829964115 114661642 208122098 77881407 396179278 83048981 114892841 663513151 852858753 35948897 329479532 716511534 84872122 678588754 720337582 571537359 536677960 595491393 715848853 184175682 83167626 419136394 431030597 879096656 128576328 430075191 351177868 313123844 895030964 901085489 622647055 543973426 792210802 513920720 882242235 449127960 188085691 944044186 999299635 244905657 869010167 898946893 476602587 303101713 39276633 944811670 253199279 974412945 374272628 394314706 563800850 128781464 241702449 142038593 815398948 10322721 105630204 684805329 650687036 705588703 17155378 55656613 778593195 776248370 59118091 407374525 499919714 707551352 920900695 29771083 306994438 865962218 311491501 174227790 889499849 52195472 158672393 959630695 59054815 79794803 925507643 232974788 740424038 870752554 755762083 849778831 595169742 714570981 71698054 91949219 892697140 518259835 354826719 94947454 648594888 619892708 100654926 234025122 811942673 659325362 388295244 852968712 531609994 841214192 952900374 277270787 764910704 604344825 131211675 907658628 502561038 819968018 681029520 922652676 792825925 154818472 506268567 266248395 974561751 865179686 655623225 684514796 734921519 545841572 646407959 219471740 737689095 217930039 89955854 987131229 703142579 80620980 545385970 150473206 169800637 13879093 137346827 998051995 156710441 94564860 548138683 447711261 489361983 98195704 125239208 961068204 793638127 490230841 478674263 539938737 240128882 546534521 633267043 37925432 742321167 66328306 833806636 55784493 896594968 897317388 611490481 349963634 467711470 865896525 909401140 128860036 369731578 94483575 604413419 322998737 56797385 575676764 481100423 551576401 348886998 125777186 20536635 788310161 511160585 12522278 411896456 592961525 93189389 804210477 481013984 188815035 799800443 25209370 414363759 557808003 123788395 649247465 529338703 512049483 73055655 922626043 436632469 78635242 198215397 737160228 931352271 608831687 881882148 596732636 235860275 34963605 802173652 789331665 362001748 545848251 517166934 998649439 861247433 402996719 581005800 867904285 213712689 599418854 340931118 457919189 266811414 362678475 356762791 906537791 68750868 949422716 199024451 424057526 884508221 123734507 696215972 51767493 576983001 544475415 157633387 229137819 900503019 838250009 618997722 881741885 718676411 776293482 596899122 200614785 575139202 233119772 896553634 852392907 211658920 128202287 467603120 369777771 41852547 447617769 33435511 742199815 670495967 366806108 242851944 394981774 117021989 743230886 736652149 756328723 419946674 212683555 665406899 370268007 746947980 82608639 468359072 903640458 442924278 425889745 874248381 310695224 830978485 357471268 926565309 373032989 570218043 738867399 339373040 483468160 623393357 243513014 350925744 272873415 868193399 964827881 78486949 643893188 157953078 28866719 25219470 854985273 847077836 142701062 552622104 101622856 7259403 374405535 337318755 684374244 662222153 69857500 35989906 543171722 682147450 412140861 313761407 57638028 93683114 953372679 606814285 516773513 152397192 566544859 855545172 732651807 814942807 564113107 78879537 655849000 484759766 841489638 229458688 669754987 670282925 934940412 997826064 421213437 426897461 534203652 633276306 462145787 442880248 749639329 876697038 871165030 942776783 621047988 475762774 67199913 922486104 759126933 993298053 807978071 899502932 201535908 795646999 411078843 968157056 246294843 876347316 453096338 31994400 829269634 319836397 848059856 786113030 173711467 818076483 685576542 760997318 960428318 685744951 488698093 209062441 680079877 480348566 948415468 873639257 744851237 49091600 348316936 702035351 910189698 793455934 456772531 515213823 185656065 183129287 409811916 21643940 31230032 981456402 715911212 993737939 614299722 79278900 519231781 237508402 583077753 887265402 464963794 902038199 737916813 696493424 296251339 681320890 670043649 941531869 434309553 618753071 127099230 221752958 433324688 341108881 745547709 670296762 110280545 243373228 518470054 96089450 530837482 689471643 67970071 578967852 127978487 877974112 4277683 5391745 521048251 404372021 336634562 102435545 504713256 15431154 770032193 556585177 755387993 960503471 223637007 624586330 152116240 288018919 455515018 527609442 827796366 852099529 138540775 904370150 727468412 426769208 447169379 526452060 891888557 350985611 504791206 359449501 841740146 506385553 204572620 474012855 909093532 63205648 832846712 68352901 549639640 610670220 578835109 173494473 900437383 790800133 221845822 471151601 149080569 596717637 53881246 86203761 732031036 911510299 651636080 532480608 224044648 258852534 16663185 168040948 466812385 32306746 773021749 478818922 859884340 81464327 410143187 824506622 271635854 297650067 662133449 131597855 939562239 272288167 284574062 533280519 112663887 771502419 937647150 16565948 926696102 633498653 523341005 578820128 23206817 843733562 359401729 347504186 50390431 949278071 747228322 748863754 18783172 139964698 25085727 406858916 497318254 276456022 43881217 302290401 689804878 172577013 484574355 222597219 697269409 280564455 244195735 835755283 272162246 781399978 422448104 474194979 167631712 718558821 775977660 285411851 636388273 545994040 360983486 989088563 921011259 576864896 194333761 651784573 360909904 20722164 170853345 619022433 584283270 938788040 68614068 766133843 215804210 619494585 787354858 724844468 61018713 390496553 139317827 538550054 991580179 124825380 538872440 286540501 422672743 651223392 928219711 19057375 749824818 496985137 825019876 631871879 701236181 115826800 380153368 843781736 735010529 88271895 732494931 240700202 652301490 367543100 685598227 198798316 719092956 183237406 496318296 376546376 14205923 892929216 7041108 997547756 8149153 826728778 891764447 105611002 939296910 453635236 431610001 638653110 175473259 801768437 256372316 765979184 663479099 762372372 757502342 381163903 883607955 466263058 5618205 570866626 578977670 682123175 650135207 538889151 475857147 969826911 659041081 791575944 716386489 900293114 859640778 449315631 250678557 482933248 56839448 333828060 700536847 650760064 75536523 69008599 7390476 555408748 997190648 780261648 535181504 859623988 182307483 924796210 898505171 834851003 816453110 319123781 135369602 569886402 973248233 100863493 112039566 647205883 554812397 527425515 351658308 33537931 893081417 950574019 662357828 106512997 886035058 784597902 140647626 630401451 291407397 42116539 28864994 998506031 886749580 971133485 758786079 38713794 427044875 277945537 717375995 908858421 479655273 958759878 846541894 919981481 949652711 192665708 570284951 462887406 88573797 261166322 786002517 693402085 24197764 816244343 234645395 246611013 1396655 210429581 229514553 882179705 523899642 682527187 877023923 772906841 586815959 939794610 294552258 978791296 672416157 208048916 699736353 78604184 588454899 270272231 414532733 857677915 489948084 798363383 916341646 635085055 470797590 255636060 711878414 969941118 319888752 782545120 992093365 658756225 662080219 274159204 990486045 702735341 111281418 544372953 275203955 664731967 749994685 107810681 747623394 884648597 430750880 539965084 489256735 954799387 91283207 72828210 606735977 222867465 150612119 250225646 14982849 770555950 673936154 131526248 672299665 196021409 320517155 139779823 589880103 658696791 638336865 910050634 763421342 628212460 103986827 671416336 262170923 296926868 249848873 402155321 620904918 233973112 758852655 421948856 802731172 65040424 444710088 521203564 931390392 23284675 871047207 304421157 118227437 166590902 66619698 41320448 756358866 497343834 857869599 621205753 963163572 523757265 985395137 633598434 667788093 755993797 670992805 704545813 962057662 133925529 138989821 213747152 299021593 605790839 710904445 246177478 215279834 252179046 874804375 630734554 647671048 414216327 282672437 921948765 391220991 945313138 153296021 67545152 54531880 510253904 839289545 191521660 390694756 674656106 836414901 703735043 563063901 414095980 184520440 540003762 257790085 329339247 261092102 26437987 782224302 319606112 76919852 143536760 890316163 453750861 851511180 989371057 1449746 900541223 138356875 980919832 340528237 983861002 839437233 336439296 145897576 317954642 425842813 530306152 131092586 517211883 563807570 336598037 627501918 130372815 369746555 834348862 993126706 407614244 900514240 232411795 654170513 650228386 298425014 386920820 965436180 190358844 880212172 829834338 71450083 813513127 177098457 170208132 510464401 884468131 983796831 9814966 149440451 470920585 270895530 75936525 505558128 762813827 160310908 192631859 813230265 127074675 834540904 812934277 81899464 801193487 895623476 325762798 995508922 682600095 167621556 576028420 123130024 217924195 473265280 622161601 317150388 740986354 646325432 555356651 172605277 258410035 772110885 325424228 488724455 540997058 3948756 898329859 852652585 24046460 145163636 172173810 23672334 513450097 843059026 807009917 621429237 422281948 135667014 270754731 772428111 698101511 868922633 954984891 402805980 784277061 76829271 240760036 747273922 73313367 166342517 183820783 576661007 748815151 908878384 367638049 462563781 222416432 8300303 526879987 518716832 994970449 11801259 479607912 612972747 786479811 389163946 137472603 19657245 379253313 458391412 652017777 544972762 738622811 422723141 331048552 437484354 74557504 643074817 579126776 655443130 934044708 413263841 780753412 533347660 816030202 485568754 22488158 823566401 254141431 845338380 473887456 538294106 255587553 187093711 590112376 248945459 626280333 982818575 444395094 869973450 981572910 172801897 315076355 566006417 744800830 266280707 736804773 751591468 819000938 734952331 41006781 592424500 534306951 512510544 716300944 579034470 771762897 779358869 932587823 441013749 965418361 477830839 578569744 794441100 941389735 69109124 724155946 552034867 517101239 778926063 364136107 554194799 210622851 967805525 18927342 502598900 948388501 79124273 953616170 106663679 651509528 72313031 848871459 740170506 558421810 459396052 935249453 9010136 530754717 498493031 917995524 83149176 506781170 292868186 340965881 82709026 765830992 119672765 731529317 36658084 266040243 21993502 992646422 530970973 411245342 161488440 633990283 589492990 604672625 374692722 226124933 555789741 228430310 281970872 437880802 307281152 495298853 60514431 482595639 68967613 469632783 933354924 191972173 776599570 974373586 541707012 121896308 601136929 99618215 322585900 144353443 566796240 998021226 612564212 237986075 817482834 467523081 473880192 992546944 216915418 471811959 661292696 877230360 593809701 813576116 552594950 712980862 765795438 567766522 382080935 595197969 397301 903056682 183470901 76955493 380320150 745771391 601129445 610902168 386698650 770692637 664114905 933829786 419708441 938855812 820036026 442778025 135295185 142491382 646855216 491924389 872923051 435736188 845232458 412315400 594170136 470167490 614432250 157608990 290710812 358264476 965120970 914700499 628171120 359810366 778005242 475413675 100303763 235220258 924971174 345432225 230006675 253887049 574834239 843096676 79471111 836674863 438341076 617413029 477309142 539043279 365270887 86215488 303841210 755411837 952640500 74290923 914161945 938105756 55681543 878601369 186168343 546974693 976427091 591901822 902697469 748581520 166844537 343140890 938853418 14095112 424746310 507113673 745166982 831050795 454926747 490354908 22908766 993747074 191942496 569479618 799505576 383519918 606953990 438562405 641948182 998176321 697488258 930916498 543027154 357782502 735768512 274240788 378061391 610038637 660934371 147687210 236812137 549575123 145462631 34362826 405711550 604396754 237919512 308112375 723833045 911379367 152767811 343778501 897481648 675955441 173620544 685345819 357848899 960373328 568554957 865037138 54996235 173050620 562148948 531918955 606024281 728058653 133409301 207470535 880316325 328749970 635110027 12498842 125907410 253445699 692582449 609133258 283347062 692086848 981597846 577197382 656525575 445490457 779693360 38296101 712831363 745353540 320661534 827744849 783501480 285760102 373843419 26652261 130592905 713484760 991620463 36728731 242719550 326710193 707318622 724782209 701556865 38674718 49623643 751708250 779198770 761990848 59596068 313468769 560609599 744843552 507769791 174714927 603295149 622889238 47523479 465874637 373207427 505835315 295191410 288826140 397891110 493060070 738581123 513894043 245472363 384764761 754332084 61581192 391002694 225728574 994593704 430434382 382545194 957985858 69132457 647714542 810717350 393944968 261324303 927643604 211408538 924767886 64934359 647452506 115445872 337168104 260386918 323498312 166579520 889797458 906613579 156348223 139209220 187370578 754055362 305141518 243208652 930425699 626964357 969712285 964634834 946705559 950452241 782212623 386456835 145982330 159261518 279542132 882639593 27921999 788794682 910649474 43227154 313057209 69073668 42448445 106817405 660586186 224105314 182290474 291957196 336082129 748872289 713031167 241859382 359876020 914520505 409314219 876893615 492880179 737827850 449143976 542301900 447000433 677791156 828769603 220361302 927596610 289814884 140692664 619828537 649494027 304798612 566500650 580940012 571307901 372402139 215142268 928218740 505168241 550784623 360404582 290324223 980470756 141064690 100889488 334601234 205862254 420671867 276951896 189987028 858685871 955044454 786151102 196852586 742742504 341822257 719025132 486756518 916774186 845893874 458749066 192018029 239837438 438689576 431851012 569592360 582474817 574497282 892336952 905578510 321705887 540083570 552094372 819275322 817014029 640463061 285379992 544494834 179662996 626107299 881642563 548317418 734101830 679615401 862192466 892815547 660100469 41012764 500232712 440535607 83292161 415348800 524225820 614177685 420443659 163487965 899182581 566565540 878732963 763522488 176602526 650393392 384218173 431923501 698880923 499862333 378432441 437765564 865483247 736866785 832483061 808895321 655482695 731256777 738122910 956006218 476226647 611975231 875684834 418662641 29563498 866193766 904901652 957745285 668410942 659651402 990245693 928501160 40234714 838245088 755821232 26114052 676679886 921712453 27270511 229389384 932443613 980941554 298267627 678334111 499037953 618795830 664210197 336220092 179966915 457713563 723626239 120613077 496067149 74016403 987605178 160001693 682082984 380690682 817555706 783184278 782457212 609224031 599730752 353500515 456632475 511812407 919676770 77561751 119396035 261963349 134605552 453099085 455827050 869205152 704748692 623437278 164808032 767989078 630355821 410398321 701619942 642807649 344079943 538180385 519821065 710717469 472753972 931066635 195400650 912780471 566627923 108929608 902957799 771366197 697863032 890575454 368297879 816041536 652161347 944898964 635003361 60177755 548679625 792170769 978906418 582013362 814918740 376487786 221626490 837526468 751624894 662689519 63070435 23962783 256755209 969559122 544498187 318735938 876531180 723860436 734093614 60366419 438260975 325455627 29656220 923808311 565515731 930261304 680910857 927811526 842163456 135787539 367830095 492679930 586280871 969257462 549574954 775842329 984679753 776739258 367656358 172723116 726638614 443662457 148573152 799948154 606375314 768353268 124831025 271070233 88566639 266797106 914550102 5783701 589468038 85303411 818453602 968477858 935070156 502633073 345439425 382550154 640713753 172809696 608394253 211370857 913549497 742067388 669516893 632611840 327047797 761318501 865713117 263527809 560649544 802276270 414071280 18420584 302830260 651633046 646194490 510742364 687230294 983933799 582204439 931677575 534190425 16979416 445026307 86659666 343238314 847045943 456514657 361240352 950973467 525662479 104584830 20607119 216549310 500611174 483418928 465569755 991647488 566208466 379257087 331437506 52930955 609622314 566724789 14104071 585140306 431979567 201896894 760396436 597983445 356421955 681248155 556416391 908952369 946000363 162933935 164132814 434671795 26723717 23693578 127100529 53921276 787864637 367647211 379769363 195090377 870311321 292148766 98694125 254196152 218230480 858974531 915879746 628932261 597601648 276825728 623495193 894373437 621474503 186995533 858988013 273755098 15414232 59772949 568150241 190958625 940509769 219662547 953961052 634151874 274542658 66373721 45177557 673271929 510304961 644249932 442053494 404568485 836263009 47971918 605623060 263000348 96253923 147997608 386132773 578086672 723133674 602064044 734161821 265467959 72249786 757415303 621369775 334542827 99487798 410781034 956997628 82105564 704151362 143619674 883835592 362684153 425552069 451872261 847220639 665370390 747422320 481591638 485114619 300741735 454853142 242404472 92498068 860508998 599334030 563323840 402199863 554860783 378779973 665269835 546022644 106335505 348212506 753521477 77874546 358738733 567177223 255746648 774722564 557508180 360015877 995118742 769665729 70949823 192019505 764446567 302222514 485276088 541249763 457978136 603315752 327192171 654855883 495211136 240206760 4583166 615765982 382148411 910114153 932884482 495861983 31431712 694998002 356103975 639812523 626901615 962970694 674624853 542515487 198832431 211939693 2756282 702116390 156950021 120726824 524000296 26534471 961651383 422327473 682590600 509216313 224174180 432480084 714985850 906344905 331955642 997564108 511259638 221067129 697123838 830159477 397131392 603704795 190777088 779611226 923946955 308720489 140124900 800032929 518640724 17053528 680201660 792302366 521294324 404904446 692865658 301854739 522867474 343937991 606655741 312720397 604095412 512932542 507016676 806780604 232639329 762882482 628499852 151119931 10573532 434171954 962621139 285155516 901956085 256418201 592236435 600078157 726177014 147210644 762648639 606169814 33156379 774217536 775439921 4776881 769383274 350538437 921410624 45353404 512377636 1943326 639029093 146769872 243992630 418707667 542632641 536346218 991923568 995358676 540344843 588455026 325000147 548959539 12493461 576957472 84783203 434927458 284488357 416936390 662131760 397578857 526337649 652624360 962894998 509632651 507523883 672308739 437722666 174487682 3248223 692036811 71589579 294631686 943152783 109776417 161924512 630555985 95525198 724193980 847002290 252574947 272771120 630870915 432876576 988422687 61050909 342494268 475239313 358994748 434421207 961717586 142328600 172667623 326681196 240936674 743001478 102272872 326416062 575688021 634892384 747938513 714405563 130741846 849708310 151020564 115611422 747646600 516968476 150439999 838784400 109007712 241622728 106687203 160035637 734708308 121579071 48684934 525542622 824404799 26612987 171780872 149900035 601232232 801141035 969899023 539620540 983698456 192262775 223544419 838329290 974003738 155875573 766032992 398589261 350231573 268190052 527899774 103894216 66360963 173954143 162437649 727268851 994878438 551929972 795108834 464145944 423582839 575769339 57343586 408226047 259663719 507688551 677087236 983169461 472696351 794644922 954702315 99865506 668129461 698617182 497673087 635167933 228582363 520394059 690895887 91890635 735158837 667869999 814144384 271847019 532821450 892778453 552545982 777524213 646293285 390657114 468999998 902527829 497557343 344884294 867678467 523928164 784032290 216676407 219872384 236957169 146798885 131283848 734715773 135265560 602358916 930281336 140853111 542680599 868211403 436953291 567595907 275497202 708064229 443211376 378272805 656933582 336418073 243409640 263034485 402752518 288656230 68573368 737076383 920106860 657620568 953309239 259481822 909111720 36975905 901854973 574323978 951184005 514575653 55765013 449619724 168556729 890329110 899470350 301427758 449873492 862606658 522046023 995813944 418083347 19701157 268574212 112750273 197908031 625749741 713509827 235417102 597122277 263303365 587358153 58741150 290370974 126247028 79239657 115239073 886295072 980882829 862031047 755871790 807605403 562382791 790528343 856078592 739537884 396036712 8173014 160453991 294664309 959769398 657553718 479193953 579996685 678017222 976636730 599530959 102012999 820966615 831953040 360526829 820044507 359400731 934617163 588904702 373476354 821583411 162295910 932780102 921878661 583153938 850457293 69439163 599585712 834634779 881608265 869369092 430128357 227048738 37679697 360857536 671384346 303595814 283818246 146326753 686747501 478273390 254049468 275207223 681450475 592091340 428509507 90272419 395102093 768433443 377865571 109441879 693876453 461522776 251549239 899491409 973821360 169280963 759110701 452930803 543807222 444172996 800164861 875335751 355274953 627903090 154212577 877287010 928872886 866085817 603160686 666839589 736247405 211746755 765216463 71655333 614328006 952688339 244123960 701283073 765262020 751402884 518464043 852964468 699557522 703115787 571859860 84639463 223931736 841415465 682902796 258896041 92109935 180393943 120886693 777522865 573848675 543694703 10852221 107816886 537835650 36201348 598223758 85771712 938498179 190333700 708498248 677758950 189683493 49088745 174890919 800203719 206840788 720902614 313045049 976949271 227213620 540368833 252640932 694676720 191493856 225129207 526688141 220035858 123517708 779783587 244061224 422892819 569759820 84943006 808724657 54830290 852796932 900232602 409132400 595022298 363969274 838186260 953241177 424737765 654752492 888995519 675817608 349584750 856985861 572762540 740587428 156377199 11824056 818351681 20982033 465219802 64993470 10534261 991752477 323458186 292656988 856697247 309812850 505844498 997222635 697086941 856632527 861239400 534623997 125241014 477810406 310252458 148543805 760143028 139966315 944664776 812747273 119719925 326264628 432730419 868513028 482910527 406619167 33059245 689409197 770917559 5521196 747295517 414550071 65462188 239966031 397265379 449073703 241277124 297834999 413013567 267490563 163476386 154808441 824716408 430374123 593907527 384755232 476316359 598639764 534028261 868083899 918539715 45640417 445340274 272724551 832171154 992791031 985615610 56024860 851455588 868809998 2340845 946487892 20583837 662013091 733389029 224089643 97325155 77453444 538820929 296227425 419942840 555348830 341679743 974818944 189994679 661441511 44428920 505819468 881386917 822741908 753973873 584605194 280303957 19128552 65227127 190177161 947072841 690633019 954890932 206028779 31689312 172166571 940639470 340112861 378867681 391844793 898367928 624769375 286582947 424856086 153606138 795749505 235783224 900487572 632636827 822934363 499217936 200223143 941426746 715545052 738642802 647306099 796676162 700805968 444389856 681167662 635752756 986425911 326862708 356817680 94695290 491603645 581916333 711391347 367426064 767276596 232917253 232926931 460339490 475913970 524211082 171729528 498105356 155793264 43342146 681202341 947044542 950703381 686993706 622127155 755746445 42451396 613634988 90779366 828102026 235003368 622829062 28641907 406724252 39328338 90052926 801690298 252016438 258262367 868525970 794199476 800639742 667484319 695699358 982723894 867831119 301386904 387242676 127735863 655644402 593508429 389609673 373146949 383149333 954655153 85536932 975731870 216984637 562986774 423582859 266918602 492208451 484796070 735155929 740890988 594008791 374407186 354924471 407470847 526652149 78301089 566645035 821386009 358358600 378570519 915770982 484213057 726520869 483276790 37395369 599790907 769415386 210244434 867022041 125317423 304585395 773886341 704348664 284668354 618482281 243656489 173747997 435323453 443320672 404498458 53787378 375850899 138280310 200503118 946157806 740771267 473406667 619642014 707472241 624584495 674523414 548469745 468964927 279491234 23264754 718534059 435024700 30972370 334310693 187666231 165622822 317517872 297449035 286258790 591250269 233536911 627165105 139389817 165257606 959907792 475607852 706841091 36556855 38697034 700481486 830455835 933249422 999544476 858345389 266263476 76497609 975130175 49953715 510666984 96053474 222584468 872367169 98699876 593497550 496011862 333883429 460200290 417090224 401155045 897189956 483412549 181520251 494071297 135294118 20143502 722157205 992223302 632243828 693121780 289977406 155852982 680814983 54999196 211184710 189195031 71951040 967815246 284974802 906322556 457339241 863373224 252775927 517654969 94285561 275217262 695544150 756989142 933324708 477757386 556559423 875174693 804474544 220568734 719208816 595787395 994443276 125276038 265859652 432408254 694061486 152501146 596811639 345006722 526617577 510621850 649604211 20444778 825018822 66823647 305724518 963646139 354463682 556764111 653837890 414749111 592605405 719946314 944569249 749053500 868866578 215598786 1881468 152086636 335441384 960090515 939490638 254252493 707470505 953355435 441221491 594426138 104570090 880383602 166984119 45379002 68344879 261897375 640399384 803711317 267142062 256426834 417128901 375542767 23677413 429329527 179239164 991543878 360799487 111877612 225490523 63401518 228440294 938041228 897685236 641188275 341370827 97330085 270905793 680707137 550044023 85173828 167486643 544831207 250014904 585922484 752208645 630911935 131072432 759676835 276533983 197942784 209375593 738661477 5054785 228287191 457197172 165524301 620051154 403445357 628815187 400506832 167613950 146664358 138738516 97103352 783051889 271149437 386078062 465262475 961491177 352955184 636553296 896872868 851720106 622730910 985874533 219603166 384912115 877043863 602039106 908668654 117241221 991243698 652409800 779218451 134672649 886287523 413530510 425251224 868708307 812522452 649154838 804611328 834354547 327139121 298155374 393585416 625515292 888509646 54602293 80363117 419902118 41477102 424408321 689774327 471251701 457811105 689757620 794743220 277425620 860817660 761661872 765531630 925449044 178322153 371535400 855712210 774524986 95255055 835529871 357299655 462080513 707845610 802844687 766521309 69531402 87221651 75934408 587105098 928858304 616982220 133069681 30061444 745893799 708233780 361097542 681826802 226290266 984586025 680752094 5704411 249822242 878245827 254657673 411151763 164817165 439542700 431445278 238021568 772054425 876974818 839271349 353378897 81544013 97418247 644946769 251872517 501592873 462693077 675057019 170446863 512163098 332967554 122505308 481019416 508884204 358783716 959858179 499413773 698776534 660114359 30785344 289273431 32413158 530316881 95741579 519341691 202362049 354252080 369355791 967613260 202086383 844128830 780915087 866470482 261533991 202561598 376101789 136042262 991743661 341986126 839982388 414790220 678715496 193372462 385845417 138518286 792361911 819342567 478494057 877912933 303561124 454649495 783364685 885167091 147981252 469682908 36911635 115657631 763881653 767692352 216167512 521617854 756174710 250249 167880231 129092730 600393717 966443078 734767543 570536781 513268662 447807026 309705258 930182511 752068073 257817155 285205154 862854254 409145362 155276833 251297191 654244328 191765426 72281834 402500998 59735165 188011782 713723358 106767258 925594541 858874715 754029175 283696538 691899711 451959311 896139453 314260723 611913964 501404179 444872706 918481431 88451347 425080527 309846908 225069022 632289887 440487515 827971313 558107222 661376802 186650027 130596557 336932116 495192888 9974361 754988194 151394566 29992848 800732222 772993601 650515718 145872030 806030351 967775085 533439599 942848422 941599802 280072438 910241621 899897394 264131583 361536126 861639709 718834055 988489083 929573705 409467643 718261073 933019569 829899784 146173634 255012082 667355258 842256623 644493860 99963435 296061826 815853440 622640415 782895180 325670003 205635890 391345718 405755208 163570850 207127328 65388670 234057363 202417986 440196914 420546954 631534386 54569444 270190798 103362901 296538410 674817386 189169086 133767468 932903645 565412295 323193824 320547077 206529684 440648478 361563531 121370856 796547469 853707080 59835891 453088039 737015856 669924842 957598436 160531714 197634766 341779116 233579410 296066036 457139840 479282508 28333134 181467799 749592171 965077140 497657203 977329871 793863499 639289390 976807190 756634806 839542447 937873200 724537057 956142894 29032694 804770601 11409022 808703430 756513202 906475527 83543398 409591853 116028182 198924207 208653733 403519604 655149850 898119544 226790148 846220412 356093669 513190135 959464338 19007620 620431179 254825568 441018246 545900218 631430220 553079916 818090338 301839672 56813694 712999010 568056178 942627656 92109273 71301420 689046666 467922018 134000859 181980546 541535870 470847913 975424876 965205722 623094092 788802857 552158275 301632274 106656006 328138718 552288988 351371362 312651862 289080489 975305140 532683537 208270350 431579093 292618918 978631428 107782586 323917307 601543516 873228950 882698692 966577765 595559019 506084450 668858879 902373960 537348700 383520025 609450609 257074524 315843034 528108444 53847242 718151516 143926247 408745335 229764078 824285592 475061906 802759118 336869773 406423255 88323494 826115155 337032084 815283718 120611116 92790810 901774642 438530180 405498864 990326980 539942630 336125268 620771249 497737318 385270679 724582295 919259381 758105200 730770909 567853762 793494717 763547053 83767888 144047224 315535772 110523419 462847427 865482080 745278318 475927126 522223991 125583605 588715660 598988294 150960189 774555379 105027690 218315624 618184995 795823529 975821856 503998607 738067086 674712306 502535960 266074734 227008098 204846784 601339657 493575854 237946643 184379667 195674240 549892728 233772903 479060238 953955433 761428295 711660160 597481787 447065078 672503343 584968914 57357613 603517393 65857417 479822954 187609269 750111263 877803803 460788207 67962543 881428816 637902985 460971120 916135729 243656725 907992702 966123939 777735056 545886188 828918197 82077113 391521751 923768141 629323059 647868851 419227510 956183417 144121458 847481678 334100947 990718477 213819268 231222807 694709445 118692764 218092924 308776294 181086769 861078992 487360279 861968645 521840184 51214699 380174399 559905765 353553552 907207049 420683930 283222963 476950127 393225613 215767546 327165889 578089814 749616247 53557390 346294608 67605723 962452916 724368061 259959781 574965329 161530997 273833557 735126422 334166047 454315161 339032298 28363837 352056075 290559169 344884260 358455519 26312979 223105222 301527388 432888426 874774975 679236364 823449198 769851370 718502349 607263581 324394057 107371701 474648335 123174119 412265928 868749839 784491202 913514707 358008345 45229363 776412610 400023732 708715688 756799361 374912676 641957855 557067053 306163286 455294284 534248637 698146198 629640668 283754582 308239527 982408028 405621995 392697066 689765419 19768418 577762834 879165602 158966532 651446588 323301664 979214342 458546429 441090039 196516781 24476325 435444094 799305126 143205367 114308042 689077635 429222580 823132063 80105496 831727838 201720490 742469244 613396003 398885748 646503296 172549807 81998215 294601048 521561329 383340634 765053634 985331654 362719271 884311592 305204688 590878361 700477342 370884404 746542061 741219950 683066806 920743572 489603548 209795332 614079137 708006111 109378435 161352668 556166206 626613251 863888132 711297893 969060291 895074792 30154027 913473850 62694169 934461315 749895388 578860573 281614446 774540711 567714446 960083591 890385522 835456346 936415830 424543117 523432188 991141371 92362506 841784386 777650373 360538605 153075307 160013760 228480643 315807379 920833674 262227190 927987258 393098951 919648799 132380569 803224464 74434661 9776966 192576654 419908889 77690357 808750968 937662861 555658040 153054933 929888021 125943582 590393867 396305447 90687547 34497557 904846423 795955487 517053014 289343368 45753493 238787003 981664465 118290474 393368968 117157476 250682809 588758294 253914892 413394619 695862978 384919937 5090325 547220954 86256534 373941658 665482979 583970059 703783110 305407290 984616189 38915247 976489390 405629506 15353059 410222717 670587799 829723913 392819872 593256022 436155141 949773627 960790273 9669523 939617071 940098101 665853845 245658082 163684035 630294128 815369717 49072832 525882407 375712262 63327479 32182141 18728590 102620221 798322621 803813257 65975167 426592191 450590140 123701541 819732669 943123223 715862867 920765438 725857579 115031549 55278043 79208092 824712407 857506315 533155909 508024600 729469594 830981883 361747414 114495787 704998627 536991621 112122385 982264058 320409401 872911540 807551874 739525311 525964632 825815054 83391729 397449600 817574875 124735884 413758299 650548819 78780042 987355020 992621518 67231187 955301974 191966182 236039442 726429738 521359711 865207961 452839765 883756951 874050969 872736876 400706775 302868798 744967530 733075961 157000739 371264027 991598663 431628597 785833762 427678304 104049963 182925329 70641545 963677318 552627159 867388807 502095855 985007556 81677667 665841111 443261843 195284244 776030405 524908139 640157945 336786738 765873705 851331552 636890878 229835364 514346250 4634454 474571604 140150496 893216822 164146656 958843429 662947010 659452254 997919242 350928724 928982439 772037680 319653121 846589005 573350357 242679672 71299353 783049702 791754697 548280957 141759193 845232477 469107479 905248033 510865283 566628395 732040630 170861882 138209916 60104330 658697685 46567929 425625636 698796879 731984304 335612015 774834736 498985943 621631744 964877959 898031887 458119435 131415862 195534826 595690121 529660101 977000713 685646330 998474820 532937060 962622765 27980593 198031003 939266594 107403590 375930138 59186912 354375852 798295555 153264703 804988048 772432698 383741968 49438934 30666015 227022787 364241982 314651555 530621647 496016311 609392945 699042278 128343204 845368161 731207395 367764830 448683856 341424892 884413949 348554400 21220024 818422652 29757369 326984573 377188230 820997055 311005320 134574808 847455395 882482618 464789924 981794015 634745623 25444082 5096949 214994476 400913203 915282380 881955973 867574443 137302321 533950740 65978884 952904489 265190239 296706682 923542468 153498776 541481002 270735596 935353687 409019033 295184835 93599918 945775899 319713040 498609534 180061950 416978644 293762358 941940309 50628037 305859992 782157446 294939131 233818879 648590997 812969088 993930931 760988384 12016709 854006642 862627190 850106526 208661486 319357726 788006374 904086017 489926499 854093151 413547008 178893487 472803887 726582162 271329183 772315780 707298176 428866524 38357334 464121658 383557530 482029743 125814973 408391288 466141502 488567894 278371306 603673776 104409249 480974184 244572751 152126137 228188028 61587010 809916870 353586842 975167285 998951689 101632997 120961050 670989725 685090135 680338444 919241381 481807643 914503086 683845928 68879442 33863315 230214074 509847667 66252938 739728228 339257183 521185545 212816691 557648916 172878663 301143121 557564317 233893354 459876836 187438675 857476335 999231075 388385028 574426864 729896050 126372319 470240420 731992676 418736982 534334814 12575915 520140470 223802508 530572161 661571249 59287212 204824378 886136963 204523115 451878471 753331449 254068886 179602851 185331560 144504901 461846340 628896197 736141186 913012554 957897664 311846856 30989018 325056993 805984606 711321423 717328921 37930560 58351045 280420619 697590534 415984865 314686555 262456119 26704406 283780920 508848256 788301437 247899599 347984907 995635419 906783817 628778940 362280962 813166059 720283413 435886125 311843856 333315931 897464213 507300690 266301759 675475401 945014451 671184052 293566309 23004694 43528496 549779339 88126818 10749017 650875266 758683173 251258546 195823951 876508107 576287120 942238766 901272752 700562710 748278993 455378975 684999891 645593723 121518245 215312228 813742201 460706082 897260772 802171363 853976660 533838225 270147729 16156656 810105539 966416207 44056770 690850121 783458918 912166722 767891529 711128336 124081995 619151266 714522633 181318758 483718399 860463449 165012165 88634220 277632685 763592823 668662666 77073079 208007114 644529779 714688020 291431599 680666529 15849458 990189752 740872237 980657237 970941429 250898151 593511974 370318384 589220590 401999954 958846642 900208935 157980538 168044169 973267542 800805461 861777056 382240322 254971407 349448746 67949711 946308519 402660706 856238861 776266462 661728246 431777650 789260434 915214713 993871445 372407747 962074738 966976016 418389999 536780827 658736965 407538041 898214341 607288749 206745465 473203228 328706380 543035371 130041968 48210555 866948841 868949577 986372054 459359962 468760477 224798299 153101149 409581247 917980270 270015924 442941771 200653908 652511142 232300568 586205671 804424822 2850187 618736575 505138322 398510129 128715788 115873011 694703968 456574501 779097352 264160306 974527076 401046557 366658808 496975809 708787742 580637015 125317545 57791297 361959728 938782864 490533294 749578296 441294420 110178456 26213952 978314168 689384242 759359504 774902770 79331936 849380693 311876673 5884001 116796185 814487594 324343060 323384677 81280438 603485834 385156490 702573094 464487971 852084976 187599709 167469068 923217522 264269156 233427308 985980441 51570608 125888751 616362853 548759653 27671594 11945014 209681317 199892843 30474755 664364157 373128556 483240990 658409151 528762088 713108930 358300634 511596775 888869703 274324350 245591664 939354968 580582860 459799376 685113228 955068479 831949696 874025250 879399717 358868590 335225985 148319387 414458760 966002467 949597036 951440819 130987720 252166338 370975901 502666147 340035477 511363627 515018310 181341088 183057763 958107530 582913861 500260367 468102438 129369894 453643132 518961983 929127780 839018461 937807113 844153234 464168211 971520623 353736711 478014549 252359742 423802672 322488566 979266401 298629242 187951692 484926403 111196532 767099544 972014253 180043438 381166954 110821387 700665660 59752721 565822263 522427875 185585458 856462349 560491122 71417364 463720043 222984304 77121119 402917962 527209525 602203974 952033081 174577095 989659120 41725646 879116923 808648884 863554726 586591072 156785818 347171197 551480961 7563444 628290388 984400882 383324270 931400828 865452396 837077473 763063531 957886827 468556889 641996760 836157212 31666208 597298267 906515294 739561081 758558390 843932576 665525678 291078876 299799210 952505557 969820215 736124880 308503944 59169499 511817171 168221556 450298761 551927737 15058522 784638268 190222580 182448026 798870457 967105654 626425302 271936880 786418437 401480290 982196125 715788095 973947941 783316338 42346525 216936517 350644798 453452904 307549220 10180417 572149919 640468897 996751079 999494104 828654647 411884228 629691582 976662016 67718955 745564085 552841737 282019700 61182083 449380187 192147840 259539062 393010192 274258830 623626001 709958233 914010489 501616989 492933205 94453322 199361575 313028452 634770546 67188834 565419504 213221676 84221653 884617670 6636492 202905921 741690507 373964214 472550535 421259378 820727682 345363318 239690030 677296292 199030427 861385682 311022332 973068181 926357369 842839496 402902475 752617782 523380746 204252071 291496677 938026296 385224974 453801693 987512802 68325330 109870729 314686392 522316073 238662108 51850981 50244660 634508395 890273384 319189258 417719287 190607644 884685967 80428309 584341797 210510592 108331734 157978229 681342247 881915738 725050321 983152971 841045046 521380513 615862283 644742608 736191373 716845159 744684090 955919686 714190250 630910789 177501969 642854159 159076325 618447671 941817622 51930899 358442103 929472625 881676888 740314683 935101321 536746961 823496217 617161757 862225632 365549266 459782363 404303244 797068110 380866966 493591592 85188068 991024751 253356712 83624150 339584651 381188211 374161445 86382714 730630433 607797602 580907565 20947716 409352866 851792295 375175095 666156341 589428805 810744801 77871741 763417475 30078092 183853196 464961052 634043745 439761981 403721981 463355541 586569073 6967575 269290758 85848015 430011800 457146952 957102682 282053823 266957780 15034800 16423552 1420082 281709799 770964103 386108413 662406316 987513003 58377779 761893323 822878873 584076687 898534302 11003673 202118479 246313552 484405191 47250287 316255227 208343894 894717026 548002084 453670477 46220688 892263957 92287351 657593817 925523614 59008461 199197859 803314313 135454435 62417138 511153341 841573399 21453224 794221225 282747750 855940350 669921172 108809104 449791357 62637450 284146937 126392778 347336903 30289834 708197566 929964313 563208783 197028836 826253183 120328073 121268709 941388781 855445371 359030555 962260258 389987943 917666150 48085933 277004842 347535807 708330547 639946526 20980399 387914398 604048581 903576605 475090073 428779033 224560454 417921131 682385531 825716969 628478324 52004382 879578669 998784313 224375866 599245157 94270012 383110394 196956471 594166387 466399398 946737898 711650979 87786726 762825600 403688698 940596084 280913381 204107736 558642849 285747050 437623347 738909463 743614315 21887161 78289009 812753240 112273095 536093540 918761949 531203076 897259648 597137126 278311406 586536603 709414817 999362786 852008392 784524362 741634348 925240174 850163297 405950504 374709859 413617961 86842202 713662712 412800063 681383052 613624061 550536651 269059104 6928746 76623334 72756272 41786942 443296605 218863934 696991511 677595023 498402813 791387770 266746016 469219629 733792798 183613860 262647100 237923869 206630377 541787605 141057417 6874987 135890417 907519261 683559769 243183345 620715281 636046624 942610011 452991842 589674468 441615464 244153712 782649632 704054464 616517971 240027347 371902662 106618231 471994228 674823621 446238847 484715276 584136370 681475056 482587113 715272814 909996491 153695321 665719565 654603932 664451898 11186201 454775194 914283252 808592557 585296381 966192432 545207596 613288570 128191672 302793393 975656845 697377352 573765374 161696276 521207467 427635133 430986653 372977675 193030199 135606081 689998564 414004097 601435351 48863777 400647879 633574133 449148500 247429508 749843558 736001068 689367413 289542799 416044413 405685381 540665166 885994531 938759553 320054761 485551998 303326845 514524901 349599859 938781382 700381554 820905505 348765116 169517707 82286485 750725015 470118145 912970065 728258953 252327309 967238324 665957696 29173049 202214485 531407533 677030997 368839341 951856359 350068379 668019409 192810566 670244601 262550895 114377124 441571419 126396310 427218307 319145678 642417215 678833093 855759453 189656301 585760130 866520056 437819669 975624644 132997546 233295616 212044098 805703670 43558087 767144393 413574105 435187556 102624286 714768963 328337756 705208216 514786648 673912768 869395564 818191520 958227990 737139643 677455773 60137682 638851939 370524305 355847685 175376411 808402091 500012181 365688977 16169300 386463467 38333200 790574404 312522135 682454694 624602299 275661146 880620780 844590323 684022219 489174385 77369881 441462970 11523732 182578788 704565179 188224408 291792677 195384290 152634119 972462510 777655157 344004282 992606321 474410343 839800565 36853934 632945276 120613639 647346827 546868118 653424834 543769009 347908259 592953920 295384803 634064533 944783653 414460688 409785711 845334939 829278926 550032106 911472953 249343760 476378917 60981194 989264226 831756659 318559472 574588810 874758565 872494970 142699540 410493337 342964853 955100835 11714127 830713342 100760206 799638427 766681757 923126568 970214456 123085095 824238217 723495172 562776926 685063118 133549564 38358989 883376946 682470967 685533389 961280942 686889959 392965045 100445480 689468045 930136455 920972565 747093640 731760523 612173824 981024367 834505133 823821506 179165184 315537061 436504705 688369577 651564132 183176519 122680793 846707719 71107415 111784247 834047335 529205790 885556260 618988977 544163596 818845377 910315047 358848949 19888412 153126881 976678776 362921474 110218322 345559566 994143170 458536347 67384515 595459373 76369208 134428561 453136905 941285027 27018259 849595252 601942196 725342125 527191214 302021894 225482872 37996126 358018604 280812120 227589980 163455795 983167293 296593391 146533358 392523838 344774974 409055048 887622659 895158424 933193494 175380824 389661151 57816873 365619761 915475263 339560026 242352051 135211108 494696326 252405475 820076419 155747411 595618688 726012238 993941964 673967919 852247766 95528725 937258415 741095153 188793486 131235479 288977387 469264290 516458174 539075644 479556933 654825038 479128151 18726378 184994291 677421275 363267993 80808375 146634274 362854020 81809259 453912155 724771817 133133595 376308875 301801901 53117563 947235460 717297899 750918509 47752448 28982480 283754748 470257080 280534408 407730179 218367667 150966998 125551098 347481285 49398635 884122959 481112645 581573152 878897397 430753478 955417599 711824487 457319270 474839738 820475293 217784202 771858790 775489633 421589327 858642893 745371755 29665596 90376714 755217956 871336616 462123465 596174203 396207065 606205862 351748502 725247469 607506228 532270895 680410454 977391626 294143077 866412369 242535684 961080344 635683457 60830822 461160993 28506987 790960242 956917465 41566496 701164256 699968920 892212829 643685456 111128757 413555766 914275425 497287593 939781168 857784643 548836216 741928524 846214756 497102993 993846500 29908100 427912238 611606262 907280435 915711789 470231233 914515587 588105597 533549351 512733326 763563532 446699481 897624321 120036335 171570431 22780535 947121150 935777896 478860075 889719496 216519033 763323157 911905823 633821128 336615505 532369983 509441349 2307119 311146855 913347101 590596294 65177511 839391852 536421295 293315599 16366100 870141301 922967855 583893914 398848618 18352026 290233821 752192097 477150580 790929938 27919756 296965369 667744884 399866018 5495891 562533927 819905330 96529710 579496915 768661368 620782382 683273908 431514904 302195059 470218295 184380717 517538938 112315281 295956064 164403500 217351955 31057624 514640337 382216724 558364642 380422983 503841337 267204614 464335284 774864038 174147971 334558741 946664818 272113368 928955664 712655419 581640424 429852917 739032461 121039684 2924088 920704967 413257430 591189406 110667214 567549921 469129719 707757870 515304244 265899627 519206053 963737501 465575205 821107612 952754013 118709458 232302902 719550860 310064053 222944656 259609059 568813759 618670999 245774038 500281986 822120419 265875676 825714187 955396222 270831851 336228910 131902788 947659792 326213760 369450498 625115322 126763811 90305773 860515498 156609934 949568334 492566461 102774548 379766271 300142411 76122610 913339735 236784106 181269693 917922974 67900213 868579965 56969733 441709408 339093408 952167011 653104219 312431614 858295505 811031852 799706642 569107723 930124598 905155573 29373703 580883356 39777329 622768394 63438802 885628405 327831434 67406481 113845021 115093292 434507825 981178346 863651865 363581814 63251558 3580274 97883641 32247293 580940498 37596874 108817446 730632196 163902685 598495202 300864958 843519568 827562369 88711824 821191286 71135447 451243896 819909213 692722233 182459643 316509284 5102462 939549070 789422278 892493469 385624309 148099615 615086504 942404344 180173042 950003597 976832280 164257617 446333316 170806170 904783970 894413821 845331906 799417635 553716684 844108200 426652096 217355254 410172238 274978120 811463210 77482864 293944027 812892047 888107685 800515554 642475729 487534672 368318051 51461256 451052181 423597052 945857790 355121954 533073458 505151444 413656627 400609717 411616279 865388332 948331553 276770117 284868197 371778130 384950099 119814871 173856742 825392783 892435018 602539255 70343561 687492619 224692376 859485089 785695055 316146199 429053885 426413910 684283876 488311089 355467446 937402246 156945366 109703711 789392859 287799139 703715433 426361602 820920658 314258397 560782376 942235488 335674893 255563392 549543515 856497568 842444684 939198755 933024965 714938348 772517783 824083961 924162510 131101756 676991533 768972269 653356550 304853467 141071449 317943318 735288625 868350666 553654351 395473252 327443885 658142641 55309671 565758948 682508177 920208637 164717965 587909512 10763566 435659104 656510705 485190921 792551750 177470988 30626606 33491912 104129805 861518831 685137456 548100261 396852748 362990918 441139294 460492217 668935908 116698593 755517786 48401164 483209810 439357388 739689571 298910131 965722966 344584385 851329233 715381340 699147385 817540327 359422371 666579320 99736360 699629043 482216415 593182006 128371358 310947335 499575502 800474775 301624211 770622229 594985398 861067918 694054707 355387345 250403151 853452321 600901132 921674701 649438562 721130299 928349290 187898939 21088221 877327809 914691866 399907316 881971963 267865820 347588068 160642480 954096255 261965652 842999423 547066458 124389956 858632633 839012206 642056773 53050887 491341008 43137901 274306736 287331442 669043112 732691473 496547168 403399504 509759601 511118975 909271895 476367859 441619088 967319695 193927113 561030905 494530044 422141109 145699745 305007152 48709849 621676678 770823747 858940159 977462900 722725095 765447036 665002987 824322135 442161153 239835459 204909718 601505980 839693982 613805232 603409284 749768946 653858130 692189521 134138172 970934460 879326516 969783339 679291918 421940533 214218412 267259504 288333183 170866690 765734172 938900785 748850394 461451762 763389252 85118244 604544510 722565978 712805263 936946566 341565487 501095411 23758781 752783602 207655337 520372317 830592296 875733963 204078332 154537322 26730141 183495779 329723162 752788128 673044513 388858479 33339534 240459440 540100311 847502175 942461095 674747267 242472282 102627646 875739908 560486660 662663124 171334142 535650275 838561758 484995137 469519418 470563566 612504475 939999115 527504877 188037867 811191928 553353493 583757166 366825024 474602825 778229135 884234439 140913958 220223663 811721866 980404453 472723756 332226382 910393597 464259057 622945372 745079809 397453408 177053890 884995541 730910228 330463811 458334135 467574970 914301234 721395097 12359336 591434733 998418900 102718010 659703851 265585341 516295189 835574408 297204442 315393952 461300041 942610475 182395851 320307507 808824759 577050146 929305473 108998242 583735003 265788902 880427693 964576002 44121001 984532660 597016821 994001977 376509023 113721590 683861668 129408792 22974521 303473629 681158136 137200538 420915882 667839558 223028807 485391772 900549839 29652774 454486053 675163374 87240586 689352664 432954854 935534976 205090204 767415710 36236611 106927812 472746090 800666560 287170836 316815245 982704235 339237601 682368304 366039447 210674508 835462662 526630726 581889629 828456211 176048400 715834665 467838701 601957196 954523933 931306167 739905180 696537608 51996231 803333468 384555487 224983902 744576250 597820488 16615243 440286740 187464028 160445086 215150351 566161386 314982878 746168215 986754821 579552425 606989462 139313611 678434160 936704731 881663841 98490913 747860874 170311253 461402863 787830963 461502907 270774477 605551540 115491544 228926076 643359053 604753752 339947826 124751900 678090244 413440308 169534284 327026522 598240388 121355767 743566992 279966139 647540810 958564311 198250127 528068062 361426595 92733647 611629697 8449063 246691624 269096751 366433504 701676739 701247646 22708631 494054306 783150938 401858225 385618100 566506007 637345445 765809521 594011098 217527872 809246663 923407490 760310467 719556399 353351389 902696503 175150285 639593434 524656281 830806690 649596780 703028460 257610274 583502895 410255797 473990427 99717876 490790695 483192861 440025073 719422838 780147667 428931706 550896520 639885067 317750825 542892079 685246130 552179770 233327070 5354586 928783744 36558897 681338158 374031063 966525426 235239605 812325575 940424476 774568925 943321570 517013789 254702979 57662030 667136028 994693643 388878119 534615743 131954380 244568007 147175906 699475876 953366155 322335507 473282719 345498414 844951183 908221164 243582990 60978935 321133305 8880378 8808671 904425125 539079135 105339246 584511410 578524297 843680134 390856328 394693886 595308938 52990352 397056622 471631177 454942309 378630984 280568734 218591933 157765379 859724586 410073563 627571043 475135899 658069123 77882376 37607321 383059949 980405374 166807519 324500457 738139848 564877575 973307250 849285334 509628229 938173365 307474130 216491017 665016828 798825539 732334720 616035600 785771758 732830192 126300886 910542825 890474617 402716479 800595525 371358214 881904731 968835548 662860765 12886763 204156978 473276463 987550134 511527625 769601170 122669360 638837645 994632139 391918132 421791457 383839579 515819826 50488622 506743194 377405075 577159340 387673847 840912951 694318130 930204458 144659006 463570932 732709999 765087989 789050589 223963632 210237610 728250540 277146466 618150246 155921915 453676583 757635223 37037977 627639918 671471278 842254253 943807847 65121805 933704412 554154605 996313358 487123150 423053363 879568565 784179685 95814888 451787633 251825813 356489078 374470764 406722035 266538291 302738969 242613752 206015382 839745448 503994757 212996168 356995455 362297962 907213475 350112755 798340327 39171330 251835092 774216488 762096830 343976748 711929445 642735767 84772116 670154410 437574215 722752303 548406884 950056558 609138776 995765835 618228122 979246983 6524323 924545886 177470875 537915951 280203864 708245852 156456123 956898715 759508160 90954753 545071011 240589784 799462716 785544788 37704188 182520011 756154872 999701094 359599067 621903092 42314442 743462333 791042057 627409144 218127302 5393955 411134948 685479251 174395452 351964756 945000489 680374516 533220973 458048748 890792186 594277646 808282821 260106145 703994944 298762485 493775919 968248847 665956047 288140815 60684024 448146923 171180357 275350937 270899894 873118635 44521701 185032486 230655141 343001101 195700327 376793158 460932792 984607687 146630826 931473793 405527114 488592473 511799277 641113069 727815756 225316153 271860232 461130104 482338824 651463907 186774020 598715029 7177570 406712946 116404842 44870691 378555373 619086795 142814320 524363312 521746023 999064204 837262950 6854604 889464671 997664803 974823967 664189381 645006303 601464134 822561569 701055883 846069535 909072052 363928250 187379746 410212491 290863234 754398829 723930208 656395502 13805218 555885139 738009877 745397185 954156684 565336665 34539000 909842136 945098130 881038531 315341808 807322913 574917217 188632566 327740073 148352643 957068932 427199447 506598271 837866033 46521759 426455080 954321163 975336776 287909386 599575990 255187528 396373613 158486928 74486016 509182351 12106327 139344600 230642980 559570973 203359139 519279764 568857543 518878323 882088184 832303601 987003460 621034169 62480552 493313990 755844320 936319490 818816419 26605205 735379961 703763403 736705878 607476630 175118772 213584347 962916413 22257284 813291597 926214498 146716102 839229298 602037323 327969862 431381287 347297237 254362742 656866479 403498738 228630885 791417070 468157866 513251663 509375688 183961218 581770432 662317893 69269377 408331011 142463709 708761147 725968857 487781139 186008148 829525589 45123163 843508789 697512142 103145256 955042185 820355897 472839120 28445958 197980808 22877266 417729896 62173542 820360099 482496760 695705505 585158390 809446790 709065485 757564019 842939915 899159290 112403818 658413881 133564869 885755643 888878474 551387518 300807011 807049483 94969432 797175425 150238831 220977118 761215178 735635557 759010427 268846868 204429469 368257242 720980616 752851748 483752184 10721056 323266995 190785435 111791472 137706275 958228897 688299161 309977180 570641861 313751064 251155654 948785352 966526651 501543118 370988140 57279930 652054655 118447502 758854811 86426274 32486364 731075988 12335080 991972754 621622010 284781883 982580262 792542598 251621624 756410930 141541511 53717926 574000246 958346223 878213620 508267266 805308884 849979176 936901653 927343878 17017676 897233587 429849905 480066833 25667256 704842747 65964489 58927819 761952846 268906058 389592441 563799191 384931192 527030165 992697781 953018895 651832216 836556985 662462448 929866500 79165246 655976369 984903244 88959095 277280741 757200976 528426136 92711497 902174328 408519464 788150371 277013550 662796630 155970380 656746836 923746726 523392886 469024971 883176483 413903026 630888416 64482433 400738800 865320395 822733392 262293713 575756230 587395530 981975520 8406510 495843154 987525966 275987774 274864725 274911015 783215745 511328449 685370069 490529451 59140351 752637561 954270346 895009119 855662025 107949421 726825121 650714431 209724738 232175865 509531171 969790752 5763928 308579402 564789007 970215779 233979580 912233372 943972162 270988785 532120625 665625219 579258561 745925121 409216828 733187661 786984016 409389633 569812778 544151269 177553272 879476827 869841871 438689385 144255718 921599627 25968860 932546217 219652094 195929756 962586014 575326805 647369757 488705591 85702900 53408135 554910857 412425340 878517507 867665552 548755435 809959179 601647002 647080866 111880045 565818099 101651493 741982498 925971758 520112761 528006742 147624555 276022792 428320646 364404939 810883337 200557965 820347091 579271695 593965697 755883957 1187393 53052004 84237733 393414137 238764015 820994968 154434269 909100541 742366958 700544822 821622353 132968053 462383168 21804201 101198531 274555730 755784693 199471595 995403006 86652550 442521658 192533512 859722777 667790745 872002402 725064256 599106015 64584827 771521527 925280044 496620972 170637887 100594401 555830616 495749272 563563490 386418606 689079959 485352577 536455500 251756275 895529629 696059999 768877100 172928584 821227163 85092839 939078129 672551162 35450379 778699023 662787973 241443592 334338602 248982031 424068167 24539604 477193723 746461427 633970622 196638435 317572372 463352559 205880467 998075339 326915690 489148036 781574196 927198877 981505901 184520140 700491514 452080006 641414985 676973027 374404578 126331550 962823214 567463293 764285133 150990744 897010880 924742993 814091409 994840892 361787877 471889277 753210142 460363190 45921121 438467755 350994287 935464487 643071867 77754433 392949880 928998455 670844026 22305095 524047071 933796200 978918814 370063877 161328813 965800046 374185705 189283947 423027401 791053901 754373847 351095984 97763987 210589452 581980030 187871084 57433517 716863619 649818103 50250989 296098146 204796121 75335979 743603395 124777126 739374792 367040403 447888566 974047536 28770341 740382487 457621467 959205531 588532375 718163334 139683846 144312448 64535415 717347289 568362448 408788909 247613829 88182836 108644628 940888731 535961028 333693547 632288613 326103183 186522736 667974988 324341773 550500618 801836666 472778928 671436703 482930336 532931201 839425741 985561309 352671663 970076590 496368081 167600479 986564183 16801911 999254400 802879987 800262734 143518558 820127283 341036931 74468231 60203454 880183293 167948210 133097827 958808370 136804195 523436478 710787226 294366810 679538358 330989417 553284764 182292187 24013746 930165366 973152790 288303445 745926804 880993169 336419182 608428286 698220021 813221867 6822209 813035537 730844166 301770749 471734116 321081078 748389509 775013058 492527867 451670090 10860161 267662640 790105626 317383537 58047122 306662577 95370073 488701075 320066488 972002847 886740947 41725778 883274630 801853783 144667940 354649209 12236840 2257142 557006179 450262000 685238686 184653520 289680195 382042328 9936040 382857719 290251183 425263696 536674291 5600885 904291419 699650851 397961788 692773099 561828874 833930913 184499586 601659461 961689202 491877693 218888290 591884483 827725988 333062133 355793009 621999463 319395837 485739995 532363968 901939905 547734812 626113986 524770976 347566498 527918990 9292600 710589836 584477324 234733155 771721370 392727208 971717931 154958195 204100937 12188102 757572147 311039524 576285816 577858564 223825571 850421465 32895436 490895154 887957962 485843749 735849752 113684932 628792627 369691325 381230227 986488076 810350369 332288129 376080797 127425987 638342322 955813504 929713303 431940207 172358776 16818495 290396679 491089768 516745531 941008261 983195320 696362555 486843759 719200213 76466597 136743679 624707421 693675318 376123278 2580743 91803594 779239877 543082729 412702975 88265942 87138638 396450755 704744715 342045770 342024802 150241607 791598097 361945530 994276695 272164294 741339265 960258754 626377977 976266014 942768755 937038429 51348879 417237059 843351065 494746539 626067765 85966763 306466251 431219669 338027148 839700878 243326997 501115025 101422575 613666759 298462837 517641617 264622154 810305939 176757688 675478396 780170720 236015870 132071893 782627587 524593886 198426365 608875656 599545508 537441160 448780389 367451699 195649219 973072806 719307078 54838787 364402350 332787980 765093767 536868549 655964749 57505008 771922603 796661476 128376583 888066246 864823301 841318512 1152880 255427930 299423774 256688387 740834223 835859690 676958588 381943551 286762553 667529792 522917701 897030322 896170748 842609939 588208780 441757523 971480318 300799941 767459507 428642715 930174810 455756266 273850836 357170989 663676139 204465011 290566712 680404682 180783985 468283107 202199571 851753527 836314729 471431485 342919820 443620603 425069999 465871673 102357725 857227765 692401487 92456896 487822639 412499567 128422840 158621006 493735563 214907328 186869784 787736269 715290193 531439293 324110574 822193559 373458053 807076808 288240226 564473301 50417165 9709837 45405762 324171898 947287718 889849370 196415471 415799189 851532135 142010177 29283242 233257801 472459 254352887 895887665 392155202 910507440 568864206 823423911 528296736 410368659 691798969 347404663 115539922 27842502 161819837 618095045 960377833 40445398 229285348 398696634 948917916 591736487 399751184 550455815 3862576 575748541 181299473 734195935 645789893 708584246 851567358 886518000 956479729 759619195 159413390 278539286 829446920 352271310 49796995 995815850 305684128 772810101 355878696 891145347 458926118 103952863 393331840 13719680 493060767 128869311 805779174 604356344 519069956 247234672 938823548 560777624 804553016 345261096 484687373 200757448 985049724 81462652 734299226 45968620 174699734 914492883 538097201 500615950 459503758 635352261 512878017 683903311 893107139 53378486 850643074 347575510 350253048 211161221 909950236 230470789 805766025 670554946 951505688 382201272 518082012 634721752 620772210 847507696 572912548 767212816 933034119 976093014 93021431 552531281 335852416 379267794 231659493 276619428 295080690 68850897 152012537 673526633 998893520 566736059 576652564 131738594 152359170 959105479 661757093 675121914 450584894 37966817 710815643 677191989 420260173 615042883 788311119 837702836 474617801 263542241 937307040 127314350 818000220 545271066 578260936 157835837 639986741 349118812 378374310 849926115 414655314 144618921 264533190 314141390 77644369 843945994 740518295 410577834 421888145 116370941 802699357 179024998 407361040 875126090 935695095 690512369 916690775 870413796 100460669 939302705 119295021 615351812 245188161 644049863 311580478 230805993 709884230 680336301 862471939 527185295 993687371 691828018 918309627 412445907 790397128 833919520 424509185 245413449 370038901 696526089 648152398 696597490 622790103 394643621 629868676 635250892 601101593 175679062 746560184 785860267 35454646 40602459 743368009 15854849 276861212 20076123 347928999 196278527 49814588 467255215 519334012 432047611 752184084 133742602 373697114 258565509 904944022 508357369 40944866 218046275 118505362 369594672 6995140 645318741 577991600 195923178 923000714 359920585 679964867 101229599 86488172 797969124 367122093 154301056 212461213 169303172 651086274 303286213 735051127 870986871 348913731 464157080 467322978 872092203 901889573 684801333 113101176 444915445 920518136 952423078 420211252 338962603 567335123 570221228 709875218 701040283 342941655 567078303 328526540 655976382 480438677 699924299 130510459 536113588 130888196 418996910 278949880 763830709 473786360 307648603 735144785 3877339 641913819 95896562 469637544 895757474 615645514 493334886 879209984 441286961 325037317 272985122 563998053 578679859 857990910 717367944 293167841 964557303 761780482 207698740 242427657 372073578 869208484 206423460 391880261 641941779 598095756 217701460 913525451 256356348 528988694 108720563 912439726 520323136 43127195 438257301 500184345 473667877 403500314 144385979 771708572 875359715 56797538 596338659 454917411 758200146 42363239 707833389 353583478 197364846 899487991 324195203 197537381 478313690 777648161 191143002 384464999 236037470 6495582 796423234 632379122 903245609 454510220 90323594 922355678 693423044 729230807 996673736 27332882 794776571 47650238 891562049 192688984 583895789 254350480 406462081 141333319 883492862 210571188 198738050 635745172 967693510 751434945 562885150 418828183 860488523 767832800 783977033 871985886 85182528 68544596 650248043 355710510 815944563 841736663 975406434 211061379 354930853 753692035 500106885 209539838 889148910 244253381 441061928 918839685 714065790 270216194 755371901 343847170 805344857 961455297 655172926 902017263 11900917 477597745 233271192 716901180 708441105 630925090 787227857 635138422 914807979 871299968 589623323 666481232 521230506 89978807 169482944 937259432 351187144 768586025 132606984 449814926 596309562 385430298 871357471 46429324 610750239 83230956 703587720 628446928 160134407 309413306 8642674 176066905 775785285 59023561 400411222 911352337 848785518 626777942 82281497 523314773 284543555 925922633 806487399 668006016 59572274 991502279 571868209 743577220 344115829 613748253 34967297 480312156 183759997 140544089 910034784 560440372 734279636 642900567 520273696 898540751 81333406 184330600 176246046 477948417 663615842 495441836 990799152 445753051 856158880 958022498 569143948 864221527 401165642 93905440 266359792 744286787 353498432 429722725 906030870 900797035 686386518 329672313 129505713 620036674 396024807 85455850 794235366 366588967 945913246 840299484 957153434 347067827 367551871 512570711 600216328 634525399 813879331 932495379 349676357 979711976 138376928 926531653 454276301 952978028 102662624 257050443 447525684 619288102 934614741 200095305 411703378 555146005 559417233 255586018 445144732 480504381 619117796 818558464 714494269 666805534 713826912 433001826 852867736 380403057 351286792 478755170 354070725 677894489 605933015 835335358 951983475 21484139 57010468 19435646 102526405 526773265 570845717 369500907 446686316 64434419 413304972 767539871 366033982 799376794 649832897 914621107 134161456 466606005 463509111 652445033 388466952 429676295 166145968 637740559 999386572 237754462 794616555 4644781 225414833 840435695 363093731 305890207 866676037 586168026 297828531 887855577 488427993 602889011 80331297 518091809 960352376 5581109 476421456 965885720 394225689 681431826 619048432 8576918 163284412 512388346 696098527 195209888 360523710 187571025 249268738 312821598 181864672 564956571 42216901 621905529 395948147 880764005 74298333 554875507 934875258 293023820 857958991 985007175 123781110 636456017 507443026 876593268 551103735 102358591 457115339 791400999 576898957 286419175 474171337 955858556 131785834 176325190 340409168 589511975 705289224 662291203 41792138 406857482 222362271 255065805 925540386 145418029 843341246 922669911 706331987 401743965 364146559 616058756 912690547 563956140 409634106 546603182 533379513 817597661 98224749 123613046 408670533 609668982 414155650 418440474 561375967 277944375 401146098 212963330 499267856 710679765 835432284 138098791 305605411 622911746 657947791 156949053 194638514 249642820 192809312 56843990 881827441 93466500 922265038 336267867 343022896 370770653 283102992 885647707 984114217 565490317 506829152 814429915 616607231 436632650 159719840 838413451 955504615 900338673 347329947 259390563 258856495 981195773 922214151 79396440 844413542 801908179 949743256 850024840 448739256 121335660 423663672 882943118 884228923 583412795 193530605 230291962 33999928 759248781 283170064 502834334 258970984 258420946 369643194 999368679 429211518 650108819 599120652 633022468 559798332 675662907 342946829 990661714 805416314 457328493 455772808 677260475 534009686 509754055 892967449 49089049 287972813 614957347 156427689 984490858 928837096 688161400 782513804 712536438 779679845 980884442 151083046 859432212 930774302 58101159 913628033 531574807 477049692 934438544 253708025 732285346 547912312 370542150 989352683 740754488 456374437 473904462 96133445 207611536 579468696 218520801 490168988 635889522 631694259 123881998 735752001 199164794 760370315 615607336 826525622 711996713 851340705 78112650 766870956 730269707 588244336 520854442 387174276 801892716 102037042 868154040 986900059 585571822 791550283 780709190 368188313 96214631 556626858 864292119 522619274 371305088 673950786 739882688 897071567 271443569 574560589 912180822 189989394 181808586 874856612 353616157 315923338 566561898 406075425 198498625 901942009 446909232 785717940 668020068 238721224 578037032 60752582 76266117 32784611 659295419 519308834 168672617 71378360 316497304 714744231 197643769 859602183 199408866 82777334 944615636 159368837 401409844 393011794 389612100 729947978 602847158 522009888 625552416 403862119 887823886 672048470 36573807 389476997 110757257 189245065 940678143 942692339 707511890 858026760 989718616 240755869 862168522 318588698 588127669 656125444 309470995 616009723 26916570 229601002 104882769 146955304 603053116 858448323 991255058 719815621 706299329 222469157 802876601 472434655 697834227 518595983 371716350 786319908 431019640 483299467 992079250 72503041 905117472 145434996 131194182 92749364 870404062 875727391 500952216 554745687 210931626 854299881 602499155 127533972 262216759 258313366 128643983 95693126 573578187 678922144 167891627 442326570 714443826 490773787 832701094 84671448 607112882 610611285 930981262 18898562 925190677 745407140 903514355 988092692 22003686 688777509 428614449 24323209 9107679 638291410 724902658 147999877 217704289 200274844 453203327 389125790 858497586 920647513 91035571 330585541 498564405 218329636 279537920 12792368 163548347 428670146 498819763 751694221 538233758 92560341 66767152 978518231 989263920 375936219 350513210 326595268 254571022 371826968 378539710 170876209 945955127 526252551 14707540 990882987 103930010 319946941 894307446 947582927 8844343 936649283 722876865 435876521 751506973 523365030 524523962 639888762 649864417 689137522 848009547 249254959 336831230 576128500 688788412 92124366 559270127 440878952 684041292 423250674 800084359 110600342 738178574 992883476 183242550 52113496 905574351 970965466 687012497 905911027 331790618 403851298 65965336 540175368 919468627 372467805 26234247 711678963 694863502 839984543 820021047 726994079 998965814 519328254 581700801 585432993 644165696 439885268 295879545 128399654 142056395 41527892 751692859 609956099 761305156 266018889 225966591 956354706 421980112 181740355 18609076 711698634 714412608 228010480 928852377 457974789 925234958 669291280 765180861 300152339 504754277 814988833 93018002 566471356 844982664 501667908 892838804 655361676 666023087 769394431 80302884 460441833 753822660 87760410 920658920 929472319 216738778 521304410 693705703 262274008 377837491 851228238 154566248 211791933 609572470 716014799 658214398 592273971 241194608 359389622 800976667 580332668 340134664 973819534 965179776 211392520 516327493 370223179 893908692 20622910 163295575 874488311 923184199 992578180 523732023 315033322 859293164 22988634 597045640 277249103 9783907 889155121 954489591 81520981 60140808 717588121 755412217 952376704 382828117 195080023 652697320 729234802 598226727 837386773 784882420 614539153 683863400 852543559 398268217 103340103 113688540 215790853 273424193 946910724 198694338 432706920 293805033 632036616 306436596 693239904 411821728 304865771 190870145 344063040 418016552 359533439 486998416 301007728 647436401 360608411 75528605 375797512 496702996 691336328 74792443 763407507 883981464 454263914 401726204 714357985 917141893 626036254 854382448 524867533 278100516 181440302 140709739 622384958 21659097 989720169 613633936 854103015 473073731 380615357 692020017 31189961 72275208 217512956 2040552 375975947 454514518 343263625 986396951 716742836 612603559 828501187 352061624 567632908 505837534 988098341 481651399 810734931 686743486 477721643 799010472 615400480 449558727 170800620 259025701 919998426 743420617 712957284 623394318 65965155 248744618 897314354 59540062 681887461 908117287 9586724 800914396 895396746 186958297 753307363 607586266 743077834 714490257 951840440 887684509 17091844 142341469 322052382 416587940 913263814 489312333 375676875 41258258 592801327 591545511 212037303 898049999 129001151 437434016 438810865 245897966 981283695 536956029 938161225 386132783 145515525 417222973 344160259 254903703 821723222 399246067 662801083 97632905 118708584 536819544 413729082 789368584 133092091 565755423 664409564 123428728 552010735 604893656 442030189 469316532 49120473 938892653 697404151 911387683 961228628 486773218 848881428 752526550 990858230 209945147 400173073 12559631 154926262 938312310 853281780 736113918 585130323 997665941 23605186 385130706 372165905 283786117 599438752 977577804 830024282 123580110 521036704 39446791 1957372 245494925 331465647 627222232 872007482 986334943 303299490 474660271 387540646 503443178 705538289 622021184 933139921 229365748 172534559 147047595 308390396 521081698 18726115 877562914 350607331 516219984 639014555 115435538 806450621 505756601 391095880 422594689 359486702 535475009 463294242 13085387 476867633 525741535 893514586 607632835 675661151 250985981 742026124 62160744 179868609 27883065 805175186 119323082 329539259 670201534 580203514 421590277 130042346 55493003 824559960 178259207 796075294 218245771 106875913 841254067 528250225 330836709 107796376 764650651 640307771 682174929 792932158 460764720 622760579 562642217 162783362 905944889 393261595 871944970 797498387 379673225 274653390 831772551 25521119 292794455 303063596 22314006 443482635 808469170 481580151 156304743 7146037 705395920 567216829 421449489 712975769 850693867 622868335 748834902 289793519 41653872 223509659 280679206 431416742 196449307 5855259 205170531 742228397 99724487 24363929 896346453 10760476 662510353 986828100 707816596 680539070 931126890 570630453 24097456 353316506 267684595 645656717 302887987 529873045 957906931 340221560 583365755 7340768 865997291 360137928 272906557 159501330 969697512 262679794 743839158 921713113 802175152 753293649 809608485 465424392 794063955 905176565 488289269 681708738 400767801 878790939 442758968 91942169 895705453 73092865 560409967 35638912 426697947 136145138 389366691 884849896 781397776 802477001 747519605 240654330 688459498 442155509 689158113 820008023 336727658 55864918 754516372 579058873 410769377 767135840 769854267 428270094 439795725 788951783 516768299 586430955 429878398 703930448 888855709 618272324 956068252 487588310 244487382 457544012 962754960 132866072 911967355 334180477 280375453 721839057 81530056 508594579 933469150 240510149 973893371 955782289 509072796 518878727 470708496 927559818 366446238 355721708 133667577 211071243 621370327 589606575 67067616 844805681 170048947 213031986 769994779 449595458 236144902 979987977 272802583 907071569 471705861 142564415 641453523 672655334 763542258 527728381 796026276 604090940 304517415 66947799 427737853 42851815 128013107 247224487 873188782 975671288 817645138 221480095 22399727 209964081 617365171 695444986 148067322 554872439 57177454 359521797 329381508 251593147 487233127 80607573 964961290 938760361 491700263 785301843 108367753 149573241 187540585 867027119 149336107 189430127 674728953 179847886 349298857 264364976 576187462 170301766 297786544 931609368 859036162 982576114 182459107 441228298 197168876 914826787 375800433 211330894 439391678 808485231 64590247 542127626 169302321 508924100 289352719 516421546 834762042 728261887 68168569 243412720 679170166 470003771 677119474 705545345 298040937 974487719 758433814 867794000 138877792 753558168 59952076 168295582 827413517 732368112 388698495 461905922 409404753 659575436 280244248 170745282 122616542 878767170 234751206 816200866 517431485 307649805 731275278 952324774 682349023 552077547 538017570 813659308 832206919 963629325 27805390 148195398 316763435 316350068 594988331 710794340 857007320 751215305 448076715 550625509 379921521 809092888 109483646 144793811 703647560 915873538 771181584 866901489 307807735 635633383 347208633 790218780 233701723 482168131 130281040 690818708 807533667 232671772 554238624 640554782 492239459 336561635 245968748 809075125 931627939 159926418 807629432 563111887 271612198 582890212 549943724 904474173 759484283 935945969 994443850 877263179 32646350 689523529 216079224 57721520 357067717 426751097 686803950 621868307 793859576 492995015 409900475 828844442 856070505 920184212 862927063 422685129 934214432 943804590 100271812 423801258 829039802 976739771 593740685 834068793 241816458 243310285 77627335 769832646 919227712 559276376 268705402 610052362 282823192 691825372 864365936 287489642 612083303 431656128 636582566 861562096 857583924 255825006 610623033 882300880 150022267 197476705 187408494 403300152 391546659 607265945 973893675 419284326 126507956 954143229 197073149 961752960 301445487 841561960 493686753 396327029 840721312 249756583 486251812 177280114 514481296 52632372 440758458 80534387 83463520 59911513 921602281 212964602 30916416 53018710 117330978 752897025 353018421 10901315 358544971 292154522 65644675 12481077 974426103 449341253 458785742 261891509 499208141 415433161 589025151 565033803 280727886 703051575 832768684 524910326 544933814 385323587 779759705 127566510 420625131 205829088 329346405 775763223 384210657 829323034 817549756 912129064 574091294 713123335 320296653 385927887 648228633 93925142 926415513 52872398 240104621 569521129 635516678 527798136 80212525 78796727 153844595 757017301 970688115 140085811 408046708 603610496 77868861 405708405 787449105 29441576 843217285 847698491 731822031 361405983 89134223 723298530 419587278 446013995 708632865 921455368 323293514 705824464 477956728 166016585 632817274 214042573 412237708 129401382 409531037 40683838 499376517 635038513 880950706 417167497 368472504 188254724 187325560 300863348 853190088 812307541 90680548 456863527 482269280 76055527 862351720 195947410 660055657 84598045 652290118 462791331 904582263 5191768 571108954 913142202 392380225 87127462 903972938 30053492 37114678 176661804 753182136 35703269 528689366 544837297 826916120 169345797 737454238 85111504 229536102 396629821 69172930 609854594 750961814 877281429 371144083 235995511 26250779 853251939 396795392 294206598 271761419 911914824 210895931 806992215 528970105 115907746 447787396 949803868 84313998 381549061 681751531 181526258 385192013 678614568 253703110 794810659 497602389 584247438 164598487 277723164 814452829 589070282 900207771 580248247 312865228 440907599 578559721 69609936 70717835 527789171 821332663 668325459 853482810 837727140 854394518 773767551 378914486 287474233 580531037 532767951 84738128 217348046 325499910 277634802 202459678 589322124 367030265 598776709 838282272 646085317 95129553 166300005 517673943 348204694 412229370 83310251 762746634 716455410 827475658 349046516 100997955 609641404 116717144 70996107 235176812 57339432 52869078 254321025 688185877 406464372 11943022 126830091 876843311 264213972 851431986 982870519 967103663 797031963 441634573 675916902 427976232 200038804 260636476 378720297 106109356 615389540 193471675 402476654 205761478 751855060 297534556 811213404 31982629 557174859 338399573 604620318 9459864 210113856 573314888 141542489 459993454 714117020 657597204 426656478 458084038 518258706 412185061 633048375 25402496 124245794 612827995 366633708 611455165 23557172 815009535 324980710 866528629 45362765 895210318 859133000 98790258 706199731 59849330 650403136 629102895 100198443 741223082 75156308 203024469 252856539 702494995 882984083 926072185 632234470 755196992 520690418 14825185 476991215 746663649 649447810 242925653 766144261 649787709 985857590 694642638 552375576 75901330 913097584 777372695 569566788 78731079 105116879 591298466 587118662 877945996 376505295 896515183 178865413 956580393 103730230 437821097 209587675 44751913 612236345 407788096 538111983 287258514 368550641 566906335 393912903 184111620 199997449 497286086 978046245 422905123 674127558 420852420 559684189 394069673 384493393 315807898 37962616 365189482 742745164 106876673 651538399 568174267 356160695 315195382 511663144 419706966 245975021 596933177 603737138 931357600 548772078 981719375 427993006 421735395 75209524 270424517 487207871 191517244 319090633 896979788 94368112 178318417 844521901 691182792 676605049 706361597 724819212 341960172 261938709 152657194 330753734 498430679 295943353 649443047 642259561 530829086 932205611 903399227 728879667 840182846 415755526 745565795 685424237 799300233 627029788 13703389 667328303 822384981 606149044 690150721 633358593 295099904 103746827 490979255 873167122 748498705 583392389 799776139 815487631 751703017 524052403 781108123 193443535 364522651 868559150 42535447 85378596 627010345 461461995 684667884 71233299 208071231 514382297 763686461 501353317 328934553 647597667 477652134 464470657 237117523 725230256 287039976 224234409 232920076 449079999 507921263 119002907 767696494 345198357 336934834 908008670 867835410 393838809 486145628 480906486 960996153 970217288 848387932 506141231 52880040 201119178 992136612 853898846 552244842 821686737 448773674 619198232 19736861 229586028 285249608 592468916 576027915 891074724 639263518 848912622 193805812 212416669 809247632 398963398 373391313 451645095 967500091 216555366 6437489 416871605 375974120 72042775 955984856 545848473 839191486 302486966 377903892 892606747 859532483 895443328 904376175 963464703 177620844 907989187 589617599 888240777 534256012 775782815 952734038 944542752 427508602 770443450 945630990 305258546 808766895 507425310 114939340 290680237 467268494 542244385 130730902 639136849 321523780 871191544 58427761 890479602 656756906 308938093 40981947 132485721 947052268 483249578 581865408 702691560 316084358 509797487 313111953 518373030 940713626 429649512 100185129 386350017 62503191 93158673 224344830 186391161 27194711 372108078 375625040 228050006 643360562 761330834 365358259 537179085 638152410 48205357 29166479 309682025 944815896 225325699 478917269 907676435 699229615 645998787 658172073 66492167 265863352 877297465 456599030 57351765 186166512 904581057 423543634 945130120 528520449 707562654 548938511 321474798 83787291 352924286 814877385 445471726 273174847 76307611 352887240 206859020 671774897 848544563 175712768 918154173 86472033 795683857 251165451 372773416 974132978 588917342 274257884 107540027 193175524 894432749 866089972 253979945 346271977 210225155 337565446 743454392 752777544 668007367 240185576 336148895 342282508 117638416 692009105 536649791 700553266 46669126 268197359 668071554 28004193 564789894 170548453 953877505 196404550 854826384 276608374 995015347 153584585 660531727 348702141 726367358 60694748 394015337 570440744 946300963 676769208 147052678 970565201 817040852 227089456 231568486 575806817 431929203 961373968 342783429 627478000 408445321 952874146 711263266 844700347 41027510 934947183 835155597 283598055 16184486 406620157 985220584 869776617 77103140 887782390 127100560 582753387 918844105 625080842 932860330 298690290 998312330 373604357 270779191 370816254 425637585 328499080 215848159 578411843 330432633 651392353 637773573 327062632 140471178 170997908 4375762 759631917 174068122 926449011 110604469 984121042 822174410 885358440 597004277 38365412 307221851 51866948 392291471 64978155 235274325 644308782 59992174 546413350 8162457 966956046 415094929 717729941 458487357 844815492 250449315 314887710 562264200 73539125 754884517 917486163 171658105 919764251 522009493 613466195 822447463 234117093 914869413 288181003 73348218 224821352 918257537 876176805 993608449 805581004 12213615 825227924 530615416 381546853 390962720 240756069 164079284 380869504 229959218 405400383 220392798 899665518 755225267 104921299 41037173 602274180 844159020 407465517 227994727 987635087 700365468 863567982 787495427 577159890 409357120 215644440 203005138 307063138 324987948 988029948 813845052 248131654 875845257 414044591 441309385 577248432 537879715 500069056 29814219 109344912 465692184 23850042 366485949 568240467 614343690 759286566 820093822 455884191 679729220 273771293 854861190 518502086 121026779 676592562 472890903 951103767 24064332 365237123 465968050 928317891 515894742 998803746 728776069 168347069 341140930 554093600 951207926 127003310 133627818 970985379 326843924 296471206 702848194 984080684 452269395 297876977 915501445 604635937 88324174 630670703 481640199 177988531 705709831 650463330 768993950 790028939 8685572 19437680 516298016 111478633 578371422 657351496 941124090 387367478 755588242 665148857 673174138 973815562 572008049 35241526 88845388 758128771 155790270 891235958 135048273 729012656 96974263 484645496 16387057 693551290 374902007 675345187 20518992 932331047 12218058 761358971 688296742 109014836 620200332 337352497 768991558 290077892 434567428 102776203 674977769 856509295 791096920 702707403 165845569 570201453 579983037 532949702 376676690 252393435 846737586 658873404 249947933 183045531 479895240 628937908 769510091 774993847 106770094 449015016 11863295 325108326 498291389 859849911 567072247 20609532 101769624 283529687 560703313 570489371 255936888 964862454 969729790 462926762 285967464 66867461 348904061 665126788 312289640 580086658 982653478 297769192 485698163 625353988 185359171 956874556 887520009 526316787 175031999 313871232 717235780 709037346 779407266 593287106 385435149 581742713 512571872 384932499 925039724 158673489 181602283 170849012 283992432 525859849 395038813 810285297 6651283 420943876 614562393 146714031 621608854 974641140 614851438 18487353 115878579 448967588 151178625 708986092 811082103 184421056 621249775 5038839 504540717 807475861 989603759 933075223 668842335 442373857 628704920 931954552 315628820 959745216 925401778 672663520 130400291 220273820 255467559 396198079 431645658 403159844 427081834 43266971 120874361 612037311 141962265 314775761 21740836 442774046 739628487 960189090 928839435 334362375 131706749 106304127 919346708 936193324 262460017 237710361 351016205 775720192 580978514 553838424 774971284 169255272 7540303 179763007 818073726 697324865 890422659 939793400 28550473 734427712 133989478 913652448 918246687 435889985 685402153 717746587 753593361 559268136 29545651 679758853 514919963 478420150 176678632 686280763 45890161 191137640 189090432 623167562 507280177 689016613 373700425 347914340 611950878 581921223 732430577 444990556 792003399 510540619 330063718 578268603 678671559 411666385 535690889 645940009 544758507 483365373 222635863 726380431 621864387 662319746 716583475 203196762 407191999 557052147 115377371 82235657 150505610 262629094 358393722 503765833 975903039 765624575 731017207 981443709 436150844 801917354 617872205 345898485 314820739 89292600 298875146 151530524 30020589 275780603 11770593 385819213 727381687 484425859 273757887 131702629 97389547 121743131 761774491 503842104 13455573 890806160 651600551 268505439 311650577 67552274 368236024 127049287 175477386 124091800 921500558 121608207 342784397 164524926 646104820 513794882 112068451 750924648 984973719 341674518 809563811 349396350 609330233 604073930 811708567 2966270 847947165 70260876 479096047 433690958 5232433 16694444 218262276 139146389 474538839 834804866 865502520 985366970 291274600 88435600 729889424 459228300 166670121 328449314 657016562 894191632 873173390 826661495 966071904 315886499 549892889 994556054 937457855 85759795 359783370 26547805 406626380 760706246 363036820 419756083 371759392 941058850 244097201 793861267 869841606 503260777 187360431 20555797 103161102 258201256 274167629 893923713 780070397 553997776 133401338 462384136 969214831 549363939 887675621 26351281 474341296 523843151 446230946 67529984 757091907 39135049 980354496 437350438 725010731 455838157 869640927 335115476 487553902 410034517 243432199 949928920 601981964 311710017 670302056 168447890 249161848 723214883 948928221 774994854 466210839 737532191 902399383 278164892 406723172 497772446 100303358 198965617 617642102 392662380 886690970 739318277 154610535 223978452 539536762 88014946 105573683 858388693 711174002 487054587 706779273 563467329 374708628 492960237 655968478 654270289 933151249 291149971 906948846 156977436 549009588 262236415 146599004 362582014 288928537 153850744 929220720 880458532 109915734 156991711 387656041 765619978 864979234 188280754 634622749 959872172 277807145 23592810 810880470 742520028 680815729 415248635 581661058 827145077 892225581 979153776 885887645 741383514 343419479 501274477 57937667 968235594 545689713 184931580 832259819 718253289 731983932 758736469 961093131 363948110 563465912 789039021 467016725 123456902 910404054 359642299 266732759 372784565 219580354 435827846 381177541 231416256 966664539 459036402 254103338 529975284 776097916 752000647 719576757 409809366 388487060 911187499 591953768 363093546 546155932 632458713 972212958 455934707 848219627 729210392 2691482 357031989 415423496 18361094 655324969 276125404 77273106 80656899 930832169 254070647 804571496 52768509 405324032 91282711 344987901 532731363 936899086 422204604 510381357 211078562 563564569 25188889 913195022 107455845 101539266 131794298 978047709 540554859 944811557 177726065 383954028 715726711 645347083 445283756 17864090 819474890 135099663 74996980 506663288 564345123 527577612 836954344 390944775 416020767 333861520 803780893 696286646 425666494 377700594 635807497 519565917 772696420 489419235 748065008 784006764 111714598 19521247 194439630 498116417 242345847 642901485 742092341 880944151 873949683 840150750 624426150 853574311 245643520 587496253 919613241 954377991 404940250 265941785 429764541 203687938 65166365 342118779 854000677 123205678 300975979 277241134 572490292 63936568 336865401 883424967 195005000 101769914 146743188 844135218 78809861 965471676 282544236 944993376 187964200 707651647 691167005 698306727 437879287 260040405 612201182 571352821 267243602 312669086 280919400 67329813 432798499 143673273 975310790 940739606 561325068 802178774 916510317 422240234 956670421 33754456 551139967 151717070 839364853 240122186 811811305 863293847 774646718 17752961 654011848 785216515 826790386 780243864 298186486 603495206 235935493 324123334 207722152 651282814 327195937 546975945 41006306 566133709 894048470 779777814 957548613 565365320 37940720 589818364 949051094 234395561 573713055 942538944 609034633 113378688 954779638 146460467 874692138 964382260 464873646 941990051 314232845 782593133 523858106 744718209 512463003 898538092 235411527 44383041 692028628 205790433 525625721 22690522 596451694 889457508 910265934 611504021 911095962 9072646 542656429 865776905 914626889 900111624 794603291 846794363 935039153 851155903 617157408 873105819 400939188 241010364 798697377 581752457 353030103 182828962 100925533 16671759 837907675 7773710 234163899 99677339 935390198 570061755 617985425 49125714 585411575 290855373 730962973 838210487 660056782 837846261 23798120 283733074 243844189 617683988 595443242 197096639 328260783 751773574 809430155 962377581 344596858 694755920 343045135 722700344 626178730 323561225 994120782 514362469 214052896 909289272 628010021 29359257 190853230 819042593 29556489 242901800 984251624 386532094 376555359 89758467 607909546 508528037 909818362 48689317 774734067 773920635 741149138 613741302 593126697 687398181 411076390 66503661 739978602 761949657 213365190 698990546 213906957 505574141 468192353 619124723 425709041 714653483 892781699 806965264 547012145 533335872 538185010 952128657 472341904 181868749 241196985 119723679 18228341 502555101 910389156 803031680 353716229 609143507 543108804 757835761 276302405 420351062 634326376 929593906 528859626 744872926 12653842 307639069 383072079 870133654 575729081 425879693 705360028 519795303 189391572 998190734 623593043 811006274 17249921 496279970 520593065 589824032 897908925 205595576 625877625 707651122 805213193 714117130 360318409 158819667 468532611 969480841 523445512 995945954 869019740 603641813 485049984 196784276 148892922 844398456 780166373 581208444 760274734 735310125 34286979 728788896 552548362 359931327 873244174 972585865 913188473 240089760 223604366 242856733 213200901 774776111 527746723 898890946 842115884 544265236 303414555 514437931 912078921 421043770 669796187 290396549 69258396 863863329 895521655 140530199 118228509 506261430 381300592 564643551 541416694 693601027 108428248 2521737 249496411 422493074 832422149 363225266 772892938 837805226 218848740 735468309 967019220 742970335 173194757 786169909 538403204 194538348 581468272 14634780 291526388 588028236 53019008 420382381 601678527 314040733 653503290 848096032 199080948 930158800 611333729 920295552 556340271 180942338 416898392 579832829 457010033 224752522 294656223 108671721 672137524 676305023 565288917 165940647 434675179 232166406 769992019 434855365 428115256 559192419 499868511 558985060 57885448 256172081 360326466 681539521 603554371 33258537 82588158 606555491 722231767 114816426 338291613 98745331 69732108 41931980 760082038 251252117 527827836 595877566 201648608 307968010 822855798 667923141 977908970 584507762 99202844 916061770 958473265 600773123 115498318 245357106 881796084 71722380 921567423 514014953 42500088 290341396 376719436 692928116 879042324 26153719 813289741 690555429 208348744 254775995 698149589 427365974 337616607 455950780 780377755 979761378 907458205 924293411 639275467 409269124 120682051 639103427 260387872 309421767 345524796 927065346 469300713 506839032 294777987 926566528 441762216 965804919 111871739 470237380 500498180 411229509 647025500 809947828 760772959 309452825 289431082 955468308 524681986 800479978 292117569 60583016 477392569 435460308 971930049 756126803 333438262 370824680 385799997 334107958 344940758 121841777 409342208 136294871 813250027 180083217 560154796 900510205 469517606 74603605 186563721 439728195 878429023 921116636 416265891 320311352 979188035 488257483 961547265 837732003 719319321 779300322 204081825 573446076 679782879 167385918 402607406 780907744 114638765 228554066 500573720 197288735 243953339 153681415 298771298 55013616 760913633 993437680 677079837 225173728 284116116 112753653 473117516 322188884 318363491 161814012 855586378 437585038 942116137 290180523 688954709 217637129 820328571 903183101 207179729 631639782 770513552 517335927 829922287 691020367 976477299 181225900 496908735 209612826 470203889 495479915 98971988 107217213 893849845 624091313 206960641 219816564 963107375 119133372 770279339 704135234 772613850 423162683 119931445 417798377 466979177 744070605 575515192 981016552 894800484 954599253 438106324 406914940 490777444 370083416 962855599 833237445 494429888 92005270 335898355 711149503 62954754 739338469 232471535 367313357 791918072 346288465 18921479 821829591 99201921 82070384 131514805 883284131 126694613 793211295 233430291 598266127 357508097 950758095 323119268 631920565 554983766 189638063 894047944 795722608 504191191 745967114 81032765 260635806 174375349 959433054 501231979 104014732 84311240 450034565 920682565 87656818 96060150 206664227 238622371 506055529 429653961 902677217 753390428 766087966 70281692 177065110 494148297 307275085 510781280 385363027 295635973 374528874 92068310 548123307 391362723 302122275 142011015 640650215 696367340 831489053 620988652 858075001 148352900 416762473 101231084 715123262 921071372 527359313 601552642 726842199 1775592 766493937 102194165 576741035 138497479 538427691 739645532 972954104 879474214 642321173 95738018 802483526 61989713 131029283 626607656 430115809 289379062 472517264 399286260 346448441 420752887 995321630 73630967 813467914 657977026 607892725 216123027 833711359 614103342 637046893 143126921 355944089 268614786 550337662 133511778 834438516 630210745 55083475 227618957 714110258 287219830 52996846 929312141 400553918 625157168 366086799 722327622 758754868 638062602 927253091 284463968 77159474 971066379 287727176 640705056 871111422 73555961 409760161 923040774 992395000 758385933 247493430 351879557 599644678 267935650 702677149 747395809 647694033 591016833 54840210 426217409 80537565 559958182 360399997 786259355 716849961 779863991 653356106 614251116 934908635 717773701 123178154 87075493 889829393 355056098 496714014 333218951 377542070 334097251 654590520 324220038 246628941 620137464 316125218 199353587 647635181 7414252 579875708 190606950 452840635 707318937 815337300 898638867 607197613 364816198 229452674 541259837 434793245 886030390 425643240 242089136 261284158 125809895 353210897 205731633 768625524 771122030 46390108 514530223 117082262 126398523 11223004 243315017 588083824 106184066 138628568 957490656 233437845 592968359 830450131 651231723 680760616 442934510 792525527 688648280 740909520 973661003 789477322 938282759 510203197 401132439 962172396 474691197 447500192 82709228 642251451 304165159 778305677 690977792 140591889 12610270 294201781 874984425 406843739 926505406 301289542 709535233 227848617 167060653 428074354 58161161 104223011 290499794 156857960 538060825 939513269 289413492 579234837 885497350 253787095 301260406 245423401 953378197 221015434 94275537 88747947 422519885 471760093 570293835 435519922 797727443 204078608 777936597 583998952 548517961 888698464 240846217 148538360 115359295 430244059 861293400 51266328 97501621 977560920 764382712 75742414 419251278 425378611 715532296 642087127 602715549 379749610 502472163 723584653 416456319 227349006 727802080 815925787 199199394 450233859 33378596 648651237 881560130 67060553 752529118 835071506 988639456 381262153 595131858 722171684 787018163 814284020 71289787 16306389 147177364 350008327 526369834 345321339 200779816 476196630 766099117 961574555 522401335 61163395 862592228 85811745 726181228 266229721 505842014 629675064 812099365 376648769 974724763 529638241 925079645 381325534 637183041 933030056 455004773 76108751 282814030 647839555 733177383 286503758 358395633 660910137 294796818 922171219 433889724 110442807 963748760 251334477 606411556 175235778 181303919 585275645 919855597 560825068 360404472 181810322 282064373 195131347 810422852 619808515 770071372 116227565 421389178 8070221 388658830 265483728 557647043 957503968 247660780 785032279 543333441 821510950 2341337 895958475 760198697 305436738 31375058 546666268 583588561 632404449 318063843 994552870 275573759 89364983 373928671 216118608 671367746 643452602 95528211 662275137 954369733 317190861 630893033 909664324 590219521 405595167 984842859 495279926 669150089 263767293 50882358 884859469 105348226 141055861 395447659 886332298 354483633 434332239 553378938 245552677 866095485 196783145 902195254 728470322 415200058 113966719 206278668 317128952 95904664 51027848 608867118 667344119 874728041 205234123 439440983 128889281 578459163 932382620 182227002 415831591 924980604 308067273 198448674 435086757 36626758 382629583 751118556 637028821 831066994 103739949 677028024 352633971 675888661 154431265 823455090 130573293 941425440 830939817 877953645 359263167 995276866 561745015 554448918 301533025 459115249 385405281 86505315 564811749 430177438 251454642 244965694 158490430 176358151 679479250 515673094 361921779 296763958 119494585 806341430 642134491 370119898 236909371 772038127 487896636 819197847 811699482 438825688 336013773 566485433 480687758 638079077 949689357 722512754 717601701 922039348 57516155 69647840 525991711 100102822 961687755 409786025 481830481 175003621 991272954 905442794 798054659 110311549 706658839 613866959 569961850 481461409 129501771 368196561 896767347 130645596 77125390 223734755 521528276 688060772 6181821 112554337 457585043 768319455 965778722 298955305 97766849 106091922 645529631 244228195 601599695 974111241 499209278 363838657 707919963 516097686 708397449 441046660 25901310 803129803 49101211 336879341 42794240 495441939 710315711 364852288 368959557 3386507 710877364 343513020 307267374 283841402 806191986 460726366 393112225 346656454 920116031 306217208 577640186 614919450 641586983 182815831 316058978 95449115 274405799 657710419 387706340 608398803 355888068 717909182 190670794 575136350 936676061 506802636 249107407 934475259 870498103 629466174 34502641 324735838 199565038 261185859 844681934 971167435 208010738 349509069 397355729 64285718 726130521 632351815 601673707 409282147 810595717 510943492 597154651 370423554 27124095 516920995 425363890 206605414 997718001 712062541 607832883 692619376 411381712 533400042 286286713 731064994 646969302 678418090 431914167 117032771 720501749 43885118 114747661 854268119 435125220 643708640 701386370 945657504 678171009 831509776 697021438 349890313 327221546 751366049 109475729 174788450 656917386 396268361 869095699 815085878 494112050 455834517 969322390 283526100 17034755 661053383 771688327 684938357 482654702 663621250 319963403 69695914 140797227 500275723 783741483 18907385 100770625 609898023 611042971 773061962 461871509 899990486 572632154 888400579 829571386 426409034 311918694 751826053 383593576 220853406 2644003 717041591 631195422 50343792 500395897 695275123 832722701 472620004 949922541 259930600 106338184 653746303 139628197 856472795 979359471 788629419 75019437 256083318 714285013 321532666 500874669 871648440 336607673 90606286 113208887 427900615 727326716 967883818 312263456 544907128 510298466 752209827 864634254 751942600 357396128 94695129 550512404 820802727 666603876 517361235 663875458 41022120 344715301 433338410 573739962 150837643 778485245 583383262 443483748 586386557 712029669 432119090 725213772 942413404 987437108 338137666 704492745 186810295 914408680 423563797 462283815 556882336 284058622 835370706 337454927 801067727 836197625 239305097 748783185 716109600 217844523 652859779 485383281 993894058 671018869 919339989 749817207 904363742 245374188 58840194 486051372 4788739 763857390 192655751 809354457 625979689 694921861 316614041 916750051 628558443 503428774 954113634 938047657 238808633 864493406 215392479 703324547 770356328 744102062 708545269 991970702 929392015 45293164 157782866 506465050 330910468 552601162 208225088 318358343 624673359 972605771 898917506 654192456 933618192 892174986 325466778 405981834 260853786 641314972 352843169 685768621 218181299 383980763 186941381 77532393 79921375 348497626 258243079 880600334 182739160 283568869 287934825 123200690 868050662 134528350 284986474 444461171 856213052 489397828 404066871 408636148 554827517 408879721 572839363 297683371 299210319 260827299 563385657 361068397 648529502 242578762 567259243 479366522 472642482 400351504 714523384 465853589 392090184 156504208 745518954 484370116 951681418 399655365 961098397 679011293 663222342 404094211 123385359 864930238 675466810 521061196 270385544 517637046 336983268 217006904 124119752 559171855 750976849 709445372 326352981 41939567 819835366 243964862 172996999 746491263 605991155 936689174 104675432 426284818 220005555 30929171 534562072 457987711 578554143 21133245 526370416 254676311 467478978 77558669 183189757 250771620 798932405 203742846 439549279 854679055 493961673 261739280 301062257 837261327 919985702 689357061 527345900 166945164 870853740 427865470 714541337 436768421 474998746 938191654 115262561 646526719 497970076 922857616 298289332 774751387 452374247 232258489 774891197 531421225 838141455 723668280 866422189 633349026 644724596 159753172 685945786 773392094 768698519 747963660 492376147 802243834 567616919 626695513 378271187 886944034 827978069 527653312 148138970 408596880 14928599 762849628 927683302 608059915 164373355 392663453 687698098 252410985 560940922 690103103 372849333 764565709 774853892 87798869 59144118 70629634 844293940 599672808 621824145 856697389 416518941 206812133 608635017 349330437 183163154 368852354 403210484 586624302 897363330 55899313 335103132 971181034 436898976 571810991 98819058 951513050 271395039 115963337 906846443 211908010 162899744 761859517 896880065 132072259 10301031 516891739 950103053 349252953 675175082 699354159 74012782 727922344 8606948 714859941 96941960 860444065 265555362 661083455 85516529 725609773 352889280 401108785 839217518 449048992 326941684 37787475 722680681 642746490 884001657 780921784 946292750 2728393 750265978 857283172 870353592 88699320 415862234 240373935 140274040 519964638 673589752 305794695 623281460 269313767 900140359 803699932 185589823 688283466 873657081 390368771 928846823 815710557 270435260 636138953 483055302 204270446 62231051 311355050 290759207 27263675 256128195 39754878 23465816 814189390 40158047 481786745 982675395 345286769 564825678 640028369 14426587 126310182 463295101 859612075 951364677 125982748 734646524 815125757 38061891 672486773 51283019 386087442 592468164 188081786 634726750 478597653 961308641 852246938 972585564 817073772 794147530 164986851 993634906 384603711 868482412 43351786 227212042 183886500 605610145 304543698 548188740 873949033 502226194 393551529 825947390 327612555 516780572 854289111 18172053 791577257 719623056 735690395 352617472 139673244 422615600 51392176 578810142 542878428 323898000 889531663 948578975 505675698 611884708 384440566 840529820 463056013 975397790 720561865 482743870 74236222 291913332 702669983 948480068 748406780 624112400 173581967 32586931 736832337 675939953 521809149 732143428 623319140 205566864 888416797 87846185 979314044 99519955 905197973 868815080 306015726 328815656 655213623 174842296 998332417 142719634 82999147 132698727 980959284 939360853 203610959 12571264 173326972 273681237 742318098 385446290 214605811 460607923 191437152 37618270 691616828 646865370 107499694 594523579 376931208 417110551 234980202 762873575 928579051 900872838 260053949 374888691 515208329 107120508 394324946 245872293 253313268 706191478 217782000 208600722 274219588 403363276 834964666 444300694 690553294 89607497 107464987 466546867 542497755 503923097 430641644 773500665 849202367 362378089 937995257 447348779 687691358 292956851 378969454 215886525 177681449 31209986 725038886 714105588 538007468 963128417 750836378 167096931 318316177 206612032 662664653 954662610 707054238 528642214 555066887 551674715 115156045 994965885 912436802 83195506 341888994 134963471 212443321 524850893 615235390 27292273 856224407 441335019 266834533 853169040 381493099 862650660 805828481 6032068 154653131 335060498 11057758 531443541 206214128 645277353 554022691 629451839 418919215 456781246 439767888 919409152 865839114 445744331 805499348 950927985 787401170 863575066 920433288 411497686 863735314 551544053 394322078 508692950 322124858 949290882 262711214 43115283 417340394 259977409 105038450 474021995 117664248 119503458 888564594 486904117 605334260 369209251 875888960 520733450 505876519 336832074 672476025 29524605 323102415 370336933 467049397 115642839 115916943 471066504 231896314 716311926 421042844 154492830 968627240 527093412 972987469 757489757 671369478 193182329 815953864 165180567 712164252 905866682 749806873 333751208 525205327 754866545 22718429 441486750 315152255 492931369 66381861 177736026 30992430 473155002 629118566 417802841 311974114 164847720 905297994 519022024 144222946 231455322 494787345 641617652 676233492 629838241 425684641 493173831 914442062 722623105 244839846 667034440 276456122 144488225 431651977 151502151 149332162 306815938 44724168 726304169 58053185 256034054 685999854 527801028 211812584 417038645 168718579 40327775 486016036 318462706 499655208 288394373 640194932 423259387 315831048 7536083 159715335 331751231 485392438 482145236 338356057 859319006 884032360 474079115 208930199 337622159 300858076 631606244 766493829 938993911 570895619 894881084 183459923 485425223 738717799 160955656 670270346 878517053 232998384 486431065 933673075 269033983 694059374 603546630 453851825 49094624 139492949 603370592 499806213 140487078 637343737 579907685 584515580 941826185 27006461 314016370 83069805 258066530 179975233 298296531 242465585 25145966 447015030 114547508 712544131 164687323 879076428 285071019 535079080 907328462 480643079 271755845 428022491 23454252 71545031 125947227 364060817 54979240 991321895 9281910 352188190 271469014 852570559 611989585 354939580 689831143 368676279 756762487 592016922 975497555 197477532 590858073 647068652 513682744 760140575 865711096 374467664 246409216 581098997 42786404 22899325 558673987 30317558 554426100 146569520 682394294 219142561 211123659 509668569 497959083 751407361 759700484 883701887 169507993 187152643 896764801 391161599 467982038 968864977 10892333 385474603 356196318 409863652 428321665 811968747 878452339 706594606 331693591 582673664 687938006 766745097 693382512 897756680 328915153 973450232 352573371 805422325 491163768 566322009 172727937 549808176 312944408 136005120 716721201 14592804 312527154 99472796 461711872 634308674 475782763 395257290 339306134 889835740 709035191 904449701 987128692 593617994 890272562 482687618 135471082 394648559 461613240 662247690 292102511 161464791 964366673 259045806 430975839 54470638 488707191 996891417 505274180 857939190 37353342 909760844 841091073 474872085 992420514 100658535 709711061 306464169 241578402 820879405 195414624 769625932 639625643 513490282 461208795 536996184 875898169 874194818 255051000 85588357 764703620 78228981 666573756 78581013 638945160 602233298 334055062 872367899 480973029 161603796 390908795 149480807 297509374 109330979 178226732 945878870 277935382 873056042 210130804 189330519 90107126 998384104 140096148 592213275 289107204 793304326 257857282 175919274 906056873 817168477 757860955 290944766 469393558 15536860 812945632 174512047 110167599 563111104 544879697 808071762 475766873 203497619 754578491 72005883 468102822 232690933 867183848 846865712 40164640 628228593 669886115 199122811 913177794 570695977 307785076 319664262 848064760 604539953 461127092 958179065 341132972 800983136 816861602 277724003 272470584 243711564 381070179 40413058 188427721 60450511 604188032 660068078 702175922 213891973 443813874 6429013 237412598 57443007 666567106 501704205 525188810 706190535 47555322 660237216 321612781 767723367 533571294 314831778 814546014 799982572 625444707 967542088 519238109 956796196 489085511 191215352 503988147 156833243 105524369 354012921 980045254 88780728 356632592 915179010 101872627 111589837 386038095 298788943 473745317 431745563 226073462 357611955 368691362 134370960 527431057 794868373 102278695 523295544 121722150 189888512 392201125 424473976 586038557 753705374 221897788 470578823 561913072 371797549 74751872 816543064 965441544 509590469 356563902 755767124 236323599 679178833 65220720 931340654 73755030 119437170 646837211 234342123 319350026 43039235 326122195 74008520 289636048 226673467 832416104 136188056 662049970 512285062 373284531 240616512 545638331 669494911 453020973 597405528 962237520 791518161 191271143 270272863 703626575 968889756 609555109 26526795 913727313 838480925 860689583 215892657 16107654 731251862 558772944 665059792 644465017 125338510 752570963 195721468 872261687 545248869 645083113 679986123 321113389 834252006 376583622 699952336 187354024 577175681 449433592 637878594 201199419 153641486 367449414 647615601 336336535 634051099 269006248 92970047 303893501 477609911 576975143 437258811 503848435 337669424 301843423 890280871 459921437 377947655 30169331 359913446 700392497 868665356 351634457 269538272 184840892 932539142 837064654 819701252 589492503 396071181 741708563 521513112 115265171 582525899 115176188 409340247 256267173 17651460 931552326 726512821 748454750 271427865 514912189 455463571 980999502 639275646 871964398 133833513 961719688 385809746 789518626 715373135 281583735 168305326 775941256 45015596 196252995 113356690 910478508 405844681 64161124 33563924 101451714 151655504 28871987 737091436 557278349 458076377 991614120 698477680 456463569 762006635 359224513 278831132 751494164 543593745 855082770 331290793 392327587 735883613 415486227 855670415 243505809 64673334 609453379 535648149 24723858 462607625 540481192 599286794 267118869 395627070 49908014 785922979 596832770 439259772 495078164 387124577 32823103 799389781 693720724 724266911 764993498 839214341 183440977 635696120 336373589 138891099 437962819 691467234 155557451 175629702 283546057 645765313 425303655 110094501 372723898 265443111 168920660 492525200 688235436 58461255 962446591 888518576 353916398 339580306 518832980 14047286 850077215 387338547 788212487 662414459 301786412 857969719 352827969 112665097 609297697 366972106 258084779 715026454 311195071 844759764 941599329 599392435 621446179 143048715 393629584 159660015 987016191 990512924 358173807 508938597 880518365 636431769 798994944 120384065 357863113 457996647 550139606 107603661 752191182 410338882 209435633 655325582 135954212 107449600 701934237 224302149 612270059 292884702 34252260 895541622 328484988 995256981 700800492 967412274 222653536 666528793 64349050 59698424 459653722 164456593 419562573 253599068 704533506 123268737 36643859 971921083 501317724 635538979 671423035 221972728 218242537 24300282 583718353 352324892 612026088 306884809 799879827 243216388 433993907 49098449 763803844 987531024 821164055 504789493 305034937 904322534 885260072 539689910 313546839 913111796 734817820 308753637 38788401 874140066 21794058 828985952 885562877 412740834 800062138 63303033 87765663 663791934 325736405 675881371 762093605 108051148 946074248 443443832 71630371 973650387 727314671 49483012 509429578 232203624 280422461 164784263 588989486 437388733 63830449 877810599 257411251 835537418 334672768 561208016 848721917 367808795 949269138 623542816 374812634 271617019 848556734 78006307 823814045 604953805 767207105 403770556 389076348 946232761 247766462 785911089 304206497 297514118 543343867 825048244 470224591 705724750 4279117 528857664 144392623 291919944 89186906 101083989 559402652 155122635 877230611 521479676 164655974 672563255 830242892 725373319 731576639 674531811 303539896 514429805 566468725 455289864 619020472 744103713 92687770 523836657 303395404 135292273 299110090 109522215 917794060 934837905 196948436 558660262 219170486 394074393 407580011 950130285 739268684 412838437 641456191 123589348 241501053 541760533 965838709 801562166 176470486 753885963 432881623 264003117 913595908 159944640 728405688 910827209 618587338 573845802 612921937 138308570 90138215 714112368 824083507 102170962 709981164 197015990 862724999 339484635 543539700 744314970 788334061 828687043 761279237 964211528 229643722 66987916 433014534 955003224 650184014 915603718 554750162 116933293 803214086 141702910 308267828 2973913 419778670 640004063 894281721 865360664 635755073 75221791 284796106 444762466 979812891 574366846 251093879 927108745 27334413 625236326 98832997 292174807 272823435 281274462 617028663 989281824 807942758 822903858 58674126 376328908 928696317 382515390 851126271 665189752 641578915 673675913 241983318 158946364 81931382 158246990 507381686 190889029 710957039 514775680 708639980 223864749 91030207 175215306 971101270 592833347 271386588 439965838 402364316 738837806 141433440 945085013 714213543 497454895 686715201 278329000 651768050 709391663 211976549 235638653 145143749 840262612 170445060 96775793 642674073 956207921 807126200 670506644 807194151 625497139 904520615 224066401 430057500 263747842 169600326 360592911 665890611 380669413 674343888 956280638 707994890 109817757 563717739 545844322 178647223 179296672 131061362 494581875 862353274 409821860 957813189 9215621 480859510 770470236 908910152 787560367 908003062 224889953 512591747 666337075 713990871 389124497 325041436 588055208 110473202 629472034 865441536 296150486 545041367 819979567 265524878 930433703 681249630 373675409 43277371 738249941 602949239 985639221 116405983 611080354 330773229 556630450 159896176 684103541 452751036 276278044 809563479 464416258 129861173 168067023 790276456 196907479 45981975 684861264 215997150 786763744 365526548 610260161 702204673 621875264 922438312 553001446 709561202 353002299 112934397 133310387 698324466 131524718 306303319 729888125 775330014 535308809 744457770 166383830 615913940 257563613 572132731 592631619 762005184 446748156 146380784 993829318 327412958 931885554 220898265 870456924 462857618 399738970 420836408 965469894 187656145 220727803 251556047 479763137 617645141 950907881 68988981 414683191 322526838 787528069 660224171 930191395 850222446 848867261 214405964 356786334 807730849 106569296 17259257 923583046 421292739 799992081 797777342 460658296 385980680 277984750 646989759 559870171 494770751 928397562 734863767 521977939 365102846 903488461 434777624 364084523 508408446 415853788 842595787 657252549 210908625 301865166 733379168 488887195 192445595 504583168 975235419 431318150 662986390 751929215 87271967 761803034 167111145 843916895 653410244 992733155 142802455 913697917 854021613 826146275 207953302 945738179 179199358 402692060 249265565 684353179 814377286 787050276 348480823 939188518 462259703 254907099 43574425 249664713 537472303 89373349 292704354 798585284 850883654 883673170 916983228 750289085 197731643 96049251 570192612 865563352 760166254 707659368 714179653 637978985 991027178 175861072 479145869 745564871 318159640 571960147 286961930 876151975 346645318 135167316 222647047 667202500 767523773 518803359 332877066 259209240 915643341 873246695 902381560 133287362 209535650 137069920 877609844 101703101 891110903 212628379 847741062 226536585 850481550 506127224 63028568 484203381 600016957 87494173 626700628 606902979 904170639 16122485 313087136 415588879 355006842 436646514 452935603 157310026 559668527 765333764 860748077 389763349 531819256 954879222 498853048 576370963 612103052 118782629 691660779 601155300 735716733 309921779 76236139 318732536 227991313 199153149 168810118 171444574 26409053 88516815 765046070 262244768 779488294 582389363 839457551 843984012 473354650 739816535 729180733 225624549 72096759 669098483 396272971 656873003 749490662 60931998 540698429 64028098 624168006 91331237 524239244 181052557 657657437 425440220 278594948 524693273 678252874 420125245 127490266 955083609 389699177 929415292 47425284 446724349 768582589 230208633 738269252 772277246 193188816 257369146 313840498 69531069 18179680 453030368 865333265 518316041 181319527 913339991 384470448 447052021 994134764 424207720 171107233 473284217 65297128 784513800 840079028 3603546 633263750 125594394 745543383 597885166 500113724 769829171 153435602 320413526 49570326 692124053 263674696 164481599 402840635 355378693 517942076 140271043 988656683 318799091 653052118 860751203 562428055 83373593 844329717 449905536 512057556 231308612 896008066 494337463 200284661 129569862 164865019 527041584 455022993 693025458 342242760 230641857 618755162 273740771 959268597 801688751 346541095 844431775 393522160 835245047 725060677 37524603 555134111 67160687 675583595 428838464 779177668 116769215 152243716 566589731 600093770 814302407 208180373 648706384 988288312 351308971 41673032 303939860 426770080 103018112 172031467 101295556 916819058 886519157 104951940 492813178 852223721 603629572 406441190 3197912 120511238 536893314 641419394 447962049 221586318 409928821 847152541 7076351 760548356 69892183 452622177 670342523 415584325 369134407 947873703 842115739 44019425 865171833 484099801 852588641 842376783 422728541 341591787 10393363 267234005 531977704 96334414 855037897 946188722 136531878 255377381 354071369 52777836 660908209 991590274 315197059 149760036 341280185 728709982 560089001 218948872 95981523 638490325 558922451 384643964 113814488 866223140 132110903 986710938 424799722 700215142 354985927 757742156 136564508 229687885 356601772 467268298 99226922 566630475 850705333 925436895 42024787 485732060 7964041 297934999 92923156 198869382 938488263 427910794 112613393 879605462 423191763 627267257 437041387 66041518 942823985 737482494 672177475 328583332 239146737 32944504 799067414 846486998 673043561 684816411 615790268 919918989 393825422 494604836 602985336 952568393 162371700 341187862 146620225 92984595 893433905 363379249 756656241 246426648 255570313 434378153 546066405 278042477 122126001 245148911 787774063 90408754 552744671 990419986 160886713 350342901 423525452 501799436 799948992 572956577 376497724 546935160 14467073 385667346 571803761 47639350 235751521 357605784 878680280 181042204 633316640 358155952 614713625 30544329 881519580 2374490 138731098 223788007 400817212 514704326 532575169 170949134 791683191 875241536 943975903 264861294 917239987 95112787 426682026 230525168 970584706 736758063 715202274 670182695 819014085 2227249 498912540 268682918 617098752 141668724 724874653 237566162 658296820 324508094 579058032 137793501 478679844 879124993 423238935 945866707 194549740 503514895 91345931 932834851 860745419 611960588 609901953 776574867 631441694 31599794 218907956 870453636 354807781 553405182 209097202 519230143 580166029 774374512 432978398 224178271 152240786 376687781 88453817 685914132 689897497 947093390 799641026 676072507 283051616 136327902 963665177 697340834 560325945 390919971 255819574 502694817 333440000 919552845 41137528 215476546 839409916 459728046 891187603 494668641 2568364 529021780 718692591 318055586 529899477 364108641 239297206 818776860 542055433 971659624 868146929 889477806 923254383 416193837 47442731 488173947 674815216 408769916 380448030 643222708 308915582 266503297 241618036 941028067 789960229 325453960 587301460 496081592 169187248 756520488 351572968 692957971 382659100 666661980 777350173 621648316 571590322 435067023 183831755 913549776 800974861 927963448 428502219 733093124 364732700 438322009 415487926 296446541 367250362 856554856 593996711 617345120 446650759 549579952 887777532 611890 915416212 584561455 91438766 680086456 246829819 599393331 947406520 98461147 659331270 671004510 323541209 564785478 731109543 318213792 860946539 715649669 972430398 261303215 332152991 152984026 733708792 495945215 893845395 765118727 367023911 974133831 192538884 841176840 271182623 331662600 422843395 673896999 692793176 939104461 386805773 107219632 283720511 432405600 231111038 330928082 984477385 248702828 475923934 92617079 455986290 577911672 200890320 973923811 621167196 947846304 504942624 647354837 491704011 859749397 475067636 822406373 154590024 18591827 85954909 907514634 848634835 143916533 827178917 398972858 61418090 976880603 856685159 535289927 945132975 244123369 896766434 451595387 496173764 393165533 416313805 351842595 612695402 414074837 568572799 785799491 174787110 294382257 140302752 26866235 653349252 243043130 47119617 526474409 922758908 978165010 178207933 52416181 961828062 132832573 360928871 760136923 45153264 121091851 166372998 858152220 99081954 693204296 358189969 203993382 923988534 522141036 88419792 941735879 210549595 677863316 755114567 574587298 764798128 417600186 366761942 669716786 327750558 547813341 789085601 461927664 406964557 661285738 170297522 594571663 842447497 821519818 994470253 910743356 272652614 41205052 781536026 181642901 129100607 1906473 427554751 365262849 139369823 554580827 803412698 175627092 516569731 487715876 597984362 44460093 469714076 950449853 43293267 281557562 856875731 51474872 9351321 24717690 470608081 585570095 516136518 533674050 861224640 15963772 878777878 152663586 22707864 952826393 633240392 888279885 776234334 198145026 493872571 147682006 837455519 428782710 692668555 14857103 992235491 381206535 728135292 191048603 277968448 149159437 837247422 384035710 15565289 323276700 302776061 213288977 975654827 478200542 816601465 315155369 90955576 263890837 713844142 38281460 165355093 406766837 612046909 827462603 240125620 529109622 449110219 96708954 208320723 10867184 163337080 609061403 209181454 711148181 927920577 409397534 810075481 453857745 71270728 35892259 770322730 403425492 678321209 66235960 613805236 65824924 28063441 45510983 603992537 163796274 791788761 846218901 675691944 750450424 729708349 233975124 922849785 47534192 281567035 879686694 345499106 568510323 430793372 304408954 211216606 233343571 731105509 917171382 351552136 564237925 560081555 668766676 410692273 203585526 202652950 596297731 202443738 713950449 713275035 183807517 847506675 30798162 961961994 525798885 146971357 701111763 60247418 886124941 627068801 145321610 347620664 596830797 299484536 912615555 474857003 858574567 651483180 298578379 566927694 433252124 475457053 179065853 467265002 197871654 886949747 745484490 384342880 46245688 440191553 781325399 307492367 103068920 609717532 416316577 248392625 695570574 874598 939736488 537513210 804341913 573377495 209691714 52637653 231855455 660841720 648609704 440163369 621232715 358793904 512000296 81535831 602982025 700865140 328680841 979206069 726992100 809115647 580700468 250589117 579057621 817405189 822028422 322333354 207480229 463886506 291864796 551768539 163877890 822052053 357617473 354700767 127117567 711114766 195248764 775856021 638444861 664978891 294322247 659551568 435997658 756245628 566661649 421873139 645225437 131496977 534461560 838928367 664173202 991198531 418284714 401943347 999777792 368558772 507633087 468873979 635391310 587462303 944641680 216662112 933223227 399727444 883321738 625691230 222179532 602912477 765736933 674734313 236500573 704093192 558284929 154737466 828904429 34885083 834484930 387797158 227176931 238028362 520051499 960804739 224853806 652314538 420546109 486107100 570008323 189747979 558840591 343362312 287622309 332068938 219502585 338792878 262974096 921332310 282973824 77985793 126069011 369889373 841631906 957059395 611301684 101374531 643264572 249412213 463936941 361867763 182986628 152745667 253249436 25188793 940136517 125107228 522763523 649677023 341054774 480125527 918925179 874891871 635476951 444284654 515359824 985630148 248860286 857931318 661745162 511062600 426642100 388855296 727897002 206332089 252505323 241064413 691626714 791769190 197798623 303410550 452248007 394826307 780593714 896985552 750206071 971115724 629900280 239172959 538286374 850999385 806530939 74878439 914159922 918163737 264104911 428681053 733280675 989215283 916983195 10135513 781001542 874073404 988826609 437010471 767901080 981338534 331078509 371805885 786177267 634150070 825001816 996374859 850849316 897427673 781693476 137544390 989268682 330425415 559840565 730241341 258726755 764557214 557954102 409222041 248086758 60521683 770600250 817937576 843504013 989013970 198606380 167224384 493943101 448230266 252841917 91387547 387239920 674008152 858234595 415711022 984771038 592582067 186995091 936068258 535834703 208406470 499679755 123825888 993621410 577147894 23490220 276357166 204746278 997169263 578223418 139675774 671182867 490764254 287978329 604200503 940661072 105698892 492403148 673268136 684712971 517095500 724724056 705654135 49272395 602280646 792331881 964526931 955355965 702273295 785710558 193329293 25086604 866921297 422573090 39296509 974806965 420548251 245702959 597960677 176300444 713669998 880580281 201265791 931707637 603717957 85728980 298005161 618843915 253279156 337167176 264566610 909601046 817017179 973513847 198338174 6801457 956302752 273450893 454295993 376173249 784772629 970705305 342308763 488244857 359484236 508474962 850238121 797684093 393686365 672471324 184543803 427239171 680528719 518552511 480307755 515660473 20204140 353755383 176014240 196048527 40752318 4122228 88709929 695168590 226038260 308741461 7292001 323665703 416967444 437741183 786554213 29436133 738684643 854869447 374119302 690071583 335611837 259499804 204712479 231433975 921289152 1611602 165874913 152449721 425703525 391242339 771940944 70899166 179289217 989771527 87143526 722111098 844887668 552174443 437352566 14701783 257152158 739444417 815491235 379865326 239720226 73336368 227666528 731548817 837679728 242132960 138885044 443843550 809199812 465806943 860241626 667871509 966201012 534431832 65855836 772154900 683830439 352083843 104898169 222806714 993600672 187043111 734544846 107099688 240352376 349709197 19482696 223062145 124556678 200374040 854349508 57379619 466740426 347230963 128690806 665233448 339908143 418217368 737312979 911502558 332294866 148014697 590670109 942422084 116046511 222632557 813519233 820156948 378008292 99394206 192257752 491333901 428474051 95410686 985254175 335138089 650760584 727892195 267197935 368006323 397827261 64891056 172898181 628060060 771189506 816324237 467666773 822561891 753151699 153560846 186817771 843100216 912769931 989499395 549481303 957277635 224998755 748192993 447291059 773172237 874727706 92614894 326119972 410617151 487745595 391588409 719858003 278683790 220295699 213545546 506943489 159538973 883501135 294178985 806680757 187244919 749103051 321137261 950162350 425689968 675003765 366981866 128318697 957146265 345385212 369402297 139878392 847041321 123396118 725983345 842672348 983379079 877533256 272338910 11988922 845361670 565836695 231378009 587904782 111553339 359742290 179454567 400418087 506855226 159509562 846520133 141123241 529730897 798948316 600190144 403262325 671517034 414375991 333624853 575359068 658699591 964550224 225603540 523730190 713009212 449888155 603707765 743632895 383817547 110412784 463377842 441616564 174780153 794893143 266415407 169719368 8616633 241895163 55537586 751576179 443007011 434014495 687153602 373737503 367910084 285392472 331869633 76685657 997575143 392983505 901045757 101749789 813064757 581035946 853410370 660237805 382328396 724719965 782335898 877450406 527435282 15878316 893600481 613805999 769003091 364880874 249608633 242790770 968970114 680203162 117715680 309541272 83156174 632303857 198252717 29101557 446654402 218216161 661605742 119077975 702625332 87968518 249783809 517417769 545179707 470977516 860810375 886587627 403389455 937763740 335547809 214650936 478646357 818376304 94803822 9504950 453112844 844788693 920899044 736799440 950852603 119581156 710052632 318145081 506135969 996632659 725441836 730941521 216894151 54012648 451756298 862029904 204087429 539303061 903910488 19216295 768066269 383972186 563147586 522435278 283629963 714233998 211124900 650756997 287721627 830419252 213701127 741709671 119799980 228193065 101757905 864754091 650304331 261510885 326679770 449138089 34381181 118499285 929604590 925701043 170921443 559136656 396984518 914546333 188290265 91410631 98088453 955832695 544090541 763051055 781152649 805002461 156075607 841126811 70954993 423339651 437546570 537129876 98210861 99224309 456170126 827191000 775176723 673213333 454759121 469643122 408354459 920199068 650521915 813648366 75389579 739288854 779562186 102900419 568674471 608436689 485637609 870020887 198369058 70614139 112241643 748186282 850924208 728367117 931260583 78568905 561316925 916084836 570293323 158852464 187809007 521198612 955509240 983432285 369083032 596963714 44026314 303613037 6133131 85949181 777955154 953876200 934250292 662346959 921612326 168269558 751742851 809690580 4264984 916989906 265083627 753161425 373134909 379896440 239575154 354533192 657883410 818181105 987439061 168270543 47731237 376175155 323069503 657116010 134484302 969459184 116837613 785846019 353344497 19551372 504440839 914612196 23324254 524083748 264557108 741357357 849901663 49423910 594896257 349445262 192334871 179060887 555370248 217444110 179868550 463604616 501674538 691102693 345474318 592079766 17377233 101066007 563762576 898123483 93766474 100837975 123260390 955941942 943851888 872148476 697453232 144243517 587531171 433883540 538501434 196153622 230575563 481333485 736519984 978789279 493416799 437428811 622969706 947170314 472757263 379913564 694569157 641989170 145677247 885000789 695856722 614234177 453712310 158699972 844786796 478789289 669970892 145392386 703297529 864157506 954589177 346796998 532623413 430875849 316560262 604662809 741231543 41639571 811777493 333228373 899757256 27549624 140398334 956572838 983802300 944095821 184160269 644568632 234016643 351547965 121810000 379146339 460374326 122531745 505023729 963699061 51911737 58357028 822126349 957018810 596056126 919172101 702049089 136692260 233065311 736501714 351963692 827889814 868329682 777209882 416255968 54713834 161363673 734984121 186765943 221456371 771697643 888413383 803056069 182742470 98125523 801919069 333675602 253582148 532548253 841026726 46174038 255217111 763935620 186402505 213345101 527193185 553518275 578010659 373300426 979462646 244312415 458581599 126962996 953216074 969463114 579405502 857777744 277469055 486422263 669670097 431011749 144612372 88108528 208268356 578736250 268786601 836876069 966712942 289179227 87070404 139610719 348261088 418172466 53786800 616859533 182535662 428868451 434999596 155135533 489245604 159074491 836060790 149896240 445217131 395759997 809275872 490436445 252014309 18718198 922751013 637482673 671427153 475447473 314152254 689805215 687073245 177531346 163121561 919580854 783025934 254380470 261565523 847902764 43070674 627018580 188338884 10622777 977569261 84588174 816689337 696130914 659599875 889811322 491361588 749600673 857851733 844834136 379235405 468154401 797383333 450191001 341893294 484666138 7623145 338783903 638786062 571980043 963444548 431180134 253490793 379660358 184409161 681369934 341261908 446930513 926561937 885186446 975773371 310244457 758834349 500407435 870521912 665884183 762574613 790316360 375175701 220920390 62187374 433585780 878753977 992530418 811475056 995433123 930036825 690875210 712884712 344792334 960949691 422926360 523232845 838912907 999719230 531731824 828669823 4366648 309233529 607517809 891487177 983729738 271463304 648284168 6948584 952863325 696871792 372269558 237177784 457775514 166157439 696326839 372020417 177939722 287468134 134898660 561024632 957609886 225068595 63013208 481788190 554082980 515612837 457363734 387632028 860986290 571931972 611467084 358942665 131698031 731347191 715176858 124770680 128358158 201524542 649323128 806378094 632536291 477061305 413191792 365977641 980646215 632666292 367677116 769069599 426188722 832589300 155875149 519388414 665396694 320644187 415399382 543687873 374093934 172300990 837005677 478486192 952651966 508694288 417406717 974103479 726513598 679152598 559983949 448381694 855037325 475323771 136586573 512188854 47347676 172442811 85761187 514163169 816861852 68581102 486872789 171748089 415196232 145698964 756007781 170303932 127921367 686735174 483985523 498346143 471745685 784786415 461545723 158496144 636318289 461110201 836717197 986414144 921866494 212541416 349742208 132558950 336323703 311897901 221364750 653027576 365058786 344307441 709361908 606122012 522815241 126880165 247642177 816738088 860415193 513870033 389250975 510726389 28635092 938313224 419609135 302754506 821534647 842805890 240304524 49698971 776860590 874011115 861384689 182615022 570886149 167687598 563062075 664854027 555568000 302606109 283852205 386556389 348441286 97632661 163175247 497103577 678870318 675435825 13310522 274703656 994592279 505192835 582936459 606124632 994314087 181430840 139957930 91226393 794225516 72475988 960792231 147980912 880262945 886763853 721019548 369531074 582051467 771168314 204898415 249510513 779659851 441998519 655110817 69065898 574738440 450069894 673215216 247649537 355937366 211026366 210788263 974750094 170355513 151986410 116621582 794226224 315856549 433557451 671285675 609092218 558656594 195728046 344268249 628250163 18701958 183687464 774444499 585873075 352493918 183636396 962961647 722207779 989672134 715898336 557125777 485995473 923460899 330770217 140086856 276361289 315404154 674628234 387170502 946953744 160013919 828936225 309480506 88310344 261039543 941390073 140321040 289876451 796094321 277485206 649791701 19619725 252588533 91189392 543588823 882317617 117157825 9289806 798895130 719412997 258517316 217307962 972105939 642518382 424930080 228324880 755994635 268715417 357454879 352788649 720661114 890547088 202835383 676336433 137125153 517743193 309057883 88774669 179900482 331719861 315426385 624530 636889356 644941600 515158900 799340305 392704167 692299324 433688116 134713596 477968869 188337898 797441589 37754969 180685150 277497041 321332205 37027559 133367352 808799156 343494198 485790873 376983607 39511317 444784893 493420004 166458711 471597507 846644864 193007802 740959832 616568874 992983333 607935888 577170125 276908222 117200834 922194860 693422352 126810602 734448241 370753692 445177868 1533399 465664982 568475245 232761779 161402399 345758357 426011541 953828295 603447416 561148754 135123344 749821799 249959210 382690438 989263138 465966634 151270441 530808520 247841904 166360257 555510617 149627299 28617516 109844993 176680602 221896904 498489094 439133229 99279890 928482224 717430649 131566502 171482095 495583928 241011476 583400857 985033188 935807147 563082146 961464335 173177131 716349572 61106356 487828054 463877824 322590029 60306077 547509474 6163725 611239146 349945835 396955117 861321005 926938309 166871629 963569553 672242433 71318190 733818673 164098379 664877941 275803784 753519056 888259943 465886173 555758311 29504924 9860538 464163347 493024749 215472806 728594675 281310032 317770531 5735810 597242434 907409844 277469967 794518470 558149857 43993294 756153580 730052601 558106496 286173453 704677092 47611172 955134253 623052852 107648990 455355943 41709891 978933811 103434686 151449427 386059760 39642098 490112543 756680925 992190392 460940289 820307205 994436825 872659714 408395041 701396245 443668473 58067098 25650913 798838254 631019797 668031041 799942974 702881278 761574136 915918429 538475270 181304350 879109942 599997926 87467023 435210679 277397487 836018898 950861645 531481251 134855462 712239069 783305247 271057854 687397670 637064845 194960413 766050107 26066549 965853001 578352765 541552737 422008244 762339518 773514685 818857868 594097453 89203432 978271423 507731243 216886727 778311415 920333175 782909411 419088505 684858438 716333738 952777842 916965332 461703848 532702649 34904143 64020536 812713651 8418897 968409729 794530973 686163738 564157809 357304748 646706664 181854235 658129683 225189969 454316819 76302152 801368718 511276402 495516751 553922595 146912285 491329631 319435563 662819719 861425558 131922869 400511328 564043443 507597664 346019079 943384955 144430847 944344621 505990552 839045345 336368941 804021859 776235780 583937737 213668803 810425652 376470656 219394247 863063937 356086389 272007496 396128617 216346057 763016980 755278805 619038527 684916393 283536269 924732074 939518550 659602242 125056943 981822281 981409867 258671863 68571839 546861833 136915172 189662719 322468805 418754551 182767115 639296822 491944246 574933396 293174518 86561127 83815710 206681850 984330131 68517608 269934575 845584322 105339622 32002390 295674259 912216821 380600239 914750204 969680508 927419148 455122922 187268670 193480820 911292289 89566323 23807205 14032889 897820259 373065064 415208076 424909454 894879304 262091715 280274591 97077791 441255824 614841809 218609766 467169006 999971514 762695341 200846989 257994687 139469339 274897864 960927805 47374162 99644400 3882864 707608 305966556 579349861 450385420 502730041 661261874 690641468 629967661 122451054 309013706 279831271 504202834 73324323 714940764 81681777 299050508 824396331 843495184 118290899 497340537 871143254 49214569 262921572 161782201 568611835 866774743 869357357 304513547 347247061 725244657 606822639 892355851 481626338 221100991 911486004 527761346 20513980 902238259 725873161 368370404 478201495 50749068 197134319 414979537 658214796 936046662 926328915 60654931 42682462 910447553 890029894 915349499 252121631 411221112 126660032 305552378 702292309 373674184 693913538 123621898 919176513 41930265 369803989 895144046 346117277 780100847 322614872 766008615 384638814 511494703 223858665 297362870 516885209 885563289 367446174 960826765 974948529 396856536 582806421 101680697 89141375 446321947 416673376 676206053 775525254 344476742 948524685 700388111 259372259 924147326 738645528 908536035 682485192 717140981 453889755 762031320 903159969 726570785 964630121 251655737 514135244 962822344 822484535 743814738 181942143 947576979 290861052 64235656 783271403 379656371 685304490 622495786 731078902 848152939 965678507 429779937 600857008 446754973 507932459 203457836 831880276 385828619 954109332 629658926 12143524 336284060 308580356 83384254 604659666 276855686 787034687 954307268 737531751 480970021 173712656 63797903 204355096 796996779 428149173 596684512 410454044 978787695 640214751 239437338 410925321 8623012 151820746 242845774 242053505 581922858 142207543 556029986 557677569 754458493 901591858 177179837 12989460 692163221 88316331 249540024 540693840 349631287 421729615 851804827 406983589 748021455 295138207 683355688 361356991 76145908 229667367 924583931 389525681 738324730 297827151 34983089 209427097 457013907 123891988 479950988 724683202 201485050 536505128 840745856 312908554 813845354 304463916 689408810 211081624 121261968 161175985 527390645 750211232 193521140 195626029 611479997 798509292 668516281 646752836 685052412 807147011 359999020 942867979 74270234 873162185 618685331 970501808 570200601 362583559 73751227 441468913 903053534 702927360 482275500 895549412 482987274 561296194 552848180 406173815 41636131 129575260 986844246 589626350 413229133 461585128 655625207 441143494 256417982 652694244 492834311 709295291 254638260 571065324 300850978 944056745 970696554 821512464 17944631 657293293 799288753 591305130 526566598 44226477 562338953 879162123 523847205 833843222 793262783 704587807 985797139 703350558 744460153 28241482 53214602 875094227 414391349 141465897 618579815 783977473 852102394 132762184 449332118 272237605 730168256 191564260 918009200 224252724 647420671 707592740 629342626 826282345 9789244 497952885 430160765 696060420 765369756 621895078 863381799 73453314 652012288 686847972 673513393 802265178 38798916 542124193 36691669 889910356 662250288 271193913 73338474 564526879 551049974 345600367 569473316 181872449 770588385 832416789 489795534 143882445 469645505 873392141 968275162 160299229 334260516 385107334 440373080 542908291 95098601 994804747 367036866 756114162 658369569 659307084 124071163 91723234 541378289 52603929 253860662 724775442 376199773 62989297 235049330 972225206 716551417 196713988 112115973 191075970 335022052 4789157 773476495 798936421 308826193 564365251 504949453 750861657 206700164 343815678 786214181 610355345 790276972 23969641 537741886 10154929 519030458 918654410 924866452 595149598 69698335 448560527 478202044 369823919 394560542 77616493 857374605 130145418 509821716 304533088 798796491 359623102 104615740 605244816 990413046 833451352 425250202 898286565 750588156 648777750 54282511 509009813 865367496 494410156 489478319 796669381 953965199 427260034 793380057 512471694 386016892 825595975 611356085 637898664 93127377 274141803 897381177 156049469 312722319 865310872 702255303 925955350 106949047 979130311 701467898 913291859 781915624 89235882 21886268 239376073 300337051 343046279 194705777 47266915 916469335 420547498 310116040 632607892 499572030 154877558 422776131 778126324 161605398 780722383 933474482 795762031 983134340 149696844 672190755 370066483 794982827 609379784 273538278 263942508 622077227 705753697 474383311 89327482 180382360 86262822 520321149 167428757 630956335 53946998 634366058 5829926 293972083 654222513 869174380 31391180 979399771 30803560 857830612 182973390 334013092 867259086 932642150 262237511 954259822 631080032 264870919 788505886 839267206 424022890 720828889 516000626 404194843 142318975 323626617 564302865 328107353 784272295 637927408 298585877 767028511 814408474 719168145 639299292 636096166 350496168 52077178 200201775 795682444 278009131 238138207 176424659 278865743 339025879 969679996 768350513 152690080 55989848 636528390 399427577 691588001 346400641 300933401 85406940 867031208 908074122 478258845 659919901 175261924 395920450 181669127 963674477 100555719 45927082 640012031 849448995 399779338 257393888 507805146 462382933 575719516 384004739 959945686 226250853 473670071 921820822 875258189 141843589 618018761 630206147 436204139 605030729 190515374 654354681 935477812 993680210 745575297 974668931 357462146 522725981 18537540 765180935 783563671 472261756 374067801 29115961 922984886 770137426 336110295 452386369 327059679 20074014 155041203 689741685 356735656 204800628 290850499 509962245 125627821 615005340 905231108 310606797 59326643 712759412 285079799 515650383 294064222 532810567 120927120 264036219 484516577 253743131 193980616 179837177 298100821 692268670 39641449 29145728 255568991 269898266 869818756 455507892 882330036 349964124 657809451 993964488 401015886 729897663 368380138 423662178 137072695 992365059 41008649 886973750 190666078 747770078 620741689 565925017 625108257 226154449 75967642 462109772 595170758 137955029 199692565 228880243 112577729 380454495 454569624 294108861 567787571 809830080 511510145 285611104 456999195 623391116 741556141 851189245 296845659 659231675 355068190 300513619 938964694 340378967 113763850 561943341 946582917 808551151 912348081 178530325 160949699 851705661 233543240 661653003 305091029 213568007 782649385 931181644 893450 33333596 222299090 411186564 447276714 296658601 587845197 180203319 385846681 636349189 70256789 951336718 492694810 858115333 206004517 594762859 956538274 49570878 609902432 246656480 177702899 252073611 778887772 757970696 319202868 637824184 149566729 703456492 133229743 721202838 996463759 690389507 616255785 800904565 868826390 546723450 837749555 103029253 568392456 198290082 424195629 865208458 702440134 649850917 187220949 551430078 505160094 393819289 25292387 457425100 208223627 540283150 140024883 101486287 566737894 154810535 363842269 630741261 793387935 700672124 220695660 685419707 207177968 892618977 105299923 425145647 918380676 764194776 960713758 864588491 656919567 283545729 523578960 463888478 344963191 604329526 664405058 455256518 764085430 90511850 419537208 318506773 60248610 129924327 648167734 471060894 437712247 688451005 714283526 42114011 611221924 50475181 716454743 975483549 409920255 589930252 649582145 486049479 174947198 933789705 840095828 229852942 811983047 805867943 983229791 707016576 626809314 907242016 25737130 987223418 752620827 986082352 767754017 313783898 416498330 665618844 573959613 54953415 419720491 128945506 894970720 305123218 772969968 605862581 850060777 138114319 435292381 679478699 134292954 109858796 455748222 255158058 656517544 179983853 969427395 224993526 302655127 255584606 84102513 997279391 301867950 806223609 508017026 152172562 42861894 436320042 286462453 193558700 138437358 763898458 314440818 477973077 188819911 290189003 425549359 825637432 346662680 631730479 151860375 65019591 713952161 679442937 417314948 351357394 131537016 173898656 291076576 742474627 312674484 20075557 601816748 549900807 955862022 211098581 108922553 160671909 475388455 997617550 701540980 974481495 764723537 529816149 191377276 254256907 748927648 805972810 460343645 639278163 565843215 815656627 601229358 500372161 282993868 7651674 156922066 668534320 964010734 571274782 198659374 111199659 865514739 725459206 778928900 451504413 495720923 242628342 562628067 852246431 772632765 418178314 242794554 98400671 815190270 262361602 586177214 215559689 154887438 769031568 586997734 284655467 952835231 5512285 106174481 7236692 820621246 581580767 968758701 718923308 14601698 641891261 118842363 728184065 957798701 982857067 183174416 58777621 657281203 932088118 626895224 28379560 103682923 536195917 292841603 127941609 380762561 587738101 73883589 265367675 264501165 545713179 151649411 305833691 362040224 695909324 562352119 991956692 389157340 467437552 598431449 458857908 180436538 397714377 202089161 347131100 579883841 568710278 989812019 314428359 828698221 123773897 831233905 578035806 232240432 19915004 789996774 764447218 894555237 129968437 400136640 882358703 130100557 511274687 867774622 479057578 737009434 85907851 127466036 762434561 365103951 855077519 662685921 561164858 68119275 181544463 477777385 562965095 462102694 180003327 701925124 631444892 571852590 619195618 649600704 23446556 666800560 401335694 175965324 15604638 722012926 15386014 344787346 249374277 660858246 245579589 509278867 335546808 803205797 565437137 638922009 278866681 769438353 631178813 694612230 432621167 130038843 967838005 26442888 661600646 41870035 594687722 864819808 159383934 986242595 596829253 847420689 342320822 959384742 562147224 693445133 603085868 976870007 530976527 658033442 609373197 402730046 511975682 354535178 721731014 557665935 798364167 472745116 392416443 419778428 6782660 738387457 655253692 956216107 337415030 829299986 262700090 859798299 112071366 4187340 998145613 594796682 733165435 37038943 796063141 690966348 782616808 110671515 366602820 939382939 736425485 359355699 172127074 451676048 176780249 379365011 211231862 615022708 332295652 643793773 604150260 508012981 180170961 402574961 344007591 578665540 429167078 439591281 834989064 330086522 974879584 752195443 998707657 90851320 969065239 515651055 890053284 476087958 714365135 555230969 756379361 115484111 162209654 454168827 253205119 45086453 908351293 396129595 387093815 626270239 540028402 714984965 152939423 541434635 281324886 815058789 252446828 763373648 226486121 391999590 100913578 817047739 987669019 7188025 511493917 342583643 107356545 18554794 76153803 530036189 883737308 117095754 407041524 536946103 900519625 649086147 357933502 897804748 215168733 718595559 308744591 776231856 959323464 620844084 201771323 667405923 538809924 839996875 700807705 49407236 829772907 795467520 84361431 581528486 503935484 738405832 614918241 634760651 832789785 890050398 770657125 457306843 292718796 224227889 726701516 341663788 794737316 953539825 596949005 866053820 725542593 171616023 171588115 16238683 493001659 59475143 210479827 841148593 347307934 273788874 647452911 84549571 731619375 969713813 133246648 549911289 320669121 973511143 333553991 779086103 53826863 737352321 731895507 733753482 497519765 546459341 239598022 195299262 450420382 544232409 776573248 607575490 721883403 258461194 960108415 392265442 907401206 604210419 944680551 169060731 716108559 953450486 729359092 137842089 317558529 539522188 909780410 122702528 730360191 45219265 569968322 808510021 405644380 153041140 883571976 296627928 827458529 297296242 613968793 359334004 98708381 774653725 77816987 754788778 970137118 151487200 40573966 903485689 145273737 249089629 672410065 470863695 921983328 390921214 626883996 179003796 893135324 921327839 181792889 46822778 978006643 129247108 740652518 213785216 80027895 519224897 132840064 573133260 132412121 704248929 992095720 512677544 517021301 931753826 718557564 992272799 259309127 887618324 182145970 185147780 791021884 988178170 880928023 880395021 255310029 588023482 693405219 7804457 136024197 589879209 366953294 746241398 783684629 620787254 181026691 49672824 137584494 112970681 873323856 497111561 837048682 848856865 542614 791848165 353003072 755869403 628627186 138894262 884700561 718008553 971066109 233598550 66071062 867199380 465789704 18266039 676326839 342332080 913715453 845386974 459646579 702723085 196729942 527468548 974799563 585280523 701096203 822458563 663905084 636885270 481681175 136673240 354718576 904723549 807824733 489007950 827436804 226537893 257774953 641718135 499221728 475273057 298418440 469483854 9249164 235861248 385495360 624508450 203944881 59058363 98840503 51646701 458806304 84257368 976205456 740481401 95282270 472347339 29579482 669533417 919086512 964372937 942837109 293733702 263791645 217475120 282991141 97203874 944669323 71296920 918610818 188755349 740954550 306119905 760206012 517408003 976504753 188528733 103050732 765004811 90827100 368737070 668018300 944688591 560466011 997683246 178876807 764319836 931338462 67588502 586620488 947541873 806762897 18181193 258299024 752891103 2378629 613873587 911199524 531922267 5192186 782466184 80772721 334516312 796343829 468334347 89824237 630435278 645658712 750433759 353490233 522675475 132628605 605642037 509551608 106845589 611799907 333357923 166485793 563684398 298598023 970162423 488137813 899600019 929610432 953422558 530492419 210663802 619071784 875080434 166514445 91271980 855238275 174371391 477282124 166552849 937701393 483699394 260285332 282035762 860730107 739332683 409402613 809450636 125304527 425399018 518791826 346071073 348582340 384590279 136228536 34740603 777888788 42122631 139289257 54314517 812348559 79679309 883672513 579127756 509977387 143913899 3211215 646928929 211451954 14678846 717010251 449825628 524572095 874726687 847065108 975739549 813987408 78744408 1428914 921982360 883584692 349124654 754795796 685649212 200744771 520870172 134504421 744698008 278579935 15752305 58888667 451164402 6252721 886736677 287446457 673050593 417146216 426980886 524627752 678858488 220188916 856232342 44416749 646659889 262685085 22263370 448789100 541088105 643826204 66508172 485206006 673294870 301083993 201363602 948672896 837290442 792527618 844382503 216116740 785092353 771718157 126925518 776297788 34434406 766816032 632868522 976847808 378582603 142679210 205083807 822372170 606834175 52793425 667372782 221729327 682243942 845236473 522485829 559630359 39372595 550977880 962572545 598790510 63485415 486444414 763849282 899237381 97017531 566291162 254486899 678744698 925253667 29832281 300570154 434762052 14999167 816452249 544582317 192738423 772050619 736779492 597063535 478841358 268206972 34612646 331727260 602834690 732373445 567723999 126445734 608782657 535299479 618919010 410451506 745933247 243199815 300394997 263520848 656739154 940714642 36859821 935694810 785148887 116783507 893838136 947635766 672118811 36754236 933727077 90358778 139137385 609462006 83919061 560456924 941934326 104104027 559754684 193077889 530892128 6062354 586674883 530797383 60852615 734969491 137646080 919910231 890021349 573658576 804571604 915275145 20975373 113229732 269000943 668215760 753868194 372096125 348189762 349351792 369065803 831171329 841985440 106683149 587874033 225710618 289003064 698923585 83514271 673121669 741139021 516132658 725039193 911589356 184002679 939754104 469253383 541169433 797073245 801585917 303587200 835336944 623397283 37390053 325931426 247748308 175915550 984253482 667827166 326174503 555612002 582402903 951403156 67231676 150795869 437934264 975032984 293213952 298020744 215108586 986028360 840254922 882859197 833375944 436144958 477109811 63857423 501652782 947509381 142068862 926876510 508370290 921275852 792508387 362713512 810429248 956930871 929364421 572809290 436378111 198137100 192866549 171812703 304754263 283380876 156631184 233741011 403057796 399206292 741618194 222278591 849416188 96895573 369419041 449290168 216046908 832597459 391470880 557359708 340351587 604400506 844976936 903913113 513049044 943748688 421776372 731017117 513383078 669200311 684962895 240919851 46656105 81667340 105690755 858308483 681710853 829995488 214202208 35935673 927089271 11268423 950842123 764825033 128666266 778059387 767213226 829867219 932295407 821249963 145183243 165706959 728988902 392101011 13763121 957482024 368874310 719291611 384030754 185354892 665291694 565105636 8839002 155652872 10588006 682072195 202440999 814569428 94148143 292535494 34022966 164347486 476682262 254774642 322527973 101722999 213079090 512268873 884996432 235734567 401580630 488086246 223050358 928790592 698834112 864386815 479107857 686706343 211921600 762660883 893547897 25605436 958074828 390006891 354181008 481367650 759887702 403584599 552505762 984677204 762209595 455831976 750318243 373942014 611285127 376252648 644865633 471091499 738713284 110574443 664295367 721957237 927833235 498982714 466075475 850240183 231673553 644668363 233034893 446215949 764597354 529580019 69390166 947036737 118970786 792787526 673126776 929574676 970371390 896330959 175020978 691238945 775604540 304378568 322850808 789376201 59070169 37291334 511952327 257731547 940240966 652668571 70926496 489028579 268901324 220058882 376588869 785419689 141967197 327650798 833519830 544209746 332281837 948152793 939176071 427404236 337366993 631932404 82260817 335964661 687108257 628839534 465998596 369554632 169340613 673045263 484026622 442064744 305662997 342402581 54603898 239301931 417586429 856701432 558650981 319472200 572146443 85578667 77030956 344927649 674097187 325939474 354212157 853602083 215617013 651663600 290449434 356825021 53190339 173759263 984157703 861342099 350390953 455664779 84383068 548751929 686624098 680959418 141284062 532498810 868092808 710902378 846947057 870044505 516752961 318512849 760985499 636249595 506966707 233158222 910530364 598995876 368909987 553571692 396147797 794049505 125988846 118020539 59012000 73430496 522764492 555092679 957167589 355016456 698591866 278681589 745898189 18872644 81316650 910544182 487044050 493937578 882413643 847007994 121403102 744195618 648484042 599604796 657083367 53413550 820027155 275899004 397196019 262914276 943749642 496019040 706822110 440363275 23896225 877043595 276931559 188823420 856074653 304534967 623244916 728351098 912599129 508109774 447375903 307439056 585928780 160871166 527288307 147891765 708133428 837672564 546175683 795967474 609160220 476046220 808033323 404170084 905869828 104864472 975311716 924925700 893614530 790924636 490441123 974792391 50465127 88526886 314811901 397946792 976780634 499243742 965050877 463936411 264050273 775016960 447880940 92394170 253198887 993544812 906978268 519679902 424913336 18336684 956866352 177833308 132674605 140132246 927765748 684451062 321076169 734843862 158575641 537719743 648283735 722774114 793556847 574392765 400319729 804566085 83923999 604165552 819148648 345810325 572428583 22665897 395025176 320748019 762002803 411844199 123051532 56235333 336247521 328257600 47937423 921300479 510883571 321467239 427426532 88206888 872951997 480598141 196624570 839240276 930457640 892894678 47405173 840050267 653621058 406502858 34967376 501323111 934304237 803190454 610037636 631586608 178020357 788193360 725330479 176931424 641778343 903409774 179369597 766483156 519078047 182556715 661360475 487217247 547708028 763564814 677144421 745460761 11134178 24784035 362211763 652590319 889412056 580732979 298270442 160302061 329724032 533591394 222541684 640302153 138727861 557117280 574692923 378081584 285183591 915656455 240358519 34638443 305633834 52217569 878807087 736464102 526453624 870893224 155999651 949823393 69331754 909444919 869845043 809785439 519968651 822295220 173855683 780297888 391768978 548503732 383641491 128501788 930624061 801183108 897822584 635381274 169470665 548860687 189974852 323719015 457131432 888512532 98568664 875778348 315415332 7667457 998270088 654205847 446850052 711441624 634581578 169042451 400820801 603090635 166679161 929462583 64892090 327841827 115058937 408374164 765850076 563351696 877476363 922390528 478636318 974014257 540226260 313472588 750881303 515434090 80690940 415933825 827463891 543951538 321955679 91861906 599358282 603296512 70720568 608038155 342422343 470370269 749154825 218530575 462020795 815572908 330868783 28730378 220859559 70922404 862776586 566263153 660622112 765884429 994893408 2409350 823143541 524861226 816351851 504259764 10032415 910899667 174685421 709580740 362028415 658274926 82976078 247845720 377213945 292412231 741459306 580062936 31070159 231039371 453155942 867835909 190669266 526228130 604891605 899315342 445177870 153800932 962775694 782366155 703510248 954971089 101178522 645042288 899071505 538497582 620143800 699823061 304670378 342868266 485608474 820566665 277395641 142274975 395590626 165636938 185529844 257441844 621137780 125451591 821633353 925649147 378905035 705117928 59348040 955927822 690289890 18454411 491529864 965570756 89388440 797540730 249742383 582104627 528704163 598983334 205970349 765813966 172003357 218751240 885751807 573933030 619369718 275078567 148212169 234126688 669042827 868886596 729817252 451054713 417979469 628649821 175365006 713281818 893001160 709021122 963686596 576722086 108460417 542250385 556945809 950071386 674202556 211172400 790586893 939530761 396939913 156714230 280473609 795074407 126940750 378557290 238687443 655276511 36718007 564229335 522537845 600192283 941412458 269233855 665836831 781600470 714036281 302344370 461977836 982306728 763983192 734101017 816713645 139374175 567004719 96064809 556348651 672083654 865257716 925785680 13080164 436907477 779354190 113932729 340244606 532709567 81638255 306935561 343974460 378011068 91594282 558914817 82100767 846450122 955898116 605140140 321695579 843339744 405571550 304247490 541349849 918777390 364786145 285025747 166838081 714240054 334856922 53007712 108799132 927830603 838888029 560595524 903811248 180040630 717560880 791190401 478645710 181667894 798379967 152844566 874968398 632486269 880660561 690104960 740020134 318698107 745519655 545398388 468562161 661684510 186730122 560364596 450452150 177421197 176939518 249932400 884354931 647743526 222853163 608198365 731923991 191283545 121540339 787634327 130406186 609677780 843027288 851853509 391775721 624977899 670832103 446901164 1449157 903644376 396712488 936587454 896167821 294617550 251251635 977604421 425012973 701409065 585318440 887849431 427474039 742384061 253643302 743062770 829205391 545831274 389278630 967530012 468350138 998992476 995441800 691219306 932502274 349575837 670543646 221331477 48874018 216421489 162162965 35105642 276075378 615120605 840705558 130363707 747699542 100679066 495589668 185325928 886775437 476103915 956670371 187767431 234538173 218210225 669124744 614116423 334756833 152313354 520661330 745871551 210396883 483762430 295629077 609492197 896112674 581785192 793808662 586956582 408044417 543940255 744409536 80238864 370807323 502728040 364689057 282726179 134827798 630318582 992555266 671851504 719743996 913214000 863236377 164898319 414858278 484650363 711404523 817996871 517009326 213051712 882077192 397077556 779896735 141044701 443837591 27423484 30990498 711649209 987906845 791322745 856032225 341858908 28869483 493333726 274159212 479128082 482989370 244074171 453427657 930551084 149700624 691049084 556811005 119232546 447290810 324748525 4038596 24515815 112108761 207566835 212747510 587439134 527307471 944168106 27346422 425913973 646253536 215594315 155104360 15627974 456653334 446076176 67512402 603207602 570115803 472311167 276333630 282711482 815353894 751385318 905649479 450172325 181388590 379381571 989319621 552444619 258467291 237579516 612656858 586862004 50957489 754031320 784870766 818159917 951667791 105866661 353942183 919749836 447572639 874433536 396075000 576311537 692057006 180513690 411509746 699398552 992720659 432845277 536208553 788411764 433503312 183298596 634780477 171339999 61379429 145783731 211015285 616414645 616201748 91648786 742628271 789769083 48818240 424926780 439848171 414302926 190673168 524772893 728089248 936630747 11508793 459516450 639311268 955382557 580324957 808755499 333921508 952199726 498506692 883444359 24091206 127400324 418105731 183274437 640030011 588111609 292049425 641463378 927250860 420172207 849376722 631093219 571552201 493831710 412921428 195030872 963533737 659092896 30083738 206298775 533624161 709350638 283932216 768684156 67068210 67503691 721805869 390687219 110539178 970449436 188905062 946435100 808952848 963974554 786501802 713598176 477148018 546467456 144746288 244189857 673281386 286751095 102467584 649417336 979745548 227449957 218803505 708898860 964334654 589445113 660775444 304456028 262422548 243985003 162218104 630507883 213502756 128655553 95859432 598464435 268054469 9742744 6912513 293422444 117741435 76265548 778429147 294576347 718168974 878398253 643701978 478444432 818739000 260924638 756853215 768836742 394866631 955664800 579124289 11987011 980307018 831850238 609043000 328784979 763744223 989663877 34226538 645948789 725024466 312817493 91441539 54023347 42551940 202229643 763924935 168780516 469967166 178239921 906086093 829786514 479951103 237616331 684573175 164369136 702392096 200192221 144860348 67758202 126681022 189319664 123761609 554805519 198199169 909337166 690052395 261941388 39102215 896828327 270686304 584702523 52638433 967711474 890800246 685785542 754299475 640659205 983568483 901759121 405410419 960935849 245295989 283971602 512079268 698289029 225332212 944268270 53326831 464554926 7650573 96975658 672875009 451868626 2471262 143078642 854099804 993560235 167667617 879070315 822221416 280689343 894336071 213519609 463878613 918644908 624787466 506173990 165087184 886267867 778717466 300038967 585292972 570155709 839882240 58440472 639229864 110666871 674858339 361486261 882056622 510050092 52955341 164472636 538083974 259038151 596403698 159235034 704404987 742018936 108114922 813567134 842522151 799514003 967507947 868477905 767216523 691118317 82226817 562117942 78652555 691324346 799029307 319599072 45921097 229525030 956409910 122885713 243868234 179791760 160334279 842971209 510452278 610331402 370457567 227787621 176844023 334731496 254621876 105459904 507490336 246555402 528699717 292324654 915325836 62407287 468878324 511079925 877389306 729258410 239365860 94928797 217580163 43332051 571383641 644116305 468023267 834810223 656826457 963885257 82784362 211179598 614092749 248527710 79574911 865209592 903120008 894860740 334113204 29043038 137411324 656584242 355167887 976890832 153502681 119557833 796919413 57038665 96146605 447620024 958242047 129421646 638971410 819245758 298499785 922795201 646578629 136898836 154077212 425009876 84795363 459340776 32466541 899970977 312649059 69978532 464927952 357263125 756136442 252326223 906174699 285996087 86820674 747845588 817538218 958615438 87436293 540058442 303979154 775143122 188160555 389282576 147744173 609295584 467173295 603660146 570009653 827014768 713846763 36025478 451042757 236729362 4100855 453992690 672996491 316833803 724152628 735879426 796544048 785027587 567695029 852881349 968146567 128190367 360136481 30384601 539984849 918446139 547247943 721206182 743769983 390767369 524495270 300941568 166758154 972860170 54632384 860579153 94423952 366161993 989475167 519567870 594039756 641760530 475459019 376254854 534035573 7025333 792699159 188578123 966623331 765353061 22719974 91014780 941318232 399287454 303383080 640040697 550916821 865943096 661882914 799467744 1747208 573632699 531054547 910304931 933721616 284033593 987010213 436511220 880519506 79851860 402248337 943359812 989072612 137845194 136865889 681401217 442076945 54192576 427487197 460153039 142266983 445076197 283954512 928130434 516068913 966626054 13034657 222959499 218675688 315790769 382671167 634411618 130861379 157898525 511771808 439375148 819393871 494960507 542108657 327416067 120738364 490113760 69949273 452863185 632529814 598793016 225093500 375322563 392667331 899637964 751500618 805588290 931788119 497467513 682585857 595343154 251760763 663629702 27290846 140848827 367053854 489130269 953538257 725298899 483430682 91094017 48613204 51582226 438020870 316123369 490331621 711225499 698094740 963285359 120016250 344546060 94111580 937478049 198750102 233266719 766156992 875336811 420982535 515572449 302317058 60454622 771944646 771026749 819675654 205157027 744612562 471090858 750378567 93055568 302567511 744319063 138051604 680072354 87430694 273918940 214901584 593612021 229682887 562291686 465415900 74578910 950434070 596245598 757932355 866552097 848571945 167775231 25070945 813431319 207864906 794336428 820951634 56253010 126999617 315131556 832758080 589114060 357569511 137758327 159943450 227558466 222780987 511681846 16025392 222790465 299741531 507459817 449088412 268732729 477244483 830423807 788179243 72751807 729108255 589979910 339915211 165840954 881272167 369055786 856907488 709202751 432683859 366242277 972227148 809640692 406227654 176142436 724697938 430913442 717036699 441075876 478136472 16152784 341095751 765528853 301020935 708920085 275878621 95472956 743854825 302756054 633669049 174674191 354549658 633281331 757443131 268873911 478340424 878370132 989250990 863654095 585642456 198729716 300334134 350182169 5965962 609839647 472880531 179878609 968808855 872694160 823490933 899176455 565387154 675333361 729738260 920073913 74925084 121613249 356337280 989578118 172435401 155861834 277362988 48660040 174253319 894075460 308727415 726425721 201293753 490829888 848579027 901912469 299828975 861727785 196858600 905916951 505534770 797008785 582459657 756416097 593904993 330899591 540034334 509006228 11423568 444445629 183205348 842377109 863129608 72942590 988954466 757145865 190994874 134985652 816667988 131656832 226678069 409238914 210976286 938836097 317607508 124137879 967306957 476055093 153008819 547733595 594474272 75613177 982859487 76811794 290764331 818018308 152963786 567001373 12896984 146946085 281454115 671911927 282323928 739579810 992663833 904480150 768707168 464841456 631715360 453595817 716310471 906786012 956079248 893670966 877461156 296168812 876737324 802902455 696451486 760545010 821131002 628240936 190263278 437911793 879380264 91858308 642879964 759836446 229922809 700658782 40947609 405922903 117399600 652520376 2745762 643378356 618024531 226804907 310217397 511577784 95622677 454654046 974676052 264450000 481517810 734754934 699933208 363566334 912578936 14909880 899733978 739178839 972700844 639315990 875766595 88729442 542609364 704512363 158297877 319189841 951370920 944931555 302270438 41687777 12752744 793711534 179753569 949409681 802726712 102223619 368129974 127643967 476498186 186672758 823454253 25333559 411709558 483047837 70956615 854845290 739833650 487084087 600388210 283188580 369743325 950914367 200295319 388741980 617010839 331564884 901784043 971790481 981038605 448137744 973099846 185098547 668461144 464584682 736825892 521240315 236699463 191364908 617849834 252544053 15391917 429442383 240707934 658945068 728644303 782823946 967168502 780992534 229751080 12618534 395439815 238885149 498432797 852484237 959857916 888384380 846826847 678725995 596900758 886875712 574655968 764351175 693806445 303581565 619862516 926620271 552480899 633079682 995700813 953578564 788272165 360850695 197755064 164732862 583523586 664690445 682019317 489931318 23963872 462155357 206246461 569763344 477223365 252859381 981294831 903514509 954436771 899730737 349828923 326175723 792644763 138129706 147454460 110432614 682185687 4225291 367986596 347896195 344943926 35461635 964465457 137210616 429116011 240896468 250817967 105427752 419299573 471481934 498916995 470008326 325640814 591382127 548793920 348992942 885840553 342410960 333769639 536230697 390847776 575343058 669125434 802032395 356078504 746152538 453818906 275055681 864954073 400911092 708187979 828628854 452791535 922298403 570940734 248044404 350046692 885986928 266342106 304441242 725735812 638260720 513975963 809688657 837110992 808240812 101719455 398055582 353802268 448426698 611216065 870293037 995973274 533067287 297587712 294469864 986346673 201760118 893960263 147607014 42039795 615675348 373617380 493755492 113951386 289227256 100790819 147487931 125049009 194360520 387111162 514715246 136983500 872897983 257427080 486112919 764500197 370064586 895601393 953996731 567111543 218766214 345817521 512917397 538282717 352233463 133068934 965635837 38046750 504488361 246288087 50701335 658633235 805158455 283725593 822856629 391854344 853321548 807546296 423544928 907421889 488426738 2283696 362415147 17843738 407794991 412926075 267988443 605877139 146926110 676120656 67110786 443634890 505560434 564936941 772549041 751242287 12285868 35998773 275398326 679656688 823442141 24858311 455553010 142348733 362596402 735074600 894121162 484637634 955721583 885910731 645847596 863471276 325811384 696711299 614250543 117813930 160713013 619738211 716815282 259232189 476076081 183925808 430776938 22694251 106869208 394417363 761477334 270835926 312793972 320889594 491887545 407952195 354942336 440601981 352085894 990142313 831330847 720855121 914400177 390203170 692584961 445850020 687830526 82426535 292787621 562737072 563464056 735656247 271058989 229771257 915455262 111220947 310891368 682508194 880868899 558956313 451255784 544066362 475871636 921636292 6385716 637849600 179617271 770138943 775772097 734291354 814265049 124297738 614246826 307456549 513907429 792772919 734557583 604722299 555386731 816027149 913785502 401928499 955884191 123722977 614801785 25960434 738406554 893258640 360996564 439853924 321244544 353933145 410488120 83823361 44316984 961085755 971703727 247600352 724024881 868602610 570580153 27974496 676007374 991927096 508725657 26205239 861755544 143754058 754126760 474711157 292410322 833043305 718018395 553384127 290749770 358527298 562006679 550173696 337697460 464139095 873614893 520596337 537142051 168090633 931852006 244794285 128799870 610625845 204427999 886995892 862069439 411966353 491705698 603877010 756388194 875339277 441760820 215466630 544060127 627797791 286303514 394805346 79119390 925995791 202458999 194705464 659505750 523250241 747177727 860835875 927613898 935420402 330305336 538508526 709728771 175670868 798085281 431522956 692405973 624221889 91678765 451055263 360124230 651555036 918134370 328019568 821645584 665437086 542561631 130074724 808710621 775447359 628320698 252119471 992492269 580388267 233535407 844687034 529126108 368710139 11110001 627458865 771526696 218905269 296446196 802608281 850375134 724584102 597461707 349137486 91556295 506323921 172017374 613112877 810209426 461324123 136675119 742854697 737069773 292069577 78889371 86110572 614527032 785485292 720122254 537593870 886057535 688116234 693774556 169725646 213430167 470716052 282614266 463384963 394553195 915512633 976677937 981738050 45700914 833991099 321028582 677351143 953930955 277091434 611877700 577021109 311052624 324666533 162880702 343095864 876833371 721572896 481471053 466284251 669548635 165601731 263733920 237971577 679249200 555417159 435498530 200188879 970296628 480033868 11600587 823709433 959526211 870654904 183114069 178486384 466910817 171734162 328561367 317230836 141761583 990243060 646786438 188658562 386731493 502911277 321101056 258802236 996719068 100106734 762624582 401506781 298402201 550059265 664905780 728177295 147524355 166253469 220461659 505082079 710266030 297523105 527156641 117425744 974133886 503264737 506805649 408901252 716472480 463375079 435322940 372155256 373827497 58333181 908618938 892424563 253217011 96609497 369847154 321561586 929977978 601992086 779521975 111318957 15288556 661821429 882302296 233178020 946351799 813321435 124765679 587832664 2251467 808290900 189015817 140168005 712388027 935990328 845435930 605199189 275786045 142737729 393768123 51222880 330474174 594676231 362335308 916985130 124627690 846638113 263703386 358078875 107115826 409193326 409679793 833915172 718820918 868773548 801382432 491405117 754582166 983943024 950384270 687766173 418840536 276438157 765055518 332112259 383778602 678302766 614038290 137652591 709863312 822707135 780031166 36750464 94307393 441882875 224702598 662200083 576995344 67534465 446004788 151831860 983489023 223863027 289325731 771077672 912963906 971821265 189882188 645915927 739026288 544388718 300298443 555707124 722217301 725282657 678915655 172887633 908946127 864085277 576041147 305109889 76519818 976921089 380433382 387946920 839378052 144300020 385261525 213183910 246231583 861115021 282704373 691641034 801377342 932647219 793489691 213385146 707783196 558366038 52426538 557337421 802633008 504118812 15886585 238674603 376583909 686527870 663926018 951855144 128190214 793490277 216504685 469612426 519314614 667869460 664489920 778972057 267969826 854159252 252716457 371565087 117792989 24785637 773708491 717785884 323157510 628843756 406174564 413133878 290585455 335584344 189170223 851505988 382223353 734366035 241380711 818908029 604500329 764686672 577385863 571024966 500452421 235125678 323362335 474656206 701679816 788626551 372416231 458192306 182491316 466100830 222997016 988470318 801240628 486009082 829333196 964264685 875497399 941186803 506618270 206989766 59680708 462587011 547516087 595361400 931256240 216015684 713565953 239319628 763808892 770799273 954589824 102636572 846287444 633150335 74694958 133506788 297308612 472404858 486395218 772351590 990525338 981345458 811572865 825631772 97399540 391566335 616954596 146475015 826647197 19358584 670162659 645664938 501825236 135385142 208803004 289747908 140596678 716684368 521256057 762821395 501144487 921403060 97268108 356008202 721903924 927172209 591377744 955013848 790625752 163872971 287867790 410568507 281873106 653783284 273311790 418996010 778221741 759097503 797421318 133143311 550190198 632944859 173352101 303153231 845682180 699958219 400346545 119871210 893471735 971953116 754224589 616896359 309036307 262965931 165703306 487207755 108313769 837814623 393730396 935381102 413005454 48996251 119398310 532952228 464633525 758054170 174138682 229696219 960013080 604580329 977716096 397226885 173486380 439772837 557658640 113137646 671432721 7660698 474050808 659595508 30947759 876000564 608606742 172319382 367421000 96835867 840950758 442737984 34839700 723289987 191703051 58135899 98106747 622224700 672896116 218685320 573590432 554935492 448651276 114490401 682205020 659512583 472989860 558670632 841172445 576026676 864806176 306374223 328900438 290796451 676012979 658502578 666168495 233143764 962055507 819527563 823224243 317444857 210961189 999568429 967398009 52121763 541369193 903281505 271331697 497905955 190163091 528766807 166592223 696122951 951254151 843575859 883774827 426132544 70187342 615064261 275552827 355440303 965624730 492962496 955590433 288125354 934757589 619077582 970480008 142289996 629467098 436555385 826618313 940384800 347779988 226809990 33027959 952931550 926862678 6729424 408780484 950869708 207679902 549275400 152707102 77198255 993605485 547132544 47459524 516498711 677708216 45311285 314730215 93495472 210000361 443529951 954465818 800476674 146046878 370442589 456613338 368552665 134621473 124726976 557629750 554105938 463230318 413846388 878714848 444426002 835257123 543570105 934877902 492917283 308615983 909927214 266715967 160555348 815466987 610835462 227105082 106372883 163789838 719284036 942593230 650052012 567119879 542010085 328872772 901386970 104794095 414495883 831755468 813122046 803164689 211389797 729585375 502258070 738050414 66783191 946774572 149736086 661204647 145893998 708407923 794482434 215909783 902170296 85390978 579150455 792942431 342099395 768110499 443559787 268413118 549711363 925130339 658310999 777787498 404565710 152617863 761369105 608962442 296545602 198177423 847281391 714380186 141814939 663813358 268414800 739521107 68608971 754995616 364891130 356314793 367925783 881510769 780480819 789117747 671674133 248092258 698404069 45363774 293672601 277114759 971970657 150699068 824787339 653711496 977052669 643764669 791997689 580904290 208189219 215663595 645315161 526466573 180714356 955226421 988147253 502559828 11162429 22183275 939065202 33642579 423557727 840621952 981230514 322799586 617822255 53256323 845276297 304567236 478895249 51048417 934432869 705606835 117258626 44891802 71530590 619796509 64547226 837513245 357499861 198259214 55899253 471545313 284783763 149039666 33130348 410989910 720227421 962328570 789069243 45548075 963450923 663646640 137840322 472326235 395064404 81916102 740747357 276146779 545256779 253132454 653256693 818334207 983359823 780846758 770253066 766116689 965114941 931985783 951554531 393835905 322163318 524425325 708700923 402160925 93297830 458773216 317862691 193899768 855032626 56884106 80771921 469571741 402507256 98251340 124747678 280398797 349640980 823071161 131441218 428969181 859977441 921202551 221213920 96167882 800774610 606676474 155489470 288518813 470542393 121457121 9002694 904906008 110347702 854673394 782440866 892022714 46044099 135441570 103677674 267552402 59885793 562932971 534712837 56059899 211068232 82919912 318266446 721054069 673291525 915167448 365030205 564352905 80147383 101227553 941413238 833556669 640421097 55484625 591389609 615986943 423205933 649799087 221482077 61852800 141155185 279188599 24448911 508945691 453225473 342124463 265661644 635339230 295347748 29470898 261196093 288354049 933039543 842958980 542610285 351336229 799112093 140583421 382729489 735779301 105939330 229826813 232270294 53257888 268076412 89398729 90740100 356295992 779016910 592743860 15170594 604010984 95953534 469697503 102258425 286722388 696294186 162494644 405689772 752311102 10722266 194946898 611540355 162025784 164139497 518202388 189206442 109051248 574503922 89514902 244070196 451006633 297088377 77588361 263160394 419563271 747399805 230499411 235988725 148421930 362404153 784612610 598260613 265724545 911024037 505511200 138331409 683706882 418124650 291115644 220825995 600515190 897302363 200566861 592418224 888453174 176967947 721965980 580305998 329590100 612581929 56165936 423355709 802067010 26508325 596607706 222839688 138601582 610472463 586097939 862052654 499082901 481701893 950723990 165920069 46836293 942297352 179414512 361979502 949350005 783469577 574403815 164171554 857051701 595289759 849923094 239034400 400776083 558062381 387929761 869775674 745433556 790795850 22638892 569767295 475834619 817678694 435971363 89917609 220292631 926138028 413265788 214495778 935568645 766864935 87884347 598089312 442625472 994051754 376222112 249016907 499056140 865851363 610417732 402502438 430124418 371380040 335768744 138533712 592349297 601985919 234510699 473082487 522164294 568238213 999613128 330957354 924075194 192380080 960243725 938552318 21934143 998102690 99474966 482677599 575965854 660800742 987162603 446287577 500728677 751604831 366219334 244740773 502406107 215853025 510917661 898813241 987744153 400669117 800769802 514073570 809773778 371260121 265596019 697078548 652561567 538753786 1023372 724012558 415927830 893768799 600658083 589795625 922645887 46419673 737658827 471214855 763767361 333805961 969402392 309436506 719449356 573210474 754317137 284014224 414713664 636751387 727197999 634997955 905157408 766872672 119414689 164729272 965884305 452848050 631691581 327200490 891591322 683428563 412873526 972948281 897902101 22530809 38132691 638470495 318900437 213573363 147571006 355779532 988295163 187129797 64669300 376900137 406559711 732996849 84508175 625967306 878504796 940262024 115213662 762542538 952827702 636279763 979104508 296025017 518344138 637141399 943058946 642785774 331591679 856736584 113402609 555322071 845591200 730350514 412049646 586576311 973803635 305491529 776319097 117854894 291037913 892304420 533878760 59688093 125935169 481303036 487302067 64055311 182913037 565429062 559928652 866149157 207216571 938114001 536585905 541054501 921199617 261613898 596145339 258058346 917396068 101876162 813920943 484296126 870550512 659564661 258950594 159588596 12072525 542657583 588316841 396948967 190166211 837740455 615796204 273111787 919883112 247045176 270864702 518671901 414085803 732817260 425597588 457487068 869590599 132943666 879550071 752116260 407739102 981658642 532093769 784882838 364039246 468246987 994021574 120066652 533252408 148555192 966686758 311040422 172430297 425997792 636679027 579367587 370616181 495879806 210621305 327966970 603786096 434362576 519485086 451543689 26413572 181328213 128776080 45199372 714627841 390625702 664216983 699571038 85184489 122748465 734553311 997830235 565519136 621348700 908582307 114845513 777322708 19410033 510632440 450504972 732021080 776915412 956760533 754238480 564136363 324040460 985494717 596942289 188561364 555300988 443624015 775069339 505945342 273997406 245937115 836214552 509483018 950070773 83133376 113070806 514843266 524922368 985054206 704976923 52746522 140896773 629599167 523580287 631476128 352349452 892736639 947784343 971557707 654122373 177485658 627885925 376425642 983062650 79756487 398457006 12941259 451633706 796251123 580616945 772445895 286035336 476105582 812946296 87864899 980610462 961175270 909137124 580978468 478290975 777584818 834101683 678460253 26740017 746445987 758931065 694329845 962638984 684570064 340848501 68798960 117890878 531440974 424542297 873547794 755283698 509580599 837936423 959262546 472015221 94072510 477236779 879589785 962343137 939323287 181297281 89825437 309648416 461212994 832729320 962612882 413743583 87546089 247604931 708310148 129600166 318056188 946497626 957130203 146324842 638232485 594529562 489612279 724250216 774581760 639583344 829040269 868823771 890544046 245480634 60917136 219685076 599978255 429992170 725880117 589782536 593773538 661169923 59508996 344232074 165183640 586944471 963438626 616843455 705733090 312762375 275327440 344473336 174803321 624291736 893003935 809929521 507424060 961384955 451481027 690750942 836217088 285010762 209941133 309971311 156438939 571768505 440529277 482793091 857276112 316355130 105918953 531612737 654931623 994849584 576938717 321535829 8935653 199672684 875369054 161716748 576407447 16468838 961809668 807427704 745833811 662067913 448307446 443051559 372321018 11933850 604792865 268511949 932516621 479560254 56564416 726085666 416835244 104381615 70219292 464836050 170685845 442803564 684979352 617963148 99113334 214478602 106773854 121411313 102393682 295071588 445040178 869737659 92933715 504384750 522078588 275594406 954878079 536715863 153876535 121710474 149369801 16484304 508459059 67847145 143457311 356336712 443906215 787545292 350763362 797270132 909364250 443236012 227657375 999760024 746233339 65392926 915470332 651790373 625770334 701695630 668113795 682219002 848877661 826645355 599411633 715591103 507195360 300612699 158126532 734013173 237562448 520848268 458397522 101591995 775992672 275883401 96434427 701302381 186133880 475214062 974724356 18201486 636191642 665600562 719016203 302882519 795016395 911147462 627462028 472871345 140488387 964799241 783687401 136956207 848878013 497728237 386137821 361954547 25170365 536451923 189069253 499133222 846059367 863123896 2959871 918542424 433026041 463525245 683641698 535089238 505665702 157390189 69496734 605770032 826516433 234564922 373896028 907184104 901635870 694205188 507258187 618749562 186552237 284942680 871332327 135735872 24067313 145198103 522591833 356099431 666894810 867755153 77860838 822410677 19710753 636638504 60958942 610542224 995563904 392615029 21715055 806103839 60729825 604444684 235405257 23516203 241043976 774464593 831876638 631149995 461790506 446763460 242294372 793528087 660655210 168346152 313915442 876627044 125489760 685596113 845568191 889622118 49066399 992339285 352069304 848876521 880694134 914726376 660866192 644287266 641816340 584869478 882789044 924893744 230697816 797131629 943076455 646580714 376057836 803855772 160054520 113536557 829903684 51705811 794298980 470303145 22855743 634865208 464086677 82050821 318640732 682953891 307412016 57238987 887883193 225905044 904597632 848326293 579314024 522861205 112426853 902035326 482393539 686526807 908296560 210655896 495041128 214666023 188415601 179029786 61841044 173824284 78685769 675027827 152106796 194473348 538796462 623146658 790737653 990719003 543432066 423138779 529990546 750905688 809402570 445941517 977535374 498742624 197300360 522449584 98809467 927530097 259600655 124027158 148545549 717767071 635104840 673937663 930328895 566298185 741544927 925689669 363025158 111579832 596481823 573440201 957217580 549980484 128871192 616353490 480174945 159785284 610664853 962599174 141246371 260357528 455111068 748541637 545314033 526977759 327392027 838658532 799062683 105622183 947811236 637716570 281553631 658110859 700852507 659867696 799632158 562436778 612600823 680492923 47054108 72375645 16727450 687946330 947709227 209570615 557037290 285840084 177131275 255317169 740930844 208878762 381803424 611333834 14621551 543671470 874848635 465220464 926567917 391298232 446400810 852582531 397181261 769686211 446484021 964849224 222547119 511659193 945120908 745401861 26412635 439233665 832802267 333773954 372412278 627538216 38503017 372282782 980084295 250064876 879912576 126667521 572823422 483961312 962818592 377794291 830182806 279363498 269076122 324478601 564954927 200271817 399120969 345705604 350257043 344099262 576879512 942619127 183571757 804835013 883176393 329572895 369753747 525212115 598160296 925205451 985926867 444202313 529570097 117420413 751205203 788779324 437132372 367091872 233642386 479410005 174865591 851817209 307356974 534274031 849865906 928710868 443309571 415378911 143735610 286707600 745340973 756555965 734716801 470773681 839314183 172098590 465656070 72000184 146189187 126327320 907617982 143417948 551260192 672795258 895620373 578937162 801110077 532923488 238183049 116014801 887185382 372625628 125947423 263155474 225089236 526590360 54413260 3915728 691334009 832045654 896389460 506335359 76673038 480743942 718867585 574457716 541685550 827847926 143445739 667299399 733439803 944761161 801394786 660767659 578463942 426730267 758667445 71735948 258183681 984693647 580749432 558636025 811304247 808863895 48047468 19282087 532826940 223297593 207582771 502941295 440662153 377158450 776140451 76889055 305641290 271548279 417612579 994849418 864367007 605170677 727006304 656544560 345224151 807270785 413045623 856603548 389170149 90023822 941766437 138714750 196682331 249300252 28661943 285625119 542159406 838927844 299312175 577654216 824177741 653742497 497500913 477040608 521603004 714353947 225120470 831943525 339145782 167410897 744243863 964962296 40638089 237050657 800302119 861213083 707889845 889378174 255451319 466805482 669658100 102769125 585490437 439498461 124764144 713220523 810886973 632102115 317152175 96678391 806960889 574065616 887381719 906353295 543888380 71576414 621990543 19272132 706162618 66153166 512192456 555890846 257054776 8458297 98736563 84938427 19933030 738176469 383371873 582062956 890132377 734954660 451939596 689211136 194882611 85355113 786456165 303186689 941468281 351840273 954663597 260066513 105277369 468756878 588330839 89000836 957804916 485981989 718708793 348694165 208182444 882809259 468595496 610982809 395151231 430085700 287723647 704008759 7842835 898656765 376746727 514262702 153463429 840428797 817025616 975051420 88789568 104352670 422906346 814378513 282426617 364340956 457153256 70734951 301250021 965198660 471335006 18799430 637919935 380912151 779273741 322509053 883388598 370492991 123117323 636202312 197524140 673335106 216163823 743098426 245393126 868178339 581561506 871135982 360445517 787143761 247350467 621919288 100588243 502021965 711076075 81500948 74403594 894669684 732174114 695387817 855593381 20935453 539668935 248752032 348642394 118492973 233200448 191622220 459656362 704584421 413371466 427824519 321262247 858641860 735438070 737883530 272947298 303518525 785632691 433259635 461073252 712162212 418303007 367865164 900475762 138892657 488086216 718001646 946947994 365251159 647570499 555092415 295988879 677824757 586314065 3111431 40817001 830028281 5104664 346953921 197419830 472907692 494728723 614505245 652744868 948990539 623252606 313217193 250462059 846296493 453642848 109959371 84987363 525118926 817529804 806814463 37184995 133323311 718391979 654919299 54394984 352374742 463652975 831168932 782760990 706104224 58253679 22178397 294370679 549931776 609035600 954239817 338281227 353857776 310436994 635007514 994452393 473298213 734223791 871293879 635549116 466848726 586065634 294294107 650703552 706897865 880116703 847149538 933166057 106247908 118463490 95240172 955409079 702578957 366635824 588092066 648632360 177784752 555968942 801586291 200493319 929515566 34324008 23217078 688617353 7414984 462168567 441496145 235852064 47978153 788925357 135125021 638938107 489460165 87523710 240254409 978611914 678723974 478338632 785493468 924928582 31710685 129149487 458001706 832360991 216776501 391295370 857035225 768169577 248739638 994911226 978835673 794060714 699267693 90616013 268768968 140349970 173018442 861949448 238070166 713874485 15338496 927318034 960575856 514499338 317735258 742162643 831665098 18216438 946890990 761041551 61532117 483420251 157971203 749577572 50470448 449076449 683264411 245345094 85978037 24279467 364780672 897997835 764741850 412565231 587853989 875943738 706919470 552333993 642526739 634385934 999700146 483518453 665379778 569114567 904593334 639881235 866766094 584332331 145821987 397236668 183475555 73507277 821859365 503625272 687419470 825713892 746849088 210991866 269348319 338494264 192251812 935084319 525654777 15339770 901362205 25064423 737637055 94408685 905140879 594377378 790031665 589189286 542245987 887433160 541829283 977599312 342720304 85708389 349061342 426447748 142821843 907286654 771172269 359029556 280986029 501076534 984131974 716551538 667058224 498058809 659045457 334431339 263146353 981920339 178465482 943885660 606056946 653961120 292858459 536057307 920423150 884764373 406972763 794391456 85962551 767038614 87533904 521762987 908404348 351548700 474739568 528009309 231706277 805188571 198647596 289777454 188479537 423931468 975034459 967402392 732310371 564964835 973056597 308903637 3937649 819371138 689624716 873219633 134261136 535081346 826958017 886767568 363171032 470673253 225678699 203804032 482999661 516204672 178733081 313458538 13566527 322446107 307800377 446681549 158737365 880207602 386306666 51486022 578419215 638494178 334507208 206092705 531813241 692638540 834520459 998333410 506843895 761230314 482082644 588728641 144854986 749419586 910767150 800179841 127215910 14158669 408422634 405337236 444579798 19810663 561989879 233047344 586320275 616516583 622063697 731755073 92393491 37191976 745332444 856547726 920650042 363537470 883809817 723001553 352195855 347462643 986194437 601577047 99556132 846628569 986860772 823009486 510691545 980195419 368079531 260203405 567583104 786294762 568777160 447100354 660170205 764751483 595825685 634860326 530520535 543446170 735357120 682014104 508319611 6239718 885107234 369062067 116426595 572291483 598327138 877573485 331208961 451471279 593481128 787999794 179829530 184235425 431558240 828666460 4129102 134403962 205924552 190028957 942644257 674094625 878724288 418858668 103674293 550259492 867084305 265513486 624820673 283255471 545803947 443986226 597891306 211029962 815359210 158381491 959889721 136068449 751626158 354897132 818347480 409201683 694548470 198794331 910618940 828841332 545673549 91911447 719308124 448968966 973163914 500314267 330601666 185543665 920376295 416504674 669908599 27074973 854749337 400885564 979771902 695563102 427695255 359143770 779262580 770709582 105128720 658152368 584963082 512855815 748444886 735779692 712909819 413988994 185596720 217019296 584933673 78118779 268901270 178428332 923514579 101922003 197210202 674729056 218041239 726811764 398255568 688349996 941899647 632809890 766480430 498278822 386286588 528986084 596657384 12574583 249746315 950857695 37309720 889239124 266074467 119703544 120894719 870644531 377230142 619346961 673713583 151713451 763719585 709851538 665257095 504906192 527690805 837843485 147909014 715185897 835747479 5757621 553844039 792783011 506734005 133776289 27930357 426156195 313809524 335169201 405030210 33431187 104302531 310496165 396372872 418185579 217542966 544482990 756753634 59576201 669272670 658046210 360469811 158931787 382412941 307975172 351622678 209223333 837651815 54041126 357996587 510307515 354471356 947041173 724038194 600064969 824864228 258539437 980232511 950436516 232625086 616347674 237739237 796212716 955947328 870611200 152241225 429940815 783029263 775458654 185551987 481077369 200116923 101944990 955597724 173918422 931728373 937485846 458847746 93709633 211288955 610567100 512418273 927257507 185415684 607061149 63791741 735210354 746615133 520067002 237842885 736853516 147286083 78716206 492386067 157393082 480669752 668310233 336471037 859618447 163556867 193538851 565035859 796620967 313447028 803262580 28748163 843954906 907826428 644425830 382170739 386450359 474297944 688742578 434791157 378864041 788004681 604528969 234450061 563349776 607595127 154382682 102597557 628073192 931569476 575449620 377097817 214348808 591201399 549414079 34599418 355261787 885421786 144177679 947794615 383738232 323133327 388521501 849251593 952057420 812938750 710240538 734273848 984265108 441981220 17523424 697122374 259860184 300666921 555520500 187370400 885011796 443244601 727770381 655194647 544914517 621975153 428292687 705441395 836153113 364914040 822999910 454386177 929047035 959190884 132263982 953587554 282744722 627481400 340324257 797943900 669361501 529508652 667296112 206592331 489687077 626673539 757077872 864187030 297371451 931426463 317992619 616293391 519846524 390764310 402683353 826625069 45167916 974732001 460493628 15522706 170236247 670058118 772762683 675785191 147786905 628878826 588803398 670866909 912875505 101128616 954505497 172121805 19904322 458405110 530902070 928352498 556006846 331747229 824323500 665904351 766630369 61761812 581350233 128729410 384536549 348589903 428564644 962216696 66685546 611998954 161893013 993643201 156533056 618984238 678801492 986134802 788319306 563312113 956895900 782787664 102733643 735189987 922517194 311245444 746710503 906794538 488893227 711555947 546877706 457598165 120175368 205396529 883280772 505809298 986916710 242275082 436672843 306514316 285494872 303002982 516251811 338652414 316993356 274614652 671753908 730028505 355804620 365133203 259408023 689860941 825358910 115174416 349362790 760128484 60485285 598872489 824962992 288419433 691625271 7404078 467272589 881216160 919943525 897858582 687844997 489700528 134514241 572410685 455490559 144152199 644638409 294057344 849332744 631093397 341114325 849793782 963884925 918210004 632509787 981509498 787530192 674908122 611388416 798872593 704849941 675554784 85584454 682646230 509445070 870170046 661113983 832074821 412676085 485975597 400991439 197773116 330858037 36263323 582615957 857444708 564478940 829946879 306257343 341182739 770979122 183176239 395208688 328426739 382749383 366482386 906656258 680485061 485913761 92559259 254442623 537047821 648484636 852685342 151660586 384402262 275736803 261934038 257852113 433606141 655327814 881945567 635964249 333352623 433006494 178370487 889007489 590072787 338847682 797345408 725378017 587039021 87555037 224827879 605432733 125930138 460124461 753642924 335837894 955335809 942481836 902376133 276332583 134353545 182012825 227586680 880656507 867984424 508411826 267470431 325861745 678864855 184496883 350127023 526890469 69365439 370745474 823381312 148598475 369520473 258315861 566895945 918484034 947496500 136708228 472130114 674151780 540261620 403301133 396265068 626307189 981678323 144241709 108167108 157083234 127965037 82279229 473491708 680475790 686565173 29623065 739897668 139683124 688802668 391093882 477009883 180864172 215015454 402228048 418667672 459358159 232301483 827508330 179143722 319030717 766997708 500004684 150770438 666227345 940556211 797102816 968816096 488520238 435946979 704450544 311427459 179696415 347064903 411480598 560155871 332274187 293306973 58813034 466978892 127762615 148039709 393343903 910335637 621248983 923717516 809211425 870344694 716991134 721704685 595382202 124136367 379195527 483826673 521060134 38058055 603703855 383938737 76077599 283583595 225145758 667786832 554698572 44544342 981176692 739776367 561402192 181669745 826616402 609887672 536290357 474415504 274768046 372891221 625600789 101985425 820991148 955139345 104158675 755941505 622918050 942043858 862636733 245028581 667979910 660261740 847775698 251076098 939963748 760773011 509935189 646389485 902524116 38477761 622932111 192030112 827875054 146820391 476649387 670251272 337105653 520595791 547249059 940812238 380327568 244881821 408298472 435303520 687438071 178516102 283064730 349016460 17831489 900318243 345736471 889829829 907834332 689712806 146813376 643769792 798210371 437154780 805372702 754899934 321408517 240812864 686520944 668293068 959063903 344800149 215416057 156367706 121945898 504780870 426338687 163016193 147936005 609510766 853838507 389617208 554530334 933430156 167682617 936400967 339883593 401030917 681555446 399476826 746138157 130043096 443220843 76435736 221272689 841861101 777722393 730954247 586625187 64755450 579274985 33241510 174845348 219366026 213205397 297415733 253834226 281278906 920731876 544121572 235119980 554835659 841428187 8261016 625406773 745465339 690347303 372984924 744267599 339852540 480821672 360918041 905336202 732004717 4031948 365940324 664999529 717582436 589710021 68800971 896159739 483818608 622341383 594467043 628355299 541675484 916251015 340198467 763712419 487769806 852750887 971776302 719591416 499351335 894037811 635640140 56817984 400404510 944124598 824918298 991571371 964350566 48694673 992444953 957141935 526097959 365158945 786102841 435328310 409323448 818267848 191310232 893459956 856144252 684851540 863890363 327512104 600921286 191912687 955302489 507157943 413234438 368482310 452595140 116899567 61590900 154555178 893802072 991185905 773440287 650119233 137047355 217276328 757101688 794657551 538983988 342812785 552014067 161667871 904225483 40130697 500050781 129876185 914469086 157067340 552859879 689174817 654177772 552244566 175297572 268943718 112936759 659670038 318014366 861708547 525199521 432741476 326750997 528847964 632191524 285946054 362663304 626581766 82460581 767135608 432296289 17451695 841010236 124021984 101708767 685700298 632919612 963599484 301981858 592497380 241255760 378970702 114654888 1126424 448107573 377714190 350778337 569526455 447515037 404937169 844644947 6148286 110788163 421666577 937799645 672286711 387380319 810868486 129433246 708614723 749504681 862517045 184554336 439124856 457736729 978276192 293431048 210711465 919192921 263336929 769983019 21211557 410828943 378640402 799219821 770704613 170551479 978328312 22937876 282237517 12219199 448518689 107976789 62086011 197375326 40838943 556780811 177414908 581464108 144918241 42134898 832045941 678709377 872578788 278439642 138749631 183640129 830803155 88318824 205981683 383883668 833627756 428589219 826823672 439064134 268199809 543823362 59045295 704014493 212354237 38206552 103845922 83880079 597714460 174867064 117188105 122268897 543568944 305194152 481046416 735759387 238780250 221090359 37753232 349282636 217706876 701810371 708528043 191780863 514878651 48782760 834240454 198460556 598099370 166204344 813860991 15556428 426485448 891138392 224696568 152668938 145303531 139021289 306429994 814948269 586158714 140507879 531753691 51821556 742389784 63480614 175775599 398439419 563923491 233120300 384139868 908464913 707792368 920021703 137422055 255667767 767071610 521618808 353313684 678962108 432011535 783898277 811942804 867180705 529172466 246807421 651180663 756518356 329056863 883499199 130595271 637950006 537357684 198100452 106771863 679838040 318938092 377649730 773365137 311069451 423138620 377820858 844852351 373802924 579495711 928914501 758280179 28583764 836469423 851928633 266834269 274936281 601999307 732247084 768485604 176325017 728998857 347242032 289520164 14990659 748202017 567046568 813064226 783725365 924220146 315320743 631712652 327850670 122441777 759491435 758035038 626388828 906135039 401126498 412138071 683628121 749050990 581376229 89956647 656541307 677258925 841583070 644466415 624285570 231361963 341105557 810817224 301831665 687349923 517143012 402188010 424021977 500488172 654581558 735445465 744746723 949251236 217085424 679205613 945222761 310333372 256994693 830532177 327594778 981500026 290578245 600213987 516405531 405189494 236380294 25247889 711796499 584182341 666504465 175486084 540596414 197882780 422602805 906748212 33710368 447760856 658346723 300026257 499515723 777795477 28311333 319094569 298949312 501734108 514663212 571382890 937548535 393855367 554409984 706726532 728599872 882053056 666327037 66931703 93950336 696864675 768654687 161813994 924429320 635613872 847160936 765662648 765458567 748620557 223760896 116881506 875835102 943829252 955852843 890246966 924913956 876964171 961025012 496308839 183530408 942161031 211720352 775144883 146799989 726812307 391567769 778647414 339751488 639949074 667440289 750173493 699567868 497141834 480128443 151149185 314293402 531333757 223716751 45591000 603479860 888293118 725720193 430319839 889087398 397084822 246901839 531134562 981411333 424124562 349907788 231987324 571280741 36066055 563736630 136281271 829765529 500898303 290360520 292158131 629718775 365474226 399945172 190050066 625601280 315377667 454324024 263886319 742991331 580826013 744679422 824578131 420182366 21115279 545849951 591342420 592397635 316007349 795241892 918843954 563578568 189895984 170822869 770544695 75897142 945125126 113150842 145784292 544707944 61505632 970926476 80802862 1553763 39619487 523618482 268626214 21757476 786135203 563759069 705208629 350833698 722317133 949875938 225442012 423907950 900162878 103759355 629275519 967983752 336318951 568922975 601563956 624952189 89411499 459092554 987649566 703035958 562282433 786014820 23239233 287347971 808134874 289363306 350762749 645146598 527264745 626368509 209663255 240588683 447661971 511478586 866956739 191307768 266951606 102164808 933168676 332662278 720845006 601741850 979696331 540261359 540245178 135689734 890147494 945826091 489464138 620263781 716582595 839109589 422679690 951251467 161175669 81272379 975481952 361316698 481847581 223293158 637878631 904291763 796938512 11323739 678273705 711098055 677275134 785789505 561948360 964669953 217095773 765393279 898337410 515513485 741489698 569294191 162057250 659077284 341892015 907989655 977717243 264269316 138824492 631826602 153991921 773711424 140364647 923695661 315568663 232347074 359254273 650516641 332368378 271211757 249269054 989620879 496173317 298550988 348592296 71817947 736090104 45893779 503231671 849327804 189011945 337374293 775502992 137930794 512858818 311058588 327029056 740723473 922168082 702806695 268060982 347077621 125293721 165352530 614996298 947011563 921244249 849094418 27626210 979845408 456478440 1403848 116305821 560591573 351631124 468069903 108006243 63350343 5870025 200285004 772388719 992172950 951926833 893614525 22454069 397744862 765879748 605456127 345646628 34618589 661382075 506322847 554287631 609287905 101724302 980355822 341240439 366550179 687760959 960756165 450463054 88917915 523807212 437924124 147355181 282272796 467975063 593482706 513476310 199795764 522448760 29738982 146551978 334713627 723064773 613660429 169954413 569722406 787952970 774644421 426064888 450660851 818218567 135205352 577892435 348854399 178075596 477271708 170808334 940929358 186733915 392062534 925085830 481823535 816311205 784316423 298239158 803154540 963038766 555304414 927787761 673771971 189448040 159953774 495210657 930117868 476747625 455665854 80111430 709106122 89219068 635659390 727235158 490596663 616707236 546190165 200594728 413642285 847919897 4133657 719297483 174588996 965501913 384669232 695325915 279814444 887675580 888694476 550143597 632812176 753750438 12800199 36118304 341758913 218056526 392313711 284154970 196734694 764821382 139708529 206801461 279766253 237185061 991995167 750828086 775083440 721225382 944568238 455866345 966805511 108066602 19709968 280984487 97603166 340214577 613158457 730598572 289410566 393849709 511803338 856049743 912429022 898192121 470607766 890779054 795260427 379272436 486418668 291719570 826174513 941350593 879013511 711590457 493768057 828962909 456821066 693621876 794273957 870031646 697531203 346917985 86283261 602606331 462990232 878683439 683783793 372297554 485825612 233828306 66681391 198901548 825096405 674442316 848222633 85546113 179097857 440923730 194177182 656570253 607195250 659029145 242482959 944602210 50735642 421780427 409773865 317540453 381709187 758744764 692251412 479226474 803270486 329252877 192146302 4629661 765406368 279644113 151582587 400772985 328880719 715145580 615044095 776725534 630273807 681530194 240020149 996181520 336883105 869109007 386012097 244594618 232511531 876197677 455993419 953684028 132723388 49366922 283835994 789563515 723264079 446261160 455146618 211146193 730869757 382355577 39377645 123212326 730458064 496894957 820251439 821902795 576500871 727537997 824425601 191221532 394823512 698608768 989779254 369857501 240104011 544368088 400272964 336536625 296353642 953061642 621717562 218168070 185925957 868147949 885824724 841826119 988951015 201873141 799652082 533529770 141783339 79091979 508204052 260747116 481447136 492507132 730445444 873240926 377973997 18738689 289417481 151621907 351879822 547895400 344639059 860200739 767856441 240500943 726197359 785284169 654965295 909739367 398295071 543847995 563348516 508817641 448452444 568486207 45787486 794421045 488064269 48195598 708007822 547292407 952272506 740866674 340701129 921030840 831614811 794534467 157058988 492155975 687803971 186810686 478825171 119737108 655887810 769009994 739949443 430650752 451982405 440968851 272815637 599348732 231564796 563844793 416470192 770257540 349613715 136080355 774993767 135005834 945842408 461176341 491551467 232749474 865576154 770681440 53119843 58478735 182394633 376531993 928831956 891177225 637634906 104782982 379906377 70221799 754083044 222473536 284658677 89954745 203659677 164472413 237565944 697977508 15292912 928641546 150055905 88385171 870507439 61498248 938254355 613081656 393127233 722485838 413535599 476067514 334499779 628319476 508548104 282778963 978857330 493872435 281168399 251737665 368750913 181983104 655688409 458700499 892393435 244830265 471184407 1476293 628730885 109157622 482265924 472605091 147222013 684668537 770822906 646871826 648103329 398090722 248134593 691448937 843480219 604521761 737492798 444887334 616363535 349859293 819152875 870267645 210667434 151248540 99359367 951270454 833079171 542397162 308978659 590051991 57461678 326612962 291977905 162988079 978742137 245290584 369585064 837889726 341665725 142968832 451971834 503968966 952111162 504473178 845132123 513503092 230445512 578327848 263197231 953942030 286030584 151557801 660328048 979480896 346979723 95906503 342834782 891456515 573231167 971460799 538907648 359469833 392090747 672221030 373480056 554225433 70364213 433502321 1646620 933842370 490449207 300624987 478163519 306810595 652413993 196201402 272216533 319132201 630842075 566682303 395126233 416766594 932132791 627740646 513099469 115212833 284113840 669649963 760256073 106219375 438012496 46699818 947639138 398443996 610279614 679092995 611823319 288037852 375460694 548507620 460801212 694913782 842295656 692148093 300869484 480224598 166211084 313168593 365244304 199114918 23301771 560268670 533275567 139905872 261351650 557678790 648189205 670624163 584758756 326894163 336355815 477655125 43324970 48557242 611013714 30820827 449750299 87095042 967374637 728755633 369358583 969243463 765331589 850026275 971578596 330522870 838308632 757417824 385028519 759421738 245851570 216119151 652456040 794044429 795220324 790121219 839599469 665609911 114534670 55891057 150296137 222630636 946206250 147238543 170985560 963186744 757053837 402257686 215599782 885738046 599310694 682043621 22006463 189249025 808583452 769368522 910833024 856705115 408063079 800608375 156855899 303894505 332567165 862746646 412030846 177453640 525289947 178225535 614542203 122228217 463364775 101183466 695422529 141936093 40116411 444102747 819699995 77680749 667029189 185008068 201558852 19845988 230317932 798843929 176497274 233798511 638464467 864682872 981511069 981151081 508289479 479832502 304578520 544753337 721167155 687038318 102680040 217637562 28849333 776677838 708111672 456452437 735601047 394595773 171758696 991037962 594929536 28179810 401881604 865683316 644052785 604888598 918592297 92145747 705399364 296606876 789741509 162070752 632885836 320598730 347752550 13953017 231910024 554868121 356019549 21728247 889432550 72665485 629813372 688164560 243321150 719815051 840746781 898286081 242214334 964973652 181666315 349386179 411464056 744622477 370052107 909922581 472794866 682370197 684568219 302048254 616929729 567451611 537591101 832888547 618984441 117874919 449956735 472361010 496701205 362936315 783530366 696819995 490350958 25092376 1506285 624170761 582727246 884052603 645305312 591621653 988789052 137757541 320279836 523063211 725097021 633041697 854514134 689666521 714420673 818125219 716968025 631466816 947244929 723947511 714320072 334519411 162173010 190153833 944071589 969873400 152259793 82712045 930023614 704877215 266249309 111294746 135029277 649776074 318978199 584058458 553020093 850191879 566627475 155915853 873083214 798374194 514107061 139051518 634758754 675235013 49239977 477895037 352562442 919950093 120704216 725730848 152973728 778551657 53890865 363883955 705428110 491808413 952908093 756278104 633253535 983094073 184279957 692319507 601737051 836363362 594994071 226782797 751912163 576264379 951600520 353909620 705312009 391928444 390991603 499813423 139184863 130585309 676019465 842907335 235334683 264596205 399935957 145636410 79836236 998401714 367486138 29377045 869870433 706104372 908446839 835503397 997875561 441575337 499900949 357091856 607864958 285148560 402273353 480518891 19488930 894650198 83998623 308026266 645861963 985263557 439810829 378696964 232174887 69842938 345320412 223566450 962516606 452814041 276041515 19894197 98470872 194872925 184559897 385431970 77600275 613285596 155845789 284187590 909376121 530942228 475418543 902689693 250021461 371569651 994178510 305223217 857031466 579765364 306046804 569345760 625045751 968333849 910015956 858393384 862514819 373198538 570503745 830345120 289909865 198109094 88198484 904797477 510655393 939033732 219686115 382182875 222806014 115816439 515867671 183222776 296487733 996844089 702434046 844117825 676099113 429853371 451184754 996578667 397043258 873775264 910279206 465176703 309304497 848182542 470644936 931727013 310739943 35104434 124348555 418689853 115740614 992347445 909872820 333451819 323548933 266503078 138197762 348674718 730032679 901382742 818780394 449959066 698320531 385309825 644352883 570395414 85619520 716412151 379869395 745160832 93768474 576803748 138727904 389879798 280806460 494621789 566663042 850497595 818702813 229448342 797536422 441596676 363026358 688916155 226276894 353572374 57918514 553796547 263838723 186593281 764624293 842386567 157793039 810632562 614097872 91845371 992499519 658973726 624485254 727531867 950649395 720173091 697575178 463519950 64594533 660346131 32884366 627924572 346652064 920341218 591889977 433129425 823048052 174352290 658437359 755373534 230675143 842259684 953555589 147756739 667301138 156363462 121771150 986027426 128307367 493185214 762154675 910043622 507650321 108575625 652135602 985107804 287227784 982027034 248494398 495351571 968191461 796132483 214181063 382435250 232946880 240383974 482605412 316051508 944329840 526714229 203676468 14756118 56683424 193491412 727762404 371706217 168728172 405699422 539865651 355185588 88993350 401233016 300326593 655180132 533324865 805287374 214195183 379872555 762339619 95605206 437161052 811689060 109845130 752156628 998471618 691243750 754095954 828504148 713211478 206719118 683704377 869524050 807718572 107423462 948950442 432535602 172532246 379291759 442955261 691346886 605628826 293563085 134922845 549005906 770096304 19644595 639576211 144491794 829448063 731982955 474200690 167991731 445554833 828682852 626349225 654459912 792979723 799596435 381704121 806906290 498919861 270466990 691402821 173002647 664083583 958070606 544324233 52196309 553348012 98562741 337502422 805358102 606497181 638829481 970569074 644214824 471175728 4459171 264651769 976361529 358169237 495259421 858442467 579078368 657390079 286559130 633844988 307837376 510427100 284179388 706884963 602802378 254195636 828798603 218031046 977308505 894273259 281868437 312053991 378235528 466865132 336369159 738907439 392843427 945102721 597386536 332579736 900808109 968806760 974836783 683427874 150687909 971991748 91475331 927879896 702231332 782535543 873062540 690784815 55019712 6166905 615821026 931869425 41627180 774672240 150764858 565934745 817662624 309426088 784726706 656976625 890677054 653984382 395136004 835481799 378360025 892973912 229428572 395503667 9610892 556796940 20442617 849093043 258600447 845084738 459820530 859519032 283466363 139211701 125217829 135404042 505475072 674167898 236926149 765376109 424231898 63949965 642109442 378406108 247741177 184835436 240986590 671940713 69139689 203061292 809928467 128479661 264917642 89995394 506241919 328035951 3851734 209929786 518725628 835748701 327930549 460238333 123410304 827901746 753514068 507838416 428385803 516474737 413109827 130627385 286566723 933134021 39589216 588536786 526079898 370551966 266962076 113056849 707161137 752546706 446198590 209982922 389541808 141815021 692786604 286521892 505444556 803546589 641463818 958054236 862190104 661248150 671656290 17799315 506168883 285321640 391032820 752393307 141862143 500669312 323967731 992311570 23897854 728926683 785101091 390819476 899174918 782453143 500702952 512494666 335785776 799647163 874819338 576713822 494078657 583048692 729360500 963296366 998746533 11151430 12996842 84961753 99026921 437626218 856396630 719194024 510360479 886709138 873821410 462056133 616902906 746341699 805539321 699669727 534342804 506023685 630082410 72899971 690225387 42596745 797877924 635878117 649735529 530723366 998953133 793681817 765730809 715339309 671228016 611242387 707061985 9295275 262904734 870721328 817176511 298771014 300744567 246584179 872468803 375245863 918025572 144091089 708705956 559721944 77213431 571245279 299976271 333484224 422336586 21724268 76888726 362533202 939279217 100527964 867146502 842391715 268928450 456825366 397533717 127404820 283685888 654608403 318449603 840278758 310447005 580719436 361184475 224333144 782569137 396915000 291565963 940904990 714672431 328792652 205697084 913222139 408595162 366245658 276815449 598901645 379292886 68673866 861950621 654716947 584821648 48057974 845145772 103992096 196334382 239978538 695449992 63475669 85879728 722751003 905896661 936431520 821298024 892354932 629627039 380003005 490929364 904558068 460507346 42154274 881601693 224254917 111640728 545428289 255710492 575402408 412484506 168166428 48268083 906345805 110498379 517561647 943480896 391846812 598173847 567373458 239251813 917568806 556897497 598936307 939976078 67157077 463470242 803481718 620142196 466068337 908320730 447038820 836518459 532907622 942857013 836809484 543293058 417720967 936327120 277634769 473367432 189566304 908242403 338091019 911113017 227316993 943646341 365537874 507628548 104944324 106806280 882673581 688592084 162408444 725645837 454337464 925478736 146440983 812601320 97820519 127839776 545572277 905399752 747741717 844895240 442655862 873799021 450936338 4446674 188460307 434748439 875899003 983388608 972512656 91249477 408826122 897660925 892089659 960048256 223432728 898506212 541679623 518621474 784972170 574248014 162735956 156405660 155741591 833125840 712502765 173200545 909845493 295970936 557488181 925373704 492074890 806049324 196255758 829368232 593919611 704313737 941851614 850777913 501473383 1151034 759394374 393232911 492144066 194453013 294929863 210265243 662545183 341785817 405321770 250574202 614239637 424595674 408307311 225933767 676296341 254582819 169868085 219373750 315153326 921726354 127687679 69151452 869224267 922969007 267353666 819695157 559916366 193691742 258723107 16646022 268313296 362836825 924678813 468304271 526431692 130997802 898953621 671694921 215790125 158864326 700367652 124502520 602520964 907879126 291503908 711130749 734761834 794789506 455106628 661315097 986094059 615387142 765881741 696881434 645371432 372483824 875919245 348650535 173829506 95461736 184727796 828322398 354082862 637046587 888154291 323803164 317806299 600709735 436855838 126932463 445701231 26150447 811614752 290638984 238468852 493138555 306952386 990629519 565134910 82474929 186139074 241163805 661216595 198240614 319474977 261063324 680840866 575405964 727039227 259493066 17486752 930636979 87567740 261445563 704824953 960338327 646189521 963670129 866012881 752799315 810042154 421032711 818169753 809244863 371877076 400734702 974604198 935378147 245654884 599066830 447671796 279714497 427773183 323820291 656388146 176681409 804741670 45094218 894541643 740563303 763568854 705146835 597546438 826305575 518609281 728804545 24817640 179209452 587926590 163205097 511524710 87911150 736894632 937928306 483019724 285749809 278750510 941379522 933868658 990977557 272109085 759869470 429917906 400065692 6803774 983945888 353016221 160353253 190222923 144365819 587129866 927909373 144846166 585535896 685163754 305079924 988091467 268170842 354713169 500496604 843014442 709747926 316514842 742757073 559662854 747947284 183204809 99665258 952252543 270193330 362172612 944649734 279931061 835472765 17946646 107249297 227850979 255194913 861767033 569265396 821857345 565496830 94377965 520026372 945691543 888169131 747603593 521835908 361565170 903981045 582785560 371073635 835072937 658242969 710863524 478975985 166025376 234217633 864663066 144933199 44748492 632064617 926031940 485773732 552334292 702812179 648894656 885639245 56985365 828464840 667083052 842029392 847908754 244001922 506597439 770045156 17789310 34478531 109364738 267101684 398032507 639747683 994781271 209707580 6748390 113678061 911555311 355326432 732127498 276978279 987183381 396777527 65076886 354701950 221562127 970051020 283014218 502970415 891382816 994107341 733714033 164973687 820343397 120730315 383657783 749126854 371865477 117724956 520439055 457317290 916087092 457987509 371994460 294374972 29541966 645663758 48695789 467668521 272466814 284341699 158129174 753647174 516550150 638948325 811171602 215248334 260351806 952822913 813027828 658266754 869905690 67727458 101491111 244464405 139197632 628732265 416807362 379030460 709632717 359538910 210739156 207150794 452325669 78386441 560316065 944893827 286057877 936852663 428135627 998435352 471236362 222405858 138962334 303215194 927064175 526446636 368367102 887794794 956559652 905968022 368199674 252819781 728423702 929227300 81958140 439848222 65317207 943680131 51390246 167755677 969902706 951999372 129322269 515223885 94718429 382107957 668561797 537509869 673075532 421254639 820930251 232873373 972744728 998226268 563230212 28309862 843001254 593707115 682198093 209954694 684724794 477254189 28813732 772962792 133921007 224497606 928029516 78015221 106043331 781856109 344920128 465090882 184294887 941907460 723219178 47715279 105061207 788303518 77257103 562200695 568974670 84075927 11372928 569334207 409520907 173232026 574456779 449378419 696659457 532453958 854213749 932525041 311210668 174577407 200981621 537016257 52109374 753663487 244929478 529270819 169019281 350256365 900679768 64643627 255127311 810161415 600581550 20132457 91107368 3849144 259039036 518436044 356449669 182805539 475806040 632898416 983612117 862476209 234204537 726950891 782881046 230259443 521981422 283774020 57899523 364646402 187850618 868419310 604722583 531705950 577402394 573028491 855340661 792801915 173701941 438378162 162856067 758510323 340548442 570650340 183284287 934292755 684283922 103930269 49773635 171166873 325267687 473984835 926667132 920353671 245178760 761710808 642312825 30322982 784265125 855017434 381885447 861550920 31547859 449648 219969476 866753301 547518184 46929709 50490436 190163435 923046088 825497421 51924357 945211084 304174173 135467080 458041718 361947055 753663934 581860156 186593090 378498955 937572831 404719163 506759861 188247817 322185093 937651409 334860103 471571352 993968696 90511239 186651669 426282893 904317318 867219387 675894310 706583999 275031716 940897290 158282664 275890452 674024639 483724657 569737195 547717963 678159205 296694213 963673288 350830799 743901106 432957041 958702928 271244722 103840536 837705159 874270175 810059689 403421768 992561768 89479392 27456992 840221747 49940230 408420969 175109907 374538296 220323952 874073862 246640285 27887000 473155573 169127760 223293696 950693031 386179704 158961035 649711822 220480195 341465836 114180037 459296470 138558645 750215526 132956011 395701743 569929904 656656756 312968477 579880463 948378771 898995890 498869121 637146883 585464845 832713765 490287061 208467944 389962189 438049207 435754951 26894444 440124082 888830921 267499335 29187343 510339575 600302286 680873302 822571169 756105312 259579531 414641190 515871331 899444130 617165408 301160918 403378741 604090577 633208737 112122073 924183517 772833726 675207645 546308810 505836646 879105720 174486475 9933035 883550573 451056494 268197810 938603475 98066964 69553263 353738786 74286610 912433950 251754379 197825287 182919408 152961031 938886229 135297402 895154769 622740323 273141535 873304858 389936334 629296059 740514531 164810027 192709431 950590616 743117617 536178835 235314814 636025314 91975542 111932089 750033648 968869520 391695642 795572420 350750973 956380977 526020587 546815479 714796229 173529651 247517481 397481901 323731973 496521933 605614438 430050903 258179379 601334631 549356482 382831636 992285184 268446707 21727734 234955810 916921121 222172108 665802044 378705734 644029267 78122916 657608384 353365686 358249895 529732546 428032313 215560788 688044144 983720414 743731356 528085608 983470941 289769984 311991081 23273656 717005673 588544122 658117688 30688004 672784698 917761334 371950391 761359459 317944972 93927184 823456470 115205670 315798274 735147643 970632237 996017705 269246817 618191301 105596535 607311850 764409253 619772853 535190165 881946215 883868690 376419132 814316706 805283478 848247600 167670152 927367017 134705482 988316924 207969883 473398574 376763135 846621997 484080062 845973863 463902741 206699330 219906647 973943629 563546191 722103160 15251878 533026166 17006745 675776304 758979821 253637798 516254606 344728929 654550959 523701225 483206605 762151124 235117050 938899729 623340339 844847898 123309349 436947984 805748973 384087932 463798472 121689213 327964179 727986819 950416908 99934986 788910212 438636382 373396440 431972876 72061110 936063893 631550403 774830757 317330726 489624953 156616849 224943415 153683163 943069440 864487507 92813987 26557426 296454605 642683184 710856213 201012066 415964985 618547718 248196398 625052305 338796325 649767191 758059361 862293505 991449067 330325454 838614919 141286457 261188978 510186279 367710450 8060078 753179313 482512449 304626754 342515098 469914864 528508787 367701891 509364474 75267887 856320436 152318548 283259635 35710668 53265254 630536173 313740429 589794951 897152216 887941341 678277625 255704221 973064296 815529075 914950679 710855916 273107555 824155235 453270008 465338093 165791921 151452549 532924047 128693022 996563253 897601196 172814925 311499864 667706254 43704346 24260632 735218262 494809673 3595304 595837854 875436902 153598555 847186218 373929935 52275117 209211780 723520518 416966248 629552895 695110125 507386550 903768685 528793556 583910191 152687629 552405048 831280386 428326500 118085310 645838088 287082659 128644067 23725361 145015205 638575686 282827519 428351027 163244447 731595445 442598908 90079219 421014168 41810031 382413692 107182777 417302251 555575141 50518148 189909264 148008267 194652967 150303577 180385133 826071920 818953298 502544984 249917770 4394352 411449239 564222119 201838564 412560734 721844822 396256640 383885040 730942234 973398970 361603808 182042934 496497378 699081771 189539785 617125298 203664676 167170182 39470816 85456407 295929162 159722574 789367903 595678769 480792977 961120912 303635396 203341677 878997503 157226616 529170321 837556892 155873742 950538873 338794451 182396887 537744419 955018871 721742827 241297459 517154401 863550403 348488069 243898111 220645404 7157702 520634219 837225353 662923946 716596449 262542638 495724050 395655407 388082201 46718026 640805442 153247242 181435346 404004319 850800737 903004049 913735920 781282939 334055610 921123665 675557833 577727725 83379567 326954747 442183969 519658082 194761331 414647172 861093666 651763884 227134707 727080284 641874057 927907249 746832526 273811295 896399258 258418491 342304413 80384263 395090946 57463800 499747921 473268351 396969741 284179820 500018860 636506708 528358361 361573244 254474528 692388768 677016831 176017267 145676927 145924161 389261439 317144584 929019898 966747028 580570760 302892766 986689963 652868488 317798632 266111488 207207956 535157895 523131233 883234982 556594809 154088371 278912656 200641315 596986927 383243868 925592703 598564563 968553473 972428423 778887979 916667626 206351450 839372786 471880686 190487240 886963058 355892374 388927404 151863591 442337747 505289894 84075091 160759187 724428922 761474689 595558968 117662175 565788277 867634029 910711813 536873094 388639174 126509656 392232357 772956297 523524713 284315980 696526675 830035328 215594577 872282211 273863049 28342165 855160934 785670874 844975036 235704836 21704931 329198397 400899059 119128315 912200069 586301974 842375136 530647375 713698822 594326986 317610828 946508439 56058532 189747064 909777566 93873002 136872598 790955552 300067768 612709459 720024647 202536472 736662497 476707572 466907421 411929627 606741339 419843284 948955479 891543321 851593388 965523350 549258955 185991824 933553769 884607188 172308089 863097869 942813685 848795877 451925766 134289014 169914241 790594599 146161941 350501464 89015453 976306220 592824084 670513347 31338794 860224318 435676132 512508475 402386258 762269515 412554669 942059198 628870529 710773266 313933219 457588070 574274571 352766779 416045338 497944980 247697382 463001975 175131044 630095819 757197428 715800215 34249369 130185381 768717290 798203707 46742903 238876218 737479242 649759600 878577157 553170032 83520261 379622926 618275234 700978562 564048860 599453278 537736545 195468544 459258480 659146246 424094519 825583166 501598866 224221952 142219076 604398489 217468820 956801387 432625786 410262576 817985011 198818155 245157459 71607110 829903468 745305999 495779429 317785380 620250048 878418128 144207534 206280476 348294322 279678454 158186512 646553240 621819923 489178647 192832765 773513478 141825992 421013241 681724525 457459335 569481448 147866852 171631086 159575884 801979202 252595815 944503590 694925617 637064737 447427178 379956801 60925473 117105402 664598044 706297165 658568109 573319952 155173013 231819145 110483475 299105152 962714247 612982482 897438015 243511618 645068823 54556965 901322880 613297987 821509976 442075750 269596548 404105294 499505286 151063374 285710865 168038401 936455852 642322035 505641204 100151651 514877356 716018964 283477294 573470090 260734815 301841570 548955235 967427084 231924175 471963990 756401363 421887573 228851973 375662820 720078258 997048678 515425345 894476826 396822930 215972808 909255081 314509215 186760069 442015776 678286993 115819765 819994509 504964310 980820883 688365930 38615744 934624473 636418419 766467626 790481690 577209639 525641287 918362350 527622961 779223023 549060519 330940604 731292573 652407999 899489446 430453121 427889363 109198168 964643552 277716489 953688874 551238821 648976459 434830450 574992007 969675193 486834227 178502814 853713473 204123584 385831618 49550300 237019044 107298828 159225328 93334034 454063377 907262788 730165227 620238821 321434210 781879778 952095040 516673494 613005091 70495373 632339866 458633893 62671279 315719077 672045156 986239337 63112193 162578390 391036399 493652019 332060576 365288207 61125281 828455295 595991401 677578235 424886081 41473118 803435214 109113956 886609721 593488311 210576615 214177253 856308168 997090949 470136772 66621129 580959178 418373498 767914935 191702188 948452478 522564046 669400282 676999584 546940425 165724277 992682899 54328621 362904267 440563550 305763234 944330663 715669010 913172351 553680955 495076923 629216105 809485128 265064651 107899179 580399315 890554351 6858989 331259923 529248750 243147844 115928288 797996748 709602740 172855574 956059530 930704499 452552427 133798670 518468126 613797829 43869779 388309154 790295465 580310715 458566525 60476396 394222486 120834295 256020003 463647214 997085358 210584680 624997299 259624268 698347912 931733172 123718477 353043004 66586256 402041712 481889703 353017907 121299189 214620105 12642568 232563475 196937682 260189499 605119745 540278754 393223764 579225589 230710040 24590264 939299956 451381768 797305221 495984281 999109018 20764895 32640737 69726065 240025206 124470930 611022200 854535663 627344697 54980961 65725013 43303681 436784835 633247692 630855504 71294511 412728576 672905446 276075147 577798415 245439829 179429136 671363926 239051526 771817182 983639531 661654727 829491318 902204781 746562581 617079077 799183401 457003194 998876472 844359862 294540893 938679548 325546207 345953492 191856754 201590162 762511356 525077570 921847971 796685683 964630880 837331195 29353656 652813442 862162259 375290699 943583620 472063175 623105589 82522139 326066083 967699436 121862282 329121737 565383814 233192723 442247150 967233714 298312028 726331653 442010524 151379616 752145989 664221065 945746773 867500112 542195734 180942802 937513185 244032201 83836647 955576017 961210036 609111776 720709489 201208355 415132046 907605146 764838196 968136069 146190293 270147562 656599409 331287409 938694132 383251984 723422163 634994636 258186483 350240162 717175086 369427205 641625446 487582387 970208582 11242100 864737930 998083599 399378427 181824652 600604729 782901721 476296825 20536488 312701660 695634002 645561400 640621069 560128258 208027785 293570692 557299875 798891004 315364915 946372348 615621161 659865305 313259858 24373924 96820953 756318772 393147282 836190648 638099432 564691755 440998669 299018357 482566688 866699042 197035667 505327992 408774632 332409281 581779076 550730694 92491132 857724510 936752303 885495510 270023244 609761644 822988095 199007850 163519960 694396210 795270715 893694158 317868348 378159860 661026847 367478846 853845295 241412404 786599346 817959417 996287577 760403009 630089532 986264590 564587083 249416774 580074811 592525113 232860872 947160525 528023333 988195213 155996383 783196929 635072006 903131192 207347158 506751577 428969788 61017857 69119236 750571358 82992902 877570162 903833008 456238356 647046831 718062698 475838963 59405602 90536637 737432499 893132658 201727891 952608107 281300197 950333222 385058289 583700426 238868668 886798593 698224944 227009412 193725591 240980821 378330997 261049500 861863502 554790157 688909845 941891595 305511876 229462048 985692383 249463532 214009393 104209668 758384348 885327866 702843746 143647020 199202768 849922060 770645921 125158057 380131489 484500851 614129921 677869268 437829767 446483413 83067221 229847376 165112716 406856912 716189437 449183252 158242674 211682291 908264823 892760872 489338935 230104038 327676833 187152221 101704248 427261789 938579634 610238476 894875313 383431723 501462564 599496056 844092750 454961356 939076107 424777594 132306656 567655650 408627683 418722170 639194685 374107059 48218142 392319645 755393625 957458448 151905657 208085422 372944019 400397910 285878499 997402395 979489118 700167366 183421711 345084906 16557971 448102216 988488184 435907815 183579720 798585792 924201180 982203726 618973198 263247338 381393907 224275631 564814844 977311639 315168231 263178695 964500645 402979185 68451430 186964063 420217646 855259109 360188828 573921412 420165154 607701018 523440715 899826370 60974364 288967120 686384468 252362758 239502876 295709054 2209974 524302681 190637286 154315665 678529469 12362765 423054932 914080725 711143569 48499767 132258984 72511446 591109751 280444019 817606905 802353712 294759832 54452607 276107215 587425722 969815021 163510644 800437161 752223484 267483630 477110713 194007686 639631880 350590554 716510435 569263066 386905562 720634957 285973521 310599722 492802749 721189195 184024003 271383350 122491505 900543697 854310608 574164447 933813269 912566556 229922544 440251655 590697931 821456266 474976307 139115214 178483387 263124579 65872685 998632345 118263517 544475188 170622180 246638686 284964220 675540753 172595197 342937944 102585472 518296838 453040658 579045378 836083046 310915982 476067012 834155095 28255217 295971835 419604 360546911 51795254 549015183 177436584 505153022 773959548 71762562 880215289 483856398 694315579 788318573 451971617 424277625 97831329 871566382 176475099 145133925 377377634 860890321 993838974 136049116 36273043 813665791 611045292 572382435 34093345 609461780 809251774 404014730 476200689 638654889 121113533 201255024 950124919 613758496 420810378 413494426 611682232 454780776 295134163 978867046 513565390 840727624 309690214 7625740 516248409 980195044 549598072 284946012 545328688 572599845 585113254 992724473 824510665 676765383 260358015 583459348 139669641 247307689 884650876 644305325 895979616 987604273 650306048 850759947 665108027 655390648 137332616 214851844 451042074 436797215 144802222 985494097 203282940 406521847 392215585 448466471 350485305 309726728 174174033 676320619 713708551 329074912 168011361 428102865 205990359 793947241 243859851 132442994 129380575 59445139 699709722 659411147 130786664 434825194 247438246 527388091 559889482 868190171 70927729 205636478 357747396 503520828 739977216 549485252 238528750 399519421 545843738 587115225 662443497 178065804 858512284 959074628 765478778 596904044 84957623 876538023 855838841 269650310 492028629 521909910 452479572 171301610 368106678 752560908 731935517 684218357 412149855 342560752 564440198 721686169 417444829 225275703 111190801 740739529 162965762 818301501 710754612 23367887 643098205 962543052 523975443 45051117 948836555 405815860 263331406 84534043 453684700 433789279 567631021 798856117 998760871 901843813 520064107 27575790 51851218 567550429 197871820 888765369 507574549 709973058 954080572 245659028 249544275 964746190 624091727 94552319 310483575 321451517 458040701 972725628 614906178 661572776 174027332 571511597 541906511 719387199 128863443 855117162 718582701 564911689 337701391 418543314 297332392 686451992 609492029 764290767 945958837 729464458 234012080 294575223 369761986 41259604 807029724 394444851 366253541 659802779 15683100 511939761 404704896 644043269 289581793 97717245 887550890 959538627 460882176 408788468 716367741 620375605 533672184 460168519 627632160 476653293 671106440 939526140 915874116 201803676 319428894 929953045 285661508 537228514 583944521 6896152 251131109 942714167 543079729 786280518 506722927 138254935 223963120 461241268 624269160 307282891 982500236 472372127 221901089 688306989 429063240 525075943 148149293 409596527 78694881 136627844 369319052 497264595 630940044 665616259 142838420 135662005 212020314 507849816 920183168 654494770 945173071 203015901 984883204 217984899 376703625 383075270 854629742 227921156 680894206 259734595 628647592 891355547 669665729 318159862 241723296 43707231 475975275 971157959 537618438 440247747 343213661 469807666 721580782 366342712 844756768 719795940 436848798 504849974 849152236 442868537 850512954 55289321 869679676 243506783 118758668 356199248 745669032 870783864 715629880 553718063 804122835 822846637 22072498 105086259 456168810 385839668 936422734 181790943 326502802 198624021 826491574 842925517 954766241 446957213 216430412 885161808 513347010 281766190 906044494 118822611 63407059 993244100 261859748 814989247 792493200 372644387 433091879 752650961 306109995 843921623 817329059 884560022 502393618 843613138 70833618 230093880 452739580 790899550 65988787 305850770 770740696 946148579 780928927 943826845 556215918 50099078 496458652 119625850 506347764 778818996 737733195 396271314 212718076 676102505 491008594 244057157 486104513 430076947 476680253 296400014 782873546 221652459 63659407 459064123 226188432 897528650 950860759 926479402 988856399 676909369 176635829 440634578 298566420 335757665 47012940 824016679 34490150 263453283 882252463 254383742 581093493 498528406 560522451 458661371 576458749 464673244 213613022 647210713 620300011 508212133 364522985 258309465 721180856 991791387 465505746 918129270 210383173 899690951 194477082 359047163 736924477 645917857 194729889 347845512 57801188 728403875 996791053 743026434 236516764 780509435 144082548 238480082 884851810 57877848 198813890 55841413 383288013 237359021 520964489 226140022 912103743 479684059 808588041 913893029 270584284 623453354 556089126 371429827 8264792 258963701 740766928 746376647 207993343 934371661 958153246 725617270 98957955 155185447 72979351 731592352 95485307 78473377 82804872 339578804 789445088 224434148 699452595 83038725 67606454 330952219 921200704 216921736 452134984 971333953 428858411 886170257 546798334 320923194 305032422 601563398 761050561 759388018 366247624 413337714 450057469 984400811 460452821 382971773 211995366 295118348 669929135 453374946 364294822 526556999 626768727 256079659 498477413 857550566 468670584 460875231 735267579 66624111 25524109 795423952 240447698 846424428 97692621 496306711 531684109 134093447 422319693 864507593 70474908 636062406 115721252 933694981 206767896 851318041 996457414 184927011 662005034 457169094 820754244 873331816 748145885 104335867 31584766 694642727 23291221 806621514 571590771 223728270 437240854 754652103 915726902 468581491 848909439 289239026 828135414 713832903 351924976 373210024 835126393 87284260 740344516 599200825 80796525 275409391 80052056 330370784 135402934 775211543 48370012 57358557 995242111 191731766 23329759 329804698 647729883 657177310 116142421 267501020 591002010 780615094 863099389 692020531 584798065 558623000 286869747 181319873 659055366 439121812 93714384 505366396 462101961 635215750 961996013 4982190 323438663 110907004 578434226 501382885 281319711 926033963 461660698 718795926 295482594 722795674 793359777 193181700 309208202 542990726 529621807 313630617 153161911 667243994 636973621 970309168 84994569 770361739 955085012 280557534 204579256 992608854 474028314 690728084 622867212 852590862 867300747 785611200 506813651 222538109 903167428 831499635 414612652 587667996 191620361 24028941 488898946 56233604 977417814 780792090 211012986 755368786 212740066 333020960 582969274 703837957 90222424 235605665 704951729 506916880 274560397 875541652 698093399 538499028 480662533 616272650 613166672 863038659 991234309 684970151 766197026 766229310 752080336 650319987 653250626 417287926 169513871 876664213 428568102 481785224 739054379 470712421 991762342 614833355 315272557 408819873 566289177 775242163 853791643 383947464 432359516 182098528 653066300 557825154 81689381 960407523 582659845 853305326 726338565 124503926 876687862 511441390 340751315 539153610 608806432 218467661 893173545 298114081 395371083 61580159 196880864 123009263 207576953 634709101 656071435 533721484 822895183 95457075 61029161 866555522 194191748 99427068 728692144 11025295 286039617 450917517 818483424 458191437 830053960 200846428 549234135 442116056 989449629 995037240 879919629 302405734 452040028 173891049 568632797 721450859 69192390 833390169 708237627 41957995 711343642 617714648 591241015 886308415 471560804 662003429 275941285 867743871 976522222 24057855 882508737 206356090 518704218 747617436 919618512 771848743 757593854 326443067 54434257 283363731 291793711 298887686 429473879 708385087 826441779 620994477 996436744 687031515 904541887 473064560 493756636 600398444 173851277 152970425 584874924 800919491 314757173 478989457 323084438 988506756 456520089 601094224 841225868 234419803 205567098 17157806 398083804 944715002 403351819 437737755 808936672 89317662 815675747 303030736 221363009 34151614 779095738 892402347 597196035 421133870 102363203 466089640 983692657 692651286 790208781 987431077 98143594 858762350 900879227 555447100 402340032 717966859 123220971 643752610 737171564 297284408 396696974 663164907 657679718 619083396 495437295 607414705 279257782 635536647 595043672 3869395 153339187 487206265 776217797 451952009 695413602 523392430 177831734 301683449 909942305 592387528 557235664 351885331 445193751 737166154 483126237 644886491 126100720 789776463 250573503 316010292 911027358 92751770 580197468 25777661 431554448 230419522 48972859 174784889 728544135 740583494 403869369 221462131 553452013 552625381 441980236 272407187 99266129 977774522 678047886 849239879 534842479 359712217 554960105 461315955 371278086 812127981 406053816 464805168 884557287 169455954 462821829 678517204 890990084 689780350 644174281 826214970 822460090 48533876 103782103 304122068 151018828 41412517 591503005 761775585 401859100 998482382 852071880 869934978 273713228 318304014 571278798 916897139 644240985 319013984 542094185 174934841 847538676 149767735 813749180 6669210 917300698 405456610 956307713 879200989 799857113 499718553 602152560 870917381 584114817 52617519 682977378 423610168 951692650 63216591 547679803 698434743 993915784 551665685 223628699 749450440 23923813 304202089 603933841 684509425 415199258 843897965 933041315 133360643 213231466 9150868 636024146 909902763 733997416 318515447 792948775 212937285 865016679 495359888 337759512 53526609 475673050 26614660 372709524 253100912 293961409 325315080 897483549 514947262 7250911 570662455 654758341 930600369 416616510 97090371 189966380 577343930 213721719 902123341 755777045 489127120 645207659 61658601 479261279 758135481 396309084 836998216 270115657 462540419 645421056 27884258 77861523 975430086 805964620 967459441 715330703 64180510 533229514 780561061 701107871 553560277 196692559 447887623 659397389 805221604 682990690 980952021 640435853 799658859 40200033 358569847 907637361 126597804 295391523 266133686 223691567 78463046 294260378 905875340 784400778 962577117 132174382 360855400 184329623 806768068 750567554 294558049 54680353 292083403 496039340 802492150 162066000 408540985 481586586 827046406 496489907 336496561 555148370 421327881 316434145 223801760 647343006 270345331 573945382 163884447 636390265 550189391 356369106 978069490 973946652 343028424 112818723 448269372 664765697 861797923 69939238 515369477 760780222 978765573 265694831 615923648 433716599 22167233 274683560 734540217 620498982 998507318 722828901 383791738 320803104 62483312 790657961 203032992 607608601 821605718 282781948 383854550 185734887 168374337 618992505 41418094 469157885 50110417 839968740 344478649 492108485 246736967 955985567 794025711 251679876 289403624 691071360 187252752 555190060 525201414 77841900 726823705 77072827 424880829 324241373 784280084 311495583 267859827 556733275 209258541 529595167 724786248 674897349 566631119 124259684 316842450 24538592 221981445 609581335 986010544 391503388 698193938 242928872 332700098 340341650 967336982 777013902 414797787 221820836 112027493 355640377 849493084 999351312 749386488 102848690 82720 944437482 152204267 758547850 718537457 270746969 103635452 499742305 170725130 184720406 215032558 531671307 391531239 844908463 288530657 185722590 115247388 175150027 312728474 659010194 453584099 745063007 243658586 845902691 169099087 63766869 199902497 383668792 213686692 473649525 621749565 744850847 124591901 160013365 265206302 586935562 414274563 294228256 42509994 119506804 149706589 643140162 374334414 329283318 801694445 437252497 435424319 524375223 797810565 934714042 654390511 106249757 600409092 222815103 75965488 780450209 223359309 821006259 424371424 26350 185548055 880925395 458713908 482203029 467561422 59743640 149034098 258033762 404867552 687897102 233899076 204377794 284756905 804618488 327680622 241060469 442923641 304547093 687693739 383874478 654287133 270097111 246191370 841967309 311144174 876647317 362905116 158424189 928971506 175849690 66392711 548279275 565403338 877378967 580447667 770249783 87376930 12128568 514139434 38302816 960519225 842096407 681290631 234943909 531897877 708303793 686130283 439980999 859519555 337098202 48361525 17825838 110640629 138665510 983862520 881208335 619834773 364920393 74936000 611333832 824690837 58293560 895750833 756557443 422158290 996016249 568522527 861935083 620097010 406504585 82729380 205860059 456419462 619096884 164313723 132730625 253093506 887677350 188984400 596819734 825358711 191890925 629093662 150923540 847181502 202943443 559613140 27643677 786319771 80522131 574094534 748148602 788274467 673724813 861533227 991546749 801613862 106608591 248366786 875596971 380010690 215401389 986599752 343261699 374466218 511004430 242436939 298296139 497007247 154105471 787526633 698331215 891977717 265844629 370777523 244699655 928160169 780623860 136919813 881522052 912868309 546090178 769153054 46435572 798227509 981926034 604911384 835790521 148503250 185639973 669641885 992948093 442890643 489504693 898934449 635440690 558051954 539051190 554363510 891082577 34337775 526989892 121094416 604271988 29392259 708476361 468213914 332230182 158747533 482022994 220488118 498932636 592260805 859962099 971205605 238031129 515815790 944274692 527992651 352651346 76731570 172415720 679878477 132892091 858915915 518588306 286766982 958773417 412367 575950221 451153168 647178968 353511170 86900102 609423429 79055588 913426568 150245121 722187830 272810260 86004763 261452430 545038287 609074246 632707449 57804363 224663867 680332457 731832800 65707970 712196767 944596866 958968202 834253560 630668399 3372263 641979981 708374490 562442547 725141042 205607947 111064865 78415470 89765529 401194523 502944618 916823586 144917254 57227307 224307112 290146282 794213667 118392374 231517381 768219860 459196019 351162889 10495938 868262200 620233660 273403392 253298838 24650731 617134062 924560647 323680526 296443264 623000769 366795277 590438641 731549546 93682254 654526347 353628317 259379938 842588347 971073500 560804755 952850920 4169804 776141884 882143864 68097185 571003574 587381767 401343281 15144762 664163251 878649955 328367617 813415794 800038417 82415878 991051224 532622670 905988899 785045378 494444525 201217712 4767371 754760802 819441870 535983504 346861160 457666974 9113742 786400837 520134622 296159020 756797147 609233635 29228432 401466950 534569070 395021231 819603019 240708346 315667996 982221233 481134764 987717844 76237028 252901718 599007320 394215615 866815069 599561464 114201244 128212552 709321250 379046241 493060273 688323208 408288127 711093756 885123808 736298681 387900885 569237778 901943986 230732077 886219835 677228174 957075525 556957512 539795002 21187111 628251403 729884699 664523013 282194840 849751096 788329318 578904532 912733606 76348530 124373038 779281996 237599072 770767529 629853045 42980815 108015579 522202042 218327121 402521808 329785911 393734335 981582530 228973242 57948997 139110344 727157525 627869114 350521964 335036837 812062295 83019622 633790336 415946772 11083338 911070533 479755918 579897256 257352823 340489234 708794563 265088149 865375472 624467760 866786070 337887126 641417677 124882370 793641137 916426820 820941181 240017218 251122670 262986710 733165079 417117608 645249271 208731860 1858288 119582169 364682920 521356721 444398139 255766107 987928436 94256266 364902594 661784428 408590121 150569702 490551528 591106706 674385029 402998282 329629271 966829548 801272341 512364118 920436196 32491314 339665100 703007061 913643609 861961773 909112331 95813578 207836365 396963516 616549160 722469429 956235209 623947643 154422879 362735443 117471125 729315203 177557923 70588319 85959497 816706484 412402116 911914744 359447140 344255538 519478420 165540037 934620549 900213876 683938661 120876951 263589039 61413695 877333018 825311933 155139685 736673863 84326063 638148653 668471061 320380171 221444212 262917647 532208254 489024908 95288012 585840569 986243785 927230689 178002884 156311591 535571865 342052407 746738963 977385982 857741388 928509272 622675610 767763437 666013467 602094712 59103664 160476002 696962805 726887778 499036703 906457506 175059700 760504388 415232714 931498953 382441082 377956726 23804275 853430198 184848209 675292057 389578112 24566346 471167615 737131692 66519072 467228823 597570026 769334367 907329039 501440977 576644693 231125400 622971318 433362741 665108592 84363603 715657186 255895736 705797306 528835346 839476299 476972291 831529933 485760546 477211278 929667848 102335711 225133119 530352492 198823096 935640781 791975179 758830363 281979641 691018964 183741471 498533126 187519145 82584069 756201989 458838497 323299613 318075391 881327667 884263469 461344649 88231070 633132753 865932655 615669106 256488519 763147512 673665838 789668968 70303373 422007808 607791310 850114642 208062184 100467548 889007109 942288979 777905274 838212443 225997010 471971261 997244359 936367253 201135966 966642959 490676564 386581308 145272995 541746930 14573322 9367166 61124804 711939643 788284990 869542043 112144342 318886781 874843366 737806096 565430634 566011429 660733103 222823782 913847358 308299084 155662617 148307605 226459134 268979695 597687278 357783562 368369934 156491485 106435416 113378031 192059569 896242085 643292957 701867758 259659096 82948854 911801860 16075667 476482264 338884433 312403961 728634109 656711013 818068853 652054372 177148411 655212859 726261279 862384785 138488850 129182711 202429252 842907204 23869498 622879686 880077419 610654893 655585468 193939568 248161599 790061836 584568176 725215976 8357513 621410329 483806856 923099587 265700086 869034127 221485309 732767700 899503765 791936779 199042703 662935559 589948381 165201037 355318976 446290860 187064970 843655269 80331621 820413075 38423314 849641065 698741423 976943611 560385472 561338663 365979684 597469908 529068988 949837478 375786292 907566627 542089895 430333020 773090527 254017003 840031717 345578541 882870666 343469299 747503748 572385137 192501135 778254012 995651413 650401251 586155173 704660328 399180539 800042846 684112741 475247738 204379423 491107915 551814182 670047594 74464104 64179586 792300441 458896839 715978854 233981954 291751817 637371344 408899337 223970059 664946425 534931766 374333251 376588746 56953065 320179390 593841061 894468907 2171942 522619723 28472664 618895796 501377448 249113912 903751781 268039900 911973419 155288571 318070605 755603617 774284405 300197049 629303526 596356659 651007489 855130787 754679043 845247308 764725078 935737456 692146204 910446790 808450148 849544804 535087587 911075255 379922440 268420359 356636065 942348749 358514540 391774007 617451770 104652905 636648036 640277557 890699535 389934339 624711024 451636832 983039623 656644200 276243434 327003278 455309123 28298985 287718548 108844466 769063199 512567432 208295384 30026001 969043696 144339140 227949970 332093860 855631178 962477930 76074998 393635909 449596129 582136984 951650261 429029186 283201506 753280793 858320986 702602097 787449380 801922466 300352770 649224347 826383349 166381715 381459878 573410624 625431879 403070898 682465559 517806780 506951351 738950847 581151411 116195391 595226429 13689217 649886344 468264233 729185119 188381299 273873823 828974557 906624274 620919689 684275470 851921046 837892261 233833545 957777889 460048164 385473164 484535293 684615061 627690319 633691077 101070245 495635335 247605896 581439229 532369527 623969766 231014748 352797570 990692403 405962593 374807506 431415657 625796278 444085917 461916952 181604150 622407047 555495068 420714940 694610178 941445335 18437811 811720987 245540305 839156708 831169781 631653564 330579134 480727956 78072923 399151758 398597705 198646131 199133524 373397351 538027646 318118847 34724323 849746728 191885821 641713463 846912512 692261206 918701350 782800984 563459492 804723978 410173745 816465356 447380248 63525634 911240241 474141377 388458244 109145281 562847761 120052576 925416686 961479457 100007751 800959449 13994018 957089280 817063420 262185545 577071774 202776235 287876315 180414549 411533450 916764637 627565857 909354811 161849141 900406689 26381748 990498840 320099531 536425709 737898974 659363201 518013239 581240433 381099993 589889036 481236303 865236357 554795854 191316102 491028293 119360909 221048658 149340699 935571855 100914115 249294704 873026111 533486968 715483208 362603744 540215040 782907691 18885134 878948349 209196492 858276666 168365315 92970738 202731871 448130923 525240177 435360433 8267757 284871922 871134580 994980043 425628453 498247419 137386405 94629630 573705216 431091803 242132842 488387915 36890380 453871765 876882731 965423120 766124398 203749068 718531442 555300790 926772418 363013390 566283268 390962601 193835204 330205788 882163538 103849083 320750557 955218312 733690377 637425733 334447524 654574533 113101459 120885282 250427061 436157061 890460924 39323800 83822595 660613477 246299759 618044796 610762815 59398668 775891325 403022224 286936536 717083502 343973687 874695061 89686077 425290848 370849333 485566482 785654492 513872914 680216488 903612896 997863500 753665680 857821813 192818782 323804034 884652493 315188742 968185306 643811585 225248579 701477604 360447255 702396481 823828878 837664650 922290275 92840503 861297682 465849869 668102757 103894255 933651731 945845543 915336652 149064457 890434927 748528879 73229363 591104919 500115581 235724801 73200168 998153283 955077465 40171272 205480067 532167279 392497713 543549709 60750404 422487827 82450635 984450840 616554778 472067576 104695601 341315764 216030289 613311198 384835224 698654277 641822784 720605313 271223047 560271166 299634389 469656235 811096303 107036048 70679530 535110411 389941541 302164872 592306846 513941132 4836499 217533245 291061308 50114228 470350295 908415076 729521332 216292276 9501114 991938463 552817300 260536951 894953942 741761097 4646230 48233099 606253142 564643275 795606831 922858913 890893314 861510644 540902781 282413927 108839461 800313204 608794373 116540486 951989831 774191620 117900445 933950751 199963132 900246156 664190491 889943697 179499919 951721070 238217576 229157062 113193784 526661883 747173624 691342670 737149413 176616882 421692738 366510956 969576837 974673618 981692103 411077879 336501803 942806162 50466834 431831175 386630271 774162243 16819603 333559094 509925512 665124718 937364369 746348097 614487083 896699717 408908945 157695945 58928918 896031487 522799549 161491148 829863254 977253845 763158335 104916563 614907260 126477305 710886282 769884969 953905072 678088353 772944099 228959134 55709804 975475771 836731941 441507349 678763367 172403592 311952051 649175711 764563157 131275626 355998367 725684609 524050569 144128803 880484107 143134460 101003920 205490937 343680025 149874506 493652255 142485291 91387994 68446335 882540306 798343264 946808680 20576724 668540453 912160088 281060070 855226990 115977672 467453912 78607694 817856255 645545262 269628247 649408199 484950532 822702560 956105605 187686905 806840745 774424181 354234100 263951508 190531078 328249094 715389854 843911126 688659304 658495220 456427419 465085618 978024765 862220385 868926796 433337146 202858705 982952511 939903985 279502607 960584078 561208736 840963886 307794987 207793122 510630456 64053746 168996270 701304346 844932376 980914355 286937797 149242338 502680696 946149592 769113511 235527149 272648878 135541987 713065003 703810312 695260784 772964940 120010594 113964721 332496986 116180515 136996004 112720266 68044113 451930252 29437575 151822798 567658235 864206017 238921654 562594654 268509520 982626958 372583720 693111150 998116968 125996552 447045709 334186903 665885846 673522192 751868166 844024244 435969760 294642202 191371853 618535864 966226355 31051199 695111208 829710061 882568521 660054743 282840633 220949791 920307558 901742984 602842073 280684307 514212642 76804767 744660597 180826561 584712151 624252334 132387801 667770723 46179160 396077733 869554899 349711765 744579969 336992081 722155946 684515711 785484268 416475570 202875818 357277122 153716900 418953499 464673590 151697716 415833946 937024011 929541945 106536058 186468558 74104524 564020749 751880898 139783025 450042992 622759802 266368787 379537951 605420331 524980600 948143958 254469734 815491492 96231726 865353168 940949907 985836750 836620339 169766304 357164727 395873042 651435198 921683462 996882467 395043857 110640244 71147843 591469564 797014150 565772338 809916154 86297676 15833060 329294051 438722212 936220688 664326004 841878327 24517846 163474766 309314842 668274793 807011341 771253949 93858695 478091787 845470187 10227667 56286335 855063269 42806174 197934335 943172066 315019671 555965841 498289158 531270769 855915076 747621257 398637251 280509431 674547509 242857980 968581906 795665456 107440727 982501933 391921488 828770035 774088732 422441093 307793563 998407770 722584094 604170433 4625605 672438798 43104129 527511628 456099372 775190243 662233777 690581769 135309626 76829325 792248846 731032983 615726230 275393823 481772683 642444421 324167511 82589183 797839419 250914906 857317029 280535640 797260338 585817201 636066994 854164258 377754327 36910283 365755286 48102549 70105985 653510220 718270825 254462054 2077352 959365724 530383845 663015228 927623939 680141733 979731367 201787052 487575882 780593327 321211936 871653642 837498231 49099522 824927594 309363098 199960073 599389552 681987457 850738396 374648431 551113674 567186035 356489201 271273757 294953098 275408011 300715711 855935265 63163599 67937927 342390410 126800035 182846319 95914962 818922319 302908143 764400412 687053497 828629469 422680502 211583916 80167607 84435832 153358214 582001032 413126683 85209666 366224998 168802181 389786930 774228365 217522587 826204184 723841469 843796626 453427378 667640845 169626296 247685368 345761028 302044996 131545195 75282452 238399793 259027280 119149004 259508754 966609032 745972973 526184764 443948305 70683932 304272048 103168626 908807768 565840508 293877249 347660643 686807815 954949942 519965402 326376466 324792588 667063019 904400739 532545202 201137467 872689302 25462487 763719487 217211496 621129693 65352687 481579749 346038551 59862209 507910051 525313157 400122066 406759784 628161077 114945044 862544471 293490304 852817374 267056628 267443544 426991497 692943872 964801131 502140275 756345214 789815217 932904954 530658068 179357622 633218763 832845388 816915076 668895853 229405636 307137930 577967553 54386661 713285819 653800152 871312788 227125801 992996262 472700891 602732288 622596852 752073860 193462784 642455178 932785351 484983186 276285608 570521221 435062703 9721891 671837857 868013162 999517232 372810961 702300237 988437786 978653461 104863930 430671461 257043840 466737666 736000901 216556172 516084274 92367108 620402800 30997402 778374810 244656842 345967490 203438860 804479489 561259642 159722392 393710120 459656805 517566688 247514692 807716795 948254812 310698614 132810475 888871405 735339643 656127020 726174141 460079795 986880807 143365627 390643352 213732190 74928118 222760583 804003429 514481828 998287939 226725581 289419290 647895513 117047059 128815176 7275853 911475244 828083712 63360484 194488274 549350822 618866170 147058332 850457339 806187834 21334093 540176926 569221644 992969058 277241614 446921219 162856191 450313567 455784831 510604196 60209884 673042892 193950020 92452445 307534166 984274494 325121625 909762113 595308835 392312626 288537006 43587217 886786707 451153663 31298608 211208838 889833638 960900731 574579057 291030215 272286349 139131066 649158005 907342374 57716890 373437748 15120040 371069237 777141535 535489014 782534291 718298450 801014649 450446829 449251443 693024315 293440767 841756350 801900064 774082427 620226960 819952482 671553220 822346870 74570599 355360633 803112634 361660596 649598335 728640710 167299631 126613879 208592625 444234282 94835838 231744460 746164723 490837731 797922448 179407665 85748428 811650617 118000435 736860626 770401821 946786233 451248444 855635096 501531114 331264878 878381217 376332149 412168687 108378610 508515137 248758623 699276419 949915304 14769927 317572267 48662700 885608890 416054050 646774765 335733155 477955794 235152173 492115237 734436113 11804132 390691590 248985335 99994726 394466222 914147194 434876332 600638648 587156459 984857339 624768678 804109969 390650115 910044146 6972226 873751323 244897204 163826658 164231778 423991611 241405741 570351869 707629597 768532408 455705783 509402462 632810119 179084592 801210181 573975870 531273480 982317308 507847687 51338603 364222234 203375311 414003691 775383213 988332067 166462646 852090656 974374985 63845325 695345514 827289225 328975478 966737411 910250306 945365916 215480119 742507352 304273742 350283390 348555815 492137480 487717579 22404352 423882618 535611844 496242277 135435365 204726567 675460746 234080662 958597585 639464872 964409634 393537555 948766088 795485697 970641776 443654816 853290610 254978459 777193295 799156905 183478863 215821090 846284315 328545311 662589410 195873806 157880875 668483968 261626013 326369535 34551543 477296846 985785025 514940580 625550447 402329311 408605088 86261455 256324344 78426685 465696161 284660159 650199770 307950031 751639617 79971787 266413836 991931297 962246094 170397542 196366250 645418225 241403062 665257991 573030729 571114768 233985691 364294378 597493363 248738393 543949835 536256803 117078721 35784428 435636374 921234308 366767602 701746093 819290827 996510127 795447617 519829826 214693594 498221476 617681148 164391943 417892452 184527124 477084772 953327524 554084548 283134810 848080762 596917321 931483546 74233204 452227266 514433324 868496534 163401584 122947212 822700678 82918123 502255000 231460346 888019348 770756903 931453254 193695754 996691012 17657841 98792264 501907874 826101264 760198275 96234200 23653084 657157633 130412410 282967406 649853541 572949772 969275801 310228045 837397611 727115409 571037512 583598535 221554619 600832571 943014672 434250508 185448297 197477811 601275154 888717436 606859890 532044262 647150972 247591367 355484686 894805846 653188678 184018404 391846051 535889869 881524763 382589005 154501204 535853136 568293239 343440980 596650009 545723208 713982310 506830049 102753751 536827599 997577926 80734755 585060683 625639638 272443161 600785677 783512403 804258873 906307565 513837096 737729344 50687456 695846393 180284731 627392926 38151755 955647686 99774124 628924058 387991527 872556290 9028302 488401303 728496305 631022879 972599849 704070636 617746924 809322107 227396655 39943548 830438386 943938532 36329262 892812343 608330330 718324187 706981213 772716916 583690487 143169482 287714640 459924157 384653960 85896139 704977960 284133866 69270337 111154071 12216012 273340754 916629483 403465948 645895189 204537353 608099746 417691822 784010102 677449691 282623290 94881149 188624334 428079540 758723291 229978091 535897379 224950250 12615673 761685921 22940861 760405324 53134430 679573756 387843839 316074107 497939609 310399383 484827737 321243412 109904661 158020172 281709970 708040718 343748748 227124577 407150570 962238255 641510782 355793866 634147519 639776449 595251061 861841331 751379227 935453472 463091497 136733247 858223503 486464754 986178345 566793447 852479667 787013587 971459563 515710840 668904711 962884045 70520685 608795742 992455463 596692505 170466706 45973587 158301241 556421893 283879082 394303636 646821898 276832362 993343839 99590887 654205333 93334564 594085965 518772256 710201194 319256519 260567400 125551795 27229043 756492411 955927973 192010551 579758951 876342765 362300794 317922511 271714764 921769855 194125450 662785355 969707456 676719165 181582420 579421025 261112963 34348932 78207281 193198476 335787912 891803968 308739992 865659403 885960510 343901839 223875651 860520752 969132952 447516722 924926883 304003276 520149365 384341789 224583894 757500199 947988784 337234624 973317382 306201275 223501020 230834530 104778490 528053973 741543962 288447148 275747913 73591875 401997479 448693420 553847487 118579193 850994466 828628619 557437801 567724516 258049205 335058334 177259575 335686439 96262410 248342310 916868822 774609702 812622017 853731597 253873987 666016058 163335934 866718419 421478927 311360970 244513100 793703929 499047864 463672062 298336467 696291504 234169517 198604375 23032632 203113228 96743167 741157383 850660008 47757673 852667747 623047728 766433369 988229029 872116090 354371975 13528493 437600347 409666681 132301194 274005062 410858744 320727069 445366854 104399267 557951319 850245826 446843536 113530456 453644288 601500522 933132413 782095937 984125472 469738171 504805880 853834141 389922974 69132595 408032678 479366212 457309282 663179599 174561303 181616177 834982625 149792080 56500764 998536929 779056871 855843948 19135796 973547174 898977147 897914986 153589157 9099228 291035654 279864177 448461396 326089676 915352198 687103874 177125256 259430443 561607829 719943879 380538756 512489293 378000818 268816240 995365841 708760792 165316790 484849196 146266859 207057547 241361496 452259800 800632816 555768255 218254629 702326313 947864987 191029770 568730251 330235696 774653723 307926048 543915847 258880050 356003234 180617770 502332975 919691565 8788389 58901779 882430641 96552887 128096942 89436386 153294027 376389643 283559757 500339600 522388987 599172099 985866447 256074549 362199651 557337616 977766983 213161849 185313594 968338019 207033459 694900132 194363566 21863699 199491920 240812852 404249958 190739621 181957128 327574119 142108825 75950252 490477941 836885926 717034750 563818119 614963563 839479938 971290829 296809670 558596668 655414119 1926426 877360215 770083675 164448509 320623749 792890003 562439823 305190777 161353209 845887950 626945576 199296081 322605197 556085148 641353214 219447775 264224764 91358776 941822148 95499324 582237391 836841763 319555507 970810339 781337350 822429076 666054136 852101625 581058825 401814596 728884008 102838856 948753860 682502254 936532959 140438767 475574985 664530884 747799978 173039924 54492145 49715478 16302394 969669197 450053599 31942691 756633290 339705215 230554909 789790002 312582098 806370262 454596179 194034182 521255594 543875774 537774134 814008538 956072899 740718159 457791862 428756597 477248340 736708393 163142927 828128878 94213600 589073989 422015495 76256771 59061838 724410351 685574557 673189241 275943871 511978295 488770569 595759932 142374348 809912003 272480911 512078867 94434863 458380845 641269092 757129499 890140144 444249006 321776112 53885700 143407494 830001438 19484321 200494129 130312130 67212452 223773541 208711499 459330045 686085898 458726034 957299297 262957740 373092292 750592453 813299416 920052046 662089476 459045907 541463143 804451722 462847201 923229770 837435000 437070481 302583647 684899310 799660892 865590011 534911670 284651608 794337696 427884406 313625118 763120844 493926647 791018203 228452738 45395936 253654312 246774266 503842639 470356607 792361829 634018329 750084232 652428304 351300097 144591312 921331798 907549958 176129949 567113392 724155640 944008945 39152200 27698559 215233627 412392305 833842311 184978193 318695591 270183223 540662345 595924830 430737248 271141072 304735289 95083003 226489352 120596929 331630256 780555827 78917130 493880031 344250588 2381752 783744787 521081599 391892606 45175915 476632660 945947715 340421031 44314150 626886129 224557199 96171746 182356164 472896960 61130196 135890411 175876378 755877264 187110288 111742653 288289889 123032346 996839450 34964629 339319141 223732273 952777970 501586696 296578647 909977937 605586967 300638049 230065566 418905133 81744555 640186530 245753730 682834133 601332749 113971142 337987957 67119439 473670619 304544518 438829099 717697801 521705443 3018489 3049808 907061147 909068571 898602858 754768943 891153353 686465309 611241854 382704472 744302671 446804182 730384892 663622503 126040356 411285353 242121173 764715957 818311148 13373497 525022108 208510390 745391636 363098081 233684656 868527289 197855637 193870256 485218277 288819464 303617431 886532524 73954687 633059123 290243826 473201513 576822811 656605929 947007720 525952282 50359933 895263819 937100767 532792680 392814306 275437853 904491920 908498344 532838523 901150919 500251630 633254251 302399824 392855243 153103718 924715902 353200668 263127412 399375106 584858213 426652401 796182684 473198032 907299097 194785841 85603970 431153943 759277912 440522032 361496778 541949456 332198947 41039577 7176307 434080887 925761383 253488005 397591613 614773699 407884445 591174028 977500150 708044675 429228412 972252462 996619568 98297494 182186377 386782864 755946782 739044776 974770099 198532208 107271516 322746848 40234995 457370551 969197535 248399391 616942528 975446880 495337240 582287779 834064181 724001804 12830480 804080401 30476510 643365368 715321301 41945652 705201973 795228644 113613645 61356448 258491358 720655460 99600533 785962003 104542650 755891356 638498936 363975639 276811113 41700499 71760481 886968640 138820454 970202720 525489117 212588432 84657639 229897262 498167157 811614489 702192594 687773988 648974237 233833260 436826596 348552564 718036522 666749587 223333176 814585600 775016208 910393076 902936891 774297378 871600345 625516449 233232654 879843177 115735525 273489477 158706891 11847397 547803200 744492590 192455469 700725308 653269256 196628982 174722064 366367769 966993726 598289223 757821648 902115297 157854995 450681183 178700360 312576775 110994350 976564682 606440008 127104911 861517324 917697151 721977300 597370748 681414834 575656955 637071279 334818314 765097453 365042095 549120330 631257473 187500939 141674855 381881717 220243229 940330150 897501593 464871321 613147097 388278464 483522724 439801127 307304930 710443680 371606543 787373450 646867536 849101521 744173718 68386677 40540795 891093228 83909380 210575099 565136096 535889122 756261266 691405820 169909710 894041690 704243620 800194092 490027006 299561046 624622603 575599643 564559768 399854130 430707113 804392387 282435149 980026759 336713227 275553139 63703083 808359399 201318331 437281613 571367089 29000014 462711838 133067302 976522558 866892835 564701830 130700162 467185993 504055063 491314350 300696890 163972184 305262592 432255433 250325947 488790414 581934204 28855413 910629270 900122144 785020643 33984066 605686457 636441465 282772591 265694992 152566143 156531932 935874443 763023044 997585268 596578885 917185620 301360496 254677289 357520438 171580400 712129258 98478398 605039643 562168544 242146943 631858447 780202906 707525565 939860391 524732013 988551040 393214479 658887738 189926457 784738461 495721815 291450787 578400445 16017601 860396450 924909348 501815045 764916184 543989880 273628180 772097596 23557495 884949030 172693305 489008666 340412067 76508185 590622487 738060573 788910624 335015373 70167068 259992731 64388299 613189760 220283736 998476801 969177665 478987893 423381929 610230631 417263090 240693355 863119731 847070483 567992839 202298432 76610835 519745977 457813944 486875734 788740148 783851514 344521649 141726083 733170448 340243999 799088199 478968573 793990231 135115482 125979746 976307853 132789886 510644471 207810950 616807443 809535581 5882172 517232242 631325945 851924579 354996260 242416212 745381902 734743163 298626161 284609222 630780006 54744973 691867813 488588339 61703714 117962751 767442504 514990419 15274056 966872336 783571665 42122647 331673236 731508732 281714536 841902919 369746293 526322738 181332816 396681042 409259421 189545814 640600443 659508913 810890148 488996534 278965048 962688251 391061523 101166743 845209708 791851690 190942453 585510723 957982381 955261119 226558706 273128406 263645167 840277728 192613138 617287959 795163190 527616530 588802449 490856712 596428001 675284284 949263991 583601340 269515412 566842962 47731193 698373643 476979031 820035679 988931454 812954057 689174815 280384467 973005973 723968936 929958367 291455711 548274612 678863600 668822479 264740406 892677449 822315624 181110832 11510126 191276436 367439065 768408899 846429350 299475009 526435421 653981395 98128957 999572371 934742340 68429736 550797446 718256343 17854825 472362242 742136253 170017531 991903509 671013542 178771217 640865178 597182941 480333865 504642750 526440481 203564414 807254435 225741354 116288285 622378558 447504178 128966574 249242460 308819610 826095466 923352656 975670159 563059787 122073814 370813399 613280409 617091696 521905162 598455582 77293589 155657798 661188636 370668678 403232821 8315302 479255945 539469118 152219011 504558319 308426010 799086084 418694691 708472414 192884304 540620916 280271748 679183612 561166839 855538642 778564633 863873721 877434121 4581828 992674229 528615055 444759802 496048021 941877550 803543006 596990130 732829843 281431181 259651232 733565643 101095769 642719222 521320656 584031518 583670152 392747951 641710464 363071711 376378069 865265816 192869735 855394701 451466707 646147551 754319733 164841840 975806895 870052921 866100794 813664451 402300357 122551774 764361928 67872656 23576204 415230106 307808588 569165996 15062808 742530190 392581548 840621585 551112252 5941511 334093571 485383416 939396373 325393143 174396131 498850241 63469830 849208607 935683647 850096572 999657279 64066744 535746856 368218018 504211819 309050945 965958368 510946204 404759586 441528545 680558707 27781854 836004725 482269566 547023828 612467608 44108909 389421002 890486193 831644561 16110055 405331858 429556189 901619050 711512082 294891732 162444401 439578113 39016124 414951891 774340701 199270610 558204478 607753228 297444518 968813333 992499987 939176444 645233465 488114373 57373968 82946240 978765411 809238965 999184519 233233469 812569290 859349566 707465853 590235423 284462662 332140168 3603875 96929974 199562199 192031746 247129560 80314479 556774061 566053726 112714377 255999978 175309008 970287591 803114464 902212924 672020518 890757308 787085096 67205823 813753574 78870941 534356464 878347785 176460568 963850865 481861596 467436065 873971085 487969981 322405990 967443216 236224758 814419010 125996152 434949643 33732148 960295014 966933333 915670082 187969444 807788832 271012275 7019023 174464570 392955519 47143824 703359911 443048328 10676886 668343947 454256414 319655911 578962811 406843224 761731540 382667156 244444560 821533404 144552956 763816791 818106625 305324142 454014660 540157425 660835525 356653935 231302972 95254791 660651370 789787320 249961331 730340532 348191368 742001260 30428737 385443953 18451141 76961701 90933112 54408513 887515041 740817248 917376847 815533648 524540835 568075549 824446972 872401728 84056264 415367316 275244532 525331163 838437142 577407500 534633732 971185580 456828490 169945989 281186353 395193739 455248279 451381644 609139452 416909460 528003487 199160668 494322408 730430375 97905554 124748525 125878928 133579494 546788817 408456914 932897516 792584823 142918268 382312951 790703326 97468892 33175116 730229685 339054763 430484993 361265442 336096635 958973732 699025125 709907530 16337290 362123404 882916866 109352546 301085675 793610217 89978920 677523900 363674165 332352914 28171431 36959110 177913851 96340873 683463598 286796597 426178915 809915605 465318192 464196586 483008040 477786229 362193680 266237649 513981589 153814877 748524929 387445253 494769817 272633498 99691402 754394510 912640739 155185840 390672997 837057992 636623035 474769037 490415211 517995921 670931003 258222113 209224224 647037936 636880239 606409579 498367379 903153039 548958881 611334728 712753534 636173659 394185997 799898444 986989111 429352500 39920530 312582288 833688372 61552603 663520408 822275585 182532397 11253465 531944625 802912757 330467116 708166815 222515718 354585581 391867110 250159495 77834093 461189704 668948759 647065774 218148424 454292210 560362269 506850045 742024265 283174615 778066872 559267147 427297932 296301446 802926380 34155650 753287004 348642842 498018400 234480642 550371359 865140702 405244261 458081248 292538749 629525349 463675506 179045346 990328808 877294206 825562767 239952698 802052287 606608155 962276799 966543815 352165259 266631283 887730773 776593911 57470637 304362583 305757932 167541938 451341701 961718807 15224684 552903332 784715857 38662413 670509792 619887082 479545399 840883101 576653474 213935518 828289592 680153042 239597761 141808257 958233409 524987433 887339236 211799750 119674135 291299643 13867074 921618673 598428051 349154268 400476140 330253268 600249648 891772941 489529109 168532819 620015237 827491534 783631910 282734701 871028798 405909099 732521523 402482916 30850487 684571806 442633934 690980458 512597342 384603197 77165230 753023515 552184835 105724951 991528943 657872715 527081239 362833410 80398862 568307611 978345128 39238435 399976132 237575329 829311080 818324043 486417524 187677511 633608908 766356681 811981444 155613358 63748937 668815951 817090658 53674050 541615600 238281493 190338449 625939947 983296563 101831602 392473719 965730118 709517534 284827485 471027275 344433576 266420741 87505213 508629786 243825151 190846748 446031869 537673961 753564247 415808323 196353457 297362429 337784279 678059277 323157286 948141930 294560991 155853338 918423629 597040542 620076693 401140656 84642092 906438472 508683446 461103306 786268541 335019292 903579172 247423226 100822519 848105326 611634079 220855410 415948741 221261041 298009844 798005556 911313611 888467340 176561062 360876835 226673223 225517862 843539352 376569673 300958504 178099189 491241391 969933558 504316551 741506492 511065890 797024543 723504627 367863839 231439543 707489449 202662141 746572260 61480836 896761298 362733930 850232389 976201646 837960668 74798197 257819065 589688670 775756737 476379750 452091647 392752337 848059060 868321142 641123294 845698864 43951266 360611078 211367643 283923794 498533355 646567555 50750054 174988061 806854422 370482262 283752386 127365366 273082667 529039394 992992407 253892134 563516734 401809138 937913327 138940604 129945869 580979305 80320607 98215944 608532006 459433478 180438412 639368221 602553898 447436385 286469780 648910441 518308593 659295434 680698693 835018999 937961317 824775119 369221817 874920198 573463603 55129542 708088528 273816903 850053719 639392080 293334141 636767046 851919726 739041288 553384674 500675113 318780586 245297319 96282697 743368213 549741998 11395373 889746582 61254172 753613893 192498531 156032405 720767445 997079088 224101133 959832463 373913272 519320416 423952802 830979388 520850327 685058028 727541828 780809066 718815398 315612943 631694364 32371315 453435589 337075329 400051787 687444553 960991756 51395309 623766921 236361078 432287226 418500529 276460077 415456012 764915522 252893070 774362756 890140245 972891321 976723074 266528798 174795148 988386921 235385371 346917308 698975759 961349309 214160996 904187813 133544702 364089566 579903083 262191317 897772245 636796203 719782270 528250086 919973595 399350894 275715043 316627697 717201602 38845906 597663084 67591295 528024278 725432057 520200133 23558069 41185226 922923629 817276213 26190562 860525400 497845673 304380285 477112017 620981069 664661935 846944575 92999175 918354540 546773525 885903870 163978063 809066898 192725293 378779957 951856137 204343977 586626206 695399028 236106319 375388245 44869770 384161099 53885064 952994787 670619433 752550458 608917547 303669432 210967221 496439771 334411006 677427344 469317790 148906383 167860073 592846329 181340547 785090144 193656330 427190914 427137784 611118950 326656051 962714416 540315019 339113201 536659365 895621596 336471876 737666459 875359415 434624227 265825205 3154040 464026346 381553733 977625100 963631488 614568990 447722822 185750665 780236547 243120078 31078000 269795797 158067413 673894631 294540377 606178282 656165099 600549287 566014115 357484393 491947495 107477023 822948607 703589535 357011438 552956907 38982809 405624170 392269153 9040359 128216926 314912688 656413757 446314840 227714959 915861596 105841936 585728081 292922483 993435210 467069252 64224322 627489930 970728659 511219967 915174586 276907223 153443431 312598524 17851475 992286184 174272687 815263284 740600522 420439341 393158647 895354976 405905938 800125129 587291811 935326541 57118361 505856602 234704758 66770816 811893937 397285785 297232880 12917751 253626193 813303835 307598716 640463212 693280152 547460221 77564676 72870674 548851964 480435158 351383918 984308778 570754629 930481294 867721656 372684980 124648395 658848672 465059327 540144531 531338059 26719957 286302376 486589631 321124445 714137156 399868794 753031476 584497096 62657662 773128696 115237917 73911813 839792791 354794490 420208828 509559996 457768629 443728793 714186270 464974375 501670917 265707306 717857371 757914717 699884059 592415102 504789596 461370834 742125334 721442721 323835738 611022516 318435771 410390464 301278838 785996202 612677643 673438811 733170538 602655417 242987327 624139514 475404093 63355442 603293289 597202944 89666586 310216219 836997716 238005211 643787181 418271952 689326573 862468054 815901200 857187404 51485297 821672503 389787482 152980401 681805860 164815478 370564184 826007786 351152169 730334405 157873728 638392291 637983440 693915522 538779141 999242764 890926592 495988990 403691614 13254888 772842924 18087358 377290748 695667373 336689957 231304619 472429840 134663024 364642411 712342342 899991625 316592846 471161526 135272753 591235488 121358480 254420470 626907393 930322625 421956748 865314832 511594911 134587859 3950062 354799899 118438879 481634659 377861587 576526472 901905317 163192080 467347359 620344865 501104428 861890409 606582436 325436808 289195741 966814989 828626835 416345166 284895797 179019722 721503372 849620882 937589316 698510578 131272290 742094479 772436636 71471382 856332315 966843260 932039747 251849638 733824579 324529414 333117129 292868708 750951428 547309168 957301370 778633100 450637438 178970662 784773481 580979200 489347574 509998530 980038965 96710545 271665203 272167655 911678984 410907039 325093787 437446150 6220237 870520685 768708449 93870814 494256742 198667407 270653019 22123687 718451288 282430705 101139136 452773673 911430070 518098385 8026147 894415085 38347107 637128714 9972039 735344770 528961906 19820530 814147189 918329589 236817769 58818435 843801240 69026820 288193421 989274916 174002582 541975265 36075035 927146737 537033681 538710585 481511536 147715497 160184425 447177288 987916776 667580017 618790782 815612242 219791813 172177146 272246949 100077783 349832833 340720774 97475920 565870300 228769936 578833916 628668958 329277143 420826778 300814824 924427452 551421785 771083877 577945273 540833825 227606843 327279393 771953962 197527020 789994436 20666935 920271292 742930754 29444435 633629530 260107527 516310699 19201186 39679744 742253185 692168375 92957297 674215451 208150417 446348847 482651517 656335078 445045640 183146709 204867402 247089233 721564362 46763852 784358457 564946925 743124786 379795721 162554458 12093568 505347991 675002656 93532292 95425559 78482060 538094322 404571286 744182794 211732549 926943244 974571782 323196204 610458133 637931045 239875562 118373231 799160796 644877083 424250758 108531804 85116913 316969658 491865197 246743601 179686722 943157630 95189333 15741835 411315262 528910672 608970817 504844813 142214614 568949666 439557855 341415003 894945659 662203771 598400136 385754063 84202889 400450557 432730898 975066329 155601757 951453953 951710241 922156474 64082615 798805510 247485298 651068744 594011614 119834875 13811680 422861828 704447916 206920272 564025053 125005154 159836774 218824231 444573038 404966724 335326519 998804146 377066012 695738128 939657332 576133666 163705728 496599162 991541314 91074869 682770173 766104572 135647338 506435339 670830957 861837752 830451527 334479499 839572776 549804497 545806545 710754483 164971580 740756658 777750701 272733566 823079433 534946408 658214018 776737351 5700602 431764867 598394901 759117950 212311152 251056174 844229628 881100915 36807548 102485573 950710515 206060227 208147850 91140503 521776965 249730469 275071523 405468161 907969449 855667105 476710548 170854527 38509616 247946491 395417357 548165634 290869994 272717341 519158554 414861856 797408762 355780759 734587720 846446502 356211935 549872077 636153869 849215891 866599537 846564420 203929731 558497691 3800079 872128607 963036210 170986102 511378335 265884790 460086206 650541240 865676174 300964173 239697119 466032635 331397838 451614265 406346042 561132561 573568876 340462473 358757685 231896612 557550279 379118092 171756924 815964080 645810231 256728505 761521528 720112176 98231586 942445777 156757184 883990856 528590493 973278407 458156320 896095691 347075121 242064774 564044414 78747253 253758144 134577608 571293203 572600525 932165171 694773039 4157692 739408953 396784926 867911966 669149563 364422024 632212990 145832603 289935079 131474543 860377263 773499294 173921286 373601392 936104134 808503223 808603221 113767898 704884164 554247078 412670165 44232966 614191297 678190960 228947252 101219640 689253751 411827422 418290276 311832025 188564175 531587597 366239806 195656995 271940422 179910849 893119634 896394446 243949596 377948695 368772892 72207294 133509865 11626351 224437322 110520893 741997194 622348696 607757997 948542951 664665199 361553475 608750738 402626997 607749936 855308154 238884575 113945164 97565329 29903851 349537941 533388515 642468032 87904375 319430660 685385400 353269371 902770764 266875918 449835252 250160900 580686256 253622070 90154522 347656772 836727517 898893989 883931231 190805327 48792557 882028157 242646909 281445988 539498558 706617931 175603770 204290455 241926998 257229759 522983219 296511986 319179903 221160439 840799967 156042964 460366204 933200928 37852811 625491088 825386866 207430179 870486769 433162916 43780616 538324115 713541304 182585959 547557875 699521461 280095821 222108944 143100994 39651213 223510586 538031101 378716346 941693185 480141140 779202186 959076659 251737903 279987920 690014927 669905185 599557792 539371317 863654032 387816124 17213293 430497146 122899764 820018843 968395370 211795656 762611322 600245670 509852065 868956152 267763147 876480769 839464535 54014111 271061132 69518706 173438564 110722801 696505907 686037470 308441663 2587490 655609834 365865257 822857325 456689897 917919517 730057610 75605460 768949725 121998602 242333138 571992337 511525585 255054040 24253949 637016836 269206780 923903050 868340747 408343716 213635315 526334663 945908941 97855266 828336323 162023225 823454579 421446 23529778 669209897 333149322 316409676 458585742 16127737 273527373 821896485 892560483 322124115 320170851 643266626 34388498 66926853 391248032 309651484 183184335 440984965 908353213 544990843 927459424 818168415 830493301 564468813 585598 72373946 939058337 761880822 326459374 866828080 288059995 797518683 795064444 307379829 581711210 449571021 288370450 633930484 595754616 670984034 344352801 391175025 23155747 509317936 140894745 78429328 245695758 614891647 202301230 481891093 773390755 860436975 858039599 123909687 364764830 204663299 135569854 765748971 678564902 454385529 656093352 107156226 540567813 399925781 306622963 857913811 930606565 101706520 679977684 604781066 89600325 907343132 418337622 213199708 346742993 603506699 541940422 616088039 261217022 841917419 486343581 222912771 535935009 19081613 341165662 999925708 401284785 948209103 126360728 860741734 253876263 921385463 899784884 239613021 510269594 204404977 675397120 755035102 497892498 534489066 282592861 720915323 534349326 656226677 99955048 705272529 366152056 702706454 692804692 286499507 517942742 11473297 335950508 505566931 368430891 650933804 626928586 974744933 405373888 81696381 509341833 114832344 871696426 40371823 65753159 930681286 597280944 802718918 138328347 327891140 792683132 724183656 197939344 375363337 773527058 262253119 893823570 969602450 859970044 312620261 374139108 55793099 861618067 252958408 10478771 126059104 323081175 791475954 465772982 961506968 380353521 663312618 536746352 278186928 421861338 321112199 550130196 757285312 614973821 58374359 484066362 271594735 620321187 689065509 165758976 857628485 874447142 167190245 714540407 179424080 813403021 858970535 379451834 496237750 956007625 150669249 609954162 843896789 91780050 126602622 493471304 359604547 649533135 833199037 494839377 9543529 102852746 619139532 846025566 221581017 221854344 21253525 769693622 101528277 369033258 665340563 918843574 490812508 28164982 58244747 640704501 943739336 990848395 751960769 684201109 917691966 200496412 120620333 290075330 24708396 153463831 17067544 300327455 964009874 740324014 424308268 276996150 322851035 749737106 61907910 693959536 390344888 761868901 386940365 894355836 415049625 81398445 521140086 842480902 791065036 967391124 575106746 524450016 991213948 550685600 22227240 399100902 688603520 476835720 38406320 582569979 575732656 871586516 961207042 138250032 870056116 509904647 451835018 422955012 46793012 933038556 635997528 756419605 585171375 906480392 951947243 707328406 470375945 870099401 611030269 158494764 68456261 885245755 994599028 160638810 523984982 868506563 54929066 439988829 67342253 294344273 655318848 831034598 980084849 784943963 304500188 990945346 831417495 662702286 694490507 298488523 526656795 206132607 171927824 354869567 661007845 207569975 499651162 446160152 501292933 65373060 291893623 192614574 725288332 551664049 776083998 88356363 132095860 841897823 881106998 712325048 376867474 74605077 445241690 565955898 291323130 670438348 588322296 428122984 814951067 5986361 266654148 914798581 734596552 820350226 711566876 498242236 37160512 269075313 194467511 694749782 2895118 517834057 926610697 189164330 599521052 394852628 178436351 970307421 569467467 54524095 342581253 298909044 215244919 361434595 145659423 167039757 43920876 750648712 230689251 549877605 527301391 772825933 140366653 685975220 406216482 958266355 507515955 414379205 260891918 346522664 629515288 527992103 326850106 62513212 796761839 203135232 969634722 482028424 804525268 242694752 434547607 864841908 663379939 903081030 936388085 737659720 459807146 968858312 568335357 978566171 250416534 2844062 362624672 530032317 94697121 409171678 797872119 390250918 744112827 884179084 236423260 311955789 379440048 860833137 133951909 767514339 728333413 589285067 375717834 67948001 393063111 850446362 44374351 733214895 200455338 794712536 535810627 317180884 843139598 209318468 857646408 786032505 710084323 456841715 163605872 604782940 367739328 724117576 216152417 106266848 785939270 151724458 677975303 276347188 301670560 371200204 400080401 973008495 646416546 301646718 238698647 168766300 987949079 852354925 145604627 724018027 318857408 2145351 789607443 359973653 574506452 795709423 32768148 862822187 765944016 569398720 939962344 719823383 724268805 45510492 452180673 492205379 503925278 193735196 659440110 238379063 690430803 618534170 687041998 19677101 902855145 763884626 269464482 131127326 241659679 487421980 621568382 94148056 676220798 867834568 892253573 999928143 206115914 483214056 274521231 612883550 441891595 753964651 925187848 711391974 278576408 804893510 839769018 847423295 414387894 988552065 663570673 694598184 528769410 901064522 630813767 186403760 500206910 782394590 558973959 289035104 854207199 890818900 119000924 227047126 179893192 223800979 97254496 332759058 504433506 309315779 506819166 56322414 708578780 316205498 457393109 130820762 131008910 917140902 879408462 696649552 890443221 984211451 41439440 285160107 699532883 110099003 109380347 388162112 648758347 642565866 633376455 445963392 160481798 971294415 246355227 437859186 167979822 497528013 146351599 160526647 662259144 630630733 461421929 478084042 146956577 317191901 910071272 258182972 14541219 416912739 689734858 292571883 54062242 376239546 4969037 729832585 645441315 64115188 799631562 917550566 804203196 842007469 202113182 245536211 298058955 354222547 378628290 746973488 225623941 863522368 945529885 700805847 819963837 607009781 51246950 558474936 681567147 896867916 972090801 789169675 179759186 208385183 759638874 498019057 273749564 18058741 685400017 42935892 295486265 972613381 299626125 474923329 468708585 98427951 512832573 34915469 476140490 737081954 389285753 233015778 309804920 571080191 32743717 340244422 730524353 880451848 567219435 325651966 833526271 648545519 885684248 947012252 734334629 256159342 266238835 546000454 926866965 408149832 31510802 195251851 758174416 725844560 201966982 379841167 47793601 861379687 625628568 709006173 44843125 812135880 169728632 148988395 323989575 594550014 306742472 358397684 760338620 994642274 825069235 852120962 306554142 959082987 169425994 592373190 168221657 91716910 856950142 998387311 735104266 758919319 979596818 505680976 8991733 320319398 394790485 514150918 975575384 428832105 964115340 542610055 236029869 588993069 69190095 504593313 491977786 205688282 323302385 541036418 527831892 344801601 204139211 574204670 156758836 605773388 154184330 526466301 193441261 436563009 848058034 629555770 696671952 555477808 505582524 128199194 207174728 185443285 19149915 787519070 631613086 64198199 771200191 43058874 667150420 312315242 455842922 997532220 841879240 950024670 447512133 902445007 407410769 78596659 885707635 139287483 457781576 181139667 140484062 355835664 73807798 141494777 516096551 995622019 586413839 718591042 460510434 243007863 254115559 437525683 7008743 450425860 173387756 957085913 329120138 941508369 245527885 953415571 267853912 555883979 856481974 962332094 894905926 463374336 129218675 961712984 460095974 626370349 618371942 794624288 882685889 263771000 741288300 837302483 414169631 401865775 121146058 389112545 335296044 409021595 597662360 84404580 530609622 295718635 216328356 888571194 669557850 769076801 526150701 744001778 816161856 286597897 673417935 429954842 549721787 366826647 52141742 130292941 160303274 791546449 692751457 373007922 316681509 247128413 37122687 146511512 934931385 19299220 409355005 109945276 231124242 786433420 406434051 700238344 455418218 211200340 669756155 362091317 425355908 323745193 323689127 752129730 539968194 220697278 976497795 277131985 953006323 287816807 825903419 475960859 515778646 458427513 830835872 930895156 184562348 699574059 912250738 972291365 955828571 661589215 585185231 226994900 432892605 379988652 48566647 110246844 893502356 731146850 635630022 48246054 906834689 694560347 704766545 817659488 657830067 971279409 506915707 878362781 403804546 723404289 50877737 341727029 545319610 501940557 111141771 998617845 470475098 152413168 3054598 8033414 872106916 767450735 949161447 184802110 840169885 283608553 860231952 910600405 356960042 763834186 480384267 240111733 853418620 102203180 176870501 629484356 903952009 647755843 727801627 588126586 703551805 845919519 382555891 79162623 761678494 940718538 829165960 912380436 289757898 924363203 395999163 195394631 485504423 816284134 791165043 448658136 615897751 984661522 517409087 126050535 148937180 449048402 284375943 9313294 493578678 177680458 854569948 184394526 106077681 254205029 354238781 576786865 992149077 223035540 67982165 188272244 281160088 279786209 783072317 221354161 932190905 247362027 727730266 768196313 177901950 18072056 66851174 254275925 896186441 34755179 781359779 199438847 216304282 834174539 153424026 725492830 407266921 561862963 163166388 595004783 970806065 449734202 420118220 290267313 16275145 738042979 639581089 702742557 636944611 785730912 937215336 488684272 522593098 126532492 521060906 90912014 185013263 501057851 160819158 676794663 954054900 737179816 702747095 929482625 751792710 566046398 166089202 151075603 330691503 16905665 723792841 352631298 170699521 613855891 892673347 576735069 591010351 722533843 725611292 310023718 311250356 84030056 345338838 447398925 517636457 651491480 170948063 448544668 355737383 265580130 815336748 986747824 601358968 469957092 659694796 954648918 528153545 789839973 686372173 664905696 96662030 255848931 254163217 727416688 861182023 423439363 742329728 47679075 755063260 388140839 252097755 462066775 872755050 512016748 659267944 288924020 603357769 539130146 816380551 756572100 481093108 26716177 125896420 669996912 928720775 626638073 756473853 19134022 422582619 919025856 373250936 649390400 83710718 638811818 487089187 160579617 127726084 300290345 121942507 990614151 90894268 294014503 302008222 279209121 444551527 211495072 402777311 42232115 112839091 371689099 363750741 476239200 885908694 872205658 303697919 320095755 103627147 200393181 551634208 58618681 172242482 751545209 260431274 376182054 459633426 186082988 344618507 19714462 795793718 177080873 464792815 345255531 37090538 986564549 411653661 252611716 658594317 124500900 185573015 459277989 763602891 751479573 888771802 299911044 290899016 736598080 930128248 142965307 153620305 813625168 778395843 60285075 126356335 295001033 560329272 834344812 557133905 116988951 716881350 172959590 309727171 722183952 583480271 788571635 549827607 918232208 423841675 418500396 366583664 547374273 442844683 458616518 416882831 309086390 446918558 572664211 323467603 912064606 468644735 238728386 342069090 644671888 461143641 319912841 889284305 364676154 487003427 697650485 397499480 879917146 69181972 78210784 588957505 338362300 38930536 435344153 730734328 34227827 376863459 46760352 641707338 405148748 154847029 397888178 318715650 230091516 461217003 813681070 857613006 540838399 856873390 823809207 654154841 585067921 985376058 75532506 8615527 127691657 420253458 118475365 281197025 668108720 208555911 387007621 762756236 998598724 779821096 316574439 388515382 587203735 822737568 83174572 534013799 963644404 945146049 551329489 448898757 336740067 437894188 25319271 695302810 956175187 682668340 36661592 366573783 333290638 168708105 621113206 346376064 353592780 171896808 255293253 671239388 860382865 454207589 791001432 113572812 493197689 669176432 375656767 672259546 29324027 798528217 761056474 207838085 308519404 127484683 421908165 784839321 789421620 250601141 336803426 315562610 110186032 475959562 843327489 87260486 136213136 985284588 812728979 127148495 853354647 256545758 169141399 862865029 93089396 959410516 380910298 365800549 443462660 275680839 333644237 406137450 77430107 878894164 923837080 973862740 904477794 793781309 506025631 775899516 219576332 520807243 968015117 647022989 661691202 956259452 485371041 650332435 6702066 138411860 69637678 447579887 571893688 997779904 803057374 113630569 91510247 472994951 194188836 335586732 898122931 751402830 762164161 787858639 610064851 583493022 100506699 30001461 66248867 385520822 73451623 266915451 860670058 792936796 351954138 503086082 761290564 571208338 142788630 702547394 45177520 58143849 849530053 641101483 696957107 471879383 205266299 578789891 584415026 142490447 584357548 519621102 152683086 300235312 776785135 395646214 892206514 923845358 10249012 171120402 110974242 298152346 628808157 111133756 981621006 910413673 267855318 283161659 831786482 912601795 903514841 230554750 111663926 771129290 223220094 438461935 797854586 906718541 738584007 311567724 841825545 191367770 116058608 232086725 451935094 282373381 991759667 346836395 739829155 897864250 416416632 170313322 900068072 303891195 258475878 168110028 31747881 669741900 499820000 819739258 210571972 546663672 398056163 55206637 585046320 888645991 280687055 803288342 685815145 552792272 121726892 359533266 111019539 118739976 705566610 406127739 322190823 33559594 317619058 420459321 959748271 853197277 667885454 706059738 188557698 333571373 368411463 416520110 667913672 785453888 598938099 250146794 610563965 482771495 89341359 823365921 836036281 641289577 201186162 878272647 571601230 939446785 206368934 270667026 232451312 332757550 748825923 371434345 136198007 69786089 842567563 93510312 999191428 977341485 171225621 130914593 547448777 392742963 345110549 185697913 183837476 182695416 245911337 774700997 595270863 842986494 595086435 208020119 7793091 640626090 481973301 374700833 560611071 263992454 874053821 695874281 472671194 368679741 178613266 278566679 551073293 891000069 472665019 807247636 539188750 960935957 6092411 455843002 626806351 414371877 784919319 199689996 235454806 237828234 872370763 955755722 448620906 925961445 125473457 200701626 213715568 628008660 159259675 677908635 274056070 894082624 344458669 294062521 406456626 203739015 445258888 637886137 243544521 910703753 207594693 430437816 911207626 460851152 786383088 259331600 159549911 240371096 726932797 936176416 435623162 687816010 674616904 855590944 412975792 762616727 790322077 390641836 502039587 961637312 846120594 285148880 393110220 660019034 160749904 781969124 868999024 677558687 805200453 155912680 602082596 719411589 852044636 46226859 394389411 182440788 433632868 746280245 214471475 465042739 509799238 460269869 472548029 242660031 710804637 145426676 530134109 883343398 8677299 680073916 50134113 245585961 659291997 97225245 649205103 351684893 151688186 496878912 360695501 232932097 337281504 44387217 876877665 475628027 87753540 70608170 900285714 530178801 643941940 627122601 833559847 329915421 379959749 464250851 575751173 412526594 902454453 425530514 912853008 356342087 486364112 358988215 787430268 364074860 170614273 389801679 412515050 908436114 316277842 443542268 182714011 621500342 80535592 217814506 275796544 653357544 591073410 37073065 344011374 43222284 598646599 225101049 909731843 944676166 323454854 620930223 457608144 945331272 197479780 437310683 490406627 141146267 492834089 666933402 6996042 149154422 24539136 470580764 808831566 329608330 170599974 543647021 275047370 934923251 122275331 435116380 989825116 864600128 949074781 182122728 904936177 161709398 99658565 263807912 562124111 9556045 513733494 839911962 798045480 732903995 446181000 427528446 171276971 413033416 306868778 429716937 512628321 414552902 802047144 300288718 423689461 869199768 385838154 584710729 366877774 3704436 301282737 716809543 102821768 125223953 379826441 525853544 433161713 573324363 862784553 877780058 845183180 996115463 607216580 315696903 58119104 422441170 817342057 529407976 897873165 249589569 51111159 866989524 944978068 291825775 651919290 956123427 184979301 544451832 884576427 504392744 414842654 417991537 509146533 538823096 77296764 543968864 831587246 651661971 330018944 897102944 462259037 190642030 498411629 329699378 779410286 100293223 727975066 502527905 100751531 174234286 801662292 985556657 819404003 285525903 984023075 525706915 41874704 173379969 323170475 49771339 569548376 47842055 753654532 579944232 613480511 758560700 99151328 961057274 843929432 679909622 946226581 533231036 643530975 603182151 298791279 27147010 10361506 148201898 925347687 649220190 470246236 881533416 960503156 764316391 692428875 330848209 535860671 815918049 101240500 905117595 20644883 926172479 210356404 207601212 931299706 627596121 479765717 431272446 540613576 66091751 186571935 409718107 940789104 620718076 66281462 952065097 553027288 333075395 434252883 619420631 734501806 828566470 427876565 996860869 922884764 600537815 293104337 544236943 327235573 519312413 470690368 600533876 137575412 174585799 794973199 874770320 685950798 802126286 256561196 197988237 925247371 937833597 15265821 884716094 468873125 741507801 904138870 150136233 589722520 286247115 468760422 200817535 891611513 531511971 394738307 576766565 986051459 181897637 540762327 317126999 435427085 931364213 38744504 793743861 426221496 14572505 517088091 372590980 72117744 372840447 702952232 626669107 739196646 847372727 744798645 260399993 350456262 165899881 854725736 208799066 329128191 199160652 918192006 554678921 870034978 716510507 780851625 393955780 106086672 722398216 96473462 744657317 117362957 936122225 633416714 53195288 621781392 902699775 899736204 632868982 564783969 731398546 145102924 739735817 738109298 908046102 740389046 75830368 769906711 916580758 854882178 160025709 547700764 988789588 442617838 796588221 887803393 283961527 475119158 366541122 647621700 209981023 189469456 625703886 259043371 582794747 21937244 656321592 41015920 591248842 126788578 247587202 948345702 729692997 517403279 448101014 795920533 858244371 941066132 552820314 805276439 547339252 852210606 78770064 644797628 515953526 3370105 670667086 765353541 528546923 552913273 231535938 270494644 809792093 395478472 506482870 286856651 116303704 443187605 819917472 433735723 100131623 314138630 397100607 360660495 131336676 73566459 501480507 449355335 35118285 592136108 849965199 377838739 387921412 704511066 998101262 860717044 56931217 461494083 400969616 917141465 978618764 503002297 398528545 999320091 965899328 748758696 317024402 438755731 419769708 768059020 966380577 429095652 890288209 175722347 773235884 543028287 989888119 862910771 329014435 172913386 127422248 465659886 4041497 58207685 361619067 902822618 216188579 980414084 569815588 639716724 242823758 485523502 964864431 446255195 654265276 838399965 266015155 696440039 332372085 165570787 443275880 524302386 170492336 389331934 887355990 80878854 819708595 165765787 495549638 93292169 261951838 49994862 241512194 170972231 223154325 160839828 513767131 917865756 502116721 77490537 841045137 48185408 527933083 205738729 236962618 716567652 513302893 225143405 440743568 103639361 501597678 333292103 236587289 175810385 57231141 425756698 839183969 950280031 864165532 450495307 500678143 256164234 318710252 859943290 17316996 986797768 33207154 745920113 289950080 331996260 960089123 730549141 575189322 557634078 736873047 876167398 633897763 528891272 622491145 521022837 528000134 711444652 289233198 491626400 845266658 604872799 266422171 128893315 954174889 63562903 741053261 734825442 742464791 258056920 223856818 557528480 737989025 350816320 160592142 731456068 505524315 530534159 30356394 912032046 715840616 268038446 293320596 638437671 313061189 489764925 236808348 736961284 76206257 975538941 392080388 634897677 678901390 552881105 995966015 619881805 353753472 391299246 161111205 484560803 235721483 623658792 526438663 444090033 582436750 688926378 398739167 728495762 128921501 483696502 706914690 541052449 11851135 13570278 814412004 981945737 56957637 897784320 875274738 139255108 873910688 615346986 620570449 760136453 533166790 581215174 632757651 883696279 243801876 895463404 927561791 757439409 869644738 199136161 127424366 101880553 429734857 122315237 626508006 700060850 201504928 103952915 934618266 274907941 576742091 632072136 32444665 674719895 119257090 330832989 7353349 353813429 105831934 491957104 815576543 966334972 623069501 742120610 895959403 446513474 832935129 869901040 831006593 604248091 482716604 690887754 634378224 799924317 160406991 826095909 876781387 701233133 633744995 582239588 350027198 940807496 664093985 102562612 457863451 898881234 637870697 734483353 20246591 984768336 292138281 367543558 501252245 547242041 488619318 743249864 758925314 263450008 306167268 221797648 88830995 25712381 340452070 977157065 816630357 53675577 430131847 794987575 812928681 291321632 778557706 185300980 471622167 339281442 28585191 36036306 158890401 195431209 752868360 540376741 670333207 680680979 540449787 661739342 455259062 723222669 848415281 626475696 7056702 637981764 568798123 533325768 769969408 703678044 170091817 323149750 364999253 864335298 253841455 276963951 168318166 246769629 497723999 730714205 964750031 585488164 503119044 515953493 761418672 689398180 626577221 682589246 844212382 633871499 155787118 229058838 824522735 529655948 97228353 418101244 997103108 763566792 570829009 148324200 179619694 141500899 307469977 849398919 968051140 483779663 573324311 211070498 788623390 600187470 468782447 153841297 177433337 455989818 81430380 361963819 778666490 18634806 250543262 263975574 951845239 830529315 77497513 527272926 166196453 477275826 386089790 236813591 865045990 121178996 302980758 134911334 409237469 311507681 340674082 604879581 493879831 556062522 93660838 686722018 499782272 578359414 144469407 678067384 373959334 710476334 503544931 715187688 305405493 876240143 932992145 594988307 121624050 177390101 526879341 333675084 312194791 882120932 910794549 873129724 665813989 720875857 237899290 168678889 753964774 15058025 315673931 128217740 902187429 113643390 463911432 364126080 443933713 323351083 845217986 135260775 187428721 538464749 343942110 455144375 895492384 110751628 465339412 558286776 124697346 530895100 830915669 875357316 365944468 716298743 104381484 904951662 979859705 527684020 540572231 300711426 377440054 74957635 92687041 131908457 258744100 930059151 866228373 102706324 69433726 129581120 635852483 950776289 412258360 142782762 420985429 719109787 642101187 806510182 514353034 373457726 784252144 284844728 917005857 459846763 883570409 206473774 545876433 571375033 52725758 230459630 600240468 597556621 863306824 849893877 230859652 142233835 140207051 336471180 925795919 135552955 467691015 799967220 19336790 389825180 483995303 187566151 788948877 279907274 294610980 598522799 700298307 507916329 978126112 312900047 297600851 331292870 476297292 928682266 790851248 732638817 628777415 182172943 394969306 574338331 12562989 70724333 530137028 888707051 280564789 62954170 570625556 897806882 291371518 102989283 488428936 792511525 91321157 723136961 754852881 117110458 652094787 92577389 315391349 284368490 782961970 405779540 679479299 938804167 652087995 422563591 953855163 449027056 842623784 677416168 275009578 147305483 80013099 103195910 389330255 283635195 359872917 813487687 241513552 305256256 375465325 60085149 180594516 336216555 759009729 167791621 108029137 596498744 600742991 945592683 636009092 763213898 323594667 390919974 438470118 632634507 976044811 896161324 255308422 267481664 862677272 446388595 454519080 155377720 976530073 938165078 432304267 960557623 66501729 808660386 331543684 494554170 375794001 381790615 978262259 233180583 307735123 448270321 770231740 549098128 353893240 113860626 425773602 416468056 695646286 946578144 220935367 176113570 84354909 409870288 90767119 379857318 116842183 667575911 924438129 634611660 537205521 494264902 619100588 863890624 491075364 965617226 930805200 343177195 656286360 989650014 307473819 638078779 943728250 977480735 233435058 250915961 189978509 175170822 366977463 43725475 828169795 637865577 337331322 180494558 830827072 83570323 13087285 88546611 522380360 719184939 292651329 418652964 525148947 975224304 131874008 458441952 343253522 89469985 614569578 758060077 527519287 359661982 521025443 742641168 607087903 304711410 673957238 967836086 134934177 633664431 952803654 96223208 46834605 458027218 137664753 396274066 526418389 671717748 590193161 946390163 573452078 719029250 873082652 158055 779413011 275928887 88115634 977673770 639099131 998839632 132584321 829971197 595592858 87853688 17063840 183768978 825049842 946940790 598391660 248028388 156530809 137649183 17496585 147760421 322033998 232684300 807907482 897405699 807908788 627350687 269735079 890338497 11417500 596884374 695668213 155531709 686003480 633434382 389158790 232314764 408865420 571299748 783812535 248410982 727784679 853213139 634342588 581218153 936183355 583736914 676946813 705265445 87534353 291886393 954346605 304284249 406297969 310052319 974236855 982353591 230016106 662946744 993500981 456811793 373374415 881053253 475629852 317826167 77760557 954523490 495672388 975840588 630832177 263523067 945202586 333514155 379555708 662086848 786900407 142215044 769083001 932359190 816668119 117699016 854204665 153199832 914995411 555085194 946429578 978396340 71746650 907601477 681321860 717305863 162660059 820208457 45930675 832480251 83096263 64691079 81506482 270917521 460584087 807722945 478075614 339605764 504417177 488896274 825407022 839382573 313976638 177436339 279146335 85867062 457063519 886245301 554014960 462157626 846370182 679072772 710501128 573175362 240507376 839290720 504046811 435663467 818457438 612832128 339287293 270943049 668393190 543294455 764659164 71473321 210171734 53822622 74751658 996006344 54101126 779548139 177346085 61832019 514493660 82123355 564391810 709633343 338268897 338861276 688858165 150531481 673338761 72670294 894999998 199217704 39410027 410400149 358606127 521969926 680336025 825431285 136100860 177096886 829584818 294819218 7737111 116417439 841215166 639089429 451854000 937407408 725952854 188719447 156455489 306673082 820966221 342590317 954886373 251969114 702713566 216744894 685361389 259842294 422145314 101697224 95205990 453533738 349699075 460080398 975622802 227839876 360473368 306763862 494144276 267457376 533113637 705843415 8477522 916125617 490192263 642140982 901772650 628592086 244288672 794660968 819014674 333236976 342383107 29261122 85741924 65025192 460739284 127649622 569486477 516421156 390057183 107601657 876926153 965393111 455824626 413398477 575728967 724560447 266200881 897547906 584393845 325762829 600397953 589514150 996279409 134384243 571007589 990855517 221397966 92083830 108590083 832294318 978974300 921368378 691304633 414119277 345453112 892503322 59160726 956898106 709553946 93710710 860223565 707165127 980758412 489084042 220918759 545290671 957703655 930749261 745593847 639564914 180176886 238560043 530301560 755277371 842082586 7438296 854924506 700000605 269165836 218268836 240310851 735118324 677125247 445596158 736884481 377815454 314678875 446121597 92620393 534445586 680479426 881926601 287928679 231352442 323072596 256338150 435311826 631108306 281217350 729708959 595648626 474736078 200810254 909235355 988615574 467015219 647799539 702211109 873738665 366712272 872653661 840324746 8779956 911436729 605154313 954093272 562148622 406290074 692482416 843600799 528830708 94279008 982122331 511129724 148046097 309395652 317385800 376111719 979769709 578841386 980364074 122702577 801896345 284296695 46354286 883261448 736742472 77969766 529323993 457259427 403561359 106788595 939644093 226880975 611307360 376568933 295009693 994140868 820943255 910386975 248981992 268271735 620891440 893315720 339171232 266151598 756654934 211269792 782077561 983213601 248992607 112922777 565840626 930770380 96598350 177636939 377773058 780651736 16613280 107247328 911154796 615961003 437240908 728699128 836994386 915093149 413562667 31874097 704186554 343721885 570180048 241371192 817365624 881179021 271556808 470058212 363145291 469440861 375578450 972853610 788321617 334098545 19970288 858834914 602469186 623232746 740912285 351557432 496839972 550412724 98130400 393943770 687679752 34811942 782002194 854137190 654059757 152006202 534277236 138643732 298116453 505239528 588418436 492282352 231337434 303525972 334365984 730830143 903744874 355575871 123549622 530165258 690814836 19234584 857584943 842682675 235994585 37005356 103917316 544842852 54169743 603387250 492042427 951543290 576766023 293664688 942560436 220684901 238234762 411929141 430775357 160830619 6207324 450755286 287265913 591702797 370825385 550322946 993971479 582123986 486645347 694451187 741878772 42194952 902193074 326718539 421002426 994995488 576629632 642701935 720550844 592202664 842094656 365324157 812916996 276763170 466039183 840626318 261909649 979448649 490730282 265450703 289617456 718089343 168441309 561563190 287285430 340613176 517760531 35238409 770223391 18228259 273392846 369665092 303881408 982167039 317232254 26869050 520872679 557481236 81581084 607205050 601987617 720691625 658795490 977871705 292920370 293631241 507135655 125609035 547617600 9562539 361145643 242208215 186414742 912404325 742796481 862805129 677011022 47060730 215191195 118188795 230713930 647652796 613399392 812976279 862204529 153005973 412522885 948628695 297492490 66620668 405890651 357655113 239845873 197824888 677656241 589820562 855268716 973051509 524090631 517185401 331533349 426441445 539257078 794002995 13682819 88245502 441724564 10496656 715893521 284137213 599113097 340501454 925052458 318272371 891825235 49813440 616218427 378375366 339795318 60691441 906911667 769640781 293014026 513632650 434734512 410056520 782392050 162610532 364599324 305264866 474549149 718606986 579928701 945609505 376669542 209504960 698452005 893599700 620015282 720318597 427462421 372858141 570929566 70588840 736188968 978412930 9624408 233447349 869515998 158121996 649686665 324768062 844272165 386362944 556855980 711727046 741606530 584930917 551162574 422794983 10610715 668177129 560938343 526183784 969321617 244345159 155818263 688400317 675648468 941251500 329461793 324695382 414722665 86942748 656377834 945183928 215753188 912577790 466433681 851082129 782929130 277552166 950186197 186576688 43821551 953601586 669973214 641668768 336086881 59645644 316835860 81203871 695172628 524768925 10601487 211017231 867954568 426802803 7007022 481878568 294489601 782484973 714005957 179420787 202561114 552004667 882452712 785078455 187600657 183862810 133014500 538094215 780471140 803957525 466196887 718023519 395235369 447930156 506314296 81876542 661011358 230546117 742186741 326723405 791909624 662278330 12492518 891913621 180691928 32441403 308630062 198543716 481025755 496886878 560456090 360747418 613550579 446442226 161059 147855590 871184965 651565268 278893502 901033041 77709468 544466210 54428613 828423987 29827124 925918268 291295816 712552968 74670385 464762643 547462238 888719602 630958700 519543546 302394157 269883625 842145596 954291426 90316047 189698373 632205035 144349774 360760815 275949359 538394908 734994434 828462920 984188693 397796713 934751804 242592960 340331153 282268879 279707669 514898303 821615616 829984261 971462938 617321936 864726434 880851462 201622832 945015838 279478443 547372926 784142590 780619392 185600499 617122387 494309358 273799374 163874855 510579023 448389804 662830450 635166188 187161406 446706940 240149003 356049702 373656694 839013969 362754669 493360063 686796881 166976096 644564136 366184595 736329617 984169079 622353404 360763189 514005058 598821706 10822732 505716365 685002072 842856810 517034680 477914140 748274237 247723337 654579858 451503554 418069744 447783662 800537571 870185660 221394607 973981999 650142382 719431281 736229230 991811399 939717997 69659059 508407271 937415001 392476186 803982045 417123834 754883849 53361575 531909167 196152993 963080632 771543994 298032597 575034732 963464212 842511905 302437941 268652259 803140035 532270378 473733046 76412820 550868381 275814265 445336005 750173511 980454349 166567693 641811985 546257518 141587315 946390892 554364549 615122687 409641191 757138702 107097352 697568140 326558305 223424416 695130971 317038087 921256522 218274746 682736554 628755910 968916500 520895848 164717927 399909008 188011244 775121606 746021363 961489055 415677036 783761753 768899630 101832712 506626002 294224039 654506729 267597652 567110570 549431217 979584080 438151082 178049682 689223337 669816734 616563264 808449722 413342130 22600713 965740719 708253544 42865911 630083482 925659649 555688092 641048787 666485743 688380681 897947507 741032926 817019333 815199322 367006944 545053009 564835100 971173083 499762714 764802596 514781220 424103024 23034925 744547744 622462286 773816379 991244791 444744601 776654712 733019922 687827386 752676599 822221413 878376944 548688958 870773710 347212568 218376534 187645159 901772736 241725685 209175803 422459886 935415362 765606528 68350605 956845913 201652186 342265784 158645704 353762116 928300201 908683395 614017064 165154073 342572970 438309339 212769031 824864931 77517978 653887110 238867392 419580392 906498641 287312773 260164556 637804077 398195778 16963137 189550973 267348460 932830380 262884871 865034204 203755807 795470142 695174532 558832972 965261274 239458311 797418574 869964621 159736833 441301675 381596855 853421023 317802480 697673063 593959547 344698957 508649123 279210915 767329551 837239452 349816225 57105608 670811819 569275228 314238424 191295947 411994780 376336267 518894395 115905662 11613546 445890844 127171177 217685360 432823374 345297029 482907380 13844272 250773920 28345452 631319031 595739811 96682995 332162545 365259869 853468646 697112833 128036920 376655742 360586212 136424312 348017613 468003248 953092874 691849633 91399164 413901752 555861548 516033570 918662624 186656780 39336314 524792895 746803786 622122651 348793547 627580267 507521527 153007326 555648267 228141820 75208686 48103979 120355389 375206198 921102312 649113030 32490268 28473781 8529488 234060166 193645252 54729654 681283974 874796429 587404133 844473482 956448917 83140511 459465506 773806236 776625321 866132440 976276549 923348821 332192893 706537515 850277945 346194571 619480027 136403356 146483820 285691202 581389619 569303382 564927568 577142424 387183171 797231590 203544551 653549566 296079389 519753703 714542269 442759325 522332856 313922850 506351584 329030207 766891661 800703333 520293652 452311875 772852438 267557800 381555031 979391064 621552932 368030145 38905708 666630070 877199333 620455422 141570694 165330989 271951777 984247331 500755682 498320919 275861899 534411510 886130605 934783944 206900811 260843644 118113060 54588677 488784077 902144524 542201763 483581679 981595876 986273808 326337075 3849124 186211672 340900480 471315087 182897100 283829082 142877319 141001161 700267994 883426820 949380874 993768291 952742148 120798205 567127689 982536235 555672177 382044736 641673018 661587869 892363741 12866364 883599404 453796581 539109939 298133538 696902388 514431228 803554739 743764131 246281967 868483982 321317636 887320446 537408834 447302206 313895230 524063674 943026969 867545047 667547318 144555162 693054471 506090970 485118382 915983354 364831450 675853408 603838356 221572562 553055079 794119564 957875313 663596416 6444219 688225989 50621615 259937695 429185376 371247751 571391716 735253874 284417575 674710510 696074487 22878064 401199914 126978047 301789756 375244404 53635652 599481354 357511199 142022137 994733239 815451226 870883974 33014426 694220679 166941860 895464537 605617507 667860931 173273113 740883254 112228839 441267016 385867517 639266999 358959632 713159932 37468746 267774857 794678225 321952442 699156514 467820221 680749016 698827909 183012875 614565477 571440435 782442296 106151045 62653377 806474306 42985556 909933792 147455921 818568959 68303446 299198482 570906253 785522761 262629131 958196404 489214602 113835407 13249018 486826216 319543816 16577464 344030161 656975927 178392766 335236434 96784323 777684005 894919037 179479185 499554788 475856233 683115346 240643672 630204336 726335209 372626128 22290673 993108569 333120511 532669431 348694903 905999010 520636693 995669475 929651375 541159400 830742056 978067314 958750789 672567053 499907014 883698785 305739745 798185516 582517810 206506687 544737717 448845714 215320400 410764312 553667259 775412231 439721158 782411401 9048058 702048944 36961862 731138698 476114383 136951459 200293106 111602299 927946666 215500187 968735585 528618470 823234930 47043889 868240529 214724044 609064031 338153476 262157870 223681057 788938510 368265305 132932998 396982343 376914309 384793957 172166437 938830176 806460749 115089351 649733615 382522452 806080872 165886123 458563325 827042341 917011473 310859645 531006647 124679510 76019136 913438528 286943691 3490065 184601911 650533788 592858334 33285930 784381130 995363212 495393321 779610610 778084407 970004473 782347120 1276123 819837817 635898134 882747607 760407030 556999118 927537318 926808519 668238794 718740305 529683708 544161700 988783492 364342356 331744179 109713118 669969013 427295449 906344954 110754075 519181957 527085870 252613974 613815516 566190619 133583119 925644251 357473660 210213586 336526619 952940130 841395304 834762191 307159985 481086988 891084445 697621916 318367971 31090535 432012581 569889732 861309390 520928564 881698020 877623842 648993977 405838755 227999736 609743660 893740021 256862058 927852642 272995387 511040841 912167704 624402873 256032214 352074171 803633566 932328940 232557871 340391712 479051072 988041543 422411323 887028579 502635424 256173641 288688257 645138073 218377837 467827781 279236728 516827985 415055090 419923645 540013708 17674893 116423130 851537081 202099768 397082366 770128029 438058771 292628337 938273867 155646343 882232573 799827945 883852141 91132988 636294936 946717472 979638526 283089998 550036082 111093073 574839528 820709276 284212742 633987019 481358755 26485936 336680694 661641889 459185761 20804063 368397582 328470824 962458261 75487061 870863611 282711311 61603408 495069100 90274720 235538402 488028869 714404989 40561140 463433819 973482804 95866672 26529862 315613776 997438462 486861731 119631397 617675571 97294787 61749772 575957862 638231114 965547748 478517787 919249845 430618809 50919259 532641167 828891140 555781592 590620753 131979787 638757943 502834966 743035132 841647006 819457719 166884150 880947510 996397422 258158539 27364033 461408114 814550686 652480305 472458244 683068372 886837377 68460271 441858860 264698149 896882726 247747027 530228838 834243811 857856918 342162823 857672796 639247835 95757537 856991978 188947318 120130689 324514574 981531706 734248020 108684348 755119929 870223398 855408736 519248035 938381413 136932531 461192596 581197297 564829501 246682184 841674494 751093382 595471356 296640554 572726142 838581160 682168106 984400569 885005688 251256224 323669665 477081212 834870784 778585809 293314569 820323708 55554536 791630003 376092665 495323998 133818146 106143419 857586794 746259587 931755637 342083301 112366041 79533550 840834119 657746265 193480423 498114305 919925317 486259578 169594846 568940460 164164747 34863455 537280207 680341243 253135655 428391637 890187901 813732284 900834544 334518991 164087846 44374017 333652693 581342919 571205910 350563095 852458307 936153955 868018737 863301826 361317308 893905159 781797689 545451533 523947389 240833555 613817553 754620151 52444058 173609958 56011500 207834322 358174094 535788422 684813460 853776082 171814570 494390913 618121059 310794191 672060923 771776167 88713462 315632807 716486656 442005643 256786053 169457627 273501982 684572233 222328732 750274185 282067154 511204845 83278081 309439344 914655351 809410615 461729370 823492097 744421316 335580360 807596794 76640227 36292707 107818123 106302345 937278417 245868944 49484409 547720015 691594234 357204735 826475209 291059883 424546714 271056547 534970628 875418264 86858090 372718765 284851291 853596712 809448044 843814554 357233425 163743628 462800625 945882213 995365287 218672178 330643728 546222848 685778262 237655867 466774457 671526721 240204304 33216732 686279796 519785236 305725188 170721758 450465323 640792278 613833655 886992223 698564435 824007376 605187644 436869080 123733028 975479398 934561227 841790740 639077356 395768408 664602164 974079254 459640222 849799297 791681691 548469219 632851396 438413642 364550695 20341267 451072552 499071843 706965599 474230884 761725535 645981180 479665380 204009699 124636685 600639409 587901943 199811254 95129390 678560253 469918033 366753110 582603484 284438358 15996616 531229483 129894974 742271672 805753462 905241860 506757736 595306760 305050639 953536111 195701263 444286027 702366171 525014154 755322770 822141262 7577245 212302796 266093674 763032942 402688248 519328711 508081784 477028591 499609965 760659251 949197305 295336205 546401969 582072867 23954900 524261206 69586855 536638107 285256632 137426004 711685008 600130433 905304591 442923584 838559232 14865103 743175798 996058580 375400897 591600796 758855732 239088329 941029958 250039130 327136192 670547105 787757157 353028862 995430283 528766747 512942115 56091756 334947280 537237933 717334247 207220823 565584722 627027921 935504711 170429261 717087187 714195836 139140435 383917100 369253077 380083308 170595822 873769663 790700056 442515166 894367467 590114274 343692234 588442462 719358738 292854611 96077275 701726174 397608481 677433710 411810728 916559036 472256778 190765196 273101288 957233266 947148899 593290804 515920760 608003994 809228308 531895406 677864537 994286900 580138811 315911521 158732734 644069292 443935575 903675085 692452222 13044914 741352651 647534956 431958168 265401743 59700969 809268376 148624467 770328569 855525004 375447202 341270185 919964378 386261894 82983813 212424970 130077028 993958996 310103611 207633239 825557281 78396631 185485959 555741127 852952074 300249110 100296976 820846677 413857334 553448650 942038539 984253573 645226449 949326155 205480562 939711640 197699977 239338362 417421669 834697666 583987592 544513385 876712855 48001257 538245030 856723649 203511242 645875060 410878396 840946468 993331039 724222212 981867023 460050620 611802404 145096323 245560545 554977104 371867394 771637639 530494711 272967651 156151519 574396362 910745456 241991015 714241637 289717282 678384732 204428548 485566298 192203779 25631480 44067244 356864400 226099807 436883695 366026513 514053361 652275217 501681383 737130718 20948672 748095444 736225220 439406340 166449987 331308818 424226407 457011978 947800389 460698215 420134267 649115725 150974559 992170870 701246054 762669393 423757386 242555118 388262018 501308886 948377230 220182739 255593187 256014064 554705715 900021654 95208387 26580629 715010457 782123194 949300960 446355377 904544774 994163103 506349576 437178176 684357082 507056563 482689986 136777031 926584823 814230892 880043923 726171357 431809636 835701942 995318302 168283939 916553974 702880670 776676965 157238472 556889048 559179920 445132362 29493344 705609249 721574010 258274156 661162817 349804231 174905190 12763461 735786132 927279342 894001905 289044899 126802981 449146756 375866136 865495885 889470997 170686952 837321290 592643422 628961999 101955154 163276275 688887214 172845581 975080460 602814949 935425644 497966233 51428007 383199192 659663536 874020385 834017844 298646819 165918631 310436155 26632855 327134483 938672590 169914339 518151543 974921634 826663365 207355784 845903549 162773891 512182171 214214528 820610589 721389261 512006237 943659872 829958418 728202716 570045395 757418047 61714398 595017135 537315769 936022552 799236214 855537104 373913901 712592900 217440979 973270406 27139863 884717667 177189979 580189006 598922048 850632765 698987082 983762910 831410518 456576891 853678101 674905803 803530300 756707667 952469666 806376465 426349767 686903855 448891738 936526438 380639238 242380463 587326126 593688605 209673187 930671690 676993418 787783154 146494308 376047839 208032179 671205004 879518111 573592148 354228552 667300192 405038223 644491203 585484872 730695885 961359955 805242708 605784647 850858264 605804723 277407506 531174051 578641183 271611554 948195791 700507574 242176368 260630378 87652487 669982122 417140245 861918345 709559397 206882305 525979920 447869351 146663782 859654365 301019712 201415222 866449884 835209738 174396796 69357044 982331620 241186437 912189509 461962547 775405592 952171791 588685505 570539358 220616465 214845167 638617330 262517257 180386144 663389779 357711696 818823661 234338257 881463968 443586695 390511981 15069164 376635548 656823237 496851320 750442046 362641273 248062851 341469062 697839225 352145155 768304307 803677356 114897153 980631525 147728627 986528781 443362677 815805106 842378634 981213746 346843913 727428018 381923039 47858115 53641201 846228784 68723813 838911919 548999770 719208745 610418775 912708990 296855990 285770466 20642632 709436141 427176398 739521018 533689055 470529459 43613662 456759123 11797286 145312712 780022393 412643430 441440507 576472224 810877526 380581994 430621437 50910764 695507886 372816682 351677815 472661945 637031382 591680669 777037833 861814034 656461285 900495604 807365474 78563548 99726589 134143791 498254685 398247880 868099180 685918369 489928427 439420673 57458049 14968707 679780895 729175370 864909602 255774256 594533117 425756389 281085289 849064859 696434732 273471526 503100704 892062462 365103754 134183738 657968666 932646629 943507017 474116478 502926453 338521471 482789829 522838315 286893371 816134416 343214511 450072632 155704099 343247471 552728949 898499197 743735426 419397216 99538782 937308833 325057093 59675064 578936048 479739179 329618718 859618237 364772060 41101527 67242858 409048401 229710568 885409470 104104473 272976950 321163750 70325345 56952431 222932757 767236421 891093596 218109641 139371574 372166239 487551799 825991980 969107833 587435068 960795382 728488824 278683387 273740927 179472779 18097434 642390839 291707896 206857046 171688196 574861126 987964106 829044148 482759478 218133504 393232044 784938666 714398703 151374292 957392670 169545655 904635477 795814829 537870598 478225802 107031760 865073392 420442870 729212189 975271178 986116055 123256319 268470419 292907120 96131426 955284961 534984066 653491406 639539965 880867853 40264836 855443815 68285229 266189193 630951235 236545534 184238971 227061445 739567315 721695583 341811788 724329961 517271427 395052951 481895347 187819117 198158189 914123551 230303387 283311358 760693434 630198923 805259342 581585495 792059412 44154672 252788755 687789698 533941544 78093887 781737704 941330142 115627892 628098885 924584668 204953979 225454304 249408205 19440728 939165438 950186817 390051549 519479763 264364283 204734606 296529703 693976582 409276386 540499540 183718464 913593638 905896779 580294238 145498741 249118971 757827806 756471079 849596708 10059377 254434468 381396342 784786929 267788987 934623025 967771755 995730977 965999078 968052762 5215568 298607183 322107741 341378217 943647603 954040592 104389507 801625255 292428378 461340547 751397527 554023775 609838848 402553429 228405205 432745125 862645609 513273737 657900706 32889776 486578189 313445067 899668775 892092278 572419901 290746136 480635165 715625608 67815670 569793605 531147013 801046857 936115836 84611870 577182672 85557102 101806948 607489682 976538880 524230461 534466428 62850369 336740126 417048431 683205394 285049859 442919665 752712851 387711293 71495711 938404367 954274672 540380562 541279134 821479453 304633743 721707140 969087908 769977664 940411858 785003443 878241196 81149830 720321518 241249064 488580046 721440292 262440309 282344732 808153300 615532964 744707495 258386419 572218244 327662075 789763660 458866572 919120599 696710408 515061662 588628678 142021232 956481911 223511267 579586510 333680832 5343280 680939070 838332066 818307663 280349501 889876073 417204211 959081502 163209060 213839905 988399619 613985410 402398408 161818066 669093926 817659126 851124088 809223346 116041507 625517967 242969203 492549501 928797020 993026934 749051333 647744976 643705334 757515324 215383100 574531714 226188039 370298873 265965019 269791782 758031622 318214489 736251593 660048511 209544490 586992464 503958147 823451546 245431354 616772206 435730107 873271846 401524506 820555416 881271179 514049059 389102730 842512072 519504958 271584943 924765249 885523177 491113966 316749055 864404310 479466410 36526903 529977058 677315355 397220354 874682422 53463649 625378576 382741056 539375572 476900521 203099859 346816476 933687750 792120566 499815972 573221851 555071041 18370664 164815628 487988489 422835383 689316049 255240388 853666176 193579327 153931907 486849053 379106207 404679684 526109355 42829108 759658176 209578328 906392896 279818881 440946310 288644969 983742434 24329849 103222680 743047753 141919483 896878252 896163848 111120820 569644074 268874327 80633596 921097728 785525 392219667 403723594 411480221 640760669 749299694 906933736 917011473 659068421 283282797 192511568 100121916 319667564 523184090 969177567 255285007 92228887 853408187 688043259 226778077 910457429 339018316 633095155 195072358 690172870 643265917 287407855 62392383 407819014 153737354 988655322 956164251 982753562 392699136 88380542 73384287 464992387 300696762 424558722 570608161 637364211 478276912 639147111 637026313 298014 551591290 451230802 182113890 486990812 907880037 91957508 50454657 540272511 502124039 603698542 166630372 521965196 402759864 641990592 713007387 687170062 739938787 95121959 563043341 229885409 254270366 894598862 560247180 410887013 146757428 13596493 445368211 481083289 891128899 951837705 859283086 706828844 433120065 619184240 56645010 719823070 728509242 334180595 7368439 638768655 37856638 877552846 381293800 453415092 977868482 864905528 252808832 412392568 690863925 725536943 660869071 667420767 75632045 378002670 230244282 265335402 521982033 170525076 412986701 564688293 492169560 90510736 813467903 336168544 852390796 469185371 852692585 115439413 410743287 345185114 329533361 593885763 379872446 202349168 333583641 752995621 323192725 200336710 39739955 723602149 954529324 429301481 342099442 819864440 462460067 898726987 284781727 390762240 968133840 646974475 650260839 434121849 756585668 276775053 151403747 709558389 165200463 352325975 561270732 199723634 296326071 891369100 330194189 265973886 607896131 168391979 585889607 987794977 159269221 511603628 542012586 519926798 11854227 74305130 427989190 836788020 759850531 240612147 21814606 380326113 887536100 763624098 994066775 864001883 560687831 144152142 388925648 970212943 220255737 703450963 952319894 447085415 100861428 516090349 427204678 304866079 320033434 219608023 144611747 394076468 768520235 732302048 735930265 535181931 744724388 43442575 479289393 799493511 584906285 478407005 420180098 856123705 841150317 961497936 691097483 526244497 184290105 119372677 129615147 284121308 151601112 776638585 335313233 143812525 565983292 429836869 650246907 353361892 572547507 977182107 377439285 955410842 866076736 54501809 415305054 583465220 37110442 716787867 360808251 845204000 642275023 799602955 148754572 730028016 964607790 973976292 803054583 405260848 889149444 15563109 565284186 505555972 15342162 639809870 656493588 582929024 37086671 323096355 478098910 262534065 193758335 296451198 556605621 174351510 727975527 197477659 103030285 715511624 821776309 73243040 248291803 207904638 437529757 218618438 347534011 987474263 336530670 151288212 834473740 895565039 611050592 845239937 43263620 244081793 849389726 304188473 533598085 138283490 620745244 201122790 614431681 93683599 161060884 380799722 436286177 877099786 896578160 23238128 949829869 199212274 480786243 146945262 632343947 316886287 996730995 112735460 466185232 783706930 256427298 807293579 165079445 182830482 107233888 865410270 943956287 468161220 862679098 945589292 608940423 948237823 318789800 870110366 201980002 403021272 218373120 495395953 964785621 739959107 294369194 732288205 932375767 131431414 964646719 435577988 59934582 322678669 742569394 863377795 226893335 118984865 809899938 833024128 324629045 487327532 94258442 113910643 882697111 570869222 666411470 339741399 146161877 86190074 609159844 221681822 291060399 612577807 366433636 471900325 509293213 161106990 83614445 694403737 11081221 254125284 188317271 992097232 716610749 397289758 806166166 849573285 991457527 49388467 83269884 645381250 428929482 682799923 479018662 726161606 586233546 885968510 329086917 351368909 229184660 799796603 221434160 685671707 979263909 517105590 653149071 344332735 510951550 108619085 642623780 969643077 756915942 766907986 573434041 982120568 164786245 528529138 130840773 343859941 237029475 434668985 107061600 55724295 957426337 475188660 55297450 617274491 75895204 371005643 667923487 496365650 876154581 37005496 507124146 465871185 896038322 755801165 195695495 893648370 197308790 17784548 575027020 133593845 153291200 550168811 523053689 289729901 268068974 94582549 607519834 674304524 745960252 824571179 272045744 674292829 696964584 19673065 124174864 277307938 123968589 340878098 348059760 306754837 281257558 124784887 615089938 659056160 932892630 98708915 889276779 762843272 2570339 375866879 843660107 251486216 640023310 132827584 270573459 144512432 681522303 514411848 177503862 303674783 203321254 250646632 96309862 350895985 950522332 783488208 140195373 617466130 654655376 463241185 205981501 177769496 811791925 953460528 816919695 341986973 478254460 325129056 269304134 539675897 627814139 335297324 670384039 615352744 190877068 438820481 727014122 753259743 399197236 905533717 373497158 891319955 283221346 983082971 33262121 948461240 872971949 802217065 554720597 560201933 681087436 334611042 729065218 642039266 685539117 766236724 874943927 499001779 573904897 363953399 318003500 935285198 79102257 957977941 246932327 414370227 796210416 605521285 840646131 640479466 928338063 974146772 89605085 637278662 809941828 403024707 219770000 361826927 788852102 400126036 616016531 469862685 219785468 528380362 581579597 478639102 888970862 943711938 667667746 110865112 971792549 644925044 801309339 786904586 826100889 867240181 404321711 872480834 741014437 830379425 110486452 802726076 257335539 814230658 492441467 983978772 148892535 353879326 56675795 536492827 458766762 666441153 783732058 740665802 839857890 791625585 664723767 961000642 402297892 99598041 970602624 121509058 841884655 553078650 67160321 357236456 2053257 893422405 387646897 534820196 371319884 594608039 491399128 77737391 447407555 345144371 143440810 525587009 15905888 251135138 120080212 235244071 273343246 929677972 520519667 49183154 729916040 448553197 187455984 742455191 408407378 598231714 753474934 185817106 294932874 246152418 997976463 556626850 765526815 801823411 382095135 409973482 317558950 990374709 413541302 808224738 842015993 57109671 155331191 98398550 704058103 437783600 134038300 291054174 938257508 918133571 472954144 167749296 105870083 258929074 622746894 64996643 57888259 424291063 885830006 965490202 769101282 578222776 583531181 125609407 678439822 488184631 414530180 356067337 863084443 333670191 306182358 4038256 484206154 312814266 71751251 478836768 577199515 868204664 904304195 562169581 842908825 774335261 935834319 521496550 403476471 25988970 841228817 187746329 704300803 837627782 751085615 472441260 512263192 310416934 90819231 77081906 244872024 806616649 593459154 47646150 362325797 903400268 643746137 63263686 737019733 493276168 881330045 354140046 198887758 629427371 105065455 69234260 644370838 721622563 903830858 28693965 233429195 44636703 376793495 476455785 571897646 323833640 302841840 340886460 50154431 819811838 653124204 384952858 947446415 729859606 563403442 491617207 976066708 135929974 829221160 29223869 841642016 420127309 915519198 520827486 979573801 369591148 422761536 697743040 482235039 27416915 193802867 603682141 969675592 847223508 513749397 25076018 837305431 482432467 561634603 414629669 499212812 118633571 169163589 553053859 685530888 789985281 202596626 898623124 692250602 534323631 789012106 565867547 38309715 579365976 943931466 719155034 924044333 113035517 855062201 957931789 367490081 278960727 356682267 646582236 917626084 659093296 511793181 973601349 314643230 877128415 359657233 384623934 821062553 124792924 859145971 985884194 589916833 726311785 364985597 650076517 861021736 91954197 379685575 8491346 556288330 343200052 143720562 83411344 124347771 521850802 522907064 880793896 531884402 420488177 234730633 594743454 71351546 317173524 366484366 5505450 421934057 230008528 47186923 224136163 369976648 997448829 268577408 987232445 100744998 198867253 499588858 92043883 11965578 829530191 536440786 851081275 713490075 111130026 11387902 690181547 712210776 913762184 367008286 701171273 862033580 483826665 508638494 977358443 832537123 886132841 602118386 610194474 841680754 557063406 839238400 783786135 158034705 777540032 749198622 851621894 481728853 965239926 938478813 63289406 544942266 519976850 272446412 139993127 406452206 266512755 682681628 438872271 685668211 639357266 784601912 378258621 216850213 991947892 165841315 784362123 723068740 878578580 938521434 280189223 311832029 391650470 161334577 377966397 661777807 682600500 282568625 862589244 280231390 165919731 139939452 361782979 185656349 369841527 56070933 356872127 20236813 457893630 448548635 69637693 571305048 410093500 929812056 365155863 725086830 308710363 934843262 760972107 393808349 978210756 515351339 471813037 130272568 75694407 102601482 168318612 741075488 124298442 94480079 603405985 931557649 250502316 478530636 909842869 587092781 566153850 67173561 718393386 91323190 150954999 821486321 636250394 867986207 695636493 725299327 981340125 638742051 448117083 557891024 345957250 385059376 979653159 165706776 811153398 800872305 92454073 613580638 584129858 431891612 353404054 183715578 254697854 493269121 908157400 419568566 187261560 998078253 593769773 184092499 940217623 900074287 962705337 667258612 461707016 827154526 908610372 881562390 354237959 745528105 16020316 280209876 84270104 899199730 408532121 360702670 223977465 580740173 81006792 239573135 123820570 738749827 285540622 730951743 407897089 253904025 357728289 640681042 390306240 572496850 48205054 348608201 81313291 387207987 960077783 32434845 844778163 843029 128224157 124978356 938420393 558283073 153087758 962026094 960151511 893336844 695097941 605448955 632717712 647846780 338392882 803814051 728417268 64090703 145829438 50065596 698519840 762091451 784470839 236529249 947929446 46739122 162895996 349787641 978838625 773820513 954283900 502015581 846496750 437355244 407139589 309066460 982062040 96177412 877880921 3513793 495234883 896980494 325655946 36685834 800836430 907681586 409796485 788567536 847165486 834706436 78704150 740821590 114131091 776543565 356638029 777061513 863677151 270920639 676422534 382200962 201076512 614708936 410874153 268318607 662091690 233816425 569435817 753296877 519570762 160249792 478556992 849212176 618844188 780925981 520832466 645443057 744641430 766907074 830103788 685143955 3349165 16319872 55031348 498984209 49891112 339063412 407486577 753775758 682434929 122906086 167629835 236638308 537580205 44822324 339080085 481706478 786249043 116252743 559458853 895105121 323479577 341892117 803174062 556192224 860986597 498668929 729826806 82211218 963502378 990881501 772609377 644041787 202665419 623561696 403903169 169439856 777933533 606235075 56712875 396444757 548840270 379138334 719250327 408784977 254418352 598160422 246270149 933237531 653920738 329857299 41847064 444781424 373708116 238259371 927502796 446602127 198738913 481390686 134110091 503568680 136451743 757943638 578163311 305685936 676703487 323225996 687920086 13182744 999187652 434633305 872884058 431830138 92827032 332979721 820077492 479137479 559432790 751988331 167311303 884071095 241825714 183945346 234899143 465474450 466382597 40208295 840608383 243598903 187535884 385683585 829465770 176283240 17264190 166515835 694787842 568152272 942423184 694962918 61405904 360093185 261838460 391697454 722488572 614862353 118797572 49154443 901804206 28118244 231755863 457437281 701064614 844611640 245399269 201441799 630912924 829177124 680872455 749273213 951706646 743370138 114941175 33703851 244170844 340864030 405287797 218719180 485430683 479769446 220189497 542739533 668007427 22551680 81791011 570782087 844424512 1428487 321383637 707860373 134227652 146527882 998818883 860962683 214998692 282980822 976424375 216404909 171378462 66083069 159843637 869523832 835160368 936011219 406951799 994146209 719779721 569042949 256565819 466063925 532587108 177981890 477870699 739889886 290137756 566898912 49039755 870634021 825167445 243543465 755988277 681198446 461446545 93124315 286277500 679772407 846414632 127827409 256305715 14289114 231812692 599153044 407652761 951801240 871598755 102226634 677167418 889384105 610779092 475779573 781717542 517163150 719236361 314654109 945495892 188841669 655571920 797972716 377848315 991855211 96284965 114791730 414398023 215870102 254670776 734471562 891365602 893845011 35288217 198009688 168247872 309225059 307301629 980055803 415586346 491062162 690621400 410612077 341837180 490050770 393177098 680723005 886469403 148172911 699643170 317763187 513758252 715458395 455720364 983911376 919293367 440984965 858004606 569971234 559547554 381947435 371277267 91248151 67264676 284030726 596304876 460445320 652790995 896980053 937372074 82642073 749154386 126141765 445195089 73222002 74340290 829416313 458327321 985990303 684057338 505377701 527750614 514524752 250742838 586526528 341245347 451189233 377945746 833739687 806405033 885789899 211449438 554801555 729916807 844280495 21918396 551639839 744280607 746986001 561196347 414614383 758009400 302212661 5118394 503213952 759487932 41207049 863997488 294665645 940335740 335721134 440686041 248632989 643202058 234198885 27567915 466263576 604334381 128288237 268526207 513278457 428362949 688689134 211604892 820591860 32762373 154382447 984397280 555360990 755891740 95974374 489943175 790867883 163186328 431625333 588913783 66409547 251967282 107477394 956279173 553296124 406038829 553693215 773094642 483674153 782102957 416783156 567994157 365113949 421969767 720339661 518499344 462415376 450965133 927806966 453616869 616442744 870611377 562796527 109628048 744726930 433845870 210464736 37342112 283741411 539165534 383492850 139265831 351560092 464201350 630885006 546350210 330801168 285105838 539999118 995021735 958102200 542273676 485932813 13342445 128164363 908657197 914369107 758329089 155761901 752307824 668350123 961357309 383153715 676060700 519657620 561162759 592261536 502440941 825348184 46220822 517225292 870828643 377875330 326790085 143001829 253044453 924965837 971890253 417822519 784596808 795399275 742739521 617914658 415622114 967601598 567212832 877730943 46348777 456989034 561586845 304379354 784139694 667697437 664842652 565100039 671024201 201038536 662966956 276836450 409708133 531256085 28942466 528828877 109660863 386091470 867809408 990613501 712325090 115248527 44102695 936224901 72742885 768310264 709103464 126648723 857093415 105736091 657912790 118987261 136494431 640949786 765911094 584106236 641289575 265332680 577340575 396331711 774906633 565567175 706738576 935776584 332865026 651269669 631787219 886446741 901467574 422403544 648733676 511142044 875809162 535019716 687104828 488969638 836478997 363628092 557367057 501239068 273764808 429713422 974666044 468510233 710101899 761237592 299121526 626228752 29411577 751439399 385995859 764782053 177115386 73073158 594908701 881702748 714368194 337899969 644268895 886594211 487544725 654465841 324821596 127237037 808493347 810036768 505974982 984920235 709730146 791753859 832999665 772648938 359076562 926979139 488468367 494167026 399292598 597788499 886388650 780109407 757625326 153558450 576605389 542160372 681380857 287015987 255318204 946898654 74744281 812401593 10369680 807080849 836624678 918674081 784869964 985368437 575698840 332720986 506378734 459040094 919878905 53708522 624066109 727608374 628695215 301401594 724859071 718052063 142642807 392948635 992485190 96045448 925146774 238236916 451310373 335818397 842121731 543338904 57135620 351796423 511516444 680235986 149354903 216820604 690637854 37876943 752744028 458593903 845639264 559403961 699670698 261706628 180347134 317882174 688753996 31239404 325614312 537808018 129784851 674873762 455379312 640730860 614309981 604729586 818460212 657939444 932398597 774772453 77003595 362024094 121802653 303438091 853419554 800002746 864565361 635146681 427507499 157365119 455345227 696115548 674667242 431828967 589851220 454132509 742291546 324850496 896642625 60089658 27892966 609140092 151501805 199190850 745768031 121097355 866482813 780299617 882478235 870185631 717323336 359949985 443050899 580425999 423232901 377754532 531653752 861664147 276207831 932460191 282372225 461063482 24096005 494365530 8964730 502655992 208457270 654901434 600002826 992370433 621175697 540713980 720491756 498110311 141213707 393171158 884173924 562173946 625310241 768062909 395462569 387379118 824224800 209346880 673454908 108312119 341249252 302860933 367432589 408516472 197211098 489648201 159393993 608935414 139611971 631026512 449635222 663050613 282807216 737320641 193106077 949173709 157814684 891678145 247562028 431155907 216438687 261752711 991738008 176143186 44256621 772332807 694387857 542345777 44256342 420219966 267530173 893820988 611330775 589602235 739318441 60092411 452843938 264017117 673315395 622697775 412253615 869958091 762444262 483301091 884904774 872845389 95680649 13409567 282710744 829351051 494443853 539945131 763961755 800673237 104990632 285407529 810735923 531813723 821522903 912764330 16894714 432495359 302169253 746137801 462758004 647532216 321066262 278579934 177207424 872624223 706413213 136989247 760769080 647100366 953262239 284444175 120637557 75903192 545199289 309960490 160795255 882562485 711629583 455476965 109049805 914443784 473087914 268450927 556973052 125335897 405794435 24415283 351865078 640105228 421121392 712783186 642895745 680680048 590649450 221187993 238585546 438792168 14994408 121081849 161397882 800774956 170797128 687246112 343156165 376540418 625762925 922852875 538136798 941683350 831241757 158652792 714487023 46139488 29566540 818557617 79344750 314959786 489285357 183944979 212665736 766901361 162053497 199611433 223861487 87437689 723435263 906540502 846472968 219517475 861695564 278207737 771332020 280856187 563482000 751181099 845357548 565264262 897187600 535302185 278168501 614284 398468729 600003704 227857784 408455277 273097374 669450061 727679231 176670071 59304126 454433620 267142354 965526542 179313668 943999739 77111578 858512960 518323479 809828661 749134729 249094521 246827067 965532434 627953811 520904670 103473666 597985357 853294839 510034221 686932865 952937624 74357523 853744413 268487583 335234740 711877305 896637980 364171142 729485908 491751023 843332008 330946913 907172078 547600083 443479194 411947064 22813980 96337825 962362878 972808051 411087747 909108248 63916853 740719267 74308694 226301762 700286691 281610915 205021405 80692780 65593847 596346602 548983189 755487030 797539023 176480830 948216203 791421505 647087868 691549706 112369446 75144329 716290389 470605567 606258827 770574687 354543992 988532772 195387433 334343587 166872021 291579900 111081097 579576290 652080115 950905673 579432854 971139439 302487949 91694369 681499668 30989380 909381883 424464907 389876833 302434599 171263572 912897958 470875304 501758127 444975631 292870075 482768851 638044970 364811396 215979812 92318909 197926502 203078833 720315874 625072680 345094618 510612841 308934316 175683295 810148998 213525149 841906234 440379434 185836079 430427637 581203641 476159279 116213068 378728048 894611496 645389649 988895706 503527182 792639816 423859923 77681551 387777447 66483911 352743329 923951224 545255372 428156498 2382500 565266966 872580075 875437043 246169162 599939886 151391791 162042227 510120372 937531432 226760758 180897868 508014499 753519578 811341633 2573402 846460228 246735140 654197635 671530933 249487410 40328785 523028705 297149905 774663095 289952570 498659784 547652275 103002123 868095037 944991882 727628958 557429042 118129143 406286677 481699606 631746326 899443692 500101728 422269194 506209210 393568653 489834984 783475234 752348918 541287838 39118483 894547483 217561602 294215450 787939455 447103692 175293061 128304303 154394581 506881500 12428072 388925713 658699023 738237708 932307653 370776263 706726942 346646295 414308980 853796442 200805410 99824562 627885046 341150484 813255801 100184579 305246582 363246428 446478968 544045233 912602578 725526900 422724042 618685227 213279740 159498295 192456465 886776248 627079331 275123804 764279457 987220703 132549588 702354747 387485783 756267908 315377555 667461770 339145881 261384124 401477850 862492956 422397701 37009002 123515890 337056770 935882583 122578576 2333721 599344833 755025803 53477915 949546542 362562382 563583720 392113912 581804288 254589607 783508526 118812549 970285781 160537845 911631632 962973979 749070457 297575860 787676548 629930841 664125177 646164414 658693610 470573663 585301868 517850051 600928509 165050087 127537257 894473364 260476877 505852691 697054383 960144038 736979432 27358870 291168089 832666507 489401704 841769457 884919894 167475863 164866062 49145380 95459515 874855039 170159913 745452628 746066486 105721352 853754204 672317067 520247654 899965236 817302728 401051933 704165891 191566486 123602405 646000386 309357691 40434342 95002947 389364401 85185172 597171245 309955305 510972131 954370734 376312063 372342511 59293086 688019240 410343401 350360180 271308283 160078235 974401695 925285555 206103620 812468020 30054461 853156896 193574469 660867457 339141464 959350637 766489036 228267302 752380070 141669083 793419459 878382873 673765651 288933247 119129410 500412910 773063194 552678599 663500001 877822589 985625210 396931406 748550146 934068471 633183624 109662769 874005776 113053835 69878906 818353604 335401859 831332740 388672117 326620295 323472572 577514419 898694689 123137847 32223195 653581821 175016960 509768213 626300523 419139657 790410875 761104700 891242026 481856981 837244997 497466918 18698526 381808158 797491994 549684264 787257432 278011411 96729850 812379221 855314461 505644374 111743794 4933185 338608078 367845236 275721057 491913042 123488927 483425396 477351077 846363317 129348021 384663813 616206116 224177553 686803155 963444071 948815336 387442698 342347546 384782687 671787857 823489165 106391663 906768647 670349531 889981352 480956925 353372860 20627161 570781842 499019515 862633526 647653814 57651639 622901996 741409323 487492860 174182793 697352195 943845853 516091921 246918384 231630613 444058420 700505219 853474990 832086325 594649597 145509400 998575429 728525300 868533464 264783827 774254224 706700194 322467527 70002405 270155434 310938374 431464506 296250399 870684373 466144206 825566755 774021044 3976202 217723989 824986587 801816001 758905069 553106233 318103445 945487525 186997679 76646264 639357032 925860342 187685453 256622698 337878312 763039872 335754960 578202448 656566905 169663309 638579197 200364702 730635030 885195660 869489921 786802443 633765339 63788868 710694694 243985024 572879463 830963238 821684525 85911530 731325211 630194206 863405289 883760677 862599074 997871860 12457892 645309848 946612317 260790420 486994580 356875949 774753991 760626857 600611664 939920010 403886646 126662060 600360809 95941984 485562873 313718558 823197133 267607851 375641266 165902968 79990101 968172008 353284998 316376086 380217341 137262556 29592770 29008141 191498463 691000129 880547313 814254341 74984969 509057482 129727438 305904595 846107149 938660951 685912883 227995445 898360856 82838919 349339024 116184471 371471381 701844235 684503463 938554878 58819099 293014786 600515211 16358015 924167853 129213676 45075027 852390262 161853769 394472078 2388532 588120999 412712076 889132377 56262358 266133155 56330287 643133557 528420185 221326773 80834838 406409374 427609795 105266647 137733391 14035621 425184549 673075228 465397716 178732225 896241162 146940253 997659416 512208522 428812260 520275812 397143010 184433801 550601626 115220701 102789475 675851325 982719375 891351167 984883084 780809504 704068611 427786054 139115264 64162159 764032970 633181875 730779232 3372570 340123850 129648118 865020076 859337546 398277319 405152268 507079900 465154925 608615151 47124993 141591200 406317481 661569361 772918176 540017947 10939197 772603661 95964323 722578013 459609999 943191404 850497042 994566858 562406967 904325947 729136921 873293226 648462324 157193670 620570998 744112918 121447422 269626477 694435467 206585160 103035279 318751348 342463067 267758285 511035781 335321657 266756142 897512218 791751413 455583967 71774974 390106044 72415736 552635070 229602896 710942033 225822472 668300479 49779976 690021521 744735687 398572988 821438777 926349742 753962601 323423316 913115701 188604008 690797738 961155578 506095225 734236951 716425272 667341702 944328617 936774598 129453931 149145619 946829308 592586943 32825244 531884938 978669022 870381016 240647307 491951365 969752343 959101656 340896775 308500563 93289703 328013792 136523428 243704540 550131544 792598216 226375908 955489427 48572235 337190393 5397969 529505179 224394087 117298482 807377987 668458474 769291779 658217373 699377205 873585769 968603090 178042604 12482535 789115917 936026985 182318165 42905246 17128530 337105241 243081798 208254808 924140338 7578571 90298874 320553829 62921621 206366246 85661790 735352498 887091311 420713411 707580514 697671846 618093423 702975489 701567336 939956294 276102776 657831182 242216220 510172451 667456993 307283367 784126727 289213328 58611327 925364709 373749494 297920555 716519465 595585242 921946601 227577223 208554560 462125408 314656556 188241417 358588010 25588615 530841490 82962670 249517860 825361422 986033321 609285940 229133095 389558232 86964974 473114371 255885896 511009380 433540963 317191292 59903398 499250296 951612756 748629817 784131169 160840831 476750724 449565839 252138673 717921300 665363292 461931724 211113931 208484439 488704863 562248783 520345572 988403669 449110535 303833922 823399549 143763864 249960847 33210933 543242739 594601971 886192825 62535905 304206074 723801503 592867814 454412201 86347615 383027651 670980560 444722348 67238331 840528104 317050527 498602579 347514806 744098476 372559491 964260115 135332328 573602889 333510498 166690997 175247433 841646085 84520772 157479272 729235729 918882736 486870453 186812715 432192469 917547579 533311200 30188162 123964345 898890326 259194228 230955099 769998181 383146821 109391939 516121102 91968309 654681739 25750824 106023234 927929067 467328275 510434999 38417465 91124778 217939042 660240233 271478877 647539739 152150118 601411696 298792140 600353258 539917943 705808431 620490431 666447485 386648624 909683724 528969962 15491153 417404551 758230673 19736152 632700598 589903743 243142432 16680775 341591138 417104409 425979418 250740131 786552170 877437133 710424577 372710463 348543374 650594618 783926447 93557157 927082987 168955995 486603491 994099837 787560440 195440193 110359977 831639686 290405300 557845599 280217990 522458880 633802097 788075646 169578585 874763991 399509524 182125534 57751897 832105477 153283696 260671980 644323066 328026917 782318133 268295261 849606758 610583973 33144523 604892167 992708225 597093365 694720125 167083175 250892950 971450828 97335036 767325867 256922426 673717870 317929707 215073156 208752228 96313131 387598529 183764460 117239073 179027903 205379900 50539406 262834438 97626559 947838997 572888736 943040418 78407122 870240844 359006593 703986810 568907769 248398062 67239491 838073148 802067880 280231362 601681024 350582337 795602967 988833023 410997769 719943072 257504601 881379503 352783678 227234400 419208726 742676754 177149956 689158997 36588496 849395493 321969190 947668148 166316913 605488071 881569100 628237509 979759519 614112397 901523077 626951431 369230319 10745781 503990174 978752295 783917257 572656395 488538841 391489072 984186801 67645666 706068900 345673050 165442289 94168974 884716053 290658111 784471148 462892371 209942836 598480279 742840602 762571177 287069061 783918799 126617855 367064559 338466249 197073398 279192005 637474942 231093977 582325152 461204244 474553795 564359330 793394473 717328013 811483052 156489416 782469791 478270087 201230824 25545849 49710642 713243421 905507177 223277882 582651447 303961479 517238984 19920412 94437474 223189058 272334887 422670389 768161338 342654172 506819602 972145893 317142643 448525241 188532467 317173093 580728833 643148985 716803722 116850312 824036049 900884198 963393977 679127298 37395178 239458542 686605941 795407896 564754203 240363845 467086105 97456513 639519462 575537606 859334458 782660205 740702204 494893814 506440351 342705089 148079289 649351018 984533554 215958635 472072695 893249221 658688187 228239994 14901855 310086560 928990339 926829003 767374913 781159787 379476944 297995685 612120882 394863034 200474423 79247471 506218273 33878733 793913537 233593759 621429971 561416589 924621174 209928280 364797901 13293447 456130506 659126097 38291202 347644807 406371148 943197913 878351246 334247719 379475482 290041555 277061167 120472287 763761371 161023858 705507546 975507045 351145348 205948668 654305265 952554122 147133910 696739359 587596277 792716034 270648610 844185055 471606559 362925541 450292050 358139120 667668814 403725316 269109887 472256667 264856408 668608454 918483684 988304385 178543160 398723076 774504158 427465467 450530370 196580166 964570157 384135570 925917069 812747448 637625415 424003702 349633153 288451404 717137011 197472540 710784986 30044814 105287454 709616501 675760658 989781477 912258842 438586648 905332218 641335063 112613705 737851735 467481634 555228264 514526775 17799948 772887216 459942011 742150791 654992586 373210703 494192971 471988324 545718983 168980744 884866611 120707029 659501780 937357515 992239965 264888316 106050341 88120285 594662646 420395457 860176902 456803291 405837742 33210401 238006692 287520181 800018785 19773377 929568827 233494123 292500129 618395624 663521749 24388215 8001329 264595147 649560205 571438621 615363784 596070856 88703729 774597806 354180567 520020217 696015022 819596180 740316173 25788565 499068104 662019481 560618178 923987327 174049401 394657328 112584787 63400194 220893414 727699842 853338221 321637007 399760137 965142459 624510000 817738458 979562820 406675360 833144086 821356038 770565218 297505592 633221840 453749237 402663573 247783219 167530952 730440073 59075714 912189100 450462512 290563001 624254100 876319955 49086150 930182218 375978102 374205206 594940914 448442504 937297169 656365918 665242260 177241729 527451294 880214558 653667020 362889084 128796077 160857740 397810171 860298174 477615498 915119952 918482187 711091606 27525001 156618643 640254269 611195456 988539414 112609688 915680869 529059693 208225415 595249875 169870782 704404384 355419609 114225913 561226789 636031932 197090454 568760453 181248976 771044763 806719533 267439818 202384602 670205625 376114402 704995985 63793473 670436593 694024491 366825655 309733373 342881339 595991685 456990210 3474079 681824526 505104943 236051565 763281824 594690364 831076825 988327096 544805153 638916721 322700436 701885819 647589329 847652028 11235348 186276876 11311618 947963986 297745207 34094915 805613040 656047047 418285412 31822223 283627519 910942928 67371644 735720352 923560999 928807405 139911079 589306409 928541827 394128017 701165631 175942114 928472663 367273931 605637973 108687706 811950451 779255985 974745664 780667258 789302006 864850296 903967786 738316107 296250448 534946592 761092948 519985995 13102044 693382722 207809290 345179564 297408326 629068422 624807757 193089519 238993044 354741995 563799973 269521710 253653773 355528776 180801444 828078326 592427801 250335290 509580644 20644496 871512255 136897251 530133106 299451998 777799395 204706378 428660162 503076279 631066105 688756411 100303691 871974975 887928790 112868231 245049404 998535917 978335480 838778522 777852154 613405657 631599555 390579303 182861958 123846732 551812322 839127489 112196634 118388992 860629457 468960446 579122316 370073295 459997661 334934608 867315232 585013624 464987193 56195237 584625824 949232885 624339897 173845513 739721317 805464804 539219256 57850645 233566503 713513355 11135542 649113902 843289727 137473433 882937151 474565673 136299770 962089042 280287460 244001407 787261077 947507593 901791429 34146189 731161339 517743042 752468159 603766114 489524095 897661738 285865364 400297169 866309998 165286247 514972189 841637928 177246826 650963564 733103305 129904785 693982179 27815004 591470940 953255218 634233892 878345380 441950131 72555915 582064030 253306224 189715919 656533306 530614173 630910273 567034459 902837238 284444100 598855791 863792225 834229934 425561672 310427732 294822026 659221839 564913247 480308549 200922066 622979546 806088274 356465529 359960722 170349227 875031575 521245664 945496257 277662600 849848652 341292945 358641517 86503807 488231253 694395391 217783843 308450870 767347996 261180133 772190445 113147886 408999870 939205444 977962743 532918510 393081929 11879942 649200577 684929674 466169455 620057207 191403029 292631254 697645263 888288313 344119964 514881339 238970168 242170841 993968598 936803577 468343753 914336845 458903361 167798147 656495164 325429422 263298599 896846643 225673834 848193227 496034741 800584576 401243491 986517224 534087365 25715728 132660322 85998020 49603926 477015576 441529912 776168228 863347417 5810705 971749658 394279883 713671968 945209222 151322714 15725444 560050744 211575814 200077702 784774639 314492488 834332034 843327676 394341991 246151257 532778431 395826543 157389981 696044416 674009987 685105469 233146364 761088249 25349920 699072469 344366334 58227492 656760255 636037518 576115796 868924615 849420034 515121817 523094281 303141161 214885686 245507099 882359936 555252675 469315025 255428220 923342191 389875106 499668286 79123979 954992584 871350335 212936184 76574525 206452521 326600348 647881168 373891674 206557556 802396620 207200782 366176776 106458934 795665216 455283296 738371060 186539044 841559258 831798123 512970248 608260865 622301635 856509778 315712615 306645820 778229030 347708770 277939303 917739937 43253407 906014725 828154381 687300694 732234069 96031300 909636033 960737097 346071829 116630783 645043383 735471525 661335691 869249921 561686641 390165771 633781380 342372475 476601059 311836662 505853066 100078470 879996011 856847648 396015132 513919503 121848739 337259987 400676962 800306512 280247066 455954478 181078598 395316819 308118548 337819971 332618570 189985953 506888239 926288810 104174529 762731595 232873279 106116998 358183864 854983223 249919007 418679289 33028572 33787194 28478531 58008089 734599128 458374878 622243813 81069542 925186275 668152812 869904865 431914370 802364708 123192333 146504811 827557108 551734844 628167230 409279237 85777346 700211103 125100962 362003650 616812811 632199322 165200022 18350246 532276169 442394969 65773528 923742009 588928966 524943504 921002081 713348268 495050908 254447138 115285186 869847738 771054148 102902643 515047039 923620914 854076976 178652939 336553078 424405456 452208992 705127148 373192969 738336934 753596900 34011288 443652452 274001915 593766048 670460856 546020948 756101425 818788308 26391643 798411397 354821620 746488520 261657129 644772795 573906999 755717181 374113283 927116202 313135470 179416941 11822837 797369632 813044768 820220234 601159830 908672771 378731638 643691317 818657263 423236303 326756573 27810100 316495180 107194276 306409526 671093662 475762905 176478616 572603620 639993311 443905836 658995063 41214970 738973442 774414494 704338652 546493801 432684143 996792490 4447939 882762676 485747905 926106731 781539548 658707999 449483818 996619139 489487133 366731491 536319878 913941540 271264448 348761718 423807501 648552856 778375831 465921054 114960259 400660858 427300299 856169919 944865377 500151797 670593292 502422841 902958731 877849466 15791519 291039791 311971217 575279221 821654224 574243154 987417787 90332168 646441781 904360371 632702352 473544753 993939572 501351664 976931279 882041047 324644356 905592153 384914578 524266499 198674595 539010367 535098055 670297767 440842380 775988772 338831607 81643095 227142174 494820199 20258679 438845844 361164117 87947074 490936026 215030638 992014217 347010641 134571944 659398268 231604497 434518959 822324528 75931386 270724748 376491289 730003119 227494258 382418832 765701956 906151769 443402398 153894318 667979060 783477974 724431984 516839880 8608954 151550141 375580341 760092573 385749653 509761055 527211444 467886774 171557450 590553696 962538524 539299770 800726869 320878947 281379306 559050717 886691248 86608310 25907086 225097049 963149699 892064288 526758031 816954928 503787009 984776903 167347449 646333009 929210338 999425937 497687975 481367103 121606915 248692765 263490350 224088322 553623296 464026738 696863896 111917439 524393085 404539329 1032338 781259090 36805114 913771359 96753022 591538460 275775345 888439292 306390320 385078434 974000823 293808603 415389118 315269848 357029850 536273609 458237557 216574164 277136595 281505089 661050326 901120060 366582736 305346928 281978508 52413197 175109790 34011337 323684431 709817529 105394221 720237653 237027416 517424530 804151249 958801940 786460376 670787711 616644334 764875396 919254439 790778787 279855291 315509403 377362729 815401952 741541123 25126030 197290838 700079832 281179121 198192514 693174704 735127306 694395920 412481656 919736042 767618716 971775623 220695964 770605643 621515093 98019236 537352853 846017589 749714075 931938514 66205227 547763123 277384455 585298053 469895382 940397510 399103475 785265427 413054301 301137968 514599125 326259500 294084378 846206087 383729000 346889148 916907052 963341701 270789675 453761956 386245739 703823949 681302307 585034857 522360591 503185672 578150156 170051379 676804222 79879029 335948120 592369239 588602136 150603157 493575755 511543434 354152411 515307145 788812703 751646941 832654770 314995673 758327850 537174444 193786695 992310478 672449058 391552116 22372179 795079662 768146557 938052381 376560351 889125660 446428628 82696123 618154800 70326358 304022127 195662893 989665491 206920610 625787652 270318443 817234530 561600581 420888674 318145400 203987411 246804226 806721520 152665290 590847056 606665558 6445983 826323600 269258100 661485097 950423054 518156926 504356754 153264449 289939573 807754659 801117059 180585351 154795672 319221419 735972434 120131502 55704876 225929767 612918710 897618182 669726135 523290361 256029357 360393594 648841733 893389593 44790119 401944427 831976939 891747033 761608218 544781261 599793990 495310271 533205872 688793821 656039111 556557592 568333046 557682889 222613927 419158366 584973821 473894476 939215355 929649990 431843744 883386629 226200100 342580313 632623479 504809890 853038048 663228931 60675502 336664392 394921095 658363316 336994413 95847017 249268255 803001115 427107886 432032152 316611569 26702260 808502999 275112034 70364951 169235688 725613541 148540441 671913414 870303661 273011541 1656893 231732572 812666214 609388448 422970409 68345174 457481611 375914063 468149421 768379696 628088454 421329823 544000702 82215490 335031695 163379305 195400942 456482238 424117599 841817766 467472488 326001229 308679946 604850883 516920306 382349473 184777026 116018495 567779937 912922485 261810159 904772018 541575265 81259024 509636177 417136833 284709723 350839502 766377053 263046917 256663845 953996916 377812030 679259683 476476688 787873703 557310960 30087444 42014254 593045213 463293047 163558366 465929304 291159386 859098106 813313647 285227078 390284235 934719651 69683007 400049815 660610335 931362263 55797971 266160300 14423952 134559125 343511062 138941997 921283351 629448722 909512861 279482052 140275697 836856068 338452726 483972105 528573777 741996971 636118263 540865399 570864182 310920670 153000924 479630558 5161549 306270650 110726268 215077461 159969504 807028971 217581080 123615602 854274202 131604095 759054295 137826136 886604512 28088074 735082149 211981072 558095071 648922098 563292072 898674134 187404566 294776400 611786412 252286952 558944217 83153500 729332761 506686497 365587637 517755607 116853409 552202923 66081837 948086233 746192224 989331210 300112606 938754545 550736136 879346919 737621535 675694679 367244913 312729418 345376278 697594593 240495441 729403518 884218902 720861736 634043260 951509899 410806170 609138121 627082019 951325483 55142608 369440838 851751822 454052788 359626514 36624600 812244692 514405784 858704513 810882471 91036643 628133263 432336498 985931709 834531369 738521435 829313501 622100273 186458923 140949472 237575925 237968215 792014348 639313790 821483421 826132243 313782528 50664035 42764435 39591843 787257598 425122774 738439170 263043780 607190209 203073056 291177947 125612791 824752724 526330151 702100458 324593425 181348866 263420695 504486132 645026753 486116635 366863336 752370370 18498305 314758843 27373566 364331302 471129034 740981485 370864429 276706422 834040249 490098739 221417821 666014856 388203103 131097152 461748430 414294957 442622748 965019804 547067650 241467664 452843611 748807407 523910105 487232143 866786751 501180769 753562446 35770732 576427231 449764115 981822492 519789551 824928492 736670492 994324406 827176863 42672578 44653614 953841648 884180408 882916574 471228127 326114301 514290355 405076084 136820564 872891053 354222234 93831017 498224108 931151785 375528323 875230818 631718370 18902595 692276695 807375974 768296622 232735422 313438160 56809099 397371426 191926084 697408935 476363933 630063521 693663913 167466394 102996512 701528066 798182126 815543447 850180312 971435672 905361706 329043794 922083316 744048406 684682509 684550333 997292067 871918245 622564780 965827481 794491831 627785374 794628322 543385374 626645805 548286232 754342322 276218839 83958588 454584447 390564198 781223491 267912078 117297540 726199587 621493963 629064440 383793421 226133003 241491297 570802197 101202996 204988785 529083880 660895793 939209625 602127165 432197479 943566077 304856333 960664614 570610146 850191522 558963729 210667046 759882017 855809019 474341910 394848975 550551929 844929267 441941962 131944990 444732974 651978205 325912100 613818850 455935040 599900474 596545070 52640762 922919277 17480218 798296826 195595227 691184708 628534927 748056317 95944961 890909851 477896593 785614988 884193752 644951008 638555774 1905077 873067171 252688061 208302370 344756155 43552447 132315841 831921835 299977527 15069870 519726891 253330702 184687092 143293706 701437002 454310972 679452962 320420717 926210229 328408058 915075045 578233349 780988761 100722501 632778569 131121974 956730452 661289104 655697862 818235827 194852128 938105430 637270501 612986023 725443088 844649688 941756795 232692480 204098433 810465804 225212849 989005904 331788752 544226329 570661616 786575033 609633282 687781464 480066310 62057523 619351177 720470539 160943875 506638251 648673177 646206164 894176602 985908274 563067052 193312250 327179365 188987655 643280992 965092388 655428630 309127881 654897127 475780067 299914106 243783072 915966517 595296459 962006360 883587391 873594898 553318906 414560073 594429647 821026895 861293211 371970635 136602342 525937466 105520406 455340054 345295737 132970391 744533738 616600710 699771744 758320395 55948605 570806360 140482880 127646428 957407423 944478675 825037958 205613032 758499715 614560143 319284570 664396843 697846218 334888098 728510064 159974056 769996085 470764972 552080243 979319427 308517710 636914855 501517761 665083860 325406854 125600254 520119913 374616838 727054749 543027390 567903520 76995617 725463996 41713876 106430754 406915252 159815873 603559879 448361587 430403394 230606155 296068235 699922199 461420995 965322615 247853317 118835531 236754730 41298391 583291580 597922390 345917127 165070740 590598946 281835883 927235596 559777165 588115661 271058598 873416235 933980402 380440641 212196843 317573716 401240303 976494197 535272363 239942805 112239894 224347210 563147840 695429869 388340253 28894554 201182877 625618022 848759716 12249340 846606342 406757755 216837521 376022963 354805145 350737778 323887678 887128763 613005385 71452124 716876536 547989614 456161766 427228358 732201859 585971485 124726422 430274542 535282561 465321855 473072888 80767986 208087343 367754763 550522411 905428420 106492356 426885291 538982845 893090474 377866860 827659527 540769359 454896631 223321405 51243642 899388444 765669333 966614605 662580694 540614680 500132258 350325857 202953967 888032695 204207421 937460705 561221183 668859599 781775488 782635045 806208060 543838565 564636882 324861319 514379046 75612297 579499529 624322603 380934423 381020537 713547930 323234318 740123716 653352902 918760826 103313210 544737918 743673509 17627965 790107358 577368300 405090125 502903882 979212927 602627084 603683894 326866023 474239112 259299529 956950959 115480320 422263923 796895999 989479971 134560336 532123108 614640911 410576503 968510356 330851811 969498390 515568211 387221990 511891299 649862853 963611589 937600158 119209382 150068706 276024260 137658234 909181527 990709909 414900464 346354263 870609310 706732251 84975350 777501486 736240718 230535352 730067114 9108854 99335837 726726535 411988108 901804047 608841958 876649072 375239009 881774477 676382627 603312921 960829164 191308242 5161049 45875934 474648654 829249418 575484957 431095932 168959851 901677708 886308761 23481621 230115138 66597364 314759477 742231446 736319497 715311834 114019858 394206576 153158524 214620874 671432066 946388729 678201911 760413093 531631630 171650421 898919883 54823552 588030212 985496005 128340825 156629614 7836416 784506198 672029765 113118371 104850601 486358773 847313261 872487770 936537641 516532924 369399813 879697161 226781495 613443461 8291682 202814413 175000809 641344719 68770051 997828952 42281837 800346820 376649898 346782143 726646724 588326326 476811966 230262947 661778469 548375767 417437013 958854073 657105004 932366189 272953279 370943037 631204844 4171851 859940764 786731723 269513631 551146676 984155852 714391257 943119433 187159737 987383593 307970644 994622512 876227492 302089742 262250637 842939246 761143202 587306467 959731694 338103520 569074268 796837941 358096096 61538998 334630831 888211800 889008076 631353005 497348206 506312482 297233961 536954512 988000008 893379881 54656578 475015991 434928749 313688847 121706157 569957462 655659471 256537004 35735253 364843566 853092732 821292808 703910835 995904204 811721892 268653804 631134415 694380568 808904697 675765066 229874223 929756116 984397391 498446927 985214724 927512766 837586979 449030932 355057031 721638896 304062613 651070616 482974902 875342316 11679434 90689593 584985152 619227789 867168872 885065761 27751267 427279470 906742755 32117979 13574781 510392055 527512305 913006865 50245988 125299496 599565677 350994778 135139064 316393615 421494445 773980188 443053024 364381594 437026709 505016398 239517083 588385286 56983305 812272511 642456225 505606730 498354544 332966131 526327388 838132494 235036266 941292413 332997656 284683981 748585784 537340768 924124567 697357428 686326383 12295061 141308347 781030834 361917154 844692527 898552588 283452051 670912101 798245017 44356835 335718061 25405997 723632731 701406741 888077936 327028022 841449618 235931716 90364963 261970028 962727728 370221545 563810595 625163191 68017914 243588252 441344620 962917584 58812991 786438577 22766625 272400382 38746950 970860764 893660290 938591182 627015276 24761660 238973096 239963216 345950119 367690256 650324750 439296361 439760242 321732559 870559269 705791686 861437740 758571102 426297563 273728199 129358182 621015315 613033865 231934670 245927993 278698788 522416228 904838580 363303689 362021396 650844828 918074880 375975440 98811404 101979296 378534086 16105524 216010318 283044725 338774871 636316385 495602386 42629624 735175667 502371805 472260500 647886373 565979112 804216083 868263748 905810876 438328338 775639338 579220748 575552024 974858885 519106949 667162874 338248936 618593728 563686455 400696458 961365150 857579016 339050463 180633046 50738372 541833914 26054183 554556457 555470504 501140017 88903011 670725779 267153167 638631220 730802378 520912572 202411414 780474135 532638327 602177896 888589085 890614647 63810801 701080454 222574435 426528171 490230168 519080454 314626990 695793802 408123215 779789608 896217166 306935840 445295409 91920416 767090521 396592104 17750164 9449574 502116592 958621056 695261481 83972416 114434498 666959811 527918503 564844342 298616274 865338942 168581593 66631380 653510124 103896013 568202888 156465309 270058468 657430523 387486749 413840769 819943908 663731838 52657313 381969966 800211963 797240279 495504897 447088805 567442255 365441493 946485351 344762555 182522207 165953335 236131759 183352104 622312270 863248644 722922406 356825595 998338169 149381809 313756299 504284247 563017848 876835193 967226308 429634988 295224943 355161878 350722596 589070893 578394679 482574948 823923175 452502249 129158739 515664785 180163460 293289258 261211704 865316360 175996289 475023464 294002513 711302050 621411401 900097669 773991570 888056231 321123476 37661296 839552787 806467281 14162508 667800518 813602584 372640841 162390118 879845953 455257831 361336506 736033347 638377884 451236503 509320965 813547157 944304986 795673642 905496929 378327669 939253528 288471798 192635191 273066085 261948450 999068774 658869869 663166305 999462224 45662250 301844517 878681493 626680905 242180969 941174155 256913182 493716978 945600193 11769978 480139744 552202350 876058858 710834659 740805436 97053407 730331311 471881788 397673340 652915942 852957717 962333607 839381558 30491359 873114900 907985243 34928931 978922490 33777657 592432832 323683040 713324545 999667500 338708821 832817608 848544677 404412622 415460187 275932671 546808066 382613487 416266005 454006331 881229175 897511014 323516266 823104826 503525905 221521678 857489883 939127223 147672994 491475741 279634326 409701937 73697647 26924272 161744628 926070501 566736015 887745187 689223874 524892762 480902640 591436035 76420684 598279895 620904600 403107594 608141310 819007 664884298 169402505 262409572 970953140 457782824 855912007 30644146 394635487 82594964 494590552 340709297 451670454 889060778 643452332 698108205 575797709 698255536 311313583 612606936 245300238 300524183 148805676 954005378 214112091 125097161 203350771 285891925 750155304 56915094 821711350 982994843 264881059 425016510 792125493 38703880 117620401 344703720 761252518 529329511 448712037 264958268 373213489 642366578 901047916 651448171 766089782 985911898 198497513 537997484 523027472 283489175 868827419 849247717 109533360 993715771 233925932 973324270 56577469 239224228 230021533 568158911 348025799 3027263 111840922 402834088 97057183 764200665 974102393 979392866 575646288 907108484 689776589 412865764 658099125 216436658 517009683 252347348 109396547 970933403 961509880 490913129 945860922 94474743 815197165 892258165 860237690 673573543 213481944 683847375 889475741 802141464 87250667 111913211 670292195 55334810 171247774 706396782 180253254 765806636 134607704 243755200 455698985 819307306 207592445 243053637 876041796 788659975 437405023 891682158 734860295 629889649 280481601 127457901 280597668 257606639 17844655 865984243 24238205 546101437 221904306 430345892 827172155 48640494 803636610 74786158 386365094 200139912 57043910 783772500 550389576 344259108 641873436 325604825 497353035 283802655 304775227 143583693 404367777 430839977 774074496 52985688 147092818 116204171 808488793 322881137 86011724 669561313 256590273 742821840 905303842 398043402 567977600 985709459 262232352 840717181 895527746 237545503 671845453 7307646 796109905 254412472 430177806 814961351 200514075 698302407 523848365 24962879 12558550 885008285 836460755 564160538 148791342 844579068 356685247 803818043 251886424 531487479 645364488 971426186 603119862 509001894 844030865 350500301 328720413 795838158 361260639 199455605 321875188 359616364 157897309 987216743 60248836 219832844 104905596 718455582 373281306 998997679 271370991 586699869 176134808 540935885 315978544 836352240 15779318 955049531 513572200 598933670 177335134 443398671 143779424 676693235 973434425 937464538 424918210 416830587 620570674 131816510 338529531 20628223 545069882 711016029 14568194 49061416 293004289 392005363 255569134 818861574 866240500 218457011 868343506 83556482 870753538 592477502 605530634 313678492 44996807 658106124 392698525 186636473 344027010 603410577 341658120 246475014 94725877 586424071 974250561 553174768 874766413 661997358 260251426 757580737 706831926 656362303 572257960 603365668 828917822 797470669 350745410 815550999 717446949 99548944 309189408 588703974 717142705 72347553 846280711 100283022 825296087 479300452 648969808 271058215 780302863 580108933 584928845 488636887 66705028 304147065 997167265 472107021 252549020 818626450 149870656 619473117 739434706 456618680 968392379 794886676 808869948 896959261 278559365 197291619 157146791 451204979 437067631 358619564 486545330 164393083 166512029 648736654 580811502 883727840 825850626 982388025 28220178 285216207 992364443 666178802 329802982 119273240 545691539 374100508 355054761 675994303 121945143 260969783 390987312 614874716 377508122 707976923 656158598 144504705 101515462 93802068 653007714 495927253 569021185 9747000 232000963 772626170 281270298 379878106 12169849 115746372 935662512 596418433 836315716 31652290 193683752 657264727 271012902 114705897 969826084 373353972 819778770 234444556 85575323 338412137 329496624 321075396 4850739 936049397 303187147 767206311 468979520 924644958 21469751 869073540 193024130 624500487 984513205 860887722 537953228 6124856 658077738 800509356 419049724 937224185 866397856 396571638 882923362 334700399 946217406 226322293 773663252 615772823 920688527 30162850 710096116 561287777 620808236 468260068 660010878 866752692 452658570 332341278 674731658 892571305 55441867 352542985 826571035 754192943 466589060 72729667 923686669 77157777 799711894 697426843 16643812 321053366 600542471 671177894 306370213 547556854 368176827 934052868 339463830 277556667 405945017 60452873 686870471 863171913 397454773 911688791 449394822 229316606 106737046 701585769 302862346 443392408 189033837 992889279 495093280 208245130 302088269 187855108 92751858 765313133 712485918 779733770 846267537 459304470 805894851 603128951 494816087 182303889 922801192 556640812 203822832 864021052 18157153 213317662 132386371 337949853 566757075 28898191 640835845 709709942 948139148 166380385 557417873 28974280 237841201 669377858 779164579 104984883 96731216 679565653 707943819 543280482 699283667 571178052 49939244 644057670 442086580 437957923 988020243 758032194 691273558 177849178 421700907 881520029 986119401 566025810 975402975 843203482 672035095 725171787 219752201 615880093 447711289 660564500 873590242 408961409 500937956 834703810 521473191 691693692 537841645 512009133 613997570 655294480 85514467 731679552 909121808 370587470 409544234 228423259 393977500 715265785 468232684 204292709 269581503 386532098 925775925 368097800 834815806 31745501 420436591 301597012 519697904 591628166 658932645 943610734 291768432 426440107 496655831 654982527 149161923 809258569 743100946 835901171 609118338 610552542 205184028 764643841 965602221 942205328 762295148 322809071 125438652 908730069 139750874 173670706 808391606 869698717 651065455 172135023 398649333 377473617 126778241 814234791 34796503 462811822 867615470 673891211 239706481 192740958 55987477 119593662 484894680 150338564 741501388 761758453 530342037 845254054 289187493 288113401 447244723 60896020 585624718 14577767 771999195 495379119 153362831 223937394 655324776 151897161 308411770 131623733 176251648 388644777 319552514 723242494 403897096 642893112 555648525 769990369 310171189 858127228 83883794 991353934 715508378 571061992 905139382 950708696 224096924 395739548 504786075 342360328 794077759 951224350 449981568 771623309 479223654 131650247 663428618 211122003 901500431 279688262 141242552 514223572 364576743 148973729 882389831 639432873 827908978 120240216 480787263 887555254 937318425 92262200 828059411 728553424 651818666 233065112 570344576 902752690 498677431 111444970 84930905 758580445 934397796 223813739 751642771 954734474 842138519 274969871 726341316 542597915 219463988 196409943 792055002 574757234 982256349 878755671 857366040 916150430 414730964 380979943 817713149 905925687 112096820 69924081 516745567 120884682 805605229 225367806 735662715 14527703 455714730 482681905 516157822 883833725 736404645 165414242 533970709 610572918 26200214 683553763 607780554 601630527 537455278 385188247 692391929 911415788 50135479 591956212 546913907 75062249 55840170 803867800 468987371 887619455 767266098 948012774 705347661 610211666 669415361 926493135 689878227 726857752 712210721 880001825 953515711 388487766 576627867 345488677 671742578 761319991 993921148 106830044 706184732 538740193 568737388 132908205 925221295 809571607 670656882 339024744 735023353 290144114 925738346 615368041 334022392 811320129 993303203 513727842 980754919 594216883 480479435 442921959 391897178 114497616 944233385 501290754 329774170 473185699 528664022 519597588 948057038 704938450 109284111 227306618 374159676 621256070 318615844 405562282 216919015 585371992 268577488 52860200 774855629 553479700 54717376 103670789 702181638 597131540 110729755 733916149 835161159 452527153 781246259 566079721 1368236 551351883 568518132 507079803 815825221 426083714 248045587 199704298 855032099 397256386 487341512 568657790 661134292 219168199 341216186 879248983 82410739 773215140 568676177 453273723 671283539 456199338 498885505 757619439 785786204 86538866 903936125 554920113 722423814 703725363 69236561 506328997 474213490 23495072 958022463 987533124 660998457 206038385 535817931 297171226 182865091 853598961 411980986 844207457 722286963 830829828 974262819 716090053 526884476 334431097 561910556 978843957 47219336 255126953 629429505 98770953 463938869 330708639 264040175 468182824 868611224 751193659 379373514 681295422 215978116 479705615 456667040 491564716 647684289 776119649 149868557 500527936 852744642 426907848 602845589 576918350 258844109 827380520 806346400 963247436 241801193 864637268 797319567 421869769 891368454 490248641 94432428 66087845 57085137 131463083 509471883 344762232 262789012 66377517 808940113 257125116 679100514 316768284 912006737 603149587 701108666 573514040 177351290 568431432 624323338 933716545 12670853 335166635 557319286 334600755 759152835 44254368 486623251 317500435 278661872 282396970 812843470 943954163 175428039 659583421 893616847 743379343 321431059 521649291 31167618 165175924 198268740 348205212 415137028 770473178 834017071 845903735 67313344 858006006 594065041 679480019 222745173 54912177 366433874 663896521 159425056 469286542 307459151 328515640 190283198 757872579 147943275 186951829 651464383 601948793 784240839 855969117 70179841 53619250 638049011 88166025 288488057 975300991 594776701 887824946 659988890 445729448 291800848 191882354 536903183 344376395 83708519 834482436 23982981 624660841 738002188 804956011 450908943 979503765 475620461 345252053 197172125 215397263 337291861 450051671 609256867 581959219 697522207 530875254 939321108 698427185 566132550 865291036 217356750 844944026 858482257 138170365 346648961 804839844 634833752 961075309 953680034 316581856 305468109 11709859 557569224 266424149 183590250 206891350 729918779 906244093 346532789 249510009 167238225 244269705 544865146 227585869 970718963 301827516 499979074 934179599 304568073 974012772 804145750 388067458 857192740 185483813 962560169 592391783 395605666 498932210 296984377 106548569 382488143 362965039 645145720 559099198 957644781 447755937 766041174 836444951 718049808 155372977 348754764 204045174 172105197 551167800 618511437 49384091 530597410 862221081 344383796 758375684 506760290 615270579 463772830 593266684 402542005 488405105 205209904 580211431 225786203 533035155 139720080 735558143 87734389 778374083 438949231 893309505 396041918 32575012 833786944 444808783 825037312 883402689 271426983 95832516 2912441 902702085 831208668 446474094 366822921 114699596 15199637 375677051 241380606 555949056 154733410 239271992 843055484 932335583 640801267 873487499 317951487 956671686 873997983 804710702 455159659 471706818 41101070 952924624 715949146 670831203 570743724 333752195 712083431 321846212 594630543 660367020 556329908 9587003 34634102 837648000 361002946 75027395 751913676 73491096 364067426 264859902 267356453 233494568 268558467 605883581 143475304 109165182 518020880 523000818 370568133 485997589 792853816 577993062 40597305 795515491 922601004 564788184 774061983 935070577 463618355 242030798 962316743 192930436 473726273 681060012 355577809 376939722 140960134 243263495 99109574 287347710 335580863 53002706 364913831 423102983 300635426 494065611 163369599 384278802 612937722 320645549 945667526 363297829 868003960 382985742 126675589 830892756 170157884 784599691 94651252 203488231 558980680 878015458 843033574 201670390 956501670 696958242 554564669 87619296 117357323 671566056 196466987 264609708 363271218 968485607 613289614 858628860 323256476 510985655 597326129 629263809 537782449 564243749 866276631 14189167 711502106 55283279 168821422 427309571 797147561 986493442 41318110 22265238 159457432 877826670 7428405 524875788 108081009 534933994 492691729 485332116 321825537 794274375 311170436 566794142 846364829 609805148 105752066 719917609 881235504 261668515 494662650 888957390 797921421 168356769 504071930 269381737 799204350 289529159 201057975 513347575 524317566 635388241 223947351 151126913 865529236 682896597 514466395 145574539 130040577 389766421 375257918 745330735 423526796 601016039 848458968 606369620 483209022 625987657 118860647 565972897 326766560 991294087 42098020 33293655 589300218 549847151 350219466 28967356 915323165 265393893 783314968 372800951 990104099 918528261 557479875 37322889 477816085 79064595 610282677 316029490 612645572 83640513 872572840 627135517 858002252 630273103 272375737 788723006 131530476 896449278 241025498 711593764 517322611 364377585 21303615 543500749 267451142 523422324 122611901 344698396 885393436 284360325 135017950 904536338 544917164 471973796 108260864 790708740 238472657 381684358 152185195 628585297 432203382 704700336 348398606 376467766 463507836 140081196 48169871 47408099 183708472 446092825 139672887 247973599 211924416 183620386 425110047 396807995 361992912 454299168 536046608 960454334 265181000 873005466 548971917 417760557 958450692 769578215 73597821 4998682 821689994 760053163 783687365 551108742 216737644 992258410 402908521 307999052 707132914 954046418 452238375 374069861 39786022 134455479 17456026 631894902 33999881 963336480 544698926 942245865 563172089 14219362 434122939 184718068 108358296 238490316 155655113 695006515 691086599 788594971 864462879 554325008 338944293 544655500 926442724 468812280 986835771 483608630 453187833 318811962 471620892 540491781 11304674 818473636 86438355 472865988 262288410 484907665 169289818 54612994 88325636 574432521 440470468 192694660 627225727 938860274 369810514 789399917 84441419 773383717 740873618 869929611 442845524 99671668 109453867 69857944 240373985 943099996 429827879 671260437 667151064 833733142 816409732 173803150 235356466 425675719 786853347 644108762 739735257 622178668 834016268 440579630 936617722 264140162 719524037 957888010 724337930 559856092 285365707 106167975 487594833 635162354 901813327 297021685 509612936 308302505 149973175 155912079 126526402 904671824 712090246 315897389 962946404 295403414 259542261 435090186 4156347 311632336 501598972 349764195 6702155 421649316 649780193 474193192 400798448 783402009 686746867 415084371 86664913 143699709 501060246 283075090 761652594 160501260 618447249 551345178 295133462 842283046 291879065 519441998 890229902 356518105 882078576 639746833 652712573 397774521 263839544 519605261 720599497 542203937 887649832 54620805 411716758 198341913 27949117 933011225 122484352 746222506 96790222 483325096 950396080 626573226 360163770 630551650 322809030 388277300 670247310 114825755 561884731 903296613 552215378 506872046 664841581 196220470 357267937 525498057 26222329 875704995 369480894 588238724 88062153 568610273 420157371 275346322 300320137 923104160 284467169 765513071 810335121 423348892 175021977 603246963 80031638 223521682 156520196 711334457 48773928 441615983 929376471 803904446 712422850 877770408 816267487 798872861 559189839 912063200 183442999 528495992 849353392 84563083 56191964 871390578 569597076 469123810 420529496 190744581 989733969 690349233 698113205 920538865 95631378 612571612 415850201 29699010 288559554 227032512 755629369 662297004 127856881 82216342 375403013 84955275 830526079 95344744 245327268 540314716 380670017 308775738 212366125 894232918 17392302 445635144 576391920 515347490 647564 516048675 68276639 623769300 339641894 839343238 856330229 968032220 939408722 28025262 990041237 475161109 107277963 406474401 304017282 66147361 389082167 462373961 826901436 280698513 290560610 418068554 961411129 460838002 648046913 105330320 108896853 995567432 324604436 379875410 207418298 48087243 488635228 218598142 467687043 484924139 349778250 965791728 858813577 348864075 766269277 413905802 579132292 155086670 156292027 328259964 696968068 202142419 168560946 62996614 752354962 737748926 27748449 472401492 645205621 437248617 164835271 478436400 333706330 354156022 926793227 764820861 325802267 402676143 570542291 935512492 688548125 632510571 943584932 388269453 80377720 827240766 203554359 707349917 984715631 448150191 874097509 223343615 488179852 724307769 273025576 436934295 824154306 763719243 581691131 641340143 645824177 287104317 831020927 495721196 601736859 666913083 57134355 187995901 564265247 939948103 412809104 442486168 832929606 60197518 856008156 820392468 50896145 454713597 514527056 20974391 828638395 398571675 900111349 888135234 367345247 13486905 269989152 301104377 318521453 395902113 930056216 133725229 59269631 834876472 219146335 482884303 682036724 909759539 174740039 94831413 391914189 648223441 322676187 545474390 490725712 791139404 166525970 359627593 517149991 977716244 765409631 156879671 953084127 706836454 147432065 949260150 623632773 70920076 678657102 95635738 119228992 977176766 670943084 699794867 220359377 59474970 228629134 152067000 506281385 464224480 994525442 578356869 405879020 811396985 860351400 686227227 385482747 488719786 290919025 171600336 890142148 894903368 73198133 73273237 879454571 941523456 235313975 739379537 658725187 577515240 584399601 986517287 714773998 536416720 190723190 297913336 403559744 841483754 914051575 293252223 370566163 121109050 170964609 276307702 963584019 707686741 720336347 133683262 667322971 471730292 601078780 573913437 548150585 28093268 676751545 875591822 574895358 379969843 545934759 396155212 146199764 145938006 545005268 828416239 572301439 287722507 302471454 857373606 94186948 303496221 388784951 598008212 962931238 338692104 442214771 992546478 426939504 331685652 201889797 918250644 738659363 955831310 263288775 176723691 91935046 614048826 122743340 787800500 22740285 475406247 345205400 308745934 62851258 317073329 951362758 649832238 87120680 188680366 78048508 746553132 282365402 876392225 463093614 128664399 189270885 501605254 920368161 576542965 961093866 516036454 787481482 63080504 890084329 203043340 26524707 710476321 828575817 973999884 67341097 633355867 331020065 502153590 265036823 42603199 694423998 551137001 99492695 434497498 981521792 957806043 374051643 801679166 95300241 482447063 484977727 608580260 263079486 973391528 363582954 157853181 150371266 967659430 963033860 960801932 285067785 193746676 454533458 274573424 736095828 386681149 443938416 599404154 841806203 835222514 859120598 936054556 401303879 912377244 825527637 557146716 130422864 289910051 288482045 812850322 213381263 809340550 773270874 810935355 850404938 29609461 142025575 539285052 607733201 678881970 17236248 591279531 374215614 292350500 150129422 231489610 699642352 518216475 776356354 694057847 805606271 744357903 677090047 59919012 424916319 289489661 361468368 28724742 972190957 916814553 465609851 887558307 799221917 563645506 133891559 170271064 822027435 557522698 435046607 947783960 820852537 145991819 934158809 727320969 341121975 427787588 616919084 850147568 170405216 91471230 466558292 676378505 779970558 74694453 103083584 355065301 67998528 139067331 133214104 156724396 925706297 431983524 599786509 693301265 478685491 125744659 270100525 63031242 451652464 779499642 381887633 193518164 904651255 927522908 586951924 764454116 881096541 705765299 430107719 176833204 866236923 991144961 625590111 401349273 834870153 587416258 232131595 816511346 81090457 200618738 687168404 148753699 223107510 321829360 31134523 433229904 103212986 314169562 223506673 97574802 250482707 763790076 856328386 122503106 120368205 635661510 71001194 789613908 429457449 826471639 333710810 432216614 762285770 346015806 675023636 861932062 676453698 118995466 190111750 395231395 494157008 155856454 170428143 690251715 600475862 900924486 318781864 854618864 902133960 875427295 203000392 509753228 988703932 98788116 14173794 945947880 491514354 19433367 445052554 438042542 551786807 585302653 353308386 336352904 112569064 967263539 782498206 956517402 227540906 634331764 949820874 536311421 12752951 430199477 568433373 23339720 751626080 471187954 964147127 550456152 571489099 101981348 470805662 370577289 851710133 143746312 464899320 889312822 958964498 363444784 800040269 787969426 860014935 92157108 699565647 250592038 426342421 553750378 115471344 675873861 373417020 39022576 950754910 673517792 471613796 477457254 399733890 793426703 730193792 955231487 931596034 941053574 835978897 573652306 40195836 453674550 531316727 391101597 630449580 156016773 581611053 831340810 811057719 539767892 395624216 25458833 844941797 274246553 142845789 86879287 734868052 599409967 433077022 236117756 582267136 741436582 595897735 628056843 836500875 393614701 445722718 662798085 425341131 274122906 436138681 393260295 190240632 719052617 406724912 330846571 117402393 482797702 379707389 112903254 991557737 391908442 233685980 589163352 659235933 713894524 29522172 158494916 963769746 853159289 278750968 630378934 336961327 202803959 590180052 573666184 169517207 121918625 608760970 261001550 623608484 529840063 296032449 165712908 515442198 929554520 566324886 989838867 958819288 926501946 960160737 928164730 238968854 857924085 881343697 637995185 923437189 412963350 380602704 852193179 475646474 740581881 330453379 751923843 778153486 470294104 301593448 862090715 130570770 462397798 127477429 155503812 308390273 443714797 557337811 988803114 360093362 97142196 340647827 350431564 328664024 915834512 111209965 32065577 364068406 626376940 984121954 74747313 11442866 275822467 189000228 872890922 996729145 632822295 779399320 945454264 262592985 761186947 534862202 165311686 493729754 169272389 11948604 207201598 791433020 777317909 178585416 906614328 852619546 193692240 128746512 489397117 169871244 158977245 220531919 462721304 909499216 957078309 717472820 848613590 372441408 632655306 899751423 595157702 455927854 266832374 658846200 11695298 397366169 713720220 515863343 673014109 607177940 860531597 304066921 511544330 567640774 625062736 256539733 254681701 915677605 456398578 70196122 26782977 37566254 663131183 388706439 491675299 5420369 785872596 996562509 33652588 917220411 568855386 345440341 862108584 459572783 505515645 93379418 439716219 377589359 813004402 216333351 74195782 907522584 395550770 546589864 876882629 230150001 951358203 685575814 364087653 976775163 946134246 625856192 808414298 666656764 100047834 783527749 967930394 517821032 542075912 152387134 849014673 710472164 741058858 618514442 801459488 886142055 700423636 106697816 400023942 509941865 287176842 304358266 163490099 422219789 257250822 764448081 327080018 674404654 966742154 151302640 145452187 329745467 129415041 823161099 13529366 364761433 397649904 734056688 348087570 749037826 786283344 554001865 185730317 179769822 1890150 684397153 264155732 333747284 756142024 641240138 834022593 484884105 887363565 305060214 379299667 329281963 769419766 777272867 419166729 746496819 902575951 541201725 398052479 396691300 28117151 114891922 26193190 845320724 20093316 172151593 380778734 356910961 492579308 74104415 462114390 317989949 934066187 329721859 477694285 461180589 259049238 468154672 725637919 195566029 13541227 198429504 633810905 520044108 799885885 88714991 26388407 889429967 37391000 401163111 886104822 545621519 844834223 75265760 273439206 814618410 780702626 193834060 747561910 696686739 541883382 378026846 613767540 758036644 720380120 557112988 587121594 325233237 996321673 886880672 992721392 254494549 253225387 203458149 927611983 873032937 286210880 293472367 47561648 845120932 353867293 327421099 541108050 199918925 61572548 82746849 993463695 209639780 705144041 994723270 892479442 181222734 699741283 494459873 944134568 646183028 66062827 184883139 890850751 564945931 872025006 981066826 401069199 148541033 744562400 287968778 87789727 412571501 203253373 44262104 498995227 672373364 870552512 978187187 936924012 991581633 564065700 736240588 434238837 518608871 518872077 881337879 590115275 292740144 580903314 597683822 40729962 161002895 673376772 71468465 815127012 678620039 888266196 752302592 773832882 724637343 38601314 823595740 935283494 385602768 124153601 927581826 868873488 409706728 351323037 211986792 848631058 877005924 927763648 533981796 609945437 552328951 974859687 268154687 473979443 819498121 931672746 786201815 917063552 709093777 945898807 30024303 301335904 928236727 85482992 652484130 841041987 905413292 844860000 874696303 219109261 173256314 455442165 710312494 547310468 452484242 312390415 751493632 524679154 584096659 705478248 76353474 32895602 350997248 166480563 162741314 553271578 643913511 302042136 740527065 80517173 439986674 874417598 359962013 202804185 666566380 43614955 528644595 979261099 899509580 369173619 169770398 221907789 298512804 861475060 696650576 643970552 836517714 245949005 342848797 362338807 276160424 704913813 524644895 913564012 875125090 143455054 159995718 440316458 880411048 766076025 236754447 649690267 235022783 785231561 730954855 212060303 450871755 419362342 677816699 443526376 318382459 931822859 433535710 708067621 348344239 904691602 431170776 180002662 261235759 740011150 853745386 450948122 472445137 673392826 244708724 941294933 444755882 862653861 740317513 193047337 213821290 670221788 171875544 260468196 623221512 516260143 736430177 838822893 568081883 154935963 809763988 39025715 379862155 793391414 6330616 683667865 447465153 382280959 543768105 643585821 378946181 554388043 652505785 142747741 984928672 458979276 424708113 54744079 927154841 810508954 244032132 232595298 844369815 210378137 998026594 49859465 906607985 137035196 510773462 540848311 792869205 552170644 786059667 789937340 178907084 322832035 240891413 975930789 924132152 418800277 770349655 240146766 536864551 947454618 247409346 438881443 265914470 495210646 829459899 862858376 40343359 894785442 46870484 56701404 994873376 206332669 627330153 716622145 990009353 109195969 890391709 193020439 143704589 333684044 11378120 965370681 41446422 856259932 625180591 937254179 265744949 319610007 911097218 433371065 714466050 240239781 846401125 742241810 735668838 330712398 805099729 567386113 351159932 826288505 448195508 25833204 528148859 566175695 123067695 532995865 383412785 353296278 284575075 101459963 549422741 242407237 582187230 13072872 959139543 161493723 606176433 501360706 833249239 909333433 743467678 395359422 187268641 172401035 976061299 999964820 921443989 218355487 277415795 515517348 234247183 55465560 685097306 963116845 72001358 462873505 353301063 947526953 766547928 209058463 573552663 950531334 624666969 597108440 126497733 623191330 308945908 825182493 675373906 544426813 621416079 703959528 738378553 82076452 300243369 715934096 315942239 330749125 383067801 22468264 118451762 742172811 87076052 252383059 150484975 117142513 143283577 978177136 492949390 708849409 498930083 70660594 124809525 935336373 982381662 865135823 954968415 891142702 534870262 90634242 92937257 540183471 727638327 229365159 736247774 751219287 258116379 857267879 578607024 166282731 79677567 227154175 956504358 732257225 508038895 905484343 264643481 960130885 48741624 56585277 596922193 416842288 357986367 231656159 422453983 149196484 589431552 15178295 171151247 595927516 500076770 468917209 168415355 487748766 772214956 233734958 202080367 4906305 393883430 304771353 595269020 792334562 467489439 922081470 768170803 832932570 810457435 909984420 173751280 321698570 601555185 143417062 700967536 490552833 768938846 5384550 407353044 95271867 317640065 335695465 857073910 945258250 32277108 378906854 840179442 619223654 226185337 874631365 772248740 434383131 964164063 572867986 699987185 358244942 536888843 494950480 757586590 629919729 425532746 632189377 813846436 412318305 469939399 260386510 818777675 200230910 192053682 374501860 635042103 900092118 439308826 219828046 292486053 43716811 171586992 118932616 198294518 453360290 833277393 52777060 644378874 353861304 198922208 968667576 61432016 362257809 663501100 521678539 952571303 953344388 540964307 871174337 752218025 296519467 418237156 651401289 463472672 727621268 163912771 669228871 311483950 250737066 666953082 884293254 196062706 54037396 444888171 157750699 221368729 789400132 68987117 845678644 242422517 984342633 223326556 280313419 735839652 789794168 771794619 284651062 602438217 199813387 187750223 801789293 417639177 453435107 674109392 877136044 767777661 549713635 383726479 595173061 642976807 191832288 475336816 276919256 900350286 747177281 509893772 408800973 461724117 3764937 112854922 151062156 391011845 657053194 162442430 273486672 295438912 151082637 588595298 191359684 432109514 964794616 943743427 279917432 622273255 355145773 77490292 371425959 864361457 593244875 513361991 682999646 210652456 559538530 561925972 846161360 205333312 546202392 251555963 98427847 872229856 757315957 874654350 102771213 222650288 850434980 517907079 198310126 159770961 471359941 677353412 393581293 808501856 434380407 603333788 889630471 340669292 650396075 618415113 827721249 588424165 957378147 826544736 549625908 368471130 269878360 886180233 342823947 657655776 612317329 811259128 287275691 815907930 441888972 277509162 454543784 667168569 435525744 106039209 334241183 683942851 769191005 182723578 545703990 550794480 63833357 292317930 323483825 22999985 760766546 19886221 17217931 392180020 314372129 823799561 378532921 362276702 744459101 826611604 494319368 876132739 661382835 183818275 455599487 630070589 980065721 477654225 577601638 627470731 814684330 390050985 516604451 759390310 720133251 882248587 199818232 972144673 946241640 577138858 647592284 841235270 751917482 158585272 129998478 57854715 648879914 299699383 864940872 201310941 63477150 798715221 527835983 436467613 143726286 147110262 481506986 142527997 922705121 567210325 952953322 850699608 35483198 102758073 569518130 894191953 666486134 506327708 585849058 154946013 785198056 129459987 389201875 697049282 538229593 623136070 925764484 842430942 763932316 562580079 28713868 981757704 326555259 630336865 541662086 80416992 147319202 11010416 759815559 937150351 400448968 64563485 253192782 977828493 441859791 494901444 355712876 923523790 433709756 373531619 495445087 558049181 36285836 702947798 708595737 461005537 833919760 743108079 132050528 510955329 795062375 194776771 134044013 472752349 299913350 35333477 1422744 769270646 806875151 917858319 892570146 973235986 70685386 45170254 323190152 534786551 654137600 628021724 161415141 580465886 366167179 398292954 585442178 481514700 22429609 85782188 153458806 3423374 733555702 330671769 165345804 947793619 258051062 798663432 850371603 218594444 123762365 276672337 274690968 467516928 181550205 695113417 765936784 325394300 733314881 110656063 792881239 821500792 675134414 841838817 851741613 45724163 562638631 484350652 678096544 570582364 622030306 185145990 910070516 575388559 258455803 171141767 654006803 975887243 579243381 268355789 559324107 391533646 376711155 199106439 285009550 307348743 166596802 718000474 814018901 876347948 837706950 20771673 707347636 282551573 641341215 523718870 21647303 510073088 697174084 619016272 292918587 737552400 869334560 584166553 382777925 528242979 445845526 773524165 823315600 664689290 335033805 24608091 554090807 255024056 106379591 200635768 488782026 550525445 130150276 674627876 482661612 17381652 386203105 853859568 11443889 176108551 737735140 407264715 843320240 443744374 522241003 546263317 990103198 731558104 199579146 232161863 562295097 12335187 135670735 114843763 327705467 927971740 509148314 717548307 199667499 76485540 728520005 805618872 295264805 845886638 685344486 294055471 645653718 950320526 635078362 176853815 669049911 77349002 448514868 862959715 876177270 675160202 734467815 485202298 317115736 953909383 975961773 259794361 921580036 582166422 473434251 294235843 621453064 241164306 956908915 905589366 685210123 158493405 481420789 572408467 263722069 451488909 616083688 766085898 369567894 886824992 19330440 196520647 539218394 861448521 156046468 736610883 649161312 929418442 357971588 46425695 736036116 628740873 817035095 374420882 472889964 369410056 485266383 781950069 169189375 497069081 443648254 48212443 790680049 433860863 933381134 344290049 515169716 73508418 557650658 695171095 339657531 297318631 637114025 779341581 675473051 635553294 230250252 362913499 616550091 687161871 506916733 842776471 760451945 689445684 169732239 542134212 796158672 360492969 884130437 726325312 576668483 478776176 416625822 597263139 401480605 55346715 393051420 324082219 992580863 381438947 948311487 567946327 691031769 461196868 608124354 444676078 666431653 712782077 296764509 455268394 66903834 306379792 328426431 735735734 678966006 766325771 927710362 701687236 663677551 794250200 851325456 836982644 505283558 242970309 411065833 893885815 402857672 87684564 944717942 525113779 790116973 830493270 363145745 896573020 219621290 65498262 486691946 255364209 463809386 465588250 663414757 286244021 227471401 577187829 441575839 122399005 930374347 735210998 445431234 564472513 884994918 248539196 882373034 756728150 452801163 151085636 274759180 616891991 309983825 500570962 68806724 558452058 17263085 46756134 663147930 149073359 442213611 809719137 824219231 948431592 595112445 219730475 374630598 772532748 341933507 878188213 509421235 259906881 162559665 797080749 626886153 997607229 713515187 842616440 786628604 884833271 747965727 381903834 227796420 803604791 361217475 838441622 23499468 571981143 64966244 852683626 401985633 328966408 546477446 845344021 319802878 358250280 313037788 145872853 348371338 503858374 112249842 392816840 354636640 779110133 844608193 744971090 680848202 442951302 114299544 586075601 41957265 260558205 420594898 62807208 462806942 162364802 957846424 800102720 259774545 755894729 439467859 860888747 518228318 620949608 826432451 740374077 329030186 829031667 275617355 886826492 959814556 990982204 107020564 362862750 47691875 757361730 428919626 872845456 106110576 552919711 338500581 343133524 935639703 149792384 735716700 695880552 58330546 159400236 597233519 554716565 623308721 717358227 182674443 101062540 20692192 484747977 3917793 797570950 893117072 189737717 613568175 279904697 56014096 50516003 293918912 806421405 272947717 987006813 302773353 519550813 915576503 894277958 437722930 986534242 308305967 496008139 551788880 457227174 104785363 335556780 603667408 560325706 32816130 728119591 626323890 499232913 130909513 76811216 531487702 756637939 652542179 815058981 285863269 978972815 505619261 281300048 471952652 551909963 821688113 247649997 784506783 906521212 818571739 349245992 820289548 913940175 982510039 223413064 39705350 57994447 534261701 623088306 661493181 175921978 954772148 877949007 302316955 304049044 112050443 749505207 607872695 1214798 667746854 263081044 725031403 572737993 11837363 896936375 911639612 135312847 823109227 281885054 202404829 799120298 316041496 545152112 956414523 815038714 591143352 14715831 751385795 664548126 67446435 9407919 867947270 523722113 378403659 688623864 426584151 846949657 590397852 103607759 91367340 389670802 171238011 417413509 764418185 374374329 431145374 814925867 106008977 669353963 562760278 853673085 220707972 674854022 794717009 451093206 805753425 256110423 212656773 752716463 647848327 308444173 346339521 438108630 221111604 570358108 901634388 780363272 219365697 878814807 960181227 844023712 694358050 445064144 629183667 600178104 224430751 471212323 316274260 667754133 928672443 826436529 166756778 961487661 204867795 501224800 493482921 436802899 95583631 715394372 837824705 919336803 413853777 557336399 450934200 770109996 539515994 1635994 799773820 37623788 326568327 165104582 800336208 972580748 839056194 452808421 370289557 149189226 656801620 466438242 476235667 39102525 152664927 118038205 970292189 737646376 418274889 420590874 676818301 409616748 263851285 842361163 957412809 980910339 505429881 121117688 650024141 103106842 335356599 915403638 568016681 927024568 905670413 602181280 589509075 167127697 327509745 147828587 527098393 834713650 345278005 320773812 495469798 331087653 517812304 1455522 481101978 349911600 103767519 583496832 148532224 326020957 394446880 983923546 307297328 360434355 774388305 503332035 128080931 685444382 816780774 932483491 996506662 928170631 130259926 694386022 637791941 795667855 501582827 787712826 954212896 235990573 797813636 91689496 820155139 439124631 270399373 429246177 333448373 303747334 533255482 439385936 324604210 209860176 58462959 417970412 941742473 112940001 478570875 673431787 401196700 350417431 386695976 652970555 769336013 885227119 931243048 832329166 940448492 208766806 679882918 144222111 26916529 628434174 419074133 517831521 980640638 592357552 210456187 625205185 61758422 637693649 134695706 314828197 447834410 957947633 967581796 685047716 511765685 859599088 815419423 903539433 26225647 750359456 827389307 67136693 805173220 923812073 805310355 492597451 301597964 611526756 936648035 707320101 792319270 933391455 379800003 58293491 32490628 563721181 241230652 343427535 179912040 349460886 650003610 574058967 993138290 663255296 116070377 952612540 266545989 105986503 358226857 56069779 538582312 61245779 928097172 883542491 779677630 43959023 649667566 258689494 324010603 507613126 311354408 429720201 768084006 483117591 99401609 852899816 172640326 844829423 619670705 101771147 572288394 677144272 634783703 621730158 639893151 231062267 46413021 194446296 222298685 899150582 354688059 867614243 339386972 518408917 576515155 338512494 206030149 753805516 711512124 7468011 451121861 718665043 146737277 651910944 42017367 729504564 202221635 565008874 530525859 562115108 175428332 547636517 321670753 167924061 385985198 586398369 837297474 103365365 770190547 929043434 889001929 36978672 117480019 284049088 740296125 840752892 78583133 187112400 142198135 685534505 549596983 354057759 761088828 19246764 911408810 23068308 632794478 561597728 831434047 626922392 683570530 961502150 303907422 522107087 768684293 647727063 780361839 468332137 446705884 506294625 5435753 577403691 216102214 873876836 885728990 549696126 695777115 315970958 118181722 350899520 69605768 232188956 622643489 533289252 611311582 256978067 593104013 819832025 652285496 651708645 702046340 72803474 551395241 760426116 74248662 820920733 529824987 603161301 525751475 232556281 952336321 384769695 549709729 21049575 192094142 27364202 126596770 601500228 312077979 501435465 137218369 759158019 622849874 974600629 382677439 506380572 257070336 377428669 824184965 4465486 225810610 498818401 936452720 131177573 494177727 886927506 413225736 663776360 722090636 680564709 9252062 317977542 541557997 762706301 9839291 613717767 770389295 791435897 735301842 898622805 289756482 567129242 944118124 737926581 70932102 16960850 446302178 848347008 536780310 900718099 73075440 829925516 122329940 607879841 634681416 200788004 66324369 400750406 150331809 76774602 518626747 973541714 263808898 250331668 388544657 203418712 448061788 450145835 144103208 653486267 914060478 642311256 912442691 262636632 220173271 258565496 302439480 748650731 647500789 868289987 243373756 430056590 536279425 644420225 992974198 292598924 556290231 708356924 169396792 610744337 126460111 286576511 55188338 908465047 338472701 538915064 451890096 836689021 758491292 775440853 364474179 196185029 821765584 630083930 797299032 125415570 288212907 440390829 956333285 659072574 576372798 882762623 67430902 15174948 331025036 934126767 869480088 207999212 593702765 778802897 188398457 857882786 408332268 484690832 567914772 540897197 663764330 715583684 727765210 73250310 231826750 477440506 765448497 953291378 609487716 924208900 410986398 654927865 33079921 650169844 964627104 574804763 566543798 310382168 408023128 84683814 365410817 523208677 135162592 717075339 890836955 915243163 347232758 590012377 556017012 771316196 184282542 961108704 306849194 840295916 933813228 76383239 387218454 983179928 801410026 627823412 337806366 139410795 357683951 816562973 371600512 637282422 171464962 693418197 755901905 796511666 654900238 600327694 497691721 551356268 974083329 450296044 101836119 274587428 626879002 325089944 297430593 974051002 875922117 255141259 10015393 51431909 367725073 26916391 689820876 565764637 557946001 923573597 946969477 211555308 451853125 362101860 349896677 114005197 46326067 306684528 773716771 34807851 711858917 951831630 99613796 656650523 456417555 992110277 950664151 812093368 239748114 746855454 283436657 636898552 178830599 177606927 428705386 552724237 748896946 952804586 713151752 102489737 356029659 325582502 427021433 509407172 67271772 271345312 27415048 763254154 487647442 20070068 126372084 353461305 420852721 11533000 936729378 434596463 514516493 277259935 883320902 78438353 928682224 185256798 775115398 307636503 125201792 263679482 664622286 867034368 449535752 317590477 100725238 24318426 693155594 626383613 408190970 378053949 190986880 968911147 7280890 979692853 989738134 419028393 945472713 991320102 650486667 655955050 485781 828097559 573621561 302175795 84840396 93387836 123208108 175521617 678033726 593696953 771224612 457167760 688899213 418938142 177294767 487695152 100997282 531143333 141578308 589706543 999995251 661204752 95532587 860965683 563155433 661042884 763594240 298247461 736429561 182166199 573735245 509200343 250264983 630646708 525820455 620182214 501030587 528941477 260751061 953143804 956185918 242681443 905306725 359216230 785609771 834195007 726808194 944767991 231431911 144983407 67064100 806468861 972715543 946299588 596796855 92838778 159242044 204026550 503782778 709118817 672515977 103127793 463285674 602573424 339240776 581788055 648616565 783412244 556856219 312157270 587857922 468983734 210438450 535391495 197268595 619166215 137066320 185369788 456135319 673233452 86759015 513341375 364206480 65047261 636304349 746324553 152500751 461870047 72574440 809428195 769887393 957242749 331925766 374602615 189690632 902930309 580756957 294803152 360607700 175706507 135383142 531449643 573224593 250449122 962609298 964911687 740184523 199565871 320514224 413381213 915363897 491230767 150716286 479015557 509182480 209122008 890897909 726106093 215019947 170367721 41843479 871540122 401950715 915171198 439902001 604112368 613935770 443805632 622968910 176816531 342413447 272267308 279211257 659211243 275347212 104087063 604004773 99249351 945264162 666682238 720524700 845883137 795405990 577951051 644883358 115449600 713069909 603523428 637956891 699565612 53762497 132187738 937742715 536552870 874138096 563181587 713518612 159493399 740041758 612818787 408179763 873295057 413034378 76172771 403086885 786112840 681598313 905355444 605685295 917334689 902104013 932381178 646320402 806530501 527286909 274955542 674338409 813415189 270708854 87221153 360750535 440827402 600286366 940193674 785186606 793875022 352787521 742533561 279672788 893263631 191735819 619211553 474124645 580199029 663735870 239690597 40871341 466494956 623018393 426436545 836638443 773004149 686864701 515853085 386041314 852676577 309766676 847820838 230989780 96673163 827298089 959088631 543154655 162552132 737186139 965212285 511520967 74073554 344462974 83544544 83400564 258818277 367888485 436460154 617344890 904066188 547530474 488184058 254795585 613334142 135055401 798762993 259268114 296585599 503994007 425218124 720943563 960593359 844116159 114289817 911308394 95530159 404952934 941375976 694665575 324722785 225481785 348272676 754205725 212392411 228041998 405258016 417454406 112847343 350750687 662816219 907171347 439619584 330526173 824953100 619002717 176098481 370702098 394204377 281191006 969175848 703629477 596043733 354160032 292759731 426708125 503968344 326294072 733609729 397442696 368640462 764702307 833600522 714972266 81925396 17514688 621690465 593173417 418723370 81648264 382449365 529976776 338542440 992561125 315840012 955916037 992362739 500250650 786738646 275451780 419665295 464008207 71190728 846206842 190336300 3224129 909914361 896443459 534745026 798984715 384221431 752191534 71325114 514336 849707830 293340423 125739577 41355877 81634142 140742100 937699160 832263450 983098341 690644716 508151182 757087768 48918188 541949681 454334637 508412118 830534455 711173755 792186241 43150143 778791424 963083705 275184937 700549941 74009068 94452823 600610296 997194740 402009487 313434144 157363525 828142563 849891192 75227170 987976747 328692196 888244919 602807208 646188295 438082065 921794882 597537552 37320210 228806640 848409594 463340366 688549898 121456280 480111979 244703038 693828146 795307544 660528193 41031789 279895478 407520585 218434096 12802360 215808196 827754171 215142438 152372186 437571169 994086074 500284954 576761939 398620132 565642323 254636726 664114630 417840512 21167869 153469882 147848439 335271989 499212450 373484090 120378209 232307512 512848998 523666271 905340867 683509732 211826766 518629739 462977814 972323980 690736905 829718050 440385186 699340561 739179246 396613546 340466292 199318614 833231079 920376300 114557815 360470659 574676162 921876873 587468516 462579848 230067967 141242839 211193584 186070951 4330577 244527331 829461964 561498240 112778815 47868027 845671568 928384527 802401902 524582986 500619815 528876115 651826035 421791028 483700771 849479378 344454188 606514306 63942616 727523775 697381775 88864978 525393701 98167191 738234869 949470652 844075492 776286363 433852307 369597553 180605057 88810341 22771217 592109904 599805132 678252590 485195636 718550697 912450499 213789700 762895826 610921172 108155495 843995994 417920561 169979529 110886260 538395434 965802968 41101341 386732707 439599888 697234574 146232158 113758971 4036634 434401389 799636452 999960719 571126195 52251458 337415021 327677019 449265004 886526404 402720728 348718714 66579023 477123017 233068570 169085544 536254018 531464053 224113748 674478815 685072232 700148908 281447672 420596270 739972478 694962237 618955441 376562222 31538303 483353280 454316041 817834193 429121634 758312369 531963193 740897799 999853081 782714553 878894338 302509473 790856938 942551731 18581006 279164615 319870673 27787910 495504454 110189006 560305818 51492010 706687091 192929372 840200523 840698140 382576965 72373760 448223943 263559193 660508781 775665663 381182452 718236693 716118283 261222960 712219905 942749971 876916879 154051992 711768084 644926275 819122460 855083036 63312806 54509496 786379813 28311059 593656662 421971955 957869971 587430453 151006991 123426703 307567115 991547825 816242986 404022887 672194953 301475136 211488388 422734740 404678906 637080588 838020463 456536526 155833425 443995368 993430167 143810589 885913273 607811012 860834461 7726966 935879231 342797795 170254510 892794582 853273207 316714611 478919804 249912530 190489144 67309080 53190512 508344924 993258898 837495561 583188651 43249006 393538204 264145446 211882715 815296511 236442820 798719978 641567516 163668795 801835493 202170065 371203043 591941689 25021585 197358787 940602656 485916385 387396672 833301850 396509932 239001984 25170819 45881210 206156975 915240395 755112831 83585836 467992909 290730991 520859751 752191188 989414385 795884724 243747033 296004174 461891149 144070910 532066013 184439247 861335724 474304703 432379901 378306254 61040417 663852936 188468119 529520029 428478710 817791433 60636779 725511290 810662847 922826284 711442186 42567081 779049947 670992897 519970161 524133758 693245019 303849721 58423031 319385367 888445728 393168583 919281641 199348432 258305651 404799015 974721730 258530880 930264497 123217143 805764907 385735089 668723294 624372776 196074750 442981447 703530116 840876057 923021381 55378348 461400070 334606093 675128430 136160302 54540433 778788297 870912637 241985335 533557366 467696267 671102692 367325398 477678382 187303021 296819579 231205399 476283280 798466135 366590696 352419329 596617546 734450510 797180173 504942788 240167417 794629608 374503749 964715075 78835616 830609873 860825980 791371523 996179318 539272832 123036592 922577961 815101290 518531541 802817098 598244293 613828360 52881871 533039388 777771569 851635895 742466195 685096608 638704483 635539958 656607153 824274074 634900447 924264390 718990136 992699461 516984268 621362928 127410555 763749043 732688571 239311382 955577608 463179163 297505494 640197232 992058309 726617760 220557207 803838107 629486846 995051047 480870138 484127985 604128011 576422612 573892912 101546942 894128097 505392870 655130167 245687847 687716139 766054499 275044031 618251094 439360311 594360752 306664057 30734406 686282500 293983575 782591020 116391043 242327417 45277252 592614453 996226446 998556563 754994716 246594068 432575735 577080700 61398084 423936585 480307104 657654064 876355425 823498775 166505357 233140925 576347430 435692722 9810037 638769962 956923809 930879124 82081338 535984042 268649697 658484262 693605444 536641561 862367673 441509720 4010033 219886090 819567478 980998403 382075052 690912677 488214995 472658287 408234795 981756023 81575746 475994833 224630687 268103084 784803535 881523804 31146918 582315190 215436238 262400100 55497762 590301414 351383537 377088941 720051216 425509433 264805014 124178593 514422311 554737679 512845744 263860190 849665458 49334016 283775927 6063719 505262328 790535124 437587276 917406187 756480120 675815104 814388138 550134086 940276654 944925167 552047186 65566153 515015547 572825518 714559257 400290637 448923849 637195419 305513947 612703427 528790207 103592154 918839938 118167596 972288024 334252820 344920647 632192026 146428331 785256159 712305026 714494399 721743102 10863450 575900202 361859459 538280527 129777435 237211944 689772272 485065124 637842589 482723287 566372692 769167749 291877294 447468042 266053846 864378048 161291791 697204785 794082008 805026636 490004111 454906863 202441355 933044884 46341701 208217294 483451676 598980967 415221645 204407406 214427090 151335031 730705360 849753068 157628271 60061924 109939070 112322961 606231403 882873281 148100811 921555988 44687008 203428968 772314408 365028172 376477438 453538779 585565119 660154298 96123159 413568705 440989254 771440743 278232883 473520390 386643002 479055430 760250524 798172669 79724364 79747683 257063930 396518532 800663304 926755704 332050388 61445585 279777677 449227622 902584624 392701889 85928971 952520520 385696516 468537140 748055844 280657672 102457386 12112493 739823014 360413288 254241777 402504169 377341208 157129956 695639588 838274407 755286394 307713506 760008763 913343686 638880606 23649638 855137611 317190795 976029609 966810794 411872091 589917817 552988068 671356685 272750094 247599727 382784614 680164257 128172428 597641583 492196560 158295750 672147622 501053082 788879816 727483707 831365187 936335372 143772301 126187669 72261761 492053107 910055638 288237663 167081128 642118119 729524636 357953329 51657139 940326082 170363495 386874563 289776256 604716125 871967298 249637999 29878942 535693863 285909531 534784261 310012585 430321854 75943245 971195706 117765600 337781724 868359489 755424112 785722708 132597304 661332832 282895476 248458861 729355886 311033951 674249360 570180488 735252861 941337958 519652879 78615018 351424393 976007193 544226512 221868495 209154070 453099373 35399861 603243942 850069559 104949049 145157948 328642145 192189309 656416701 894323240 412427232 747341610 707262727 123312091 863818446 197231231 167792669 583961960 303531021 101083499 170994462 765600889 973125192 659721125 669710099 853322881 737447205 315412778 749124749 537618549 915662091 441472858 434750532 427812428 546562668 831473615 202233695 30032413 150177027 976677943 472469818 88652177 651758989 552989198 581823362 462565135 427668197 454927960 541665646 23096475 333677130 316204587 825058015 786977710 870934440 121091814 90752099 327230072 577548312 272260014 846861102 973088948 837336748 823373620 456648567 549276603 227887005 834780138 592048962 479399648 810609367 997924830 177072251 534903114 115707046 713927463 759211199 863135232 318315570 952873775 626248168 125912935 479574069 54692349 87290313 764389612 710461599 951025273 268501498 320478458 46876526 607491197 794410213 951706361 992378991 865640276 355570228 918453585 101602337 478615217 335654963 556679102 699272241 826624164 448054653 588399781 169600828 817764930 916545661 350970507 65138501 807269759 575770125 948204785 594342459 8074275 954238284 21145934 646635947 890729315 302440097 522872068 455046943 80627415 563322868 382480809 421423882 771749292 349287246 531772247 894563325 977648611 74017623 689561538 781187708 620107667 854460636 848849252 149122102 624587666 78820111 627251398 67122114 562501367 574840195 552759560 893756595 586444664 542838653 454661214 952836759 25754618 745437181 896364333 942110588 970523425 587497713 527156336 382699019 5722483 337165720 955123874 670967914 868976190 736114343 214157798 587517616 365407711 755743561 431120457 233483804 211290297 536104977 371137677 676783457 201440618 163127546 398145481 114267528 899771498 879536561 359699595 761158008 592163533 967628476 25529009 674707980 647715651 680903042 574929394 762772326 680229014 564841843 426503388 983406907 54678286 298306728 147979772 658548832 753583190 671917249 503931910 884140941 272269809 765247149 793509542 628849562 314562856 106769034 467388462 234957809 737638177 332159081 545643239 951584935 48047728 112285562 270315821 658544212 924644664 179112732 72379618 726827362 316699770 629800364 325419952 593717195 218434005 974579529 829143271 954924032 46638356 504710238 218553968 538282314 912332979 676447148 457305133 52716178 318268721 606999076 616156404 212497175 518505683 234220268 240353459 925572099 31285510 474667527 334755202 20469919 15445032 634995448 472423791 656766912 684876646 724457894 895327453 670935149 503604471 760386754 271749938 292583134 308741123 576523378 873866086 304047917 645291136 439569004 304642408 83857912 477446641 673666854 256194802 475539943 222360897 352608846 810863860 186094865 293970978 406413282 500831001 916338558 81666230 34624150 176549629 159695378 624780086 355804004 705188703 746307725 488967733 556110233 437029431 707402119 68553716 576024269 988588863 806448471 921583758 97786910 619348016 659813831 305253878 465685897 270551778 549193130 457564962 343875279 583148055 3098450 595881242 84932511 564081507 891327315 912174845 47627468 49632383 97311268 707331170 13047527 959114356 122269327 563787015 666471878 236459677 775465471 810916786 273197377 145294968 631752299 547060232 965630750 78669733 836136569 958220913 984284436 267288615 104168538 406107269 184881091 634197905 554323512 618378521 242027288 479223989 399512325 92143812 773212478 30110235 532476123 882655845 623752608 834483256 341468466 846197877 7074994 94913664 338267247 305686364 720824458 270644129 966191119 794336848 717574307 267321950 419562576 21471565 477732141 228067383 952808811 91569888 864876140 62910825 842282973 759565100 295986654 810744801 636470255 580440995 308666530 775214192 105944302 232832924 449486982 909531600 548645205 781902468 575468178 676388342 619287112 800268580 127082031 96516801 469428376 726201603 820213352 671157163 500414998 742769461 163087462 567101594 311562054 586589062 279179131 943950622 87212344 175038370 738990095 340857451 370449414 975903767 123773206 836703931 752293016 29392718 332412736 210362588 612209471 869623521 479090465 280401201 128792858 318790029 456267623 153193581 563891123 355195190 723602549 774774208 218927332 733892130 976674555 932590236 812239002 731592687 808323141 608737514 545795626 144262382 501526197 687471535 168995066 512883702 365964887 768288605 522240080 183239165 654075616 808429469 780517602 198167946 652493609 447925750 114396428 466889419 925318781 174897851 43687690 464873003 839852493 396057584 439404517 425507880 426367466 279675719 948738127 676794140 963973119 732116468 942844051 535382058 30497190 13617011 898508639 537812362 263556528 871113674 906784681 851484340 290458503 328417098 486826076 719313749 968704973 929291744 906595173 305404355 667806477 651629527 587128368 345906061 630178010 177512327 567992754 872372674 298048001 615656876 960980790 220623137 665719139 56271743 190743882 556338971 878212120 829014399 752638824 67005274 244574574 409767037 888401336 63905418 30456852 344797738 706850775 442427929 795749021 96413493 170357142 547962085 233540409 115223695 251349384 920434068 896456533 827470304 146939297 451997213 950001680 516376131 281525747 814868387 772202939 81878386 615477068 242805248 855668897 276908432 649450747 116519833 285457390 37640029 280279412 439008026 968635360 822344590 506792780 880697925 428547887 536472851 726935928 326175342 587395789 143247527 136022598 173067591 197293583 36980257 161433745 137508895 441781823 770512819 35211997 680613777 15800029 414571567 299492006 61684875 542020022 305325718 373852853 979986589 347703837 1850841 70474869 476518605 506580695 394331900 171242196 290577057 628065087 636680545 955247295 831710569 794687226 827999638 740555542 333464511 628413719 334964619 937803648 939149798 954476141 937472632 80947054 219824534 991637870 576444631 518494338 15711879 102462033 872525445 659848616 677910100 287610676 97651450 575202036 905355945 842078837 108557277 655168493 671557211 763286574 267178127 743789600 480533249 732528842 499333281 262708904 381516803 256848788 40138817 959290064 579177592 668696847 842076337 954093062 869006362 432134903 843856333 233557959 811914430 114306758 255186402 872658704 947377552 688102184 665820717 619035745 70540468 901556768 153424641 46379142 958973593 55849228 677081656 301889881 817426281 609266250 616676561 796271419 158952235 403190517 966025047 761753896 216389335 143333044 113941379 550178887 963763262 747016053 784298515 583645412 988639636 57575054 750230344 633341424 217638093 38143292 427289888 879119606 566395281 12820347 553120155 952158416 670716003 161042908 475318527 504976362 648519933 463818962 16239782 174923529 664118143 723327722 94060484 45956008 812804482 694157207 641850616 502976822 69214391 489617433 785536702 118855507 501760590 975666626 131608158 501281425 249349694 283315202 477988498 66771414 88024890 975186692 86536108 66488167 863495446 618065302 766565837 199990453 145415730 703713240 185844479 286438348 149483440 368835539 888422066 891569779 181354846 45463129 254205661 693802137 64305204 916159781 981821335 153666634 28999119 869657008 175761192 906924360 827032013 846487981 731108965 607388592 408841610 439707750 953164283 10700881 623549373 401214791 543306979 804216612 226954665 282966245 972764435 370437346 644786086 274707161 248786244 897607888 6261221 845851868 300936190 585212331 974329365 918962449 91798355 247636598 338132968 353897262 465043039 442965023 892774341 641507357 66289585 547035970 268336668 445251372 305641802 34760708 735327329 368959788 673116893 432516324 534076311 351790403 765693538 102393057 74144185 734383436 299786000 811475647 90131922 164513786 802958204 708189638 22590031 839871969 103844346 778541436 372182484 890745112 496645174 136446144 976350185 848340447 356332793 447992360 936998089 556145699 348542213 752779504 994258098 803724810 799427245 498127655 71218059 429670097 289893025 98284277 309169852 227371949 356811889 948680543 600252007 597650209 713963059 179828653 914691740 800424465 884073092 281615910 912863604 447701098 389391783 281607686 521329309 952235942 883078988 644800184 732070715 670527787 132119763 365672843 641260697 407108764 870532557 213148648 571218549 676827673 529841369 572223813 271058697 865026423 619514915 182920163 455571197 513611455 836669506 279821230 678554017 429667463 123016786 671348172 942800768 918512076 7845031 31399272 187881043 122550529 366335093 967415459 379553616 472266994 377918922 686333172 163424748 852093293 420843289 287976921 609406305 644185829 729465914 987917987 757233025 175567612 498481104 545007811 352721295 124327058 194918663 645172366 874052227 894817653 585046090 765621731 24314277 457597323 894459538 169837182 290382052 749584171 889670913 90492575 813046097 964338228 952096310 12941934 544230161 49136616 690525409 676810158 963699219 222929473 630192727 65073108 925223206 588036872 680942290 214552353 768882736 479978633 138572265 183658754 844142019 532695472 564597894 767070752 381836578 423451771 894941312 484678303 601333294 541147537 189137809 610829913 579883115 394980686 132351981 290366125 715682133 774954371 900800081 963536676 802912719 958343905 535153099 890681352 926533824 480724552 321098231 153301072 50292863 879012908 499651804 303922666 182042140 968397824 348135217 286377204 328196623 720524193 336128339 796175562 206773081 623672644 858212054 392617658 885246016 363949004 951242700 988697884 912001151 344955684 63183419 871481792 40606840 301932695 878585974 82799906 478594638 858429093 540400205 922459315 353698232 39582715 759371894 919925414 590751161 999433927 186778213 54270306 389531353 442891521 18081474 415096788 565714831 512517366 903028857 240964995 467430236 954651674 735809774 167060609 588494328 131142549 519982453 135875947 43484959 718991696 137137008 665226405 839957921 905660021 197687445 94965102 371841036 755022100 610970475 991378816 929924804 807217461 905898064 859473360 703606102 678656944 725393331 703533852 225033939 430992016 628631696 864094203 720712064 648546507 761215721 94483245 545230636 926746170 676922584 785946138 456097572 341391334 193649229 74656833 385452837 968808403 481768890 297574632 414927726 997817099 85044515 238273272 79168896 457629894 582843685 752286653 391424833 202874499 764135828 587871889 338888876 763451443 682685386 226701193 360176568 150143050 151419173 845457035 172061232 623584939 145637609 842718163 98598289 822264463 208014416 279742884 455592650 137835717 621938774 124073242 661139975 593265732 81910549 660146713 898097763 179097827 142332386 487020973 402535720 658564677 543773434 575045101 451859532 817563742 607824059 712663722 813061196 31825058 300382122 411599506 649987685 554135139 366485502 490556369 61289264 918243060 741059576 772318455 663660347 894894379 523775666 348429104 262092877 798832691 688683213 872351309 924134324 632197535 70515378 423722286 236509514 362388498 835304660 854574733 96701145 482737779 141790372 319146554 362855439 642068447 236456143 329008032 695723440 313902980 918966171 53185246 804171716 793002511 591203148 363940283 933214798 164362330 995205081 810560930 591523929 309030733 255697273 831935551 582122135 346169146 533239409 888763032 282830597 591583957 596164238 624604581 780409138 890183442 594377736 399005408 900059320 850847056 570141633 859449795 683733253 280380337 195194027 855537515 634202038 330257426 34949210 841068981 998624256 578472734 197025332 49115715 61277227 784909239 127756207 893017998 16917794 398555540 440067692 258352876 621444221 840888663 658100243 815795835 735495602 556470643 203483552 714531435 608907413 173362335 501485835 321349365 18763868 786588977 641596824 729409006 925648417 585805220 507411895 750234426 892774235 679284062 87468376 276751769 96364048 33099338 577025145 516062162 421689425 258843477 493820503 182416864 407264505 760090038 812094843 172103843 877943284 937764379 941457778 269384411 483080381 332483124 255398517 860484811 531312558 381237070 21509463 652089646 657414712 608726653 117388982 72114332 689160784 997439374 265740563 411657755 311479517 644035734 333447859 629661341 692749764 454730336 82228733 73382482 879038902 439693215 305488373 951918198 955589759 116414556 620390686 486056936 52905955 743287289 112863949 240521287 830130402 384578713 165595550 952646569 580435419 607675440 635881391 135810612 613437795 729175772 363993908 354870767 39355254 612325929 564384293 136786739 487022870 487414784 541828360 578514801 107652241 651956290 894220694 552239100 251768053 550996160 516397796 410153538 765573053 832750082 965375754 855493396 576176951 499654965 971092028 137074597 380468173 719976033 429331926 897527498 455478497 311432742 315749349 830743321 173520214 308244502 13517584 877320226 695986094 274707821 456570280 970295272 724809914 520582659 192939010 252916012 425699022 282382280 129419572 35904408 600440746 555049575 551647458 776522835 705690910 905038651 181118333 149441056 429789386 938062378 903470181 298879640 18743771 491934756 763999011 36417696 56450789 964261633 170787461 248092349 746851749 167151744 783137272 424249397 941891374 914005913 911254691 546382942 850528611 928048648 919933011 454345009 606095136 636878341 281014503 475021562 16182870 232743697 493887625 68221780 42241836 347089898 130342811 627464170 157745359 414784914 572244976 774587448 160968590 930329534 119607126 519541372 190435715 212816844 285886723 934147667 241706496 964150218 288554184 608418990 729378571 180822818 501698103 642414074 487117079 893067409 286924708 580994312 106453046 789965796 537119862 788369767 150468506 260597248 326234998 314122069 48235886 357657091 121441967 225482847 520609356 753188107 669030503 566616771 976579332 464103337 253634269 276505883 464557290 411343780 965502051 924663234 840358931 928576111 215804326 385111825 741341503 578515504 822947169 712380788 559035409 893552079 483744286 163360836 662213330 341286374 270578656 59676410 90816412 451671393 389011886 865396981 259227335 473144596 983367492 771658866 701257139 736284462 630713897 951241706 156438287 690082017 524534261 586614262 822591048 118179354 225073386 616572028 842547252 352593302 951849682 815319100 884410220 828500106 108756713 146933385 501267368 814343682 870212865 849616304 811251935 338975015 177571502 20751549 653877823 64924204 355978015 938966625 167799543 343654071 660827436 190844303 187067435 989141213 462257418 536621525 39920019 164196056 731044331 524959761 265658223 540339021 59401585 721949133 411665697 713996645 683757456 990942213 994958240 529539696 978966167 347979913 384734480 398709728 707615218 890423373 7947186 708888631 732477434 618605310 18092908 437350169 300559942 164166816 791757764 922429043 538654627 79867860 236647578 856160466 933070426 393405783 164763553 71154666 763211496 62231667 517778145 105721123 938536710 215858304 97697937 894692646 987968013 415212150 125182992 379757076 284882699 578557161 871241508 874483419 592968506 564220464 685194589 837790142 440859047 84480614 101853459 90198484 411077595 242975246 400691193 29370347 371933540 219141580 369546051 333928459 479130665 249477171 261796816 646582271 521730270 345238078 603937859 784523831 260454886 633417893 71294637 609488197 567223590 822193514 379420380 370619239 938394521 21432562 773693273 950137178 553559410 189408546 478711470 824241580 966982414 485279977 164790577 742188979 145922119 499149143 676035726 804502882 224591630 948431107 912176236 801314741 704290022 86332371 200326580 72999091 453438635 493140068 413389486 548894603 947016801 766728129 968318916 666957086 210466229 154253282 208819009 784046292 312659085 559720130 707042145 943679244 91664515 336373831 597645311 346998750 655462779 839620595 48309150 41270516 635947116 92996341 199238279 213601738 629529713 642844566 729263175 19932511 958502951 242831461 626528414 829859102 286372210 171147945 528374781 745133986 150278307 284130119 604385643 606591764 165453652 225682113 217048979 35555700 360374485 306721519 249784562 507256814 647156662 250779630 854798870 58730522 388751333 184479629 104037675 401563225 669865156 289282281 469033901 917621935 116566662 884399840 723435611 578302614 290163079 311591936 707622240 193409514 809210743 531305825 347685560 340525557 196260084 156475642 567984007 474303766 206034756 84931786 42497178 647766436 300007625 971033215 345635472 431241796 738535144 251870462 481379741 226735759 590016505 819192736 802368476 884557253 579381391 388083981 426286254 28619480 854286029 623486495 804498823 424703259 936628753 264762981 155280065 271360003 140525249 753298137 64576552 675724019 559374637 575884054 435439191 637460029 185022017 556698785 319860082 675622016 550654810 58716016 454380232 711528953 844665410 179341936 252159408 730166835 790303285 849694360 703510856 372492935 159365036 112775678 636871610 877348613 530487546 582344 42305520 750602897 168130363 92514008 721244714 443946222 151854470 592770116 604706625 652967942 364946716 121037081 189553148 474281294 12141322 478724884 598462651 219984594 182751557 612244512 340680395 450296544 279652938 828020657 642450147 631932895 314363597 221493957 529523722 306117945 47790004 542890395 913889768 145544844 709730247 938334144 491864332 692119499 770248070 630748626 538417290 889407834 9953738 922932457 998610263 566780852 645500305 571518035 869539636 797239715 462316571 531255400 443326388 401662839 551227904 415978226 81146338 372494007 53261440 931821212 913676514 485483904 8310938 70977930 726733838 465531237 906986615 360054147 132394700 778214502 372479055 106494437 522348415 9488113 656982627 702379059 279076828 179473817 871807272 696055694 294322556 573326819 342428376 898392363 361341213 77673714 762083360 224095078 214571521 555178731 627950814 699938165 870311122 318129796 255473495 693392852 949417361 34994902 70137086 508883257 685986556 156608819 495312531 420679917 922107504 680387127 798292049 42205860 680284386 124263731 755406578 206140278 439536114 75532757 380211815 530132475 334699275 556113951 10762199 971561375 927592674 527846099 832433909 690744172 107487139 949448756 977055955 823322997 733472167 670174605 117051557 770275525 847060547 115045678 428528622 772946669 741962651 940962949 859821088 423727997 99544278 795091120 350265507 720728294 261834373 434608503 427440721 212821304 959353390 474578777 176875070 351419242 49385930 622818623 279527784 238953277 138017142 247636690 328104013 707060070 269447721 441502814 717432843 988469333 364521815 274356993 892808419 289235737 418205935 838268383 775355939 13554373 66425165 619116253 297206902 487878414 814400207 289392520 193479820 138376103 806830593 98347034 916823010 719045562 424691129 905602276 816382546 948552611 826317716 788415563 993565030 488522437 286218892 684946889 464888806 330383345 125405331 865801429 579634438 577588699 722471448 852909221 102512311 35760736 46272950 8073888 815034641 867741747 466760925 764514563 884801844 527379046 996737105 25801215 135429733 292258461 731644739 956501624 246315822 495037922 239113167 659654588 111447101 59702856 895877468 829308240 899827625 229929808 869624615 992404181 678091360 547522465 191284502 921157767 501971321 169716895 139405259 91853084 979708657 966737096 763017680 691633962 886745045 666992317 754910939 837918185 367486726 395737584 211416781 592889743 825586548 723946925 585248329 949090379 636425668 509899062 183278480 586020301 725898898 908631722 265813258 676285531 332766068 946492833 875379469 597768563 974948316 445940180 755701103 331090827 238835157 830176836 615054153 280671898 805507573 226389314 969335202 723370493 802572699 12375941 139792535 72297441 53762625 804644912 111359904 666268682 391292515 998843570 791137902 844444617 960458362 859644526 379663535 757186737 718237219 247405575 43233066 283148156 633941437 376108780 820517756 501098835 923481840 875425172 399323318 627551013 840713061 84733581 120051615 216164708 428085468 434202169 99531958 920680989 721038896 831611812 180444335 171699939 143142810 434121159 616544603 68977739 396286996 935062625 809509102 824131956 228812669 188810514 545221302 58283529 743784660 779621236 911102575 312448799 941762485 342095322 780589673 742644335 171077682 818136673 518877152 105550548 459761187 147800712 240778464 985708108 235827778 998762718 286279833 947735968 617942053 272030587 591412661 577318715 465641529 699260359 294700732 491661388 804943112 818908678 358395553 166745084 310094302 654699220 961355971 212845560 571845957 70793626 374355090 243013140 826654559 119539246 222237959 390666896 213919308 262125537 839528493 663833291 536564630 55236364 536322536 114572190 271795273 968443897 76647772 89579669 205065786 538096905 334658957 177232516 681363727 634840075 166713786 219768735 54657657 80957708 862999201 334457324 45578712 509515891 739393940 835657824 422631102 501720013 491817886 495019494 916927096 604101994 346984811 575511808 201033079 965200604 878677810 467205562 771489110 153353110 280013881 272573508 278431093 145503242 754908484 473111215 87716736 936968849 207548778 814324984 396687696 156748528 671390031 450773443 35705203 125004062 491876576 120795738 321219624 604916016 421968772 362816752 463564544 51732569 445951222 617002131 358132802 433964729 593510871 957565680 37483998 650324335 519188316 310848519 444987484 922273895 565704484 101189816 95777962 333273776 712877143 694775283 25397362 988020413 197225708 537772248 176045694 327136530 508879355 894391667 88271941 831964809 955136813 313700898 756429792 304126727 767787248 580960542 131762144 400127389 949119248 758385187 31363677 945036773 164514352 91297084 620404984 66080692 402536366 414568792 135860712 410711653 479458490 331084648 448292511 134963872 726706958 205976180 899632923 679362354 263437162 803680725 434581517 836129910 614581577 558469640 286080398 274728092 252122733 247938911 834489129 599827782 291586251 143936421 637438955 247846562 992533255 922044978 909328065 75042004 231123321 880142183 441509214 418394129 647936274 388444530 142337526 505867824 800110797 579584465 750977528 355848917 748181682 893932064 301878454 897401662 516582618 6509257 65286412 800486573 949035647 808247559 524941192 583373367 400472519 396398057 526835929 162875433 566491882 335553494 207812391 314554480 754085879 722308162 293120611 233169693 981745526 563152669 76824388 413759824 40419898 591731045 704872092 447212011 185406124 207176469 655800098 2353662 7547127 551110522 873835961 529532288 542943335 817999748 763489691 411941925 559087212 140864345 805913966 570428317 897522898 210475859 402663401 788631083 232219841 528228428 581112213 505364205 895460731 738031815 375841461 154292381 839095888 911633944 695583868 986889531 124653644 988083809 560795474 541304626 481563839 732535645 863543815 779207944 526702182 143931821 707812820 249685110 840601244 597469688 831925062 954893830 430879958 682315778 518303057 645500609 431240704 224339156 72427987 75483150 922680834 839715695 120858676 378913191 225578402 921880090 709930067 981852606 836479072 621612489 432606473 29484066 447665033 565916509 791643539 111006769 31135120 684533536 753626336 201208573 814202313 67006740 364500134 621126634 588342040 547568268 549894697 55313897 882513709 832500791 368285780 899497964 63023361 188424302 914211511 879069512 12217291 516277691 386444140 191503854 144640028 568871187 119501303 497253344 205926151 61252953 756896296 514050259 216942046 803371914 905173106 667920235 533092025 385227754 965831104 828130803 601867776 384655913 745340566 329728924 104627132 252721697 385414259 270378698 464572108 598613271 78645569 320865410 317734338 222213193 50035717 431044283 998821225 439125890 335049319 941649769 299273877 138587218 190396213 685885034 100901788 639506056 722877378 30705827 434750608 538269420 211417955 218366369 47729228 98883448 788924219 968270053 951081559 168712608 243262629 965377530 312242311 818522898 895668240 380892854 370584364 783332846 480638844 901326799 711557198 167757838 624152454 950547710 928060992 612719029 469770121 504302818 759791222 213944542 598702203 739283208 34595613 764798809 695635547 423340440 573491386 691355500 864645713 460602445 497163767 629953163 450170586 949447413 418322815 275416931 382776506 121220075 288685320 139249060 24004041 676336825 932758662 640873079 218924353 146440185 633022799 991596363 769696916 215418468 173549374 844252866 241625359 619622924 732136361 577190672 214125534 936804972 571630422 881178562 535956379 464318563 86765787 732964714 447998276 593503271 180966947 640398417 835246355 955954438 704587523 757576874 138303264 66795260 36769298 401454924 515619305 42264765 984797577 664592100 400123813 524764089 687079233 582641145 289753883 994123723 550883736 881760711 723111479 274477641 955218575 255228649 602155631 556835657 995263406 637835813 31126952 994897204 520509050 10248616 473074227 909920755 332858318 216515312 60114262 490928020 479779812 585703880 975829397 980449390 982235713 484104131 999296695 192210178 901966886 889599987 212792560 86128836 445652627 842482696 513645970 18597718 15922772 689891227 503054512 995112103 401072199 544629210 798799067 467970603 726184259 240264225 2035496 468784741 846683230 342167387 961587699 426720092 903175292 823521560 641656176 569776951 133168071 911380857 419597623 769800396 886331596 502077345 610429925 38706296 420371713 185802216 865292799 505782019 328249866 71251629 525812123 73114752 40741234 696488412 440788198 614447186 440715878 242319733 464766231 28878143 113364612 476240030 658058210 965853620 452114812 448755546 708329123 746882309 532749034 63711559 408687754 218283170 196857501 781345616 954935910 300203737 124351153 372298094 41621911 445638645 227161058 21477775 860601930 962200768 852489355 504196847 385665132 142560820 983739052 976495692 237858665 753456941 9803720 870329226 903203205 86412831 835182646 355078825 119458971 34043599 969644894 560119960 564017221 352490381 419921899 578794666 403806999 284268049 713082667 539467311 865823262 34828080 191479071 566743228 917016101 515648199 585025953 586966076 551389129 593801145 304692802 375012255 536870144 843716673 486591690 698441660 623948112 310397162 557484314 334011244 826988670 310874388 257289398 5533649 380152440 479487992 677158519 895826327 533594396 132486707 605102210 970594479 127625623 53374624 863330218 695147141 41426741 250325576 412890477 902953805 44666904 306945937 300899115 314402750 255150675 535580292 686312039 196351682 701504380 974199932 478171132 941136895 581297602 834214058 278570164 748119692 775707549 185741693 482429051 862012498 725833188 607625562 479403985 718069648 818586830 733241013 315018221 800278606 445123828 716891531 308897117 930094806 582537446 641054388 437751619 284524562 289126512 185631714 982233442 115603544 29175769 475235488 935925751 988511223 655196679 264676201 475120014 564619825 204922093 177365518 5253752 526304979 101829825 854480790 800126983 186928485 843368335 543898541 665654858 759802262 456115967 380188017 769121157 950132434 146858574 965479125 486011535 959628524 880881675 294928754 466000058 436263581 470451410 701744529 572882538 75591861 734302576 974084931 384054188 497159888 902340598 599063194 708388964 939929493 417221625 517335749 627574484 776980138 772044315 423412623 807684302 176551117 648450639 145778916 147074197 119516912 147136203 801063734 656222320 221434766 965679311 974204807 183820447 260247350 471446952 608300168 396975053 442781062 857253411 646184534 535022983 400772853 115630699 654976543 119831881 856889783 758225982 182233628 474472537 321557049 435763820 830082888 737336286 506650396 334794108 499588115 922714458 923993808 361765737 447212185 967733408 636302903 806635164 929890753 991859745 784716536 110474620 628509925 734364413 979769680 627871794 773721594 320964722 151232010 523317090 940389515 695840636 209620511 198826866 634033731 154764824 537778593 440189539 655350832 589661894 383150970 759027629 530380565 45086880 566913614 6264467 877435887 212575811 696683133 830867747 728834878 302086441 767741009 345617356 90288949 964994630 981212742 330247144 497919345 230575630 880773424 530218305 686212765 56018097 841399377 290659738 605088270 352319902 878982077 481557686 356446168 216492291 966789563 204649343 710899355 341140349 300909235 319282780 511909564 308861352 468861525 75519426 384673476 700633048 835233912 151311972 887010044 899111787 862074418 455659276 712858920 917935491 498136264 671535953 904659695 382477939 866727409 954029885 731821983 313860246 827740150 701425295 100129717 602289603 654320376 252906069 700768185 439888110 956628738 800601189 226275275 598136331 569657330 590555859 208012082 803345758 295474506 312187271 751407187 604488820 115146435 883800078 339001431 459409324 870144983 457666800 4345609 825813331 626311172 917597563 822101998 951846844 8369894 689787678 191982464 537689849 648931896 850025331 788376394 996333014 820982751 636199088 487800878 165352680 209099347 702573189 42344211 136957098 58983887 467918364 144155765 813594119 880640268 563149287 506117712 875989634 805393031 352471501 310341409 832517673 796451571 857286158 887603534 753341306 555702763 324446992 91221202 384562961 85365954 584230132 44622670 19023740 556549142 713848939 842778059 949204499 792222728 664907407 392696236 741598277 647886927 39464029 556695036 417074045 219645524 185958161 138323727 495217540 899167259 287940703 145638413 155855657 566055792 863876623 967787597 747406815 680906862 6458794 944392233 260666465 588105577 643150877 225952810 221447772 93844034 705375698 500209981 751257936 890787558 28023099 426744807 648816933 654480219 545764601 389017532 511555938 948017170 366713883 331617088 575220857 623946320 559303501 890981801 936086209 179200414 9574453 327381729 446186623 583566520 815733582 775766389 38880389 164521810 223970507 708646312 379457046 355653430 994007935 156847308 695131066 555434487 244014866 573271991 342900712 589296502 382678266 612132505 391400331 512650682 427899571 269922296 191643629 331886475 268159633 287972038 297911323 41835858 530332791 86811749 639629873 977186302 910896933 484356163 878545166 958894012 625286188 739654314 434906013 782791708 309422601 625721632 686619401 314835628 742944958 697219053 410332115 230264123 73716046 905755849 448492929 549699570 990450457 189235962 3986420 382656321 423097864 936042115 438442765 977982524 855309377 984113347 449788562 175990462 784601476 665110878 294912794 270402348 504808831 569990650 302454194 730774351 987651130 599290877 937860131 659608981 460802886 446750932 758409198 264658548 30556673 760505278 470734930 33771567 828836887 961013383 806053775 655706658 218026541 787664458 162224059 433983639 544954910 892495017 550153221 325032900 697971656 223608254 904630404 39425308 493951628 813930229 229082952 892133645 663596011 735640957 757517963 846092228 965378721 121182232 951999187 593578971 591289767 193450972 840298733 405089202 951574733 584991327 309606123 541592831 197517249 725352344 637322122 979316538 840345839 237168856 211515661 842705846 425167525 820129393 414502325 323796614 945320897 416880488 664567416 268087636 390611124 385513780 676086548 838356470 184592659 243136622 969623551 767434791 100112693 884871964 548835388 858227423 519849115 476146262 657948953 614651860 839257078 863452263 995051775 912890289 182046993 24934388 788693572 931733755 138300689 115213937 281707523 799204137 301818988 905803872 355625891 571159355 59065525 406476855 971632634 247599186 607819478 49739202 289373087 825876489 530424400 896716721 369362858 694071860 363702387 275164631 268048152 327907436 661530537 377386629 76951056 608047400 100654613 481495498 900158076 888430754 648385012 650617333 311648887 665342032 31810276 751870851 674800754 516511064 703453594 470336702 257741867 117090619 369892070 366170963 371429436 723133831 320471352 454626996 819993399 986603447 316923551 962145992 378435989 826125565 321939355 73200197 67139873 959164565 428678594 728541301 890561311 109765441 496872707 592094280 591772251 871258047 524189153 251020165 630702229 586089834 109155211 118006046 859175150 54579765 11876597 943234329 527152320 933299001 362841393 201429338 992996589 966810801 98108707 569072896 857930296 685270993 417783371 98076537 486971349 886636166 456492495 120539975 405269685 482905077 656196586 416884381 498505817 971003791 515463361 283967149 557382294 465616033 299191081 62505398 37485675 889014015 24145004 144315360 576171299 869741269 526768055 768348463 416290376 521677428 836768840 348881525 957474299 773907242 593282811 57771636 12827730 629520866 15997631 758497743 409424438 288397108 38790823 287231994 288000932 6017863 466174147 447541115 236701595 287916980 972903353 877952720 600671545 369041429 398312214 739886234 968637280 563472508 595776451 440633909 908953659 767622040 897080519 977609815 538462240 471573550 614692809 984454326 562492562 736010547 514854793 841025816 411585977 960811931 877980356 379864255 250249228 78823164 983847779 648568310 274317491 113615435 584570981 795659402 938417461 266359486 648629495 833749798 441773241 338056405 248162222 120992364 370899982 208148280 937430501 151878239 130988171 93528067 90723690 172377401 565016547 289612660 713133526 324435955 292269577 540548768 392190565 574371722 499149752 974923857 303082343 809358164 995030723 365030033 110727371 907843072 795662285 475699120 168909131 939472438 936428648 789069774 959862287 58517947 679151066 911817115 995052796 815158335 263918739 644770419 276291677 53324246 50866286 75055210 694345744 806193370 932303218 673999276 153162465 827848037 207459085 261178151 614338465 657696352 843667504 262264896 773914610 105062632 208006438 644210510 553446291 9846271 406780517 531469269 37450317 596212254 102466915 839146979 819801161 647107073 510604757 884287195 640686954 53282100 979837054 565581087 752995877 16702777 806713769 681359083 376187793 638278542 653681831 829769296 223401230 75280887 422653722 251703513 939294405 410343316 505458909 863176287 330547161 875340614 231275907 499164167 11490120 390843370 856768322 684535752 231892399 99192114 409293409 340865620 694148041 849805845 487416052 997810619 607238403 847036331 815443993 982486426 461813098 937146152 941458877 17668646 794059770 944552848 192156929 770928250 156137579 532161372 751564912 970526711 553811042 799311348 649317830 115337778 395053287 323949253 934886608 343538290 367447709 643140880 425931067 942995353 37607559 574563579 17928111 660717785 270705320 765130688 33831422 808102641 979787074 887889238 551982054 615747127 69841096 47494580 563340589 375908405 943850573 839975308 769058085 606141571 890923019 154235625 321894407 849198320 936812665 155112857 864743626 687280364 647918489 956662191 882598941 755567389 87450308 538444232 392329947 283934154 282843321 480790048 282953722 248898667 12173747 466844195 559538456 996323445 712092287 705442434 597246721 538641951 707728642 400869357 971316615 891215649 865872912 482681086 150892471 71766070 463504651 257496312 720505015 556492309 945540170 555960781 960824178 229310327 747513936 948850524 687091163 763915293 39801446 968177623 733701250 629234011 965102046 682943716 968325438 372386334 19940942 527252646 512593409 533029322 40858099 30907044 262902624 921459761 70087674 626960008 691859865 272766434 894387523 729945422 621783637 685825484 242737267 497116373 321192224 299096308 780401897 630304917 371643955 588848510 194557705 391567219 57165625 15023122 226370654 298031919 847989160 198711649 993281620 468698409 234291931 480959779 261612153 689942984 888256255 869734924 607051742 260421488 443801747 570192763 970817539 975606738 74175442 535795448 9074396 10478108 517775220 92062183 996430855 68487783 709253730 86376945 661482622 756162602 978374327 689784700 577888824 798402415 681662601 79057124 621526124 380395561 147507115 105058232 491930014 91551305 98051274 246476655 952822667 568488047 871503442 661615002 137686634 690298123 790395954 396649490 642121938 898197138 313470176 439039921 52609482 987521488 184105567 910999579 559521277 978164660 907762647 504493682 606178155 226882458 547157992 704073564 328115427 738426640 517477427 65240527 878158886 371856135 463402963 737431713 240101114 891164537 644547410 560795312 489524531 250360371 995317085 574576814 828509202 357770303 331921188 718279289 482989037 265847006 678177951 415948992 767360150 707087010 21990602 753469777 910977632 503649020 924377228 955413865 246015143 70640048 632631172 757504352 908861344 659246498 296377491 603397137 546722381 233582269 251038111 364983102 965916036 75912542 187557996 672768642 325883774 11163230 969969753 599832403 183729400 47932313 296172898 597333227 540933213 652772243 743592444 22969187 824159531 644476960 721688785 565977194 97233505 208734855 315859001 99470402 915822708 964110329 221299685 135417388 790403751 510071738 804451980 147087650 160595082 322414201 908386949 952631975 619630768 839145690 499684471 733078265 190080198 124621427 704997930 223054023 610138719 410862141 898150985 502177194 387698498 682023584 459014082 123206176 860670112 543935189 300614326 34711315 770280644 622749036 155955166 754423969 368402466 639029786 100504543 225855721 698507374 222345735 167673861 860791404 422186023 234918696 165582457 309596804 495440732 769896773 408841201 349745673 705193983 444984750 29007022 461640793 422349798 406180175 846532532 330409167 110456921 571959136 232087644 691240850 29841452 280389642 780550768 513983903 919878438 408477159 336259784 191335181 220794609 716455472 412247477 400121326 875969834 889204666 920238719 775231444 931902096 593766802 545102354 559442596 962889695 923982440 889684699 526958798 408839322 551381994 613619037 93705106 824432859 537502859 161283123 808402393 171509821 536781450 54598131 222215664 35146559 388486783 752149724 195382439 181186393 220061950 821751437 464666377 259207619 892300936 160491362 168947249 322401960 946545112 34157339 456021170 629733057 516624406 941150699 991848812 517681821 178253386 258910330 296722570 487623934 917742217 114445619 680257731 27637147 582202697 430990386 832166859 381962561 624077897 702937882 174966413 874493308 838872244 370387710 314590962 462326260 466516522 562061929 186495277 112196259 363333908 163855528 193211644 61586631 724413683 42940680 942828932 14744163 827617516 429451330 465305227 321256942 630556051 877317618 815316823 917823123 353979799 740050396 546631452 396540398 882834965 377104002 402468899 520766229 15179742 458961138 377639875 611533191 858321085 38084980 886078127 748243827 986419432 939472615 694427053 419117559 177214518 932348135 930800858 972073559 419724669 54541816 945205719 149525624 846790384 877413983 239297629 819367795 411154440 462999259 534809634 520934419 336066633 874235285 439404323 191447117 15517141 250351567 267771390 558865550 137191102 361527406 34309677 248357153 505910305 861440563 208730330 79845763 382514522 803202709 504320775 817473451 900098357 380175559 160977353 965806984 813522387 399395924 512313925 553138445 424797740 442822610 176118745 876805773 822726810 585379250 834979056 972564252 152642726 517202761 267827580 423991644 456616261 357492608 872938851 446783676 449172156 723443069 349713844 351314111 215757778 429653340 430079940 850311294 309360261 267740664 975336220 234937400 234387265 279651839 671906160 407978483 331464181 696278254 969677976 936849503 450804463 392055676 26728053 607117921 699299913 927684276 355066337 664430745 964393171 737457949 240468116 868530280 962889764 584326969 784263097 220707381 526008496 827921361 789739484 553900498 925160258 702146922 429521685 827841805 268735307 953054746 124200734 809514079 866131705 486989892 303797178 172443733 296442439 111032174 51164756 303135104 665648117 409572535 955881838 528698530 166280877 255398314 219049675 982300008 918895779 192899803 794619372 102242610 855193902 492286442 264325203 610845018 774587324 787969827 343840731 937603405 685185810 396396972 294084857 391413757 341582714 30547136 541652917 896302336 5360066 296932590 252759406 221262943 236858882 547267318 838570944 607057344 306769885 18525660 224538630 115619021 948861291 257940130 747698480 876256821 860446484 381011066 293268762 903492156 145168251 670337738 340466170 521355306 483282488 51150987 738975957 561738508 197345077 125388369 951024340 709313483 518095395 982117598 625933055 251472093 932888459 175405943 319567439 584499212 813260690 571832197 859033825 534482468 335255262 106209528 442284253 669702619 520175101 868128179 544548999 725638614 816166179 580091901 449332412 59581286 79375867 282044514 931273675 708086579 996747819 424854561 964677333 19046527 115583420 290402980 281017484 209554461 536205176 813113000 200306702 43951040 880000235 468179804 112181619 729119046 322566819 774709620 711453429 582490978 767120877 76899451 82460113 226024158 826407586 374621336 718918616 608514031 820781355 827059137 433738035 838833090 132569103 407018221 932356250 774428448 644255804 647017022 483811032 770352986 896832387 83305539 468672217 847446089 91813362 415290368 894186900 698547679 971096690 21396259 631605249 853827084 74476847 776124987 302224469 844399709 539804114 849352780 991949893 842581971 387203517 338594403 268045229 328592374 275933689 475169767 580176357 88266689 494718562 712887006 780759103 681930555 793886589 562888724 112533918 730134883 403647265 490204343 470966374 383963457 57674662 29377375 333901116 807453216 667169582 633049814 68632520 940928111 104518299 838940374 282161001 891860370 491044447 43148426 451561615 820840903 968062619 850331353 73172224 575103068 133205036 878038618 451406659 815685765 57249954 30213104 258395843 554698226 165836862 36333078 386366746 695683469 713274572 426180211 807621862 80606657 680252533 633210837 303246344 914703392 45437921 595147823 30682654 40732036 255146463 560791635 417533743 778035736 915536085 629787433 411170564 814813626 317937801 58615245 771339489 91531446 11597804 645246045 424692936 644520437 363174090 448920528 764717762 127270789 336413618 935898513 931978655 456024299 158670895 622947485 498123052 766627969 461753073 824721037 551992317 126512516 195870967 199264421 889847401 95671029 940278042 783171817 330329009 760972110 144179275 586094875 436781238 347810123 333527973 983094836 274269964 120201489 54748942 455225907 119786200 699371704 478811779 446097408 158779991 123907010 654882956 878145207 251752136 973446473 921728103 741786039 639043637 567269683 601330116 520348150 454985540 287376960 61141593 7506757 215585128 50298188 261033725 20310676 605009507 473738736 444142547 914936819 518547253 296355386 181580321 181022257 397912732 666206808 382115830 953302596 535678923 447794463 495998524 592341335 669686254 13361994 484986527 33036153 713511511 256397583 609119532 481946818 456413461 849691909 853142157 939511017 635263110 317942565 682119777 426055188 229386251 658313401 642162677 465212942 396448752 832106840 503982231 59685583 797850493 737753318 45433158 266956042 578627607 575509987 758482891 891041234 774717599 82369293 736153497 476473516 781828904 737126649 549606836 147752985 863586004 529510624 693605708 841653663 807947910 293021586 392693257 292770021 810541617 120958781 1608297 712848913 463765809 562506829 497939833 530394828 655936081 59317220 980734118 894400287 657948739 587750477 20153013 204117854 224772130 819030300 230997533 266104270 494130929 488742969 157939755 124893699 563193552 671234283 469172141 175356826 982115625 142980368 93867443 280320454 787318547 820388253 774788527 698430548 990907422 34678283 498540214 148671848 311180854 944836156 110173095 282659209 709836597 438519084 864870708 366346486 745743829 345545367 690343274 354040217 671505245 371570790 294037897 990149653 280438787 851006621 543071052 769337269 751919370 571620935 163556848 442174757 38157411 911614292 613004466 99753310 632470795 876919741 293813822 583942912 277266579 284326493 330070906 925602227 273172452 777339656 126492706 961509210 818869351 256631121 411339821 954419772 180159538 636105690 905381455 484269701 414761917 838094046 930182912 515470572 37080052 465520643 289811477 825269089 785410461 163196693 774729610 21636630 661738306 532434324 721498989 598839163 906660332 53746171 33242900 921952965 396498851 813858370 658529027 65537055 621359548 16085083 379108864 959920733 790791691 137283133 955203490 806322827 928677935 726761657 136159617 457536579 393296316 99924684 629533205 244682496 653151501 253325698 279494971 291398408 224722090 191826663 972565132 623964980 534821413 790579081 943685974 216622472 566590599 70999679 479049319 10819954 804381508 317521603 55441881 316390123 733166255 775355256 492285448 184548326 527715129 147794503 87435023 562820042 823963877 134120476 573928963 284412577 50986013 143411111 557880533 845418947 955574918 173962738 9722917 608923179 894944371 28311236 880370940 455140898 526119266 578430107 350794520 649058914 74694 965926061 367516753 484172076 437526497 227890477 298562486 252999366 861178659 962345914 506615730 178819269 898666300 461749028 788971452 931844270 352349411 407022831 845031478 505188835 615318971 762390958 394502833 105896887 445128182 625418233 230118763 230828077 391901003 721178537 205113307 236186565 250564489 84237474 287742597 698126723 937399372 963903274 590375805 508066821 550892025 605818075 850255219 851802199 190294998 619057754 171164210 112605679 219569014 376817670 196102449 891744836 260743947 176214074 153831705 331573471 984187055 406232301 293745946 584275499 344760179 720289765 378036315 428016244 336245183 313463608 446129752 273264428 115199816 181131670 837816359 927050038 43057865 544242237 670641700 962016240 308552179 647900344 119829074 608024099 628019998 884671435 408454403 284742837 788733932 393302304 608847754 261850192 976851073 991044562 799023938 896492019 485230457 726925954 322891940 164635088 226822020 606852809 130886744 300999087 970257671 366451440 562968332 899380786 934302453 146036549 628238472 209965703 640951917 207808400 5828497 890016315 337245044 396172065 996106539 900325116 554801714 53161218 756265231 582151462 833791978 768294704 186965064 328496144 969125472 31092404 960051027 78209982 397334016 866501292 962035345 86660054 539633974 216688319 582624637 256275524 265177691 352783012 618237530 818400736 264826540 262528105 268109412 460665847 837816906 551172114 68947718 698932489 140035343 192392143 550253346 653788989 535269966 656933933 442145884 429134433 245447830 385157809 236317653 46037769 644782423 962755825 849624428 942746691 595651125 222688453 538546082 683746640 469597774 475909721 922846549 135020331 463067128 263094392 625955042 228656825 205905933 398150360 920488203 23088931 216160392 664628416 81013819 645108138 230774805 516455154 115718805 328681885 853431383 268394717 768031357 409577283 400483578 620249236 148627196 612886281 705353498 675673632 165222340 952324342 562042086 967466172 694211327 537288594 621604984 947477198 155867524 979047266 135598935 534855690 836292924 93546611 977490565 382439645 99204805 924448999 479673670 516076432 762162402 620882658 632286576 655843496 428937093 638634551 284459495 787044500 157260336 7887223 398518209 206625849 535108706 664014433 298304413 249033340 933474454 520624029 556888205 338156040 754841549 631846848 202033476 868286292 651242055 250367040 699692184 529099298 28286619 712788607 137154654 832501105 146208896 433766868 866203203 391779895 254096381 201460163 930670296 758578791 848690784 635678839 994535338 144920773 469980479 333069343 837053064 145085732 558162321 333344441 458365456 38866279 307488156 298748504 707630832 273187289 924559203 200267411 479625079 672640910 14342219 733931129 380126941 747353219 850410424 689895111 779759528 253249964 616021608 832733074 902090067 320641232 708903260 775066193 139974109 618807982 21335770 221428074 377991881 979888292 546621564 850452000 530243906 261078580 335649557 447028316 860145158 678394281 532089522 356501325 435923417 481124562 148636173 292775857 552892527 678294693 465948937 335591442 625113475 148027125 995137221 609966051 156395130 400621189 228673652 319868383 199808469 357739119 573260643 980527950 996810146 750805301 263772945 306110821 828353724 452842774 133581978 653175048 779858037 355373642 157939648 439459538 582071313 188073758 769227536 686145699 948867089 486539570 665174283 705920387 747684474 511895977 634945436 471004833 342515880 465538486 773178501 816093802 595883919 598287414 249559118 278730464 306744114 383547943 167684757 465053361 299331370 612077576 312631835 475264666 251679101 226979887 155114123 812571599 380609 99508100 516348621 445949252 111533708 662968657 502059410 618439132 236731680 342481507 766383463 417966742 68298179 461639569 177649476 479835105 596915443 996374339 942412146 113132542 684572613 74746099 392580701 449241503 403562758 569265058 641259494 802149406 259803746 746767766 140365020 577149164 361334129 541014309 226882876 13902179 956362942 528557487 743804978 714090689 549028255 44435159 658575656 428139734 497931976 306992264 886029652 730848954 165793782 545919754 275538071 416301605 212912223 446306548 119450237 701093712 552787031 255720751 162112977 670083261 809222087 750760526 397424573 217026509 162523736 102260896 344823045 317497072 557661647 768875979 654218188 839313307 587471982 852379844 102108876 381702313 796946410 174210418 464431559 931064222 628636027 872271008 945573543 451893324 596922992 803590443 316831190 947326330 894916566 179715629 286496748 794998964 35999405 509747411 789283815 682647042 769798370 881084100 610409688 66044717 283014876 708866812 911139535 798712603 648592831 915377648 201497463 25994829 632713508 37857683 531085995 896315770 142841055 333153003 131224590 933092288 135872876 376925970 486877210 645551511 768541995 421160365 867595558 376717825 164575793 299429317 307888508 448735750 272587253 414096016 681609900 183985949 396246149 433124299 509091003 545723109 287061209 265948660 156972967 300803551 844810476 66783965 482831166 3445175 806263429 773039102 802647504 62050469 667004153 224497457 162518404 986650133 826508473 530766363 221525448 824090829 406264388 542984751 100240107 274078631 470815459 58477290 39920812 93173814 828788286 492364529 611645131 526156522 120964227 772429271 830939145 211515648 182898607 33077093 432781471 399687128 727062517 673839102 969124637 982095653 130069183 854531217 963526991 282152868 656348372 290883729 585750125 342828141 906092143 222679359 142759108 288054496 473596757 459526517 806050622 998022003 174883998 933760988 570209224 652663512 948749484 867324665 930560496 845587708 614395994 408791762 646821306 245558616 878280964 586481224 842332860 605689363 549850473 452691065 662041978 644034289 314193767 254434391 260810318 43739639 241371238 644085597 397636502 125612407 869747336 328883426 737600508 973410476 520196816 384924308 459324696 340615468 740077137 59892020 269691280 901088828 996012218 297389902 279564869 461716898 970550968 979798468 687904685 690763983 494028697 109326803 729245865 660649606 538367051 361499857 196849344 845409291 526201097 846845813 840783033 120089837 672846034 661410072 917424059 711336858 53861682 867319957 755627388 957080161 883606469 787990708 166399492 956924810 442306770 226440492 22645069 663647376 327029003 213500565 26568670 972436978 45333842 595782459 607862083 902336731 918551718 995513730 871636751 781384155 94057163 586726441 970916113 128743624 729294786 555846568 917489628 450884133 798444858 857876040 860059882 348728697 424647513 686282281 102259500 679600317 331317552 276759792 69909840 326608830 782296192 462939749 897226291 743520708 331221225 929831079 578023785 300258155 463086943 172404251 967454024 215423335 479470428 378160981 42851517 454525121 955586850 625411276 92700950 786438833 847835641 120214702 737803733 979698620 906378779 955623463 390953239 647982308 790771645 969864504 178187258 25646292 606435005 93713944 989343320 600012509 139390843 886259048 235440965 102091911 149164289 601484197 666469299 20796227 385191525 838346195 230116988 438908416 658343238 859396231 588484219 712875726 186712664 34034401 648129089 554869803 474315932 330152378 898002619 77722921 227596924 764332232 856663596 535546295 813272406 737890346 988120300 931897065 872193395 495105738 404538790 475323150 110786313 627653417 695663820 733598678 300976043 744367683 565658173 860617968 195090411 492262604 217364927 586488179 848264352 85751581 386177909 149390692 315526116 229690895 479213401 833438692 269102191 642757385 386076116 781180001 28429722 449960168 623097637 410360773 173588204 641792539 94194277 637181448 294849098 276342090 71849197 328943230 348905879 328124262 794121830 307505101 559470150 581808340 599583242 369676812 659258796 330138328 145938146 881357861 303308183 132857996 695482862 818540614 798329760 359824133 594756590 345055085 730273660 982563948 616431543 985430169 936083011 679983360 547897917 958248188 839345352 417407992 226019815 312911638 241625338 801404604 6665311 740404688 415425314 140550889 58545093 115839766 207022351 876937882 874250695 489226549 120897617 631150539 549324866 725199033 720883498 70100317 548188411 66346017 614982421 605166851 416551984 866641898 920456516 47146921 273321181 718817941 379020768 578185973 242917743 704527428 914249233 178748738 304569059 473626475 832898304 676851320 459842122 948066370 307809095 75257973 855029258 800719759 208194912 384941953 860212107 522185806 978913021 698270314 69045272 422017729 155878794 576111796 573445433 634186710 882439563 538712023 694497778 422446903 475927062 668796677 942477715 916643476 920218112 342605619 648414095 285357184 562428253 147615077 423377903 854522078 641241081 55869026 652116520 329080586 717192163 466726932 548517752 49878705 542231540 735977271 99297991 297784250 169566954 738397900 93360017 439301310 622728495 224146547 332544971 601532910 341678193 522382380 892569194 600724805 821234027 287012294 373790723 221893670 113155059 892983023 624700127 513992943 854020810 198598888 405344737 908124118 267755297 491075425 779185252 545781517 12103465 177386196 63788769 304123010 140070343 923624061 320528022 533114752 872883068 826782182 722143457 263102899 834596405 979968299 453145727 131450446 324273702 258816694 443537497 517187045 140368399 16927689 157057820 976806259 330455871 280182048 696812391 31140133 705776713 829216833 211656070 942870692 978547423 32200821 766733751 312723082 270941663 487700953 805849250 688617607 955843258 942029196 192542388 513809957 30296059 703692280 156143673 899577649 318162241 60125802 798578257 134292613 601778157 99248803 552243215 148698112 450090676 153672334 957889375 601012849 225399004 670505247 664652781 624245507 898307094 667078753 700956763 633611381 331770167 80588873 222903709 495993036 364027419 276381022 863368570 390853804 208259074 348787981 298993938 459372029 151923847 152157624 235562687 152798428 623722037 635385134 424331743 132346025 487228847 900694852 286174947 266970969 514516473 107214032 910007148 665523128 911031579 676023440 748781138 943021609 430603594 657760146 593693208 936874143 109192740 127348486 544119933 58840728 433408143 824084706 779814341 613081664 933853006 308227630 85609870 56136221 256032493 614573492 458341321 618490320 897895051 672958872 709766519 30805008 495843423 933295159 207057624 758262984 27830679 35193612 329773141 144440149 850823867 626308419 174936597 202888362 36521977 600067694 34474917 294595708 500323268 141710275 332590742 684098162 801286985 687703319 920374033 573100674 595941601 45760725 977526467 391969886 620642381 949697306 988576310 531285711 266472874 581050981 434488291 223442169 435629049 988784084 301371749 284303786 161972728 332090378 20043839 276106531 655085379 766621419 640776437 210774134 529623096 344878705 253647219 704549152 338029748 972360712 411195644 718650664 299128926 587417384 231009481 623166897 595485817 527540419 544948264 40848003 58628551 535341154 640778729 106747976 613323917 113228552 598231104 446901685 379506489 808500690 230500978 306041051 813342417 366445993 862080975 966582754 521314204 488977232 450694287 459588726 590923551 660115033 872482363 262693970 226139879 191454399 605941810 382633043 697900800 942813005 365909539 232564899 169394789 272102367 905177033 669591569 350307857 178120419 152613157 85372236 803335050 863249485 238798321 603009261 244041262 936607449 228999491 670842853 194791211 712378837 873294727 969446849 382698000 334889217 370395383 906762042 661484178 201715593 513511690 406931341 172488448 82153898 42745396 545642892 305074491 156509226 444805524 666587999 509652163 468128343 559840458 536240618 172952613 513093001 842762163 871306351 573523961 81865112 690803013 891600708 258071592 455634898 114717354 988047065 326024003 531123493 831333349 333905985 812948214 934769534 617506843 10856871 500401789 307940094 338834096 503773102 252845775 612294584 343564833 563857779 949123117 685540367 20627180 486261399 448157261 702019656 450528727 367382521 861752091 771043495 787121463 861390545 18345213 190174005 318230580 857321853 662587069 791319928 641787238 223063429 991382887 276237550 146624406 875236447 862634414 43894698 936926668 399718099 409177144 669512382 733108726 359354045 678928368 827604415 926698967 710942073 395281139 618210973 250293462 243178556 11461739 796502861 434834300 893646804 172013019 307205948 268231827 726845819 725202837 415565110 234024654 611269364 311259112 754687535 783490381 267403462 839000188 923618613 490089851 182807506 616868475 823020561 872833899 375778153 133670297 23937015 601233167 448655493 545143424 243621214 310228558 183287625 68490766 673195025 532995813 503149745 836155554 408913378 672880215 65343114 271507655 475873204 131011469 998845091 482314335 141706155 409733446 985225806 131632977 2706685 828292926 114731738 511227925 463173395 539631790 752711481 968586378 671870506 772216665 288221425 370350098 260504066 963490097 837607929 810656157 565608164 717189458 810190578 672267718 355612419 235442439 92102476 144968137 310110497 11126224 850273373 679191078 913473345 584478012 611186329 339096014 445693120 200221354 159082640 978344427 58445688 125373009 439491103 683083030 759667089 433261567 688689458 443574846 60709294 596782945 560609928 42581713 563206905 896776443 757043346 128418915 55354590 209540153 411335945 860130351 650071528 534525313 605555460 778128566 866998359 792737918 801547715 599314762 715278455 275961850 903332912 370064046 221642083 133835377 341707046 674700798 331983406 25336650 187904196 289987623 100673529 473007335 68850467 761710200 256231993 685081094 518207821 993271376 970428137 417505805 280544820 317520240 781175731 206400706 255440410 241043272 9844193 752010889 416014174 405467289 435240619 219847028 595789878 474524991 959268145 154859553 872884602 121061613 386373540 531656868 507875932 40442971 793030647 838813806 125309031 781868487 424236946 735001608 857121233 121754208 296237906 518324659 817822496 549837157 855125198 709815590 677555672 576577189 302245818 632500703 579490152 88101739 498009102 703946903 665993946 677911690 88576121 833199846 301391032 370965682 903565926 665054909 17346946 793307673 583484332 292913313 630495246 905876492 587622516 839723782 279264557 281494594 26798395 126049043 567313217 605991953 507340544 986064320 923644981 457445350 292478524 507004522 332068269 538002621 325960038 633496529 587797260 570557064 222619109 949427158 337863747 191498046 351462681 322812077 843657741 357672421 839735091 487226919 763745551 173546277 217971308 778041169 986809748 197427663 15499547 883422628 259338909 833217792 379749044 456101883 974877229 648964251 918668761 938720973 563664427 393551777 755132777 760392847 640150873 718755655 374844501 494181930 305852369 54923057 62870873 909506040 363393919 696173795 432457041 661631378 238310515 973093761 252287612 809639144 569156069 343470766 122895447 104099711 636613975 720405089 450572998 790370282 407939917 598661935 694942895 822261516 462981533 109005002 829342804 914987694 303343397 927775176 51379570 148041886 822008940 231702114 59160933 334123734 867441371 439964898 903553122 715888393 250282337 487853793 537396638 60596215 823314593 930527165 859940017 583763199 741697544 450278534 216199329 720741673 333544807 3927840 336779330 165848583 324687911 139346150 250548155 290741262 256816708 541873659 976059238 537136139 941064974 670926143 823596579 283554607 849808067 308489720 965226309 596223813 174690537 401530002 399222283 40589276 37707264 65682591 77360101 237174957 768834148 129919868 251231016 249277407 284697592 300974976 373319374 764408141 745378292 815617179 32477460 497151152 360429860 157651650 698721436 335441671 910360781 545746271 99116449 841635083 109845865 957722315 67619415 468882685 472978019 130951072 575174234 778230122 187510117 576941235 195072773 946839429 355037 117092987 264135817 80997400 284496996 46174147 503795091 55262904 860067337 144924373 978600312 485253675 106308579 733827021 409351194 622512504 512042283 709600017 611212324 117000470 975350450 266044519 147391915 62471786 135165780 612871535 689971933 414521433 142883056 994832490 275977009 680305202 633712248 567504661 850965419 653869064 521971869 72719617 905558861 968950379 166529885 981413941 355707205 173069098 662252740 884188783 950800695 195669616 406601594 158649941 582770984 815898258 926140508 336198239 944122807 602343665 708960542 981825791 175151093 311096639 721383551 469867979 960340259 839201350 129593585 132671199 266392668 557759008 523237640 943864403 965962797 337816545 341634367 306809459 310687934 35439104 855984208 817026812 173119017 539243339 119335406 88268329 184003231 7455648 457123742 691231516 469031944 406532535 296119352 504846667 443563378 943531017 612564462 302579985 889774084 64947178 129843674 408268919 35762072 477890769 798588490 562074171 447039457 774420450 167979731 390613784 329165753 152963468 399752474 25726938 346655698 583380483 314671924 259434135 170550254 880866800 357631087 832060709 992328179 318430204 940926603 584336634 981350770 635299802 170548649 536498735 504411501 257811584 833551143 603809859 792214992 657766232 694661208 339207988 814032598 766318316 417286533 945775800 276257410 695138203 997870372 592219439 56588986 162366803 331475498 659418552 684661436 620724067 418056555 444875469 78778811 449166895 40278962 649503221 463908696 418051478 324348070 588613355 75417783 680171896 5139245 162398682 451000564 5343225 515093271 779539605 237959959 48898760 940752720 609361707 743159356 587017485 337535205 267745239 158708940 642487892 862950160 479506480 742709301 158978283 385177915 390238188 852922191 936998755 843617630 120882704 550358186 47261278 657951737 484443715 532822327 885130770 499672935 37847547 834465905 898077158 89871685 990430131 50430293 334276833 863140568 411445833 504977583 561446868 294403635 858111272 515827176 764590620 740378569 744879564 322193272 614187864 681265296 698025188 686132921 729629208 240325602 536078843 902425208 707632719 910532710 869411798 418687015 484899575 159430188 423385170 741760379 617759215 602661621 673698732 231682387 31948891 938380426 86501033 546974384 595032936 578178054 210122910 793133058 560099296 119788231 336340217 769669739 719169220 294498224 339683350 371512278 408336748 711118004 734071779 449755166 378572681 560954638 805811221 127351126 360392575 61325088 977280694 490567697 67265292 961061692 20822584 193118038 925791244 480050581 862887950 430384125 450322251 903938151 147626291 435323239 590738666 513867140 873642640 620831461 860801275 624050699 773139461 989406397 596182604 169193775 759504239 757012754 311509439 987014844 365862034 334973070 675763403 208684334 627345977 553629684 491580332 790445238 278452606 852196028 990919231 743046910 627760391 377520445 430876806 640627047 203735762 440367925 638243258 698194266 293064078 427904809 331363141 816192529 156124858 655852572 943839130 755814954 166608876 960266926 860736116 353428845 583945193 252950983 242988946 384480063 570263729 875039232 14925168 310955995 568041115 121671326 245692880 264089104 950657790 65426231 454290453 352232483 200191945 937797944 778794771 161123493 958940467 364575216 471331784 496181134 942278825 930448967 354001557 663176411 346548324 417717529 227626296 117967975 95369532 738246180 129107262 699599114 6603089 518613132 686855095 392267374 768231162 35109833 999506227 271471573 874386760 113350177 371497075 574123625 454341856 568824564 470503477 229260710 616032140 852944415 864293514 267555845 571767244 131884313 848268803 31461445 213583552 41524563 646695608 510465609 920544806 79616865 497201333 814558813 85626923 448303608 545320213 318899653 798160241 506679394 93059067 806056474 152938294 254976572 596986936 639617025 288302632 545897563 8548486 780057776 221608324 867039477 988093487 871753622 235442052 743469029 260128593 698032197 382621130 833771260 461225525 82338089 248669296 657077298 282722554 781297354 395591717 356386505 67860285 836780817 53992956 105906242 969025524 387096064 782568850 177487905 60975025 230928085 866566238 605082952 42139254 718366817 455588401 984331900 557810852 97856843 711687778 85176156 106454286 231674530 421303728 838626928 327166702 557930202 209027136 591032544 982373625 70029408 738110389 608767262 87935221 187436594 22042674 565678864 175884553 594349028 308553209 889378077 111851793 271644366 917988306 383251002 658127412 413197932 991853683 175888955 743060742 220316150 52687271 776361545 522295199 199824096 152956408 520939928 418922924 987737381 336880077 424892382 370059151 712525031 206417849 832944985 337972024 833674834 374202210 36492669 991134344 250814971 211685793 889500879 759801075 608854187 163531625 607070818 44742588 612081407 786020172 328915556 670231363 203988124 790365872 263734572 899741127 908289614 14238409 595394975 987884591 379894278 753101013 257835577 428534244 557572242 899392924 6610152 679751296 513106398 450840883 272267898 969694240 542928828 292981901 770391467 584877078 600287769 208971817 968240209 664676070 357623160 427018739 320430229 162376292 690121334 185324735 849258252 121676299 595012511 531714695 58818578 859882554 55983183 583641892 421373028 283054515 212557617 268571066 309392961 593295765 583030549 666243401 27036398 814135221 489043689 604016574 237487415 878905487 39669788 648500098 733722893 891747013 514092545 630038742 296446296 363293466 862293458 96242537 742713036 100704719 915288444 340496063 529225373 404074606 165522276 890202160 312658939 319564880 580247743 64305619 95138747 777426232 311097492 76005998 24188554 435421865 19602029 917672881 273268369 906912270 60608184 629516274 338356370 310022957 54950699 286544894 565479730 827557133 222117107 986852912 56507627 248708402 298996229 976766963 574952350 405521605 478665969 882187669 944016687 500395126 809140167 575622613 618517320 328181477 745504193 590314783 869908330 40282367 30784241 510757699 537659376 797998331 475655407 317395680 93477898 328980038 256627477 468676964 451084200 415627092 165954959 27869217 634500999 577653549 512270334 768350998 900397425 649934897 521077679 284420220 909646756 390221366 300214325 588968838 442030750 329622513 983877038 247101215 361741765 99158689 81471462 885525741 334277555 371150738 743836364 915274362 162752723 859696094 516463150 428722592 458645384 372065405 107830312 78976255 341752113 532059131 460679756 717067244 645208065 710968806 686411660 60376581 672703141 820950520 163236587 433690748 273629606 440968757 596879174 965725617 653398384 753436763 970263620 639488559 722374764 339255783 963467130 573619368 825901546 150625237 560032045 814532771 546019761 894303929 45087164 392128521 842707263 522237614 372709338 863104268 395447881 643641699 962816614 922369844 279109638 858701531 45241470 943157112 128527059 915144776 750822042 872552844 863479385 56143233 478729470 535153246 501127127 143100899 618911845 69088410 889109094 373238052 609109291 302511537 404127966 18789820 450533385 129305712 574917290 793533614 198510666 651448780 198563699 378128329 384205278 67919976 821076288 317298837 610701888 748955834 861538600 551572139 997723337 298984497 530399788 951165727 225387977 274915961 122810073 890403050 801827003 270132797 236810858 618640809 845458629 233474068 442546705 990468940 470826072 9668684 66178738 894304946 703220260 575593163 205030645 271875067 711632002 36017681 82521026 919915292 908039564 182753365 601026175 338840256 663662014 899371485 286654692 596848525 193177693 886286719 289253430 622607214 77999148 971190451 233054390 778056395 413007444 697221187 428137421 834417139 138590422 555217682 327982 133502553 670070611 690693646 847976008 127507781 17820773 459758375 752186539 623282454 437639184 790468723 908269914 754467154 725719278 855949367 781791718 101788016 785802145 646237115 747912946 78280216 788077518 45097701 317893104 814174378 396662116 129515333 316874007 666281129 304459574 202330215 406665958 34880245 589842586 411469070 561451156 932083988 239822373 260361328 705900965 270464331 591471238 738537351 766268539 648001475 875775148 725530640 456056841 807001974 112543280 807758365 732981565 434927992 467484182 475321223 776473157 231151883 358473119 837710211 411944101 262853622 992989817 489115386 304036913 999591602 832768424 380647392 675523832 958655655 157619298 653616153 74394133 674891416 782611175 34390725 666012892 238357939 924000491 103471405 646377882 856783892 95847450 657305062 557179293 432014616 572971101 715785427 78973553 826800334 489749585 481054052 303466971 7902642 90009370 685452539 164537309 505622695 248474491 485496458 899028331 171230121 51034651 454527125 940474451 82316865 590262531 636082027 760552311 750432556 453427469 606792814 878825268 683062692 714047355 345938275 546445886 544616139 319485439 772888707 396570445 193947017 418787466 351450550 811144252 164702053 309613673 679448758 868133835 257774184 202456315 659196638 500966899 709061846 981714094 623166470 415050251 179025479 283442408 544471239 434496441 992107113 981555536 187197226 573526161 754522695 841336525 461209395 838932230 263204247 762453379 734899710 932997581 928356585 748123576 108017690 910999438 461767308 864415648 467936092 936193652 614515069 606741352 871784705 930978098 663675402 254977886 911606352 228174967 364815628 81858595 733380944 512456550 903808926 500258432 916472889 853671434 761510382 494046329 617806048 933247264 617053525 370684544 679612454 949258408 11908810 33492019 659024657 597401122 744502641 740587923 222238504 339958781 30965274 673458913 374645125 831105472 319694727 692426585 411975652 494306396 680726110 197440470 320372169 877529295 999650268 972386866 718325321 38018294 90244815 249226442 505461463 397751830 688452003 189226052 990512317 398037953 314236686 378837502 50379368 659388166 92146679 685533235 776293452 635154380 167387781 438017203 243781874 453232112 354785459 750194993 591659276 712063681 964319964 324556433 116393730 979232427 903788123 25438011 750375190 362467632 348959186 107242636 147906247 963842590 352285104 699119608 554913127 39191153 671836918 871560294 976422136 305789775 763721152 933775038 158099413 290128690 181588872 998102082 52042206 254288038 826032756 373620356 323480808 656687709 62600960 748760704 559441278 888343704 722676839 521277840 894108159 177088739 599847191 638681178 5193248 125964584 374092779 569634300 817155129 693795511 190672732 828974184 796188569 392452150 981351985 215429788 878467896 484937234 438615072 31741340 872312787 947464084 959842482 709759828 414227994 393709048 226858973 871701180 997262100 684059155 868102701 363643998 870312410 682565498 445036015 345910225 641967353 708732376 389032508 542580216 861914227 607936005 601312735 271687902 43120066 725229874 983409780 924601305 706413654 14978970 476924554 96845657 670986640 617069694 400187785 245680192 814981602 301461341 172964215 52552816 188079127 230508553 541965909 482187508 361768260 771991201 808051471 653029141 399513197 899480124 443568422 899471390 193877403 8791460 357646703 939799016 118635193 544309556 424025371 591065067 417425219 134034878 601277812 244913814 330163763 363775997 213548207 909255529 737728808 740767216 556085191 670763179 599877559 753248469 607146206 404200889 301739779 114635949 798744363 222502899 124977734 684437332 881348586 18237711 815931845 89350788 303377605 286103818 562231995 265573142 785031474 969911771 104999159 896828498 527462548 510691553 529839348 637226880 14559383 489565840 832945989 300177722 674470572 534992539 211464077 903506732 618225361 214320638 270661993 780677357 728987222 979947255 60982193 928764541 830099352 295359966 794116129 440637128 117829907 858950874 27339217 498677944 490194103 318369426 593077146 840584598 4973615 385782979 161074677 740290376 907603918 924084886 366869546 140727568 328864141 700110952 799998719 119728278 134637021 267124477 187488314 77541887 330229614 836574705 362284468 438943560 351218105 642675297 72681120 154482946 949556655 795316283 667509352 645290008 139244432 293046646 430085413 52147069 933953900 118138797 658990502 823507950 402745350 549439164 987356015 356391866 796944277 799744800 168343697 862382576 468816956 353442289 776803300 951262778 298339518 187457660 112752498 916805008 857098986 430838174 164578362 595956165 697191224 99840468 701315488 69277700 663726035 307450876 222721744 807647566 329218618 541859342 533150414 820920316 158184346 775498828 658692020 585813332 245172235 14842173 911863157 241330099 83469077 863490484 922074319 527456677 975686182 459889736 126549161 631287929 99332193 421729170 5218657 455783034 111220227 107570205 398123345 184464498 202438381 894527268 191962641 522581640 241546626 518273022 677344501 859284909 520865299 288525830 508160428 159664002 444580425 109811985 584167833 116594147 270003090 795600987 242044698 732393748 163336111 156527422 716990231 932779589 836142779 422858741 369092262 597141141 83568961 584414252 224350779 762581776 711667893 20693680 714721464 185539840 150024304 366579814 313978737 7077802 798256297 527179746 693513517 356875815 790801210 44863630 619533599 982813188 477021525 430707350 502296646 713738798 817500714 216146638 873225556 817376401 588653068 244007668 497008632 376583850 438468830 354836295 216288077 759983455 194277706 772724842 838450004 929586092 983726317 529031317 249729734 991962353 194136796 549936094 480673728 810328884 129069161 953300150 159140741 763728521 85590630 289053460 741682462 917700587 724511075 42641154 498192604 623253812 898788214 483576453 562351559 403954767 679055268 932866256 507559834 82903938 873436103 257760684 655132740 895915886 494760758 891028000 580779770 773906611 756095572 654254495 435098439 765753971 321690792 971925630 353457678 946113360 42578267 373280870 349803186 126012962 957837679 443517608 2026009 304193383 439684398 289601195 736311328 80156211 674081655 50019609 106218243 621392695 786263469 86703935 320701330 759601743 129121028 716002769 236623719 557902998 757023457 174035298 498504688 147995478 455008903 418199087 283430935 130039214 244504286 555246547 786991048 421960425 591576982 191903177 439331531 260006749 183258124 416812183 546324359 277525368 274146634 452367145 734768841 735287542 359958858 530447394 507741919 59232807 889537043 262977065 344896369 484963274 758026565 285444329 228708257 22689799 396803190 51208432 860795240 639960598 471116183 981319037 13812793 231385334 484914163 591992677 932586791 934748830 252821385 748337460 776781343 593331960 374716374 70745657 660234509 940840416 707636784 474883409 496903553 702724965 322550783 836027254 560232111 138006671 940219357 139611967 706449863 475378613 630432764 212570429 697526333 143798803 565678430 746669477 199539721 648533817 802870983 298761846 501848585 799375922 673004259 167897084 285029395 226137128 447688250 762622184 425574312 257974531 303463621 140252850 624040232 298529313 223232652 356853486 491492480 261318299 324211549 984355261 968046974 284508773 905905428 743208174 56720111 298804516 278856501 657531715 841099029 477946761 120879400 813253480 888773563 727696602 936220370 548495258 497444703 689064634 980970381 684272946 60645807 301966081 131698145 277494214 721883221 611663416 640576953 78630805 433711625 966028942 493494564 587778570 489441143 506792408 80009684 231674410 269247305 443759432 576334900 300414456 504449221 892755212 774547962 525915736 274228262 501568733 871426266 751300488 89576064 784429 786972859 353445690 892577940 335365965 472701833 741282845 589526444 287989813 686227898 920025719 980076188 37433673 872463711 152737110 881073899 54288978 679735621 609526971 964803822 53788284 452044784 288222123 296696238 373401302 337673100 448151138 993904154 370240534 56936197 382570839 527724108 809452243 486613057 942873318 967472726 350605463 570954798 910194377 166087521 299737960 861729923 817213397 353544020 841131560 503951898 471510700 904897052 571915200 56599274 335449940 692680010 442971805 395959373 478602712 681393424 467864892 213644975 815370397 277449994 979539872 314788165 492038241 707029763 538689543 357309440 58393271 164850106 156063137 230189850 307727640 311705105 537548315 595074182 653081077 65075183 734455921 261863805 801354972 928309376 140886415 927720114 910416225 5108208 115220494 781922561 217433298 526227062 499503549 285726015 958862524 151486162 485020044 778393958 39181336 541677759 929381165 680239209 410373861 127813641 91397573 799633030 271553775 530681196 29720243 521156753 117510006 279412129 820700974 483223313 81115641 439074289 911634499 731595458 5191065 669123552 990425724 62732878 94406604 789146135 351823766 274404087 856923937 705430767 169530773 588309687 250162706 517830738 721107986 660803765 517366931 738709992 407582697 261432013 155624372 226392662 663979202 353782848 316378515 236058113 251156131 693420510 612582059 7463722 874812335 783441530 252771310 770454227 158811720 264022291 161856063 821112795 576415777 619102310 808357886 86868108 163024393 466484627 710629061 226034736 512634504 669831251 821488036 276164780 862319061 438448246 616549942 793793579 126479493 930059789 433753028 777336497 383241150 841349439 904044414 489343547 640516677 632381656 703858957 979893857 900124799 898747222 128780609 822083305 544994730 869995457 780131821 56345065 355421204 672981773 175164599 462822158 176851293 865239804 92442825 120981967 114449740 291174562 200405632 2095753 253704163 760944286 552536673 655199487 849827331 734650191 716591175 249505057 215974249 614750305 439000506 506560133 797191429 174792110 492190541 260095155 785061532 305923291 153636265 474769227 996245446 13793151 87319957 325159644 375257522 514780069 904926064 470540318 914124016 776852030 949031276 611390360 250127005 778402264 336404243 937089985 143393041 769356220 902045767 62331080 753378161 244807086 656467738 494943816 712833714 652693398 258541599 621191505 268477779 321334971 329373904 231970619 229937265 479818957 541145267 385636035 875884356 660651243 998008115 507883027 968342143 437776366 498232858 406536723 322008642 888889061 71083024 24096674 51455295 715399650 711151519 74779023 36138008 386857225 254305108 21893460 289257376 436037837 431189563 154943956 108274246 458646472 805538674 216582412 846782192 376174263 445218071 705946591 98108416 363660283 707107013 902541350 246350023 591696246 49556971 251143921 700442126 354785210 227451398 255915086 800026944 574252158 767442909 223733721 314433624 737569798 312575386 428804449 760035970 762897766 221354331 224913142 146284380 906779484 601883910 805845764 625186552 857438254 959753693 448516247 566392501 3125397 531452216 379545471 345642752 634098967 330905803 362525862 701072197 688642992 643744599 43036721 178013175 527736382 748895902 236108468 884888710 453398097 221816145 506680042 749491285 42496615 24750626 774857199 580747278 453951594 112469968 521141032 344113572 863494845 200904208 367071098 674560992 375785211 10784098 917107429 419859884 434531606 837719012 579632540 432346299 695879855 513710068 533937894 22380109 237161252 991203378 694446310 149969841 950805369 926176881 282871108 900957937 796287423 884189810 673303876 440949994 965318178 983907626 999942610 434328167 528838028 631467776 312929003 796049256 468539680 505533192 426825953 917578820 545220166 601615013 365861106 747238059 243020548 780075620 424875090 124733630 362646136 530397721 532139753 216823084 949755992 899693314 812231563 20198824 542645511 932026865 142267208 786904194 704806621 321243839 520429964 778824650 112470217 864916616 32313459 411640359 645969499 750508079 835088180 54282259 560360990 181946331 123331083 937965378 276128047 125073580 810843473 525711569 936950753 205032574 746862568 718436821 738274257 907785454 580421771 120239687 870157424 496755165 997294890 625030493 408674322 707926419 567826366 595199492 417780632 903516994 807152595 94472840 686340625 604200867 21352867 755305003 554819242 784037214 433963629 879697843 591871439 681153591 226284604 162577025 362281180 226265212 588852734 134399560 446499935 465188395 426471027 978151678 198181859 753589708 785007837 522405811 216338365 819384510 597270450 768265567 878271808 785545727 157340256 610970258 546860564 651667368 287531268 116281551 358281437 370516691 799895761 65564567 896010919 565908554 338311455 305923478 967846757 660674444 286837639 624062265 796446103 398210098 261867940 548116306 939827336 32894890 255798763 44941471 444989756 796981516 265637802 58656965 761120221 942572965 184508632 832966349 883746610 837972001 321764893 858525254 631499127 491760217 330403817 628709098 713006336 123888225 279226890 542993096 144535632 975451077 533781405 999242257 129649159 273199743 139324882 912587380 90662903 164205842 222652431 353415556 103414241 97853360 1873108 306331696 936527806 70320561 22447642 33413741 542090833 271059073 319744072 174446268 803965855 777673970 689060578 427378076 221556155 492598551 167875678 730971933 437588881 638839181 122757682 750535585 759226302 663596249 489126579 14653197 4826244 426646228 915757891 557242303 135716449 990339048 12196302 165283677 717674313 326192611 127783863 124225759 86164616 57131752 824540150 916324700 114293968 867303132 5707020 253401201 156629997 769091153 578240335 286134338 754449363 190664031 678895414 562253432 392537122 537305793 909433628 706327608 858446527 297473721 7057688 51703325 90608478 546964163 875757054 29070010 600708083 97391618 835595964 854763083 678371680 169396345 965250751 399263997 867076446 701650499 845887402 326363832 109050686 480330991 968779814 291592380 563316321 630940585 394587450 6282156 568294883 262915561 258327811 333265241 996911030 149040013 665767099 373611946 736590573 886938543 964576740 94126790 655222773 243863614 613274935 151381293 990754617 406885954 586676804 335861636 370828381 421252841 871391552 319406765 250428324 328127457 479268662 352980540 83829791 546458652 542767506 519070466 55937514 777645694 343411969 804158280 490195906 465916079 38400886 893569927 300238539 442991505 263479251 998913718 105666844 329554350 219929958 926533331 33164696 39722289 960915456 298165440 209718420 598543350 532192646 456310914 656006934 763765489 364919783 238019580 651279497 654701647 394954129 387632870 58471943 534850336 609866622 755186393 279472430 853578280 115810546 104760766 993637512 190110095 541087089 760104439 590702040 754921916 789397486 288251726 838335751 923145326 644183461 329316798 137080477 790118395 694674444 606710968 226029979 102394857 438404340 698807684 145835611 516183372 602625159 340002646 225925643 60803322 365205885 991680964 741172558 209877944 99760024 337159610 233106307 383753042 617160333 240962976 877348287 547753504 52994514 832275324 255449662 444355863 286647440 469137749 927221500 946805197 721708034 751427870 70429792 738246711 469313061 61877895 831961612 911919276 661267959 410897435 805047239 399714164 215289990 282268818 98434840 399389178 18145167 911239002 141015671 724924786 325589333 348656717 563193887 806354356 218181883 908136870 744258046 992620527 96348173 121813005 754979472 43108036 957180389 590340502 302330629 678866308 486472143 854237170 70114899 641563635 216046971 873641732 153374118 699254950 861712879 816391649 22108158 141341948 485856801 648244191 955842028 600736550 26141583 125403426 661744356 536061715 457824237 406239759 487236905 322366045 178598061 82370584 56983311 655338441 850437058 952637275 839277434 49036626 295916274 175536711 961625459 825755708 549188656 962103108 564977109 605361659 875702697 575568289 852698338 39748520 900128697 820785855 557211804 956748344 967882773 825974592 556569338 508067633 927543122 419172750 305930506 958532778 752302718 608159863 532548205 693185655 154529269 446615649 883554177 953283961 124299936 753807062 149436982 960989851 672363304 797791939 556887587 24321162 14987336 863707583 667699345 199056558 479388100 968476196 890852946 710810384 116911261 490002249 916267138 431276491 377389849 768246927 435692685 814621097 386137829 991398018 684277934 861982541 875980552 14236792 961654515 106645191 201026137 800891174 406767834 175010636 612425545 595794668 141603208 551775273 30510093 676340740 499979620 908094396 244880635 672882622 28394269 976822058 345937458 369873443 453264034 37654953 9412288 348991660 204512093 228510674 773641220 127858349 234754673 311248666 140135630 718538671 563414126 244421225 832477941 359956245 902798456 264403052 998686986 456472869 803673541 819198679 837686928 294213986 471667443 10075265 415733808 809151181 246517132 804385565 422579069 333822923 804494905 434685670 359684695 553992487 939490484 736440919 242619711 433617911 569466583 151096793 427732128 823124619 51615307 87310307 547732684 59078786 700993785 718309135 519787426 961496451 115302440 738375964 448165500 570194785 945693030 258859392 131980126 57020283 617113202 788059745 298503996 328926585 800865049 586895814 390240176 400447591 579545318 648782236 105885159 829456035 785661562 665781350 952596990 172193285 413992162 390358818 426410116 556080454 551402005 394761569 154095522 561123248 644810509 726821517 383019236 420649361 967941268 455242012 234852950 194078779 749796486 6607504 669533285 258731029 807474896 142451482 485676502 88599912 108259481 397316555 771045453 15013462 140494064 623469852 838841127 726956558 461013203 457186641 734798573 976245434 141702992 523535577 409688630 160678274 723318034 23785564 901072582 544801228 438964668 906111768 203428088 557739886 50216815 377196291 366589951 966552432 299680073 880586613 47633189 236784767 853768596 416418417 703432950 286073197 138862982 514086840 118139598 159673699 451346194 715506215 171364765 743320894 931859239 723263850 743829594 224065203 312423787 865838855 685365719 411266228 603641289 822725490 855034992 277217932 852578487 218969484 829916209 102978421 946618445 136266296 450907513 725893269 974016957 210628143 837982300 525859667 384344893 677894437 984845928 639132236 954846654 659314981 538408832 70753693 489175276 874704916 192258276 468777763 303249604 758526993 6682850 25664975 654718840 396139976 370188365 198894823 183212015 417279714 596215789 293472717 669010697 488945991 788251855 706161265 105076578 299285365 700365925 565079895 868746298 188966480 849125294 390268553 778750540 59065113 660625570 145987317 584116477 292120787 955205355 628173616 907414922 480340239 891096204 339930698 196788381 733946762 703234084 482854125 251469298 555713450 674998758 567923584 296738526 675164888 228140812 790727930 48978278 527269653 727906862 594511488 267018578 196564759 734860246 108011629 365302420 861602741 181935831 783239894 16663196 274349756 812864847 112531330 180534718 11014741 261978383 27828960 831354588 240661431 484480859 703942994 987210879 833620978 475150536 29912460 59255822 538417153 2471159 491940807 502994176 695583940 236292644 360855132 836336468 386133135 896175724 416246325 817258100 251470951 601841116 91956132 3860115 762023576 640192871 851742052 783650734 850217396 51551680 377110577 640524888 734122704 598035276 3605933 924345637 464091840 717423520 87816689 776055093 138161583 932983370 438655051 745294859 613969588 134638143 90872376 847050854 643271657 824549749 708354272 154997335 188079960 366653912 83848266 52652379 375536619 367013605 893592317 380921798 920367285 566007941 858646192 174558619 630636360 638053470 63021381 22876291 149754672 671137149 346632175 218534666 538053239 144499515 271219754 989705011 470237312 432456553 757931956 922642541 814189895 465879945 686918806 729649799 115384837 394592870 984719900 675175191 331540958 158834846 927282475 530580742 796838937 487704705 41352782 691737533 674578077 87840872 321297829 556678903 428922749 625663360 226753847 930350551 109317868 573954792 759799762 749289316 484873046 870702034 656202394 735992711 434303653 779914835 852080879 228963265 773271374 325822718 875906186 926848363 164266644 250287589 495243936 759787553 778812441 523455675 367660534 77718822 972911285 348856787 387577108 121670882 466156364 847668176 557087152 591714402 3112629 615315490 814151526 128999565 886314605 562465652 934155149 300517382 718853877 850248393 82953676 91508560 676612216 209452322 309976817 954394093 998174546 311696925 505268975 27077615 519677986 214997253 386269808 724909005 271498375 397937359 310999733 794845183 114193898 344915717 181099627 434415329 115151986 532033919 506200292 74506754 424437138 324208961 267008891 846766191 259872065 971300798 939183874 132408470 841305089 963682501 726230791 634842087 144464126 569203729 396134825 96264799 932928038 806118797 904351044 504170635 853754487 97258733 247601714 55674690 99820796 562329997 96030888 595738329 819270009 93669616 441573964 760657829 55522042 350421281 683334758 162638935 540181631 617488858 609886898 445665654 9173219 696209157 41128622 552083916 617592665 229531163 61686659 373611388 992768168 955016029 806888558 904500063 264758346 752680454 973611123 696050962 241257157 684476467 827084524 34275396 538106165 439683192 413217034 498585769 837764942 868975076 561790289 101029092 103349105 274472071 584894864 777109713 663846161 344532354 210992830 272724819 443406925 457419053 185069578 112266193 184223875 642997021 529913773 304287727 693273400 655349760 349884800 339747936 604652229 779222556 435165959 728320494 379501260 679632316 738633442 718990343 564199923 811871943 465024632 754271116 135794064 995398319 218621993 696642233 283533536 195683250 644929649 41622987 696849936 267921811 274000475 469621851 969468807 622174791 598852244 246907831 829742472 575460297 338329815 954142241 921653430 968472211 77253796 775095393 156802996 327047673 157074832 903994971 631370335 749542137 855360081 325098706 131027412 78526462 814412063 739461744 550099322 853516803 493832966 739143330 952509216 798149090 197391265 498384428 933685619 475590527 79121386 493151001 432422483 391378775 428626688 675710373 91175581 860542437 205941124 212940190 45925654 465130663 627108888 200498540 746061124 365589410 806535586 99953953 281360534 846119781 20132507 854641897 290849327 265133276 39549192 850624502 753338188 993665994 734314249 298913979 30509345 940476709 998243520 181436546 418279995 331913584 936506435 804775787 587298022 851490863 909476118 476313106 783140694 822506666 863683971 957234840 559211591 382831095 2270543 630765654 503441825 289383693 745676352 767261290 784221301 874624967 761981792 848862986 705508372 890132257 629685314 808253072 280016662 461897096 94275007 256597476 776103676 936944740 104489096 226140693 753245941 217051862 78375247 330727831 852647776 509508670 543776764 55095008 505263194 751074586 619078672 742190503 959590284 266614306 118926422 296524906 422286384 290532378 533379779 598834418 18303884 391750881 571827780 594917757 450230210 41429559 434786597 325627955 955162668 340483815 887739565 782873903 198821182 84813531 266970575 352122427 587361247 836057110 687897230 100828381 395072679 167187216 797222358 44995463 494228648 221238516 186683400 389181322 995078151 395738770 208907996 691913619 914715543 893423832 964665528 336883158 28585286 267458067 534951021 830077189 349462012 738494057 497207501 163823519 688880824 357607078 790123677 663755233 476991007 122801576 144789181 178396365 244691070 784222849 294385931 440845759 680093393 442982806 673865168 559113766 629022222 312067802 594125946 103802049 489074367 179324389 33908849 281955450 221978909 576635956 466746035 361749070 153711053 847261592 742596533 800729825 793853834 729164157 310966247 786946726 471639648 775055144 595926103 66577570 816073886 392443172 972436218 159583911 817976280 963595848 602974123 968826209 821770240 784669931 854356009 737686579 368950577 33776857 665300009 68660322 809336885 189415200 762719656 522547154 237675792 947478331 367810955 115654871 741608200 355110953 271522761 747841770 85228097 394903491 953116975 793025150 417880116 712735448 420785750 732808460 429932620 48158976 659606426 305717010 113365758 432953103 69608604 215047953 591579758 829933823 496276773 737207160 890772483 28520040 191699129 608951490 129205347 922908677 421735646 613887847 914071364 58178035 726413496 706276342 204098378 798736231 310190174 494344524 900995173 926443260 817755076 233798465 149772876 872109849 340273303 507141795 861698351 648700361 591591253 417067546 678604525 803757577 121544301 527410180 488320281 925414184 305802261 823598376 817093076 348180022 258679410 50215265 528722689 536285656 541550689 946088808 298949136 736674395 335782336 306264260 694151209 229529120 394631488 974348577 319147939 909898953 435518815 838428787 957852252 959895343 117213102 938430848 83588498 965968677 544490240 900736980 802417192 999922398 942458895 574889233 532278285 401156928 154337966 776168873 765136077 271924771 973378786 64101038 803036571 2508770 955186955 266049767 169943192 493133086 113744867 625729935 599963589 277719948 213809849 685109599 969953639 105161325 432759708 569767478 230431774 649252963 206156379 774844080 469161777 684219253 268506327 575812040 671469993 426871582 50260495 857599586 114871372 565268453 609295564 550406855 450269213 492274209 159997260 433462511 140198577 50298307 266291141 938891338 524090734 328941245 627817796 104560153 118451465 639018492 502599011 631481835 217873203 791272564 23129150 553203253 171813350 722149893 377625938 918133785 105605763 833771475 283956347 424230619 988728607 10008010 906926553 117578917 27680702 269074684 775055194 685803281 684649412 214272986 168056666 958920942 604935672 786891972 969382692 48860401 313065955 101804697 134736140 765867436 858243157 65499637 639644527 233933249 16697850 806468802 391374073 894624742 779317156 872631594 136478173 919656720 269453167 427144862 576836605 224962737 316158269 335229429 423023543 504299168 111071611 455418858 271864336 374417014 385562189 175348801 607147064 903218902 719213395 380867535 98614982 337159749 251254722 755799222 318401898 338050714 951848992 357426725 358927409 631192110 604152196 875950448 434371154 40875805 354017038 473998228 71904090 873061828 599881826 38796589 605669171 689703527 491603211 641940865 882843701 300440960 86657420 613552761 980021651 174596475 894250701 696315400 6367995 14793602 956606299 999587733 92406175 404873526 725367876 664986077 238502564 11935500 699394901 787353510 431234801 604773894 490406952 206075881 237378869 609011748 859633614 718544649 251420249 446826047 341644072 71099421 50062903 820967390 245323881 698560890 239955212 801796927 914188174 49926953 787053601 968647374 256588775 967252735 289286370 739070183 951951176 919958656 702408053 126462742 730607813 875545031 229206972 687496485 197240397 133272378 387673882 384561745 508726662 531812308 557058229 602791104 81703839 864486063 934363439 734532139 136350398 96811614 79461137 512675300 262224118 851783906 682415155 746846875 890530484 925343051 679662788 945908322 807849292 459675862 492716899 142821908 109329041 79692981 879782474 928160179 208502232 703867054 685606289 961628331 640460757 635273043 116441622 410126802 879723101 203483907 205956326 662351859 829566576 83229214 596459054 469090121 290275438 384553742 532637841 310537697 547535924 972724242 285575901 848360911 952758398 402549998 981344505 226892732 125522224 342202664 64631706 885719624 445538702 968809424 381629073 664375916 60043932 252692997 90022119 201711214 314841122 438716214 66811068 278578772 210402648 612847348 244259387 202499980 914779972 395042972 515933067 79668383 398253497 485181604 225449254 957058334 44675712 6503242 240456412 17473682 307968648 878396264 975441789 114959765 249844402 514684963 237325380 872249249 543949324 117713675 747377259 222581101 757045899 761986885 543833367 76457126 332295237 59696570 468201498 608950628 952487407 182370807 4641450 638975854 320139808 208620327 639001481 68578006 945275531 964716645 582493026 220463359 528924722 585106284 697656683 182757520 746234386 996175267 587581257 313878377 117580800 873004645 105798027 209479776 231006904 237617852 303147909 931823793 534579235 201877221 13191490 847122019 296818924 230549111 141782569 947073514 580741619 467269899 134842821 204174811 154797757 407983151 474148985 621881333 959680611 296058748 979621635 431052923 582480949 870119341 682707967 819910666 152206639 47555418 16885974 453160377 710070787 621103933 648715998 439201558 165022519 662574136 299030457 878522225 52751257 501029957 685407668 992381782 293793614 843152488 996676128 354819253 671285467 218467553 194907664 661608918 477140529 911644361 532465219 968849702 979931251 497120503 767136014 33131989 621020233 795235734 809161246 416513191 931611696 643792319 553597672 960450667 984703252 581940175 537971809 18498110 40697437 202316825 284101620 407147420 183818922 230574164 232362814 698247326 384238449 376308703 418177051 921243316 886637915 777310765 408175129 843142577 492808418 908776265 510966734 958962866 357198577 417048811 744841949 882814783 967665412 986288388 191052451 527825624 337986192 18092258 692084339 286327376 704084593 554633625 807820359 976633436 24803392 13855703 68191077 543880752 690955621 540812274 221934367 890101034 442127785 302204808 511697441 895679501 286273770 142560023 676441704 814890674 321046697 450156921 612243011 144484092 128888074 537356483 786569868 15362798 197482464 67161388 491868435 718256005 95170933 939265891 96797595 639601446 239579907 584734242 407350566 845890762 626523417 405766303 846809496 291438898 941762956 640922902 489279340 665835598 568518201 626872538 697507159 98084178 474628976 735964650 20089080 594242823 866534620 468885313 637447332 450969357 99009596 527604658 613694652 515829222 431184873 524041141 738105349 909170710 880844340 477531748 956690104 689263128 720645243 232654529 191240345 927739885 764512931 497567015 13711696 635238956 352724656 671753372 357713446 951265365 686776063 353117233 762809855 56042609 639806265 928792417 480706951 594883941 201679749 132907769 179014034 886713159 259446526 595998044 760667615 876999615 222689950 363589150 830600839 519793038 330824702 407064592 518385453 371214483 373233595 746424422 478581267 896149366 446683781 67661179 459650338 396894926 169497737 822122176 677926914 674447187 358646020 183091374 672649688 366064049 138870762 415734159 591536654 879522930 731468501 292428455 602915354 551545901 992040139 392403070 833454976 490717684 866459833 470368080 331231913 550026471 21515145 470002306 418232534 987995827 626970382 238252205 31039322 829212478 628724422 514468796 880535735 60262162 14998689 440207523 493160723 845608132 248558563 583200940 392442590 995332372 118233394 192576962 621196903 372633672 676448706 780334088 606013200 583248331 9208615 496499113 640729784 102331917 826994014 437175300 700914293 406742046 718206923 463961639 316790246 912823357 315223175 650001001 186898624 363872026 315705478 537633695 7545583 463640263 390353216 605455334 466999296 985393807 595530053 538261439 261539866 518348902 593667082 496826530 32216436 768607940 984157021 392632676 192724994 479636472 743988307 404464788 575824074 280650560 734397599 712757902 501237588 348457298 841638809 757760495 417293817 812079169 842200674 210302181 167034789 701496301 964684837 114091815 852134788 506880701 212775919 698397034 24152768 810118748 651241230 119305760 234153440 314513885 399940796 145658619 340074920 348041197 996382533 254339815 901422629 992495477 440345993 800562215 577538614 15584065 565114941 416291665 464357546 170319203 530215767 767133788 413445985 841418797 975664045 741017467 772605150 908253962 26775899 822607185 664370493 729599868 844766869 923484613 329015305 338383088 253638629 542685765 337402491 9860070 33240080 577739900 16455250 870121155 10862101 82165921 271262662 746757141 827895172 112483709 952306332 938474815 128955691 279461216 688763620 319439530 343700017 727705949 515948863 869735414 299971641 588502736 12445026 914392390 573541276 76844091 402944092 171710206 161503827 437742136 514466442 1296915 667079000 975507189 575650875 766492923 839300527 460146266 161083687 514278631 823463222 590293294 271730338 857222841 955544277 763653189 574798292 889816060 975636785 63401811 993129105 310466195 66565113 361751856 911175553 136687058 829562678 307852945 457577274 706606696 975627844 467912820 631396438 620955805 296784102 117479034 487427286 908672469 460406851 70379849 264836548 702186341 280665860 908396369 84569527 289838053 453971093 839459786 407224402 467430045 524871580 709369151 410839332 191147659 948881384 74878280 18434183 463985274 531055051 835754088 593389471 196810733 676970661 222222576 317082041 961430493 961849012 607445507 909957833 749022012 574031841 586624252 830431393 257968569 761164561 904338297 555485088 697538337 348729789 573207876 537868574 166990719 909784033 349991799 392738515 423704230 181458975 514362518 262160726 134716313 484123382 767754090 837689536 180398114 183590190 429199737 652126159 602561997 219908852 91942647 233861746 112159365 988651435 614801988 786163663 325639150 839480253 304252254 730789841 874839688 259590450 231344953 34057260 326991794 735404518 671625387 623096005 413971681 822192831 325825116 393585759 244993079 231959925 130926483 475403308 675153877 308495421 899590824 853683006 957825586 827639444 28319491 181265690 444308933 260057356 580371043 970735374 40587223 103476207 360622879 759764558 252467849 238068175 207128840 709071767 851622578 296277297 572016737 53079560 743297665 460256954 477421663 649531648 151047028 182951777 561216570 546449799 338524279 130405892 470982008 112927798 10482256 857079374 98101914 269563318 261476004 898333263 554591748 296193015 312088900 612807287 340505805 462222611 332663163 775904575 132157977 321095085 70827606 839571243 218521242 820694407 839594635 93776098 506132577 986630326 165049905 538266277 822687392 526702492 570634767 329588165 263962255 285786856 950118879 218733771 561782091 201430016 222972624 32557964 834119243 38422933 593948550 503324974 653186644 21511459 53254282 361068947 453945332 955511741 526791315 731812224 203048035 766315294 75970736 668374792 799835704 876598692 601481522 375145940 394103020 484752312 465192346 460151766 620670814 34150943 511212902 27886668 244749355 127362327 254776675 468378546 527722881 361365460 313036392 190909931 890104212 536711578 828131460 58103804 559450873 213624561 661763995 262941764 662622430 562397823 37132195 2002844 459566524 990942182 320167157 390481408 111067892 651580050 815041889 348264124 944440759 433351377 841546932 449159726 750826286 619506951 827653809 806165507 893336373 622888211 37818609 378539547 761309885 845948734 342085471 392140930 165371333 710085575 999900583 665257466 220341383 940290115 118762955 657745804 414359469 925962890 402533657 817203217 675605140 2521643 758779102 888172940 841287626 254614109 214201610 306641788 507449972 433360330 586585694 916327761 110873178 56809490 517895509 860948775 174199096 173869643 446083760 777242953 143938517 393262083 548255565 598344618 40356807 732223743 125480613 239210100 543031159 119704785 116092136 998835332 242435503 94321642 206516582 122920022 982335657 935241919 505009816 514287698 503809555 977309950 115097156 460301698 724301769 869855547 70292544 372084260 813332324 512606845 803662143 361353522 480753275 801939422 763462835 653716500 291596797 799732503 420733392 280510520 676968805 830996319 543874781 340975981 331142574 947461369 750588776 356594211 776528625 540936347 626214176 564175299 351999862 377235141 692538268 351190449 535831440 266183508 277883885 485940421 974422792 419708082 570208910 112022857 360412411 877509615 655137768 843299284 123093728 240420333 899919128 2946801 760538341 340601776 966816808 131532638 78007822 417033912 171982602 478800067 879673732 871107965 197970380 893611993 17066922 379848986 299613323 700599544 811421860 341392546 169308592 331951814 248917463 429345331 475013066 789312767 30701660 886070177 27844266 309204958 974656716 355930267 510624041 483749964 497344181 586025615 827287047 707281618 949995410 979904038 924568479 998896672 519259559 938657969 674104210 979117443 397997893 391564034 402962117 82118794 903476343 800701358 556851606 621120005 398693717 558274645 824115330 528993122 250410198 874798454 548728244 786348925 106918726 793544815 978051995 982801583 856137236 9716830 600067867 189647301 561728102 757705305 939696801 918165806 291989799 100507532 394265432 220664485 157273070 456369507 234640757 795910491 50782094 579868296 84099801 57547406 691588684 141044375 47943735 277109005 408409830 440721206 527479238 546374744 289316757 577826938 44191236 619343577 565013279 308557095 598112159 929476311 793413289 303683677 720436755 500773813 216780072 693193205 860933836 364204850 19004518 781125834 495987775 984569862 446234709 292297331 99801906 675615959 121318274 853262464 616214499 485114111 208156511 809902700 559743065 122765012 946877776 176614230 289154830 559333032 331751402 363391262 143116214 254077000 924731619 268018597 307736675 466675195 404414912 532111160 99219577 726578689 829478802 797499371 751107051 297521875 911787068 774874706 499665801 774681715 517910260 872837239 353046148 937488611 928623904 380805517 439667157 92423437 223618620 808344538 5694401 46224108 517089935 878206700 74935972 653169620 35097455 590041359 878054590 974002003 876913415 322610561 294163916 291722869 280330332 327682423 529096411 711197541 119241834 275581663 14517215 739344007 564333727 434156018 809021172 937577279 446598689 69872061 382443562 798678471 70757448 228928524 315309380 679050846 895857881 199947785 265561337 976139508 275943877 56128569 459483418 307464494 442954617 603073486 727423153 661429578 864051275 440478574 72503690 81919187 772452318 279570838 159935023 942202393 471799409 74610952 166486075 665893339 370816615 468953150 680748184 805561100 803748977 392954732 273691331 653885331 5485906 883396169 249457890 672310108 745823122 895626654 933621377 19986582 570683727 147490296 662616142 160737542 234362765 100044487 884233991 954051674 79021708 280294754 198907465 896901903 83960757 94757191 984002008 701411941 667792384 11162126 995336185 75545827 385745839 703478171 136292212 566441064 898673158 351980999 308005660 216269880 173219347 546940374 234582796 106448042 411155720 965642406 1904581 880709385 9816011 467385827 368554468 239310837 32084724 441532230 575664020 489575194 790188255 40115426 809264249 399691618 339191986 22179980 878088766 640043907 567118931 132361833 820775925 631616511 970597673 468699353 88165372 66517057 372305985 582143314 945236473 259231476 413913752 617407701 34328603 347649694 426070745 811545081 418104023 849934434 542836538 858937133 23985611 780925775 375308575 545794405 583640968 809921931 655251712 133566164 655705977 187821876 281223479 465975472 574065917 805998696 892546336 488670632 888428762 761673058 943284612 832340901 82116628 829569077 616968693 698934591 371028216 484558281 190513080 947498576 862043316 737203969 992902016 436262746 221170708 421163949 807294134 477415210 854437166 514160034 405601183 312384455 958153425 760784395 663779858 950232201 559468853 93706481 499461282 425627637 414487692 166795837 122399976 381458948 738904084 109469023 633873273 395181683 788973458 201223082 497411776 346100866 361308293 919252986 475975921 19098470 451249620 245714989 732455660 86122244 655508881 793541886 200142423 890654888 507558457 524973582 956441960 48424139 751279188 665740840 487042041 302000948 184681214 187317351 450186056 106321654 348923047 615131000 371576851 996720847 880421731 791685471 862115423 927032920 475880926 620066456 537154130 527705269 321928120 386967066 552995662 27907575 292126268 868196652 485838677 571586313 171140194 737031133 433973967 304979934 443662798 366406901 773291932 12420995 964635742 794595995 193241277 216935322 926321787 672107909 464424335 856485991 587729031 854385666 511617416 9209704 294799168 100483905 209989539 474660368 410401738 657258491 523689881 645725613 230542388 859297230 28668145 873227836 54875792 27221910 779162995 285278449 756599925 402730820 724135620 489916085 726954250 148014249 335710366 361774220 24669851 14168041 107270078 838302352 549907921 419123515 705501032 14659467 665726223 524790675 229679500 436161067 506201281 955523022 763515333 251223952 825727142 365183171 185290924 883506548 814481820 609151998 201349462 360185214 819508897 184838858 565468473 498023170 541651221 794760126 26317475 267228611 545627023 22616957 262777354 880375935 729818902 897407250 254578930 83661639 764511344 183978749 342892444 860075129 236336659 653389531 611866344 557633106 413144432 309536957 609256212 216357350 938920488 187039853 931047176 697611136 797767809 827407892 286051261 537714645 7598847 390805664 742017338 743615016 350831483 613049439 512407957 475676424 416688354 149845059 70633228 442823742 379128111 169065864 194273922 236045198 813913755 629209467 952353352 685357134 224460440 836236967 531676241 242501622 775321773 693816481 107972542 72234674 482110080 704341115 373956211 816240985 887132192 522332218 752027842 776173341 25804296 823789959 739138868 644266 724890478 159657356 375745138 550377309 849377035 320218288 148749395 155201778 763692913 98934580 438367480 837252547 63973743 544275386 444681692 572133536 517589604 607057618 330639312 518297978 134482934 122318377 146346867 261107221 129126497 597945763 45229816 548677469 433653358 617114710 709527134 131282934 479359547 718890404 840232579 166068389 40494433 86336292 787917289 317755619 866054265 60048722 354592787 746222359 236750287 70176787 591977647 568950970 648886434 700993074 677820614 403388485 306815232 321807735 512328215 720068749 222230524 182112111 775071407 687137308 374794803 277362937 283938995 122906194 263645445 273338943 719179493 793345658 797279808 385993364 209245236 591604838 25427524 55222477 320525456 77843199 133950362 118986977 960898326 262997718 753822158 697322434 575215581 574150554 807538286 690569902 357620227 565099409 819065872 692422827 451413713 177651309 590381682 404386391 776824066 546234921 746095441 582463454 643781397 253952133 179837849 791508724 398044349 875557717 6358494 54424640 306600004 689874908 535480680 519727522 229429681 930275872 84133227 587709711 59703812 145709951 113778777 274293190 388976987 788695519 438894403 140757542 488341099 657858762 446217843 558882952 353886826 835360542 945075773 671615445 92975708 288926835 612636208 998372043 939180624 218003337 144718334 94167818 511065095 941857572 877592273 755274352 684410194 887023494 111372695 947489635 898366808 755784167 767268116 991256151 64859688 446964624 524001418 992612073 358789114 497315341 711168922 879952904 111056812 640313539 937142497 239253315 664770678 525510214 437661541 49656062 427406120 297644498 920871030 881427363 125073704 847324593 472916201 264720622 779680108 472592286 125246786 264683528 809875776 671160425 651071096 408033020 854906981 421739224 561949987 610100670 778586004 9236270 209123836 647045398 381190632 478044000 866663321 421079352 609693136 153732189 851000700 444519604 934525528 479814388 108420105 767159888 778072591 50482152 490199551 513359866 977920968 193973176 61382866 433999954 731688545 256049267 318516457 975758890 352424120 648512401 110645187 613309198 236221938 607729848 791672969 72500214 362091235 130437521 328752350 48429640 843280272 238406286 276891834 582263880 629219298 625999925 191733381 824936080 212409471 654432642 216546412 199526408 573284278 628947113 706021543 261840417 409229506 246433673 375636922 373289714 523095223 16294564 451090260 829251192 443098426 515882759 545703910 832669652 989935690 571710222 892653974 883583400 598371852 226988768 833673586 943591481 265244839 124185150 706125005 380490262 839045553 631882637 769150734 104711357 677510381 406382711 95539472 538354858 765426598 118449772 99019527 524203052 186277474 180446960 700055922 496531716 361738333 804167779 600530943 453877161 555903990 519704758 887053895 518839117 504276182 33350112 425941566 474957944 355021805 588328466 841415013 562556476 640714351 189444030 317764245 281137642 536025748 452280748 494208382 360825498 347486959 193535730 517330667 7534491 267795854 481739085 105254977 688294766 450417137 488943409 262461694 38902641 922646735 191863056 373837871 233392248 644794173 318798447 446741316 744178844 136925261 323677160 273026190 324640558 82619856 612863389 532450372 416553808 589874031 771017419 865433374 226428726 597346130 581556865 145703768 229902105 73379953 14625943 824709701 667191647 78307313 157571515 684880330 411837184 794285188 731931649 882405893 132388476 326476852 912772281 916335008 347555599 113687736 305957231 154647080 14969078 599551038 493769223 233152279 310690459 670150474 255516951 979856911 122959373 552469651 101024516 850859153 15366829 959081600 574582178 37706886 307426019 473148233 915488149 421296770 865360002 5186660 718850246 311952517 438825409 115901211 91671232 602014331 680224581 145219234 573679713 739247626 270805536 118413793 829694566 282524528 825340902 647775740 427261776 854559458 232488879 507847319 79523855 912252188 398500137 237554456 673385144 407416445 603738460 589029919 721762170 836479249 139021038 360857420 146190252 135679473 125054027 285237763 128525404 836434774 387148525 437024524 358870968 261133376 545186661 696001375 999993850 316986640 90702021 546897791 81667996 39972852 945012931 428678445 640724199 793086229 309194239 388044017 433396677 150642263 933659962 18715943 629950294 591199183 29532509 307754461 614476475 75245242 860274348 22459878 59931891 225894310 666180778 352717837 587763894 122508122 426378338 100125660 351748479 61898733 459144676 217725136 498811102 679219950 961404139 10987556 909128441 268621475 353134629 588128319 73290071 489196156 729329455 833910669 155179179 891936693 443249761 323660612 978028210 710163691 217280316 371271256 742586875 369389661 208086906 352486753 676331311 940684871 612794397 534124375 685448970 748489720 977819473 827833143 297435341 455947659 482656327 356477758 689359361 386240427 678659692 770987143 95922793 344638418 580599265 901434626 168485058 467720180 630250803 303900220 23755396 335652485 146119862 701774130 648751211 355844294 176693094 224920969 686554899 8263567 874080801 170857518 18641205 491876362 583596411 246453254 791748509 243178849 152275150 35266814 104880160 277513423 340337660 931360456 96055638 892436720 194474417 400682566 569818656 157425899 910207749 560643230 845038128 167390260 348092002 298545324 422692417 367446182 898700711 343708361 273145355 724614142 501953054 851116410 191617976 780883528 184219829 36039688 384006996 913033919 742676327 723226404 680171566 764329553 722508095 905068089 610184589 924580856 495159180 798681376 309557096 735566552 749404282 632842652 592676731 709618047 417108372 291449050 85383024 725606575 704663999 692321258 114054505 259999120 952701239 842116588 28246980 829731118 640534756 859665490 442936817 699666415 634993122 368303861 461472762 998859971 647538857 670568170 912085198 378810547 205419580 770552239 595477856 242580314 519352204 653101076 169423664 390633289 644031955 274241902 511243226 250680595 380598762 937082465 684067429 206446800 397700907 274229331 292898977 716017933 639739626 300356984 344174675 548750421 707708156 211271688 694633636 917170421 484507342 932884833 987699457 368150785 634200073 784833487 492595741 805379773 814862695 253030203 826560734 884531415 234025984 439567546 925867622 446703173 887760009 936939059 795994929 778899423 981601150 397228923 622108581 872774469 357103802 455846673 648239828 265123094 169984025 243046974 442833899 239523019 293276200 301997896 674173805 121202807 998857772 5387239 842780697 645354340 841241036 88840598 632812569 498091840 66806007 99728584 601785841 807734159 214248194 6063483 958819274 808621674 370355944 359681439 940693317 898247733 965671039 901270848 299264430 856253992 760033009 654337719 342035147 423934676 456521148 801817251 814902044 759645789 821352249 521089024 147926109 18499573 878062543 143219054 326862678 631486811 204347181 604154834 106560276 156667136 897454443 815442300 368582083 868196678 675384179 784426301 855349629 583917070 8690165 497854945 952502235 495387856 850176853 176320666 273289879 964861427 397970559 208781349 274097283 271215229 873238963 137290402 429500731 74337266 126921559 648892063 176042392 287170256 29427162 108425202 760479335 644617155 820046652 898048457 435963739 702024426 130474116 102697587 80811211 577927026 883826501 119528579 796337693 476740133 552189604 9820393 187524650 110550238 633018727 152227901 21571479 142250947 856882232 199071059 904510782 649979022 823311686 62289071 483902118 861950114 509633796 403211986 714012445 151740059 979156229 14172451 856896602 746215649 194077210 385123037 768867767 567086198 155537187 121103378 483546151 118757210 133049990 176563776 577306933 366195956 873475700 620637353 790800829 358796982 746396476 266729827 339784604 415454070 603291489 402470988 185511949 340414400 206633595 241785147 318197421 285948016 82156924 318808678 569279091 559582096 301834969 256804773 912614386 912861267 806381963 215660200 336265086 644495507 617729029 390353308 34247448 187554099 266048209 915173367 817787313 221556384 878822449 295775763 434159229 793378885 963148751 652832336 250272749 466543471 933032145 710740291 592278678 2358302 511087521 82917923 495159168 74478305 105495191 671899514 43249666 952075137 335456434 252555223 252707490 287375987 460868460 116524905 129689163 244247016 998592901 552592129 709180705 131178982 175987530 5159430 796748188 238528712 942162011 218750304 592008852 578472395 748699345 876643358 533239681 521786003 716697746 480311814 920770168 177103396 170949255 554433853 37122723 27102880 840883674 379047471 637847231 212579915 842845404 232005489 838199652 905084873 766558536 151218324 628428362 441535084 172786167 573828736 750592251 68632202 615896000 217236707 388484965 674247753 782718175 521752139 556270764 219421450 532394967 640887185 361255059 95447780 763578300 368663912 255306576 333236611 186342898 244462703 59214903 382165890 325564969 464902065 613681897 101598535 600287276 528237317 553190178 364747628 610299370 641811090 205824256 258807740 710060024 857769837 629803880 947735030 451180642 946948855 654627793 668607001 744385826 705652411 372996882 906579857 762792995 983685763 342544380 760185860 85644807 110708685 191825258 818540831 847885474 961630147 703724202 664866236 591009865 413800914 838482884 922863691 139665829 308676897 54164971 68804394 674172707 854048180 253485142 579549861 497711339 649804442 459353982 809601623 81014499 20854715 156797971 111590745 830757679 996342487 379785624 760341483 75732025 937657943 125383800 828024697 986181197 911606424 512995586 527546926 813978143 87149325 72365135 701304964 46378190 589324756 855530159 182391583 718026616 953191144 485137133 628173967 940161751 416145141 214887606 664267254 744302021 289794117 784153942 867702395 455476243 965495780 992429569 145293990 656266886 980579031 211470625 917610373 794345042 859216152 870242806 249368356 592915169 228368239 914874890 376840879 716249944 975711632 708022039 464838489 486427401 103333421 279944489 305298795 887986227 141225006 382466510 709737657 477056214 37377640 569558991 836931703 640373424 736685936 696720275 917379608 616664115 439332392 362325084 205894294 297692759 605027812 457876373 100688359 137868203 903838304 546351973 118511476 487371036 351806114 490806345 848914422 646490678 448857314 730453585 235317949 577274857 530252401 469802763 920601592 129467099 717485663 438053811 828163692 166174237 750870843 599170597 18393439 463164538 788284304 517610952 307469189 396415976 942641638 151465301 829684961 429598071 545117159 361948748 855439478 640744451 186112311 403252228 629804975 771557578 360627703 209971159 491530292 930167677 506536009 94662902 180883516 995377931 184493201 181215542 185374395 611263044 614090352 377432119 387831665 648231742 511538853 458346599 399704408 791413348 25593642 399266006 671892093 598442100 997092313 795925110 853765881 847251856 806290537 539012743 138263565 409950689 51007619 776168955 675540026 801988699 22289204 329453443 210967877 703805666 119795919 990118215 651211272 465189491 220413712 147590036 758857649 269293877 265588811 538326321 99127231 510783236 930110287 16658710 836572180 432620410 736062498 617528351 968055298 131433903 819368378 706157720 818518109 953869230 265061531 623871938 847409344 548627306 487873523 545139009 128165610 807550889 555883063 412786509 446988432 768125793 7303261 950244162 156085443 926936528 823721806 149287101 594378847 883822943 721042220 668234667 988517003 973244954 57407642 155616965 662773834 944469752 976470892 492924472 997260724 272373660 630157872 835441453 518041116 255548938 665087867 226602423 245259119 650892331 151888059 652691101 7659151 382204275 355929955 541791749 828706515 571386307 940663472 323178678 20087260 255383625 430467058 997434762 997433694 285676685 327768507 401648790 146043853 452576175 222004456 950169184 229646927 506391894 909657777 732672407 464848201 352971607 997016573 807102581 647767854 807825369 833776000 865320597 827803011 548075085 647493630 774694315 97033260 76862487 497765980 167188204 533204466 202132138 855477368 428148335 387768249 760520557 233645138 654827402 896183410 27545738 426199596 949923023 820481656 514137764 651693102 852904274 721616380 462868135 678669528 750815424 252945493 766598288 745724429 474996118 985838517 638540703 632006697 606162973 832276780 15870520 854746291 76391806 546323990 79416970 977526693 185850097 382634723 377942723 373311893 332547047 310727106 541548801 224133398 970032521 18336949 649254011 286965574 240097858 783356414 633280900 183765283 775760493 188620350 999735822 764154339 38803734 770619394 374294409 933616914 313298179 818648629 338812356 1676255 729763596 125105567 553046371 456822714 733041092 695038619 144661333 39714318 383832207 119590451 963597632 201561556 757916689 761079826 412872523 656855483 205392663 486188286 285257582 509109807 676839903 301658205 56526314 177552363 333750143 646535647 669087500 92404330 985147315 80397111 268002445 312740022 892080011 443375385 595773289 340693635 982801953 265975421 362952445 597197200 93520548 368045192 18136075 938506358 726057816 557838495 590715932 618073842 180756907 108869861 895177326 394124499 557440934 207689697 561616847 101561363 518626785 471937574 7711898 208310291 334030270 842194031 292010365 576556562 944385434 819491569 394165272 893506020 597523945 201806912 515330795 194974138 595163485 978076760 860173475 512949499 903512361 655219739 865682781 358480804 113984280 640288980 366515957 875929199 533931178 916634061 246106754 627129047 332855056 879087134 312655726 815599855 891766499 83665830 117571190 90954428 431048604 499329800 95400801 478965251 761254470 795166512 906293967 436111452 278602458 242316807 492481048 85163125 168778229 134009717 206048270 813037275 312925730 689718115 674479685 724718499 690732869 973875629 800614553 674644894 111852224 854297781 297608292 983285422 281922494 272557452 313875264 453000211 560728014 365485010 230507327 133609092 417018124 519579955 594655883 774598609 863631274 499209826 542949630 613179900 595100280 273812799 4634813 122459381 480415642 155840978 970767526 673190076 952223055 129309451 269540528 722442031 758004779 277287667 532385792 617625798 862922369 904527416 962945313 494448425 419103932 874080171 875156299 879649091 777654977 163466593 220406550 78188800 100999508 894700684 716416186 563629351 699235076 197344307 993354231 708557363 236858014 82234019 978215122 103083706 169776443 411979522 698043220 918500660 260677745 592560727 12119304 336279903 76789610 173673137 226613328 40944071 846105877 310125729 797895048 263402292 443080692 60086288 839406105 85894060 472857694 580354275 432417969 116798922 688163140 477702185 732223163 239905906 11515837 16889272 466809811 956921490 37049030 564989433 717992103 491489159 795849617 75547772 499112304 675580068 595422090 199230519 2329352 321973424 296342654 594318859 121141427 508816364 922850697 255358144 987135957 431478206 679176503 221460992 521842516 210568520 204076018 251254176 126551878 302491404 249057495 278208176 814311065 447384800 241371721 437206714 10863982 262106143 428809778 611468544 533260700 213910700 552427771 260612185 340199880 295679432 754495997 152157385 421651255 701170466 64507261 315774539 740563660 378692376 231964731 589372889 616218088 587767800 112863104 209313020 904823942 779264585 638096260 786552969 435365042 271955991 251737546 866172455 319698637 254641487 768644686 346933141 343076543 799396916 189039861 736947700 941452841 487099234 251400639 765458376 971065390 450349568 501265639 777996152 733609849 805169125 83892100 611469393 965847740 422345793 455958945 95843839 137437679 131747436 358621734 523186200 555137788 231526408 409140950 245134390 581094060 392266875 492686846 46781668 239922721 626706488 693725649 235059064 550331703 212989046 676122142 60481032 102972991 12754164 117089697 345572143 921228498 946789182 671707032 319824736 464047943 998690518 76701463 572391198 561091976 228129776 693936436 307255393 647574676 542175063 40737944 327647705 759677573 183600172 182019551 492312419 358503670 919584913 11773199 727066853 373338908 504684834 817695655 8917131 384629306 865416034 158233677 316936417 421920452 894549447 756998693 535233083 659380426 608913307 855506716 356076182 772047803 534805462 470504299 712967194 500785650 141993725 924329449 84537165 505882369 746738729 124355668 973292166 502099313 982040048 501821008 369749539 785064202 812487567 901295393 982024157 573308734 38904839 434801716 326190211 639452232 578197903 730512898 743143843 351555600 905462010 586574845 580892354 630363934 444222173 567020767 355120483 569011782 533924088 725480227 604605954 369031654 227230340 998476886 358504186 911452583 525866029 442706401 681005148 933915001 140613028 968110672 564822805 899263268 501387567 64979579 95043946 365974066 757949743 777836196 891015942 464654342 826799892 900016920 948906387 181722327 925878917 854162817 695771830 418660729 102331855 888709826 719667602 781952361 532064404 166994803 895862947 159188414 947554942 707540127 411098565 847196470 766869653 916175426 759368784 148584804 706922025 675005017 698353023 467029662 502445126 595580594 664506277 214649870 409714766 260723843 473567728 694081727 450376680 962182251 599518191 425546590 747298486 695574422 106855651 722537945 652136562 214791973 836751984 228123246 138074728 307497993 307678556 547581876 411260080 137766699 224920634 255823558 170656254 428107150 274838640 313599071 241997508 798459490 171255196 350957769 867617554 472134845 617429682 68471875 167880446 28971332 29502986 856441070 939468575 843445136 285525889 957095860 944603965 776043762 15806399 848561707 816949291 862463481 824014832 804008533 934115658 206616267 238416035 454197359 200103227 772552750 273850308 505454790 434558334 366196700 486595870 459483150 344972605 6204534 443203262 23795437 903934942 711176868 347825344 294525806 544310128 263166746 262265979 582140523 53394957 667833332 583980470 811395575 597869273 303591722 148773517 710307082 162189259 45944018 80480105 569821044 266320174 552890004 924340096 873098363 706057997 318920991 286489031 317831493 87548524 506081488 884500180 244580695 322099082 262734118 281750733 776103060 972454157 632396209 32028443 901376376 831397098 722700535 454321796 70062005 512533945 823873344 921347506 722620283 155577982 512931557 89582430 148631781 655030643 690694987 119655212 296816693 146402895 145460271 946057263 70387807 433285703 539231469 440910701 615545099 941966530 267526346 898508546 778210789 472645691 803462258 387401451 29096484 597560193 738356032 300118360 965766241 322387607 171296865 641460318 275059041 868541905 428421076 661994302 548936671 107259225 934371581 962234125 776986473 476099998 842192342 749557278 725785648 331045118 155974593 808566383 601849310 832025932 730034785 886665420 804965914 916920037 422763943 378998804 382112826 109716294 832325148 304695611 615662244 435564054 969260765 232312088 875411342 570850362 749833983 351814381 973017454 632420501 210975498 807476133 346734211 665048669 40198904 900535072 257410668 132309446 570227176 937500965 745852080 433818046 272619458 588632780 73541137 899426065 90070212 279091385 707192644 532332352 526106516 776837733 388231474 394509227 575463535 898924991 212258986 431856834 771950855 322386618 693332510 871534025 430367136 938489932 732482092 791730004 974022607 887481788 777050263 485804514 428146156 353045938 176586737 896940013 861760190 81207423 685181782 740651541 165243472 617442072 11809589 784836137 473625697 572238067 111107198 115311286 746054215 566829565 242302658 670893079 200953174 37687179 473606806 888192463 389812569 646114192 796098134 335204391 906321789 823032891 872254024 272643266 965533807 776632671 889990732 564907451 572164547 745497974 86723091 666138533 689192703 336412489 559610306 941582801 327884851 42241998 44550435 302656126 342999209 609060645 185581239 921191993 247088536 525786729 803590023 432017789 272292489 892982759 570667279 256473933 864043229 953424323 217025435 23360119 967160553 249580878 599598884 329587479 745103020 388447641 406679350 42789966 444868182 252523777 737650732 242808866 284485295 199049361 933264616 196757544 398249819 614096813 429789223 733199992 700784062 241277373 965799372 871146879 931652955 415419266 605803879 71967116 32280302 316527080 100474034 123896969 574262334 690069618 98604853 789321755 334820198 735523792 671247035 649710790 30414245 619816971 111860153 165269184 804587628 329446492 44114027 126518096 724547018 554140151 626818863 141898598 126559964 535520087 907127758 383329116 910612332 920920479 631978818 471907102 87056643 359767279 786216477 95806486 976072988 60636221 684646448 36319328 323519596 928820138 638202039 467585981 221916790 850061816 907783574 301427490 519631165 120004288 591936525 598051125 291579880 162813848 284030443 458136939 231787355 941285325 292435707 315213599 84661695 317642797 539757889 420568617 922955212 704440109 653352335 534912985 755397706 2907286 484213883 282912795 93058344 117365264 19158979 920570435 8945332 912022772 479428784 708117641 211718384 724596880 756064534 428987282 815373136 933601876 91280677 632260935 201021943 930170633 13346255 227045880 35292435 116467424 323739019 45869702 750883550 440697964 782579123 576487915 626077623 938594483 161707800 773104344 278662839 556861057 532823216 612858491 783086797 834575926 710649792 734577948 409381272 469397306 889443122 993693584 686160946 694481853 400392174 779612184 605111095 828103441 401117970 81882614 117548248 948594433 162320313 259026854 628507864 64216581 991394046 510840082 363757267 708052100 175826889 236656741 837441690 305371390 715884951 599007380 300974707 899920379 955512279 768678689 452164665 7306443 529808248 60665011 813506146 706828397 524771381 739442616 38854373 936271503 412909020 653447024 545436560 455093196 397378299 28850458 845840192 181390593 513703220 389589141 742317568 87087900 737097615 627662018 804765525 603845888 776875346 852660286 151971821 365577369 324323082 935759564 81484944 892787354 596257480 953061092 280746140 492308609 706678210 995205716 478998835 144096168 233022256 762200650 772859913 63220120 361966808 19551431 600342606 775021203 429502983 723278225 741418539 490050045 599670271 98515805 73624874 467915995 439353144 865467393 403910495 552596208 834680095 91323432 584992123 460544389 424328626 632806094 514720779 663425799 276125712 51849180 831807293 257067932 135245198 543924019 361195139 651697535 13631505 648267091 793111002 824406367 657478130 269419689 791180304 59599217 521226905 302303805 561197503 270029865 708453525 88746563 725199442 511572078 924419912 303808278 973426421 399116548 940652353 818881103 56491194 149312628 67883934 205858029 901551081 985819466 85847973 67851737 763215714 678541446 475082628 889145269 617327105 250813546 907627282 310762991 752676533 593441544 129610024 119289185 75286317 60876010 427279525 184077174 979127148 383863422 987074096 139425210 575318335 566555346 426798931 750204778 735496346 670664448 72352073 895623371 908813492 581703525 204843124 902940230 112332242 619673257 875585402 759788050 609700879 301834102 266417827 553062616 177473426 179365150 419221502 143208627 588722153 428493973 736737724 298775993 382445397 686573569 496444958 873506215 770332678 622038827 955149706 108048421 889255280 590547929 787405251 242361451 287730664 377353004 106522527 616303689 316462313 943414181 967293728 720689499 312237747 592708625 340041925 934872061 831275934 198510862 313750766 238480965 279690507 820673341 882302422 204642705 869757667 977325156 412873280 343097312 636363156 22450631 174473623 91210563 535688772 55041144 183536923 707180594 852923617 213344320 966490612 541656811 938601001 388227992 218883959 119599407 38280321 219177434 683883393 875735615 710188887 74306530 989784659 8924953 223336214 784918987 25143916 10729042 930129411 927951966 212204456 92013661 641627745 788798415 146716811 683504379 167738789 135084618 719706089 433718075 103881819 741607569 674353979 256751113 699346010 418566321 915260708 350976217 967499831 878317339 686980740 606965230 734780392 575383468 226217367 843211572 224339767 37951525 944110746 752539333 428604010 117973819 160381187 731105456 847009379 568122865 157664309 586566880 823166347 997014727 924980405 139378015 731828917 526596933 852340801 211462343 86956346 888210103 504643860 478350620 392940318 584577905 190442474 85593775 996562333 949745421 80288640 847725378 799302623 629600132 951717788 625233087 770129044 447582972 299721913 69474267 663547495 220127690 106500036 264076323 583152125 315060419 983515819 583562261 668264598 930190311 223082629 547200357 324878223 11120382 412292797 856536396 964819593 101697647 894065300 39593605 370919737 111249701 709900814 812869821 311590684 474234008 449478587 133565109 279666367 166855457 396847163 345256707 580318827 937132216 441160833 761712548 30822282 433899018 653177714 173611249 946264433 607738333 698517150 833481722 499793422 787650904 812319650 357611247 588765710 575000692 533500625 39597360 26415590 729761482 507379432 636100533 168469735 972299429 170231873 159774467 735388935 891146986 891185660 806536595 447242708 953848449 499811926 241339574 602889069 660511274 941187545 32368527 391228539 551429303 856838485 60759221 325031402 304271170 645130464 648205244 17303298 655848445 298173381 736852851 41501871 184102828 361409717 118927535 592043499 82400275 580084128 117539947 941915294 310722502 943167707 574990302 870335922 994296617 923077213 678302970 109992355 803146916 268369037 395582761 73354224 663184093 545393631 895111220 804450528 655129514 293577095 249025987 966425641 571493002 303230895 424719630 589212536 215429718 248504933 870597348 720860612 173459399 612185958 847919846 654756967 554228955 64608790 917122864 833849027 383692928 746874428 830496526 435598349 437366839 204427453 218367355 264244928 599483145 74107507 892419941 334220411 404247281 18464870 624809113 48596668 593390846 213106694 239692753 738322862 680290767 250724011 461125681 138276279 702640328 325714931 848472309 894435048 853380089 845505128 76266699 795551454 66123376 846182349 224811622 386363418 752279677 978177998 496300875 419550863 587341888 453105323 331583925 229348181 538085809 550669777 272223768 127778587 354536896 750665929 145261529 655654857 595059554 153389927 743253662 464182347 117795126 471059531 934841581 867945693 840096897 72607774 709347688 572929285 759976263 62576330 109043074 485223064 289380842 875279052 900045846 589635341 319504606 980346101 110504773 563030269 252275251 623861477 443623523 864179774 790048621 394251119 225811517 786202228 296251233 386155025 394981678 39665613 10289212 600881820 559849201 704054780 995937741 740972189 724423890 911644731 575900204 532871559 169866163 255632486 731167083 821103787 50144457 505782362 818934187 841080088 15617615 822303552 141218632 393976614 91415656 569551655 506135119 200755851 20960179 158500911 341691494 922507229 901054441 896199971 463302814 89738753 382446986 276508588 512764916 256107143 603571069 625201043 894583605 385657349 395415496 116540476 846983422 779201932 147957289 629213037 706684556 239469034 12495827 213305776 233175753 896297265 307176575 198827619 341673788 32254486 117128176 639491326 413752758 545151002 992867733 529181870 422187032 6233311 260442925 473558621 555725419 463210982 902186434 636509829 976078500 511898510 270996201 680687854 785835099 899689323 899256639 654226656 303508576 362633063 537939696 154215663 490345057 971707696 577368581 512103911 319891566 662575670 159154406 449263730 380189889 217853591 909077307 759662724 852012824 739472423 367656510 569527330 932658716 823980573 129960706 553267461 352721077 718493893 928088258 202286306 141015872 608507390 562188979 545584553 708313965 816813244 857072910 939959383 124258405 506674187 826241970 409016232 364354729 206575810 841624463 148922979 215346533 589146110 404015329 355793145 71414119 680541998 680813849 632076887 294442075 608583688 899382950 675668001 809375632 63755851 277137106 979748855 507986665 246646125 616791363 739517302 959625175 742717889 338064420 488137838 734747498 393023561 769525803 982266168 884310237 292914036 347220754 640515918 310963335 316042111 729784935 737431647 17849422 421216376 84505615 758136872 425303030 626793122 683597005 335721338 848624387 411355777 234653302 580687966 413432932 677683654 865626927 181623487 82290795 15712300 903594559 190680048 935370553 540767154 448792621 762937121 771124792 706882299 460522504 599524693 566335489 338835545 295359277 372395247 76435118 619245989 152476358 824475887 748357129 816157501 581492769 179810270 955081738 75278749 602033157 88487397 867705905 412374465 766884617 632559602 274379332 674752564 330379912 839707593 507408518 635014104 27494449 471737286 854741874 700476278 651232938 363555036 352763953 748035402 266011439 134063922 616353551 25340625 427673715 701067117 409792554 359683193 695849994 111246931 298739640 814966069 948644580 850197192 635223793 366911685 32844730 813680383 818196357 777888900 122444874 48327408 650513690 848972187 344910346 635515990 444968859 716521293 735686313 289785260 637820883 686457584 663266442 637157689 549862613 400105287 746510896 633114502 63493146 409882920 521384778 589068530 682595991 348249969 660001191 652969634 898379641 155796715 585847670 625005496 755524839 931190763 303678963 416609140 944825808 526428786 991617823 346855540 111414263 160146485 666759698 745293207 655398837 275596225 972809008 827710578 909742035 351651898 70578764 931661783 668071248 265217752 831651039 271909732 196115816 624115927 988136250 449609123 641989831 741254048 820912606 759560960 530268512 109240238 385998672 899578209 560069239 23431455 963826712 899769001 937243398 552083265 504220140 875111671 132263221 976722147 604443234 670711893 141032905 540234995 508648805 777988962 223317317 180831850 36196778 155018829 258374638 23529718 689951453 583950080 374811898 380642255 272117850 250752748 673068806 697199995 644750540 372790779 497320875 408793857 819626495 789819110 740523452 279672007 699664788 313210804 271245561 34348114 490291261 268242875 577701958 164273881 566135648 486953280 57988516 390001123 207857553 803920992 829314286 580998829 266338781 842052036 797156426 500517941 338132071 101680893 428338979 993794979 925250882 917046100 496159799 377471732 476946996 733693642 889302065 897222871 772411630 547717292 319479955 527241252 908109850 616674842 577411254 31273024 662529084 579866024 136010898 410552728 863982751 7151619 383848535 159027965 219941512 534066436 621591474 947611148 815827398 433214480 229231760 981313993 201210323 871012366 526077218 331428899 256349855 960905419 173326786 929240263 851137988 835007755 235312283 187805949 551623052 520169155 455817153 200897789 282745545 744143548 152876101 861367150 32858444 360063520 525688763 369011660 349095313 375798731 621154716 640719537 943187931 81750853 219600709 87821085 596324539 979166596 425919715 892102100 364197095 671827950 295639401 670132444 424085250 424607067 678319169 815465904 329490834 65946963 118902000 424872698 236703432 535188078 615299786 787890914 274690004 943540273 662215149 911625808 963126994 478221192 220182050 868649471 283773987 321224948 186213449 991038317 929089696 968147916 415103744 972627263 241528537 855756638 823668598 921075403 231910910 206088479 868559902 598986408 236567840 62628285 866671990 407962301 567842873 78601313 705674053 954339228 17412767 11371011 660522439 535371358 824680128 762644643 268837459 122411749 809866739 956283894 731677517 134596951 109159227 216785783 236459832 95059734 903873989 224238448 847599198 557604562 707832261 702874342 79798427 535413984 982089664 124423385 454020557 862140446 813923172 650520027 930686433 398133897 32864593 933754248 895454900 612741407 890969846 420425527 494165793 637629394 433301989 780057034 345277916 833210145 264673237 10372901 202702818 789448932 38702676 804347568 479834843 191881839 82462543 797009735 270414545 982235230 723084126 112222729 321622284 415722407 447657852 632449410 210514409 751598083 720728091 424785427 673954676 602196073 841881028 373511273 710273696 127366310 262675925 31232851 732559737 272677311 449792579 547062736 154188064 405079405 580805688 963706929 524796381 893270621 313556174 703326514 732084914 449633997 337037799 364974480 355656689 742880154 393260548 350539536 526191715 352599513 679611152 424410430 868274548 247450891 991912863 82975992 393987867 424197957 208307015 190286402 338376048 376344688 245904283 674588890 334836036 689670989 562645526 331884239 778820976 214096296 555700976 288735744 188732981 321680362 972028208 876342936 218066445 606579371 632015616 771050254 449416842 474975349 900101430 326597593 853490738 292131363 618677584 85379120 596393299 367650676 151645322 677083964 732164049 326404119 256142980 967500596 601268619 963023432 860467021 450777077 541680503 649325937 180960763 823252286 32937541 102467770 813755854 713657935 937426005 868013773 686361139 962245472 400549249 28938446 869745826 863881604 810954200 797553469 128987304 478482664 807048525 653818830 195253660 889590446 209812297 145207034 538787105 659140839 608864565 489348998 73038386 716966969 779811240 68180216 461361362 323352021 369516706 26169989 78078733 505869821 255025199 665620497 216740955 268591557 159007302 710897919 748574639 370734392 745716127 669519604 388185742 388797608 496423824 368602566 120967727 46489895 906451868 627030173 152542342 541697306 997580519 369188248 480910958 203951543 290958810 232573640 116715759 281400860 843722587 225925761 238316451 775860662 432995027 691325836 336003952 643160593 519901311 950654128 524398187 467921829 453509833 341302070 372765606 564408410 231637356 188143772 516831425 123553024 372672204 679513285 137414337 248850137 94709380 517945514 188038202 238145227 490697678 195406086 410848021 766191098 474334492 733739362 620122277 603463649 426587834 277578517 309666177 60015811 285130040 64018460 558228112 453273663 750644664 609847934 878026945 29666855 701590296 115706178 439766376 880769981 152093806 3440967 609493224 681985746 860703525 174079445 793847975 838892114 553218597 197863229 938050085 36956254 703462948 844830223 708070657 444955060 358724204 278250875 359422079 110276989 838487617 651971984 382641371 716290873 754711351 600503111 642728749 276590460 602536180 954200597 775155945 620270784 506268251 395237676 639705148 81638322 850242897 98312907 859575464 595180655 50747223 176245152 881113032 424285975 419874890 452470095 803773940 597487367 284386103 859802804 658677509 531452875 113904957 393624897 155331229 214325082 75692545 623433697 20079496 573817124 743430243 958158748 284818904 870715479 581337770 313313867 519187462 107620875 677250826 636416423 145075258 525724299 351270959 562818436 301871853 443686406 360683294 878579073 413055965 403823281 399573959 168926644 258634446 921857923 552463761 135841638 141935859 487501886 618853737 560110946 55227191 113528055 89446320 811037051 985181657 434279100 689470611 939177691 485294461 581476072 826348332 692769960 86789427 552796631 757672371 714822514 851511968 935867605 743806652 444540745 436452722 28423912 669708114 410434946 976993377 694399163 396772887 415000616 100139646 460954168 115445141 818117445 506457986 93401375 69184279 687818475 343755818 465631629 801854749 107049630 662379674 494651698 876563631 869167390 843799211 990271511 638092943 250433842 635524240 130325643 596453522 444673797 503223341 804596948 937954546 353456523 801367806 630116529 124981222 305602036 118951153 385037838 299797610 973186951 798780331 558025687 924315217 747555795 921621609 796303011 363749321 100557510 713785585 474176144 308564059 453261600 976472151 567540223 827492608 167159841 200833741 74915998 184408994 68014739 945365298 49808396 540334872 852252960 347654592 145431377 718083180 208006584 701375290 31040860 179250052 168228296 254690008 625414294 250358990 482097288 523136147 3480461 511148324 177122522 447584241 752832237 84372767 937455214 170083266 880086428 16738175 416700975 781968537 288264645 41999268 344501888 44383271 604693661 329575146 411505631 810491733 652902950 705301769 808008623 139862553 353368290 588426045 781966943 350850502 776966457 759066078 133266827 40109737 640638376 572329777 484871320 378658122 188181002 296547278 36990165 520074939 943962156 193133934 540872423 783966361 123283556 47160967 64515480 293501103 711889187 71831818 131515745 477020575 457094797 657181145 299739785 251007929 997228308 236639584 615285464 334372891 829886432 125886864 395149080 805742418 293789919 865172635 738596578 541904954 706465806 550528778 638753921 289166354 786330690 645935627 435813927 33746064 735663727 665578499 180057778 221160939 958870933 801916212 742206777 179561135 914368836 816440524 838894047 344317186 426267135 280666420 289710748 507564470 786011202 802714266 230173632 161516215 187227121 469637634 943142271 89919401 712183961 814969346 200449527 546542870 806728984 356962968 450259697 685710501 59274203 702997700 933866105 998765828 389406402 949361560 337053349 447551729 793340834 976819498 651222112 120245076 54405447 544058127 963485190 305355287 265415055 492063471 16773800 370537824 737909652 88230103 507995246 916339390 152975020 231630926 635843376 592629405 938458223 937215907 148744169 960032470 8863998 714928570 257868397 404277541 242552025 523541979 159064905 307023909 61698674 331210591 426994686 966802494 252599245 917695839 592811730 413264598 275139396 529964346 46672796 189865529 171178042 88973311 590052366 911319254 655365428 260959694 981138272 355304881 581411818 386669303 679517272 388783749 258114761 483531085 173948125 993801834 584210551 827639964 337499356 854156542 935729478 789464408 523986688 814079713 160847111 299678733 147900110 818454907 114918209 550155430 328281568 743198534 541062188 250346202 628365843 898081159 405650270 745437710 674552709 731139663 382065267 347287009 455241318 503905932 436546115 268961626 233617657 128759221 675010379 408106991 712518633 321883360 455173333 924457521 968679945 662550819 870648885 891921829 192741193 721148566 697500030 176557623 177827231 565356566 649979825 294011187 802843772 382223300 697893948 318131481 292342171 474443361 324076539 983248325 550241286 768282490 912527134 346714606 759421234 867536331 24077491 856393445 545499758 157735133 596619276 126874019 7726417 760138297 908343897 157319398 516238479 415389594 257039207 143002044 463502 999978783 769257927 428167736 117535969 728761029 549707272 82427402 591938168 114689233 717027903 355321005 237951943 27642428 142716743 257024765 845436179 588240956 433004743 587281870 903405212 448535437 87809455 915400424 847378351 358570366 665946926 94514405 206997062 375056834 995295055 824112422 281041374 512714773 210044844 63439321 843517955 180354528 505362477 409261780 232244313 211688564 573224961 99342275 413731643 528156840 545932178 344471055 385262052 560255442 992502894 841476212 561082457 408099791 151143459 671286815 940709433 164083360 579262452 351510272 705169770 447463797 259193105 368082048 242088822 77750469 353234779 86284801 768759062 667686805 660071904 49164122 609259063 425111012 548196698 378417716 343153447 674153886 1635452 675121136 838376155 549813757 198665424 375156443 32321450 12133432 706794846 205454268 685616695 679394806 197372959 300507467 528241686 555196977 779788983 493800810 709656625 85975158 123386510 323768465 73261429 295187015 822293341 757834786 546347192 729351836 11917796 295545891 688035354 113153448 580985691 918665600 968559384 404414024 331227283 956399803 25490528 30732046 726898698 693538113 751931488 592787814 649121279 568279213 45897813 123239998 908314072 166268709 717710609 69163127 337399097 564141533 557933766 424958148 662464390 523710409 944343923 675765638 327909590 167590482 127814943 940051707 986300348 171301615 89393949 667452300 611983073 36111887 717501028 33668105 491605510 176564328 175276812 976407071 805084945 450589663 214492164 271803612 60193469 662172954 182741979 292440955 576533437 191912052 204431608 724560408 310847882 137320452 793038280 876828685 30154112 699989139 201819948 457857017 205341167 204551473 760583689 677018925 971478444 907048276 157478683 696581107 258547253 705088646 646610350 306582775 821727689 349852844 755381920 600737889 344288478 388393715 793192479 540024754 973873008 615805771 240756975 454066972 713580593 606130419 496647665 86307780 426627637 941240611 55054106 511334131 130965792 168359478 681417313 54591979 188893224 307434430 413856044 476788000 411284555 743898144 514171383 596426522 362385192 288693449 653052099 48470785 805755022 961062673 23028305 891525651 467123049 324541917 986207440 497189724 560097240 493115990 982301824 707466378 489868720 789684420 191620063 849541590 553490623 458967703 456568894 857271228 111145718 374260889 51878115 949976243 610109958 411143311 628476487 263813968 210467544 285181190 890971020 501593271 432606161 416647395 749496970 537116235 179649868 644916581 993216091 148619625 867309331 265263079 185439147 792498061 689920538 698571897 394964050 14396174 944481387 617453186 132173407 868504138 842558005 419696631 775828207 445327570 782714211 161055117 257171553 662166149 3802413 888997554 459884437 433653157 74761718 65840658 47643857 747234317 551492530 422542341 374831536 607050803 767452294 608788289 757830955 26053976 663318338 288019438 409078347 956655131 198774870 401282066 1065675 769599669 744573400 407639402 524837642 65835788 327927043 556000675 696459661 419598230 955095365 372726661 960748691 769262962 681873596 786518616 603867418 548080791 764523047 701309137 163494858 654207939 885493545 73405200 10874679 776565532 83105162 181659317 979092475 157221399 707778838 685750504 305229107 435029890 698484237 277362736 110030930 975856052 386996664 260246836 368230537 627751815 308635609 876553963 669702051 298584937 760247139 595463501 580648648 263893937 386889877 86116494 711491174 165662947 810858103 366002609 535288391 508008048 936957678 656729446 125861180 729612751 644848000 826207950 420103677 796832360 79785032 923989266 265443152 140709553 254012743 334226342 795044264 877402209 152560614 211474191 151290189 746965685 38132680 376949922 433463493 901389949 719450704 112062626 666948028 33483760 321144711 372183178 28515076 46112870 55746289 167172603 500493601 946590102 837949763 20547981 898986789 713772412 244524226 480706455 498923475 56759351 875871840 256545533 270395981 316833632 63861345 980433898 173500673 147526157 937329924 676838662 606798509 505626861 3282605 356419078 658186808 604499877 490726574 42821578 98992739 146699045 347767484 735342098 200222428 596781515 789349965 563251126 634035586 318777235 147592014 935759148 600947517 859479989 672814739 750034468 103102307 407153342 47695180 933758167 335686762 289299057 218592811 498782557 505135067 962166332 577692216 235864283 672093128 743440591 269265787 219332704 715356889 953944697 805546000 132280523 543888973 141963981 575128043 132051945 531043939 205379374 174296824 539377928 299984083 488481353 189643964 824203633 73507428 960674062 384718037 151440948 775438144 555728802 647937611 46733919 12660907 857945741 808331059 340388470 324719265 177946837 117337524 873449744 312629288 758000230 995002459 543431780 802260308 15269061 833365517 826347451 865434461 878265147 624554526 226379471 855440099 808662730 261187971 850009886 654793590 78547809 989210030 836324239 815709043 609579532 278472559 38221153 247822068 312070669 249182193 969616966 769142906 74182513 108682591 912787038 961059902 280515776 734010522 531609789 617009984 107615522 997726848 841174903 146465724 275522437 407725119 637690414 804096132 537764442 398381646 234494791 554891655 734267279 466189623 564686129 770487833 197932090 385456772 570947847 742117946 828513420 584460546 741325979 880761958 844833615 222143376 894287247 476364682 830245843 616382733 902277830 245175405 840457914 219908704 74560507 487608123 746086195 436856676 151806571 361642233 927926089 97699445 751521108 215892406 340240807 905708276 463305026 150921533 430388305 172528551 578425055 127399236 765843426 430360043 557342669 86396543 834046430 665840613 725897164 355280655 196287005 33599270 139603984 671325284 930956438 116907603 451525926 825704087 54534385 692957040 987289995 411484671 605472895 569855985 475917469 639728122 315453317 896513966 619319865 244181416 441920967 429363147 81549005 386993295 453677209 166446523 571487838 97479723 42611430 519984053 7651422 542294882 299188263 471496405 470032604 249348603 208616624 52003945 234986006 655513677 501765265 49500105 77317946 50365850 227911359 934305829 814369295 670549375 125319930 39167407 380342155 967891810 610337170 234806421 343596950 454619536 960124449 990852456 522270772 457057077 561258620 388732655 868865169 870798741 2921580 790173860 965643891 257129830 742745588 54409772 523568615 286751632 901921293 472830439 185902046 961319472 662297281 894791717 270451367 774734753 885606322 288847915 132838268 992592374 656019614 474518935 976402819 728692602 846220008 103284253 313314484 454951454 798292422 532607189 96414493 904406535 839922425 335947134 859368108 759144551 678813912 549871975 803909816 860080226 551659200 742620126 168016256 781018455 813428977 250703886 48315205 787932051 6090700 906984845 991350570 473889997 936109420 318346507 807379376 314138457 402349709 273894272 230736414 637003026 225547688 977574467 556783138 767572486 580707607 902848367 802241054 552565833 782005724 155009850 280192168 320705118 456166116 935828208 982145556 922842157 227941114 205880206 273671406 597952228 671713103 835538445 141837162 696779391 20890393 378405635 477317895 77568720 631144900 546439993 397231027 89248336 127222910 783153392 87750775 869714471 473601245 154661533 53904928 529702555 56125074 459392932 520243839 992041457 587436118 12368553 290415627 605362477 469112908 277861728 389975018 121251900 581578782 119036079 49515098 81473010 773396667 660143459 523708212 120546760 570474176 324581763 237719711 868723032 819237200 854995637 458756608 28833859 759302031 161988467 602369162 971936999 904861096 520438319 836448880 922981732 428680308 132243096 40932988 767429504 352532305 530576178 329592480 557769929 778636712 567460834 305412376 794107870 295241583 363067397 481513063 247217826 122726526 323205840 730328192 544106460 597389740 490025020 433623382 368741427 893163647 244587726 646224910 426792567 853560356 76473733 274966306 744253788 413147582 971514946 904320522 64350700 167290405 455830249 849251319 180188653 547472464 895002471 55984062 138228418 25627284 266633088 175459362 196489660 216922332 432360513 202208949 304696068 107362260 525859524 330276892 180700451 652119407 643061344 763941811 845792800 247902946 446124061 111974181 580696591 56012435 717520458 64914952 321392671 653271931 579205959 920298403 960099794 146828938 342352754 485752241 934052683 918653919 849616692 66203487 984542766 187881301 800897048 719485976 266148624 896730838 66413553 652964820 722836630 650294819 425369250 323700841 596678590 540525152 661999339 807919935 838429801 839038933 730194124 610486837 375824318 242989005 469825909 573244551 484496445 93006415 978489463 701269605 58931589 21535220 531202110 893434476 472420008 67385125 745312546 140209873 6809973 573671387 682309048 609159311 518220327 660494855 965884924 379407126 419559142 503298399 92121535 369676252 206995212 359517051 451308691 910228551 996233090 161505652 174294539 597980568 478443213 413788580 18085789 847103049 574138656 327229956 857321781 967281056 487976027 195738018 648659621 342784803 724719336 514589090 572877916 299648648 575207618 339417171 368374638 919025307 13545799 894773376 412652413 137628568 87903348 877283280 393979738 149058838 337629258 750885940 634350713 917117610 41515314 447528988 407072469 988013906 767723050 241195075 903128030 652839444 406850002 438771083 708523933 888907043 545890690 675556847 700474718 839997904 263820632 937210992 436154377 808076264 273601304 624783178 921161462 44764895 334457306 545746183 104072317 207258300 788571956 761386398 110761727 168453549 740791609 139332760 187984663 480123329 992551586 194355138 98380110 166693082 745132103 288584580 910834495 855420234 876738862 622025087 681589324 764058086 103878316 305846124 221539191 97988443 385998465 270111885 607192604 688464346 565626150 986763043 795411223 264705220 918117342 927854382 58157381 630410040 222101533 567143024 688807076 258946269 933724890 286884151 571625641 744144248 818604090 144280795 790460455 11438572 346744765 245079401 78962372 689646465 825106313 987113050 978468034 926969082 324860744 504681794 800420244 57258331 635584513 76584249 149040648 373787172 721279488 610265391 860756345 332693461 137194719 807111245 971352111 761268695 403543076 85240940 67599777 478259217 117342150 753288448 921088536 822933673 872968049 829921637 852085813 644969284 105322562 30710347 862854353 159820398 236175005 269492145 268679627 527602949 932909452 73602104 892225063 661157211 784558482 593380643 628793118 693342276 307632283 578887680 340965401 645394267 75576218 575476584 694489002 776049175 570383826 995409367 619108968 429760320 653441373 407371882 57534472 154997419 167711822 451825928 216066203 394195032 917583190 705613193 363886376 513218045 209021930 657057536 237632332 299612957 630865296 373908337 703590955 980777337 274700117 2810115 48144253 588367453 4338015 763560147 266849283 593123154 711822614 349859048 159549936 720703886 74231127 99478171 231052977 247776910 722860171 401360443 931527021 710400159 249734450 483561470 917077482 644384336 718445269 129902259 868016792 365664937 361076259 56230260 187517769 633559776 270589444 703127563 424013360 58820979 809478682 134125639 156557758 599148572 267722063 241430126 940889390 130662444 768309207 762329487 757011166 290523087 495821850 636065007 870332170 356821914 947838556 208402353 504212126 451803602 824004955 927196381 808098875 351092679 991562632 253941961 547822010 156797606 701240930 729863641 777546923 764115995 332977095 779834664 770574883 216789412 763996564 55977340 826624465 105530887 527242028 225601882 879057586 570835478 414653522 310950567 335557594 322346428 356604141 290435520 553231589 515956111 470472726 317934138 903179539 940478683 842292750 957283131 93659334 502766523 600287555 831551126 97053448 217804286 64668679 254457677 675031377 344670870 772860731 712252213 693269947 203497425 459102776 885547944 858406114 577020262 897129145 328974986 803741830 56337547 394661301 307774412 210839308 19609759 247792884 105148613 739469973 186926289 62847514 247567116 560441396 427282496 8693161 27294686 937487945 621704346 5847621 563460641 633802238 174997190 209151952 672989828 352152243 692773461 929964199 815390107 109307964 565410641 525395685 710813825 639220424 323801130 287793443 318441518 139516411 416741271 48841929 212449040 447361455 149625382 878700294 442357799 229980523 518541833 179994775 984953965 634793794 913199629 185687567 936374328 886560435 220372268 791006728 119110826 613600324 944891140 797948899 469919981 767537976 839574758 343188001 219496238 130188338 694129084 656020556 486854334 423401652 150111413 564896104 691409233 119830339 138357951 485183733 934546414 282833626 530268335 475854730 223605305 842168531 892052857 135735042 227186282 502813908 391243630 190194516 418314407 157216635 941868929 808842411 610289248 591105878 682331744 287584284 948225051 699514668 288599347 126582299 822961173 693464654 839630976 334565979 933564110 305681065 173344755 29436642 598318206 439035512 208253693 798500763 301205935 876394505 642410948 130400370 862209684 346375371 39941186 323632706 433595933 587885944 541925574 297999390 570060780 214766045 311328475 281465978 602884801 169195665 460616694 173982027 82597992 958854700 809548993 952899965 938720246 806327282 32813004 791541481 71708819 315735335 552077247 388405610 808063879 232536215 543909692 174308968 798853042 320359899 823980297 945486009 169229479 226062236 94607679 278658837 677440866 711588976 468825725 136287387 213518487 313470816 35265277 386331754 463347755 415593943 496653754 31035974 903318993 709850025 493163417 736642775 43061897 391725872 432539123 119297392 467143093 308582362 190887233 990934553 646144095 786045243 955285837 855543642 240297987 644189685 951161479 727442564 605290476 304256660 310576540 444557706 845366023 633850837 850140157 164294882 281469144 512860206 816593830 673152028 297549371 901602970 107093517 824737518 924336821 284044002 909135739 406204132 498877761 171148228 192557369 492902922 771640104 615614886 162343818 424223507 463807888 15330808 815824884 89769282 896757434 806181323 528797657 129927681 214187095 142096630 301490698 247822095 974836324 772700436 908869247 703696155 301000070 679114267 416759688 827412841 994057930 712870429 462438671 231379017 41203859 291694316 298800104 403198346 868959239 748652015 596526687 302427670 439728210 219918260 554469869 776629346 898719774 325383073 714504203 854734944 535122931 437000328 743809533 335333993 420909942 154146461 221533364 353160975 684895864 225202921 325179873 147015972 203221344 358588638 801717585 914113643 824217217 719424782 590029034 5105912 259219009 396621332 899684846 367646661 201210911 754389779 202227453 306467261 577083211 148027659 392182551 312599944 226860124 100345745 42720266 101014012 332045150 266957575 118830064 982671170 208450141 485844682 816763386 618086209 45826666 574971932 77925270 179733368 583331779 996211197 469080589 913875776 222060244 905873506 40155789 414057620 248786985 995988633 828366381 621096630 293667024 654639704 985503044 27259257 83920821 182875789 601223937 390037777 442918371 424936805 666889446 425499154 293863295 294165270 434314777 848695620 764869872 897462718 809549809 240356972 158276067 768903535 690716187 250462314 159243764 924610535 943090836 111252183 425966598 231729482 884421709 164946505 889755879 735522434 906166733 655143086 131367642 617480484 172327070 172726009 960982269 837064146 522635698 989388520 111099295 100120739 342617282 736337753 489629142 212213309 32073980 561098767 393236214 487696156 347000245 404708853 262376303 96989062 858363701 455220037 150742258 508480648 785345483 458865166 700466995 416214962 691585865 585188335 936647959 485368167 182827150 266360315 417035425 931306283 46669707 412800211 890337343 742491633 782665070 737758823 267638813 139494644 498856366 696882170 258546077 278944038 612267777 199439176 919066479 836095476 262437781 795384048 868981680 205778246 458268185 345782719 466950470 124014281 863911694 443461716 429032080 554256652 585289693 335628801 371696732 387079865 770716091 125287443 387930066 359678120 599628299 936383071 927491817 840706345 264746006 90055347 662183881 765411193 430671414 63325925 602161256 521995887 739500856 343057523 903023674 388987257 843928534 425112691 298910614 436288799 743683194 865701526 669023330 924145211 12667504 426176012 578935743 297440524 492239750 400394776 541299965 96566997 871306234 57660032 581025039 364058299 173095281 163902438 231060824 268026499 984459178 962915830 143906952 128920123 519653325 492276073 726511642 994455744 605592398 23167706 356367038 462560008 396887397 699927186 868785064 793990934 910352800 380457153 587361763 744273687 153310780 544586513 953328633 867384481 50779295 875117635 398278677 140281127 476781328 132328001 708475829 611102351 571752637 969839499 883639306 975614243 328978235 235756453 939063272 728529288 402184656 148358547 555377036 142886446 813484698 585526007 23717598 486806023 632482011 64110239 812627342 243561950 953260461 307999937 154733906 847938354 686142061 622380752 988923912 773685972 724410201 159360717 887597847 226084340 42851855 753227098 203041742 446515861 226921463 396401038 949884064 115097934 798710538 755083303 32036166 475774603 432673343 778069139 81620828 471032812 417557503 458634742 956572292 406624892 411907890 329628130 103230033 482997752 114601618 855130538 177909140 232678966 19629367 817414615 658073192 889045293 388815321 25761709 417543938 635550576 317822271 742049524 784536759 317996490 280908987 160079439 781240397 497174016 687047144 372225807 890336877 68702479 431480312 651498131 224421781 836301636 158155176 688382715 286756245 446007681 659321743 654882485 26405574 16894826 393167256 675466201 128409879 774651133 57209346 687653896 873576089 658782378 715319827 885425394 998583612 289895140 330521675 399421277 117036935 150195008 913481959 106643314 560411751 472941239 16871422 434998932 90885348 749649734 579710831 104661656 309611893 106665943 415853886 128187594 418614660 850719864 551946212 13429563 631965638 454883598 112358030 148460938 784252638 289370242 474134233 252123820 804642171 857359088 685252971 976873028 277092074 909160668 481984635 810504129 510033261 301327985 157863364 272112334 159461441 371029415 791165910 69618928 187138812 806950326 455633870 628518671 584575090 362930253 726414745 538671493 858462103 684327886 498354013 753542920 954730573 601362089 10986401 518018459 421311218 880997131 797693873 12417617 491275616 841442045 296497070 650269379 523205715 232844737 133640446 740810654 757744361 382669679 922709647 774084854 35557617 987418560 582048088 107281688 983034480 93658937 731113852 394598706 305930083 524800998 396709318 248086155 945751580 800025769 815263087 745456634 953806430 468210253 218366045 343731515 12874990 400476872 31978850 683924527 47931738 584888323 495149534 100900594 179306579 217907348 716724753 490574572 706242789 560520769 520268603 52113806 505943721 66045276 261770209 523807934 702624019 811006217 582841123 831525746 194959631 960309091 750236608 262104861 851215628 791835762 987448055 704873950 513889124 929603728 63639924 478599158 174209323 768017166 794888665 143339795 276286062 723545710 799001796 983648675 325788920 660130121 345606267 151723851 948530004 382563676 323508048 44370080 688127023 652597877 608415047 18917650 885590868 350641366 657905624 528533768 212397837 165356008 178142487 947808110 527506211 492432581 849043167 680640370 402865555 430050350 97175990 904270706 469589752 397185020 94613156 738218926 705914346 826252721 814811135 855077566 577554069 205539297 207479660 447819472 147664235 307390768 404537920 252534518 782331789 816786450 479258943 747373630 68106750 568753531 95801869 91031697 876283569 773664965 183884529 522397841 589136726 813766366 839170209 267096391 969596153 835809156 544823426 541690556 231023214 620645424 173295411 517503315 210898735 204420034 374574280 982595776 735041399 353314777 69193121 328848694 466157802 758121523 572601954 157097635 527894919 865964678 129747927 471781240 449270204 859351950 319556183 91600278 695005420 760664146 379518722 200470374 214083912 843770691 399761717 817355231 995887575 865334802 743749233 82983757 338616666 491447793 82766976 697445238 768034911 276921624 365197654 701267441 102077857 300258759 508186960 201939018 179475548 986244225 359028614 443076603 409055460 729853797 337686716 520743999 268628064 682358655 776063974 329775600 139772060 849722733 89977436 403473253 284839668 146359398 88677067 530942171 21797153 939692728 750669286 804615236 474821435 592562519 265490426 989444788 836913189 856082983 43274472 547525474 388696914 487692309 196194550 76506014 395399204 942797329 457314526 532906502 101849083 736766527 80763952 250648082 672037602 680449429 146344276 558166639 140914923 214272966 434259013 153272286 510809322 506924928 151590305 893975477 389736894 719284621 261709714 391107181 49386880 303478899 651730711 654828944 769070600 72032985 279306251 300122279 352962190 217813242 298549406 467485863 510983106 977859851 545311441 923756526 312652350 752753798 291218229 185658526 246731824 771129193 161938283 864224231 646183625 683643963 937329276 288573374 63120052 253100468 635913950 328487935 692216367 541544841 314244561 267455773 644455968 359506144 33083536 565381423 54259934 71858775 435096223 176700759 579584375 456346793 846150570 662586042 655675107 312099296 37733899 16572157 766952608 699786230 670405478 764164001 55369213 229351442 402489096 872956830 318615760 392166912 855476362 312465295 42247188 346380948 501150504 588396384 38496155 52828622 835125797 364648276 928760658 151304733 299384293 340351374 741919317 865612401 501601739 990580955 442445234 294520275 664090810 547860116 769422124 517331305 850327659 325441713 290819718 283814618 633786064 32349947 723191714 204052082 436715205 560049621 83063219 856040421 654280918 371521154 482848248 788508646 653152042 535345637 671275569 92892378 163180299 519601909 316552369 941443597 408406636 654763264 703407529 215295930 66185699 986236817 552749794 637449035 336344134 334785891 494196767 953372235 366626702 237198592 813291379 295531462 351913715 515409390 69748843 673197543 227806568 394780637 397230626 16575121 893088846 20359549 329034343 508171705 500447795 527089311 970468713 758535221 479532459 411522049 575248441 396775639 743659719 652403140 561787663 996332827 300842972 71407778 522047816 594153997 868589803 845769356 471921449 405125525 916035778 79000534 247993256 537974003 309736964 90935661 642249185 335160238 799072027 550279643 652059140 333510899 580637419 419872762 991702470 27199557 473594045 700230476 869500760 46130876 774710942 757057352 482840164 183809561 433293777 731579690 983056738 22020118 738434401 831692958 921959708 722869674 968028832 536137242 736006844 459289758 58454617 833808677 966490584 325195959 838613904 911651159 560900561 202262125 612370095 345941785 228648259 402791771 581809546 972932398 417900131 720623158 564445370 853923267 568245016 705971036 922794969 374302225 1537872 771546120 336741725 309869414 949322986 85215778 808238647 450047841 204081029 363518391 726177681 966758347 437942432 61090591 686594519 882240144 826861047 148496104 939297448 313119273 138106396 271485322 877902762 846958486 40667299 333405820 289022177 709724185 736578129 404631844 468770239 281085998 160260919 348938440 115305418 35359333 840398367 331673311 823121261 477883414 66875847 452366945 396461250 492820901 296812983 286267543 102485912 593417762 588117300 928322102 354490221 339253064 251056337 695530 510416156 201964616 956057261 540158820 590117082 107364268 121673267 852421523 413309443 962993156 761989704 202205161 282502076 797432301 102672568 411506412 58966578 4581547 951481181 954477599 23728301 719794902 917890162 387051783 699440349 797022356 142763635 243045777 615971206 822917659 333008500 599179207 832546436 487038456 204402605 279649491 809565034 247982757 774839830 734763057 53387809 872876322 97750981 576361949 502135113 890969990 330060143 717056740 840846974 699768202 27910454 881436259 455873737 964376272 640778440 755905503 425654354 305756376 58051514 252642238 23444566 497457973 106971708 73166174 185570037 50160366 603762607 88960405 535159096 536848258 818749044 275668137 971211135 235848883 510613711 817318669 488766496 375541332 319462503 622924613 943270317 902070533 837792836 732291211 425744550 422541540 406241131 795727783 887413885 459951984 451787818 255191427 963387777 772885862 421320628 193223065 30902288 633679373 92954293 861609842 252553944 249307893 295420499 444856090 480657795 961724028 678919019 227035140 736064920 39987460 421205306 679995731 688892073 497175828 535461833 999266133 193953663 258556591 248698206 651395262 46630006 690380040 289694723 676754067 964166165 608929189 408726566 136180869 121692976 28611004 234086183 265239185 888643556 400652301 582629503 560062034 41269228 711379061 860598186 727918107 453276950 873737463 425736273 400097379 532876028 614773667 808286030 179180783 404236779 297358076 187339973 702316553 97436218 219070205 464007316 612111692 944926080 540035130 579581638 389436251 768758278 512157099 12526480 474347506 451577103 590586679 216546636 872777923 863783985 866051302 904677762 360160776 99807303 367763224 751595746 252890854 827128368 412004289 985314955 680980908 428292385 273430931 27293630 375607088 738563995 675297303 945717215 904043452 885336341 209650256 838602975 549060511 565826136 404745789 15366682 62877729 981094414 95541738 590627709 491166068 217133218 872254411 613053669 56172773 484670995 111478963 731276167 52442328 374716117 732990410 884937799 307768010 906066427 743882333 610095877 971584111 539065667 9471213 948321544 423707004 949808242 274140004 96272221 631958106 290176662 389454139 133542663 309882401 273981090 420693155 737259295 847847539 350133043 829252689 507578753 727691762 562452146 247555064 962520001 579729881 953557707 990590721 529558166 432600513 607358603 596295352 507099008 973710826 665817875 245217902 387437217 708914592 391108899 303005254 496055507 542483630 633065534 970786426 102049669 650657809 955692377 489276809 427883399 419646678 849457024 100903790 950113666 329139297 817852948 406039466 183973100 708440301 663271233 976347339 647683683 538701417 332423016 162874095 134474375 734855043 644072312 33565415 648562715 487036110 358654516 679897872 854756071 109256762 136374119 659714496 342424614 826857675 322069428 918552730 913416421 313524467 75444621 565789392 887176166 767792900 705781037 558750578 99002406 832820457 508147223 138973507 132089955 420609839 232594504 222949089 297539040 263064932 114412624 402398273 299387861 93663661 201911328 692123585 640648421 503531089 196635492 382713347 52596230 845427603 761181086 859947728 811069560 494097058 126395377 585384950 150558398 121994732 867814109 124056015 860547088 768418663 74715120 168781286 882283065 201968 411093554 907392886 208465183 820276898 609761758 367614649 335837639 400134488 923047981 570813956 115718615 110166276 408551221 363082266 170189774 753766773 162757244 671727853 329227139 306019482 653153929 641368160 333793366 532765593 114574186 51544604 621326220 904894624 646691479 242298141 570367657 337843142 414026794 443452762 681212850 959096148 421667561 549955636 935796469 717004809 670465024 293103096 227081111 737705811 231187936 936380085 54657727 602105243 75129736 529073115 895032381 7128431 289857818 577088802 369544777 425662493 486105614 293728664 545888438 718732844 686745815 565069327 462943790 126174829 411412322 653235421 418155729 572740454 819179992 186895838 955439311 225629822 105317728 216563251 940800838 867696663 325635057 942810590 457986992 781340432 193870129 663116580 796109199 471454583 714963509 739521613 834786455 440882879 371390045 682786068 666608815 977750344 773681516 368343438 52551806 688916232 889930812 462044644 419135326 996993421 21281742 491317509 774208667 989359899 971194551 656338519 858952321 430391690 53336029 897147195 262905452 190997795 147120709 650761029 310481394 352728773 217756190 921799016 320623533 281424512 301586302 760796372 723376332 197702378 733669377 216206479 153417406 188701815 557181921 697267957 291708497 930693043 554664927 32348778 612031863 304624902 652643043 368298880 594844999 574170861 326482809 28827949 935777356 630999050 627770190 796013211 192915153 491046324 997894216 78897576 953921561 853871325 25633485 35838800 936077893 84064973 138603921 39294392 538920687 982243697 475032928 325741715 671981222 268075895 295975393 251782112 829830099 320463789 923810029 840337704 138033822 932405297 79856425 705791817 739034514 804032663 792455450 599362268 306668901 778138056 843636405 143958172 806585308 236122286 449631463 321318581 485923925 680756085 882551004 61267428 809907517 933757408 506180700 398696028 508382302 827393286 126782275 610705142 731687639 522715167 867417711 431898645 421930914 124423323 886267385 288676200 70552746 71074216 670853373 623606090 110607876 833360907 275468853 159375389 309964967 127643142 118498597 18406774 448429435 827890003 315094327 57061883 935410191 686142525 233998174 761870111 9038049 958086688 102859680 487316802 584573046 799880423 617626930 442177054 829341589 283141835 771184316 241171881 970008801 439015272 42067683 30807107 684010026 833755058 122047497 636275473 620223802 458640487 270864310 282184608 861187917 13759012 588380981 269197705 305493714 484411298 673097331 140082062 856210202 118391005 257895261 807253856 514310958 999023390 969154155 552114369 265299317 571440313 731288250 805559118 584206479 461224612 19991507 207437737 561391078 391286444 787096308 437893449 698307930 968497417 927244405 825471551 113855988 460391492 31967131 819139139 401423881 294291233 763205546 319784545 69606852 960400812 149115323 685491944 276869412 349061326 494001885 230166415 573612211 758910490 654229437 141709227 301278455 49365831 826706716 760926664 229124617 915140828 152025165 406528804 328273803 675081061 75112928 135603482 430664615 385063383 86236011 228636614 425114379 912590257 8826070 32793630 700336015 992747802 335648132 985350169 263288659 717423757 805416919 583895270 583547929 58318529 17028908 462397635 793838200 203906923 323715098 402161398 116704779 684417043 60730805 749344652 218502646 137216765 588150495 157480902 776656746 945560049 925011229 9411272 877541375 135498236 457049560 705529604 503868099 349618694 506014590 479741543 870150892 521007535 988811748 595452115 212711683 672743317 962052090 468922068 874729110 326273570 353061844 349770512 65151546 566778274 528876869 750684726 602245316 565393592 500676220 584722355 961610639 883183668 131523949 648429265 525176944 307480849 347623138 513839165 79771312 816037090 249948107 998876103 886422496 263310853 936134317 947996510 246837488 369821177 639018351 454476898 247860959 550830804 685007826 489877049 119872628 861100707 287356048 762227140 791401481 810387933 554788902 407862046 642192426 708047069 172452440 268015756 289115258 384295241 588842837 193866960 423240499 35347495 973557212 837528798 27440065 691256172 644380354 473298249 698268159 920837834 91644429 523533683 678812281 971615469 388212150 5436056 243392255 274749899 401316257 967545124 801381632 70929708 310889599 996577159 119675523 476474342 490448346 269823989 928850672 289628350 560647615 275302251 219524217 500366973 798772120 836914891 805321726 808578046 820215418 826050270 410660708 772608151 316032104 775203334 441668565 622394394 935975648 449951527 842887177 106991618 109046179 738885002 755493328 239162066 202793756 508486426 999666941 833102384 246914971 723621319 206209733 940424227 436937049 341974344 113297683 231481099 274507222 813210831 419442093 342130635 957972238 364617983 52036444 304529708 953488181 228574095 963414396 786590913 293871423 122842553 146165753 693252733 262899428 187846061 252799350 108185216 389390154 135819136 830836340 520075371 210300104 979747286 400463795 511862850 641374838 797042430 658739383 96864373 792091741 393407169 236032941 751005399 346134834 73142488 744179873 868967336 156455389 877510526 781001616 143614340 513125375 396672303 705459801 262056698 624052390 212371243 405975420 770701112 318614207 564412359 306751144 683722630 493290060 254674997 9938410 23504373 875646712 696260394 249426073 412987076 547619758 512316363 815828841 667859928 811927157 525215126 690530159 853907119 715067928 172964524 38685388 344048093 639717768 182164351 399965235 190808729 658281689 27516137 80196993 742065716 793085691 177648285 314373690 417574610 301757285 373735233 426010803 294555870 545547020 495893122 693516269 148122101 608101092 148458149 357389965 275240761 958593101 673195613 267287090 492107192 294661832 740965779 703724659 225627449 325907308 233801616 597841872 169729185 439356343 586769621 401651641 540797041 1013123 953261439 549080936 721346648 703978421 426828576 202092270 702464957 541053485 895431299 36046977 871828496 234626631 46071355 605245220 300106898 180305280 131864204 502610933 736557892 803660343 787704652 513846982 890013732 39502644 624314510 91638856 590017314 604717215 505926221 198981479 202150453 624323810 758356676 508193180 830657679 639469835 889003804 606340105 860333387 542316044 486976879 128225569 954113283 314505119 921474491 987069311 70808419 717766450 586741718 985294218 508732251 325848172 496086716 402205549 274589571 438106909 495993852 498480046 849544169 815179292 589651247 882329265 126269631 558483027 204754044 148567568 213306394 754744448 322876792 94099358 946674385 452301419 488468449 734055155 133091189 868927176 747304567 214354325 106042563 729727671 300155646 698365997 926908579 662376325 40741465 23028655 642346062 13742246 844414633 295247491 768930529 51417891 427785148 440443665 21943674 530050189 857112655 471993115 181710972 322005990 239578715 779152950 296832572 107096423 802123032 36858125 902473643 695051280 15263975 527391372 106092495 279772891 947027179 81688611 78085692 856194486 26535334 709107002 180497387 636105068 274785550 566038325 502454109 539618507 314445919 847484474 717937849 564183299 762597298 585415415 316732622 715111474 229378822 709198030 548445751 965864645 824609584 168099462 127528778 880841179 902272035 866393774 488655167 575085942 426418808 929004655 736814193 807742566 334847099 128509550 980944425 684280104 939601750 844046837 748463685 892624418 405378300 924192163 12230528 538817854 184843037 617043601 719991459 597424324 868045278 617986679 297097352 778248523 638319459 741295338 616589889 987845372 480674946 953993148 261006053 588815798 527627200 244211031 235505557 938894417 335999796 241374972 945907888 155074881 679914872 778088625 703576242 287114903 582648998 592871496 911866798 174596920 923444262 809066542 254976535 592371642 519848329 373893154 75239161 383159331 802109061 565072342 102195480 980552229 42816173 216812621 443631485 618326253 601228958 189974596 689116268 644278625 607962204 623193025 701132713 986420747 49430517 799966490 588549895 841641045 436632926 535611658 936706458 447897333 956642981 262102074 133033990 303684548 995892086 724278747 843652498 307979662 855799299 961027802 840494834 722989529 182581654 790986616 579684725 846965047 346926424 255785740 838350819 647399102 907459370 782378509 315539682 456792151 218384561 318468794 181562760 273909626 341437485 881480117 555404885 963132269 95206545 776932693 726701427 489979424 441049427 462088609 795452240 908533317 424937902 555670094 307064907 443376336 702947481 511608655 548089325 209777727 950220557 69610252 534661110 489984750 529081691 240981268 707485150 846865812 181720978 292515565 8371548 715815255 535042496 57282024 499658046 253784198 637500134 250091328 745971 5675676 443725934 422926834 918550805 348167928 279014626 738813038 393756481 596192385 864601910 542590016 639009907 587583397 703180647 646495523 880311065 602789219 800380569 268017864 15302699 934646964 893721343 57296831 290128890 935893198 424679188 848669612 599969818 231098358 211351404 999218680 744204626 356952615 575150322 721487227 35471148 682881941 992872882 54258553 781649454 612850510 970679724 626905544 394954011 936199760 130793400 793403658 299492924 231428470 228135903 903926979 426496218 607192684 778693147 455661630 753856433 566164738 804535009 21288461 387652651 216995473 345398781 423140475 206259097 365860858 695063565 402338600 975012793 854575536 42462583 56197357 963608625 9210282 558419668 105718612 857895806 388031246 638862127 264471254 955111930 453840527 274380549 956380746 142940796 715358494 520952079 688094334 596183735 487979939 659109542 622847892 431266079 892376597 800967602 371158287 734197552 535855163 193347032 183476346 209924054 504072337 377825671 306015655 128532306 332675321 967406500 582750760 710732680 748112404 143080341 892521626 68251529 258897535 402584863 135841076 518211146 810421364 82558545 133981511 377457735 616035154 715466391 183728327 427667152 688682693 78333482 403598912 740998714 950017081 640843118 739465689 463948918 351129529 896396825 634771634 2739996 435795056 546330210 951790039 34506377 343330403 531029329 222495585 26063348 589888895 902038337 539921580 267955662 45950671 715416031 666040255 419655595 257072760 30151145 706144737 301229099 758376724 993888517 771644285 609707664 283527268 72402474 4569849 834017424 278040943 621299968 15680986 120093187 869563004 839270861 147513264 14070352 269261518 425051451 250556440 59941986 859785328 67167026 109063355 253578223 316730148 103067130 168745623 29276280 696813275 435431706 334448404 775486625 962558590 343213652 978190626 531427615 273302404 672222284 33714963 96848523 912442237 335290259 891638916 57270514 445243673 502995648 615067831 221194238 134981921 759599954 757479422 446695255 613054242 934077254 604864312 725070335 276441187 45488240 563107125 972186796 308371191 789907940 792442843 329447435 397140445 736022364 551418941 841189568 841600031 99488560 982233185 476023139 523495614 953974848 782107379 27922572 646230663 565933443 594803293 998730612 413535652 55831764 702656280 74713674 3175299 843558649 556768222 770548011 898217295 362180204 241783302 272572130 482658362 524224216 212317179 789460224 780435395 31878632 107160013 910939691 954286741 764762070 998044379 859651964 166924377 910841038 997830167 650701889 192171048 100513021 916324481 985585117 807332668 666890119 437171173 880077363 722963767 573119841 527454394 863450001 519340508 98533191 775281874 249602639 186488418 906377678 763198908 323490934 358949328 42453370 204785147 594713523 296199034 604045555 54320706 736648550 369044202 481564247 773722119 405764474 390062582 889612661 890653962 317339961 672032131 392177242 346738122 966684057 923759343 557035758 337405784 480252606 976916176 212717798 827728174 324262169 407371276 205064377 416505235 458349774 300217273 380160731 258634469 964486183 160806165 117630181 730041511 327059304 964966418 449441976 147692873 809871974 447285435 43250349 361178494 232561200 939815533 149489946 585055587 750954756 132904041 271036825 110967973 300327665 936904290 651758056 83381303 709930905 491763864 244736181 637736439 469532374 362081601 300875273 215922123 60792320 161059080 721745721 833682424 918158391 592892442 720079157 718506379 931135756 403262677 215461852 512017572 798456454 838337851 567780437 154168263 650112875 985774010 906067993 386673678 801357391 142022450 67564787 695680431 291907388 814132945 206147664 540701900 137641200 310968206 625725903 482794320 308430549 321284242 821660040 374249887 251655356 796159813 691465182 133349662 222478049 654730633 433859725 699367892 180682116 617111679 604830333 479988280 433454254 109468627 530539805 956434786 12237841 552419037 688093500 792897813 102787517 75944051 433979344 301272446 437356799 409953288 843213872 345518652 626979618 737617511 663229138 577130691 654610328 535889246 716942396 448740478 333038806 794084230 506404359 257802795 306318049 188115465 722449390 201232491 111171709 862057068 961299264 105131495 999044301 126736968 142764591 270678157 391496291 926845669 672566599 724390259 217093129 633595532 891497871 228538107 307943789 274288713 210699877 467900478 16337078 808321221 319265018 815010944 846536697 684726637 697665952 813912330 490440367 173670435 182697384 660223460 593203157 71346489 661032060 377486184 682676692 587254546 359431632 106363470 669642674 677732886 17114146 311512944 537923658 368685833 486841686 964298133 514520878 163750837 496234199 55064308 239906899 815188363 619929073 821740420 464384848 527285002 142678096 251007764 826855588 6696455 593675271 266184427 406569967 893175982 528898617 859396154 755518055 439249877 9873894 804023521 277661336 845254005 366402843 75905034 778861051 768041078 860087686 117385788 399291701 963109941 535006196 373469905 817376576 364412314 490813266 711841400 732691021 839419576 792738871 852368084 108373726 678297508 666318563 537578289 328639476 858792575 142734034 642808811 384047113 626514488 946453555 370393737 249775420 151900062 880733399 998938298 338579563 633703367 147795675 921987970 81754614 574905011 669613372 623602367 821547609 929347975 863688423 639673010 327214501 140484239 962679254 185733574 674871107 589345602 735882062 49130948 251779202 939797967 972919337 795491018 843925288 455526375 661330836 234096419 145245340 796390257 665263833 379686403 395007680 345945462 984555581 800751685 592201180 573919349 461365328 111291397 204812234 72189365 865923838 850059794 239454058 274044127 220258892 253007519 719072654 94061865 992386377 44286517 424074513 406934003 953618900 82235396 183101340 593924196 337600840 255172011 353234212 782862054 106648053 996438869 323178607 288231861 782934337 720241603 22718871 380933202 194692418 285075140 122294845 148192586 691781616 742561681 782430375 148684286 582564181 459877162 53944530 364760677 516439438 197421989 216551212 83502137 869855394 297026815 707593967 325208850 235409202 998841178 334065913 410940632 252899886 300501044 112954887 764952440 974131553 433362748 140337863 450238371 615637756 333107168 719230568 899702880 353740406 788879483 736449936 264457029 399098906 656160799 863579330 958431286 887628031 792218043 389535880 434609218 597119234 766228915 586465148 639410642 921023269 922582988 33599615 200706157 103513405 997154415 582775751 898689593 305383811 654654579 451616403 423289882 23740367 254186238 664394007 539196281 270651912 613082604 397348263 978370349 661359102 404460179 945761511 707706897 974858867 860058949 716196455 816688991 739585548 18205673 880825384 976662360 935323520 647553480 703443595 628017130 782664725 651106017 173898773 287922943 740518076 100541113 620482927 857131678 377994550 382988657 733805467 107013640 638799625 496282021 377763080 508741555 928251234 905771000 850788875 363060305 412743463 541000577 836861722 461323725 904785944 688252330 836216250 870093787 796104016 790110152 965203892 303359471 573165409 983289542 191970355 161792874 210689695 890903826 2071367 725664196 46518608 8716935 374204897 597069277 936942587 54376235 374728261 53798834 611577106 991730476 568529294 971249104 903556348 78557990 673214253 880919617 18571592 542683789 531321553 115201004 211780091 527014203 881756873 325337073 956077792 570315313 63088070 998004590 980221792 169158888 529371861 731596037 767865509 565360053 540247141 169521655 97704752 389224065 144852972 56762834 147438597 630011669 115247859 795981423 24299932 50409174 367698783 790822661 34015189 239480403 613420457 523304399 126653251 250412397 210954976 51319109 739656662 755271406 143986102 85769758 885944561 753983974 741551277 947271191 601351302 59099611 22460489 808160825 460231137 403280563 461794068 875582350 554287466 589527072 246205228 230687319 327502031 552017127 817592286 488253717 783204295 961653181 351319590 630629354 379531195 245400778 989461825 184294664 553688357 72388520 385844544 343415895 102198358 537403096 823541041 429641200 288454604 171373639 173864996 673951828 877048979 668638535 582788241 156668093 568472891 254533861 773929992 457484894 705598793 968374608 343435216 551462911 440302336 742795306 935900013 584726627 789339273 45740259 704033374 524856907 273671554 708884105 878961641 142156866 386163791 865418390 929011719 386557540 482389538 508085233 826739034 205348163 242009218 260064548 144880765 40824984 278146195 514238501 789372575 676045322 689205945 171961687 617144223 316087170 460757712 603126187 534021530 918099230 610009539 636061035 704972857 750217299 637646165 412252931 170522382 231037602 984004810 162874794 924323735 9374338 514326541 906698310 61689627 409262673 624190281 903990722 324563845 409408271 677239955 706000707 85746388 91600158 281984567 291170859 403136120 891945012 599628136 801076294 62997014 756623397 522840993 110965853 827091362 897169797 642958051 577568204 266286430 847302287 736254742 749452324 886121128 939885122 773756030 45821604 341727203 707438201 113567985 722471092 573027207 278854423 65505196 384929378 384529588 456842437 753351220 372634725 935789563 31132404 951375975 158652207 463950242 93775552 108188465 257604493 139414954 387017781 410306098 56708478 757314426 835752434 659026183 149171952 962255231 970248464 440504102 512552004 788027015 642178335 582107796 781061208 303535894 477272081 182952117 773830152 536014772 905615262 359425892 462209022 812536772 691939596 531692831 222961342 125387032 610956618 565260274 995423665 547712508 423823810 867083671 703334194 78026749 878431492 798466041 335325288 589236981 562515958 314703430 165264266 350375486 770964304 417516225 671051544 704929877 351346174 38766588 48569659 308371706 15356531 138999181 584288920 16241652 469338660 755351441 416733423 276964260 475414926 495865866 338714672 507716269 947235579 112735909 402776680 428203225 665929621 884597694 237705219 384830112 978539325 860165996 807607896 637239932 109416182 982299862 354547866 604070866 384160216 993449257 683646177 50970400 712490338 653652607 713653204 481376632 602548242 990406168 475371025 913692702 346884979 538516444 14867244 895430416 316970881 668147056 201872859 429736287 33385591 641343206 664736036 897959704 641522437 155911320 504145746 330143832 538181276 401038710 926855713 389999484 159172685 529445202 876599870 205340428 42117275 238049956 719791283 791487690 535606546 848257401 441636618 952051538 340978842 255542918 490307897 774736041 486654227 940377431 270688784 57864571 828294884 182385087 501321752 970681424 709280587 855222415 724243649 539124504 862257050 170904825 111764315 627376483 941471024 345723296 70131546 135279835 247139194 86372122 958055302 338633322 337528209 786984199 51865559 236304133 368789144 872556699 203198052 657062579 451309404 860814462 460992864 33313133 8209842 407878205 35417704 708395488 185686766 622268562 430086581 700191813 589710570 643943128 462721811 153650421 394029577 38100960 544534685 234310766 86441267 393926471 582511536 985139553 946477046 401652664 291507035 190042146 836334674 977372033 212391796 24192731 121254753 711763833 11244872 899612868 746281446 167295396 743167107 133960573 595629213 835500478 118539937 205239352 552568928 192802638 671621749 334803731 55733980 652502032 173876609 126274530 542456693 921989036 75548960 361035909 5913507 559324656 636036879 550265691 734744881 486661834 952181387 529395595 794432851 413193247 851152890 633841264 637903743 736478439 36063747 461721229 624662770 192983251 702497213 462772597 822068341 109005930 820293837 454937686 429711564 433384597 289282417 571232269 862526995 411650745 298249142 388552985 787713942 213512798 534645749 500264966 431391822 612810991 894885700 885827183 759288133 339066626 472076023 233880847 741937721 64670831 406779215 610673980 365867643 250379965 551332464 127104863 932490324 854040122 498287699 389724890 743804972 288608385 587530367 639878778 147880694 626602821 465394089 62924710 425784666 470405793 364457235 770449801 989338245 663019535 346811508 595934896 653967691 115036073 877217554 640261479 943140863 316397646 540742976 480817586 169678916 870292092 570324486 839454428 903923912 592738744 338713537 800881598 830006348 129746851 674871022 163852547 616846575 938301524 926351911 875505955 416485211 966751051 202706266 39390189 953179044 535037019 949521933 916355657 114898964 632837385 243031284 612259977 324705475 387571565 611754042 604648268 329422248 202630363 31170822 466397482 226250169 655024423 196504480 884406333 437269918 5446173 318661716 892229743 995954037 61607572 954685934 184434391 388483245 647971538 383531286 465182460 982503263 387663494 402921362 134015307 14582854 682788923 976215132 344437853 708136511 102729903 712161834 695497566 350775029 113891269 178755304 848504460 456117032 688138208 594285368 49992155 946867072 848892200 366294492 368374705 386797284 783358287 312891606 488063931 753634054 664293807 419331970 362470163 148066292 515647161 896279585 656140566 785901841 279923445 659501916 68753531 2681696 830670636 416871068 806675863 319988495 508760857 165047790 320996817 561236828 28359660 349503397 220043784 724329862 838386447 188684607 791074433 423063341 663969409 503880666 396513781 407686105 539999638 332669857 135117206 233090676 267196882 29476039 311177838 977065171 725801496 659559120 595254756 102936975 365412338 579530728 134466952 889058684 550662152 179707620 242351722 96302120 40105401 57855811 952001 89585362 240799245 686434358 302497546 362600716 560277410 780865085 322621750 894570744 118673851 886774306 688398757 983803714 689084093 798984875 585450696 932418527 927529303 859454911 305477436 41915034 970353286 11195053 385362776 276348205 155137029 257224640 723648034 146903963 200716589 463638764 631142784 839606766 939653533 908537030 977211645 189230344 216927979 239673458 249635251 700846420 801239584 236529321 78110848 408484692 957660442 684908082 303720308 213385618 854395895 381890332 132917255 496581272 218831216 503217189 433874681 217050962 285892394 671686291 555467359 500565006 362309770 691285015 269799500 646128058 113613340 426734844 744735613 563247653 262573663 985140968 878399746 359975455 714105376 786546759 872137998 36895430 877203016 753885964 412428226 758281281 754107809 148131666 313773983 639515765 254977691 741154999 538806316 503989213 316060458 722539625 548455885 181807905 447197481 460561880 900633932 922859881 548349573 447457587 783085137 99645675 205803318 113736532 289101573 449645912 879212260 474617524 746344547 802091940 127019744 190458520 154113009 548721035 469621796 937073322 311249311 247617724 369229843 169733289 353148253 745087607 38236575 22787176 288858382 75140132 681589173 111557597 889475080 894134858 418512603 940330423 877805126 104097576 295013223 469815446 16468071 543635986 594253387 784467547 693766242 171926301 108183127 668633197 24640576 304583627 505541120 240050174 468349828 759870591 106720633 486929284 891061416 50635435 707412493 925556418 306574429 281075024 604904762 109705959 825731149 55793298 497007212 475223974 520194510 54490504 10711546 974086239 609169569 501351915 732949596 388444678 723933002 498004799 848883580 801753109 543460879 460857940 318130598 252790680 371241075 981190773 742920729 134678666 338550815 884375414 634805017 44896042 102839790 259059850 874361101 859261510 482143541 623169386 400083672 35697371 252227174 7721797 678114772 271417652 930426465 81637036 203123064 258836568 85812153 626384149 215758322 936013217 35131513 698181198 615568545 416087965 592205812 623124170 763484357 573070282 574766385 708471827 292378188 611903541 784519366 324576934 951154267 213674931 266018404 210685821 564518075 277712753 633446757 610757568 844433476 312298161 409353159 992039064 213662849 540056503 761125812 313919526 262241129 218393304 738524712 40930543 539646386 256289338 19132022 289736432 650994839 458932330 306457150 590191775 681902266 680465236 618464277 486611623 170206126 41850493 89029695 628118820 761795515 414570230 612949370 587523065 821780744 72612146 611365607 941614472 127661307 332375167 297960617 167227844 924636571 970373673 291525884 944686742 139333640 119291466 327063847 871701438 843353990 755186073 162266044 388246499 118787733 233984170 167079530 421903302 800784464 525255883 563054438 953326423 710511557 397055722 354013340 713249265 120703624 734255237 325560492 309659183 493694468 416278137 437694661 931274245 517274672 236946128 411254187 390819487 23103268 853034646 491967556 222556282 376843005 56729850 548925831 632265083 250427873 169512314 354616469 353679127 315460611 180008684 224241705 688753805 331274579 375156097 469963000 357442200 56003039 540508610 49437450 344858027 237718590 772879348 365625057 790462572 564662847 624546848 547070635 123817610 324311178 323317976 748240336 143055437 562681691 537599226 678289774 596723743 529648848 260997721 666045489 622939221 231667826 182202669 363873427 193364488 864275674 344432263 420003566 952525085 281235463 755565343 228660380 859977411 126499474 499199999 963212046 135986248 159329840 18778682 501739337 440081631 471703966 460527861 144706373 193662397 474140437 249299916 177011981 586372901 727628782 517291686 966389340 755443876 159701915 243925164 346124192 805494098 416910623 182913272 382328976 798786410 108616674 35692916 844181564 670277541 653992220 569270502 264046475 904549376 770451748 214975512 217626058 706087733 119478824 587430615 229492902 711647609 799353709 656928688 263180930 790214520 184015154 743564533 488771738 366766568 315060303 986738875 488788661 471593348 799271289 982076321 611971776 935934661 615158701 892930786 894984653 602181466 632670205 527666448 437294629 102647807 581083044 423678279 338843395 919410396 715384922 936179895 154684337 656298727 653685621 821075641 407476084 178493922 143630238 765043025 482506710 209878433 804020664 220955162 12388960 482938397 222268464 800128934 628450263 773184181 808789694 362615555 396262694 707699057 615577684 118545764 41835075 248165482 975512915 385847689 647439095 999673250 780345183 954541362 384423060 278210875 529238342 130453759 153343307 71083783 436565387 421200680 145736795 255224217 582279435 863377240 904454365 480872357 30192676 267398146 601781665 938432524 367142129 171419486 39351952 908678332 866324533 997726243 738721252 607779507 35879011 466977613 981062565 504649799 838625390 969550937 745594400 638231262 269589578 601081320 626684690 482875945 616860807 981054818 136613213 47683127 507508509 707369714 275249304 569471150 677171662 882110164 701409199 758111594 795876923 12970111 136275389 430558052 832641625 744621989 522981078 231960356 148354964 31716616 613314261 599925620 993262061 841624012 914355218 491887103 256094221 206072451 742731255 578125369 214437154 993683548 618719266 15227674 217189026 703466214 240277279 153890967 623593169 532438461 786236520 922053265 980230034 258232173 35464307 712335918 231002059 454805145 303519731 318882741 992714425 650828910 785585203 318396102 537342627 450562869 977109460 622286795 835203564 8557761 87968468 677269512 322234110 544615286 401477136 526189335 759699211 788247864 831643224 948943871 531343218 348480030 440800232 122120733 934868298 998503004 789893268 854279637 223045456 77783435 252623608 528231242 885057304 138869558 498703792 183338921 808197415 408577391 542396046 993606402 291732253 413552554 834479893 551848237 811356838 801800423 381365963 93473827 473713002 354292093 883894421 811416341 574021007 993213129 953161063 608155850 845587700 115892462 744074446 454287805 198152928 403991131 941860323 916787201 458628697 976629704 925508203 939357260 146018827 884575156 343111437 582287400 937698129 394059656 885949795 431902541 612752152 135002339 65823707 338176718 218700412 298473518 881554711 274790533 790346118 201355768 108880452 974012220 602968953 694463553 463897378 421882755 814096955 139878548 314808526 835989819 316276626 939970205 434861507 230184714 752238678 306762619 652267954 916193597 680461781 167727846 794129024 223757178 516615178 71075943 368232990 689532342 306170539 181695276 542425611 453037650 967919551 766047349 905149212 918420418 21082977 367384724 507031446 697662417 643892501 696801569 469117797 153928358 702456597 128444473 591473562 706277338 191328449 208440651 57511563 500113873 18869851 145471607 989946950 921958275 171815759 327542352 730742371 545155441 802469261 965989925 126878839 820119558 323019863 612777096 936140595 506011828 663951451 405829785 786971866 270609689 921628378 494786156 748802524 826549770 917008541 71697347 720055228 337029685 338458719 626454506 573818611 867813510 192218345 747484614 557121428 624666049 5002620 777453104 154133904 744521381 49012164 731604727 62378703 37986311 782742776 578837496 241003238 909347629 681729868 938100301 39048930 797725193 599365332 235005671 587437208 846164102 5776605 602775008 650029903 514843137 206356999 24219550 721335499 78970533 526127936 658224198 288057774 707327182 536022028 258905597 517019974 779278031 480046639 301845358 150287941 755314755 539935762 543337681 795100092 140914637 618187297 610697557 327458164 735739949 875831951 671551984 986212451 900624816 8070969 749367314 831686002 970750139 15253851 574372960 644052176 948164767 616741771 890475142 930901058 670708437 300179460 863629285 589471996 521729451 889525976 462853961 293094156 567986906 331629644 697158880 696706205 17553951 564572316 86143191 556673663 412219834 692272644 566201746 543147525 931874051 151299797 963726062 755661539 906796239 28468178 646670889 72568877 377212550 118727084 238775504 530306218 842070235 97708667 41398197 650419453 221763795 752385293 431081238 595440970 956673889 93058697 21998566 120874349 7432548 334989405 591408721 196922601 209560136 802678814 875248654 616800377 589088137 294872100 730070491 724318071 39417489 837699137 60211064 727702128 470825005 948575092 849159122 177331636 988529790 416088113 108489706 189096393 506775044 486474757 54894685 404179635 519079962 963446783 856293747 678012533 980709716 121263562 413067148 718929772 990494458 279418404 585371541 31255190 319395923 458208553 140601048 764562129 827109751 495693971 626405764 827739302 200985597 108272065 121660143 868074427 687848471 730382014 530511449 996411679 593230009 91296022 680673170 219366875 148760090 518228416 108148585 745715525 565303296 703550105 965082443 848547343 386455975 851038122 724547651 844402039 227918531 885477612 14346145 311770734 2351906 234600977 27447363 401701748 404101279 62692020 70873674 441616874 526959882 422403910 560141410 567197134 685388067 941034313 609721589 321807451 914844611 67713360 949535623 87174546 411159742 690844674 238681922 700398551 552966113 877127458 401710345 174519292 929099089 840607257 103359473 422228603 816086292 899963177 239654255 783070061 556642755 402161664 841224543 628606309 706784011 374498090 201268526 501891540 12968594 38091995 856194844 832776085 681570057 779519745 22996481 943627393 901173802 979992414 568166386 898796129 213950603 322611054 385400836 105539118 310461653 413708034 275764133 711878715 273636459 825367090 2526102 308113697 704146588 442495361 989505330 709229506 552615142 608141203 793053918 441799254 225060243 954241717 157850688 261787378 922426473 137878976 195136550 316240540 363220921 841923851 373747158 124463828 565436131 329580092 311912737 868772960 711492736 770130903 696635148 873692832 988792006 50202611 230244259 976788704 632873032 773431075 723645556 891690859 799739577 385955775 617243500 566552580 503678990 319085280 988582610 370800501 18645810 50225649 699333426 91082140 872110128 729956899 775131581 258163952 567148159 128588123 534287677 551585095 892265807 508122914 123219159 806389930 576421636 640222577 293771704 111804287 802297752 573163490 838851535 723483852 432462316 571779028 859066886 391997106 594998606 123651189 900501944 788109968 107795745 45597443 192785981 145047539 988433763 707920795 240581730 604072004 171257249 998490308 768651748 162177958 38345665 823819005 336536141 567316113 486518436 559056233 548537721 888778489 668669627 505184123 284464094 509865376 865587167 780282980 843363362 473246116 359876362 165647799 257159329 343288152 324188971 67112154 563203293 273350187 810023438 870913915 985079245 772856034 520673073 126253627 971343477 198571507 606076565 193635334 80636199 662563450 907169399 992782223 633107472 671346062 989472367 437602971 907552278 681347655 42458048 602075553 153028556 252291581 959216134 873739330 543829096 237750771 201385137 159545472 408468099 416174864 76610560 973966855 867811202 1423668 549652844 502441409 168289523 103096600 108235515 341278135 651066857 663889879 964288063 760280358 184533742 785914275 391162552 767347787 881075574 84182006 416909061 793573101 428720312 830188076 181502342 403598614 499171221 647691610 662681800 854768049 993300978 235997774 572063754 929494482 583124228 36355342 357422046 483042060 740871575 288163073 777790058 50319885 990597793 825264292 390569955 306635903 446207056 790934664 161499261 693626789 15894556 759024711 814678387 922084586 453240132 499951429 568979024 95015610 796596698 852297732 169158972 208957533 255432460 488135427 393570465 705380976 8573885 26093661 325324686 958209815 757807130 410919644 381100133 856620663 176525753 24384131 140289872 994571214 468485582 424451898 600983573 640285557 446417518 471438464 802315371 830571207 231650505 763317981 477164199 132386213 148654504 43710605 816579130 435091549 2491850 67885676 131707630 854589363 265894535 127897243 998775604 831232728 866386664 509301014 591686239 394158435 683705441 269294938 45804318 309970677 430839215 503883405 450691040 732430045 561727243 692446886 800327682 12153631 377807753 564061917 692779316 406462924 318601954 492132143 859741044 415305782 867176470 321026253 66402092 489790785 484465171 27134686 841609191 307151016 516731544 917441807 870030518 137328315 533979240 303920858 542393407 836450873 559490577 14332708 994255293 659991866 246577561 3187308 768358987 865962532 411394240 562835106 827177618 555089069 754386884 82686864 74965428 809236790 318991206 58252772 911223559 916650799 694481822 47570299 753020955 719063476 983153599 353437661 393102678 389341783 505932026 609255818 846348514 698341753 819605254 126414577 795064492 645274748 568657522 469493303 946988556 351566807 873053572 527369702 460176709 884922292 252277916 477209877 989618577 593003090 890952638 827827945 361706178 164163654 528011629 578466399 619556286 645767526 455427374 389519265 834048636 574533351 845971080 89427030 409368395 136009723 992475314 652680941 849669761 101903056 609989865 971679421 964670560 711614186 352129425 982072558 376745316 131973816 594123158 471493152 491021045 633927497 744162413 815416233 725725052 301239617 263805087 330244877 749109155 349219904 673922739 370640061 592358605 798991968 958363528 44854564 560143364 268523167 243955397 500557980 924658057 759023644 956660003 735366857 178451080 193012457 400242253 512284437 324574023 406346886 299059996 918646737 306100076 915840598 411603349 46574493 251499676 70151437 848697901 556166855 655296957 180135252 626130086 957174697 382907359 503198437 317982992 910378386 993893921 45648624 834528937 80087823 738811152 385462622 506742967 128822437 666263859 408186150 697521208 263121235 786744967 15205197 35358367 301631620 336094394 772934412 759285069 280699698 163662176 720251023 771834991 635699997 755844627 564585328 45700877 785038261 781260169 739077520 903092617 212582235 837023722 724883575 67114050 252236936 362030034 894202486 919579837 329414258 706588102 572090742 53239886 809018156 772003104 755493995 877958321 698511274 429474629 992840326 738737749 283144613 688283173 917230685 201332184 287407340 963769667 452512089 992000824 366044333 523611893 149701943 828968792 581269462 384157275 726722431 565732469 990256386 347763509 75901522 199651033 927573173 631396430 38647721 652203306 907126532 136172932 732192982 834223205 403269913 121686270 954001072 221972321 452280618 119222738 942639863 507666652 977655021 444918940 750175979 581782345 22167873 316226733 495171089 952283018 259490871 253314705 310131487 583178174 476587082 273774148 111730373 136904450 848541545 964851980 202995583 579375806 441586199 417189483 244245832 962765648 122292488 591462092 57805603 219473926 293855119 520019062 197602942 173069053 868255063 539214979 271410001 68246088 303414502 615034955 457588885 729743546 761763763 423252139 717828586 491001283 854533708 577315685 129610808 493535771 470864639 451840671 420344585 307161163 747115904 865569637 513813368 282620440 697062923 397953399 50706617 718193527 442380529 965307513 743503106 601432842 758132896 387302130 822017713 367614800 838989249 67755347 445970651 934474123 877845382 71010877 206904795 779407257 220103060 635596126 921581081 386401433 194689231 162344073 451226026 583528609 225401398 684186639 786173482 749389452 387299475 172791816 187129183 392475938 964390615 300405016 846796219 21323247 492317051 110855421 285605431 141742708 643860894 102476134 198903740 917708960 929247859 719614280 240644911 852273113 144672187 385626411 293885054 402717312 288500368 696748782 417014495 826396206 596498485 577421986 513284535 508964896 958310869 403729228 946433793 912383476 116913983 297673560 705375097 252347141 218274124 129235413 434300707 118808696 58982086 80395991 216375721 146560020 852681582 478291890 961854152 813891766 706803684 960670155 91065321 64889455 977559951 882378585 321533733 219144267 25295699 715575694 550052816 677516993 936567227 625504381 17385645 713876069 329322050 793749507 770286356 977395722 657866708 687328058 379698700 198070019 982724838 646524578 828261567 688549839 979914844 157650595 975852733 179563948 143679422 633632286 876013108 702230036 981391102 564109635 2477765 851617748 956946507 18450612 869320269 631210899 529768103 795406165 581454946 102169759 168298212 934624757 676959433 922328973 727808359 95237281 485708846 641244735 911155730 682390695 461651615 238811624 904021452 318549555 735323392 498706673 46098557 392777129 593363725 66017567 167320149 748528372 777002935 469352735 196900091 528369824 234511478 500477169 856806937 302850522 886684024 660498688 161130364 150739929 539104912 943726300 152447686 311917373 544437577 487209618 860581604 879890915 298542273 163740520 487685069 969130332 775593177 954166155 654046714 514367494 340960763 284807956 279726380 372243666 538148111 168788065 484110321 299146740 676993735 124443590 57647332 493551935 994876655 444825466 466998877 737227699 869861405 506630481 85418731 826748054 691901255 933856154 248337835 832177441 56352881 855713341 203865887 49043796 326513048 138229856 370915977 645627415 149969591 350494277 412382075 283947627 802035786 399283602 136879600 404133256 963975995 106910357 490658167 432365994 740509622 605388470 356276992 846619795 382685226 615932245 907817696 525619709 103512645 824173456 100381797 880545678 845296875 274211858 192306147 790147848 93203627 571548324 445325719 887864150 225190366 396734182 903125655 494931681 639495477 773172668 989964086 75834672 520198787 550484064 720929342 363060589 784660328 818265904 322755607 510475783 893670824 934767592 955775468 140738149 419023904 165141846 456502482 626980531 936014024 851820727 488179388 735610204 480875178 470852677 435401029 936142792 553533057 327894479 784986277 286558216 863328502 966171596 422316437 757085804 705099471 167169906 610108534 479562320 273142432 753147351 359266894 513689196 100933680 251806761 775261299 345445610 536942707 106748238 280509558 550689160 108528197 605012048 959367061 525260973 436680737 516271409 678282994 254979241 573175849 213637325 122370115 34685545 773395287 562790599 971353109 39437050 721105875 8030168 532567219 531442344 150778733 693406093 45456242 377535250 963749848 431771469 419320587 707363161 633545208 887885210 270221720 489519430 731700338 996333765 626754434 61631054 658328378 45232656 977226059 778056940 961237533 902357438 826691951 937654970 956817153 735031634 673822644 372611655 357444507 702140179 835949787 503017581 520150575 2195508 868814899 705306338 990900944 454071624 515233076 184550003 678965596 710848100 406639307 165993684 280925661 768579252 856814008 647202783 224744522 949660531 283963983 139186933 202993495 716995810 339630881 821314624 652251585 380378672 537526945 680321482 332597081 19693320 825607907 308652298 966904113 483438732 429221318 6714345 121587959 815744671 627758910 804478082 215421240 483458795 256760804 947172746 124791635 212366430 963743016 465920935 641577983 42810305 206083030 709982859 761204860 400417595 785469951 841174108 689513212 788258997 819046928 221791706 335286683 781026304 978231839 550367027 712299812 629120433 203711765 76019018 823609040 35679812 358237205 413238288 168110721 129240747 995708390 862759746 777648045 215589307 948879215 310912055 386971740 448478341 24655647 545415888 580631877 993849645 900357505 125469306 667128572 975486983 205099082 707360635 758478967 346263946 851512141 846425234 920298398 958242519 466108308 921112097 515038999 38034195 416689259 859348163 967435227 797580064 427512808 174860472 175419866 70263442 103655713 833248218 663279153 495101065 222702982 985259154 548401429 69805904 177498787 341519597 740014754 231510994 631763395 91917970 947416199 958364635 135010070 220074585 731810090 492144195 142035927 828431633 988923331 313921270 884514968 666470867 990837860 183441168 511332719 141886402 784820939 522098084 882750640 483968973 493269515 894325155 340161833 834064833 812545772 312143108 483922784 195657479 590486085 198028972 988878926 133578393 454469569 985705485 887102709 525021212 830955227 618916074 942701028 772687645 670177538 270831366 932109685 169325756 540969605 608462019 361589816 43047912 316993560 219713775 577818122 730469092 955161040 342120576 879455234 253282699 343323945 324071588 552641890 484020252 678618774 724597249 831746235 988109500 200168744 729055470 938451851 54293435 404535672 660845979 380096648 835034019 881979566 874925934 309486255 437352310 594946005 416096830 20088492 986192915 927375499 707414309 465383239 463031802 897218567 113303844 662358932 750937346 199644139 707795158 988667384 618386569 259147151 889948937 295259089 275742395 993037068 135610694 111484285 670359837 463411344 831527109 533789697 741875273 581664725 698088256 364991786 829926374 394297360 253429896 981100010 34624508 484509844 280300410 414092095 472368771 894495659 775090766 539363949 215048240 457719400 538968368 620020684 858067198 226382287 96960658 999365669 824510706 257349851 865707102 896435755 4342406 987199129 693591685 39430267 110522782 478635265 402783186 869863172 315932892 373072342 564563871 403537302 695459649 31588751 777064988 662731390 751251587 663895816 608089244 313485968 620146318 950983644 666464219 866742812 136458399 485479669 287431920 104721505 1117659 282481232 52414389 496384618 330212187 436343207 561014714 933103577 580722632 638566292 686213940 768522801 278693611 87445618 480411886 743998881 495405791 210798688 140788545 887218215 850543792 318566300 282384862 795186606 561151283 105434320 542736659 155421439 702132544 14488556 104533808 862491020 772696196 76351042 67523631 749918274 797890998 828497688 466361609 868214297 185609387 162618645 250271375 419770037 322814565 576334100 649107048 678048803 677860638 84377961 727388866 355706661 312537891 380801520 987451995 747835198 613046054 629458962 958501020 8719349 493710956 134297534 26769653 428761831 733129217 27889307 624195470 488653215 245303819 433171356 671695959 473917153 446652398 449179053 18477502 923045089 989562151 670819701 154683613 293182817 707063966 582607711 937405665 756181769 405582218 381257987 545380471 41464737 309688903 117327790 436848186 925346919 313887417 769067812 20062387 42752572 29297556 234601155 294984812 931079925 131393849 895961042 195846573 435720206 43633730 943825877 966486641 665758148 492526946 202196359 426787345 435546078 624108910 486443891 455456370 205830002 382756851 426530998 581250791 371958449 315837772 618414684 839786772 95205315 755438073 513252628 773823425 638783955 936425565 799442216 10712637 975946187 198720836 321736771 993453112 754565288 227532592 972151861 28373271 145163869 41764463 465173809 841153702 955649649 187308162 511744486 264561910 208700206 819312534 65912557 258939808 157468370 884233995 84369406 311253279 118713092 473484993 62963633 318813471 493167652 780735781 848390198 39367455 361533731 134165677 232581378 76701133 819676954 82932816 499767057 458747325 80671464 798226005 556118584 289009937 990051110 557122964 909341952 972729589 545316229 643661249 356590400 504580215 826580131 707409137 545957201 511810507 680773693 805985302 290699705 846062530 167035877 190168881 973285410 191617124 812282754 851784325 698847141 172559952 996927267 145447614 591548609 921193053 632109771 653524527 742460297 736329021 216553217 785490550 510897510 24691256 55432690 917479225 752914430 200202182 640445428 272757812 643038892 688217344 489605045 743481551 405127451 196489184 672831136 893151901 794531926 350504979 389212949 512591771 260938602 93161938 692105507 880587856 557322292 147307977 344607446 99290658 40374854 607329825 450387143 722166710 651689398 516581033 844065836 655062563 118841922 583929714 179724096 206760049 750712457 375158440 191347513 618385549 517499522 279187804 719710713 172708118 435046823 544689732 386133395 332710841 936888098 288954537 407751195 699849384 830572353 633083898 274916827 419580263 190918326 348153561 628303195 511710229 512899756 646365434 756949662 694849734 400615249 822302118 264393226 1849976 77633473 615800971 219869851 660204976 750146681 542295822 157266020 965574574 2547379 209078379 367911677 781156844 913063181 96014184 986520577 464687039 588462607 894741542 313687677 74159920 301619204 833533265 762599656 75251303 862233917 629174761 375405537 405751638 13271009 824673860 246240732 246320322 640353633 802698666 978732394 898879568 209602920 419903858 858519301 877010924 80133390 278207242 875887560 434013153 579678249 304545962 894506726 361001112 92039209 954551258 513039251 794761351 580744565 71448804 142251007 933863683 256814240 566337094 369942347 310712157 824830062 130914555 86769993 110876772 309497783 422772010 139741572 982111574 950433777 543182204 754880814 630118796 113888758 236667595 926180143 533614243 306188930 1351308 109547973 291085648 534256812 290525164 578630475 190034922 664601848 88745101 789398399 272580384 140245816 4588517 409632030 430212607 100777695 583533573 348840864 811195229 990570531 116041307 128157914 49005880 33626686 389707599 475150189 704428481 278557795 714970233 465494576 735015427 398051714 137198085 389364202 968866402 701296976 658068569 914703058 424463159 984953190 582888795 55404741 879775494 930600682 757126205 130690307 402547941 903003834 761785158 359299073 753098629 417282975 640706331 168005354 450692896 39558827 868125317 916506606 756669792 97696322 118780431 462003011 315594932 309354844 668898839 777793844 321580382 942339120 82748763 940144308 571380842 991407286 261435326 592486805 358587789 628507970 478669990 85161724 163000430 364791304 507564432 679822778 812091750 905456021 265977466 105947925 8441415 241690296 746320996 351197458 647353019 839146793 909634139 461243576 69745203 977702085 649028129 500056885 756959718 721081943 712797951 826293063 113788960 216307380 50923771 247997335 503352239 352539955 442023529 801626498 520468075 414230425 71681765 995589861 701125524 779653301 963523356 519756375 767635029 433683695 613748669 248683325 638916153 927055779 256045402 940844333 584108820 681484951 268970180 309691804 659252116 54340106 368049761 145593039 866935377 261987624 280079434 20476300 514356442 922938616 93286331 436357919 844976148 815404288 580071630 782820665 665144373 75825472 163097573 641093941 322720843 37009097 855641100 364410292 386566813 114082336 78278690 66712793 221531604 494089682 335408452 953259844 74383958 778621508 901464038 777155918 975231003 832433202 577519210 940762361 772671101 642847395 61706321 266320818 996540097 996993929 852986377 113873415 439202751 737441402 821489457 298392908 20396510 324033419 305992038 992739016 263683422 642985318 73990529 868716277 798195057 648446464 934549931 730431795 127686767 23179078 841476085 780566716 101348844 58681512 356501860 859226002 582025940 656972960 840214475 527358973 516429661 403970752 519478511 801712941 831898958 356612395 56570074 320439645 113156269 122349532 259999168 750961777 584544730 952771754 718593206 363015338 794765576 635975279 922364776 215794224 652704158 230480728 318162063 524899202 270988480 899414475 17935908 694857061 738801246 518433050 978302040 148617575 19028745 853674605 654932821 69245352 879179231 91617241 160884256 259897618 338673163 655824897 309764147 896487555 486010535 533246409 847725719 35535581 477395225 538134965 529842040 544381459 966828173 972288623 449540411 866841416 97981119 952091130 731384757 67450073 759049782 548291868 647926657 537941227 899699057 659689124 178796266 247503169 78180130 87197616 368437667 927676359 248140475 969817771 154721621 648998038 806262452 75027783 235577601 820207313 685399569 585973720 905426559 551055095 240598302 722021809 687867810 791646783 597933403 588227677 669622429 293485762 51698368 713804603 141409489 45527127 830317671 872928211 384311474 619115230 420494522 248084468 130163063 188235904 479354768 93542175 191088953 848461926 142826856 859610505 137519501 844346508 610810502 305528674 637698896 71280601 232173774 337268573 323862087 109958666 679561764 771747620 872648415 567659921 851248767 596291167 408850011 853416410 149550497 575646114 353879917 873108875 557396115 378567031 371605721 923984463 567945738 339767991 799036973 771439205 264085100 200506290 955963698 608210898 989592565 653955950 235974970 68846937 250766058 498996845 566927152 851205511 618209794 537838386 648541440 765759430 936604341 877995424 680356130 12347942 749561994 597129938 360436671 852009408 108423975 712528181 299315673 489256354 872783050 393651137 472673981 394504809 67384434 152345717 904892046 862711908 80743467 536544150 185680591 354705478 237590702 230198246 163607337 695098757 483533 319015250 320784566 813947582 175553339 68108286 289599553 683927035 676316204 401021647 854372442 988848526 539980458 625890990 49177500 265967303 795117616 602204728 186977830 475999723 898677490 87091873 558162599 887452637 549484390 709663003 529311010 469229837 907370306 224973824 125358334 526302291 838366828 555061135 31083025 297683822 937744399 4706123 452873736 945799405 959749796 974689103 750733407 593391577 9533914 914347030 955821362 624050576 539139231 46212752 505338158 419851002 810319279 857873971 281294558 878328029 464044941 595068245 723344450 205080881 532460857 336956163 980391343 494274953 474769403 267221492 988809206 743766078 367237804 685772087 89997039 286543292 873470848 17771505 606140539 979568034 220005684 131969971 570382209 131169068 358803760 451829577 488639025 430959800 294827441 225670933 389537422 913586369 670219521 48421835 787353685 157256119 133335194 324979415 59945395 409276212 147152008 676943486 581562467 447680000 291318829 883373894 68922703 901344648 30947117 328080114 815166192 401811332 612204401 953013669 5972989 10521826 851628731 34167486 528011 713798180 121826417 358848542 576263693 313127351 248307302 326662900 404087545 336183951 159983301 473131779 199199758 356920221 496527337 186949962 495886685 29772052 456485044 154600926 819884097 185850639 746823503 844048951 621039222 856601036 742659695 868375144 771585542 665273067 32755727 44346967 468902985 890098293 318540702 805421842 292674702 800356618 63749446 278110315 213637841 455986646 452428400 428757433 519326327 656404920 840545475 164333335 583846660 214440687 995343617 689257041 736106728 851005884 369146265 132663678 787981011 205348536 394980070 524525799 997341498 243239391 352833177 780731428 600494813 961210372 203456502 509191580 298574306 494481708 877479941 888200255 815758037 239512801 724665710 795180346 423761163 868766761 961735479 988993476 66038788 595567702 437111033 220452577 846376415 644208126 255911778 213743012 620240940 825528753 626975771 467202722 679161308 968016859 65996159 402244511 299958715 238451858 151851682 318826412 298931489 371296978 684336117 93158466 978282012 289084547 410230565 832044945 933294143 202653913 772841684 268712156 339912017 511985451 541049102 584045365 5558251 906275078 209507573 405468121 118014014 592678454 842123161 503080688 482537281 580919433 657685258 782428552 397466956 703895316 65281136 507270518 828228613 815724842 599688209 721545363 36535327 743928448 9801088 162605194 340627478 725133077 841344505 791210768 824200442 826755523 763702288 55462171 293293324 173725935 45834679 788837997 778037710 411754983 37802042 201382157 514802635 15331532 160707880 509967819 455019898 110668051 249071659 409984268 178952414 164602164 502087096 224478976 247657988 426519114 431244658 406405642 270976935 458199424 951058971 61795797 598468317 749456166 701577513 169859160 492800879 714238555 624322779 806770418 533790159 677115493 669745874 444011439 413793476 865645330 458925472 233249666 11833779 889319561 765040563 85979439 710080314 715325034 286404353 923795351 613319373 977695725 863287358 910580442 10468947 146821839 414630594 940237056 855309463 863045240 394845861 641881528 422378830 350897543 902501254 739453623 198345488 916474699 16672616 949420705 316589021 646618819 162536579 602713542 452486662 537557002 422593958 52556695 160352084 866212464 516845582 13551490 466245183 562790442 679540034 244709862 754543052 455203371 743833073 908481547 891261460 468240308 463968883 380856531 485536498 317982714 588918165 778279583 539387428 298200134 931828463 532063666 650974098 92570417 116958094 509553292 71314576 982387401 72805350 643730312 488841219 428004408 966158997 306693462 535782934 270486014 342966791 592936079 708647973 771767784 728281336 430954984 580876523 112662118 722580818 415868006 123646042 437932454 265995320 671626546 786449192 715426459 22268232 437978122 476863793 548868058 879512789 28086552 491274026 967759052 63036429 334731346 881795909 550641834 260191256 282740528 234458420 606239870 271815400 921608707 954446395 294942651 819650682 517897660 157774953 28811834 879214557 123385314 982207753 810817678 152622011 73598254 892717341 491227677 165568065 702727752 38075920 992199423 471365238 218885815 163606165 888141785 281497125 558978772 739316897 555736125 17560042 447791020 402051374 600948072 819035811 301981075 694393429 604266511 429592950 617375283 999282560 664214345 819416107 191484215 649289857 198534263 993099581 738657430 245553942 335168190 660129516 568249266 104716142 908302267 996431718 325646577 705270234 567541434 547196503 434560584 793404285 803480359 162844791 73215046 333783371 470545495 710901651 866089272 348131803 669675709 157609402 377733595 642003065 255831443 549321739 621321422 294457957 919460783 348863749 741087991 135713605 823348757 528932112 282975662 86616216 237235915 618994717 370368646 538171938 406368550 736378363 997814002 409218035 546545642 177361428 925117170 673725398 766236891 458653048 47548387 771176412 819255628 772134501 930438082 576407234 481856262 120287885 668710639 541446626 275635877 996252767 492636564 112043315 769653988 483336320 178282859 894484231 34096769 640625601 727188799 990303358 70215114 930322750 447468521 244817075 622816537 904493903 643391365 697061532 776111493 818333714 463527721 332184297 497969078 462584067 479543289 161151724 3649130 341334915 632564427 125944934 567767102 319443403 790885085 272379971 621283909 12806385 102021741 298343427 718474036 73670955 595848152 583536574 294659893 731936080 978441157 79478489 44123521 451107198 656064775 529018575 701700992 688399913 788490263 299606635 390306934 483545026 461433055 548171357 185765425 160904012 660422736 859204202 541904805 893899549 509500450 562879655 372971366 423703060 882910698 485905778 32236303 267470343 713022268 525706288 444700985 240038361 649846523 541377669 659973899 34728595 692863149 370906974 415043994 363415984 314887247 662044486 287750480 557328212 71679324 237192132 600597246 42566843 987050060 16013721 47516790 771164054 470939867 169864743 800531485 623407051 361259536 853998975 577512920 66721397 661441107 297813253 555781137 451953337 36037131 11024753 789285605 332384085 667608922 378814726 440077407 674210291 685567321 746654555 277758435 641697058 749620108 822977077 229021931 635274853 969060885 421848005 346329982 622522989 245911566 635801553 446786364 219427597 889612662 656379311 210970217 967073704 492750441 30346103 874336103 710778578 22387050 877879683 614764511 637384717 570949578 482944976 612500443 716591936 980074702 122932599 747738316 158430183 772551456 918403282 991086330 982269544 548865120 918908565 581561457 481265318 217571720 929767089 308529920 504056202 333504426 47846761 416655430 371120479 722582362 670388868 992226366 352001062 139091108 616243849 985870195 238463045 92509325 530187355 838301193 627050648 487850961 231744748 551746696 377150514 382550031 812552300 30905124 185234154 364728056 985510189 559084662 621715010 713835316 445259205 654002816 171693154 377865609 437230987 59466617 746024866 191379295 11603227 914690693 287276814 572666026 845668359 681818178 239391796 540963499 590209248 601433401 161004328 25986185 768849393 643179209 611223485 220653109 461069444 217408116 79349230 339677181 581122694 759157382 910761374 503253881 955908177 3541477 403945941 563502704 866908700 637849273 71679195 68926642 457934230 716111791 68183429 835211531 374150145 758195093 385384527 523948305 109050609 950808536 777649578 129658731 788539446 427408532 474183520 672786676 94462937 695599344 152200755 968154866 257994615 311646425 324147770 511944679 849183760 560578397 621743723 983639847 247156488 923386132 817117959 758871771 578619009 950874734 277308164 794138074 195325748 744072002 365012582 244435554 193434470 668173797 326579889 195894323 203948290 514889451 429528844 424556626 83819211 184954640 430339252 424437763 731289066 12397562 846480341 305888332 273842097 702766973 802526660 920324576 234835238 245075636 196405211 533708357 970730958 415995842 708275057 310591625 325825234 556162450 163909145 654538208 598935491 922218500 204153488 439608237 922334281 583854315 944253330 638574736 730032593 856984483 462168893 394851265 168994657 833328180 177283092 219674106 964876806 438336008 927479705 443532931 586005461 555914981 528590755 659698955 950882099 574060950 417535562 53113006 609592481 520878249 742736191 554363916 495560875 904814852 974069438 68735584 990969410 39511838 796921792 915223135 920640272 743293974 716268595 818767917 774346973 219161354 678228350 393866716 30650128 105284796 84696378 543687544 28475025 537067357 79407486 396597244 537950500 763442426 901885149 323351404 907929195 515432377 296857557 156390685 675985371 218277000 661111126 751497582 551604054 120214699 430827247 819654280 529105488 798345120 427235706 574758844 881365253 221109201 778440404 419138561 788029657 403011607 520808338 482837790 426734638 614376033 980909467 463828836 2264057 32272137 954215369 874955293 549011328 768611742 601751214 808733639 443264652 948547851 381927743 75380985 357880337 627016837 941201298 934556643 242484192 244793961 994107929 391608406 655235551 178344728 267989862 854583411 799516760 635871955 769883555 784503695 900215943 889319009 65033099 787417650 591635883 81661058 641177769 881634390 226077467 946522113 290903736 251125672 891017368 101266014 474210040 570965652 38657156 992049961 679305062 700058980 839333719 686868891 369133188 940367684 511861678 292232535 209767518 146334876 66204351 437693243 864653032 888207567 129422708 220137524 771729050 665223038 865940574 849445766 689972114 931468088 200095463 157997245 243307104 593617992 352576747 886734122 961481403 367430637 938887505 620708268 580063217 583249276 624765689 285127665 493675826 477191317 155559215 810061538 634138741 700370691 916269808 904411405 866978467 119795105 778346289 188435491 804873281 554280085 129361447 999895813 592614806 937154275 773014727 801474502 172040382 543327843 147523891 725632423 967360005 492026913 746288218 791684313 141058310 595050096 315457932 341328347 812578573 89927332 286700123 287237989 1466911 19687103 728381787 782178987 229393910 843680219 475876150 832747481 95485730 61657035 825615087 366523695 822434777 723659147 156731602 884293922 310258827 478464750 338892623 343156276 996596763 817064543 861682696 66534586 920670007 105205923 684059074 3706598 26723107 742755649 572394883 877371756 62647879 964638315 535225389 103795875 543839932 138065027 779206339 402355036 99046142 101060210 414426618 866808934 465612066 145709525 311428851 893878357 347525411 722008989 928990983 583616047 899108118 447354639 375131990 456415962 908816716 191956560 727286592 181175016 252289588 32745140 746554845 710910976 383544146 831933070 124942241 486262501 93414610 391983443 405204193 596608517 205850965 164731555 365380803 931831117 727808317 811668953 730588267 13191235 560368444 28590723 793234245 499727432 15730800 787645573 17461330 554175791 645570136 917221265 181896736 734993230 581077369 266446199 865187205 859760762 411689961 638052528 846191506 823810847 792312015 456731713 366283430 137461570 349426534 660491478 487819186 994639640 530350066 522899190 791868172 833752691 151807883 310537658 234801486 416198213 927902125 781184947 310950066 627805379 414839922 943378751 77002994 878680388 428339071 313604861 148998002 313759096 352217411 269318727 27689469 820150029 808596545 771869311 190461381 959164712 625397041 555700816 119612145 413271363 620480655 657647281 357926830 909803802 103323748 665513017 71489592 799757813 786509474 853630353 706083350 662223807 65712660 881163153 204394346 770019690 636442438 814357763 91408294 664027699 578271934 67973173 319916944 696340056 129656879 220949724 22374569 718167926 590961952 649319253 909156975 1141767 310686274 66713889 792373328 266236602 172040703 109094152 867787520 185028171 697303068 526537892 676505968 936611372 100235 336231674 997549825 12395731 550882240 379264975 728239511 41584979 714752393 406655672 779340265 286363955 608919396 929641291 863557512 196224316 182327600 335859283 842764401 953913980 505923151 371041774 443036794 612916849 854009946 67039055 191304198 322589498 428104656 901604094 587904324 774262939 523399734 602566652 410355056 843113935 451387309 20795142 997613117 67531025 91677751 886869071 283579415 113355866 257120358 990424006 511092765 176232763 784039939 788917812 682095550 784046462 611682393 219615503 94709596 180240322 826869564 884989940 614212599 566110941 574665272 239529522 740464953 276041272 57707442 637565755 930288650 358369337 263750913 481892108 926295317 86719810 814503640 456945122 193767150 798365869 983851551 409776099 208343654 307114705 50229160 226137430 47805712 916412398 484476560 619799214 32229301 304162721 513636794 273348952 472400403 856073444 737080984 861099550 282820198 287701708 923915813 514157789 122284778 547465703 843952768 586171759 516620193 747998704 708168113 749971602 418933343 896795434 441675567 302800315 644016870 440147539 335023558 808732607 883144993 394713546 368546960 893220567 480710988 857110175 733438995 580559531 300855350 771427439 695588578 752367609 566074705 853353280 532722019 487338896 437457040 278959771 116606388 668156590 699009802 14098501 524930568 81933289 18784455 508684202 895304753 424687794 267284159 134528436 434912532 566870305 271982896 125725940 911582038 56790229 652356707 592152050 924911444 129167704 517152048 704497987 182995122 778428607 788698777 318236181 81048825 166538709 125956850 566540703 412896672 241581740 864306101 419934439 309136816 420155553 381909963 892994605 271527400 437552214 795206578 443392962 211391208 758051077 255731509 156367247 43003390 428197315 945770332 713275770 52904721 262171759 245810436 585699976 156952158 464204007 412407671 157796270 755037829 165839295 938336667 44846239 458036192 399435851 424203933 295869189 226824214 451999568 661399558 152746012 406208047 530475188 46998934 49168481 624773521 99378157 57813911 307602527 121455195 889105662 292256586 476565535 773639024 42853486 145672906 276610943 703537366 832657322 110664168 430176183 308861453 157460921 504098273 166671979 509437652 123320223 345315155 396154273 972950733 283944221 848392695 778836026 262056184 875715390 856566046 607520335 819401190 851099538 827907410 334124710 975451324 390781981 650935352 264167200 785683081 87627672 74070121 85382320 658437935 195843813 885545476 628581773 835189172 287309250 325482435 882676274 898237847 450273128 119270492 578407402 953331679 635285492 472303685 309978557 714967482 420097757 222545153 991659605 366506399 958360387 918709231 537066023 174371969 883347774 216457516 242567765 494735385 955124161 598554868 769632826 442396960 26683343 690003113 42517217 885027922 842794064 246737504 583286845 8869843 86840744 874247507 107887557 846938920 408565608 679533381 411292917 879650349 228959796 593739077 832230034 728249645 660043978 240472052 655759030 469656880 265148205 855888032 772670280 187790319 456129330 191362108 437622150 702878657 736617645 934484764 459866160 928801426 374448744 544046462 199956051 117023693 627091530 801458980 400119896 504130551 570217284 373349223 583249819 203180122 902278217 907612295 990069298 95685719 823269818 521510807 698209356 434434677 421184817 997866742 536331399 451661056 473581357 454371547 13341079 839108503 53502721 210027501 795779732 255529544 381236322 559798198 257127965 314370262 65597935 899420192 946617981 967062920 508389526 591237129 111340724 555429394 715091903 216383250 948685310 308619076 163171474 443591537 782358970 573961009 145167233 128220095 944386577 20039904 242721295 850486275 402579832 763127889 888932078 521629895 410782411 905910075 242168294 159226638 62617798 880218963 92415331 26006703 576586693 901515578 862720580 474984358 10438609 608417984 566065212 948015607 959212815 414676909 757645090 932627743 473412278 495401517 837533596 881141382 875651409 277179361 916993222 841247434 502719571 312447021 121822514 177395272 853312463 280301120 110872022 960472802 994110813 322374550 111851459 734229965 351186203 430623096 493033033 780844144 218543653 885942824 674390955 428337227 374915880 89184325 797094940 862822750 307152718 332007221 564761995 513344025 380514253 810063438 909809961 342154177 985724221 412529421 520713769 14255153 571819190 50802108 718577861 17680763 225935157 764914692 339838541 417936211 405238229 895060834 242035441 489595450 696196784 164004930 773162283 431725708 261175561 3577174 952628361 981627916 996710806 326669358 984052937 113228269 99536570 315822113 579120092 775940494 702886277 245366874 551430348 612989256 180150297 807038395 703814807 570056640 705675719 38547945 768263847 767828991 73701052 297115683 719140142 993253121 793745994 429245743 257899013 719070988 976596623 996147593 31948337 680985888 699468676 270285370 365466429 891868905 251997316 716680345 557270039 466409965 606307201 342326047 979142552 603040878 820632254 682819711 353301698 26927134 325701252 839914896 957744021 883238389 914516063 699597469 931648236 550781420 30294567 812889049 242953297 786057237 929279070 941041158 129901430 851133661 436558547 299310843 382714979 123387144 835070457 14841901 647641970 181508447 926140404 213146669 717428121 646221818 530564875 614961086 682835604 868883937 359993799 315194945 924220992 103075910 795832110 163511669 915725484 150382612 789823741 736015562 288878970 149434699 867848872 226721112 446320266 988769580 335973829 310399548 942195215 297770445 322945328 399692747 240556327 146777708 485965409 217155786 51045364 657278942 247621260 836258046 855247564 544494228 661356522 104054033 878176281 724214648 656092862 680237583 459965220 39056061 352830279 832912703 759037031 204142305 74487508 765955919 847808249 530315492 377069995 686699904 807370911 918869633 958592844 605142902 746922001 450698544 815813281 159340536 45755899 645436371 214969878 200216805 806802342 686312113 512150115 477855924 324117600 923820042 865313387 191498360 181969092 862046955 610178810 752477195 81530477 610000888 629568615 383983419 171093317 41588340 315614297 256978124 995132548 187827859 753386897 637330630 630256203 211995143 582435947 38580316 119017554 733989977 916850051 904625891 569802303 352195061 976612849 154723083 879302187 174980725 995440523 431622931 773368493 342982306 106924023 583941235 247688430 838769095 374608232 405854933 225187821 317837336 156910659 30705496 615947372 304688767 364373529 994109004 55880449 670632933 141776790 572146399 211191231 668990509 825243102 156048080 973958695 905658981 246259018 548282367 571728582 682129640 537926824 931472179 463124250 266119483 280869957 51706971 517225584 931343418 780101011 136157459 972359444 23437385 79276369 429241740 71454478 128765044 43411143 802720467 333267092 789631998 630181863 98200938 309965908 744075478 341402501 733451599 194977213 293192584 605022758 971612622 521544504 181986652 996384950 871484129 809581512 925742058 961849201 603569611 636841050 568568736 682265947 890149114 115056686 992031033 594139243 697845207 518511789 122910660 592728082 902766722 813526820 826602454 882639246 342184326 497658406 192785300 592603690 76607985 831351457 638158587 636140562 614056857 840380168 648860100 29429442 701652676 321569757 259384091 65275552 594001040 785251498 900215075 702928068 326533303 172368864 618687537 908716162 612356339 38393336 204382906 172434837 775355316 836929602 583288588 613939002 920146054 210081483 105387804 465763444 709055846 380610403 737627701 95243971 595395666 953570178 783277477 68531538 895347638 862660906 169467329 140392706 67424842 999351481 168053773 531135173 572176263 308325951 429322810 761836295 139430499 476772080 482416483 398472698 20920592 526917256 529464528 660069046 345662509 56741619 833972900 840806922 536758574 813284394 182289832 296030136 145309527 673700616 205017359 81096929 545541248 462069708 183679524 119843332 901023819 782419837 290094511 114866186 876880714 641698843 806469497 625638350 373301750 479745268 943470223 510227622 508505336 595675789 560768005 837234713 394240116 920983303 259543628 713341591 593533810 310338671 138915693 597896652 330903264 275077766 526261713 901189294 721522803 952323768 157946919 576131704 763445346 711416782 413951142 670174698 864185052 484303297 584745938 916081869 636057005 586682229 807425436 31682973 932493497 385402376 846118396 240545500 375004975 101683810 702464262 264682118 110878884 977394224 269177673 785108424 557218884 982120459 882499929 316718086 31299231 969672706 710646066 706754623 816333547 170100458 931783274 973241452 129007886 647779644 901339598 20924032 504938636 658674569 939817176 530360488 26972840 819404347 444667140 243034938 666357952 416134365 788170713 527081557 620164494 741986027 880248704 290744298 63819273 636822022 9904822 365681825 562518327 123000127 684881910 777244255 448571662 707467956 479446217 716427099 552317112 529523862 391921774 786907094 564786055 897959227 144586670 556097837 808347645 408873280 587353619 357241686 316874277 282148433 213558331 88932525 61801354 735257539 199229215 245019185 76040723 632163395 878420001 774201017 96243194 451896075 827447109 450696390 296581766 4118516 224841592 190446808 652955831 754935780 778770326 317002709 380531130 432730820 14636781 343235182 439381279 856133503 569289791 24952036 885627506 81407642 489427737 721903323 703472646 945949788 406551891 877008723 955655409 621483597 326290124 326583308 424712812 65560635 393033685 218869178 655140285 782930728 578504192 260831971 938948454 537380605 864576899 412840772 511290447 844894881 211678722 841771637 336856084 670602594 610485527 446125124 684356052 697533852 603387580 913019300 559450013 42706400 7025712 346538773 461347586 289275241 745417565 807515999 541211488 837179250 599108361 627334885 484463919 573622506 647083889 250500783 395020283 610359007 867191818 791693963 984963097 162555309 616670924 312150209 68208082 57640007 380715320 786650587 244240891 635837450 72637568 898260791 793696875 196807266 489460139 352572778 785285657 363593187 839046090 273730295 171149258 619507829 630210017 989391079 781558843 593323448 99565339 654253607 763478161 207997216 180764684 153534845 731523299 686003737 9992041 656139293 884278262 373655660 93531553 679909951 23052048 992332886 449279200 586606170 970294429 463270368 961895388 649844141 543669561 281213499 92177107 950123789 772943490 989950344 123828812 843307073 259734484 862832310 555190752 267817455 273625987 371169598 567834921 109867931 353297827 821862496 670057717 103582274 25861584 281347798 244946304 48576140 934113710 642781535 681560890 190349387 54891170 394627607 980706357 534797487 108763432 55551371 23737864 966704476 656723246 777903815 939564404 22546592 103377954 980157361 352581911 715022845 765788368 192668681 953352519 877628497 328364024 880755201 384428627 517146273 309962868 17012954 273952483 799101716 746626709 235443174 708687406 487578090 548210608 657631501 294556502 369162454 669612018 785336350 551735086 478497933 809190984 311211462 639213684 88239604 240735175 540672083 123846310 805356946 887652547 147973855 327403225 980793528 412717330 138617538 622713785 503396302 169599415 613307671 712802506 145739331 641450065 331749001 598511851 682494490 15657226 205808313 844821313 343422537 305963160 741524022 594102071 538701934 387663567 874092012 244034766 732035088 496800794 744280570 340142611 298120080 246415096 512125527 977637196 470879711 347814187 970714710 417817594 817740185 904980577 166778127 902052052 400447996 49078529 28824295 338374300 219356253 380481955 247138026 381838071 121591466 96550388 238183121 160298085 35388999 29157979 151109900 392896618 227307930 681474821 386244886 94150515 410400024 788873449 921637838 212239663 215244266 307770158 114699555 800562491 300032033 954172006 552017943 689146431 239937778 490336736 604630222 857573572 179890785 520364573 276508882 587410024 988066642 211220419 940124651 311720899 665357341 45685964 520142283 665834665 542725719 25978095 187334384 910094334 192444404 258669093 285970694 772429328 648368663 300473147 870278671 274430057 22236785 273191844 160297938 732392047 21576778 123734229 291854351 881721130 319563891 866428139 523174026 831715062 95582775 458938596 444149720 874428888 699600398 683990031 205066945 997605834 469400856 408850542 553737784 379813082 457487633 281233281 858612961 304256313 315440051 920066065 212448224 821522533 959008839 457084817 843225119 389719430 747404319 392212942 868333193 945888002 814960270 745857275 596020118 866075620 507209347 207605949 313483713 422306483 432862323 24984414 89537844 985701741 159077323 514166712 795459149 547973585 530040805 972776961 64458850 378110217 567861619 842919436 508217015 596862138 553029888 777047073 394733768 920516973 499203780 638355125 431907433 722766332 628474925 60301049 250041790 770888241 607630436 742319144 261837047 608557327 684579319 84453499 272711799 464073241 618768118 797933506 346524066 452129046 475998925 41770388 449895092 526687078 48855876 347058970 737879961 894539687 465833073 804359537 567910929 720185981 572360757 159426265 999187004 463882453 256168777 731526918 917721036 178957621 337478152 799903770 625082269 557579489 175456856 60663840 867099335 753692386 199581742 11513814 381654731 821979574 275027652 160064290 167719763 383610737 137647973 50601692 92131213 335015148 207050461 957298132 458792980 996943816 511536240 95586657 887311954 965653930 559334963 336439972 471924372 232785317 229005843 604102015 367532963 218798749 830075126 244840852 784203119 570585325 847792851 333114892 62730045 580123628 985183220 710821456 438339263 729202230 103282497 313316786 26872826 191422030 942149950 26162558 30254482 728714915 775319314 543208149 828546868 491484738 921161785 508505549 725051646 703288066 115525227 481091740 670661638 327578827 499551515 961455892 525897715 907947002 10413378 788821460 20388603 51020802 302607792 74732474 917898949 417710375 63077540 642633437 27437958 833592668 556621491 996996722 27872414 563830889 975403956 121621565 378837993 99515802 372832642 767915125 719136496 508057061 537570956 850581932 141123701 479268965 429899572 220510196 794546426 120380683 518957702 907772933 564707445 223381872 984356252 885004405 396477316 54974424 449367016 523936905 24828999 533542390 812330344 602546582 572570849 942403535 761105038 269549893 750084361 411787548 239420908 592225240 994393779 163960386 299442096 727434081 210823166 152667391 370264621 644863855 626605088 299107334 862364500 977218832 291482653 832098678 939242336 442175586 313023356 809801867 457586663 224350393 293834339 205130181 150328006 522408194 736430091 798933664 483829543 821362997 465898272 163186740 116642851 947113345 404484483 173628270 118330340 450267818 11073929 454840887 260464195 923583034 915845761 602147493 13968035 427552860 539373162 428915096 443504134 544708946 294332440 558700642 295194889 866887992 239012119 65500936 540580710 710110888 863097799 181297663 470627568 802883506 308416742 168953353 393942222 270411559 156871031 777197796 565427033 748262337 128210870 72359140 243065473 201331591 709548576 615970322 988478296 528313255 967599673 260872268 876530259 63911630 737268224 497655059 398558324 230144338 216461187 540152145 525489636 577729895 612495253 813365874 310474616 42713572 893738133 274464268 625617769 508844310 408858398 446759024 754503624 579345998 884096959 907994445 134557459 961490803 209721410 454396680 942636285 334891169 244730565 452097617 253042507 355070909 919415237 112033445 652312232 866174549 725441736 264914270 276756804 580410861 204963806 976585212 613739775 284265820 696921256 431580840 145895424 488806655 507285727 885654142 984405829 664216744 145700200 982549365 384729613 750583998 920261088 589742587 50884999 908063909 711480928 255478157 543469367 468240422 212977128 352471635 267703493 196392055 798167792 540101238 566308951 302818087 297771637 173325522 710167027 970374885 146529198 271196811 251187311 909066970 383494319 638708056 750035349 93241297 985454899 231165518 764822148 681939305 10754554 353296258 353427773 766001152 159038332 332093367 342922055 644778217 124918023 619212547 666546799 359310128 351588199 457198692 969942770 423381309 290653881 877600600 431971760 993106897 55609700 99703698 730288103 15827493 836600929 977683950 569497543 81686025 871082009 212723489 699780333 433287561 151635712 184900186 899759048 660046828 353137344 214841791 651110113 547868835 139901158 900111298 617845383 669780110 291545045 728204610 435154187 666031735 82794626 995292436 89882013 521524491 468353139 751982360 959146417 416632636 847858291 393481049 504655962 604629878 657548161 79648172 580490534 667837339 950919224 166848662 175511770 437814026 836662721 207218404 676664076 419829179 794722998 429361337 872837406 810347620 604511479 779587856 372613700 839096289 627982075 839082527 234757039 854124594 601487303 998735459 57976842 6614628 699997781 165852132 672805934 179390823 803797329 892335940 422533836 558614275 230278448 684671983 359207032 530303612 577607305 129599870 900687287 512694203 925592386 520863187 442560440 466893334 428181465 480761029 720700993 108970746 556451586 458943875 727482624 193398374 616475910 878708110 872937108 543188584 764644847 135130577 344128655 320557318 751940216 819133416 226781490 174389675 541205735 284299162 566174115 536597221 818330567 105169540 276768189 735902944 422171384 91289118 148521090 216096150 986280507 974496363 294476859 232762208 866176046 12095805 260398169 645842994 820642617 338605287 891617680 193987902 765332599 735035556 958317983 504177522 280896635 920987052 538761370 408185883 15546910 915528397 282414635 466139906 531383132 382339319 846744248 737219097 522959490 423110350 999743399 262187643 257915824 817789574 837406122 50601851 578793410 595136474 817861184 319050912 282917587 413734809 855203587 463686155 483975041 987216379 495105835 971687249 868707299 311185650 46811143 870503374 350942563 6645715 436873279 200346365 680492246 429612068 386490288 180416116 490220617 957482368 98833856 631510183 17500782 684752833 763708706 112379104 280411144 833793550 553349236 86130954 516036639 21683647 481238700 773652908 234644532 174924619 343582455 670824793 541349386 978987188 198093408 898015576 491666087 871847314 220756446 455185542 732175066 830949778 274629241 675354040 873783476 621773451 817241274 217188419 76057153 752760382 193211504 279312826 799144953 173838947 161655801 705541964 687208778 443658952 104246187 331924655 81942856 377737190 48018533 474325745 854402749 829290350 76651359 119447245 148243827 181472529 677950385 604087508 578277762 829231462 222076111 309646817 633443311 600327608 510967855 608619500 722509902 116127682 488567143 678147628 114951602 728883130 747444827 968303914 526392011 813860915 61207715 927741148 230203779 939688721 938741266 985042596 579039513 362054121 497313816 780284019 735196277 144526611 467862331 903930105 223777424 505566057 366436468 193253760 961975397 190248531 692222446 310190031 519845461 392319612 602001338 998519684 606538144 96547418 282597973 817852876 858194645 681230020 285355733 638492620 954517065 442651642 621330933 979940970 306691133 784373064 524736182 390917487 54124733 16955672 507829419 781911675 249236658 482366005 237618360 27032358 205242598 27016081 955898222 790699641 782809558 18239917 118727278 714443057 604769628 272418957 682485482 688746259 331953874 485612446 204022578 874149533 426425429 487804605 343335797 895773170 706128153 594042037 573415619 368644904 594635669 619750285 750270532 654223806 396098017 758190804 891445364 756744998 380757233 476858646 249173234 620190144 279910384 436840264 526439044 765396510 902250708 191193871 703520142 778925032 596867152 813751190 547710528 53750132 891287824 427307039 717012549 102948717 117455776 885783362 174924583 330077780 313514808 570174496 960305317 201724383 486705420 997421503 56305669 545613317 463971944 189917271 265536535 791952229 687202634 534918359 928052405 611304743 499973998 615884706 959444797 828835158 294372643 848119497 825502321 604228775 818386326 135651201 547537582 857822197 577998138 228714216 674964870 770699702 271240690 827531412 766579314 488898473 438821461 541451198 401615108 942059900 120537123 767369006 656023828 954226075 77403073 153087851 882349243 583104294 821554043 566032812 653963466 92423687 330746522 612930981 424705075 155899052 13779185 844213915 930252391 638184744 812893824 395229432 116584246 739977271 84307790 458084352 137237692 883388393 186808297 765913682 206232051 482398297 807403549 552935834 198046526 794837252 151338363 12324047 431144229 335432235 179713809 857846613 475687619 722906689 717099791 900312495 98827115 383847749 898338666 362465520 597031467 900827650 182768316 99625227 892121648 343171638 996100741 600384327 535687860 694328759 211044936 688094477 174594254 492830650 338822418 31436036 601040373 452187883 524435492 972982568 132898967 755448065 597849638 4272844 302722987 417625162 400011562 432413707 839602069 254851479 774213978 232448609 973768050 755454584 874366773 437655806 818533643 703739461 69947702 711093454 58383818 366542782 439570149 330725882 726395581 747276217 637375547 85232024 531016732 66561834 459312104 767712176 95722950 862471642 546188125 248358768 79703559 316645091 73062070 406747693 61557567 445086714 291513654 729869865 493704002 470066758 359478330 185125034 909802123 695481967 377667841 321115425 54214731 694762854 435058035 392442498 34353237 817729612 599171536 182949389 318661453 694383783 11039701 738784871 596044507 133913161 31822477 615785461 538218102 874557925 294755174 733085484 282033536 733073888 988266975 584559222 59837229 161492485 682278833 294617546 907932900 397853904 266271479 443959603 931665142 2288750 954352768 867311670 651810397 184800584 562494376 462691083 601165743 268933690 791306001 573990337 909141482 796217550 309653182 871033728 64490261 717915026 411782456 48616117 179484743 799583332 222108137 531211081 595175834 886117602 786748059 867376063 424621153 490328333 85539231 840367722 962583569 973131203 442474910 597083371 840514953 507003397 817937730 700948915 266227706 167823236 941564906 957326726 789800620 759420583 668302806 451609537 713270274 903820352 314223049 194595954 984594233 925096414 632179539 423470248 566540581 844911136 133124617 44121554 980572433 462201355 658142427 413674499 924099156 947058148 628331154 340675536 74687127 80322393 352219717 646858306 972268319 532453633 110448674 988113067 653300682 109608751 877339290 384383124 419032635 949839355 346919357 882054000 140906598 225773325 495865786 717745836 331809251 88508381 119106166 898744727 955295711 243944220 77611158 695880478 325597097 57929762 690970275 163659868 442220405 718590067 585844756 771825046 398828286 824612715 360149397 277772748 857448923 566665241 850762966 522482800 168270114 974586058 157092611 40303376 508593001 830395320 126937610 780525711 345185838 467045086 318638510 326130937 734845486 310394018 759263200 239267431 63751100 941732123 104631265 881119388 92800659 278570116 584442715 388353382 463999010 83069825 424180512 817561525 333798981 633957434 648116634 324635181 178070720 897151421 158215965 650294218 254229811 492042483 716375599 407552591 150622307 160569452 886007791 183579831 352195454 84806253 262433710 601998077 138745238 716843637 275191062 522281979 677359913 950892310 585555231 615092604 68014883 588295533 258067801 311111631 381029064 952763962 334579417 66983672 442795386 482575758 252888085 366332833 397962760 204990961 942798262 117223554 472537017 389798998 90625513 449199253 522449670 213434598 416014513 300685320 472327184 159795616 667456946 271790515 934726438 39599237 431801110 807699923 651058248 963859415 776450683 869904066 576062699 867447162 239963385 248174341 620143166 33991676 847206863 92560686 721937687 381258561 964289615 666479549 737635620 611307815 575668097 106490798 305457577 619735294 318518210 457553484 653846030 292861893 660497282 200513434 599929487 607552059 646067580 55910143 762637107 400625200 718437262 409599107 586462984 956631467 143295596 624158134 778056571 941643308 678011983 255163285 926717284 647767256 186516274 547116737 240812547 245155748 183522626 940334219 802877562 456307262 931453333 829714006 97017496 978494685 273052173 274544105 430092897 397442983 238781678 165224209 544259464 549847197 307645855 772777877 759964843 30284327 211360285 371442681 933147247 211016056 607203266 454654235 351797490 567824593 426182413 364718773 434855459 285973266 769505150 327129503 252339555 993365317 113032408 216669992 938905625 881016607 203351463 849953495 275294114 655787731 117544835 74956691 479552224 799233653 631983756 508891216 903833517 910019750 629861089 863076108 546692262 871163248 748361334 789392968 978043494 879173311 415858763 682960277 909609017 945421301 340896924 944890563 203399903 653045867 188498035 579564760 427737216 457589593 321067541 58588077 309075442 343591508 4469806 588784316 328703944 954871755 131823915 689282987 847180928 456060299 312789632 259970541 657283836 713462957 763955089 741259361 358781383 794294524 510139427 371615963 177268284 498648072 30243477 216875025 761857506 52871237 280037056 255377915 258292769 389611988 488973799 17407917 354793900 953910731 665324858 796269400 876219507 53222873 67472750 642323763 174148133 421020871 74588216 174072248 578071430 778430060 777253861 224292492 410236608 829102755 652912034 678962525 506250471 390719125 257170844 138081207 310382900 537928354 436976528 591453091 352044335 185041812 726695808 431403183 323139023 598417453 139389996 393953677 952090659 510598447 403758961 407015599 849002777 282343726 73410079 950650321 961586416 873554326 637481174 894654340 24117632 818488804 551611255 463995070 261629199 286861104 345238956 77678194 290075065 732890971 554135090 720925677 854872795 849756458 78035015 976590208 777415 48309520 182906445 723046855 881906313 304955858 214440811 515439531 902784428 333702606 982816807 579097628 353005379 929823474 257196228 913917126 131615252 592046473 973393714 492744790 335883146 433208931 681982766 356988463 478717774 970098847 627863950 240253701 13681202 317492653 855622354 498829663 722672426 598827461 866506868 669239518 405278672 44827317 958348215 27256138 912112786 545972638 90882280 641919145 452044440 337648836 432449594 350119119 350993449 594394702 141666521 959120527 66451534 975688763 242063412 822630279 298374786 232750621 111251029 130511155 488867933 701395302 633575536 889601681 252657493 650425512 33866996 288449715 875876689 14571545 43738345 320670238 747346861 108569496 669998901 772002855 329336098 640286427 192014372 530431756 97663223 143810037 630850977 983006819 428187961 358331096 439229430 868730815 744877373 735707726 302125363 361149881 917841054 36490536 31272606 256004879 333958318 332213172 663867255 759927573 601042052 507325072 430096726 220578585 224200709 405734300 397093185 595838569 45546610 650322332 155542462 371313410 951211249 818215835 252008305 546534454 735134047 528755068 600585971 104578223 149993367 45722794 786866307 602151776 947976864 68293810 861485229 30642715 327251377 383881892 590569230 231620183 650743907 328452430 999113646 481024685 932498100 550789769 763925932 365695856 847954489 889394493 485124697 800412451 636077780 519111201 936921298 714323697 155835058 299291242 29844397 16216446 474587573 553553233 130786467 948050308 554312981 376178542 267644323 651827122 970905780 341618239 722729323 175245303 63875745 256808482 791568762 814979624 789140615 249163908 579360867 556341053 167229660 674638099 21699653 447052141 862266379 455251757 286919627 567875328 502735944 930086714 987325640 730554356 564680526 842826727 796151295 125752490 756462592 954656034 888817482 209201303 574832176 126080729 760644759 356297518 746210167 425532721 327118405 357816607 868181359 410846946 764971528 441291769 372485803 554549520 992075648 801162323 63560159 660145049 165137552 842412316 64554475 517762100 982241457 195951036 61737489 465462997 178613050 97865293 75576989 175245860 976659150 815050289 989944681 677805794 458510658 216444949 844335601 954277329 136773148 552258618 185376290 466921567 380258635 163339889 356122196 350584378 971635616 415621033 19749002 837665228 396697624 823293860 951374736 620461538 512887143 421756862 958150666 964569802 894309822 829458481 812748252 822876802 349191956 979919043 564530272 215306234 115433452 580029971 615837181 553136215 306211180 344115700 822989290 678929815 99020526 314230169 900794900 163820348 940769095 88187875 456836755 789518535 132823932 628965427 371935383 723497261 227903725 978928305 200772523 141895395 353942566 505078091 940479812 966911646 738171069 537949032 534415131 295130436 627062997 423866405 425128888 27330118 230412163 159898170 899351683 978068899 963153393 817041521 506905501 185646337 842336282 191236963 780002794 918924385 983084406 548356444 201431169 448741334 547502463 234854784 541915279 967925816 517216913 438613616 53466838 379770471 799051888 124013494 850245433 398809352 682073569 282958086 568966699 896410115 387605796 882276847 793983453 638510473 431696859 648613325 341417375 827065979 762686476 804326785 654670304 877491016 925783215 567742048 938724932 541026075 707348277 32080861 372238855 672935164 301905721 711633032 999143279 629163540 976810598 637142458 54405948 163817780 780276497 565732978 590067849 773387874 470457063 230694347 408027738 271042645 21729563 821847396 713918300 839768543 61774544 310967473 237279094 900978145 509858594 177611929 325595165 916506038 197741293 647402797 794577306 664348999 737712224 839635806 404244619 801121739 798391493 628266030 535815414 313304690 67605510 286589638 293994307 585363270 673108282 178620383 766729778 316658817 839011511 770152403 579136126 32960258 928847412 215442761 904342838 907217647 283685032 20091102 851330309 733163152 169592307 108865690 212927001 974290042 983875781 596172748 797564246 303301069 549524148 480052548 346430906 326392676 806295539 576994734 837164920 866776274 879555412 331431543 479762754 895259143 205153017 884433808 784591442 909188046 721251691 655108745 927246304 683600863 446672311 189234179 148663445 924544540 741978073 931937235 305308503 785111760 123137681 689667381 944785680 907118292 555938710 866047120 297150712 354661441 979630792 259261551 198138610 21078557 758837630 914086693 886672231 622250975 396586088 896134935 298300029 412259032 868608068 965396571 847640351 562641317 420994217 165657787 686084207 166198804 842323234 960828064 518324771 721090380 890714833 808000895 767333131 458024962 877998693 334011867 232829614 51620933 113699637 18317910 29942211 51055793 617759886 443916859 59517619 213281698 83457669 468666057 411207214 325799118 420505834 159643466 280177939 295593014 480430704 85421596 639795034 621769765 450110705 533298081 487578239 799350803 574401133 906136077 734454579 905828314 294412360 874208061 520889946 886119384 786965637 777858217 225419516 1645859 95644676 642551145 842396597 535886102 718023545 718493259 389125355 22328961 974452787 825725286 748957188 246304056 228146788 380141229 853092355 982168684 405322329 324863523 309088467 727513718 955576701 299844542 536392652 831121531 945058104 794343967 283144972 755295312 147739965 126168078 387461243 172170790 400415522 719716439 181853 446255382 619007231 141004607 537219542 962951064 345029764 128419964 776247272 226136929 268646029 479654530 219030741 346912313 410386014 578398254 753809986 846036911 654514019 568128592 817766871 409945564 162006124 628512833 644809491 853932544 823844687 885847212 860742246 274825253 452447268 832349584 852595173 570878793 166381385 442689545 244274105 168174480 516777547 13602981 748575282 46829429 22219015 640062035 92983439 235453017 557609122 720565584 146130513 247112076 239338318 830908601 492784975 614262139 719450078 698861374 892662195 553672174 494003915 374834271 72475651 490811744 322815235 761717661 598291015 603790997 498534995 291942871 6048238 304105796 967981461 587025684 504851133 844673773 828476646 870446378 826425869 725126904 160760623 955299272 115625601 781006147 339875927 875809961 484121645 631761475 66395449 615686752 754269024 328570649 30735104 93214070 32434974 325616433 516879455 673652265 348733468 883318949 681992398 742405310 39933200 264842242 270131765 909584084 276686090 522620537 452412715 401095982 978162477 901388336 6061532 35138297 153742448 545300545 121353858 799995503 357170897 832402850 288917571 15233355 770560469 562352023 149870729 959164379 284998921 861726441 782058376 705880360 576862284 330920602 482802138 481880734 828890268 756743036 889342502 961605093 56376470 994003702 307700992 713883383 159140263 995316608 42615918 846370120 160832177 517422650 606573162 617365570 96334893 209210971 443971478 604274152 789385729 64196663 384869230 929243712 631505914 870607804 747993984 183748903 327653073 808308383 83528425 695619233 764851928 129040423 521730126 415426428 974603211 209508429 448331617 334471327 488023520 497464322 796904184 627567570 989992795 48003274 861853376 890954737 918226387 518860087 622217571 851401442 97782181 409451227 792623023 208833929 168975645 538768331 452991630 209221647 643659292 574409252 680923534 331677128 450162487 443055160 61427980 766403635 652746129 605739858 648626678 996871293 533409587 134673187 422603628 568777532 867213187 732037257 428415068 469251254 52591063 352792090 261551047 589793870 225452383 472855501 349459419 498392543 778877428 287206384 341300665 27644679 131986193 650908099 840118085 867021942 560615289 472053367 971125732 439594464 511163276 36515731 884470166 388760550 979084123 119895689 612381939 779358999 6380073 190328600 734505538 150209152 388774859 515849925 386442185 476088582 574493722 416543171 391632032 237868160 270561036 225455622 695293394 351472072 536493163 819055340 752132687 98944258 269445671 856366568 473573233 17363066 70444377 189457457 810652465 517784123 671615845 721505320 340142513 116517902 18325149 420945696 592448009 931064332 450215272 510228727 222633623 890149838 836609587 901484836 496522702 200235790 147930241 354616551 440595727 10117236 116421036 850963068 1149606 296139324 947728743 750147839 381741854 896480903 425837392 906971896 942374555 17782900 406694335 807304656 46744420 974156766 915686561 70410553 543402447 917845221 101762120 278462697 553316954 725577567 650837437 191499181 206907359 769665304 469355253 891945888 412878978 2732316 831860021 519506283 204457976 53144396 505129851 948627147 977707720 832314095 835827934 791202391 104099591 554152890 317862282 512068422 137636937 326782936 769770366 599047237 427265593 850701526 634797789 615676698 547416083 47234338 274142442 99228005 57412375 594497458 671175407 181580128 330434668 565130045 848129869 721394679 227414717 381075099 145325894 69287036 609651058 52797167 897338459 227145441 232098036 694627070 863637566 632158453 416899108 263886686 225799682 700687069 327511502 389906587 331985855 322481841 577855090 745434435 498793771 171874898 836284638 901444432 497645263 487812582 600065108 939137428 288173711 361484795 181918768 343642981 196740144 616635623 772794682 402437429 38175467 518721291 788701745 422477316 777011414 325015155 701107385 30201341 879019800 970989216 103654254 904467929 199842528 663060662 460741636 905380281 50435831 689510233 931381341 659830165 208142437 585522455 561722540 788359477 139498305 471415531 395855577 997046052 125077990 823084815 408855647 796807907 290699909 503867467 685645641 475375314 749590469 29006678 949873014 709415234 777655006 921106331 199982447 808490709 694847995 403826999 572749474 672290639 959099001 898977817 432311942 964080095 4747489 925224416 978117665 845765467 67802496 305759543 117457333 563992794 841477365 994170515 349837974 60936212 566947326 579594852 896056613 781918826 833317502 720943736 151250527 628405023 532733395 975764223 991048654 638439216 304979760 966184075 294652659 182498480 803180016 786784613 841839847 553675740 426315001 701275904 51822883 634070328 266162775 509358360 542878726 327987277 98519044 528592161 149770946 388800589 928645188 538893378 372960581 297541391 71356697 736777515 197790467 20583768 35527000 424772406 575642069 965636315 998792794 986578259 341517452 638106751 219467167 722135481 896649970 834220365 566852481 94675857 61501440 194087781 142932718 308230230 506070877 844766457 143663382 680987384 371160522 862269872 944099585 404385112 595452033 107637051 684743032 625443352 222404882 412295238 73472830 310903290 672496242 894589392 552362540 561832110 554528450 493435784 438781358 587219389 999117732 843786494 24226052 672669001 801008308 62649733 167297407 561495292 629354585 495399450 850545314 658025148 199602564 701682918 155382800 674618440 304684516 828519967 8441243 220640043 41694837 59940205 619542429 445061315 348147650 69257629 289612148 700586538 101795140 60476176 234649777 892349884 269177935 255379542 259208401 15938295 143190678 497182451 968375622 636507535 321874416 512460381 346814807 780541542 931294650 275987166 953903947 920062036 773142843 222052291 310404176 432780960 162511414 325702667 248883486 784782826 773218099 608418037 606797250 808505733 400968836 927235062 544623903 270567895 123439915 134575093 276504806 358174402 547874070 323090359 968510091 883926731 645793111 576865523 889065131 836192329 10076775 277244724 968598448 193280613 950014024 759041193 404877976 209269126 444061353 541628326 824095089 533434450 387330033 171400940 159066207 322854547 453262609 970447108 397439777 952768471 956143449 78523515 863651543 740681089 818792598 30111720 62619537 928604984 421886268 425302240 74829529 374688494 273839736 941017178 698437951 326232886 325910083 47679169 436742254 559730601 430272656 470290080 296065534 346209786 95227395 993974190 151816615 861429939 392378505 279702777 931832700 906193060 831903860 323103727 380599362 845597550 895436163 961391053 792023014 90188602 317116135 444349954 353040257 826140975 325315391 20672519 929196405 82528437 143761403 513532677 275041248 555067219 957929783 468086011 248281387 399524252 236261444 585927157 112363919 731993928 536947828 280484594 777366017 623792940 634833682 64010179 285387882 611834080 422657919 388642385 269528815 572123715 408410580 307126910 528617962 596244193 238811466 444696811 995057573 854680446 782454035 88156837 122079969 280761031 93069055 138590051 115315890 969822945 107893036 609077783 595985227 601020911 580407712 50088692 436004785 459145980 853677798 90283346 369195653 634784736 66338871 458590655 625235355 783137224 482913029 653460828 346989747 141409189 907815983 249057478 909899011 548121174 959014760 642509134 357929421 587494216 254816680 56387312 951144824 959049946 61558108 394276685 513325338 770065250 802502889 314256947 740006484 396984986 512976822 888163706 422812674 949659890 151851321 747392916 528821644 971837996 659205502 934160517 865962889 451372382 342289614 929368777 402987497 314992698 664012054 197226725 318101231 393704473 747695726 417451240 467107764 688615578 855956759 70363085 761217278 382932183 131790378 992456484 967111179 873819812 226485640 314339728 635060264 895452149 166889637 286178509 667254058 963625372 789625968 930010567 27254373 267340160 714194598 354741565 434646193 253944243 80147287 235426577 570308862 513502887 967849132 166676155 573153764 978544272 507093048 941098614 639750519 813651818 71277006 179633306 682663560 831180523 171006360 34424060 948934304 723218776 975978048 167686243 98961758 135623021 506471015 103133914 329786022 249213406 805284325 900406166 631478020 856528367 472664860 165626607 863647052 451436883 542942706 934015650 88743176 321971366 169258966 151397432 438648994 366706842 720080694 264583497 941025649 370106804 633724084 893574416 962951175 360357191 847312800 587112211 824254339 486811582 564197440 983155201 711857409 465029634 664645146 747351581 295042653 477779950 738450054 680172488 742941418 557196871 646089331 563739183 830749032 311844659 532523663 914196855 13567093 810212972 324088164 484337864 360713664 408099151 173421260 603697492 487885606 951870780 508918893 795940041 467208220 314249713 186551379 754535506 62524221 270794930 649771815 943627346 127849487 105479633 811453980 368821839 483032909 298906151 596802032 514505434 326136122 50616610 306264988 878707571 644982731 106748675 960335481 332476708 397399586 648184892 450986964 257286840 959295150 796756661 735591219 220697839 399746657 399074541 461556628 12318333 970606347 533529692 69974657 35745546 376392179 531264809 118882186 190563970 877452118 463309837 588790990 474001608 904248759 644649637 654721913 243878885 997138531 644752022 897613032 577171650 822488178 158649765 733794900 163331051 941040812 329000349 494941491 435706951 680128594 827558337 756054244 906854033 676764331 942103391 354001429 59381059 387293418 339649845 248595290 365563161 991873181 256795411 714492207 549173545 244297532 954835588 301404240 833038026 105900660 11101571 250185853 439351938 582691835 226414202 49851476 627771301 255120866 929747696 185253397 971130479 306195043 771115891 147636789 311849493 886121185 423415797 934310621 674364774 518812876 64457962 428500674 584211478 517560225 24871596 151672426 297172812 740533554 28671205 934301171 787359523 485670187 91704078 668696468 839349555 692095815 542051836 697477432 327513571 295745682 282727956 90122235 904464498 667586934 239878984 663606045 232399112 133763403 127754435 483479895 601217960 220971511 333963426 344445062 749422179 774853299 600915309 816184537 717913667 219103548 866549999 140725100 555627298 649388359 720182457 77137920 364285741 11449988 266389343 492804774 930965172 793147535 165123033 276053964 455390780 839716416 987083329 1158157 865668903 759374482 830189090 924849777 729306933 589016624 384067142 603021787 728572178 201450080 923340760 674073550 595025652 652467373 467661209 649408514 632412715 416261811 164088141 582108329 538108696 213169520 176690211 47418343 886281980 536360081 991113102 304112655 944387413 39352162 767813700 343865982 301528572 170021432 246585190 657231566 191952870 714050145 581487324 917990250 194312339 520933469 999813832 907086939 365437474 806725131 254187991 851111647 400950584 890587806 152299896 894859952 962209 125964842 615502720 165852648 521617602 229943059 974498918 520557425 768916112 767628459 991397106 784642073 860021777 412756201 548151418 394832094 115725598 347570908 813779391 469775406 751947478 835362708 679299155 317687603 556044733 727034674 79526123 801040494 722161825 156215421 935805691 981165769 220098056 503173805 780908321 306960534 691668251 930888294 406266293 475755735 146387808 461045118 825275307 88616238 819022516 962389840 704753877 258464817 408781249 501774292 337334915 538050366 961506051 531026179 589676782 355080988 945306352 673891172 74705477 447975676 279147798 662777949 411722407 232702264 934560922 372592426 41147464 68367185 953385445 441687449 723375825 577275684 634239206 365254545 723365734 70510492 882712938 611751718 887867151 348985662 608221690 29334853 54154213 771313063 751132664 415664750 92195307 297187962 11704364 112701037 700978121 524020779 510202703 78082266 633730678 478749309 379592777 811656212 641175271 592379835 163049234 455681878 878170798 974291481 319284311 561775293 928486749 754180353 651461784 981920312 978524039 856685547 616708322 705727514 264768938 64472895 464709641 838499282 580050873 597590366 488943000 736551845 982206907 853853866 125262774 926337975 964543205 303218064 532933252 201444298 385755739 652999073 795017338 58839672 870712870 839608254 977533603 516292372 737421907 330466415 705594477 244051873 881401877 648697612 971630318 241371398 720277725 612231070 654241538 292877697 146591061 984360778 797587663 97050336 864161573 339405947 453531526 423547988 816098417 630563908 212029570 786721960 922209278 318156037 164172999 19529086 53982215 253877585 586544045 774881300 167803645 630761633 987470461 237996178 294324924 428980577 803976719 14584770 464752746 815761926 231079016 140569965 600183751 564999629 389831189 998458414 915515050 282794832 348099756 257869667 40097767 924747142 787322198 941367223 413287973 835511276 121507772 419952614 840805962 152649511 148799532 449062104 340051401 73259636 168999873 907086314 895894694 970516869 333439872 327418864 794208925 733229846 86631947 32311709 583330564 823767328 736835741 411606184 948575244 87465159 826829038 771047517 502439840 972635857 814398946 469421379 898618391 905776911 905572354 436192799 373061923 350197116 807892240 947006299 321440052 241482852 620583059 211474150 394992262 889294775 694743251 229487037 993828140 722760318 891804906 675969179 769835937 786716662 181972017 602516116 584231702 712547759 20353663 487555368 20136425 16600039 897070395 263141949 757113009 788879279 258730541 383779990 854491223 261914914 972760919 224234694 324837538 778195216 121804793 428802359 38819093 804084045 496526936 136966371 550918201 651213640 484925757 538190760 856124587 848388934 78777194 980976312 856291041 223104534 861131604 688513217 600812863 509041687 686977178 561417822 300900540 767504309 549597009 323687595 155876913 149587528 272547320 619089345 187568859 689156392 34597376 787858624 140878153 855842252 616493290 802963444 582846399 644757540 103497938 752763867 487297857 78626666 575551990 508244471 552412496 511569558 576420800 232289431 135856669 486691476 96436775 261105339 472059239 458680885 138855560 188138163 970815535 934198429 415878376 365202883 230171107 692041298 650579383 613833268 721237922 495411809 935515718 794922455 795440204 885935595 331190967 747814155 814141546 91523358 207606208 694195423 459688440 891802032 677469103 396208432 127488424 812588871 551702735 719458583 417236085 698756131 164809258 825555220 471528634 28458629 172927566 482289952 293182070 240894023 664925863 941979598 847038024 796729511 468045988 100622493 628296398 536798122 129251304 172740470 816931528 412135571 937371721 362273472 332826727 244592749 332450659 6390316 823649327 42587221 989943948 812383693 709385725 223651399 309313904 839525315 857364489 134704246 325531704 577472972 786951154 166895962 819965364 252875338 798799149 345982767 377185556 865095834 322984966 894193933 967429522 626535929 844038670 878321065 765823630 251320000 457323693 85722179 757196302 917277491 819766021 968078032 257556507 52902248 595183721 480932173 351627407 418975891 259708263 881982275 235989478 122863724 57831130 165383217 351207049 113679365 407625530 486823524 597039339 195980389 630883284 34344648 263139548 730185587 168222478 869291331 354115731 132660035 555694468 927795412 750950473 504375722 310494243 341770680 629680690 973525319 999892414 386448114 665683643 430235074 357710117 671458713 139033564 610760207 624099284 818677306 735005892 570463418 210169944 967525176 571302449 460685808 702312747 827510128 967209817 212212638 103941151 650885911 214567018 771988520 955864461 703888206 25011991 615892505 705673635 533675309 419447962 601813410 641763888 258963670 820312942 733243650 312148974 278539275 802935613 934168070 984986084 394985701 503582886 115919963 914464578 368024021 963828175 841601287 578631438 455105761 305460011 312051626 907299613 124577200 771874127 709515900 34100509 86251227 482841628 496109161 97822494 540871568 796408761 313857712 466390983 719842202 332078069 100078529 172829745 50582155 606288820 169640562 228263657 919456670 297758741 835181408 624813645 688270368 194214748 772675673 542422435 246424546 190684321 960948897 397719144 992556448 985627655 598580787 624710199 568584622 423529256 906241113 759113116 799629336 415307279 263015021 713260577 745342337 895127230 822650829 474035150 241925970 286347930 749597291 567337746 968409953 983579923 25064262 284501339 154141271 312384809 495703658 146027649 679905562 453160371 256027053 401139178 983491718 364475283 255947954 799558008 583823515 233480719 753167744 933402347 99997144 151339097 978802531 211369977 226312366 353462369 892202134 241447 54386294 861488642 864142673 509359093 225408888 405116242 830963162 991357657 771063971 791149851 931934941 936787791 308116620 671025650 59482313 92978375 723230631 323905067 220438985 469823322 361162084 190389741 272249747 298404962 737947227 421277010 917216981 186537174 262868663 675595782 382512948 841730653 876430129 552933679 699593583 595062478 870938053 29508096 77801878 881390698 14405136 234862612 694658353 883475554 867607689 746981863 702652525 465964315 840615836 512942172 156332430 848783577 819861604 857556922 762529430 263508642 522863575 877742862 723934625 928575156 544227824 102296497 870981385 718600068 379094424 542496232 715803836 269141972 642357498 269679707 620888713 874140088 163786132 909768434 600752258 350675567 519699624 238161513 2798498 595023497 472793119 314415792 975617112 402788411 340595705 193708462 22885868 792536215 279957800 51948120 423121349 116050542 818478754 419830741 243890396 53634645 176368961 262100269 431386385 970106795 993649157 271247972 852538936 377396134 400053290 238119505 942895849 113242880 574147098 57816779 337149681 494692150 189395095 944100126 759973090 103363529 769391584 685069890 42056645 936171136 742449218 80709171 26615597 349822408 269629982 763939448 886293583 643745889 801423210 851686851 153859708 367964129 737503045 67066348 892832777 651865846 558153354 9740521 11351692 102357384 584571507 889720186 741538297 949761087 593114010 509262242 451498935 955280509 641455745 518286384 746853897 314320080 727062592 816726483 30246221 141842001 395919413 227039503 605100100 375229280 922580749 570502542 118940669 372957882 199952858 341817680 743973745 722294824 999129666 444971942 797234311 839829325 267225993 382836257 443311341 42009413 66483996 220016669 931184628 922677640 498709259 856363691 596240337 604517239 591415379 27864740 536758679 450881462 717037334 69967333 904730966 697997104 300780136 34689238 151514611 192260774 481567213 913350066 68009130 23264276 743016739 844073995 242039769 339602779 256754235 385611760 588350756 549460818 881947494 658858448 175045213 384141089 204724224 856956627 362365635 503096989 947323097 220416095 486815639 950097279 610622722 335367935 180070149 181189761 998937458 718224577 598304217 283174283 691777303 197447122 422927128 822344909 136863277 291313345 91400874 254176541 274222679 961485047 724738522 322944756 584106712 778223194 929031264 683212210 588830945 290489974 752390882 934368351 485159905 322554613 462440626 740147607 798490707 652707552 382350457 328903880 114636371 887391853 371668745 318971956 682983010 153226119 851381742 838571926 229709442 764210995 275710013 263165327 236867042 809944600 976444924 566052594 704998119 393969945 405901074 127975868 954654236 832686365 20398669 320415453 852358799 400742381 32141789 319577528 228953332 781021098 222404509 810541585 897001122 275603500 820977599 383305505 784869287 209643888 271543322 600777094 161663582 553207318 570423849 454106359 550677786 409139269 513671890 260086850 38314837 191663607 235800185 840205529 808100149 541172488 577457298 908205106 654188846 128917219 279040580 671455865 318461569 709412951 642491868 887381373 920544129 550253130 520295659 959458741 146822058 78097901 706112716 996936211 731662242 71844766 769109287 493352419 722409444 690842499 439736825 857496138 584798532 789933118 382800523 656860140 561315883 699109187 143289143 355622141 158567042 12343407 986741707 952950744 538479182 865755145 289089589 384311298 675370775 638135591 927333825 963115540 824945403 824387331 543608047 761744161 592785773 654170211 969006199 553983876 332221357 700963190 419766442 734523352 901025178 673476927 353147602 122989690 390607600 327281022 907248282 362528099 827297494 854675950 621041998 718042933 480546515 253785158 589556571 154296568 820907543 68577120 322993237 631745144 860698752 331700621 914082554 525663103 955068506 237671910 16746264 398340975 846445704 778247180 287318296 382953613 766342404 897634117 455955557 384946298 39737832 120228491 204869536 560464191 512122191 647096000 382710480 818353378 863991592 407374990 240229188 712853339 151000265 842451173 354489862 79441857 263315061 907345044 795856704 898541003 835363977 823734891 472942212 45871400 155273395 739314043 804064038 308271845 135122388 987538649 875035486 913282075 818704244 122098217 525952383 796280133 204943963 715862794 261366620 884112903 544996869 19766493 336575038 265776064 321781219 483645810 3126958 195507530 532923917 278351657 328778635 763058712 63015424 939249060 205454882 936466152 901902800 477397026 781416420 775270214 266748001 90690750 319784833 947479083 161355789 643071813 607611969 445991907 404866613 83178106 884163910 72568220 739016091 310545106 992324429 132944182 738716060 59248419 781584709 806114396 242172789 690962859 992227248 713999683 897374638 877587751 24471857 113575195 277142512 985578731 201824425 7059719 33867963 725132806 544322773 176587992 298662892 637081528 537264563 894748771 755275920 535515054 126739939 72938087 144432323 709657182 996862813 607066769 470386040 912306976 190587204 666245414 857981550 516928168 864108301 358393382 469782027 419560646 402574614 180627820 281610058 820757789 472412877 774684399 539988599 612363175 517602941 613769383 889591165 283213258 82889644 540131592 603034722 747030991 896144739 823053210 310843743 420277360 477955531 872715111 240345771 948859223 488030887 323659933 725797096 946675270 558164745 866309978 914756761 863634537 881673456 966179493 775448336 474351183 265967107 483663627 841402716 185046086 743369857 497600843 678010670 706244918 18755375 150146599 956256636 829980810 380461711 674653070 69070559 555081640 529666175 823081902 658220853 291505409 587425706 695406826 929144185 316311249 535889242 636563779 252792314 66592464 957296373 716907832 107330445 677220241 560094104 292029634 428744724 920329537 398822335 903737486 407565923 370072807 240126710 764514561 603178111 900634180 100156690 277061961 454899309 688750063 90852248 133749651 216454057 357222355 159856765 762173142 738419632 323561919 185105632 312537605 109331938 280781643 233678869 240946051 928723042 938908952 259004247 685899875 370642457 623688659 748711696 863375180 206945366 765766966 745620658 947825953 357256877 340737426 888759258 843197318 633090502 625701717 314966388 227907187 481686603 713443282 692686372 26699636 865544469 462497970 32216546 423345456 531082036 551004592 864739285 654775296 547633382 812904248 242614363 761636838 278670881 442078418 489398901 205711841 217143443 587865271 6795724 664793703 277159837 145322764 727821971 561635435 270886971 508750796 872468936 863839426 652250923 491859127 461402180 752704616 281465934 866158512 8218592 943246233 361437 510799200 456101770 869145106 367213984 906095071 576956455 431641554 490799182 230389789 266274392 462562549 171863401 650777178 547723904 713571602 388380610 970036106 738791527 961332402 712210767 834153924 42790574 177631035 732578555 529019274 660344129 950793572 389828493 874684797 548355852 590745337 64289623 828096997 46907775 257655646 583698136 399020899 239957285 583604695 180384988 726622754 368714466 189071425 29224895 920433960 595028978 418976434 662459650 793099409 343820078 333159544 52725760 586023931 129470160 661557275 641058527 461701704 711310033 203848249 343237112 685907670 170038929 919762461 898617716 248190597 621360382 198251338 346985085 787465445 637441557 233146835 226595345 385915127 928946272 232889488 860005293 382322938 959342979 980617251 201781236 19591840 87661316 784640784 505317615 752911072 517606185 418182768 720235114 626217525 722227729 798861668 784548571 276404851 514930023 351241053 903621686 814235299 667808339 322631523 110991422 776610342 378446637 131072567 725733337 186137464 901197734 981069925 643088704 958961641 371398606 696564441 558718698 84722518 378307693 260402054 939735028 380727299 523485402 989285490 288742551 601115477 498874819 878250644 740166079 665786724 891390166 802111079 926560919 701508221 580985735 451456920 278262852 659805186 839299875 611789920 475399950 637676846 741685845 191953190 384131503 605249592 966655803 596162497 960932523 539444032 85691237 681306971 691107985 349762715 383003894 859119466 244137976 848126584 793783709 746543214 88464678 504583231 429854620 258043317 953671711 322581998 127945323 375629435 106169811 229135549 519215498 960737024 135361247 62200279 402964499 882881476 925608371 334651296 188011668 467036587 179212118 555877346 92036372 446152510 799391687 530211693 934345686 349873327 929580952 530651103 637372826 863441255 632745372 299888018 766123700 821077238 598362195 264601597 335326402 718917622 234869969 720998016 121690601 794738200 200901386 672956578 757708618 191454440 433699908 983675000 442003637 532979014 301152287 124557578 116093385 640845322 551254433 496409840 95165149 369259250 285335951 253193756 270804088 733892514 782741681 214623887 160056169 426014100 26204885 56537164 84003722 881480046 708594289 315246016 844460729 45847561 225213345 131210272 40863242 999714782 733954060 47773318 62310625 545308643 970687690 482712587 937748087 350583581 517037796 776332283 582441729 68441601 989005944 300238800 659975448 218675377 958846461 607674298 473009839 403666598 326149337 151309749 986182088 41632 750073966 956019650 256428494 119909895 748137006 384926683 177518312 619796749 951568262 991160761 639434140 538185645 554204998 719820321 432831316 748240552 899306243 862580939 326437154 972504728 5097228 840278677 173746093 985274767 18939495 640250880 869016526 396678489 140652903 939642982 704085568 887002551 963462819 48429163 706637676 356990608 451912075 490768498 309457865 485552841 408518642 174911880 482215064 407219472 603827990 210027767 63179492 896392736 295461742 461379908 322378091 427481516 628089843 210136392 257653285 393523582 998270404 149919971 913667658 495112446 476465026 839880404 232952546 850381947 450118295 598886171 551944068 245402441 652900743 610868300 719558753 849867786 492041360 233898899 349043602 295990859 759684398 674112563 174421567 29777607 874276209 849483222 337679298 157664965 363914570 681776942 835499407 966457887 741419134 663406691 191940817 920186670 757235989 42892087 990457564 381735232 179296804 609460528 641943726 667641276 359242207 220034852 352870640 981542703 559910061 56723015 647650496 543133855 769581280 425523081 152532518 748162179 386557446 718996257 496745244 26684799 327924734 309625057 316642349 875135049 966070565 419721096 458471952 809249437 663939167 925544818 223416809 35973877 971729110 664101938 553621649 672938670 151586807 450863787 481764961 830929696 355894275 446899671 751410052 243350870 594146190 83072319 502758292 837532733 487456209 463803047 896366366 403848054 22432172 695322490 12737069 691052454 146544353 441411817 722395481 901267998 346171011 324820750 798843470 301074555 933616008 214555757 714686003 790238393 489905642 847214720 322043278 960643744 484883504 175015570 877874723 737864557 254848417 649803369 195775386 350389244 274399432 169496562 857586897 243442627 681392927 932987447 634442967 374735392 643989230 459750968 490537898 58152389 309111972 681876531 928721652 798396802 279021534 670595739 164534270 142875533 986523494 240135547 221609535 607509292 94378575 782617279 598971777 605424546 895538220 665394708 794948449 234261052 785189929 485253453 445902661 281996655 985865390 433059606 641813514 452469816 764387277 456605284 131324675 652072359 289955510 839322384 427838314 67500035 314607662 682916195 787073717 704919473 109365321 39569878 536751785 700873884 87891554 727811243 322111443 867162664 252202499 670105389 984084503 339416842 838925959 578187352 327860937 268994447 173892492 196817297 830042879 832907 767758658 333909314 41154315 600542622 181487382 127916618 975283299 29101679 313222356 94604897 875116996 581485341 889930886 838211434 130951449 573083804 994527827 384081880 5310853 334755624 634344640 67962252 986031831 390807941 789136957 665748866 373711188 171043177 758491455 749729624 437140647 536107402 572974280 642647698 920755036 9030961 54664357 337523969 756935429 519112008 559232842 848499927 244943007 385656266 47316786 604683364 94876999 63763468 469717422 9162847 218202966 688072977 67736988 11271009 885499328 711425692 221922890 843808086 20734425 138769721 941513795 544775545 412510519 474214541 180714491 713247401 388324611 88289107 145426220 827924175 89916677 250355224 526341512 618455964 298489118 846055249 715496898 7947018 909214356 496378946 321007221 365133305 266209681 728027230 975452319 781156020 732487579 654529824 500473961 757956768 22371689 5400984 553874803 784301536 946031830 896824698 794107180 845494042 181783945 895344048 28901387 806757977 984790895 610822587 928231858 101742545 780040392 957172651 693448642 404962228 317566236 112399237 579600992 450178439 171217600 76236822 984688885 688342802 963122047 48313147 45418130 113934095 992134774 259656314 117046026 320413542 650063171 885451378 294371601 707366238 791382088 437801905 937862072 830700389 944507238 124623882 676292648 160589494 68399224 777392446 724893743 310016751 698719372 979838766 405056380 955546103 315032201 627633989 385186400 768684793 711769180 308846065 896750882 973460625 147834738 525883954 680023249 359581333 42970975 511863107 634192988 739257591 917298185 305413675 437022062 878653280 684078450 787757148 275093443 389688574 994040687 902794573 999187709 862820899 69644289 477696421 613915030 459341195 704512519 316973280 11994259 836309983 238205776 88256843 352884849 41889971 368822436 897675921 485347595 435333914 693064838 327597798 327721329 925452190 249262 759441010 507795119 530416363 452141974 476904821 815199966 136384193 38473560 73681971 514865226 964294544 973558271 484810317 228096098 946778686 686407634 325885967 445753873 574144483 7008198 628601082 121676168 928733745 683768999 776037505 519115215 39642113 133963448 31071222 856593733 97054250 945191975 733797252 433857792 999286349 455907086 127802183 360954337 922600770 840774023 777578422 138956350 547186700 68584871 771960642 871218356 542567546 280777889 198390345 409739477 590044856 293547821 815402421 379250486 2531196 250926525 730325007 829098773 367516913 828500145 195445289 864290537 353467422 327885051 65881555 72873053 780875861 58934815 889505884 131356863 785507421 29820741 520809289 207029587 388320998 91632939 802586328 801811819 77464801 198510658 284260448 586166377 291580 610553235 598338254 809817576 55073701 1990431 157334014 258526179 233096910 713559911 837667842 146330739 78001538 77902716 989305950 26428462 259766229 767020288 197248004 6930032 303760953 175746545 400051833 808395751 874677404 65358311 103024002 735504801 99087172 841876011 799386249 975563837 751232105 949661278 461104096 53607786 899724508 287574833 363665329 118895881 269020986 821545871 347714208 758883538 984779395 300091858 924466447 552380403 503655831 877961264 218384927 480980877 591900302 739250154 36815088 57842187 612778948 857287975 293115031 377374436 361014505 835486798 883091972 105559160 623402101 411310176 858729864 584349115 736798852 283079954 434168312 277721848 799352205 504335630 481342415 731738055 209649332 740526934 406068908 797668549 698824932 141805358 501025294 937650578 639042249 431706022 636299016 384301253 79123509 14530032 545511009 626428084 337437543 991750009 223998200 966506484 25793905 330883679 829715286 17795619 394004340 997180715 459888442 872688093 625511110 750227075 421574894 966149287 771584428 722770910 668641503 607063761 365234729 387981316 639839021 547006231 725132854 79107602 928095966 888587094 431110601 237928903 248093640 54029363 983681312 845458612 237469187 848614394 828211293 549014519 806503869 983550781 776425647 504403125 112985398 45496683 284295982 966945607 228026053 138702463 454122624 268213112 465955638 477448855 97347163 177444025 155215298 297650865 316009178 838514275 220463873 146784840 665316053 724735551 317766599 749958860 359356281 635855572 419613990 136451324 998735896 976912626 311801430 489207679 544990854 412779327 979720353 985096959 890711314 182456033 46496043 431015912 584072310 636379547 797791507 179960986 277722139 934089204 331094450 678267078 695452471 107331558 191254759 955307411 846656737 352846086 437379159 930923280 578212114 813696404 414764942 321811907 104448403 903003895 528425161 238347843 28638816 22885170 975008761 998379571 26466226 236413510 804091852 71488492 98283565 128671049 765372691 640499684 958678813 919249980 858523381 431732183 706090517 280787609 347010380 329622811 194570539 70207288 95249585 426954100 402177271 642775868 889169902 244048550 424491065 948877422 514333798 416295877 253703322 893062410 165227221 437547568 85637718 631378600 397254051 673236088 409150589 281184306 437294031 520005812 554424932 479193396 945357796 349503434 255571821 960640886 746363199 823116827 361787711 774181918 300646652 567948955 878758742 469768239 434124866 577552723 896376075 491781892 579275278 16079216 981254178 219011991 785051354 157927031 103885207 341011286 202182768 569244325 897683484 957722835 850566548 808651891 321562546 451829780 663124122 38555157 190115876 432201663 833286327 387269163 450541494 606911842 797999820 300593174 16097542 57239438 985216729 561361487 179093100 156238718 632473693 735069584 953995991 595778983 614185712 303494476 609445061 336859965 857470122 33605864 421012164 625928134 449543430 764781476 223358397 138187792 822406653 793884011 61463626 306300308 717842101 869698851 78002372 961967070 283535951 643699332 959270454 797614728 594928072 280661162 218633561 800977035 877266748 29076677 226194466 6036164 744854120 957357854 312663721 384079089 968402075 705599366 324605746 43224885 833462705 130285081 752984380 982220741 541736555 742660443 205719008 241426504 174763632 730481393 964573268 794598657 18261406 26099238 131167559 205879820 272873340 809120004 817220849 624081480 448106941 389484625 60828889 323556107 952552785 370262097 766848930 588740556 741855320 194784942 149982538 849237650 475736191 84578701 364452056 744010784 846545661 252230666 115280742 829271997 958944123 830651847 832304347 860359125 18314001 805409330 364817157 101841821 220819616 799547697 804770014 200745538 711410568 836102091 611281617 714867600 451176691 611290094 660177169 370972249 160659206 452910678 555850101 387687825 800687684 689423875 855198106 465757245 547892149 143777598 242297067 436087691 815657964 183809717 786217380 896741255 689088869 237331837 812641417 52843115 926023178 610670486 961312501 137390607 251259667 306030332 445232842 491918788 171513368 358667746 671954478 880495716 50032182 144700028 227896965 700116488 624295422 814037066 876642101 349981728 506828397 291349364 653356464 936197721 60178398 844382666 507354263 271478188 576340259 70780841 944818134 935971016 704579743 458471385 492303915 473451666 344367629 289324549 359808018 122954906 973204482 576052867 789232779 740596714 59875288 262638220 164029382 193383136 643297890 854457484 424244930 586240648 286632362 384102707 522015402 951151973 356133851 523633367 321185816 362338728 945820427 844246645 485512850 145667699 116024377 838667480 773996671 810134493 946853517 6558768 923433248 376773200 204679006 946879951 505073979 77463534 675836420 372008535 553730747 702873651 213981739 178189744 352218904 713208837 85537611 626566504 824903846 660952758 376041531 865780283 933927091 272445173 375426948 786707134 870485886 620664474 778687996 258647997 149523607 699394418 662530746 659093876 807141893 269657719 308928506 896940321 761703897 364262384 164390246 688494370 846344088 131704085 787099716 966372529 973997740 414089347 661205458 525621994 793719053 303179415 633969567 49399539 408423563 619823556 304582479 85572553 697703672 884335053 427959610 162566456 421596848 666066573 709559770 447420257 752523214 388791773 639367175 570589276 683340528 540349754 898825794 991973044 872953407 711991780 259641872 449473845 297246654 500148111 715322208 885771857 379978117 673954195 179851964 948100902 550674413 92475912 224988720 463685888 102764561 311144890 651180115 366163468 727806017 412991437 93585508 76461565 813560558 217063919 975980698 113751237 774223733 935552870 910254544 920834800 323922978 440007021 645833296 121577041 58309617 205746064 635996629 746047956 422217157 298333132 62749302 84793622 481317709 317554114 149516149 609129922 954343180 585079313 994806107 131182838 739784696 561435949 535814699 122511145 307105707 833130934 199611851 953592485 235389745 969476764 629192000 66609956 498123678 689329539 457128324 250754700 786476405 840589409 566412474 783900540 200523904 77690918 412335801 765721080 389488060 39657464 847461476 872172030 297292328 82851217 445041994 666906054 477518261 60399747 298524970 122380397 868661545 981603584 539259972 110687333 268304966 468687752 100253604 468465853 661022721 755789836 48190051 527786160 831630079 128678690 269567980 690419518 568146378 834484773 895418785 375016392 425676217 324437694 395675812 992931985 560351204 699367536 727120253 667476988 790458592 734134985 901553328 10716430 859780842 844915863 18725203 844965861 982285740 845711630 275911902 297230482 75692543 799937568 963209873 672886117 868787536 149912249 546219095 837625805 494533096 21509078 833892164 330238486 516517517 724759039 918925734 676309544 581998157 832290368 458802937 161074965 758167058 119004146 910024136 902331767 669554489 660377044 632223337 368349087 197288699 701062040 654892131 258907366 919655158 4241366 401235882 765145124 619066861 765136745 853483447 373660773 724203208 559237048 571544524 236403201 241459146 921451021 913220486 451321666 810240001 828142546 51728756 115242118 343482637 698722993 522760464 733395198 238287561 276000098 36406742 616942986 791625164 563205860 913637248 65380157 544419451 325878344 850288403 669649683 913329242 797103897 933029184 209492648 511443067 545325737 895845146 336935189 628334559 645548906 141538146 955601696 45116172 580620934 513844330 284297735 62462927 793747017 519589848 234668435 154816192 973855796 219385214 941028458 100918612 444400473 687482933 427987380 87487063 55900276 127821178 718145785 872915198 496045274 497544844 638708570 6205638 525822111 511591710 751912564 118195372 220975000 662735835 329321609 630552945 526203558 75176451 313145612 954489298 643845168 358516699 242099630 645917012 128581457 59234753 850799040 24941828 766374784 612004495 478335925 636986731 600044031 659492616 280023653 465675880 872875669 302031450 325795744 64402711 450706755 268590240 482982170 272383658 822164757 581436340 522059854 226205033 273020378 575984100 600973727 149139442 604811095 855672361 151362221 773319338 779619154 579688708 953939423 961799751 766916726 650173034 347976757 946906662 431669596 25827375 359290644 277261642 798554660 990459021 714898248 334052397 832861570 125913010 716976507 855900903 649539632 802078705 801688783 110032909 577436420 963240881 798189032 634176587 398067545 411336857 60140077 474280250 907846801 853489867 778107924 737831252 900065499 187773475 932977296 577129556 428045308 383951905 439268145 597831973 438848048 355878333 175625089 119340051 217581655 164968937 277630329 488761442 921052764 593903719 177845427 515156617 396636338 771643331 970024276 827484032 430176008 679175392 482172777 711592383 243045795 590232409 480253527 543254643 723551492 647634453 96113410 506493274 780341430 91725376 39970736 303127460 475250357 568223116 502137202 398565707 888891489 32271086 918474169 436481558 138260857 234171888 999637839 799781021 864277745 295745172 291698534 4033905 26621918 759301367 581201612 279033380 760007688 790172835 668866090 326249708 764320204 115637047 835125514 148114888 138069204 210798581 665947280 245639242 806697716 424602302 795898027 165220671 210485028 376200300 960129854 351993776 692492203 764471081 997187363 206151017 95664974 42275183 495981478 271175297 850083588 176394614 836050284 403515078 244507426 28228611 592943355 377133662 139645684 248160617 808069147 276314344 878751418 506563749 558941485 570855981 583393557 192756008 271744884 61554203 442679080 219848936 313802343 653245262 752520013 798415618 69346464 599500277 184272311 27531344 655452932 576416250 293120737 802641305 430415587 500095361 779701262 360980645 429647496 639126057 748301942 97933130 557237310 140509089 360154458 926479962 89060194 364808789 845868929 949808656 200890940 878511605 394523766 729735591 600695322 384943365 710377805 59983942 744679199 139974442 8181062 220621625 93753764 7357085 395191585 486638886 520788487 362139774 891645767 711850876 830403878 310796356 297379907 135910896 333656780 577940585 777490372 332007547 806873955 238257898 77302907 42548400 957780706 804834964 931962428 342993813 418007871 349591921 612414852 953912025 199652487 166621039 370324922 736717290 797856262 925046160 297232759 842918218 544038992 900456319 424191626 647478313 586133575 149406325 785287085 798074109 445674772 511106744 162241043 920205197 724930579 297283689 95134648 483084362 13393808 76899043 356876729 952655594 749846257 526249288 983813783 416311178 920176920 267024328 516591108 754561604 855596074 964233183 233990668 120496927 561739770 586058994 789919957 640331429 224067009 507380719 872602074 282292031 400249968 258749262 411420036 900552755 830202453 466189058 241735232 295390288 192061052 754461925 653063159 615569495 713420871 416975181 989990772 827097568 421250236 310503795 912109903 622192687 681587844 42006927 93295213 575447552 672858571 225453245 110835569 614460154 384769800 778210865 701988202 772838809 481174081 137618564 10556168 305889628 630511079 326563693 548024612 305723290 597391146 102869015 948054164 411441402 526575028 627836274 96139874 583537362 346941094 544772966 192412115 933575414 912729496 515771810 247362797 571479719 821819703 992467797 727186979 173282861 766657812 574212683 958759305 716559368 345513392 423910707 357243248 413474609 656728129 601091550 524137158 944477483 119410233 476483996 113123148 872841007 819260398 202180668 649158434 11213723 870865595 511388902 608088584 477822489 467893920 252023033 269958416 10631808 212011752 908383664 629413290 431671584 946467930 900616248 812147028 550420990 183388982 226364678 362636707 975279530 978100375 586426992 120185488 657070422 10964138 197774437 303264640 466900255 482629720 464180859 307276286 597003906 536618202 69878843 177498273 454934913 550609558 804999341 945996789 378665752 490598515 319746373 869756967 706577119 777525089 93497153 426394387 348709772 153446522 159621339 574601787 626375832 864116618 90873118 328093580 419406409 455795818 565739654 708994656 167397124 608974418 218812880 177753279 243817448 439962115 350192396 335845171 708212302 205447456 372695450 175880927 905729814 536770909 987988112 761509579 264736337 150685643 415640288 81573921 44135244 709626517 983731740 387952112 999848209 251814209 440893172 385590737 958758982 20083366 297833608 954250903 394330112 740294818 881751733 352511163 80743120 276650362 590263020 890432746 960139249 568975030 620962698 372758911 525150754 313501377 706557813 212966336 572330175 452207844 487158274 297663907 511360856 856256876 754696560 312373226 639113321 887289357 755090769 517182542 69456195 430305385 555424682 745175359 37786294 808730931 654193455 619018236 261342034 463702131 615518952 21119320 76999973 247252178 338079202 479780398 808010329 355068065 599420132 347478861 328757227 88759198 222093215 892095131 194927961 569583412 53729016 408704496 479402165 366499716 743258322 604141066 582980063 489366897 230905071 489788883 729568306 466357413 705150850 73365716 903475706 187439792 714204756 638859334 942082744 45842253 272477995 458059449 794764430 155373597 189413250 882187626 427046332 10237453 591851044 409456436 992932977 387874221 520435400 703540714 860610290 577629526 36165396 615182188 161980208 791953439 954606839 549280482 852434366 679940122 10145930 855328504 572299096 858767653 223937515 43972352 171463232 629763514 692101598 764735740 82429140 247499165 923448771 648827170 784378888 170003849 340279018 631834382 561884485 608347670 384617538 883851345 406164146 492822893 742673266 525817626 525634101 311994241 239322234 999108226 539640635 427699182 12242375 727543247 381431827 902066498 72801584 825879455 998442665 163463593 683125410 806602341 680549532 14934217 489677155 32624766 124857214 148360687 162007164 226189467 925797607 979375338 281998861 270771197 633513160 496206654 343694053 997574397 490435103 406935349 805227807 279364623 878622172 623025635 685165530 778101933 766132585 852203695 185412309 737844265 122928459 154977410 377628062 453165033 945873458 546390965 893396659 781883065 142290568 358260914 17548445 437440141 802474929 932692594 149250894 587961117 224088215 850428726 822891699 311761651 201020742 501125210 963290603 441097665 137796369 250024745 299331074 170038758 409825635 798205922 568884702 382293305 849145737 694954015 596765726 652190332 284840735 402892 494908146 609986422 190593132 153188041 255815348 932095172 663580018 634833210 238041763 257787060 381626656 571818848 77299008 309713567 514238869 100667280 422920782 66229398 952635170 876411273 543229145 896173226 227876389 114052849 14221564 693227261 280891452 319718644 343846529 436743249 290583740 882907814 681460816 67968987 973205392 573639803 858283961 189453143 686309554 517757219 7397366 312080468 988313691 785012164 420597038 721403610 138077615 77949547 203199760 547745867 248659034 721368734 291706622 207784462 351152044 130081679 222858488 744780371 386698998 68929798 713754466 891265956 154322483 970196490 298826331 814345249 106590089 108030070 209342017 932546734 3177108 193515247 389148376 512757403 896414462 624591727 922030928 137073449 469971956 383608879 487209128 84099206 970603590 643244849 803656240 793602452 685884764 790947554 726026462 607792519 415244232 845617574 129648189 361550093 442778177 836304860 567549142 986566450 608567695 79531122 771797185 764419528 117426649 581910572 391696030 539092763 898738565 397154868 799206974 915920549 253844371 825091892 456230 495389832 542887190 910726069 968818283 885023124 321265730 298084395 975739508 790803937 493246616 381546941 707280959 790298978 91035951 33472094 632431177 74131371 257988280 250718328 391721422 371532103 727623938 60544513 156508976 924022488 294300319 224055271 891426792 470705404 985118034 175324442 925083088 401851834 127534678 662688142 297652437 639617439 495675936 250087200 739783602 159485855 132719195 855620607 749409490 917015520 969775628 51487299 878067708 131420845 953493440 839713127 972095397 927602530 901878226 832995942 36304122 780683116 27942586 768367121 342029146 938720709 356051702 419112516 465057792 698939906 40110265 129541176 418834805 158224252 976401254 159240377 707102923 194356432 888638749 470285094 737182356 25132006 28835012 928274988 847281308 763887735 773008645 363146332 670172285 79706094 475855734 145361382 683968231 291310280 639638812 859501560 481671441 724612594 792723333 217761430 581342384 926495306 375699129 15182901 374836147 515346814 457552327 226726555 824590542 931933595 642033911 233154957 368430905 122863196 697214269 868417481 844107002 267762587 120661096 75438221 277447824 266137047 981817837 489812838 23697091 340660791 772168305 827265891 509622060 445533796 799028854 259895650 378037077 765116388 903649017 219741264 299296644 168860454 710993692 319435618 527485279 636398183 200720926 86615422 127120400 981934531 283631427 37951082 215008844 138481797 776293244 774744579 384531883 649494379 553971767 479020463 85100290 987997612 667180378 334954792 307403780 901696535 577317360 781400737 830535298 544345830 971585515 356390228 413958749 877414895 650965069 597034593 267880102 47949327 978811470 488680748 791977598 192964253 279290769 221365537 798880179 504291898 320922792 419608623 69251587 135640623 664503059 25113414 597146534 859709821 376445007 846456680 512035325 574186822 673001979 367684337 16600177 464247112 472621694 309122937 443277030 789650739 479397959 315399646 994340500 495203887 467862868 880120931 491242208 122306104 501256035 313013233 621449977 863304647 316836714 49076870 49115433 902451811 324261112 449782157 387884710 373462298 972207175 967176894 557654903 890862414 491009895 625538175 15884113 473043468 684110973 38657581 927620523 694278756 396995201 9016971 421095338 602777390 852963286 811152681 189128984 7646023 990523360 866947214 7144622 972316768 787645270 303351232 877412280 489724327 722977149 407099096 816876275 50225578 41398114 777416013 153578963 793790455 41105449 870687706 770332383 830344418 734503622 408116684 839571823 271077498 455320073 717228065 811791098 463414173 783401287 188103349 84314762 403333336 993211064 111751062 131215578 560906466 645024900 995019103 788426754 342343610 211948068 524030305 847424117 230299202 533906404 400091742 179763264 474971761 136725432 37732825 305505626 477960332 232692172 849393194 346821783 472460955 979785256 135307231 848496416 673995329 222226174 650215880 402406633 319712589 374570916 220838787 135029967 325600276 583459616 126221340 250547991 229939893 427192913 934964005 520573290 598031238 460180690 345889571 156342456 625002454 293874809 80925185 203775593 949238986 617240983 250960004 832263758 13418908 939544319 901673761 395031205 516049568 331293272 995777624 225843973 931854144 321929474 704850278 441372262 5356438 797272109 518460890 320195078 608445122 769963769 141922585 195322253 381205147 59982010 831130613 882663209 72936282 681331443 767021655 435679258 780341643 326488703 128788500 935977611 751255430 897273993 518906089 889683952 717558202 890747745 507041060 137943501 889850112 338452440 963127781 248257030 395375440 705424196 999161361 277718709 56242113 638726139 821875798 8713854 596723826 302843338 419641265 228887286 705497682 992736041 386404474 666315747 927511308 546116758 443831032 941907960 870007762 101170565 991810497 690538619 989906310 31198971 634790249 448169959 707579984 804166858 161925182 585418010 959052698 200972519 91716184 253145628 851007440 465840860 96984070 25110978 355357671 462190735 437519076 137473334 233053512 967347357 420115079 302237326 695899571 275130641 703834293 789738671 52023933 586288585 671371539 189794116 524655798 194854163 779929229 276047350 102693202 957783891 163204744 566763455 797135932 943978659 989396855 211990418 95549762 16118341 58593858 807070082 36155449 975146052 47572547 955562253 94568954 865785385 348442426 810087526 440694177 306361898 636580861 71406579 299814726 657651801 707350065 689266618 263429185 348703634 691384532 946700783 638633369 878851632 426994304 617603896 737357001 845117541 101276316 130574602 536501826 829742185 207136607 333865515 556097315 723536988 85034923 372922787 306514576 821020635 257238040 581336403 471872865 486629596 89275812 12584394 855161924 43880793 179419648 563313593 858235719 202838859 556557731 636695736 176930122 923645727 959159524 121834474 799191661 901770734 364048125 819766315 419126565 196785830 481469374 613377825 330297876 309978824 422739598 923030611 332499290 315384490 901228430 538998227 665231217 33987002 825312511 780159260 262764937 885655826 23378606 575549143 299379308 721529172 721868027 116295953 701502938 927427611 103288515 248025796 248154242 826091234 309607028 115079705 805919626 675146208 14243694 103997743 522446781 688351461 420093929 250517266 681901131 752395210 694142226 186979295 8642116 542256953 922838928 102481562 428227384 265726826 428366575 801078337 679598981 745450891 63648653 111788728 119823178 198201922 287404089 809233167 393174857 984007889 423732215 786927851 352633296 981984247 185528835 241399194 90123207 382963313 990790342 124572778 112139242 148924648 2626023 727349833 779944131 596815170 324517333 752041031 309123433 993869189 964802533 628443725 276161309 429007489 515791242 885186927 35154234 108812935 305751093 904286591 225486841 206011678 207227036 894559727 758114291 752660531 223881357 963746050 725471078 640287483 616300426 518205344 696669696 317604384 679675399 234046466 533730662 27784319 750779340 916922344 421929633 216742228 560864810 554778737 738751606 854240129 842977337 791177981 898681100 448085102 310294646 524541725 277084494 890195521 975993943 838412891 675886423 215929029 346799792 415238711 732220064 530476554 930893080 755620412 686570390 821575084 598857378 354951029 762316715 76169319 87503852 999015280 723703268 369258983 946866082 766066568 581898228 842042906 22595017 142185968 480712535 236878622 411245286 19202656 254375820 946072344 797922466 772028816 684020658 734018327 551614273 67251236 384421036 761870477 296053542 888844746 584465260 205164367 588808256 682980218 996073418 109098557 385980271 440882104 154998112 987933510 922835590 5624840 299267950 575010531 693389152 528368436 397917485 700425802 728199913 712477799 395930422 751946712 417065564 708220886 61520298 911598126 114673810 548831685 77164798 581920181 30844022 276468737 721604321 502353575 989800096 66320070 704465408 994478130 588465464 23721101 43213343 72235524 663824591 331092388 251473287 414690186 596135740 819760174 985356130 716318269 261194157 605943069 81072366 869517445 772098190 180778633 206245831 847688745 324224326 26059744 211269989 260649667 339896846 144472731 207880374 728099340 184617762 566371168 13044198 387865177 117099571 168377330 823581878 149040724 278400232 400838071 24199538 510316677 586922599 490704047 114324230 788508001 219984921 766139552 498632776 954473682 73198252 188140462 444652745 820256335 260162699 124874005 474668352 155295671 530752939 12042392 260871840 437195021 790847002 880264474 602139538 66858661 993457856 704275670 225594246 700763499 224514334 429978201 384603143 332316821 986686384 900962941 351692783 243237996 814210463 279391397 252516391 355847994 580285350 191849388 138680586 351018040 162229639 400498806 888730450 711079501 607129859 908148797 480689731 86022561 248232878 252415634 432333981 618068944 474890420 536157156 447811791 900543107 34154692 7482593 536546095 231703953 578740098 969631486 512162652 557424142 378761369 326507863 440476509 911846785 909500608 541593263 65665799 50315762 303572550 808271685 519046492 718221593 87359851 384573158 756423973 654619141 139359805 848973077 713754713 996462007 898049447 377642453 702150583 308092827 817936979 993967097 864034781 315148433 566484040 585124737 903192853 335719011 687181342 271586840 426706867 789696409 40998462 795987308 487670845 763405908 45194529 348890182 566453289 379055625 385887779 601896937 297436849 549645994 984482615 708679763 676850985 300881087 354677775 796846038 224851579 132688375 995998518 601272953 581412886 933261845 538660286 545017667 711910645 70041694 752331422 537269709 712941111 622255258 525503084 598385917 366969426 302514742 773678300 466550892 858623426 3227728 494648790 214964973 962989506 158643769 684721649 356550475 577596333 11698756 478981490 833490110 315711833 11363798 239648063 115415362 790069442 975410793 1819568 187664115 80737754 915304308 811130110 811800465 894920701 188467581 756693122 138342220 202858951 408189308 265263445 698647566 791750775 25554029 703145841 109456218 975464537 21924721 428501044 307274141 532460495 270210828 742089895 390595381 574779775 670624833 604077893 704538217 681788447 558859267 79961793 335213324 729332259 53538884 44971392 652028827 676097544 90166097 588717226 879488269 620622217 893552260 737785674 691788931 906230631 499802856 988648921 453741163 129156879 602885601 868141376 746767214 106457232 944251225 244977639 642913807 457613323 747916578 369067356 816567918 868731272 865802937 420272087 748823891 888761659 270173873 27401222 281129307 549147518 206393189 232107505 446826855 743202146 431986543 523430982 834748671 507168042 114941745 83987086 97351762 406314673 149793077 742254188 579404738 579112764 591643495 588280749 296738700 54980154 312601138 394564167 982731376 353191470 122441992 486118685 867181355 810956466 333629230 361582463 829135691 998563684 367141922 561583362 941459278 682485018 554677968 304102165 25758519 625855564 836377800 93522957 479618948 942380512 512690369 957839200 523941067 390845488 155332993 395930114 777141454 163700215 648121324 234876349 753013214 713842231 226126972 221439335 303517823 303362308 345903764 272999115 621293809 554131724 251226164 479293699 662384875 37518286 171470850 587336442 818040374 99737641 999576481 896482916 630645237 167815700 57604757 330974703 582529367 70114043 85822126 474562943 493465633 908675100 73614489 778030268 125674779 640604374 105107739 337513893 119146010 292508141 631485637 480005490 541955804 607919220 578478854 333414762 799044106 23534511 419142293 554408629 797496601 833080610 502047729 868674330 867511386 503258263 749671292 423268935 614499552 715056138 548615275 390817308 783625613 77462871 977434068 975356752 529887859 679450440 661549237 316324906 437468711 540684374 980169335 597797477 519452928 479768980 708616084 719351277 177586581 6601026 309575300 998469795 354166188 279553938 270551615 621742396 592012629 576378227 718747793 993664208 716352630 14731815 224316548 165072145 98008936 397421993 77138488 465249122 245193090 592978815 982928219 565230380 178714326 896137288 633392579 100750512 545808187 531105661 124913678 378312619 458230583 84936333 87314661 269681333 610755006 582154673 85678475 193644230 300664237 253356821 697830475 185087871 393485795 888609617 425927264 730951686 639062368 219966713 567524018 689882818 859121192 511988166 48032545 123382605 893482584 466844565 227085240 240104552 314800546 728887810 137281103 955379995 917562370 493792720 279218863 366566593 198947521 93290081 98418768 91745808 30890291 943072873 827448648 990713498 22979397 722579826 816132447 964305147 27466818 761772069 636844087 331046048 489813552 734160256 296235360 166258353 593978885 668403803 655766071 675059436 660959152 192576572 799084486 162747583 189330523 839525792 762349448 550747227 458510310 462187609 549053561 475281015 235187918 545507848 57831194 589087231 165960828 373909045 772090526 596563545 488545161 997697659 811804749 525640451 248334599 711120454 445036130 850095865 188137358 291870471 52436916 853970454 803244024 959339959 276730817 764295978 459734543 100573979 787929665 73791951 14208769 512751064 674404987 315005617 553982292 626379006 486465405 305246189 353476913 846965622 168033621 121368339 497071423 954740785 172546097 340010051 784708289 21061428 908579625 59175021 830285824 610595100 895927753 684660166 707663278 735092169 522808080 941929049 78993386 773277251 8020885 107557395 176339070 292791556 799741680 683111515 920052997 19322734 210923813 999169753 201688831 697333989 90273522 396013507 312898058 942456895 797030252 595691279 747410571 369331749 653189903 898728056 737274629 840680516 225687597 162973695 196832213 165305529 680661985 47588998 542761002 112211819 195699174 790343581 822680878 18697403 522877599 676469319 256579303 600524128 70881019 885037956 439730292 338841995 193962207 618936473 220240357 344346164 954539139 268288213 867800328 478701621 459667771 435732610 933344122 282356317 973339927 651854251 179035395 938000985 458159417 520870247 98746951 979037992 818785543 917482415 278477643 667505440 182294487 154867585 773302440 205926780 93635148 48175005 317683052 593337048 972900761 979019675 243122178 10009432 740497249 985557199 216992570 510004762 335014023 539521568 137913461 953916402 402571640 442311339 532360416 94915462 835212633 684181695 266274015 818766593 657128772 122429025 771127851 98893082 808509069 520883018 802189913 38338898 116784710 433502744 53594186 828906914 526354280 796672164 326167303 742111697 9829154 598571090 602137583 103183895 791989279 10235596 586494434 862090248 380115080 584594001 862447999 793194791 100286143 257473587 109316702 30656345 62956356 667891711 799169951 361275827 491482715 817194831 696076684 996338545 963890853 721725877 84476339 461285416 589994215 886496733 554159471 611161937 511475842 297811920 16457111 366319690 205970823 273336027 956199241 403038148 967662937 844617758 186371977 303914316 148018262 85246705 888886948 328193187 729070281 14059856 712932785 101720157 371120486 946946643 495074173 920315289 109045359 406027600 184209892 854045282 377884226 190986933 936452570 57166178 586925652 530437904 698703459 362868448 977653272 39923910 688172097 27873063 973342214 528708212 421299547 607844449 227480377 350259330 477768653 995436368 637398870 810093052 173560477 327433416 443694913 267807239 802327439 551928647 426954003 648178295 449812900 975105338 632189087 849968607 981131855 199438310 366046113 785474445 424346495 56281617 46191839 228874668 770347223 182080627 440674527 153601769 574776592 61983221 804672536 138453922 335290691 382116142 285030374 762789675 961532447 974599575 919378072 98684106 303075760 438548033 908354851 814727114 904999801 659372644 279766760 885089560 53227907 697904668 737485415 836860756 422704882 971386656 797296097 914174905 448256425 390228494 476900660 281714225 754574123 149250728 62841398 374101515 370375990 323583323 200108333 121803327 650851760 753274231 266880333 773107005 332944359 59195961 491916007 219161606 728298944 300620546 241302668 34975039 857204367 586090233 129040211 893376872 259533994 690191531 200472867 300743921 335468653 384517017 245515434 132314807 755502898 713335046 600898617 999944617 960041284 17751194 230453160 127724737 246617903 223165512 125622368 965383417 727525932 247515363 726032551 733269539 867128857 812019310 288706528 729414883 282635819 955455571 577946531 174284562 728695131 966167563 613625734 684703801 794776379 238814198 60237890 680894775 23031071 620041595 527494603 98112844 34923404 337682440 532363403 227911059 701802888 529505260 589857390 625329136 494952692 256393586 401833154 223336671 386495874 401309048 835833458 843151251 892269061 86448202 603798199 353708041 455383510 457556516 179808466 482009256 168813397 62068088 629382006 628828488 152525751 982482843 183288300 170757935 108463874 240247971 610889066 395580137 227278610 351588529 262003369 642972886 101019504 844972454 35432970 998472651 165090730 2685510 35616106 112440489 566053206 945044612 153299579 837193119 420233443 642895772 149433061 920110115 129919267 836045929 702356932 712016991 177575069 297409874 85102360 840554545 636467941 544884367 406919620 681024503 580179815 592523664 31334174 432421695 41078915 552405706 94990558 43024927 664338339 998995366 878010881 720838110 365144495 338789988 207267517 336747578 814857135 925652970 732968223 190460969 674543060 173640406 395043346 11097754 587210426 389037928 721068950 390148592 394199563 388770256 764194962 53821619 493019192 874538852 981133057 689246491 855014063 797173618 220803413 92327211 316573429 200551901 777440147 743762152 325827423 318551143 349363678 596871692 849902499 870541976 5615938 83947157 570185248 634341467 369479004 102872075 132714492 583552363 300618166 981656991 148791500 892300913 430790849 584159390 103085163 652903563 580347921 965209202 665766364 561109534 906938856 365620116 974166229 906784987 425694699 361852116 624258900 863564478 588740365 413231817 364448293 447285381 124241037 454454788 184724916 516430921 87643886 201857278 352358074 30736567 452136202 256762733 816765169 744510847 822484155 28793992 407615937 162461293 984412331 323454012 476219221 64205207 299465575 433308357 995140858 923664448 706833709 775778398 20519951 834416297 709426923 377887561 739358450 836672887 616395365 515487778 508031969 27149245 79946883 507334271 525184530 36766002 68306333 83388367 252535755 129575108 970636957 980831548 525825325 443215527 729317124 869908455 199965655 932156199 965353218 75545652 18533320 136947493 688247694 454211512 712910535 564930612 171431227 347971196 123320027 615723283 906936004 664640594 926015164 207770120 492853503 773078209 833436326 680940107 669859369 192092358 613598699 558818800 437912102 399299658 78811420 67349903 284005080 974816996 115214 54956878 869477045 885181862 297867962 353283171 587861313 276820146 391862182 713187238 479008669 94375789 788532969 952420518 895611588 962311247 939247731 91142247 140274690 815797418 556398033 143883899 697894607 111172275 434404826 584527568 482044855 924531445 109201679 749919809 474158259 187082292 416930559 101838926 560242549 971446081 248014066 569859980 162607534 714905017 65971219 962833426 192242617 624436705 171954746 903302532 123889604 214296037 443918010 438848810 989906069 370544020 911741180 586037617 79939093 949449507 976324879 821488417 94811059 709479226 491580513 24074254 155128476 696472854 877221225 533325291 452228791 451658359 2096379 329112778 58328291 642938338 149614068 805990834 953901291 112629604 65792198 238545388 123658200 815876116 434604471 270571203 34861824 602899702 908361724 978250079 717831202 977213022 592457464 534735306 836745196 689013114 624210635 36568565 575582563 923036924 272083060 650101008 529516875 70698544 990120588 117441830 268869232 903098246 985769197 790355036 387166301 281320308 782664953 904160260 219836175 138642892 144190472 607171568 395888210 351042799 556544564 881491580 718668094 528703410 660058458 885720318 58756412 827502880 405608230 203752895 369700916 546157584 127604668 689143241 142592711 475527573 238002481 619312470 972028100 516632285 690685098 517251889 958581411 525879133 266426608 588654205 446212965 673968259 814591724 262507787 264617855 341323937 779139473 577394013 55747726 363965367 923984486 32904154 167377030 157686986 721651156 917958477 894521827 819490366 943728314 878729972 358487938 751061496 790733857 189771031 659441388 133317260 725672467 783946272 296679422 822182779 205150364 103036084 619779845 741018756 163753348 152998685 990100886 741277727 547233937 610322577 489280509 409606145 182609621 93099398 853901524 632646055 145433353 234504972 371742317 289139422 478982406 26001612 761644539 744022657 15077666 693362699 497798489 79729649 803232738 4640231 181088720 366471659 785765028 105603631 325907614 825197096 444261656 443497442 843822847 942486513 244724254 55399679 193406855 21593580 714238104 346374690 623101449 967147502 221556348 102185240 868269698 486727943 129879863 216410343 319267641 522903730 485370512 29151058 588191335 899550119 615048438 556309878 368106624 333798766 702198375 345694175 958566845 384547866 315588595 582503160 214418918 241640748 268252147 477229686 149662833 552920375 466020103 317477898 833572604 820105678 229030051 619405554 509201422 203215146 667840749 784225952 796424429 264336374 120853284 51432543 147862887 985734920 760225531 382274049 221830112 546425083 872598841 547054910 157714150 976014487 346665082 783022630 115623193 713170576 156323979 822305380 713089271 328921277 733348206 466052466 101608078 976841947 924224649 819518620 290842598 606414490 80944384 253866951 106571927 913743497 945655718 378500329 867847068 112762335 958783751 424864790 733414202 262266932 285733752 143989621 272244906 802843374 303238171 168539611 559268671 428556992 410333187 590160391 703626459 631345220 710439219 291805124 440707320 505209779 744049564 619366422 559015666 273029657 522074229 666407094 654572590 895172649 567369261 642787871 751343309 264607588 236695329 573090856 738479526 493982108 55398450 763526804 834247201 482611298 5303778 38243656 204358348 700950076 46036740 237779283 23617977 949788340 623686612 506625521 470752732 33493244 647969130 54310583 343911900 201717629 151739691 504689399 291198862 72085970 347481946 132422821 596746477 767377028 766161850 934842067 81488844 542557825 814807187 859469815 307676697 58394149 443110777 217936027 690124803 577310684 264694325 799352714 659035719 713659682 164255697 782822332 602583000 59299251 518909028 602856191 5377759 893606687 829008175 762495561 343526954 677472097 465737157 847831300 840549028 905145233 534981469 755537452 399325951 480685540 248369795 409319919 294987852 397312048 681570386 449952630 699071264 131329287 834865541 657688152 788530088 788887904 748343613 18531975 794400243 190949166 679651920 689383658 602509599 18382930 258173237 549062552 541408920 698531116 965870048 441191746 895169332 661701728 830574962 911699287 556169594 549444398 513111491 311909769 362894846 645779355 405825451 818911331 715342718 23601365 177109848 665461634 404556939 670351837 54869395 684019685 484660295 356795713 290153968 162822086 819416294 834967536 781272257 764353860 744024656 367886369 37616484 339119140 449055041 621478804 165127641 27025756 168949507 810224328 403874190 385688411 761030610 957513974 505131226 18760383 618284885 407929793 939782571 740018971 696246488 154592213 383074496 601053987 495341892 228349531 907483257 820767497 548147427 208926802 728567074 522944925 242755260 648348067 26659984 861564221 307128738 531522929 451967881 746487296 186721117 503824302 274456429 849220326 476154477 866147618 989296272 199142707 762827620 409439103 702975374 251986975 292863145 699524193 11774651 661532981 82180187 196481066 700782428 204204999 762912616 394783619 561459008 5367661 146668928 524493743 997395482 877368424 366002439 262583133 229148606 684349424 709823396 242547112 245991121 351837195 860577812 343101796 997860227 672748734 674096990 190564200 753397181 999748727 186851194 916842932 751964286 338114768 731269487 995686997 204016479 476293262 532704998 245843944 12374564 416733357 51532962 945794938 810844892 265419344 619288786 355564591 249809025 948964189 361442842 36521868 934979766 745972066 9291152 144962367 960116004 524282458 363446151 147596318 148253788 794788335 641972324 474078636 208038709 18979749 954366949 343930218 505890242 485913199 703946160 942672731 997219177 111642429 770729410 736446987 722347382 890014381 649408933 187017325 691358725 33261506 597196657 83689532 782507453 940186425 818426156 262626978 282444940 426306963 815790635 863745333 150524486 922339665 416468623 244017015 227336868 112293667 967018970 650253379 897158831 690864374 341765528 551610564 49563479 223244435 491532690 816829033 122577666 572194018 550326484 79829874 71331747 283652518 866841831 858946919 22955100 209480121 633858373 595303462 261370802 518006777 849755708 273899731 519391607 61580635 624895832 745231372 255569989 466907343 765800194 51997299 832128630 922099807 563580589 528259502 142232645 177028557 411848447 326393684 238752119 692748698 181848451 359589241 732908857 112007122 755882710 779454947 573884094 847833027 340066549 228754893 47159362 814054905 519949595 782834819 884521660 105483939 349829262 833319623 620192846 965480414 691540678 282517211 413938081 567534659 740366432 616189275 647270286 552548914 618474842 455213782 250887357 855434616 749938715 109305337 196530938 471398073 584113098 120948592 165422790 220967203 934949876 888524708 463324457 931217126 950761365 430928599 571565592 826687560 188993903 260108064 805375884 454079399 717858268 903033907 121128508 563755026 328066032 235351225 32328902 878624762 650656319 291136280 293288266 343361430 476891766 496452885 517827230 167576223 762432744 164803332 646034259 660207717 463652143 596659899 48019562 659655468 400456441 476500951 57594038 949287869 376405685 977064206 394737218 42426004 949982341 82563979 656944011 339392464 716815046 683995433 967934388 246263647 77790176 175204511 793668660 67322778 396102537 425627055 144969642 650952341 719047438 263480202 815798499 584604942 328061413 218499105 613603718 145165707 211656334 379524461 19500943 805398166 893407713 787127631 800838554 580536571 607873334 47322187 462967286 38604969 7027046 379434234 923163956 155624529 166717904 839703855 120998803 612064379 139608941 450932647 827211005 976452481 81225734 339103598 723171442 944838555 928900847 27431244 781054072 452177282 155648827 354985495 23320081 331131673 705395533 602126569 805301414 932875358 415178449 957324724 458098033 544722422 836383237 360304156 698539758 4582537 922415572 949569973 228912556 465184830 917721555 36058444 369516294 818840832 923981217 428723025 212419075 723421016 524030781 787286762 540350320 705990070 596480914 495259190 649289246 97268957 434998143 175904220 910227042 948164858 529452444 293274275 230979399 123244496 796078901 364675575 629529632 385745698 264738115 489431210 99995139 715891795 858815401 188741303 201260685 508540048 259514893 886572391 948271402 567243825 735776578 6789287 303093994 802151414 277577149 91027351 873739089 588738265 990794415 377896043 778330405 461942273 527799881 927774729 3521260 857611557 104788570 961779655 996653021 875200313 976323727 61431266 670247542 110714843 78772721 784463204 177722063 380699554 283877259 853741999 77478335 76420001 668212207 115640779 4249654 97875747 95856255 676986195 750790340 421955843 864580183 794147084 782194799 603958912 695725516 50144489 908992116 424618726 584679351 562452043 347931082 634747603 989323090 73615713 721702252 537153574 217932421 497969777 901545294 640167476 453002939 73900270 188248381 99963056 129803229 232257403 490456617 443444899 280177695 577583217 373834065 691852926 346766118 408072415 456287589 872828459 427893834 843236836 570275056 426834250 247207600 708401233 738987174 753239069 668631915 853176596 435475958 505577419 845818972 813140780 926652948 680078466 344039242 893928299 712420562 765571283 414231084 485391568 630402269 738283437 528665177 917562772 658554240 123818966 586506697 312139865 229871294 19230278 969615626 561855794 554220610 368161357 979744111 7460701 616658487 387526866 470688772 779256788 249613356 101383329 559809811 262342903 139914396 459615659 337573075 742634306 539177407 384142453 148858268 679322337 433179194 273426914 4613188 715209910 19242490 541493567 432242149 807178739 574824255 273175407 62989757 966027492 426720532 989172878 514165281 256378924 598261248 743865775 138027858 129602563 668686150 412321157 262343907 692788873 639098355 298340679 162218008 55276311 895466276 253277001 367728422 447163627 317385042 692414083 646224771 578200061 197939844 703055243 41875693 618266478 66601086 935020947 898704205 850046249 262740907 646816261 689802749 128109404 582918456 497704507 819364019 427497560 795179722 739186146 819360672 236907300 522017786 943413159 881079751 527823611 329845143 253776463 465115240 689712791 452004645 440569290 686714556 665989419 117102237 660435032 214281096 151808268 253787130 852251947 289238160 260989811 464269934 515185616 570564625 433884568 431132349 175309397 459414620 270711080 417444554 259854657 776563785 430480929 269327017 644313598 502546816 202507762 3079488 381542308 220057836 255182285 878168413 176844304 866210804 132094705 683808395 26496481 776631004 605704726 844371135 988352473 388704948 630024492 158413707 488226128 221991419 677575270 593478218 752547093 990430459 551243170 756477838 914891152 994076409 800210573 787064881 113904042 892224484 747195834 801089909 36009102 49911992 977702326 438520625 416160932 200523141 459534246 537315146 375075347 617214287 407383989 788950546 96665815 364353262 225179831 444435194 175248852 107640208 761315593 375842113 917098170 216381542 730662281 878403703 570568164 736538120 263248287 758410656 628513200 181342419 533876588 565827267 992712849 530488873 219923869 538831535 111796729 515109638 542018205 838463359 473268101 974857995 884226651 22147699 203920986 583790626 279761117 567141177 339411032 457802383 249419170 503057957 352909502 235011522 276576276 862741499 950615363 752998610 673508159 192537030 103107497 487999977 974180302 903087326 235144952 200047089 955714132 924992594 448589467 227301033 191250197 554397356 694840530 283979912 647660701 446428325 413207300 946816794 846166758 42841296 866528747 980154971 340266947 126453809 384758288 687690927 85940731 835965090 531555250 868114769 896259366 590000047 746867246 385714262 485025062 322601560 861862224 100134379 536920017 452784073 755390555 32101192 63379655 181992546 233660877 541539312 568431622 907063569 369643012 404135814 566014909 708968767 411612656 502662496 144290182 989017479 493185980 818085966 194651733 261209928 738855311 457522393 814387727 205184570 366894923 723133290 790088728 719683720 794834968 279478838 675723854 117311411 358536418 118515769 899418368 73414377 743043268 568364662 105390895 550007473 379206599 669793937 681008576 697720402 283358634 448390163 962872490 423383452 208528346 519131099 984594505 444293938 529523068 711020152 740586044 56053102 319269207 839583023 907191623 382994662 780720945 673468386 869470158 551611082 478336733 263640602 117803620 556962216 934948966 564119424 945379093 599646686 779758665 727460821 976051501 239344570 353343555 23617772 945224529 518456641 38726569 657684485 730841319 13371072 111970759 646756241 536726002 875618351 121563931 901957671 63515966 263731077 77737920 64930624 190862909 144367322 913316753 55636403 695372058 111131221 810294866 780319355 737153099 557420146 716211750 928154674 498064807 515912942 904776266 735872954 290785647 126212405 320994996 239349941 989750814 571792226 709065606 746511639 295581840 916679617 22005286 73519083 207885227 250734728 367049094 758015105 515528743 608153526 614746786 595438589 308329541 242096405 823549113 64000526 585762218 515690584 507873656 343005211 395804058 303599986 552693876 503260351 363780030 905176185 330801979 222329751 277761750 161566131 754824885 475526900 134965933 849415868 875865320 801774326 744700904 984550780 568181773 758972461 568931571 213369876 416216227 764219871 920055866 987398026 496277172 793110321 133200682 189221837 990654078 769943037 611584506 139640707 240196680 913888001 743505641 557375014 48336654 971513784 584579662 24165536 104282666 593592671 321804828 406857307 905029297 803364888 365996844 629593898 975077324 559024453 457373969 243110353 520270714 637804017 34019017 667214276 660703636 688592626 488797113 241031886 592624850 127012057 621428656 506367632 468588837 781219616 20274649 340721063 271819021 546232987 693779864 543695535 928678257 266381549 38542660 573759830 862250631 374102780 429404962 139455848 638045758 892238839 494755798 626205580 769085698 272855403 650439227 912330859 895974908 112493600 581155782 804638330 487190707 443957050 214316439 339463919 846001911 783578331 704424269 39789714 782160562 142974407 24352863 540656339 513842536 370318062 34667363 424982735 13845810 573961890 332167618 739102863 842996493 873512953 393895222 815276492 239171892 507852904 884542669 611561959 551559228 507430002 705709426 890820564 815363550 248538542 78734240 689924901 1599040 924568494 585416259 555777617 851281842 680240123 36484448 991980737 951422053 27786023 803299419 747671196 329859853 555810789 429517650 399982055 526085246 156641801 306226708 749785776 548691850 516930158 141895670 322616094 113042502 468880355 761196743 564798201 90151870 620649462 297122506 574757613 668956707 468386293 918065604 335084714 444088758 375055955 691227405 595012605 382949874 308172937 136697418 149977398 462082378 879945264 104683824 183471280 659536996 450041571 276920864 290277769 792783853 536027471 204973603 395482962 581335058 260646050 38714023 754881999 447829414 603076509 210753665 321792939 546652168 106517775 687786083 338431062 743685499 927178621 659286558 422195555 691029612 518149350 337772003 253735044 150606071 398830849 934211122 721193346 978674408 660747228 215501087 201452939 649297999 943745539 604039910 46487333 813907584 298394786 783583038 577287106 277930938 663122971 60915381 874722936 646225334 794263618 236588880 589225890 403399548 113097845 535206996 101224375 754353426 620402366 212284956 170785078 13369763 787568631 533918482 692798184 144634955 649274425 955004098 526826521 875281441 185943849 371653004 66325981 198392903 897178040 956852503 880810803 149752265 104497521 858650197 340327128 934794709 648226717 777723992 272931799 762223298 986372148 125768134 797545508 495109172 292352608 982418070 966416947 430127237 382895963 674471828 329600074 367089405 534510299 861115651 619286528 228501608 770411754 826332290 837554735 277286644 507572273 467309521 11139392 832864492 604854854 535876580 752302805 548678036 844772640 156557436 502181123 442293889 611298461 466663821 583210361 617530448 966797497 512479472 340006176 29203948 959472269 748190428 776241304 567815461 806582537 495228993 235717732 798490386 842017507 879194174 95238113 6527572 402120541 403409075 755969473 419362111 589750772 407910526 766903213 104265725 719699674 234358047 109595969 696215691 654681282 568471107 124587680 986578650 887676135 708073531 265581009 57601070 342779655 520858327 561254254 286790005 808595075 444557427 813668074 773349793 687316958 795736412 252667922 636492066 796404610 780497238 231643739 462499003 381066795 238477211 687966044 726951455 345228670 492337297 526432489 435746012 272789886 103234020 649783721 897756385 58636392 454973564 118511277 751359917 720531984 274547727 660563541 409936862 111385915 226633630 16486398 935783412 526532345 376201650 610271153 997504626 162834809 160863159 444239845 190287759 956816489 71301015 599581467 96201249 662513373 360775765 46933125 946913089 971838833 118596062 234718294 554825126 571508048 222654637 979715657 274326835 863742052 895512396 37290191 104787599 930038455 137875620 146256535 657112383 526429237 465979168 132876205 559284874 221178212 375698480 696159179 42776371 385770402 69257889 916821200 514687829 883216038 369034152 440896923 760051294 444426867 870736302 582163409 909027041 747826985 510346574 565239686 649431422 696742043 691524496 120315529 294817428 232019678 965617042 441929918 990340673 138131151 907572365 483811961 936143519 188263701 958645763 22424638 879354550 565106262 827717134 632456197 761904764 498903932 705935882 575650334 941049791 877094170 241236078 744266312 655766806 77536545 673441412 518816176 389768993 296442649 452671346 331280412 859044790 651498436 616912607 35335577 388278969 279323225 497390826 704027822 744511369 931922093 878916066 729420142 370322686 997883967 279523810 999871044 393558570 180389885 325112189 33747539 607574783 474767494 187184909 963082310 719675720 526596126 755717600 122800672 52408834 86050692 137565227 976041596 974489043 589096770 739797077 259609490 190998451 777922198 360461940 787122723 135019396 477341284 237497669 138746746 37153321 206030242 603258249 770053585 165486146 902769490 871908886 831503817 829952026 641302521 246651038 446161178 377535060 102395734 279877150 919793079 688265901 995858176 335907699 165109394 161758522 618047319 418475739 353188067 451028908 576825378 845735524 301384481 290830025 966399953 275391723 137642658 80283253 213191533 754425637 741548641 866590343 349353928 813020304 669162921 535831957 579610850 487807422 401058666 998860821 909394578 106215073 789763400 841135481 629663680 297517984 740959477 650925496 22213015 570878548 679146235 843872129 645946635 640974299 183831657 845306992 313591643 224852361 91599670 153772866 37452792 249329574 982159705 480412838 242372942 836316085 8284333 770629630 108631190 858338934 938637138 733594814 107990185 412035539 31191826 384548132 697447212 253180012 118479713 609477254 57614247 267120815 249327898 492820950 838281011 366160894 907816913 638238602 361539708 41253811 231090475 941060749 154865647 874045865 444328627 56971675 586284252 273086703 100062072 196079292 396581049 960548403 405502526 22833785 440793580 506387772 321945948 484294950 507948073 207429513 974259911 810752747 501596702 873505674 704443371 125457915 205838280 991272139 705467834 574944603 62575436 288667256 463806693 987899746 167720265 957558730 946661236 555061677 118238961 643963971 27982738 209216875 346152299 587923299 887470086 364296370 986698930 383657322 89294020 262652546 867330666 69638282 55572516 808398090 175774931 749654466 433507714 53857232 985390462 313469993 687291897 888435566 913762118 33009509 824060083 535981896 706721593 279521288 379046759 593530618 917095854 289938374 776156067 338776826 519950638 737920284 179361651 301795536 530143291 165182067 972020326 689204866 836487460 500348447 431747630 819387830 103209829 260460472 409323954 490965018 739681342 18980401 949049079 441060171 625058831 383061397 749688155 144705719 430099054 500502261 359920921 908605869 398927935 760548279 388567027 589551583 740127340 139809234 542147367 70130347 930339452 99009809 808043996 16578236 544735703 747748009 712008435 427174308 982334828 3672790 242901752 548215995 428071733 588255528 823535130 30171558 323829336 344660449 76068878 746190295 274141802 795491878 542115919 594470231 196916274 391880291 135307563 819389539 752869054 606097530 573782891 224779009 885897673 949417203 714275851 679036302 925019391 22382748 977289502 591314849 5024030 698995786 942534687 76113504 469231522 547270000 210667243 149411812 963118477 233475483 70475616 288027882 830698678 239303534 486230936 323324703 761192978 916445210 945663597 78611303 640307070 301568569 990915806 11988108 329901924 558543189 187510797 875362242 345143634 830509453 689643100 748057921 403066737 124405624 45064179 679398480 603702977 113533727 809195634 176678361 748739270 885716716 250103177 622488031 500887769 640360775 923758110 4368283 307963361 403696437 435015874 331245416 660879834 780101489 301388509 848396837 989004694 802356256 907762505 248646203 120867755 291015618 680296901 521645285 336976848 8465883 845672018 54160936 104794759 220641933 978771424 123964568 418109848 100151727 885226568 252805687 386885965 86575884 695531571 718351646 41779497 141535033 712830636 905526401 990627543 910842337 805095408 374132921 802648065 774445376 145076304 916401177 800521285 809972117 460114751 246864438 949767387 470528375 743128277 740267312 873381849 8332661 593556366 588896753 476484375 438078989 142579502 738375870 154379785 989824341 332161699 239258341 350464619 360196064 542242883 943461472 752705820 842661162 208680499 605761460 698252485 332903598 984280809 42539109 483745171 336004774 122999161 835043001 61793847 572696010 516018407 862316006 13084504 294301671 655100376 598839457 473970884 809527953 832608108 390582742 485694723 83793951 920937726 414069147 68607787 716469562 637056658 605854269 785954503 753344257 917866046 963086563 289697798 921670522 390747792 741502286 428224591 741430994 927876532 361754380 546203281 36410242 159207071 514001560 222236573 242840607 396791065 98532871 600603776 129716282 129758613 536608657 142793961 939264288 155778427 737222908 515447286 851747079 89901568 344868880 902883321 220213438 222333284 125644707 252294898 983300939 849946906 238991684 359273150 209101418 476431627 62880554 53853759 140870588 836863045 529394461 830515712 35256504 254730475 28807720 843162796 302500408 502142968 446898317 543948 221795843 774730241 759348 689026058 182530138 185685344 476612816 501206742 363216055 203394604 307568470 874346517 974751886 620327024 260941656 80383765 348858395 446497696 787618010 373469600 606818531 681390977 565419162 680759080 417649610 918221623 77040224 841907343 117295613 647686985 319961221 450798900 161971541 740547419 906459387 719177100 353662673 46814971 40100703 324277340 501798839 111593282 196189383 218197651 396477642 195781729 193542188 543497699 380967609 406586420 778179321 141885085 559537284 188979587 625582108 291730107 509131574 113104963 822784958 591798900 78663261 649663381 328399858 437378545 694373353 494280167 769819491 663413722 18785470 838572908 160854758 792186721 444728654 424152013 799544063 347103437 430763416 543794721 677146611 876192810 262702734 933976893 404072849 720368984 195363052 660590626 595862718 168067361 897008990 226459522 44683875 49069692 817612202 925121521 222995797 971518901 439951770 37709674 970339780 253306697 662741860 241452729 992169056 30602561 14329733 979890110 582235043 386447251 533903362 906468874 657161121 617499902 330263412 371771767 800853709 14654756 146166951 105255637 819966868 52901426 117736308 592887565 623273347 109276240 381467730 223629273 930020083 537566668 518460149 722595186 853057354 930210975 46544751 229491509 809274108 692249796 26547359 546986398 181630227 852308404 814708245 861987352 553871880 999174464 913225269 744257232 195016058 817464112 395438312 766792084 287070019 552742909 318093585 174953924 769367989 286096646 156388267 684834080 831666990 812856268 873665092 847066575 745007430 331584398 820946319 948840986 102526837 331228892 384371935 420959953 886317887 281915224 379992609 462286248 554670024 776167836 825335674 41647173 844915283 571968569 995672932 839992170 810846255 112871661 553453357 580364132 836422117 470346607 442247964 782331093 923362990 154216309 714378513 678439480 927948347 610459404 286366662 163948764 115416588 227473672 526297714 31782848 195210820 874197732 371983356 657586937 566339048 292579714 586788058 793514757 797522753 36621798 729106639 451148775 310183488 304329280 279150149 941584682 310999699 763638052 706067400 209829086 444042039 612349894 891147985 994428565 940494312 719909081 170858625 434404976 424828250 142076851 943290173 391649911 361985927 713245642 935274712 679046263 836053222 811704803 456133365 624074111 32423579 31035380 271445730 668870100 38485249 10568504 780102825 751305430 456153168 265577666 571883460 774697082 702342513 812859160 971421621 556666207 990115978 458529626 213875482 408233971 68397215 928031056 326230336 598855996 169501736 534696540 268690121 354174980 814514566 393648035 221050280 950007362 577348138 925618194 56318761 389800010 170177720 947038557 189063750 164358472 670711265 326555824 311177751 466600229 919940247 801995141 418939321 360013943 508197430 165423497 380413380 318532739 461142817 67470931 177310210 687138391 309806460 450603296 335413907 211927835 424422018 359171635 92940756 969131055 168741644 149767724 759648497 73690568 915752568 894895215 372054089 19610371 695051109 281562081 74949764 985868492 770743081 844822978 307199229 31512717 7844542 656207224 955136711 381701290 538482005 431688827 665719869 496487352 401646056 830193508 306590368 994581162 152437877 434622368 428229765 159054303 298461853 6245359 327257506 856034568 856302637 853113343 801285536 508995829 812749186 280079164 521879944 801357336 144857733 535898879 639711593 579698253 609129588 820386360 692046379 409342209 197269106 227804383 42325622 272474819 981092058 115463439 575914557 674519813 585286716 497502712 120621047 440870098 17663924 168483993 46340648 9828273 782253096 103385444 890721906 833698201 277310068 244046958 328794226 308199006 339599775 535480469 650100231 642653989 605045417 356588537 776493424 170327669 529949500 588766926 352260235 352814818 325735220 717002257 708351243 297817671 852473035 847227056 823386301 584683345 306020093 779388460 907003441 387849816 535494199 147574892 170349459 599520471 150619616 344290464 920919548 663616490 405201869 730270371 578103932 329445400 937829095 811060569 715378513 747253270 245308733 75910805 170757937 753527041 796517865 936514558 413067135 268849311 899516365 355060292 918209936 404731460 430082580 474526768 533234579 259471430 80555194 443377567 445960932 398961333 197832742 539894217 826261475 910674407 758279799 387023837 623862435 751098682 63762090 637709164 797785075 73739215 975872285 40642204 843682069 992718402 4287353 552890567 662058734 93890469 201296459 210982111 248250875 869885251 694906385 591523591 627810844 764116262 721317459 640439238 541318059 411204606 951738450 809117749 496505532 612053246 299568751 157763501 467302507 936997305 301772695 625870153 605111224 825133968 80629961 743080104 307776247 821796297 233291073 244002333 784634288 606282965 950888746 582943174 461752642 680177124 750928505 18232658 15644145 333899746 156534327 17120030 353678540 922891945 177347192 929836490 338563506 945266479 6930321 950074603 747008856 84545540 651520137 28869550 740821933 485374296 839279006 535001708 64008578 670904641 742269986 893700514 863229100 541178664 278466944 222186104 654603238 794590277 449524271 608210854 752384280 862841618 847380195 876467176 59955489 127815570 477837651 937018732 984509594 212803250 543846923 277526504 455710220 953871269 226013353 708871202 397536989 469157641 793109114 720487997 533209424 264183926 826917339 233973988 742819173 458051191 499286357 545028584 950511648 801042980 74146743 758870783 73649287 874542889 708711940 263399737 553141453 552447639 789470842 55199569 285047305 225434033 709206537 169662049 257385256 178236800 292974111 661137693 13626191 500067389 246331320 817584776 795118908 723092313 75657461 900851020 479643072 428331618 895383931 776384454 126839067 373892631 310680644 413505888 876529486 479353010 963406180 744819305 460335036 42712456 970580116 142046979 142825957 842751946 404954199 869265445 822987081 131532387 925803664 907786975 607859319 559076362 481824819 32135757 38602794 562557612 229436711 655881998 159548358 539877806 371648619 270356614 848063760 782889181 424392798 166591521 651369637 511277418 399880905 992460136 334549212 890630134 796685908 738857702 430539076 45014828 641648360 854662204 504147350 382817987 87601934 149115366 886251938 199838404 995261419 172985283 37254558 620477130 890314477 965473628 742503680 258794636 977370936 175959355 443040625 556340665 458520950 544195204 126461897 929424333 664041658 447989417 995387570 30492360 823943094 735564044 690284463 249518997 134222886 552244740 336539738 139601078 298366192 669843050 594293598 131303474 873746453 967761465 681834861 563945131 230142739 735784541 91179820 130772027 877442847 921594343 216220231 700959748 819379730 875957259 750068549 995564910 551680763 894633653 530291664 195055701 603461941 137719078 862675702 97443192 487012837 162810708 33025237 79615656 788621490 937569985 824553999 899826424 328568545 832590772 564873654 80646683 565575293 124717877 989449654 642686381 353169977 524477784 335022358 635032999 926742084 632790956 815030232 265901814 957852652 646012493 728090678 673363268 338985975 822359772 548279909 683871693 203532199 383817944 135583097 415161615 449010631 907981936 130036731 744184879 654098207 983639546 542981701 28729837 706490719 578158097 508054381 332944868 416128063 945743581 945640367 898138632 269123184 285656814 992516362 989586588 439431407 520749341 388151709 959546371 717664454 913723453 573727158 719407703 174233407 900294101 618654596 236269257 251552792 118017703 148365121 697693246 580020879 857216339 991386346 883325833 415531034 248926221 112922617 406750995 243617552 577632542 517648335 157649015 271239079 180704731 236719807 346344956 946809797 416070118 233596282 163735942 573016755 698478556 293504061 623756759 858392794 865726341 685361087 282172356 747998650 598883674 93236780 604938684 946280010 412961936 228262079 401709 934231344 745012906 196406326 651844747 44490150 980437225 934275061 953002646 498371037 200172920 30739879 967690231 777275812 890479000 437831167 534863021 778769237 402597664 108604345 719242487 911180100 793139943 522283587 901218955 180969208 3965701 779045983 791349292 149288620 169555011 286888893 133405579 398755165 420084360 941122160 990838190 425381561 689987366 496124360 492323578 400114574 712653085 893239371 877145215 956144531 396106735 50056625 30307881 96394826 323070035 947951254 33540418 919395829 109561509 610804388 652333623 361408124 948542212 293367559 678004763 913540179 227962089 876807699 565832379 161777496 105171348 490851778 461224475 829635423 638274473 312134194 890943339 980235396 374759420 367305712 600357214 180878794 845541997 506712136 114980728 60002043 200002492 253910439 663179426 69251195 577236065 423274128 754469458 218549632 864121830 153334699 774547172 520470062 442216634 219696631 446328103 588720160 318231235 221159330 183889934 545354453 840250508 338526216 424092164 695547122 1673242 675975886 60322795 29631679 215847342 555580445 303233194 643882011 310917902 685104133 52681731 854554465 891133193 787446141 292063077 844958526 554258814 420334547 488477930 287638272 974556200 749372209 968207296 653778409 92668630 726303868 821490090 36112929 571732295 276478161 194791019 186708941 983877207 968862588 714003470 71108208 338338050 856602005 66544199 342196084 976051329 811023315 740835836 811979521 163686057 987416322 176037035 975816408 275509232 138407767 325111797 441932896 176453021 926452599 74572728 948077851 583805875 638319678 282650433 205892639 254459748 708084199 68019936 537378114 211597917 359762887 212356397 122497621 582423802 753927761 333070626 315185337 902676587 72966690 538363929 601085807 964912986 866855786 482047638 454465301 891105889 436291168 948243060 748393547 132258185 676235963 881976832 984681414 47207075 562539152 649992248 20732558 422477672 862043797 937365999 540327516 965031774 871840116 6829831 391774736 902884521 287413711 61348984 347411836 726130706 170731982 602948858 835583116 143015500 89947695 818633176 49868727 670618868 922142834 106661757 643101837 519534907 159650190 5623207 911183433 364816866 861631998 392510397 371874070 335144867 56341307 526676628 459126917 64896704 730984741 175397441 312380587 204759924 825783875 435936036 10775424 91305880 58560085 725290642 99925723 57727840 852278317 729357540 581723380 882653319 76581734 799265017 90274361 980516475 413057732 483959531 572225783 622506023 915183323 144903817 755238635 141394185 359290655 306136596 170752084 79524748 268725504 179798835 423749553 12430467 94474263 265150068 891236071 32714880 676593719 953035283 917525159 489826591 171966954 862721914 980807927 132974622 333525624 187306803 496152100 679561940 386446072 588620468 684131942 849635179 94540807 844192278 916213219 965770501 623064315 884643305 686699248 870870853 430018516 476638282 679839565 330302507 247708097 724022044 392791608 971485584 5657891 928454768 446098341 729494324 97040173 349257959 463259651 360215129 551475079 327956667 3924207 555084590 906052867 364980490 398429905 388909201 795290881 610335133 630304697 548438894 951894668 112035357 402930761 389857070 950611215 378513623 849826039 295778654 557097419 324635048 471878947 141711467 29415054 876268326 37361114 606750972 645488362 568209689 306802524 273930890 86541970 944461316 932737785 513741462 752517816 193148073 928207829 760501593 176470001 71509075 815138461 62532106 457070616 865067064 604269150 787223570 829365714 380798892 746712776 562241480 603506728 748997034 869860287 467280274 669199838 20031224 729467259 841220095 858254675 54878065 288617230 113198635 81987232 352023121 475358491 652973653 812774679 255329613 319641975 615926944 688575541 95830548 467255111 468600116 193500872 994947189 923492194 813695466 508024773 909479405 693065573 759858169 293832399 801725236 782773681 979440182 587898612 609915942 912728901 616996738 313515649 7027938 751024661 696469557 987548985 876668039 393803290 855510330 362918662 62267031 243511656 126697995 671262533 493935323 864825408 326575597 819163535 515540249 608763758 600068771 819352391 795288672 747917805 86161259 377959835 289096026 667442480 118088267 421618047 304339463 330639247 690063403 385949432 761256761 953480604 596746054 279124622 425009792 469020195 338716726 467818882 430988847 372799457 379525175 588489536 270235800 26066686 496025193 693399353 190386262 281576317 948479313 271677407 253082527 55143273 503409812 192991992 34255271 324313066 27790582 743940167 236474447 125595908 442892147 522772145 259862268 806731783 769957908 236436161 331994966 417040702 657561753 482428692 225863156 917354468 946524039 142452288 532690263 268390367 90716352 56049946 61992811 457651133 598165186 315519218 659279876 810448624 600016414 67952458 550170777 688544859 951121670 316294430 299876879 182444848 224638376 961502036 879932899 572290496 126412187 12678777 930822214 214279242 219351001 229950828 367108448 756825621 185814781 660052520 975148650 901132587 106006694 358352600 721666192 585537227 186674363 440397098 247757736 474070187 251734901 351256759 223619134 687836828 71660384 294423853 184806567 108480569 565603058 28094730 413460743 687849084 513997952 214424612 942405341 199932581 622421562 750926342 257205748 9666845 921269995 869096784 747568677 197398962 22830195 271591526 795060414 13576885 702697556 511408634 735077516 999771336 668160464 170563131 687373963 645822611 873855506 730288153 881325569 307041913 689440448 796475260 630593068 341751667 68224266 428930557 162627174 882400800 800999765 258275162 659708202 809547178 898994290 329571161 153049908 587110470 971178988 208428213 570934887 230571694 526075678 183779579 7647167 934369818 128425634 730613695 542664420 685947470 343928177 926009342 19858120 379195819 623822628 256250901 503160780 635639334 779695221 624073059 773165377 245624170 850607024 10078929 51069902 272382921 970434807 220682127 22093467 4874734 847541738 328426098 656877013 483676198 804076009 443976220 79236682 691357591 344662507 898759333 672140447 183739928 6968875 894875290 76530032 414819594 477148010 781034257 668228343 358270387 803573894 884581062 49380990 703285235 950527507 804071318 535609235 529349414 249544339 142081942 670977715 70288157 546518420 520980299 634710167 87473250 104170460 952400496 461567202 66116952 831716185 739791626 390954845 991422210 525619376 801805056 207490999 66290279 453124606 729011085 509416449 171377595 908062171 195852058 170352991 234874679 596737158 411088419 446037408 729337910 961600165 399731733 605103608 28168157 981723901 799615063 434624351 365938269 913441516 812499048 464257708 323886893 458491338 425411362 353528860 55894331 653665053 960856112 519593814 563107361 853979020 524666233 841030519 815728386 24042464 744745037 100173288 425216179 647371675 407475137 410258592 45740582 39631005 281610503 579952730 857648100 793068420 637231630 674357095 549586019 303306231 429992747 752049028 258703659 569382979 914549890 378485496 972024857 574376610 698468266 294929687 555152493 602831018 176569388 495350491 532089843 410290354 595478898 60953634 225442299 457217389 928235480 884528322 950266100 245544447 190648574 866520083 980680092 5819832 821393724 524289988 415215130 399460693 759818213 533518119 422355759 194372643 243766376 183997263 447402286 374936907 129553455 455238426 204873644 970685366 619634907 296308577 534963450 809383360 691740872 344700721 705674468 514820501 879614906 291486586 679489221 246650219 152141661 621305571 472260746 332101558 330001705 126368950 71271466 443234417 898418258 437361105 893106384 727767517 91218521 513625057 249895873 14605592 473587404 426887401 615439782 509126924 87744077 485012045 501574432 519952906 778588856 251282788 977639643 688946794 465132478 698560242 732169843 840108729 783729866 376708941 219558584 141711623 477856740 411934100 167625248 912928601 735741000 969874158 989713380 218111747 316421724 542691291 317407916 205113568 641579518 748449309 151233413 653666367 571194313 745783452 376022981 32562661 448852083 220305978 972984971 582929940 970054662 643892788 694880766 446897046 60262467 774489959 976788650 351834017 606133468 997197917 25976810 583998165 983797298 220488238 201529093 850764537 961499190 290971667 877118352 900430034 129586395 63773979 432433173 739588729 714789654 595012895 140297844 400499913 611489120 425879668 372362144 768106059 891820641 618913743 203164762 82558253 206228916 778697231 122923627 255716451 853115914 819312056 485324638 768036668 736984561 191761507 659947109 211601555 409568258 824694138 804727150 494048350 813037261 633089329 820518153 150041843 546175712 326950546 276990813 173640810 106481726 259069278 484130059 797438958 142634935 352436043 930980554 446649969 34537120 133676705 134178815 81192575 975255062 405969271 590399148 917509310 944385506 429517870 601248138 274052574 621259097 898349764 798541796 600001071 598747918 181207586 90146538 164896329 805921503 287709146 274352050 458184437 823938660 118292503 882229596 91893442 540186368 62015127 728087160 465069190 37872304 548285206 163739804 601259617 270320717 164401862 57314373 724350047 71377113 693719980 854195669 715990343 555436742 951800844 395399136 771248031 959647026 116748674 6142412 479410159 844300722 871918203 171572519 971599820 886225909 353407762 772205805 632713486 65167959 549411495 35354328 134746890 881602477 874564233 650507568 924529605 638444628 903610534 772326875 502865370 17311920 146858439 465189041 2247106 614734038 328135784 941862961 290844688 15944906 656262116 442964724 923205542 582122813 520054051 248604094 259509436 16828404 775544632 163201332 400286876 268597663 735509008 901354969 642868987 624921572 270486426 959572381 474493469 640873962 60658099 408937596 904357650 954363385 868490543 378096112 884942453 487471586 259922249 603035432 731828100 607632208 389778723 771142206 15491105 313905952 807976724 372590705 338480191 818329598 290588625 660006099 729829820 923444538 575004665 372678207 4577131 881464759 566787699 406019002 551136724 557004875 776011079 289464943 887276437 765012197 474694949 403534959 703337724 137324054 439465024 54241895 434692297 66130772 746019915 730332492 401661191 850551578 346200516 282823493 867516190 537533919 365423085 434104298 239956899 695218098 343478312 977763002 307430250 324739078 569308623 280723819 885750000 35602320 547444599 577269679 784034844 605148864 686870668 15978062 339512105 682584032 405081963 958281954 973154514 143386039 288408786 602323471 776781135 330452742 226847134 74758685 748349356 162091545 767768132 896924765 263116815 549380805 697719644 613957295 46091080 890104929 700694048 328353021 559813144 862433279 429650693 34611048 562617688 876537155 402655645 151928721 577845973 347086519 501182300 66492322 107339009 997736394 269435550 637927507 120137373 740478112 667800072 581908289 308289148 996739850 776505429 595221295 253586695 9627291 701976024 463508293 240194156 406408021 5253259 865388035 993752823 630113148 308921690 224615551 818027335 275463494 457241827 476586137 101812780 50484303 53703266 655277158 794008368 653785239 49274300 582986825 470628400 951495625 96182505 514166534 432187910 353464214 827472956 186218329 568913087 672339882 272081400 995554879 872942618 221277138 579009017 949855559 702750645 745111237 830278832 476761829 80782893 807731118 698379371 600756128 959355479 589072080 523053054 810980020 364061644 597357414 378160181 731108195 949314451 532108492 940703717 220018706 696317055 550483670 985693506 305808443 853446384 549025924 564844204 361976389 952883445 897430250 922063012 371622186 364264996 563050027 503519162 188960246 715004534 145354695 786450439 775645806 212877558 579077745 574587212 6956832 900479405 67472888 33379751 283418860 950064461 111238194 870168810 955487917 515521494 298211305 22039421 313691098 468047796 6502637 449830346 366837921 411967526 668191241 833528989 40838286 86768301 673692646 916708440 356852545 438273722 917983954 459606799 239260428 946774428 193125988 943948168 269572259 999120281 600433501 934840968 222843997 39360082 497739335 680477255 496924390 447989177 930611526 73762555 145456223 942223742 521385050 662284744 771593741 113144192 644039006 3168980 144496600 169065316 735904030 220304830 30738620 351464447 528290413 449912446 344953758 29969169 957942617 919963327 59579929 191489038 417908523 876189284 392942290 651631173 735123252 286336035 29317797 327964034 461726291 95731473 760170453 54041123 281752500 887841967 990032531 212616498 559560083 533049260 203226677 457825835 298893198 271638735 358488192 194709178 706167023 138818161 507124298 458462443 391636370 547308550 574322808 756953121 58761279 683857777 202875423 18479215 470242022 999371275 9839472 112304290 100038715 46890363 632626635 560439461 146651481 455186772 216989830 593666352 362918594 78176499 803519922 98189477 944661486 998627844 267739289 786479388 577474135 568410001 859384903 778071343 399768729 765592036 526930431 331896893 70385672 259000000 59611656 710077143 934149390 436280523 315875521 465980980 302883933 250700568 496378933 711211972 282477817 271556254 736804140 896259489 762042720 744868568 90119121 597765592 326437630 275338593 217671713 867083378 204378063 419263790 798699556 703329335 102604919 665435580 890810969 205640551 498854451 527987284 216317539 431533232 316009286 148560460 683013923 423723843 390520656 738672909 56977515 312369682 614754130 730428463 356300623 50294288 745102541 695240638 189604580 122633213 479327912 655193848 879773152 470998475 869939354 102214365 433681985 955166019 440179065 15406374 639450180 131495761 226665300 904732646 306289882 896907280 853322763 257073067 155883814 102784644 579653444 708007921 558549514 176351683 507678086 14762722 440713546 981360568 539360960 837520740 24448685 531068324 116723549 2625818 81009103 411329532 449356958 838356901 810547112 665905296 641693982 574364660 981600633 78338277 246088535 949599782 167189830 329519743 582579223 107080519 565555932 107526023 493217614 760836306 994456958 248020583 328295596 593862137 448382701 162135842 194014933 392028777 508307215 849872019 880933145 391010504 797825763 677779316 145361542 106482182 802022762 27432891 636313802 113458989 634575341 898447225 407892373 393363742 775789984 434592474 565064481 226027645 867423494 972598878 365018810 842120041 779843428 410250891 782750205 853529265 69543175 891172875 957510946 292275123 202763920 318939039 202786622 884092947 155321194 480227228 52860895 981015770 466262513 626297954 481894973 216585841 962094011 879806273 101377519 964089098 808842477 869908366 306631373 813663765 283824625 436509789 622330099 326819073 78576795 175393257 394174691 798502617 495241470 260919161 291698748 945476942 980161505 297864914 644915564 738610784 671811644 605915198 714572188 974154079 581080471 216671587 598572167 35486785 989541664 87987829 523825927 175257319 681441326 720151745 928150655 373910392 181967199 891512259 338606461 271802202 324179346 845774552 431899780 24907154 788340511 935267177 9550270 347563215 663411659 408149461 274441685 120732214 7690219 738111971 368000403 801944953 74686987 984671931 369249580 415763031 886275062 408349962 124445691 419061238 186352685 725524172 746844064 590597900 805538115 528843288 697134454 276472646 239049974 611358304 953850460 894730522 186783280 190044843 818963506 461322491 723206964 509405679 516706867 239666239 55833549 774734667 206893975 754505045 216328575 492357925 983587659 547607219 975869648 425967411 740425134 54662520 553492771 618483854 112455194 579626829 122874540 531633476 739103058 711536957 718087109 627681344 278072712 525067974 891030722 707305975 621974663 133070928 48792942 179436545 579087759 475602809 887737865 365031680 812907988 751093487 512953833 446011388 154671869 970233147 698728477 285628454 576612551 715257675 813907293 127037000 618123082 675824723 923684026 812310099 944893535 134718426 610644271 302944272 171507743 472970560 462774306 194677298 252027844 757276858 541016215 752335370 814480678 169570972 256232238 869333225 625607167 56884564 459831994 744263642 871438013 511047116 501246390 27646317 521319749 677955192 603964890 290038607 845727484 107257315 700646359 891229006 797082900 196323279 695467523 556317585 819894270 265483461 207237320 420149264 549999324 291602068 370389880 446468955 62606511 270418120 131937865 487512347 844900534 396409411 482489872 439035484 51517372 336146240 146105431 828110197 917461003 109265006 47938565 791976991 588134635 870751013 592579784 332184720 697157177 676941699 790899302 12254015 450611572 501106023 77910911 167250146 772468679 261954885 303047224 621274520 571607956 273672195 731559434 593622996 354336531 305175511 212483511 911479640 107430644 112349707 816978983 600592917 824420258 947937395 503916661 502367451 671697687 853519591 278884456 313945003 191741158 803776628 550769286 58670541 945446673 22403696 331319414 20523969 234274282 132359012 455386862 544865145 573648342 275923771 155091866 975048963 724381364 363117607 329057479 483830780 592312574 692749851 267673002 215744886 21230896 383809313 105026203 260304670 753153745 102232970 301781593 126119171 892591815 195618688 884385067 647394074 928193339 275255110 587448422 240911886 157209296 331972950 727065170 946185793 635685219 429373953 306982348 533342817 392116163 1702987 680265927 742941263 152173376 131788646 100162143 644601198 847800073 17620175 868573841 756113144 603585824 222028551 849423642 800602312 622866656 698869726 690831350 30544981 870477749 621122193 148262181 505702195 855631359 376458970 76294822 833985300 697174788 936806851 809140245 281693283 157125966 711801276 577084990 100677275 565448229 752669739 865115030 491248790 749572533 779527608 323079451 769512661 19129505 104021257 709083615 185576802 163695924 863815413 32052513 814183190 147383577 972643217 559559013 558273482 728445709 357097595 867834060 233574722 653107273 555385658 533356405 181389172 933538279 316908493 850730817 116554067 511608017 872672174 504898810 483083689 112757180 552473240 258328705 11805447 595299792 632371791 836264083 251148463 922115811 353005227 516810988 541361627 986455852 107389192 105876942 504241108 351102483 710702075 764341520 607886609 53867595 166876420 522961165 197236394 475863362 438982911 647972243 998818960 263080135 162679071 645879963 638700446 902196469 925169605 558161055 92786930 895825990 887147295 516594102 654616762 530683047 606564465 449393890 50297468 779515048 70229933 312765974 303960051 831225153 451819375 869268994 214702462 225609414 423153442 479002765 213016349 981280089 272300959 705438397 884286983 145240139 317725597 170044753 32826460 576407345 74692604 630970030 868487544 409876333 320818725 527666007 943239375 172198336 231855465 580186233 230786198 505672242 637398328 235183296 922023387 444489501 203151924 955313435 268165876 634307901 189918847 708483632 465529382 991749618 230678231 859801635 400274404 319124996 497063599 710961569 760982670 778986037 598694808 698469980 494705249 827662742 56928267 566788286 281114904 727031462 496776923 237049700 467154614 559425612 131868085 542715322 93026966 162475441 190042894 968986431 992416093 230085869 117145363 491391241 561930391 233413315 103816603 597858778 612727756 39259884 801921596 894952274 275380186 255589086 514624784 202655552 943660686 742790115 546727595 394844591 625845645 305805591 173987415 493085629 53466262 484069215 192954624 460880405 415050601 476412676 466106048 88855544 995432721 451286166 373774601 977550915 411355417 247131023 738254982 711769816 690045320 703794305 256120914 993689265 698534167 597580425 22265743 497892046 972446940 189916517 634186518 664973619 185960851 148731956 754957086 106597971 524432096 466787357 856843927 822463113 820194675 488657544 504618816 125764830 257620749 632313242 302687945 343686097 380309936 771443937 567353040 85017855 557947198 148617778 629807980 161957061 271861737 997973446 496552004 657672631 111170143 107144289 128962254 722198301 193907336 812100314 780683663 855199173 589220970 107371693 975879977 688661637 332116755 559398507 306132024 200850441 822748995 78387069 10275247 386475656 55940620 429284180 298931642 646890158 497480358 556590966 376344226 132977872 732966593 801983034 592232860 412821217 594268131 730015568 209291313 132497169 988677395 274458735 143435603 878067959 35080460 923680746 517484106 742228931 849139286 198484184 514182200 937569906 536252470 402899211 8594281 685301739 678248471 376547327 293020612 417835648 619525680 263717567 173581218 905311435 277850151 199718372 598896950 57852571 601487414 296940537 368904683 177506927 950163984 527218513 634810023 536626888 35549084 879190441 231130939 363163680 775615402 58168112 655560837 195931350 93348934 792490295 383363456 264143504 279041973 877738013 206511556 220046130 58311655 836717525 968539019 642068400 307402334 994880830 608865399 860889074 340287684 823032166 902381289 596342797 416375533 662003393 437634847 570795093 250184675 137530030 402424110 264156524 991461956 593092314 246134710 698657433 76933584 313826576 398838704 560470986 700258542 14791579 966435149 406902772 72023840 573542883 706041748 975408839 194235136 92312625 222711332 57783961 960781107 114065470 420362255 694081115 451866374 34088288 485949230 976942569 483694631 97936136 90322952 225697093 814671481 536702896 596983119 687164634 250018833 173034212 101962265 549923513 578643653 952636732 300886122 628349430 752820282 921095774 828637615 625812111 405229696 289496100 79380277 614152180 922395152 764670829 963104160 487429033 243510467 416513879 299063946 786575938 35213637 529304511 966884087 692219116 881453425 198839810 384635607 371229289 277435911 599931939 284426764 911746754 862496499 411179638 517773458 288729181 724784273 164640623 934970913 675138998 416194872 644744278 466173501 928102475 98130194 915769590 8627263 136950607 744765049 476803960 650755439 510645375 423139983 112810329 350883275 308481204 683051361 96736468 422292461 227238638 694886202 886715151 654756594 360437141 416995548 778971480 849559746 582423631 398987605 244376965 583964050 957724383 637121272 252832954 793684160 63543225 135780728 429908274 852084853 358664584 294043967 59817843 998974482 704577209 981283241 62425645 20001137 165509997 579171462 550079507 666185934 184629639 465782845 140633986 663993024 482650714 995794274 631382948 266835318 802702853 335345194 111230981 995358154 868275616 210329669 496857674 625686089 474442020 518073694 377581003 200508745 207926729 817644926 709107091 141509983 446877749 65884732 237173142 44672394 249978038 304723197 50625328 877692285 664713826 251434074 584647404 695536981 953633840 691172809 875040138 458569049 420920187 575568589 60846328 307671710 448534307 788741644 390286046 491317303 282348795 502019519 498742452 162806396 205160126 783720662 692769578 818955543 318362868 225923382 913469880 53025371 583107131 941978375 306327463 54383082 367129628 951564413 564994585 639900060 719739596 172587693 392573209 257120962 268752153 164582893 513312008 164269431 284647149 151838254 442149000 820587212 216018823 638667506 368533027 977713120 786763709 430880880 630161835 996389266 23249006 837895917 324057419 62902627 60261914 668625336 838913247 224151964 297009845 398372828 315904197 613721677 811910649 868883875 811748118 282425309 143592973 657515627 56954216 162906132 615573358 850914371 477616105 223496268 106364624 250327941 978634503 554052388 869414495 104950776 789652921 161726857 854092139 155707339 452454099 4729102 583666729 562116637 742126172 25508843 226879670 539204182 575486139 599768455 244867578 577365031 718152574 99751682 675996087 44826914 476069533 315737810 436618090 831446111 84604302 44645649 345617243 950033033 334720137 386039578 389257368 572896696 940693329 140689414 127911874 350469959 797790736 705331460 912212145 370769210 497778749 807365757 320546884 628208435 297153434 79765397 354526261 916268610 308521996 98888908 143415374 673362666 455230499 858302025 994995006 352666703 390400567 208588280 990224250 83121344 121113955 87430053 339115335 518287881 390092361 580184415 507043047 731037808 394747323 137468859 402025833 978637943 119455362 644898122 296241460 440501886 633760934 232196187 786238976 342227819 64663894 493715422 695158312 675432692 766883069 760007988 434161580 876330039 713751216 641401487 707947031 632681184 268298915 996535020 156244515 461881656 784596279 458033390 870549420 229770046 826082351 830916009 327073430 423342311 825190416 154439100 779126133 773060628 832816712 4922103 568351337 217794769 592534042 120228907 522082785 804733810 774672038 419357312 146969486 89263112 644929641 282578330 322821233 965767965 590410422 783636405 951289562 979397260 790685148 354267556 767922130 977798877 865616846 673632903 867966873 916035323 366653950 264333505 49922479 679425343 271877692 759606292 614147578 760894699 323677225 486020632 797217451 214819749 372377741 392325430 165475246 709446382 213856337 611150937 238236396 799869762 343363941 402204635 909380104 713515041 27386896 717641887 679406756 194708048 363420598 151863141 948290378 341063969 524450336 750154428 896483940 41439006 823030784 943358894 413070592 428570859 522732527 623723538 646851828 186416142 228848638 340833313 94753981 622042073 597859719 853625950 645833390 775889343 518536920 922470710 483643516 267889940 291342850 73639807 811665060 686081234 998712548 924710180 553516532 79966252 596977170 766871728 577218888 563334993 921212528 96421488 73521525 120194122 618063500 530977492 266143228 962624891 331412431 177274333 593499851 372254057 838521099 964262276 943839632 723881196 416398050 462201560 229885239 503817693 761960443 367575120 948879885 191601399 698344018 465675828 577561637 641574768 869122835 74772883 692938884 876830335 409093810 227522476 939270662 275964284 131608405 597105442 734001725 45254446 393590086 414878166 343013627 355368041 397819500 656248274 514043786 848028799 340419503 767245455 34603773 195017444 68728831 401215694 577424865 62456815 860456427 300436004 217605089 369628713 812910292 459501166 480940857 612541188 451150425 383827414 947718048 170615529 285943545 702538908 883219885 433462923 216004665 458013649 145982687 548342443 269246952 245359475 181195605 11713350 461168136 583152130 204997345 147447230 454301134 439179019 902173838 137145890 480073787 401959702 105726430 147833639 830429981 573062986 803809881 789242788 341486673 103102024 332552699 813414302 846070861 91562284 977193541 731407017 697559665 912578783 456198979 358077809 18928493 22364939 752919219 738270636 401959421 110945116 889902350 160537320 182843009 658007511 266216214 997754883 258883337 977555087 466716654 344785885 814095432 644205930 305189210 787329021 722720911 253757557 192586458 760889103 314014530 285351258 836421035 43846897 918841342 878394790 29841002 114617139 369029346 787372635 212686093 707335070 513926739 548832772 478441366 19219790 542289760 432191779 770739116 47552425 374152088 567346760 996214002 297506188 180407114 972559616 394495577 598054023 148491563 768213321 463184460 984795704 849032215 228960186 196849792 208969691 842880383 599096698 267668513 321590069 453707301 332916912 572025092 348447431 875402242 60081863 61543771 720486712 522797543 315986895 190792358 573390886 112851012 884051770 949438419 217702955 325067234 659109415 958571559 105432272 163616750 325913462 259988016 687888455 395609021 791338291 545111387 30400376 520550355 594140765 408822237 971299883 178170107 582055695 308292488 839267917 56908057 246454377 693704562 800899603 919322151 441226201 741284727 375106999 884610837 160956779 1767190 797911240 848003577 842539377 9262514 330780393 138777024 361818174 921174902 167732812 770579028 917694176 259143906 235771276 464596584 85503839 902659109 523663491 422613121 974965165 718337715 33170185 308360090 344636509 732239847 711997534 27016293 923383952 539223088 449596259 469503891 988976685 718972808 318965478 184381956 508462422 821469646 576621223 708340720 424137285 630396276 867578610 303614656 661862957 578895573 422268390 888779808 827099327 111144982 729361491 937925840 802469089 627147945 343383194 142110792 477320944 858574707 850971704 147687485 914970451 344620773 443646358 371349597 729604126 679027632 993810202 632422294 947776775 8944573 221084477 31410995 739025764 90645832 85567188 444529106 47046495 135460491 315032750 80298928 671192847 367172398 258143318 437404959 727624951 497201880 160004503 317431176 433461377 596024727 792252422 760517006 258904398 339857069 365376888 640833265 742613548 951389367 862979494 894795682 484528262 130826989 711349053 97949998 230183357 712290235 339471776 926173944 357801920 170768175 280618632 63567263 797118074 896364579 584407456 203421376 386166170 460680803 89267563 40919863 244766982 999708291 483598685 924205017 596739244 467964646 94369634 195747878 948324773 140113444 283973867 13531876 813666356 750000254 942242493 628681564 349677272 673024644 149499116 566896939 622864402 339789785 941484601 464674946 289158592 392108399 336803906 492401077 188489794 346624032 408980921 805292415 247242514 135829362 762722924 416806673 64297475 783449385 631307080 732451550 120708526 165175732 23765354 9196497 278842254 868482382 890272531 469485971 611072847 271920202 743939069 148036534 101853136 632491707 295762327 432947295 956708788 864247858 403328054 148985003 202345809 594170777 623205225 651003957 350530025 219662640 658848892 847067965 639487011 843960775 798180421 421935752 166508205 552370242 821129952 641003694 328276052 822923350 341373297 977474235 909617481 692580261 807046169 737318050 64642283 920018561 607067178 622752474 497703554 190060148 153445169 950870274 850743965 843626885 402073208 618955333 135845821 67722233 524094494 203196086 20150772 315772751 213913806 973192625 34262009 798356752 919904770 419970089 756253923 449790139 321062465 837024840 100314293 29015990 544548842 431118263 886137318 567524710 658500316 44102922 813248252 228187026 155455171 181650865 378256164 734876939 869675871 299979360 181890513 74445505 727381622 178814081 973020521 106659201 143317582 646994365 849282863 617124437 844116797 727286480 329525333 958600893 795939537 387259043 642583661 882781127 253670870 271627333 438586104 495637158 543247439 122467121 433319251 953346023 211817746 437250535 352244669 636428337 507077093 538256317 265328767 133837696 571674410 549180282 843389205 804062574 994603454 153239433 511102421 511065199 602024586 109330445 961943251 711919798 726712956 552900502 626677750 545002452 261277004 739742161 999579752 827669305 324048666 223106055 809432295 386970845 138599252 169092458 737676555 826810694 640343716 996242080 41205285 20392970 396672302 514330508 855223775 870766887 104292342 521847303 715636985 949462252 622555472 165033873 743249066 834529695 53798416 817057471 50849189 621510880 881641800 393105019 542812546 892442281 258528202 166574610 308362026 616316878 607547414 90376726 142739572 338804066 348943622 12784366 384425565 106985750 139436067 467985318 602405875 421893084 277196305 590402035 548354843 176474683 623044392 239936906 518023749 475503302 943073056 206569648 849937283 321658339 712655350 36113520 194539987 977337716 907853506 924361763 444763431 505246217 871752959 711563248 913108959 368077424 454985632 805961078 543806273 995977148 613117819 953979135 419381850 905636720 288267257 944472521 460764890 499482687 432646281 492356558 979951866 978008017 931673930 826543542 78677352 560868894 718452700 977941904 476650062 560633878 62467671 186188797 402262342 624630846 828836921 240818050 463797384 688038045 494561497 904394022 944396546 880671492 496933395 242716995 28034985 127586559 97960074 381557053 218634786 804730838 285355958 985341775 845616753 849497216 652659090 219410225 113499723 127369279 609770029 694045644 624509162 337546515 373743233 296851359 588466767 412382558 210935821 288508854 33042702 203972804 687579436 860936420 380230198 506449607 637709330 651624401 403190524 805662423 568660158 501888027 5558593 742130702 897429640 187603938 399264497 249191462 647199432 693917944 304191272 436411228 289801314 667502450 103805871 752770976 972125890 141124748 162980354 233989423 819294446 329722850 664033887 271263467 961605357 924126309 250087210 302799423 802424982 40707324 457149477 601204296 909066666 452568102 516646483 89140499 649074953 411113622 203582700 701300063 992949784 928592326 843297181 496566775 497246439 64677797 844118132 112393818 791606683 876235446 304197456 953619574 609511861 526354835 358667121 260323709 808390777 509912668 768908337 854888256 225745287 986047925 362332285 143965304 174578274 241999006 625887924 747434530 612037501 687982280 741604973 140333845 421486599 738059595 73221259 268299882 780588166 487385558 863330497 882567991 807597265 291062929 322052753 11506038 243071020 548216958 40511179 671909649 184367756 166629489 698790329 148733703 315855023 482018972 334661268 190718107 238717325 464814798 542392216 410568326 518674898 830274893 644976993 591692431 673752843 67226842 943946187 684271778 954783747 156501019 202985503 138535979 945428291 947657827 347921244 876407784 959571683 564726060 207124417 526518890 992615719 828269250 307489777 618871508 833392926 475005947 182367032 707397080 618065725 247873408 635025927 473811759 293178540 30050955 199232704 501577799 120830847 996855365 158593432 929983445 316213004 833233953 523415851 169594065 311946778 391140438 90655750 128722248 430486768 25569994 380710782 446286467 839090368 428084036 308819150 273386161 822753838 641522513 932938268 29610899 931025413 677838419 984942954 578389468 265942125 36482293 189672047 771208136 272635117 740371256 259367630 961590727 383770297 181158905 442432099 84572595 829393583 526936609 51488974 311210151 449400095 137629203 51233712 60920986 325537656 4256750 372234014 755726126 947404417 361606048 852191739 7063401 274601457 841423690 771251350 866914103 948255526 752454354 42142370 517766383 934200474 40912984 748681212 983665468 331698905 189790856 324115307 710224098 243849403 703520569 891368451 348093718 731593795 549411796 948770814 201889353 508814824 687182258 432198239 504290313 33567930 600604707 560054522 78562995 832768471 617344972 828163512 94259444 28998057 572242894 858645820 979481011 139939045 92256172 636459711 551429975 852165787 862572474 24582741 198685517 108889313 913014458 887061972 993997144 262710511 965108081 493030006 73871189 954723004 674966160 367581880 390445141 228225890 289481658 239509 775273957 846965347 391387315 652690585 5947783 775584565 821935356 795685952 211917812 216260625 68042668 113698041 314610961 589592905 720087488 599734280 628207264 980285324 497032601 371992145 705707691 882927216 890916846 88942925 716177489 815873853 379584250 858036219 62479413 365710517 198948573 698009845 179148283 806696921 953986182 852432663 930116410 901401137 379199745 792676442 192153067 243093617 727180556 870442237 382847735 697897474 126486661 557194476 249385394 669476705 165394899 897323027 533999505 136477945 422399603 227073537 41984346 559536492 361854102 226486432 69139742 488643432 8207397 890522686 262967892 710495333 196515415 756188949 487211602 443915908 48056754 38766246 169885173 221392616 343708987 648937968 576834860 439021119 833960972 139677040 102404795 10093291 670351935 236056845 526730262 933950694 492674510 917162211 721352992 24684960 512015485 855776217 177253918 213625729 780915666 371708526 656999881 706485502 561724219 302758104 951871214 536961063 540657919 213447542 507977358 914327785 542547682 806832121 995033956 244057935 606216905 464658603 203160493 98251487 790589535 898406222 204056178 719254608 379235737 640865142 772678755 431402570 201347554 101673582 807603047 671346178 579350002 208206026 304792164 199085876 295381533 390854431 877918113 548792485 2583094 879742080 591633426 953190570 879038537 140698915 687580376 403811940 770534762 623007933 391715728 108645911 604362122 371318909 721357981 544723066 487703900 922821239 531470279 493823103 624168492 192845050 15046095 871385640 279658371 501087083 285418728 498906414 607400452 242848299 7524707 618703089 804903395 41019581 210084705 268770732 513503247 514066280 666147702 312855812 204305377 364249410 355717138 502323174 712128024 666800490 86055991 670517146 743929565 426563912 512373683 595741922 840930311 607325715 693065167 212985296 243437917 468408941 710071733 172363675 231781798 165518644 286366275 131037081 445315812 642369610 860172436 142927032 874344877 627031888 439680200 756477722 868541270 346023985 446180216 180864155 253769015 780455663 891962668 417124433 437765178 959238509 321842282 348418757 664685334 840139271 478072965 6357456 234760278 281920692 435820808 940957106 800971357 8422403 101257327 420511448 780701385 481658057 417551289 427548865 181499260 346268997 158230651 519797119 729309561 704267943 250562693 816884797 17803639 590909897 971772110 117433199 3946081 918037388 586899375 460287536 81610523 429063750 233220318 704005295 338604660 117833424 506977397 776656710 827488588 294703175 882303702 762368 794470039 755673466 386921630 701594279 370249514 520412903 998520911 444824411 627039989 178576998 406614748 482172381 135534712 509658891 936277987 570929028 376668593 258747665 252447738 659621835 885388730 505613187 302435679 996968464 27839156 274582595 799301797 652525379 939918801 219677333 115848312 161234709 592985135 865723087 505319453 53244220 418802201 949937820 953674494 327316056 373055828 48054710 949316265 679702096 326500976 348538841 80656457 953897637 730179808 285944797 78618872 583466519 745435539 654334677 772336455 410266044 504703585 991665901 192606612 609842238 356436266 483116022 810213959 701267108 928234402 753896962 505189162 35279492 560977922 297557998 665166806 438960032 913355189 8580424 808036856 162643218 542595416 856798077 593027400 463224247 683565417 434357993 480923328 142549422 755583530 53467995 495095517 260197439 37770233 938974471 208068299 934842613 39717982 102249315 99479763 472114524 577580790 818200193 195302629 849072099 130389157 705116372 860541837 465331417 423560053 127059874 116897791 252775686 128544718 764898205 654218109 478359732 719558264 895640575 272483065 252526866 966624468 712422497 980371129 263822302 823739369 987899143 43937626 934085977 641029996 732330881 976998403 119554616 586941288 78463261 77940755 965122928 989395668 581111536 677892347 535826189 727616337 509256281 355528344 698174474 605668307 461142344 262123052 270293425 837876822 221723357 810145133 622410608 136098923 270883329 57817111 723914624 696618612 967194120 446656237 237402870 561073618 139174315 849884020 719968763 202510912 886605030 620477372 234141608 615092808 296243210 600612860 371237517 28909532 713185424 471214984 111950364 112763533 814834576 897317960 645128155 316205869 645150773 281528466 431690314 671906117 858384120 41764299 640165622 176343343 288924890 91146628 861388889 361736296 490726391 750032226 580628914 304644697 201173309 868322845 235488256 751437591 329012306 260579750 440399508 672567908 127685817 939667035 248434282 140166648 633107405 784337413 852408485 721078161 170316103 923378772 37038252 420832301 989946805 306456671 577866112 383150 343411557 103682479 404536507 347577585 391336813 824533323 488494754 563920859 418050815 171268978 343978962 376042680 725890126 610876248 912972564 284619846 194787187 463751641 635691709 35152085 513436724 724310056 808344108 751524559 949876366 351370241 160066248 163092183 241046894 617327023 289623065 180750047 430942932 603078222 922256581 924999885 883667113 548280686 676447461 162097451 853142271 434029280 981960706 588036289 275056843 465146005 965594156 892919113 50308069 77029121 346690161 964025968 963174859 294100576 513085673 760366889 333667839 935298314 74871889 568103437 433820290 325271944 401587347 750113846 24956991 514724329 572096810 974324483 725893604 957392416 188449174 624339305 155631441 128008315 839526494 32816332 214530308 300514553 962529968 538244760 214195057 610609705 388763880 926890891 261852292 518443808 216344340 928099421 114961263 217112960 544876426 982693921 612246795 51515773 23312551 885436846 334033040 482175462 335951664 368893547 696756043 118237517 683821734 5949820 139254847 463283065 867105605 844657953 683592823 41794644 195501624 646723257 616294868 475561491 658025000 323863911 675702723 92632590 14902298 525379898 799426453 515825829 926176924 649643427 322395725 388230754 567484264 708512944 652947454 488937778 112103347 988715530 770296023 205897292 942122681 715401724 433115212 108293697 524014211 2710093 713883259 160077201 992403003 3314795 639837740 154478476 379648710 741197630 42988129 831189306 201970396 709095500 262195219 779546717 395458373 311360787 279412971 146297780 991552893 680767367 485058016 225235641 358727219 349992360 537061811 464532315 42349471 241627058 509674563 160932619 267408076 182523320 867090294 711105152 615771492 514753025 764921481 178681174 455996466 376803429 224066179 142406529 345793516 108959403 220182575 276721553 446462453 997068765 154413931 310013981 593330931 974699564 458563007 343814360 741919538 594854580 135800599 145112707 67176735 991645511 724185502 594166189 970231596 698919797 829603619 738222021 69226148 863191899 66171662 405478702 519166504 921536550 344599243 236581881 396645159 615538335 955809038 840980078 546261667 715605782 123365417 895803178 541963387 699378731 268047417 281550326 433348750 768811638 532744585 983915931 405935138 372457738 369299918 808958963 957702068 609818841 287301253 47886773 18858054 463739371 362539334 315459872 293880074 844766923 328612238 541525879 206563430 211665987 272450018 530612842 944727501 360499647 656801952 809187833 431978229 996550653 787858189 534667664 765349408 260073727 179702527 506471671 609474931 913005243 632551834 566057096 318870160 136025178 240391125 995109490 433256028 742610615 187352786 658048524 722001597 908830528 439201362 341761610 49553779 200894336 83561835 330900987 22783816 402544744 742879568 825955916 57037077 109778712 326168560 576604688 993279145 85200652 911114381 623841689 760810313 69655996 140885068 466409493 627381102 155158704 317326649 810004844 80881854 703979373 561219625 661152389 697519115 148092205 646899714 41586303 913493777 588876626 419371818 543794577 871070067 624381444 287847226 734063915 30643356 248001200 921705420 131233043 941947216 794972220 532052564 673730427 437012670 726059807 566074209 62633496 291084441 722647780 844377714 761439215 928850445 274309428 257237182 746329957 325228936 612545169 267359257 685786034 716167488 467381008 49066142 229822732 400317032 149395721 992968509 147976928 437905136 425084960 835492571 931558992 196012180 773373023 381448549 621428164 529008943 396075505 15232914 693502503 164762251 408399145 569808356 242804993 644124545 203711475 771940848 512670548 189814403 739452620 918326904 506851480 428920131 746639760 420211542 267800459 704982949 686452013 789645175 936921357 112996242 153231941 570360664 957700796 54889841 468336052 84426218 750347080 602263529 919661890 983714331 544358922 935706938 326451312 36025946 526825408 450698280 518345965 910326901 826593638 975080111 936811766 569961801 272137906 432494731 561370939 807995898 400272344 40463393 690682654 660447808 220105666 627665940 322053175 404735813 9345362 210045659 159139314 320657516 543207295 491501479 301735399 677772773 91188008 724191580 725544529 871632415 428593649 543017638 882359665 804079926 436488695 262704619 394189554 553330250 623629214 862919470 282448314 856779264 868618646 687913510 3963897 397123516 475381296 994141846 692856778 666671209 895675109 583199238 118249997 197213522 105377363 312383674 513589443 118511608 37613686 648921038 1243346 694304747 365474054 312655166 526681637 404686690 341861602 547304116 349775952 633756535 710107033 412638538 117178244 764005887 332361936 412551392 64628314 901618234 394004041 451230865 574825866 822430784 825501402 720128752 172342178 622625991 936375048 689147016 920852665 966985118 191695955 87851564 784309595 99970365 946745906 797104527 1574281 150918319 820076489 556159026 776667296 505912547 324045627 931644686 869692235 615013037 127309408 169513569 623734289 352095876 831420944 350027461 540518733 730803642 184187157 413207127 932285019 639874935 909562668 470159811 836074442 287839945 464405353 782860913 508334255 769806222 229285512 883279634 921400282 62710462 942433389 134559073 46073254 395380236 487344583 198424898 201424003 688678190 968888386 588957161 331965839 586948554 309588146 19523961 753276334 477460608 825885219 756750227 20231547 681263306 269870083 325658110 142419401 710073383 980763873 567491787 45644763 702012888 399648921 506437455 13550968 743615759 109150041 38585923 471267063 809501473 405024232 481944381 681249630 213153521 866434865 743186533 933233567 195865744 648633261 870757379 88233477 255748663 952812366 42439370 930428038 369860299 218955593 791980438 499023811 371458339 140643942 915550101 395429261 26889473 352567315 249774834 701763868 24449628 819065817 913457608 93931210 362381454 735798533 771555952 266826721 708036090 238837164 830655704 187617654 653340361 811478169 228790064 717434188 680207698 157090325 116204813 345642752 581398814 422399017 918359102 723465174 92514725 104810508 566576510 420612801 975948879 229018644 333435555 592259783 311982828 996989002 136436990 561065210 8985967 846325925 882639991 234854406 553644795 846494880 654141 249309673 955978877 426759900 677323103 679135087 642108314 969112721 430608203 369749636 221631468 665596495 871704551 23316660 981062674 239020577 679627445 590458245 6720607 464231878 574760293 820396668 116801146 891112871 771912963 343641775 307681389 293885035 88115666 730820774 24602273 969693566 235331218 741597946 641587151 772806157 6332804 867478960 325954058 132601868 38698851 868059427 986491359 241745213 579950391 153082771 321366665 871607304 155106725 442149021 534354094 873478327 590779991 288468632 421650484 916599072 563870455 901239033 89496035 267749361 563052638 541755733 394049308 749456927 581840445 379090171 677607575 373844523 11442971 740364379 897846309 440327344 644250824 281461721 77690702 34656999 786075629 597884519 442185342 503118998 977597613 54533059 665676897 336096643 590070986 795194220 152172028 159767168 67922957 318434221 789727988 514636628 152970803 802858313 103983203 865309433 331726503 882048491 425225693 40035771 937363345 128546911 875062566 266296632 848194680 121648765 86065276 544378127 502357095 704538242 424506269 264591959 818815842 317195961 376392754 738659403 618704091 880465839 953168319 25056980 80031677 465725552 409496137 974906231 689381399 597271147 413548679 548353916 814851323 564406665 339110899 79629239 893354530 24315357 246783059 249144982 168242369 191598288 618381641 632752083 928078986 137626484 973852375 703113068 40870426 366267789 422910371 217759574 722148713 808814095 250525227 161980660 776639894 251385282 108654431 873337552 506841970 922165351 690546587 613320811 591945318 799215284 911390995 168981128 876436854 279851467 656468967 562602299 978266316 392681837 885081946 467171484 801779163 740777336 139464952 85913386 945135849 148228307 479885376 874874359 675314875 845731190 559916430 621278105 579034707 586715864 590178899 148533509 75447514 743496975 128776171 943609388 730632273 379816479 917674381 899266786 45850053 149763469 994010559 61065560 495607589 446618067 927845390 984754510 16947074 782665961 737661114 229692142 167034761 158528877 992163934 562450717 751053283 23242367 345858087 557961927 953403488 48589235 804217236 293558072 7593363 549163071 885198022 530386673 403554513 124655023 793993403 836101924 7031554 865876164 453253685 467874680 333098801 831404863 854897998 470653118 305823630 332277000 204965488 128487749 448205307 325241796 362196018 702193818 403373331 173697808 113361109 163989119 459616075 346700097 181102544 338504876 65536045 814836856 780756504 776913568 448183457 356637375 748622823 360538131 790971655 34190071 764899889 697980413 760258907 938252767 986186004 937791704 45813612 409207583 887438422 800349135 925088918 336763842 548169343 422856652 236785780 659882683 90549524 926391601 185759336 550919073 640528698 895094982 547907697 389347104 539152463 110380726 863348296 863113175 799374874 560632497 343165968 811815391 189180638 907690237 722666454 722573250 869019479 524197455 570889976 637071614 447282667 237359833 473074948 65219352 470579410 175313398 664242618 14485524 240370532 897661510 907883209 65622244 154374402 34185454 235180455 818205928 575928203 669014173 461043446 570168804 368851351 800294636 146252617 304031148 353998814 842544573 737916011 299437311 699662469 929328844 468600160 704624298 942681879 662794189 264331991 865223814 56277153 958287051 760859758 702805875 278914680 990707976 131371193 757682643 741317274 223269773 961588848 693242226 638291783 910104466 510689208 975583291 607691098 390300504 39785568 898280278 816061814 355369732 267737881 291997016 896098486 686783254 34921907 164728459 368250726 714153252 614380439 608287387 919034784 83449627 341413656 329847381 568895760 485916375 289413890 192431547 13629070 601518046 18269074 942776922 76991248 608054424 214439996 183457046 712941337 359552521 496883802 874671027 103142880 275738146 802753916 351022561 55259210 607992199 872476522 384385283 756881948 336579096 745123931 996734606 536099167 625767976 420511504 148991931 470064304 444773235 801813033 832395534 637969249 125475616 49534538 573996216 561010923 450217273 39254815 801661090 39935536 399465408 718620411 402276071 643062545 245345175 288268838 578124474 784600559 472455645 404264730 847400481 155622533 672498294 288914315 506729605 954868887 818429795 90804180 988960801 404399216 535979512 525566960 374397522 42499840 407678339 380797773 585331282 768150846 372097805 920208052 466997674 201042561 528194118 927836544 522014632 628772630 814101802 923314103 776148124 718509992 989295674 789364528 105814541 180126901 274310567 832775115 184159797 847053593 925298300 894372239 940670937 983974685 890037583 660066873 660354285 884150437 275099812 679920593 140883451 267435698 813623143 566963655 183562433 688011183 205690119 97039744 492832423 368598679 258380597 146929482 677588513 155603856 525798006 433844689 766804472 356830173 294984121 976942457 49027290 799456700 506184694 672765107 625772952 760234365 873467582 939937917 637886977 574040918 843611790 690247430 530750709 21003394 746064386 317978529 575146157 454342917 172613671 508759980 856728029 804812029 623083822 254463751 361781352 202603892 23535866 718182338 898424570 828139016 423483041 39634424 384870335 509232481 380364672 828285621 171606581 392999119 621859229 404116848 31411285 747018017 999585415 442378338 489179651 533909525 577975743 230670321 718566696 54412235 113240845 351623373 746199684 567394086 427748467 769316136 696553894 137772328 288348978 27750560 29327606 212203863 731547353 942952573 136412676 998274982 338477427 745415953 4738792 582098692 315071066 100636084 180457920 562647095 654307672 435498623 257845695 115267076 362324604 107331007 931568048 529271097 863659981 913053499 626273804 988236549 68312357 725675672 411071018 420167520 245436404 355709055 464910972 661049534 795053589 673788468 607667501 663334855 772915225 280973764 994389406 383994091 211341934 511003415 273353860 78607113 953077858 718358698 133529321 705546375 876033693 807266949 289349228 646397006 614207146 131977703 182882660 384906743 783783992 763904657 178556519 780090325 354321563 451673899 897074872 196630618 375967220 87405603 846042426 972239951 30700286 824924568 65010069 497675173 663367727 440350966 657143341 944398412 41557590 176092427 271763450 763698333 344568218 731121779 951863352 234111704 622934138 682846612 343890786 372527158 526607951 674920126 14772766 198578278 140372305 50700199 139716806 644725469 286732324 417082563 239022436 701581900 481381219 328647127 664116202 294011792 670255581 828443147 36969105 146996968 811006552 415392422 156480183 202716851 339867811 113037453 748390211 367693683 223805328 918255764 950494187 647703774 982831155 8712158 75507676 933415779 268653642 907462356 129244935 281252392 547996597 284215436 723379436 398428016 387779835 548607558 87097786 571295052 160024507 469519420 40057488 43132728 741669676 896706550 201034503 458301948 986260668 27108191 450181414 548122959 943459958 569033440 245250099 543407932 95139151 522887726 30479872 59259081 851326532 554434595 192103284 953035896 68107332 748925559 850043263 355867500 718435174 34184761 228353488 353737717 643122672 887564509 524737811 483880322 666057772 399730839 978772034 817470049 289120023 841704804 958424795 794269508 672277505 576492961 707382454 586427461 307043950 552093045 753694628 321710770 553635132 50319230 856447628 14623381 522401095 488809847 894765674 353341555 114013898 393197656 566736540 570087436 301593795 367467185 436655490 857987807 845469788 693399168 220336861 829143732 942773596 884124733 948704437 706411482 909464597 954647963 23594911 570586237 243008262 805280949 25151356 124942253 746191039 423632351 982627561 313342706 369251430 733106214 928445953 225856117 853903627 563271122 300781006 817124279 642520282 884855158 10063079 46923043 785171422 116428795 867720085 694971727 849671206 257076613 624386818 548888420 617223447 535746623 680346912 94852155 994693185 94268352 342250836 910037189 749243825 830562671 282902902 322762505 456571208 612793031 26548978 498430214 772776071 290549368 572678131 637268367 465345483 973370213 225095718 858561310 574604510 926618960 648899861 937970963 596208973 2335299 898252019 481395776 759480330 689315095 424949045 140497575 35032303 559927556 662619296 849672939 982642366 522359349 511179793 438977995 580905364 409550986 642135153 716337696 101405372 218872581 529981032 245117037 591334714 328396959 138570440 716803280 462985022 474525393 663942654 699726819 864671898 941821607 565840057 616481460 532235860 835984464 34515610 904792467 193585843 502483964 616251121 253023658 271992294 420005685 475074776 289621850 816311156 205023804 872503429 881213850 127280832 455150238 559904346 552984287 698303336 300020534 136132845 576758508 252489234 356786866 454941884 198239405 720084103 45000993 951940475 905926977 672723621 355020624 929676373 412320471 571435432 820774232 144002734 688886811 739924195 854396373 593450951 457096558 354699031 568581639 831536438 102717204 44378934 974197760 33469087 161915994 641431482 950824035 291349721 438542244 170964354 326488293 543892261 120755605 287742002 118274955 354282103 569050012 785585438 213257080 598746858 470410189 717576506 545961409 713765882 688320964 566692900 857035939 403833611 934053534 130444738 225683525 982842105 726538827 611816594 691123487 977439145 183562261 941947098 738107327 401613239 296003870 721480233 382120656 531165141 760819021 130025440 813356633 549616791 759656475 321624478 871206451 876649830 206907293 855518475 337735086 219425257 957468776 591921352 852286622 892647670 125278219 387656418 26072121 881674154 713227297 999617637 66367325 893337826 240225112 453090998 553137029 591536783 883392251 681749037 696581241 101718301 296009648 299324694 576227592 167706922 615899122 76767526 596293042 546975386 846384687 685069722 174857782 550650779 743253785 598274056 577388551 363513035 211919702 817755864 751293136 93174810 212732013 552484381 882558283 131417780 207993612 638188325 529772262 480144240 580491308 168464486 212722356 201543918 676653396 757824151 90812404 441012587 569530143 45153923 72097381 519450377 379169955 960091508 820900143 809527272 688021262 69580190 25126190 499978765 802990653 759741624 372528102 314198430 726342725 512384129 629574821 78093592 203176249 310962908 182924747 251052329 283380151 27136237 569552842 236122376 900891588 912780572 35302805 172852281 149970101 496118380 814475584 62875974 411191677 380440220 920041006 849492589 401736045 691752365 254508131 567858961 281990538 447187538 83208020 582071377 387115380 447528572 664364034 602594306 209671059 605070916 425587670 562627231 788189696 73947782 670393175 64143328 235227669 70656494 360151518 884421498 333177286 194477857 677992266 636441291 422810289 957297840 517300103 88508187 501834123 76884006 981757903 222806297 272898893 679447395 994013983 917425634 142422105 115753052 838698319 229287157 293357308 605827354 205393799 186143689 367293335 534809878 20431790 717500910 197243569 469644950 745477854 129080534 531286191 739006975 3919628 510250161 648801833 284787666 145960031 544100191 4442033 817358244 323386424 45624687 727357111 790297694 233258355 814290535 520485285 488458546 348868906 211241095 751712282 104431765 430458939 2186682 336013042 139216045 879025581 96693648 196541792 841502862 418628203 710694398 475848329 976402194 47548877 567287554 496930466 675440214 559886964 664816445 30955313 864444704 685179411 273671487 285526261 976388617 980365059 579359397 707193907 111242108 627656722 1055474 994338713 460029086 298230839 294085762 655071967 295556890 91153931 226589872 826113558 123972674 204728582 625064751 416535000 177469133 57339434 285600552 953383607 319167330 819492222 970868285 209661849 252778156 835285770 304927783 649163846 638761240 529743368 727513352 985741222 68988168 345139000 169949058 382193638 154815581 899358666 547797155 612329150 217390926 967188145 121860757 59315346 373965972 375163179 540560801 771667342 529332334 544329252 589911170 721476455 487937244 519126933 951312224 795737683 293772323 453486173 346629572 903835378 578916194 919743226 44404130 152949850 932368044 869027629 815255811 911448908 883781306 521076152 105241246 888890321 334325060 668080649 344212829 418517136 796989917 360109961 414200520 44950117 121478573 872430947 904098166 196943399 380042152 898611209 639564480 961995639 53049027 340263076 937193895 541769171 764233406 333930218 421856447 469913264 950985855 320327397 623299237 520828253 174784875 242121091 999359452 219493184 597089863 266836499 581745359 277860134 842278635 676737530 212278044 131962862 187328882 462516424 924230838 654411601 25592597 835389271 25419648 275534500 250158968 105627012 726269630 348648665 15137999 569532386 371489551 367640914 878352631 548669809 510463963 419177186 932486744 460028084 974086641 694055230 407868371 39924002 569580294 441050017 398896854 623271956 327136956 465935229 657693443 68953022 698625829 124114225 248715508 472251952 190916447 488468196 535462174 801893507 118669751 271287290 275521929 729988324 946818155 813754495 531996021 589439629 627235952 162362226 905089070 446248775 139102719 959706765 528262592 380048346 876133852 180109821 820331203 832155539 949263994 95973436 812874959 32266874 71676148 546460336 165242324 48233320 651327403 45820261 28445674 435903855 193861146 791536606 129105123 902958406 601431340 926601040 427339388 213878308 135423118 596733503 897719979 268658098 987154997 234205459 599915055 316883539 5183081 576323191 772352861 125802441 720743547 961148288 952691094 588130772 74704257 67885215 584260714 136914181 701458785 733883589 80507111 642041350 491837726 793754583 95556127 800036393 809001875 527707235 55509806 893083983 549040884 581572820 622061740 61836795 903836285 1746756 351069599 373180062 349353784 574993702 788746374 720934028 138122360 397787685 306069515 175815114 331205198 367490200 757107379 508037618 811159966 575577272 662331516 564564152 279271647 933616755 91593297 523590451 189918795 904569296 325463518 920394424 492283583 610993698 904507685 28638983 4116698 975429618 459810221 982638511 929627115 316005577 974263413 513471127 502738427 830750063 46795664 820455542 425715853 620691303 57758821 783189966 814029115 381380287 184557553 41192964 75705288 442958614 962847847 704214329 475318154 357356833 771072231 711118131 983510496 422448272 746844737 879749187 172238244 141194714 339257346 401320758 547191462 263415741 882078982 694594982 51876629 490674250 21971714 349568841 570081183 529232908 101706034 169517449 990403281 148071214 784861409 14624132 752547973 383734899 243069579 132371043 124525972 177446623 108516063 193464463 765882311 736517212 345949439 376470830 412014347 357406675 712052237 715007540 120084889 363446265 231924251 435210769 873036278 56389725 799417807 318660654 976937916 19245918 721323165 377142046 686330291 949423385 12917562 279831750 293338169 45120811 577055378 705434411 167516803 58629022 192461288 429938040 474634002 529065234 229511086 729757623 675710065 566296481 381626714 413968080 991154629 179136853 302693341 164331756 526631305 140299398 729476676 562108245 54002926 90893029 443999732 921320848 848975002 547362001 181079874 263319596 419245138 338543954 928799008 35821215 883048618 464990900 36800411 451758342 425800457 655331645 851461786 840846595 34970135 797017918 405549854 880676810 260815346 18582098 337894595 158270550 932510981 183185395 819436891 253047493 457572262 840153037 838373328 941299311 543262073 865529869 967445343 579527377 266809656 722401319 128008056 119897733 648684862 646305476 432742457 947097762 592915760 254817590 707410756 890370290 183511050 654763088 855211936 187270335 65582046 897701547 259178921 840472314 625298038 129501508 677059631 444030739 481172244 320955582 285230251 97246612 693029683 945983019 75795338 73496409 199004471 390333260 657880682 480932440 39872944 131931757 409651925 971445623 600367167 981466464 892499006 707710694 531794500 586284583 319059102 572223669 472389474 568033484 394882192 104911753 762810229 859884407 152863537 385521351 505382494 815550409 756473624 442065549 332297092 667957944 161795317 475014007 821098007 336640122 783096688 683783577 631246556 286548265 533180484 826347639 586242913 149380561 578652986 599233328 827930667 779316896 420270307 205370175 947355463 282346781 783778233 76543692 218084760 230794490 886163801 372737569 620963079 436790861 79700855 246564985 53884827 196469253 307027858 487658907 391607639 660456428 598080682 578901555 841920025 915076653 177791064 545121322 37286713 193636726 543358515 298164386 677875265 36902186 685671820 512596844 822105284 308969335 677876522 473534971 289485246 517372620 418309964 777192595 984724874 554346180 966884505 414989304 287959148 21063997 617556606 824638955 819932468 619008104 785703906 643859292 784132606 535102566 125216972 464802490 914711131 275454873 833920334 100032118 610979388 407527420 892548410 549049520 300607974 634875040 895773484 586680423 236090066 999110285 149935338 924516028 341179347 318475388 293252397 618938616 736230643 409658926 991750347 957517588 781640926 977923268 316894114 646932244 298864776 277123097 391459986 703033571 226132254 45782890 340835786 721481470 111589289 345520177 947025038 992812748 333736791 44896071 107143918 847571347 149743779 59144497 754131016 851191359 667328477 96577929 64511886 284103610 261101309 149331305 957369360 974748165 990986929 69191331 198053450 332016627 403918049 335521887 137042102 901580668 119013266 173781132 436668283 534845284 215968836 138522358 507772586 396014368 372239395 165027464 87601749 741704889 55768844 899860089 143598232 677740307 774992459 488210212 434526098 595674151 9452429 774611168 271625162 834938150 517118238 667258327 651365600 35009094 648265152 14773457 64183023 752495950 780901444 889689861 239222463 916500025 655119819 730532540 48908992 928501337 344740869 793472001 279050750 961936761 306732701 761621277 721702881 416587265 758457203 976886334 276478201 43522012 376080337 865922791 704305773 24858114 303581357 460049676 764345552 233737524 361884226 22582358 795759570 489108212 688256871 116254635 788383141 18943818 227530644 932584783 713292333 485573401 550568723 434214305 40401665 546602885 899621488 338376778 591385387 163757681 798886682 823127702 676508082 499849217 652197151 590420094 696544390 901052971 255758039 803432768 112087998 809374673 341181069 696100361 376906515 770441367 20465938 227728315 980792704 638896338 661408366 578990062 236758626 423805745 380564162 475287097 587141831 506431118 714798888 469250605 39718358 186611872 28411843 197559607 315813309 879282278 333149742 228454237 192472724 608679089 581094890 595586921 393746745 316360395 978482494 796883253 247891890 968265188 614108565 869081290 83421011 771717077 878168914 406051761 869567402 160435800 323969227 641014538 475772534 715350665 625592800 599933303 676221164 224246169 376328175 91651514 142910894 534853798 179241349 960551089 613703245 362458392 10115927 601833603 754903200 89801155 864539079 618504521 623100063 729430531 250194764 154124854 562884821 541177843 85839809 402019419 396791572 543640105 86264408 706858257 117332375 280700016 114233815 152126243 357853719 43212356 64920123 734550497 207817007 6077749 929566448 231241746 684698580 433585440 938897990 662398818 102703798 156174138 574261912 370140042 321711646 385595212 546455804 642745500 489010470 974960556 413973594 96550343 172040847 251884937 993468951 782207254 689881895 54912326 643761160 161080270 383422277 581111728 970074137 827448390 603434483 810425841 864995522 98348666 410742968 396196274 493697499 947308065 816570395 55348655 325664564 906186431 684048678 331737097 22240605 695632295 470499913 99858978 492745746 278271671 100626693 887735148 374981464 868036816 305736801 780538627 885628442 793863751 73964409 642509360 678141228 10358126 422571706 406323671 831276678 314745986 556829921 919416109 246912949 555728206 654709272 352436907 429717998 885734777 157906375 642846814 772412046 220124645 28448224 280622756 227416667 24127254 639163537 646804057 310935673 238530297 753363058 469271808 240589118 212857473 21753307 243836339 473001455 384185445 943143389 852297996 843876410 401898681 526913426 763857928 732268916 397577427 982274251 547390813 464267456 66682139 518502039 362663636 2155855 812429351 375162474 267045706 436312634 574892951 259367395 98563681 670932564 576625538 569620683 23590595 795444541 363157031 868262509 356869203 455880970 85247895 105028396 520274452 591571046 759976058 816090130 848525229 928474088 414943916 746049282 7199718 87801526 667018850 436439213 604844409 229180891 893974130 759855220 148394291 347948286 957219767 944773031 77144311 888507122 992474302 506683152 902317597 803511897 229758516 103113126 184099822 754430669 331578300 682253057 401844506 48933032 382319394 438869671 980594524 34456870 143655976 627038160 58503580 681689395 524052723 492751384 47558541 489957162 498666476 203997959 331677261 774141861 911412212 27901493 653824030 299175251 829722809 479243762 899310046 372079109 772836018 418341814 576816462 351539363 313231120 999244641 134881491 732037258 858164984 560337460 359853735 315973964 152357400 26765291 207423615 671452325 526918377 11130336 12651211 907422491 948781056 707466181 742756997 211808376 772882044 926990983 280573129 513893107 622272749 750034447 791692816 597634339 160954058 530321490 742455202 37509006 887827140 616383283 723385818 365719737 728338842 358181894 934486988 568241098 667382787 822195616 908923191 45187622 657558324 726686151 628440889 41755923 608368555 71799451 431742953 371014259 10646881 716264069 567694521 989002776 335643112 46125459 171056637 670351978 686112920 832263549 689310511 83971345 991955455 813871756 255136119 892540651 922672244 525104799 990458173 133171126 316326759 552065848 432509488 161390638 427091817 525304263 655283011 85317921 832614005 253278111 399252750 211838243 395630280 768366348 114201472 379096003 786021071 956027744 399084356 643552653 604036277 224482593 392743483 842165722 331881064 757928340 167851319 858911361 338786105 495343353 186233514 629462842 354222378 753211005 479562869 680263795 749384040 25436370 735534413 827990995 757550209 615199072 153700530 632910663 911924265 221593834 726060945 233791367 268155619 516884211 90461896 496234730 283649693 272700482 706409613 572985439 867214902 245480848 4928969 437655750 860822762 451534019 660114193 743274334 591958406 11774527 983413483 638386053 944014734 484856172 111306166 763409968 572168751 682721857 251034779 640304711 697093561 43260608 240100617 382920689 334402103 259815955 776190165 989678523 625275963 855590511 54614141 151706841 694558430 789305280 35004350 420966805 78548509 324504066 17470665 701945132 572411532 761719665 247253632 98125143 423064070 713418985 810965348 295135545 24610076 577389739 354644422 900915957 546035007 32665084 541049817 936842588 348124299 676744620 999738548 242769478 951209692 463901321 213888157 807451943 35135819 854845619 154324884 221723567 455492409 934130096 950690797 882974850 620821308 29789127 254069757 608907736 390216274 723036514 988998112 718278178 819739291 119898125 604046827 768474763 484528727 272568563 416387863 367816715 685156527 479107748 556558377 562967562 180588466 959022853 255505547 943962947 487267803 694994201 601412773 2911392 334344489 636218003 926409390 162153067 657676086 198354897 122319471 530695940 356113151 502883901 38562350 19017479 441807800 287251049 282743726 591470048 95289974 627794181 317566344 56175597 769851725 170719911 403989162 445254097 91035039 179070493 584936723 568418504 958975210 401293808 717181772 218400520 856526321 762996636 11575005 29621315 687575513 938643162 837569549 149490315 460400474 755451345 989492881 204284360 762517079 155821822 667690767 786612722 892131782 893603833 199810820 207301815 154734478 15727341 997341054 653685669 212561999 470052795 828589916 171947248 268718965 891009834 177899380 77711313 255757770 308068593 158394695 195058463 841150308 303121082 532895431 531193090 38916179 745758282 17433697 830419627 458842779 622899894 956913305 256208623 132811336 445434166 75989411 538872614 272480773 892580840 313900704 642520680 264773998 73382056 600288480 303940792 875379170 514613334 424511696 966513278 677685924 766354144 998023528 820107606 998762804 346607926 287394091 212150312 717528876 729522408 456579573 220759503 553852488 152729397 667144848 557159518 263907030 325873240 398307457 41947887 608639567 826976312 997401733 341572926 510849574 335407431 595364388 934430902 496149669 209186456 995300729 727459073 806960679 625617487 466220879 704022690 443727048 891530356 102760820 494609174 228290946 521668437 929504364 78197513 628124214 895933765 511202302 187104867 723650401 459332880 697243307 764422478 95819300 413031069 994652866 335039813 330111410 783150434 500246405 344929779 947936163 709658544 163520730 532116058 429898499 951254163 332388460 348413103 215653134 11301457 590835561 906311124 474321190 738064781 104387110 348629411 33422009 981057692 858497094 57806195 684734430 338038489 798011292 239136475 426116315 342773451 455071624 170766692 183613945 699281941 292972879 942932674 973312380 741150864 804808794 527900088 472007290 92762103 281896748 179909545 665469428 453999503 870831172 702654965 286097579 463275631 540199135 126765048 837202173 81676556 353741169 208781032 239567894 7794581 501853101 176994363 10237646 66916717 487515389 119722947 486347391 52437867 308818416 237190770 1517148 211360774 94690139 25563592 510033695 529277043 461362782 560362630 344352375 72064466 984545537 85357545 188877909 863804956 600218505 242214810 488577912 634345812 182611363 479729112 349852395 582932010 410165066 489534142 601944357 45803145 464630838 788401382 801503521 701290131 314938097 687066217 86503326 57651080 778136850 472523720 273543337 610226510 777912445 290256932 891289866 817387712 208337440 330342002 687670930 122282873 398581240 756292948 670124925 131515906 936300476 753087819 142666073 302071572 584602412 894397046 253368163 551259222 625136335 150477799 439385666 958381253 269744936 708269786 628406949 898801880 190172135 205359695 439788506 884265805 468596863 96986722 688993196 38419095 209768051 79129294 194428213 999055055 450362401 173855220 921748165 11377135 423819281 407356859 542249927 971121509 619016998 785776533 985675364 891136713 250600950 191502188 763217948 547600081 88670215 860362178 977914662 632811523 68145533 856440788 342667409 388107743 932968613 910191664 883900044 740544805 930579780 583551857 251948935 53060802 327081873 401670680 952705998 543005132 298130105 283865231 953477380 812719217 557227635 595496217 223022202 547548715 761042215 563956003 348681835 750821325 671696131 588542592 486609746 667346468 6786514 867055178 656578662 106729025 768204816 81549459 915596938 454902044 368959826 809399576 413566223 527964523 780957360 817677051 676762946 793022971 947442681 627479923 754306373 30086771 76284820 266294458 446632780 452504910 61862577 350427381 919461382 668364415 839065790 807134048 634018630 495542776 608391166 276602686 496397604 132248664 810316783 344530781 698976856 929034295 679018492 814603781 143417937 132031359 45129178 733931867 263532889 35190802 732225650 283750064 194124927 429045156 701626287 343382919 63753934 594991879 634168986 810517303 130804470 477138341 21728215 955957079 590346925 891642100 884207927 976672691 766111124 55040551 156498901 528193004 509089849 692225436 12117964 81365043 128524171 56147792 850045732 849722522 926568489 108401248 882663468 32156212 841244229 443713423 842075244 32558167 388304119 964734012 103425828 965410948 757388866 445863761 848679874 742274648 413783747 30716064 433049452 750672967 515954386 55182118 819593087 370428497 478770753 555385596 179494871 268029504 54009864 949263478 625846035 332322495 375981357 16100234 5704026 847295001 168737384 677232266 385497582 344928486 120499328 365378566 27419977 997664934 692805280 221330621 156659965 10209322 61097740 198679720 710341104 879650025 137502479 839451193 638969333 244257472 512651570 540357326 923462086 346530213 845487652 906056430 800294893 912286932 808016934 752719093 900334232 2871110 762362265 173560169 261826783 609165983 751594857 323452899 196573773 220421548 280518829 370654181 351768306 963510577 340738750 58318675 326171476 651532762 181671616 412985509 228405075 633897923 934642347 921784789 171124195 450215591 315117900 843238190 157393645 1837158 725634728 282192271 704886729 159142659 309988161 969707102 648401922 710338525 348961179 303506261 440509730 61590068 835888633 47490982 910138154 929505007 899055281 78755696 644121851 396511445 281122672 321556974 777322358 441674320 141256847 251631673 20135145 231301363 253537703 813954270 680587219 350175269 642954898 85940700 612101599 151550919 632492970 339646114 305394546 836043672 388139101 24699258 691124292 428783200 504425718 404640452 918289373 840254134 243401384 867234777 591683906 297803029 311815349 153412804 902335754 811407036 830532531 65069784 792567187 750856969 352434824 263255153 118561106 747348806 835605648 987256360 12778168 691818816 866138990 203135805 358939772 100935608 136876488 431480301 214822065 100239418 779793741 197212599 839588112 605693748 935031895 429358772 133625142 583133640 269920126 440533220 741095502 209908372 216610080 667463054 868642240 842714918 985906306 163537472 581930993 130117146 354626839 708462054 884487687 57420900 970686050 212375833 248665662 324434721 706854131 561614315 100986527 617161215 482415902 263255954 68218508 428665001 910612020 909600067 345824193 11875632 68960703 374771252 331974152 9390854 354109911 759722178 603472801 544042029 617584657 222639916 72253656 866072287 103330443 492239693 524027775 595780737 581929631 195669158 708451128 408917104 724980170 297449993 678777916 548650658 691270698 795740868 546050667 156963613 532128587 601562343 292239778 425710377 647046084 143806270 409755376 288645095 815360129 325414006 247035390 540849521 895698425 475493545 189049860 89050692 286071744 969351270 847956786 395199268 47671515 744838687 190453938 954570469 637962220 724674306 940512663 11324490 674615875 312584615 310700043 117706507 886816856 809730786 355638606 707377910 79734065 647335464 120096187 676450042 791311 121417725 501141132 996958423 331231517 702251469 973332462 740147607 596705102 349483929 682510096 399096697 613020656 399433437 838025484 549440528 398330965 873681859 481868050 471119785 956936369 335938773 102865481 489481363 326981875 610625198 43298562 281484901 677800327 614846396 881167191 204321577 34995051 824483818 648396632 95517458 833452735 787247504 719890402 267830991 995884265 354985730 703174883 709037699 468717435 190766850 332737996 92561735 897281252 480861047 474848195 434320647 594090085 152942393 507424957 644491142 140542003 476825315 819627358 953038015 985848467 350030163 119564102 787364987 595541626 814018225 426693804 323719051 332164545 259357900 292267880 517732707 729496228 237949407 549119332 165733826 12023814 243824575 558780826 781116655 816225909 26754052 885979263 400477961 631927622 511046315 929037362 389297244 10245684 440294819 267643450 569270677 36324329 544268311 431099023 957430933 536505886 30192906 764566772 27082687 998318366 984622197 863951063 571962308 279786399 552081666 851818698 976229735 88642974 44124370 856226702 270167312 910230800 834507878 517312769 443565521 10382764 786844623 429894315 46073691 948660247 379343777 908124109 890914207 764440585 908833546 168952766 775164266 371604604 706892623 306427899 439593565 325652769 626124084 873302133 358903890 556186340 414841030 524637792 175693721 744690337 306868084 309710342 591815422 553457269 238275408 147971824 652852066 152793396 640273554 846737949 728592779 133376092 170321212 924739651 383860520 984226277 304408143 45747973 399934998 475599917 71935334 909207398 395459431 631458285 640492080 810674709 831928535 103318547 812052301 274447269 994717145 524067674 653294270 580557259 153783599 477129625 142884944 97345611 767483252 814146463 941137538 973685170 48166324 21971559 709533529 564949582 843485506 921900061 705069215 649266703 279920504 827129841 632145762 135041255 667973517 462543619 904897824 350406114 782091078 656408582 812535782 619278075 253980874 715236461 50604141 420125511 595718410 912216297 830191426 29523525 920016101 328448027 106632086 885780861 700134445 299392110 39975463 41842388 800069713 590519770 945637952 52936223 757075418 413123083 966948705 512630099 191072590 424080519 670531655 990134164 926104933 747974639 363903566 647522249 551258141 206748972 331946943 491244960 516089289 386602793 690703689 785466679 29292420 341487692 179195978 388363774 312071207 579825249 754884585 559477162 989006211 478768812 713525779 46125258 125885263 159721105 758675408 212165720 315282309 730817020 350654206 625917547 609915783 889683351 641798512 209467501 64677529 462114932 580741645 889723110 469697458 71120324 747721719 428600450 423184624 583726191 813637357 277215455 795621959 806226040 283318080 643357615 581590838 423003987 709461237 292204696 126233724 856247216 748178321 559948605 226887592 821806180 710177033 857935030 124954653 856323716 186001156 939513669 653064226 244556758 294961291 733017525 288239184 165788104 339626030 259459776 437158143 183831683 90944094 365164847 355820463 340235921 263785077 677063635 362043585 913514276 211285986 984156640 923666617 765962100 410772311 654766495 484517899 811373307 687098641 572569508 773287147 718408069 635329483 576531569 290034522 84937398 664680706 650513525 857415592 314172635 663336330 132923474 482660154 544016392 881735697 307268588 118016552 938884340 20537887 558669661 772275987 446752602 347472382 375222028 140687512 705850955 487523341 65791141 14039545 969511146 608799255 540156205 763951588 383759823 925226517 364210210 450192147 713657887 340912677 959405454 721705271 192103005 93953781 907780160 236910684 770663293 13726680 459524666 86525734 808700151 298206290 937379929 75713849 992111899 520152065 676306205 618717224 281620015 309780687 984788407 824287466 883545872 768439883 610673408 786380511 413604220 107588603 49749213 785234382 95554155 742124071 180890674 498676611 689867496 611992882 302431643 572848328 971316844 125676901 273481937 871775021 641321698 971536510 438816572 252932044 648514250 884501557 174414183 357973682 131750052 475648099 281745148 642745019 363601193 130256471 61073423 721046705 482349567 720607356 946816675 123049081 401980644 747731741 577942213 916678262 133546330 923920406 984280379 262481484 861862541 983907088 866247735 832831865 977812962 306097335 935894023 352841636 235938324 584462582 562575918 546170048 703336772 533687374 26212098 341040557 894873312 715351130 263093384 39571318 321006878 55657178 365439269 376817071 732136896 355276106 668163491 986556512 505910197 551062938 302611679 310961701 280936526 767448515 77416609 769955279 479642573 121331013 745470488 272570865 797294510 266556791 506531043 343058233 128852790 459670215 941878898 825755493 483574941 295150976 628904989 164898206 519806744 37088580 290886318 824418113 941073744 296677030 502630747 325202073 110116763 426890866 730937415 223770511 303078132 341218580 24081430 648012194 390612580 760350893 849861502 423250836 761147318 734567196 951799287 793197837 138946686 551183783 151458347 760898469 307294294 542846761 734062853 55889056 3069705 707606422 39773611 378441639 463852501 33685438 447395555 415406155 715553800 136701777 522430574 412207522 165983684 652841822 292469180 926638818 247037988 387267583 52395043 685148101 241555733 916941575 383422789 790348078 435101488 711416623 485283034 764130146 435113014 625352950 258488528 801411717 547963556 147434635 162006098 777741476 905912278 426718232 101702830 161389388 705996422 197786785 828063798 483955376 303168975 370320413 419083979 837549426 618564991 546753630 496419492 848377586 552604497 240313202 973718294 375470159 641897825 517734844 165593901 17798265 449582129 486293863 269391933 849828584 757109243 648176937 838687383 90132538 117813242 772648481 680045718 930673384 855163658 653474418 723656374 160689001 776551084 530259560 677362963 270646592 909786950 867330305 264190792 503931582 264267294 352336290 915866111 935394352 240169521 277827903 883607872 77939022 464539378 16549768 625381904 191389912 410254410 346641843 492517399 632606338 35958064 224474675 828916053 514424558 499033503 530144889 998106975 332895082 38566123 750855198 604539416 366635422 845336953 331593509 858142304 722133017 53306201 537599544 638119003 416119784 134134142 939468567 500710847 808078476 944523570 557832106 148317228 748458878 799299209 739090624 869592580 397383275 148044574 149427040 748670858 354314607 91734124 424268183 268861051 229694902 160220636 804411509 683717203 271583294 587839997 414427828 464903689 671514523 456562141 447773666 295414049 772442483 16830659 882353642 146074589 245798121 754477324 585768451 619531413 663024869 164329155 369445070 159305682 522965051 708425397 331719689 899393978 498873860 908716659 230898514 209160759 555768417 950541858 926167144 658929301 108139713 561292877 826406301 994292172 127384443 871864822 617029326 338660167 928277252 974991999 935341739 808263680 691211847 528163786 461685119 772270493 299447373 180499398 473037262 11027191 44794873 285677136 581973762 906349456 527319050 712464013 632354620 319201985 825892390 461661942 76548165 945643667 573507044 688350350 492373222 321296840 791296212 53487637 786067247 27255419 987810364 957539794 502778455 240566131 454783039 421229607 894654016 948437801 323457936 465721591 180117313 805223378 472475010 795251516 261049447 687762644 284305278 905676650 87061364 486664991 379719933 517095599 406173276 705507571 812684055 95578729 312501507 218499229 91182050 556803532 211203146 812969766 801951355 875207985 552616916 147441043 369066752 58208187 196842096 624360597 155284447 872770982 284483899 298763467 118687681 237391069 504726326 472225482 422644454 413800562 343876403 653330683 397265772 566330311 441315896 203018747 909715499 64899323 483308305 334997595 106813129 20475551 65585436 299753628 373594517 113134952 666672279 446907207 876249561 277308004 347145527 344214267 672563955 36176407 492585742 223710594 229706351 817701928 534056996 610133118 582791872 577645916 114591674 732880741 394665424 782501878 23381547 336863013 572644394 815135925 896791869 337270485 718136277 440316423 396021339 162087909 364639653 996430838 667062988 52768470 20169026 565777694 867572104 243803098 31956485 98641013 931935135 935439163 345278383 858069078 745370458 658518491 715168527 149915187 412659265 355808452 862030715 489993974 406931506 383422308 881825468 887508103 788666882 217961382 453839470 942385956 241128364 14498790 736473175 813831457 917244124 473226318 601043121 950871524 574131557 698558894 413856272 676870141 333870149 596244359 539587218 990941871 745305846 116587776 827315144 599931622 597553594 419728125 967113343 664650118 512998506 827300368 73082079 808460121 519909635 328000801 494180782 754408099 342459307 706091830 339423154 464187967 668044905 304968720 985718454 179689549 782493978 828440576 931978021 127260245 202692581 252233437 182821005 589534960 742614874 538331576 623690577 222148009 325370982 226838920 350722740 465419053 922568838 76101364 275063906 229526573 141164069 199766161 150202477 655010004 743089327 864951365 408120142 639784851 959930133 670354534 252468968 307440891 759312682 225703710 477358472 43109231 702480590 549529507 7992894 297387455 949886336 946542717 192671831 646805236 891068061 662566717 560019790 620940130 114648742 914054403 312163132 64340347 775741579 225038796 673554822 559732609 744163110 799274083 456641181 470591691 4355584 415199647 168703330 644352810 734740913 163092324 862090018 524381128 740959492 303856409 254644928 702484936 610283751 805543353 226911215 126593127 820567143 445947813 358413710 399407544 751898506 250176980 259102784 722823819 432253039 938218134 958613131 186882067 877989424 25292547 530340856 399542812 795454549 526644376 235147773 184140169 867640180 218442559 665647494 525778122 965460158 859252731 59576462 190975280 59460611 991950060 501690568 445998351 378282174 639756325 399273899 646719367 274392928 154103163 472212375 263036071 238868562 639687185 646425430 118642078 583248162 85739446 75691821 455846039 568606196 443759999 392993071 82376801 989560947 577491540 685907074 928064091 830903629 326072083 881266584 474091633 299202230 192130438 791068840 657458029 272621257 91615236 97174715 856598167 771524506 185523879 49082873 292180188 134086644 929142195 834963984 533121193 2787540 250872536 513090680 188389683 778033803 651697482 489666087 379783546 839852814 864816662 728283809 578866502 457742191 289056086 356784681 877873 612495112 653771925 560818182 513279563 947606944 322094502 465943733 313045949 976047583 104361423 604956969 323996743 196699186 127829570 712517563 499048876 920420409 242423199 67880648 949666772 814720610 272813591 782700973 852003286 253010303 709489058 807205967 89210176 767690518 993149756 794003378 589469657 640334256 995120671 953203739 124910291 859230572 79117181 759469927 50861570 373065220 632962500 63145155 708539293 391190316 951997957 536478144 815993610 572581766 922238529 323516256 486303162 88422481 473407842 407141474 587252603 114103660 974329225 564767232 624430933 980398164 232767715 588191833 436493216 792228415 784165566 126359939 398542821 508922712 124117406 578942873 556342841 448099750 832539751 360126327 18674703 779500910 566086253 820642556 944865268 585852455 227535618 526189726 288351806 320450264 663270331 874444938 854051033 298953641 502564642 307952045 584562340 140127563 503389746 400050492 343754152 13000823 948692464 911300045 151730603 787469674 706724158 464041610 625445060 969054637 153651837 323721709 422983611 580598380 745022689 146776211 584064700 249644928 270051895 300998918 541431753 995882565 535182302 992331557 760248010 403147529 721279100 571282692 478278702 321273759 981270526 746720259 290598440 828929022 614725351 19567792 857086856 4323167 904906289 979705175 784611691 721882964 211957697 64947158 678701926 432626800 412006822 307764574 4029766 558179781 906820148 732390052 617932529 50585091 996829716 111312843 571549229 389040876 292157023 430051054 907893781 829800685 644341578 549634481 366941452 894328663 882441300 839192993 923090309 546512326 391967020 75983704 902614608 88076310 822864549 883421309 948055122 365179931 676851116 763687104 197830982 419761384 823873135 232819093 133675021 786013231 80475093 546403914 117789074 931957093 160447400 654372314 716351339 630530625 406951646 55487236 81265812 18225350 417775888 881073888 941938433 175111739 227470471 133943793 45400810 78761551 779867311 514404310 100669257 67857528 29081497 937886567 484198641 747292957 752512459 812411118 106503697 691392911 234746026 566978131 202670341 844091645 401504263 10526236 847310635 414913477 163088480 825209677 381623666 333343202 560093987 332816376 556591809 675696261 95499475 987543211 122655485 921400368 363470829 835189573 478094300 83763448 858153082 949343682 971366860 691258495 969164434 456302241 982918095 122759795 725429480 645621569 571700996 304173803 606045226 418606237 519595452 236953542 210277309 315544607 67046539 980820064 386554018 773148262 48883423 487113245 606823390 156837712 813086104 156255699 234454143 165167331 779235443 134324095 288837868 314183674 301596561 411337790 241607230 290018905 999880590 72851144 943724046 800338528 542483333 618729341 463682145 952221797 440296687 547341924 844006564 154003589 994107213 749635413 798527740 315253272 823697188 472760683 766812466 200486562 440724674 120492397 499323016 712395182 403775629 973890278 972588640 340771794 521353121 943435185 751377079 937603933 911814679 890010024 846572927 458570987 842305915 598577765 380437830 100026135 784126479 876635581 778635788 482366647 752174816 554998940 44185265 713888051 961547409 272142961 950653553 590581082 933067010 748557176 476108459 656112631 935023149 330429226 956494932 340100444 330285588 280695020 3495802 191138315 95395176 106191983 551947366 269406704 263016857 241229351 214045239 831828251 967952376 75402497 734630727 552000222 191079357 351578984 970428375 693607260 69825243 486671382 773891041 41935400 938540265 389311122 6919558 374143305 777808028 813564391 586792079 978884952 579462709 374857937 619380540 221124839 882132562 645105786 976073152 915819085 217985718 205511299 212785309 161741762 782930272 522260560 315934772 539336238 858991460 468832426 409319854 699329436 460861471 475709901 969595129 545109055 608592942 167156410 608391516 560672216 673018782 102091273 813662404 97230468 552067735 394679332 983361188 243198386 689950720 49845565 675898868 956128779 568591342 756329170 720473697 390059471 846493116 286844462 635343695 445884770 807627282 777913076 985036933 639749186 544845032 296743720 112175451 875979761 15804363 558805986 574870901 162571754 350213001 249189810 410381870 104942822 237964130 643542732 499124642 381486712 825099009 819928582 776118033 740690336 736379206 809234215 25925069 795724618 429547945 609252170 165416379 882695468 825233439 27731807 577661337 193856791 336399078 705252932 469941420 787837233 940636943 987611082 54356333 44006547 235902211 794358764 737510645 888461848 724529605 321919073 446288451 309498920 702137260 201295286 263071294 650362069 169481603 306617408 786886275 671809771 166846794 535429314 871448756 378548022 441457082 970427309 424817598 405279127 378955310 293662649 86975357 970208666 833756910 334705877 674855277 376567929 142416933 338628630 533740928 745441028 628655336 783936028 48239762 683488549 218745448 268833965 559358799 556795322 646823434 829332375 926360765 197861731 833998168 973384806 852853154 288866882 258656410 579321762 895729915 350751290 366670193 558967348 506457312 797538471 697772240 702007495 18666908 181062826 969323538 806677971 310956313 755718098 588456185 438656868 201195388 883724684 409769190 398569123 770005909 10829239 439517629 302667451 488261280 653981262 618031445 17925456 208092814 35028114 828328399 779690586 82045012 469533101 375869929 525625536 380439672 770650532 469985918 799881932 562505009 231295758 11680360 800552628 101624624 544218994 484337438 403867532 455410492 883418610 279387941 949042525 989951957 753552943 777099947 193530719 525575154 524998559 938794406 545943217 728073696 937472813 302644202 44805402 885800048 309793911 141357116 380628948 230588574 185871229 86687652 619262428 155844840 194476525 102775282 473701839 795826960 944526058 641246398 938851205 63871908 942114258 68300322 312022481 479605183 836744812 753840116 126344291 597436381 494828899 46292941 653554592 344499032 651154277 830321126 931259934 78906251 464476856 456189258 266921078 769664273 672181924 888637643 825432193 192146245 369197570 117899539 220517592 38551292 951993539 732847482 778789280 14470707 356447920 85034503 175153250 514676044 446415626 346060469 978621004 760218978 660850146 219422390 550288486 985716121 769840935 275447772 571166468 698691249 655982977 586881513 508378790 201847586 559316290 445041990 237523071 962004866 552211726 46892036 438729187 863303068 524341197 28591520 237106678 868495277 450910896 591197342 846643075 2644226 921280620 962367408 78487154 4984664 177494300 242120104 806457474 249023250 728813098 405188284 345991530 160712868 608331185 648972477 80899303 801881766 913003967 127064400 649771196 409933260 560124324 257638236 124907072 350514127 443930456 803559294 243212332 784631181 567233739 394234670 634772817 354176409 550355916 234745332 144048140 497691849 367065842 771069404 462605899 747633318 330823614 245184739 848415105 120239343 399646554 818996681 505845234 769176864 290659189 511129449 429763395 702573356 354261620 15233712 296780730 964367835 489302739 338569887 57418770 335764275 996877375 954853336 614086482 169671906 124521953 210838853 617151442 306933077 763056963 384419707 110884999 346318472 904084211 225212146 915851502 416260270 852173119 381577949 872204685 839993126 640103652 228329272 692228370 507685554 186074644 276706690 903673890 39802235 871295830 432377462 864331788 888208114 648560280 63272859 593564092 130902041 186409054 56759840 563452242 621312806 572442032 684503198 33107640 707189040 146443928 418027983 511602023 99236225 44739755 739692300 614629826 517130925 805639969 313009654 135047249 116626011 82924137 830162587 368061128 592352191 931988949 613787074 514060350 446209773 603924497 745608525 75739360 254164873 808221758 175559808 286623697 418776651 352418196 738560114 104607426 920341979 653236784 514903666 750574940 223761683 582465049 400378106 719145928 585083825 920947939 29709233 16615488 926646173 105000846 636677551 645901693 32394548 617370232 693755429 896068399 951748909 483603137 386823012 143608102 117586377 905594681 76827048 758495305 556748534 930817901 724893615 23829717 101584975 101613130 159610799 248473639 621168074 943831328 230984115 613850486 187549616 240662307 679465906 247942271 773636819 547084344 353080412 814027386 780132771 275577828 520781500 582788008 293450398 80350888 772767258 365118205 986062112 743914423 182509153 986777850 992268554 807758692 884757298 354781848 201470093 623228285 617578031 605765933 25756938 565947908 360878657 84780594 363785658 413277751 915286131 13420573 719049169 235874122 48485700 659021803 982837616 580275127 662580936 35060577 686650561 695465370 738091800 364937968 723880362 871566093 923797554 785741328 440129996 149033532 759332189 264112584 819147143 632331511 27174239 81880256 557966157 830881047 728453285 349647546 693063955 329248091 27694323 281941677 347564356 144475467 149149623 217402493 816041514 765424646 625450008 358156794 687221283 904680103 986535021 476804374 12869193 80693620 844235790 471394124 186309507 871181693 122177348 558826148 880432000 643354776 770302884 396037068 402718462 806121451 239358867 566473827 506738791 852172819 67510666 769327352 850325347 29344155 342537844 308507240 893795926 768732208 151206936 751009377 842909975 377686973 254986857 975067345 392957127 902850515 249465443 90577007 476717251 736161404 245720590 103119870 512086000 190261541 475985854 443555072 847329375 906984117 177190826 501117936 468394867 409031929 370268096 105962867 485112276 618007431 984716537 252544967 106770871 755149300 973625345 734085449 664383188 599185056 37229949 642506879 495827832 388589784 124489431 977975835 553597653 943765252 195083506 601874736 400183133 315488040 696642742 802736510 15778635 613205395 635263287 920195182 289283348 777689676 307277779 807773975 616656280 910287652 289114039 623569817 289032529 663585490 344800606 682859458 8142347 216289961 613398339 89315268 506101917 994112453 366158009 233039772 148823773 60625899 635535906 221996760 530683978 520373846 509513187 448370360 488307406 825794950 140919706 22164123 317190847 713245646 329252081 717545959 327536926 767070391 704508763 410294342 423660306 602833873 181752506 413945752 172281926 193637692 877658336 904446163 14205280 971606276 374536114 892674342 500614545 369565904 337877775 89376088 78659914 982245374 800674335 691903965 910584369 158579925 541646885 665506568 593519301 437449865 634042453 709762016 28701349 263912939 488419229 165227278 578731709 360629632 444443885 142032898 863220135 430819278 291745962 548865344 917222981 705660517 227651443 558756623 265616723 189385684 84548026 142889470 114787718 165050963 424781119 142119762 31432256 708694024 388885982 14616713 710520499 575598308 597527172 716619963 567957898 685118169 212768329 13572580 128861019 439346576 941706152 860353681 605519346 389073500 270349412 427308492 328078703 771503059 296825936 783423147 279631540 732986623 359994270 127357427 922366937 639266550 436205189 502341669 439107358 35224762 986002507 940669747 335748244 109609316 221475039 809696010 709440283 96952093 307498063 887649933 886591030 838421609 40008740 864067178 466329188 737226270 711676009 626860535 331360500 369732682 69589744 769988884 722137434 8048052 189220097 193697987 60086859 149867155 353097656 259198405 493231825 22343122 387584694 834357938 632467422 288890665 551430996 704116050 90402610 41099423 898344952 961242507 425876603 502363942 612278636 568646060 114783346 147342134 150767278 734784831 22631328 632735457 288567303 402466141 957341292 874159673 819670093 908425587 987445690 695231989 180214069 2837725 208937595 594881753 282159640 31056922 87537858 529377189 251063620 781851605 412773892 414233344 50877337 848163003 449601857 928297432 987559178 912685192 967366688 151884892 818214859 890682001 3310135 48926928 933943015 928021960 620358742 86217389 847998074 411063920 309076049 987117954 143313274 736759169 200849309 736912138 4887379 919255859 626416569 437444409 679828713 379803550 512712692 880934351 240182274 200191320 230780268 652127292 966126151 714687676 518422213 484167393 182046123 992219138 879895584 514223402 646923229 566375309 260436228 233031515 647516042 667608632 49452252 595280623 958125341 620766772 240532500 268459774 801279334 981302271 21911262 300108972 785355671 600131040 761371941 358839442 579604520 802662126 755156650 843942614 174254811 22469694 617326220 228674336 685161260 462303819 173176569 48792239 587301528 481322321 27575206 528498031 622381381 469536470 195175175 939805560 924093062 993766300 417502802 739576064 809802883 92195960 938995647 59184718 450704191 82926342 907791246 781990640 802179024 171134704 352337768 116226030 102003517 783973902 114482266 829505413 270684507 338137996 910825671 286918352 686040600 342633778 880706665 940362710 207685606 825459183 135267791 173900885 539075201 372750781 853366816 201650736 217520235 267142638 736173861 938794300 654474083 235035968 221528847 636149883 909972498 174904381 343887187 275785109 389144305 686545768 746331608 215278872 327085162 919883686 618561245 473428062 975924428 119745798 514810706 171361587 376224746 877892568 887917965 60941428 608764510 117239737 459197043 640534123 107318908 695497912 665645169 244014696 791664034 763016421 890039896 55053464 977905613 469479763 793715627 12930214 873356017 649150511 332768350 935949616 359397349 674000123 369472731 235179421 328094003 352886317 662865613 667726390 575110112 96373254 591807216 439309526 448833509 451179894 972038290 933600823 659045204 203823207 617963634 990636978 451737772 845628786 835636721 592879940 811750714 97761737 344521492 520183438 174937863 697055224 846648653 241989243 670514089 58530625 794746517 70732251 183357361 70586658 292082403 924387392 909745792 438846520 920813434 236643971 143741356 812926864 618717637 570796779 683028327 184505304 716350188 470997172 32091290 398464434 581257991 756132307 186476678 969483445 780153978 67572727 671611598 876479050 310532630 428525114 397964842 612548013 707784617 69142450 584615629 654297858 233119658 648000042 456138249 616154317 422869848 278219889 218328887 656932572 558904916 597952470 341835675 256391327 118821778 202484674 463393905 146345866 764247550 565055216 170455267 186130178 553861635 113656602 739749334 356384585 977555238 791953127 200477679 374324222 489805426 30005217 545997140 566802228 943943413 262771436 20954408 699881555 671787345 589567231 230617832 539124014 745753317 659886431 742040890 693595563 251566481 438847582 197741895 466591466 453685296 554151933 501533827 139392604 103240247 845176345 342306593 457458328 828884086 721645534 330296325 685221888 134795091 919458143 599379432 338235511 561345767 466680780 496946366 934962621 326528433 887810385 444345716 742425973 154310518 67866952 715012531 450828408 6763166 347315457 59992216 189542539 891885066 400440256 232828553 6305830 914110216 803003940 424259793 361634476 608068652 718253641 128505554 564063239 691708379 297511924 319177160 954288661 624677785 684562501 417457058 906737350 883167942 421337617 572331482 584780119 759277107 669460928 191372476 644881431 741351557 145793798 397967501 951327039 675001525 159145340 21218835 703503718 527591945 355765551 279639991 40341473 265583065 259330419 912262195 90433502 22782036 344124938 204361052 519418007 153664245 664298212 729825334 471956033 921145002 240949300 623249108 369361345 470411368 406338175 354495628 307682182 132429472 798619074 968049788 996799101 640732834 930879105 824903550 291043415 850745807 520933751 396440490 463994400 433124548 516520965 885882264 465020523 366941236 590376485 837182954 993759849 737236907 814307700 335773664 999480348 276198234 546216230 438825496 410195018 796756164 242019803 741554053 204773080 634834714 764926877 500112955 999061421 29030386 974467488 866421043 194766947 758303735 374927599 980854137 909699091 717731847 536390043 301095111 508798545 559933278 92885116 181953667 752920109 675071606 574564924 604933556 635674684 247263915 892461020 28338756 897705491 342601634 709200139 263282389 562664091 14993387 123440263 366170416 278992001 569062996 626941906 694497407 172935985 144790052 545898432 468999329 337583482 64846888 2534373 353814838 295320256 569637504 887597555 825060168 452104792 882820526 713898548 77609076 620173225 481555430 52190643 445150827 578659160 227226711 746840458 114196881 794328694 696438042 642995757 683063613 662314599 634353674 235234738 88732442 274224760 540137443 788362519 187345658 970574192 869876859 445115356 695180026 92008808 243656831 668759357 658928080 561687980 413824642 811925801 259173 531947940 859586929 698468720 986717565 2345705 935327028 531671401 709444147 787637274 455382143 763161566 615149595 537039649 638053366 690019541 314546365 596289959 757218291 88992613 473847923 304817074 180682812 861306619 679711703 987122558 353878997 47532764 719561141 578333949 401783993 925917722 278899408 793281757 769546413 820252157 931437794 203250954 330518535 784532862 670859428 474144973 868847542 679528638 150363930 755389231 9414002 645699990 667276112 831422786 901906670 24097708 538848348 170293352 124833348 50936199 386252451 416387371 942089768 398642666 603223319 180581513 466469941 686388488 495476017 883404659 854950436 13652214 276687182 841066768 292878472 589054420 258194715 347335011 741008746 636732051 680188800 366746284 504468936 168832668 851673097 621881671 888097811 593630962 526696468 698167830 966634983 749661950 85116217 381911949 190171280 542963874 850824289 692433268 380436497 383918411 656071794 481916437 424779856 781449264 112189441 370904228 102474305 999604349 262502427 563108710 136815697 975989395 716996458 220461867 999816208 439622910 932873804 742604932 311095873 305433249 760794134 630584925 464685835 666062763 910951940 541970091 781172038 711528602 996406670 825643484 99657118 496621741 88125741 427505928 596593220 488165951 306308153 456174742 149096954 819001630 154476425 292435508 605646416 237491604 727094275 32411365 180475610 698640679 415262969 964309433 706724376 272184296 373101895 288352997 942196964 145637284 588361106 948814084 211749178 823375437 538183360 990653679 476247777 748793221 934946108 135220450 108968229 237303291 897604812 594885621 355815875 795127361 329610879 382297231 642016194 875573290 947509944 450396790 627895165 739421755 467445046 791974545 156697751 431803967 690582525 30248536 192053760 621941342 355807971 614302454 195924672 974599456 948239591 349343505 825189659 366906206 354188586 792204500 205903604 329908420 590773252 66285311 930855326 741395217 327044456 91252022 844870314 286796463 236197032 352464660 2538893 963276496 451846392 867856222 888348896 869910691 319090427 713027665 231474488 123651609 7142938 307479219 68989107 1051345 575946119 171067318 112139651 177316278 394866309 452577288 223622818 693008797 382328920 863280846 587747024 733492315 420579249 465381137 703445758 757519183 378714606 995112937 76737787 904607373 629966149 728779305 936576372 179048694 751386530 577695326 733482470 177610295 407324415 466521042 164750742 755564565 864220532 46412812 862838710 521747894 659357854 661153782 319801072 863705330 953857643 855850934 526507930 437474123 389807037 231844116 891117220 533310594 368449918 94456976 586968108 409561376 858099573 16734294 527363206 160916685 153757220 178499198 481346967 132159449 361661538 432309596 402108188 551635818 442001394 194530150 303195998 903876917 276748695 892672121 30335150 336367712 975477719 926003661 293370914 902118088 688611023 905513641 457114988 851775426 726920615 92549419 916189570 676579016 776401516 232320292 928322052 279890334 413556165 538192598 999332897 474025967 256095308 227253183 634018048 670762469 543368494 766865201 491813482 982092262 744527330 356762735 33597648 897691281 880132322 350127719 155353199 119799797 305986546 585964805 718669717 324587601 830809052 49513868 108554171 303825228 607919031 604612726 819544528 600981101 553184568 514147412 596901121 433055489 624327764 837355465 420295429 600436453 729760811 640514698 831736355 197645037 514227738 264653473 194474475 96604028 267921528 452797078 772891353 881793184 655735187 852271854 9962448 987574537 762597320 299614713 675883935 82184186 587450972 971117199 999633151 972302886 685693707 259555679 924932646 679435532 457822046 739173302 693616619 809611956 146210237 210431535 250751596 243495926 981210515 441548594 526783557 692920049 200849296 352562187 981657926 531521049 683720412 765388939 660690527 706012942 866065340 572799431 242051117 70546589 769534572 726787224 558404555 192323835 627709160 864108392 689559139 25804656 873368947 314532952 923434362 903646369 732094148 170335670 60719777 370635372 212584472 430995706 515501617 679568133 544282511 325170143 561821368 77982176 85249709 937173170 418469857 749160671 310580483 833677165 305271944 305742711 450583201 707527680 336571034 766229437 990878788 65700755 442683784 432382175 830706740 804391787 642101301 44147758 693497034 935908281 394088225 121143373 767709559 3502579 124168479 901241470 329939063 902905154 889572703 664663288 345628286 857507735 171198429 92038477 810084149 374738248 931883360 71314287 739331475 293064807 220253408 335070849 850055191 272883003 91297377 751797988 789408755 100475989 631516189 232457984 713327824 393381582 655442832 303454899 304727193 125378364 630363557 449169380 803048364 232462183 406030951 585750612 896172921 845955332 308100227 992638971 541941030 441347942 59041541 676380442 432228499 960150304 131000200 273595358 208631612 398533862 355060650 246632273 48081993 892563889 954064723 291026317 445370192 656992972 518958007 981364881 629938682 163717181 660171925 697119450 521354850 310630936 638614697 896831079 90024354 386589070 917966109 140612212 224527387 341152451 22441289 221867051 332987706 68637660 108807674 345236285 922760389 317075395 648671375 179719945 473179949 213475609 300389968 198917988 76046321 967225374 269155788 692214397 14953522 825672920 187365638 252125262 164966655 146522075 988764932 315911002 468259041 273544125 256756738 610107279 332714787 618313558 445998990 779761508 127676523 757671518 208600049 634125515 962133868 260908720 810916684 541281572 753840390 635918173 433500722 989149376 775013183 550802870 567284266 122837650 285511722 820777104 365979028 457654908 579889104 968307434 810201444 537182100 423074067 772078407 807096260 987125648 697196701 607715650 491496894 257953645 304020120 528121121 629486499 15362205 285968688 480256895 61700239 182560834 463078924 696253987 826019445 646768557 408913208 296933449 417296381 253542356 600633097 860823162 94868204 23106695 825619722 261382225 715191558 70427890 348172279 31551884 650299949 713963411 978336149 721719404 423638907 204137844 830313112 108980154 669836016 1612273 16810066 668949262 55889159 627958911 954455586 513998091 723034447 790984940 357935117 446285185 231034004 770340830 714535302 970417281 917734240 29045496 980457094 372783620 819896027 374933254 960864484 93553122 561827170 142628261 452194966 471714128 693802291 461810433 237393213 178360489 575503279 714338336 557848744 698183354 483865281 568490223 730496885 8649096 43288581 826994830 4411816 58751214 109155470 978571761 846672745 861090393 519846023 82849572 887895150 80243757 946819886 657859107 972330585 467647187 802723335 870725117 92665998 581326908 999829737 484042059 113148565 283165950 253521845 456575303 724021795 573705788 150579903 51333761 207730231 370596777 626678650 492129538 505957218 374685148 616194761 104540505 433397396 316473381 256502471 606911565 149364237 415690393 434731678 18903770 493401685 931855592 682078717 561806291 426710080 163133556 563974518 159611177 383795956 518834370 449990710 127299361 352045849 5065983 166726438 365919806 643169479 415182328 321902538 180342957 694480668 339066565 297550355 710607527 159131741 920668023 561988707 272195685 360650257 137711853 418572655 467843945 120553660 137573591 787262953 968861522 740925766 48370567 782074046 371668239 793046466 529769963 124543215 434557406 748675474 811278020 157681120 893492703 398653637 747357235 68506511 611608933 970203848 999840466 311468452 232551338 466557795 561089929 509830187 845834118 407905044 979354603 931888378 443124354 3595761 515433604 35875571 319609753 992370731 46669027 165472561 41828253 111834978 114943379 219903851 662453591 127732008 873556295 779577470 290087815 609788116 39376859 643105729 598463605 838657273 387755719 733954411 583546268 151708305 866983600 357131966 337650393 800422700 277347688 373806757 122265202 143888319 540539327 565792105 457065770 142356448 397928992 307836849 301553260 17487044 15078590 867927227 360951978 632919530 860618332 357445168 888700595 662206724 249742602 390746386 452344201 454013792 265271427 776166115 351726128 772487023 74130683 241938129 92811215 646104876 550532054 994763445 424269752 918610745 971441405 154541039 764506992 307231674 994708559 912927152 966162173 653365748 254519988 535574870 636533911 604124601 620681624 518424543 702629299 124431901 944406200 591545189 939356589 127274462 247778550 392425298 122846442 901760987 634685963 347580073 325723345 250801776 447358355 367505198 217416377 481646743 930939326 743003381 949850380 364364257 224905644 613954286 483725846 973680625 375966753 665712955 593790810 342446190 824765888 846918106 105354232 14759029 929387185 766299821 191653745 237547022 635323924 169895358 737897416 624826264 373234314 648256219 834921721 384385600 221836680 670591916 102571612 214155831 63223143 38160281 194845130 733667437 126180838 132250429 912197378 896741638 751278122 681838675 201904674 9349319 154696410 353367854 33028178 340120595 977206173 374169977 629531187 193304230 113558294 792594812 812096894 908128122 992979309 868640043 756290723 730643247 510932980 942058880 659141498 302435948 912947879 436016160 97752206 556718923 367770692 853417299 860398721 134908848 877142960 850136413 540702198 981772724 319659691 364335589 495032971 612018630 18110885 593144115 342295166 136704033 278906045 337918947 679338208 763299140 424861671 38071268 962584916 132951547 493553468 659694543 78860243 902726232 250605631 146665482 329442305 942975948 670428922 612957865 965857090 696842499 284570860 42504126 547210313 809723942 634623319 357838969 637802323 335562419 694554272 702209424 827588175 34142854 560037296 180006593 404587194 177896654 680810731 509713444 971355346 277239688 323119125 117673127 900277581 40066788 436148808 86434791 955756937 715380485 585799056 626244685 572420980 232901814 598864259 980345179 100331092 415432200 550516031 631380768 94393825 780812946 394398486 102780235 465616708 709014325 485330193 325563119 908933445 386773171 982743232 408189934 593713202 185232824 384041388 702681138 151444517 802299439 832061906 660093085 134177041 53877550 459411185 351742967 243245488 791901613 67765211 846035835 610667159 693393234 538232815 966949562 529126535 445166897 259814926 441267452 697097865 246820080 651866004 658117682 364653699 508062480 298640054 502113289 144455468 956708585 947467396 39100641 432872024 374100158 495937743 124048122 732262319 558003463 838678747 162579179 74734873 696795539 549657049 563748241 293974437 735211668 443893830 231652491 192486855 262133811 640823140 139159279 772416066 59237212 496941128 265710342 404524703 297081581 887968285 332571426 442262114 480910518 220414921 353473682 182649155 959741983 696071111 628686999 228044220 819581200 960384441 646797637 304477391 844298651 117687706 727373314 223072021 404816157 228530461 421195163 34395552 540080037 961051375 106960783 86330071 786177768 172806844 345565703 415344447 980546802 611234235 853823043 635086972 938262964 182648524 549034172 633193493 511037706 192129605 469724605 476158877 766811399 89419003 790188727 218173751 913890631 965314505 825125222 639198217 121941411 373866834 814503348 513335120 707968339 112544658 646554564 419846606 422477955 93609480 805699448 595182284 779882380 983040337 94864951 934739217 694307629 41174444 563854964 184461590 909450636 520561601 495446918 927159579 388114731 874350496 926222701 228074439 993490014 257580854 642769055 117244341 966393901 217749074 950313852 520943648 914488747 935447900 918498385 719617572 245293244 245452795 339928395 644067702 711308591 831737605 258094633 524633133 808038600 430908605 460270943 523851733 403249504 386285125 744804874 443480840 383579206 943502627 355320630 828011548 758056026 498358589 499807309 745300540 717623340 61272467 803520928 971073583 809811285 291310304 295626746 313968050 5158651 175612226 702048388 626652411 242389409 791836023 576347494 708241912 304209753 139083172 953357502 672778040 410966878 852164128 39364666 659571783 687179063 740740846 381915638 426138961 286718335 956613001 757923876 978193603 787962097 274347192 3406714 108579400 48910732 81300732 156051631 58033390 997194768 843165758 664279247 549870622 534622353 355545593 916594567 222475521 298975867 256383413 209618550 877647648 860522215 367076680 659316899 969773043 847195972 280096079 149492093 815050617 119632049 756282205 346562529 867834470 869168646 940535042 735126328 410151552 86248219 68522023 390096057 47076393 791458151 79146320 490820469 816073654 673174709 210375566 670239150 92117948 342399947 428204453 744014863 252685213 482754318 856773383 282040419 709471656 565244927 268783707 384793776 254477395 500094588 610478817 33965313 869959889 849142613 56786576 108495253 95659892 179580594 158850356 34871612 283831966 460884808 792409885 522402832 816721722 953083099 958811064 268178524 83308592 390922232 47280258 579194621 224891212 171863347 501984623 365044116 864813154 90258419 456731460 54875273 399068576 834830444 821272104 800781960 771137528 387492266 412656569 33720362 531408186 151294869 400080860 919254744 913566627 289685811 333415026 126890936 402997468 907082326 420030617 494893008 7418665 161119739 486174285 612165251 975047243 319803848 247977344 570960768 987901946 841832272 319796408 98960542 577334001 152321995 539731813 801212370 571539587 111010662 667790552 422108156 18787276 768209329 322882225 347758374 103677122 720865202 740779999 486299705 187597728 75706436 710976566 564198414 194934043 842375594 290104672 291320520 685703947 281193214 253858939 576005995 384490800 414518551 229035525 351768606 279423344 58178309 196648694 512848350 851836796 534716731 945649873 830342078 212389827 622491733 596430995 198834802 898839803 160065593 27624865 716549000 305372167 946008608 879605102 359428977 887747717 451567492 45620875 63632227 260986815 728580360 8330501 67743790 873566912 687142657 734540209 269099035 925691528 853549280 317550928 871280038 114152778 777741436 481632666 664449151 848507808 288067224 156220722 13341707 907441137 85976643 363715288 773826158 274588902 346426155 798688987 627900513 203945765 236352320 291493134 107257523 751124521 313742521 687917496 83366702 219024652 887557949 149715680 453748794 86138119 670334281 885069453 125597705 171218003 482964637 720182403 973795557 283492507 816428431 696623009 191649430 919318547 943953745 921639311 693611475 377026557 60494808 352516884 675550387 598999944 328276227 14273748 683332990 847357387 364051327 425183876 757421461 986787961 558867078 684762447 553532914 17875150 650544100 923048168 830005764 661973862 197285742 736562491 374364148 645706885 106830697 360422514 217613957 728935749 929102303 557151736 154457096 184332390 871807683 663114295 985215853 772467178 106386301 393800858 718163403 925017361 67838644 858243574 341186780 798933001 163191648 409619667 382759115 348168471 442559487 685786001 144352783 727504820 449977249 192662879 671277185 389270213 504451310 922115747 33402327 539477985 419901681 376476230 219953942 706976271 757896817 288008086 580734912 964181563 757933392 133815297 752849050 147255726 688880607 193148223 926441506 345427613 127590331 186030273 215511649 285279455 528085174 311876750 67611201 625581779 310198732 652256058 192990402 612139966 307944174 773627656 731308797 228410677 331956058 404844806 61922157 105486406 173259679 206793736 133542253 889320009 965606327 829929344 498698115 195278335 223968702 173159723 457837559 579774716 5397205 555603286 320746079 380071275 103133560 188413653 938153548 717326537 12790393 577305981 786214460 279615568 766408815 383579421 193420094 733842319 268627930 465588797 425025632 768469621 796300622 471362494 448854581 103599508 510669759 937198214 530434825 623668445 224511169 914543980 100405175 297647646 542664604 673988755 723437899 816141611 369069971 301831975 204366914 461090374 275587219 210418466 472591542 89356450 419037290 330400431 453217891 137221567 466911179 700181967 948299363 271568014 139858914 12576596 599251721 483181059 402322518 407555247 581663757 640180775 399740266 379301414 642269908 91546287 343680426 425822871 939541185 813790616 7653342 741145777 112645684 174808091 104579874 876335339 807775357 398632548 114097669 742990797 835061851 831545970 914024159 426246334 557560681 760398857 438252241 239877467 540991920 820031039 939108506 740160227 374207682 856491929 724640112 74147687 730715214 932380088 606818015 591257781 967030047 570183383 676372553 236906930 285616948 176684489 44939280 768062665 632185208 277879896 674325619 578585056 482273613 368068287 719166331 603436495 322640892 750624346 472800091 286907341 327189535 45057434 869826199 725812014 487178205 818087141 970488681 194540306 118971536 654865604 429683351 280916751 608557207 694352111 982745514 125942340 612301776 992412982 450207546 450045370 759751395 94241814 991373598 949634107 505628302 348219668 37639244 67720223 735847194 585196594 521177045 660936792 457336965 195334611 271857393 225209639 763004577 227260801 855951409 451213260 946703133 926075443 133339434 814766885 804691540 255858610 852976970 107774633 493317791 645537524 400752180 533215644 31823546 194734055 323100687 536961002 326954437 126602233 840696240 629847930 676478127 574420848 636111928 617945591 726698979 921427148 636373104 468665737 736208350 294354824 814901189 454651418 743616438 619134993 176893232 666998862 881116360 46530764 912470027 459638592 379001493 39495966 394912285 629154076 655846329 729934907 996006595 714165483 888571895 37680372 112010751 109793066 158935706 663043532 217516867 73826312 83239879 619222355 69443620 737386297 315145316 901422241 112294599 877682117 242684703 290446365 667620746 163811595 516413916 576949957 459691079 861455090 414565096 88679497 850886177 582273324 253062972 948071783 366032667 488859381 644940391 42870775 335749016 146437 907298200 560567094 294661044 945386469 275815800 897467088 836368728 975217763 747627968 109551893 455432134 100000108 125921567 49483045 498752216 384175964 429651914 893951758 330653296 775245070 494192723 431674241 799883771 616952397 550571674 947751332 841037576 683041842 212913584 804670079 473222785 49104368 730679098 283331607 280743242 16475925 504537633 300110065 646868526 761550437 650036522 804429117 174508065 857488444 868656271 393574900 834179671 918882344 361923923 402197099 221620120 617362260 916217679 568283100 222447282 133201503 18685910 57241998 781991322 435203848 967095686 231187171 806500161 929977261 299737772 364726282 790468566 696256110 885494997 605909417 297201611 37381665 206460845 735696419 332388357 599192654 310594717 183890559 908250638 892100898 662283203 552769635 673891669 612507126 274663726 329447572 528242054 467414990 107090402 942126641 634030783 221591080 399021934 472533169 966867951 736518086 898803582 842893911 642945908 284274743 54901730 38897908 213933208 535267696 626943417 92576996 576453167 619312544 565917779 601436369 776196144 876769594 705639438 95150994 980052164 886831267 377835971 795660313 696233439 846778101 853731292 19268639 607153070 331348652 43557805 793909256 196803703 32002112 23122256 990945491 215558672 148469535 254503729 338414714 478093483 813447933 36420171 629772090 868875040 4278499 477777948 173432426 554907500 570044784 944856119 503079296 430249384 671791031 257996156 181831884 354041751 879664437 494285028 498363205 99773818 515270217 916873131 978952829 846704892 500606703 44314032 314493133 113472687 551285787 721973249 579333326 108763185 335102522 138479335 340169547 435953346 862694856 25289751 354333142 764421117 37977041 957807894 204638856 712837167 860753311 937789117 955234026 639353865 651043187 613166069 767905874 626213085 759881689 967952776 72771810 20296540 201952567 569384718 584473751 515132573 541332650 83623114 243927371 932122119 900641052 577089327 980449396 480552890 768135511 948611280 388595981 599040689 697552043 81250400 799812059 22729318 333949708 228739521 990631192 253324690 614754321 345994147 739994128 524836632 857868022 422511643 847447231 342241026 171498300 266704796 709781503 484579918 747795752 109843203 460638044 177145927 565290896 363764665 51784746 95552753 88374594 460474075 37868998 869041461 620198113 670993858 571952454 569801476 966068220 459561098 989721070 269450469 981879337 32105438 950409222 274827689 585563355 550010295 750046545 711304972 33229425 918989170 874964140 672806108 273250239 168081270 219469278 721480840 961342560 699954710 657696570 913749016 69104388 163761816 50546701 336469763 852296919 494193407 265398103 862354540 467089555 336438855 854411787 617193178 3965343 570080099 317673893 252100524 178383622 133363917 237640603 726161662 840839353 115134659 553720807 559166350 700898712 259582402 256881443 381586088 744295229 483108363 748041600 733447250 792795387 440781203 817382665 660734079 682468920 234305694 733205389 564728486 625639001 256273296 833167277 52734951 852658394 99283069 185108657 786753026 911447315 869013180 887012046 489281407 341832766 592644791 837280021 252062101 789927269 277971202 364311013 72988901 303311926 555645421 866202792 731385414 504166633 528234122 901655703 282255358 27709511 144201040 794810727 902782324 501873516 336399478 167261232 754659759 471431479 518386224 317011570 612853429 332591428 37914 919328637 88220489 68978623 966102921 611546510 403026717 20517829 669245489 586819877 374076126 510710225 948605684 966115932 942102593 832978601 181273570 844613575 854661019 325978910 407414874 951500294 610024066 899861634 278636792 314085156 944931378 121656239 496666195 676118169 474676473 663667087 331289709 974738909 193822061 809357006 722942867 7911497 288184134 250410013 394132406 848105939 102435843 333684176 988101738 571125862 730440489 533910296 252560708 767456820 278068829 18949033 480192550 783743831 898790353 770847278 883643104 186240290 679016613 734512680 639573901 910525485 232289760 371111298 454407808 831145448 781757201 290637042 913826897 132377531 439949697 269778445 515969530 940984781 797377153 527900554 491152510 355227244 937807464 714107002 986897176 97439406 876613687 158796088 103787297 492868622 423742350 958065652 447518183 453913433 229306405 172538942 121713642 853417825 444140695 941650175 641251946 764851656 591417148 172268277 979236305 585416283 871454909 703265602 400423528 161560898 817109190 570793952 865300440 853734484 834234137 983323173 988148203 307350845 956091238 88516976 580691554 678793779 757003304 115925670 961372478 838379761 328316743 243889807 620891607 52272039 108580451 649776730 289156628 399229540 200555353 412051805 901923496 494907913 686173438 131716565 6641273 664423277 530737338 795245157 177055776 990819680 536656057 624539389 884193539 496973892 370963142 498182224 889946962 788826897 881136467 959678382 95476252 91559182 466619303 672293981 54428235 12190449 433954510 983256186 164155977 998627772 800392850 269656617 44450359 643191102 482984652 657272026 829684630 307299470 343264685 324143324 238697468 619569045 794041195 206662892 423047423 116894619 854445173 990654341 962475304 992246302 185856810 118363159 349618945 826880488 105206760 233470001 840083452 929605949 944576136 186594154 560686167 173973873 885494537 777744820 184654102 285921599 818802807 701882444 899808463 663508200 594703789 251856975 845358807 757783048 510559164 201321975 35496201 725400954 714915585 232616071 958720447 582611524 485583354 685623003 119739863 145749983 573342895 537903148 926671202 594248829 331403252 856805342 343199502 599405159 324021999 865209396 104496745 936638512 262154761 479929416 381548155 96552146 678372 485956057 801552126 67256052 431229107 50601335 477896941 323147079 901391499 887250197 740611683 518812485 514711798 943601285 580827163 12205754 274585787 538512558 885877757 715290869 705064981 77127132 531665835 804554958 565255180 723226051 98762622 712730144 795426285 810274616 329673826 43696905 514981980 154689536 502565133 308384292 250950615 709079613 519052543 999993646 986195131 361301550 66027029 273573382 832971681 265766974 906922808 577217114 347793019 663461793 691320009 163898402 385548508 146897160 126016996 195742986 581764249 828206186 987402386 984050942 192560853 311016255 30288974 127449883 169149337 741669441 731895951 880116072 49956471 166596833 650226961 253755456 663583345 592615039 840478753 56513504 141879127 392446985 584933545 4779459 455869791 545708765 627904993 566694580 133783319 712654610 809300339 278555153 831772464 959544417 681459284 850286455 832255319 225642973 703938143 601068824 699738668 645278984 726598118 933811182 485367007 984972384 356332175 767419134 584684840 226004712 188174326 27525433 99496651 778925365 232404762 208152240 952972974 43510395 701235148 400883787 202010593 942356332 67420109 61852696 388248826 326427576 393198887 536172480 687352128 274886622 235930324 398793414 505874656 217810120 47665059 450313478 805962829 928058247 883435597 191801977 869584925 649427583 151225493 878448777 970992669 345480494 619980802 573119756 747979124 540307545 828220055 938219735 327578777 575381993 426653411 495702215 355467742 722824640 910277663 270454798 629091561 39516930 184165674 221505080 739348479 877033839 941169891 293199181 2665584 969837093 449489293 901181915 563981866 248709847 424038568 730724503 109364248 72864141 255673746 877077046 471778755 80190291 429324094 601349153 958924297 324353288 114617046 768147984 71670052 552262389 226103843 222215521 492796627 705290910 531004629 299544242 333108379 471824748 227484547 601809042 610282307 264495074 671730207 24977731 665802059 580400462 119896983 81542554 699298257 331337258 753097709 482772338 52032119 689651744 596936779 93075195 950347878 790716227 201237925 299272976 390402901 608061331 287089635 694029496 18991017 671798508 412031456 882192306 453574071 356379760 305579004 67490850 233308473 138362591 804416969 52970304 95779405 621571380 949242404 977932138 265680456 814586447 951145280 375101412 553926518 258895830 250290558 38630050 6362464 29845722 949492877 950597925 818575244 152417080 681323253 451416661 444916340 61089389 88024172 539150548 7252217 949672145 60767630 614940384 793797235 121632324 208524590 981220239 826698051 593946405 148196460 140343192 653955993 509471942 589621898 375959651 470396463 529847672 374434425 886676265 953125592 236362727 109405721 623662884 370667514 264527251 443597233 289581687 724137022 271805760 122830011 278524137 940704359 731448305 768660767 120389768 988523817 490953525 824036464 432944333 64596363 585079352 700483193 393577782 543801563 149373426 525207125 614548205 309907026 852580332 891479639 68907429 582227066 381501588 366892341 399952010 163807920 325372749 28555891 251537622 218892799 126326974 783301464 590690223 485877285 667672719 836335742 710535940 370716827 957921052 214260576 774936170 167454519 568626309 598148875 688107051 915200472 104975208 927681787 778566053 659392201 908546546 478415143 212222206 916025651 361344571 126038798 188450196 863524399 893172817 831933451 842681776 621691912 407574019 707774897 381476000 712972246 801863846 257200134 334059460 425315078 752332847 543197570 60422235 479879965 94362898 826166519 928638151 70252591 515571078 495230630 243960073 792131169 900909212 79812872 481039051 857961528 21098206 180054027 719521651 574229129 224124904 676221410 866993369 581196798 963060306 644116275 694886128 171211648 962242880 38167332 592438314 595326267 766320340 80562979 468029206 560534683 546665146 732455551 464198189 888631378 193265988 949918683 164326817 457352195 992980267 852299673 830679573 766396606 914077837 884914025 16977310 322965785 11174873 799158242 55885168 131949118 106628579 513956291 719785260 588458144 968443425 846839752 892657846 927843880 817459909 462318700 231048498 173751169 711743875 647822467 570860084 99832104 794079534 452990903 740302579 241489950 210089874 608146184 961868865 248167050 915340441 617743898 769598580 988548603 754529669 697993843 263702967 120609880 328194560 319088427 709745143 208124744 193292676 256194908 518570895 433448061 188496340 580931894 851465409 282129808 516357734 494332823 321453891 960397824 762858165 504293243 429381641 661294209 153486057 564775469 487401156 23103375 533656241 771526724 724156745 955511810 477100433 132673652 894480381 272227459 794210312 260474785 142623432 966864519 810722524 573453367 98885637 808155246 447939012 5692191 862421561 687619337 557637722 984068254 50180230 870771303 21473980 51619913 247254360 407031119 401206587 218025790 467936387 996519884 887306773 484543206 254831479 525868606 790058079 823069537 397209937 152009637 371938217 262102913 374065220 196679282 731663638 924072530 542913336 633464112 345024809 947588512 111612049 993677449 579454046 774389683 348067718 173944532 51402867 345827761 981104612 277616450 123721462 234685171 629347865 551081508 237394293 431428249 632488705 179668566 387718314 194509342 420617740 104081640 784123073 773341423 47638434 204763254 554222339 468031488 737470239 231795962 13221153 113720039 759657607 936170254 313716149 684725188 100170591 68412361 114135383 237916428 308015429 115441388 455009182 422388242 558507286 23698628 114960389 72742220 564344942 719009423 885431675 232889448 327205266 967831640 134648276 799343586 563935944 412017079 645576502 437820870 846438831 927193336 720841805 929864385 40560677 815589698 10883111 339027309 537636126 129349173 194107634 683643440 436110484 411156764 89740497 692521939 941425305 885326090 893419347 432833432 570905634 335311909 454426633 155641068 804579484 460224277 288434372 16627681 695050025 587590456 855242901 872935447 10340717 82402645 373752606 436757641 391431221 549265978 799316311 448930783 504388355 46187342 806992673 754920221 886615847 954762363 464146699 178469528 117916388 245479419 149478064 972903348 192100936 263593759 247138597 362726966 906798500 809492082 339110788 634682764 471759371 620017105 667029839 193336040 927126565 415523537 785909245 829517334 328240556 319808187 829608539 648704213 175877669 534645782 170523945 353649377 502368928 844314630 95686252 589017879 12212086 75801550 345340373 165091722 974904643 880786174 195279402 547019765 311686533 204640172 662337992 846808345 863051809 84180460 496119824 956235018 588462276 118450157 881382109 945724582 814409425 707403295 460792658 550848719 541816123 726100241 609355176 116808572 303285939 3750491 809977445 861675428 183633790 282122067 459519727 501201867 880197749 113938198 2991002 573838366 334629651 286671280 671201035 987033780 733349103 881824409 954990406 898112720 747549245 497326984 873578421 281234536 349151229 273026346 417756545 634031006 133297666 810097076 200223726 83083433 885848226 102253895 905686405 813628655 547131055 772453564 765904736 462215693 743847923 680042280 989815548 266002067 670276302 815120741 580906178 687001414 502078830 369846436 100479824 584945616 860372129 353344311 73917380 422786393 930432263 839649447 429290132 164838319 713270669 479780454 997742526 495036560 22053059 506939098 41765776 995068084 513654258 621739935 903845559 849220101 454570128 488451289 300315383 477828310 228446277 978440869 243742372 114345906 774212210 362165572 305837577 965211679 849308499 621176529 929786805 314782891 798916636 260902028 985534178 425059399 133764252 197229356 700622133 952933952 112637243 110577339 96712719 406782824 847669876 489754179 868341546 220963462 242701549 481090487 243814642 713650738 256734078 173826598 78061619 714157986 21022019 177662172 963993674 377090123 632925955 115713227 272094932 232046595 231073720 506215931 968401507 558687161 343928150 350167662 779703543 714243480 739722342 565442414 288944507 223592355 457922224 319715391 556271884 348444005 800464032 691979261 757639525 692547306 302050026 694033253 612861250 737174691 632967026 693400432 313622935 409277994 154242940 538003290 392298494 334558182 155509613 966258552 236734080 326556872 448014940 280768173 298192075 986205771 115761098 278108986 280733064 50063425 472399325 822378106 926528489 670676109 251434610 833908545 926009077 383037729 721426671 864743594 896614000 152826713 281711008 941567644 852681862 602102184 947840034 548636512 185361322 767160307 824865524 453584732 36320182 269540816 609483889 830859190 565597292 441257264 496979747 873963560 861636125 869268809 314723674 345818422 565690426 578406142 901796498 572447659 640680448 376762482 671260704 765161105 697099261 388487759 142787374 74136341 299289827 432124600 592887043 331361134 584363388 413792267 283233370 538455059 129996744 763314818 477042437 646197587 153715500 73041003 184161082 911751 993637903 682892976 298398591 551577666 28687492 329860942 7103968 898280598 45447039 43919510 922206580 177813663 738831280 274126949 417699340 860069099 92298293 14924028 447975688 156145744 419006918 179312281 98164303 190008107 532258577 22504227 239521297 984880620 701878956 652397440 643885995 72828620 765005723 510992512 981580151 80720659 513328668 234738686 53168442 539481397 562442239 730677218 972880921 502847399 72453137 841028325 969263857 968374203 422850796 919235924 977653197 414964999 985954667 108846715 923140518 593311031 901561460 937667118 755326862 829105737 804883746 675889400 161135226 115445326 865961641 276787516 342817222 983889679 607847745 627485386 541721296 107440422 829889087 964956459 203756790 656640094 773439902 349749549 741817419 555494928 79074155 359136612 450532471 490240238 813996321 310206783 478603325 407171410 25099085 381279246 930853946 909175782 291511329 447014291 403712866 682740562 624331972 567692856 288935198 447136068 668015495 545767896 283734528 903425948 74151016 522420146 434396351 251641467 840160132 35072222 423214131 409150466 492164556 559806243 105914885 567606 113651340 353618615 256608349 407849314 446615916 346598678 751734990 992014065 852377483 602423381 751274802 335934470 737672235 197593826 660354029 16870792 739865375 251123391 120479064 892674506 637049305 232191883 394410728 99902935 232433584 950460974 178166073 817228738 552034060 293006511 550789069 946970078 361532546 245732798 200858455 640360411 898397256 470447817 722394526 8443447 522775033 64294293 249337907 587509658 899645363 211537857 44597130 557118810 966167792 895496064 57560383 200776797 742785858 414360469 879798488 896104638 641802176 661130448 981517242 436427813 458740938 611015570 964416281 255970632 862211125 63480147 799222154 423082118 178125208 889648531 665688878 150536775 120450167 492563451 310200319 847964566 304194174 37747269 818984144 982842666 936210383 74751657 165905520 441581529 254482961 710067618 267990131 578133871 263803608 618000781 981870035 149283395 732977738 7970237 359556651 564460531 582527691 770226806 102730549 205261080 65005598 697290825 817755974 828973885 594016373 187634913 601464641 403065615 846268631 624765064 901625813 569914682 732546698 115151029 529672163 183196672 900650042 552352609 818689908 270335036 558804432 736205015 317851401 239157913 974613045 79640304 806529495 171805963 592117856 157313034 486700665 690833847 523044727 591770066 555989218 391050015 426809291 336055627 856105589 364847025 439289442 190926819 751277873 365338509 395625253 378936709 921034543 841779576 30386483 120996442 671841089 349540222 363382076 972294613 691178298 552490046 570079183 883016085 927278217 222196286 695867017 245515846 620457737 641836763 953966436 897866261 706880045 261289160 858132577 822862053 970691201 959186931 906358980 156873232 171434386 757570147 713991716 253830798 302126239 391021269 890508725 197884856 602408344 793540005 942338125 372323743 954798758 362369145 485220918 71292726 863387124 618123662 641734232 727064358 952403080 992243018 54703251 173208730 450175174 959948779 406056994 290557092 260704721 960532063 649128994 435934163 210499683 743681576 571194589 225126274 85688011 820987431 623340552 562956910 49208780 158009897 364217364 884874934 763625072 253504797 306283651 766753833 569103700 705151381 854222962 671709165 823349922 654783463 953697266 95637885 776126755 475838665 46094275 286540758 93415350 729298282 931793779 790947527 294375977 662086851 992844033 102497625 192392004 534555738 336821698 574990900 304550398 246995535 283150898 590888304 10476036 94105404 474721801 936415706 519648420 139497081 815545052 383439696 317703431 542620821 247740476 767088482 767277875 48979308 877522100 137772611 553076629 244192372 727091652 711543172 349303429 797419612 139793807 632487972 712722890 60483898 401912166 361874875 430552892 443895917 509626330 266370486 217431823 336025368 848464831 391321551 755032206 158422074 87437791 107580594 214684613 814093667 42750992 17155181 480147428 761877393 124309206 386745627 82960091 132649554 560383 207503578 443956379 896555766 884862492 726491134 809582363 784741272 916757807 978806330 239861399 530992086 90835662 414931897 61679503 734574776 480698692 807430714 801656793 492636696 830639414 389910054 710289343 739586911 520068860 442885139 190476546 903639815 16783759 484288397 921730548 502051006 148341206 453318165 855891432 631604958 32717381 310218079 341930418 932842619 739263501 740603036 158305742 749988055 637486321 339724328 172993576 960222334 71078915 450909270 356510323 721010516 965098549 260055474 263633129 993744674 732344222 278658644 281241544 548179149 304086833 948655631 292534567 969485438 49419377 575524577 296546637 958516154 802173691 283675824 947017439 785790190 880334759 850972928 465214931 283581286 592170865 985197138 434300797 221865221 206495064 366385788 272377170 859048913 627146502 295474976 114370173 71882509 344826097 430104816 494716508 228732031 134643628 434699333 219586098 644248839 419309498 560113250 799767865 200681977 695217447 753355846 231287005 317811672 669033915 803487093 811204246 434644269 928928903 734313749 723482928 162205598 956173917 3511495 516149020 102546411 131929623 838080979 795733281 937014984 432470855 400798504 215685944 617012730 604358590 801671826 919892332 922532292 208713834 963159085 420592102 31954214 637214875 628600894 737630590 912629886 374866681 233253089 588789938 832412389 94820611 580387481 847067411 481769544 850035748 82158196 637997416 605844905 536582834 852147209 842923797 430622629 681296307 213471872 392403602 284130516 230617032 598995863 715215939 502079946 510409246 298760511 890685061 700190744 5538414 538204747 495187255 132401598 861115170 333449167 922960664 803652622 77942175 919715623 555825728 30996121 720331063 286116909 135066459 415063440 251008575 763072438 13228206 870131334 311366946 603524378 236210934 651312972 809026990 838078794 483726179 38676591 461301433 410436466 956231277 470561991 478892702 114020212 327702809 950602064 653207851 43983953 151952357 618175292 120417764 165330996 900233402 387104630 117399192 592994472 630769098 844438286 355377470 517866178 262618253 149439922 212770102 326820073 54610639 252089563 874867996 299460260 514473033 481064879 50248796 552372445 220032845 611819280 34127940 606068076 278810638 510948453 753482135 795511322 5411605 574183655 955879252 711072955 415767305 721999245 6129375 856735984 646692912 971550021 222471702 969613481 217009495 440442081 813180026 2699303 362401981 78920171 193165809 705069492 28772676 592395820 357291896 60754490 522393718 72760332 109434695 946912693 577499502 620468767 967335060 75876938 635658608 379313573 977318164 939073719 44602498 916471502 276138368 70036179 669364959 770589046 166464056 369220375 130735869 548084538 434391945 912380507 679107536 101815205 250627631 471926248 793066136 884348050 739349390 686730829 263355825 55608346 926316699 545254893 213772000 438411077 810436430 81181217 644677220 579867020 690243078 897233153 896816341 701100126 402738087 616613051 959817819 422616718 335693658 843684061 376964280 568544985 633397236 525182449 496647835 469987908 538089470 565343246 668333523 53742427 165016481 309945407 752079980 183991744 109835229 622793318 960499204 895332377 587301182 119632788 789162218 218530957 42766089 674123170 750895512 562229798 527370837 725048345 826039340 179718586 240813655 199012878 33225937 522540452 508601723 737466583 767791681 483764247 708995166 492425080 849225799 971982874 626952955 406309848 76563125 969244106 19920618 818548824 208693327 642421130 632584595 569918348 755081125 233942979 303995601 951727252 945382400 666835198 24667221 166619973 592380324 794467234 19591452 970848671 580136349 697205066 381104823 113295868 964584315 458972648 601574118 177078009 631202119 18769892 184757895 202835510 575555454 694536997 341086534 354283322 543869444 902249872 893992940 763490682 244912917 495489617 658891957 164931552 131964549 255286508 337832874 526590980 748151042 192741077 754500339 632027394 84379798 438693947 864546929 87252850 533164915 513534285 545292356 413586396 886478728 883591462 446530163 477501811 178852049 778102802 306580090 663404456 296213311 608207929 142562911 776763799 576079861 729082167 474746119 982161813 846669524 926694569 194690076 272629321 630651867 693929160 671302020 236878427 424709223 345232576 574287971 837798942 469566871 570295770 302159914 683975060 143733461 840576101 921767670 7801556 398288473 733401919 399757158 936620951 996600676 211311773 457346140 327516852 382557978 31891882 127858209 711923761 216880111 398736054 800110690 99509901 515175928 850565799 257743653 768856454 200045290 2337958 143668353 38029700 292276769 836694080 51548876 410595300 943771621 542770583 374646376 28618288 920406946 77060943 651767158 335599169 1543231 543859990 742578415 103899890 714013925 522389284 317713782 951949738 685442832 522489493 753711590 282643658 5146303 6598804 586663550 426475890 123703957 698069682 743699631 524270901 12721002 371810568 19996136 774523413 639524660 844796883 916958273 216651922 858942247 129503923 460879019 192468559 716834209 537044303 407928040 65179260 828636811 575837246 87641344 963485219 641906856 110606582 157759870 249942892 754013733 475032444 89679364 401031121 426354380 251643248 301477672 548200642 49189012 310710576 690809562 213588083 297180204 582641424 417463135 508563606 886404339 800485466 813227901 214957262 104729277 779044503 801415625 838891241 674684702 924755815 620839820 269063304 77037591 976735086 28460890 762479829 153938489 564646305 248251007 476061987 860239867 60532992 90058914 145865329 822691914 620235544 367922474 126629422 65427614 172314933 855722340 122837798 99649261 785153316 461669531 447774435 511381169 902563651 886054792 802876276 120110380 538317260 833268358 624137067 475775658 927444220 679031709 56978990 135353488 107458070 837433918 515451246 581694126 43446442 872262860 152560558 64499308 914165810 691276614 384933163 987726608 263245480 107215736 157228824 625688512 105867526 563185522 179258244 364488387 540024732 955916576 691797097 381084318 241409824 232699853 142113799 460632922 427536264 327313776 144627460 642735585 796211441 204404865 107183131 902895910 243083993 483516907 396658702 897816916 122624151 466621186 170246874 567974706 195114347 649324483 822629968 327870726 702284635 186515274 539988924 876353000 58065354 695964265 556533355 854081017 471260502 163672921 177505206 653034207 3828301 225836815 320303697 830704249 800817655 427675333 716196811 535906176 759306382 246402439 443626617 127580840 675409152 821632640 910744775 791432881 337941261 231187119 496291698 950431946 723983672 621848699 9113387 651905550 671090729 717729253 773285094 507353351 374313042 569403243 928226780 642080177 862741614 481972459 809851156 417438042 572728235 16734401 596269927 699719024 151590386 440983680 812338866 151723410 712655585 91751124 515605398 745519915 189731383 319948287 94140565 103206051 761699476 160823982 895237681 420623278 32247232 687888817 67705965 545761022 331774662 845261363 372885571 641575413 349595227 16328459 115026460 548079469 572988632 764594484 955968442 281603481 250299628 49733135 347722950 816225299 456111825 579685860 634893818 85267983 51343561 69119173 883870383 678411845 775576013 849208082 215448808 677015181 187734588 179734477 399092683 435636962 599803221 513237653 5308160 941983040 975187292 390907955 141428057 446212400 657928261 94007160 98747378 846615194 744601824 877000077 782783910 910559162 511479855 932372593 80999564 495215327 702402742 106714172 569382956 124193982 456944193 514939724 793126769 129479965 847532720 267664434 13435638 35423269 866479000 85355216 942645616 409889608 400381979 729559664 46891397 466062159 723901915 844742841 237904406 620429689 975790623 553089739 931367510 533506881 614311969 359178228 18378960 222753338 607131535 341376032 399664131 936942844 986763909 210827422 220330658 405968133 287155136 687858800 366809956 230096728 236561098 483321463 453767023 992956690 125391172 887319623 655179448 320415253 809027249 780095259 334247479 866331805 185759925 181840501 528254362 709047137 931599503 402348410 566872130 779640749 39885785 803355819 317616848 500864764 304911925 925317647 855096425 110306536 872212885 991630609 497751847 364533079 291548668 370836888 660753782 737520778 621638680 943667487 57704512 278664355 314464836 127532640 577733993 932497330 300475691 361558929 316711288 96236946 935492067 342272048 523825694 264177724 846439560 906540942 172709159 893335956 600775946 756108764 147410324 511277272 238549557 836375606 158973486 833762472 632338530 604278030 693688256 812918818 598479296 849593775 705156918 276864882 459202397 386065772 759970821 830375159 390970239 79961904 521381733 454890854 282128803 808385657 446791280 366584118 3217381 940028693 83126253 448852776 795836682 613532256 336451221 707397706 293226596 857963836 631024465 56353341 220384657 966241963 603250614 796608847 688105169 470441330 601360044 266172810 363907443 423794003 704360226 788310579 901156330 623185243 63860412 885484946 998262317 862627165 759399402 715596870 229298514 732037487 530342145 471962995 647898495 489677131 211071945 797422470 178648434 142265095 63518130 914500698 810580003 14526150 316386141 412623358 679044421 293461732 459337592 908907792 923975689 339184028 758968697 817337175 311423294 501457371 232974416 485543555 336861322 797432208 141466929 127204111 399355813 127813884 210972220 257564929 654429725 352826649 239054804 849287937 644093506 593948854 732556238 27073130 743682541 388923507 733375024 988285779 643930470 571033548 19788315 795886473 626118861 863126592 534562586 168090198 203743438 555737990 104522260 175397375 94376853 193841318 255078605 767698403 848934536 113011677 127121244 143933270 415197321 916719153 356902111 851980013 787188974 865197014 846230613 630678760 738057363 744292366 28429524 672006763 231648825 788758594 578288431 210023041 2707115 90657901 211319924 404041371 801807087 707668209 219320343 330792380 500712518 524065513 285253957 144749114 643821856 848267268 25510616 19560785 629106265 207362484 811977937 690505501 369123392 431682702 399007407 778167622 996097949 273177623 131497631 991085264 564291761 645036531 784681380 320452760 782073527 266691573 758931591 732168204 90310220 817285887 735235693 336116722 699297565 133810828 351155032 690052369 903562511 995465192 686943200 422220665 531601463 228168708 121777569 417433529 698789143 936454320 800888005 664976042 929238190 142210333 570764687 345314654 409174610 212489680 873904734 863434404 563587257 77562055 880810256 873050562 618408098 123594531 645126851 994988458 356430378 467784432 930480268 675689544 392064222 736347091 258613234 416743983 242647387 360895830 584405665 822804197 320340286 285091059 620500435 755559314 325808713 274368124 433567005 438185876 761622808 670969026 313791207 139189689 603313176 884277835 117102501 754379367 572304133 422878120 367585814 963123488 742587217 215468433 746251028 68717628 819564079 675016581 873938073 700725708 246912959 383956238 614741044 291935107 937175662 205269841 723781758 250520720 696256656 572932151 619329906 426954268 864207744 715076745 848888050 512718770 531992803 422939715 358300500 831830112 72141471 99040450 619408566 431062303 906440735 372178281 424637632 191068363 690736274 316647642 384774565 22917745 75346291 814360689 999330789 186862715 234041321 812157805 225653036 53594245 123591191 401093442 243831997 455320078 983391070 666017215 794755813 9805208 617517520 377960640 548711291 871017246 535859010 548213637 608079936 433643761 362220034 847616586 764362486 398324877 203400521 856820558 885233615 695140717 807266539 45841559 762189017 28788921 557022998 511615761 49704137 871300437 785881021 910440623 95589326 139969656 999353396 897242181 807218940 371391757 164853411 852317647 82529987 299498111 426625762 848144262 67627826 5582462 383986630 823171708 463888349 590670953 47830076 925598265 464720898 501308871 346000742 461817744 504991850 370861832 603484066 543877834 179715528 838478090 104418734 898254515 599597583 21946970 692646070 944921061 964823822 722861009 893393658 677888955 637134595 184981362 90016126 797310943 210067815 876023414 994281759 32771010 441213148 302025684 910966665 244483039 835283714 769904124 917376715 957223118 244256665 841142816 332841111 513134360 836896873 963531869 983761429 23257634 299059550 83092383 890861286 455256800 12088969 954617950 828628286 979922831 1304135 586457162 598414040 334744724 177717485 301727658 985526060 993952050 753122256 613760528 674020451 479781329 865317657 674910280 721908760 950743406 574446293 915253771 533766055 343009085 261980310 165031026 272015096 955786134 975215828 693214975 120453190 75185719 636080566 367886314 915737183 886769623 213531351 18194751 94515109 227945127 435725011 814513091 537574082 746672747 97882511 131983609 793241999 781854618 594963881 956222474 190534327 687080143 792001828 324031689 824292088 958244732 700091342 593378098 447095115 712961803 792347487 667131806 100936544 971542069 537648950 370834273 288450876 883527272 17017635 422598898 308735538 753935906 295618778 525645066 552709079 552020816 725841966 765894013 129036439 727435626 204140658 796023306 644157379 731056582 669179208 286598835 929962721 17540603 674481967 917775955 177683519 98406556 924236657 434679803 644511825 455751709 272613563 173871562 170739288 189184265 316820 125691193 425316128 159907231 169479291 847218506 41181611 65030836 147826845 78870686 193779787 877352521 929319383 206790048 925769231 517576332 566205168 539470450 720495208 963020101 620118252 241290688 827232928 342065916 570080435 665311046 307899458 477194469 768876961 661340983 498796741 101362054 295845120 782835933 96571845 381215965 624042001 343583741 741293137 759841144 36853604 246010317 827826933 429175422 753459529 685609079 526133552 894676992 180278861 2660017 545522497 232502372 999990816 996730606 235459181 840064998 364041678 740260468 100765057 607870363 684032961 317721537 399917033 978630459 873318969 397936010 360000895 654579457 868627443 803777839 438736960 248574174 290652615 411090436 180145410 232490457 353441006 293629646 257902036 999482142 412368462 588973709 451524588 346828217 471810093 163435141 523415200 312475108 924895883 839035095 819103250 710710872 868380846 179829604 699231442 95702216 577549301 93346743 972160015 599283483 41940535 656951276 443763929 349428543 325936335 885823902 641949480 181434373 637568778 724837987 580096990 230435916 805997039 552662881 744643827 287709584 833687157 236969938 793539898 253776592 742726662 478981215 343002582 491804366 580256113 618788186 525595931 33848892 432789221 4593165 693770432 485601140 219314273 825087856 468823667 412172977 555975210 930568369 449736721 163193477 998122277 391309800 924360885 575131661 487459259 53770818 269838825 408160659 901874115 945850869 770910053 243927282 832238222 28091177 861557716 827650444 896878039 772691821 838861013 462406880 634888171 249166053 420231973 628542977 920565963 95546548 476337618 25651244 567731417 728777542 617873252 981398632 144831931 797982873 431170592 468055369 692334557 293662589 201805154 607748200 521255721 274617712 540431084 895017196 991894059 139385155 212044633 84073633 10351432 928713874 294668813 47738254 379185864 189508695 147068817 71971870 663052604 662395509 11560719 269946248 846567630 14247071 558277040 810286293 79454642 2280840 500699596 812836676 911587167 772752362 872793872 153542475 140305724 466825159 582400780 603656590 882396278 195880010 458145575 242273516 966844397 999212036 211478758 995134251 999556982 387258112 720843284 433973023 712632827 478152822 780645440 74158009 417773063 830587087 949202262 410644132 141524312 587327602 623101768 761273878 499851205 33710175 513975253 98658677 857806657 549278453 14462050 615341483 980480843 466045447 582989738 554712553 316100760 951920767 587701814 898405598 133962873 509864229 937769880 654893146 662973741 119443599 676863372 631194933 632393447 554664290 514402258 969481274 651778983 134594205 931935303 457451340 817430104 376753701 557939439 38850506 727514410 804959598 839948651 504686852 960265322 638902490 618300036 407556292 576093922 168647301 835992538 982111010 250562773 943379771 747535555 402631932 170964339 501768290 185051952 481397348 403525701 517269114 572991781 460119752 697639781 49122534 946222092 417105412 119699136 642835723 977876014 468642542 243487848 987209037 963764454 725604751 572453657 421615949 165920513 347746224 547755388 789640875 270698688 386808596 112464381 997185990 818269903 852138701 635531011 15556409 757873983 838752779 484878491 610022805 669149572 737250808 653248118 38034650 697082210 68528709 487651881 497738625 519433274 474986655 534695746 223044744 553219386 75114594 667808583 295970384 920109322 575242164 3189877 225088353 933367211 653738306 610701813 391611945 665195995 671589213 978204824 493699755 523724848 358624833 497702361 620216745 849682547 955819786 886049793 410725291 124955361 792543161 769437618 918751604 118618030 222008182 886098595 24308974 82718452 650594805 868815257 207450489 866355111 386486974 683075201 605306398 870653669 504735687 564772284 323374191 216807550 788652526 516405889 19825920 968482559 575799723 495673687 235534196 663406140 829945737 112257438 84918134 663350492 926836048 426044612 615897128 11462120 215298751 808749566 101834754 992951856 875657618 943552275 475269941 326731039 607813488 59094795 142630847 569630629 216247820 557475784 842430017 158340987 340078224 265545615 228023401 473987485 8703385 504770757 460675738 743962125 99180427 487148215 509860715 767741430 523875560 995591215 899784789 41747008 784990395 889593553 85504337 89897943 707825315 154994949 829807074 988172867 123626175 435644601 611458068 104240578 403427745 966706693 362147385 754129109 450191335 729696961 593511580 986362301 245141535 560652440 178296036 220539065 974424146 187560174 837397651 874746019 612893419 416397062 822688813 430016954 861677237 450069312 25695585 243951006 729643856 904123219 173239621 226956955 869650258 984447488 879306822 242473512 165264420 60009560 973868153 860865172 376107281 647218192 969254179 863703863 687942011 9819485 178120711 373020114 826450362 275739349 221466256 898511747 390760211 454320508 484810618 947343688 539575315 73681276 343781434 997833176 681087645 302435890 486824890 328174949 571432333 849480847 130405195 405525305 746405547 333306775 480233920 404501760 461136453 665189578 520614905 749771635 351948510 913115270 114230682 789794719 288881675 822167613 107285670 738631568 575758885 331124387 55411894 843885042 958016939 111694385 11064569 286240911 483638433 801531748 320517032 111496125 57334864 300564139 866628745 608897258 775073648 327535232 991739681 320427813 633315293 458833996 97608971 574604061 185077217 349769424 294051938 738058397 469559925 870759038 814918116 39703595 543527284 379250738 905778438 289024143 597186307 978904503 585046215 458190933 882199019 794819558 71130716 83418064 409996420 905250563 10677825 406137158 94188008 8176677 875963525 30778932 378828885 373161891 73707231 108818471 554629374 457572780 171442973 684892284 364869753 510819298 863043608 282007552 802249129 709035426 449947504 297334197 685200082 809159046 277415223 690244033 885939966 609185328 782359401 203110592 643666895 763585304 691391054 463251036 682871539 873469055 815229113 547578081 593422534 773899653 101607204 742638388 899340013 710620940 586888397 391327255 875139659 952438914 382207245 737142371 554736552 671946740 555415479 684556230 567704669 224635504 438556108 376717267 538335406 378132027 874785388 591065006 769754465 534480693 909105776 87591498 834316117 202383715 916808483 62835841 506434052 557028596 429759437 402202877 788291597 797399781 882722705 971898970 270758359 550136701 139727686 178760150 886831672 43467417 991199442 718845071 254467464 241874883 990417467 705082512 786758432 224998451 537839992 472978887 283268727 511690738 696977597 891759914 311085278 89874851 340631087 21797267 967169451 200389638 976468709 865849445 845063206 625366074 393366143 813740546 978552339 729212097 581797743 504476849 691725130 824349703 754747021 31074391 501146025 862591592 618838200 531311769 165618994 921732819 239257961 492393073 252787440 895432630 669175779 499894229 921316824 462554661 118354707 730449751 498566309 625003378 295131195 835974394 132806307 119145346 678955763 379716574 928452519 503494779 560777233 108088139 566736655 275622346 770465538 148023404 497068650 16385826 34494460 254270858 847552906 868199215 3418603 522189641 837460322 895466011 969778502 988685251 561735564 442869787 58858009 407426877 234324240 822900026 407201042 523444889 668466599 558680482 296777876 592593327 823932089 799403974 143808974 252375816 708159830 644009613 364355068 445873928 710205338 65261275 509948864 270975469 896488034 565703637 474448457 642366056 728016283 412810305 78852694 556370158 324406759 520282538 366783062 990464012 395742844 597110712 799628561 716278819 904141390 362102100 850439005 358345431 410272268 816838865 917909379 397244599 680809176 619256108 813630187 177563292 310169421 574309159 835640485 91186831 730140417 85234685 988159088 425101357 509137944 663493142 5772217 162076471 756224422 202749773 450884829 395751111 366702334 518794141 126519146 487698411 773327781 357039002 275819906 551413819 838979095 878155443 260486176 970281301 368708941 348572791 210108022 485583402 965490982 976164070 20708316 139530261 370527097 994293952 746956089 750174590 543236458 956116990 260232483 688012701 384706987 277634590 337028484 709199264 354171229 522557427 247547480 795180937 112849222 55890579 83246127 334918462 931786434 384218546 922913077 71076998 634585631 427988695 757661110 121278582 906136393 451084557 194247659 306477996 636456823 661021748 838157944 83599391 627956227 786658051 44368364 928080551 925547456 5920398 414764459 391231351 402010707 836209334 237894699 319184656 44776987 27656189 238912965 957331725 533080582 925160761 828267212 891357975 169311298 388725437 544064527 265466047 222553966 901943287 651003514 834300644 61953828 482676805 990498527 157739516 821189776 872338973 871128741 521449517 843110563 976546087 380678266 627531304 237381782 668563651 393784466 114644971 781220101 786329720 234317870 310290902 274489370 246765363 514251521 824802883 24741514 411352159 885173509 718958420 984165309 346943313 163508223 87340582 118778394 428412618 503567924 713248772 87930041 331485091 709263871 401614256 182839583 231746816 115422444 207950180 456191241 128256196 293470016 567323462 339242232 873296212 545569237 75904720 727265552 390696519 356513809 583678223 648208702 11545945 662658075 733283584 483666393 318190431 395232461 404231661 950749353 261322525 135743341 313638335 65413705 388751858 928637972 217400909 739765107 467226665 55541046 148093694 286441668 643912812 758002608 349989159 363535474 330933743 729156966 736294941 355804873 510290617 60611814 495195026 134644452 141436009 692641065 622795832 834980516 836373135 807944804 587903512 234065628 56240559 895522936 891343846 423272088 590363452 637685835 663929479 969657457 938652464 258472799 2792831 177099031 529590778 429671765 363111293 960584980 410727192 338006548 863349227 465615215 94679411 858448062 489616888 545810931 407772783 842322411 545497564 968690385 762428352 415256479 614509933 599092251 389748444 512311007 297790112 582172737 738132907 789176972 795019225 342941021 149840648 948194983 43797168 203337778 372691821 446786473 407985573 909651299 720638695 237884326 634821490 686020565 888902182 287102518 193298861 655575815 371377699 233390433 889460402 599212118 301095339 129857796 285052261 197412519 438521325 687951385 968049036 986775997 529982693 935018776 943903363 770511676 610721808 74810290 558261659 350323882 443610073 153097659 706817108 763765955 94375821 609268110 338311834 690428092 173494665 784480583 811023452 850467188 213014614 817659624 978826839 590170063 600137695 501614765 528362357 609789665 143213869 403919017 197657497 54874320 600133764 20478299 614602623 380218674 541152056 622552924 118439495 949021548 525755656 1890804 704876830 275034301 352169815 83469963 520294906 875975852 452724519 266607607 347662176 609327918 431665337 546524168 138729821 429262044 526039596 225273991 35918994 28288830 248863172 889637389 843143182 719239856 169516788 501526337 932473290 564889999 858011018 432974289 439370048 487412943 457993441 572034690 652567948 956563501 958700354 207629136 416393815 744260054 745006085 849065477 351269314 476007854 778777178 71459807 776542655 685876571 352870247 919536601 525470758 771163622 754490869 271350188 155553373 470343046 194936882 517473186 93478863 210040790 254266473 342903834 831601665 881269927 344937410 576685078 504072301 577866532 256804008 896282821 184231968 864315084 625430393 735734879 8298987 562421704 335010755 265779595 4899320 412163138 177362946 151768092 196844347 677293191 12282609 242399339 168990799 177024779 775844177 263523367 418931021 18029384 993839160 415729662 83732207 666019135 876904727 853963239 64583041 900837474 558706137 438746959 424273795 581956205 132803198 721085149 254068701 947024840 73949197 756301617 989661061 319389218 315473708 849619857 954524119 685407750 180754249 998721375 473588862 923472642 984880192 21269715 876921291 568711798 803127359 618187829 456689514 703438740 79068162 63563817 887906405 541237091 334001189 258837059 160848596 808574092 382116123 768466068 239607132 963816504 825617698 802807723 899689302 679472049 152618107 246904075 156232558 898216136 924763765 636942739 442249611 336071693 507991635 184771 838316650 660051404 193243956 919635136 549880936 527565579 662792502 988318944 802553977 233633202 683278347 566359077 464451251 460571339 457032429 242029485 564850896 540696566 219123149 104138028 49833499 234860445 205515590 832849648 57369565 222817899 306398798 190531925 411587515 847207098 970981977 318735535 383089893 784015052 610785341 379084126 177142371 645854182 102462272 991620660 528559516 499846804 789534675 373505353 344071112 875478618 352752648 753513122 442742288 36062625 292072060 216428395 693293799 930278185 793681173 415968749 158351922 628789338 702830314 310736529 459818625 868183188 627590984 194203983 634262170 656627804 469936982 477517717 234617322 614767551 210878891 852989458 423329553 911947734 731527989 727011159 805289676 265630568 113853037 587568005 572481209 186996593 395276485 134648917 401540001 921253766 337438368 23590992 653668468 520984382 316550217 594352532 848082201 216905703 357367592 951021092 105186800 642287474 953627192 289154106 725285576 813558483 867197997 670865887 881271596 879212045 471255744 848181950 763804790 265624929 815100293 548160220 41945724 421790516 486328809 277727634 836037037 620713112 768087704 107200417 657124092 81701089 355025377 451054343 728266761 644840394 738321377 662638253 491131925 760368744 693326423 449146575 825902729 566672928 159908209 113644584 191322123 648947810 156247364 176763649 264496493 971857160 785008483 740906467 48178263 65089280 560463238 862531035 873792667 35605487 602186324 831867170 755128397 533522554 688991862 333295892 372780633 145542343 356416179 130118188 190300890 332812550 286035691 64143626 53824752 118229922 961125286 340850761 608870549 693399634 808960393 399872095 888847166 494445809 186554133 588147918 782626833 16688387 854190860 310805925 564466632 388296959 564227947 179746759 536530868 15911307 579591875 686845882 392192459 952982870 163056486 179100514 708522212 126646437 441718290 53495944 638333961 300398124 38562241 296132930 923254798 765574396 644682838 971228033 467889577 84595558 958530358 996617108 310893586 535002500 522043747 337501021 981241465 799034121 331741549 648338922 494827083 135718226 580052486 791145492 675733794 617186085 352487167 705502396 100645439 673173430 560337913 724931798 390758432 580860871 939067429 114155636 559067740 593158012 197955923 779398104 756982997 381601164 677854084 182007123 404328555 694286930 870611829 391824135 449528014 670024565 259064585 856477900 860124663 920277636 476902634 827116526 613227378 455237343 341258764 932229607 327781054 296997273 913386120 272458177 823569589 751133040 924493366 228483878 777820362 885211918 423779881 23122198 299624334 984421572 887767283 596428773 48304579 564359881 956415919 898401641 440361654 947495334 500727287 578787653 550024184 405255197 120473004 195616599 184424529 907734748 581478040 804141807 126597737 937991356 413458835 141172381 138061230 233791399 755724648 932128777 686991321 85806038 136612094 269095366 906605825 789970862 632310282 573316145 118030537 117470549 722094337 932479843 257840208 492676357 293367938 186549170 249358875 979231790 241821750 730291987 768305526 402929526 245924311 535909581 278217817 360393540 933426889 713371784 433749567 679545141 344360066 894710473 95375883 724256037 524941210 467909061 462870443 852095808 554776758 652151527 760959232 342180203 470829330 123714058 477196528 178883569 435676435 678986065 754099958 184125346 485663521 945847894 534121138 685083829 237695518 897604777 649578575 876269011 948410055 286749835 495272239 650391201 508807191 604782789 27680435 913995715 892242663 670576458 905463422 57405408 959124585 890056877 833237963 819362489 895133786 853098003 698949283 743917590 834646898 733450039 679765984 789130810 120239332 863574505 74727291 981569364 7597013 692547857 952487218 260052742 837823429 408821092 698636892 370377204 403762948 578643356 677824097 982838877 661250734 550908490 686832564 507981796 12079593 659964890 455218949 756542988 619832153 746785496 645750855 671353985 876773479 712659403 636568429 722508278 529640782 388288853 485519438 890676275 293447398 151769245 802601919 277220767 505454254 150323717 785734838 673939564 773282602 498164453 56708499 732528828 31953809 564902429 596890262 712768386 561158854 427501966 732759166 614118525 44764237 240583238 337829506 445133608 756405176 90352929 974347820 201299227 934606662 570523340 239016209 498750662 679723841 774804447 820341584 777250043 957867192 563120374 772853753 354873527 65152889 233646491 851318986 34366819 735940151 586309752 191983472 657871448 386001428 950347268 98323391 338755731 866971088 427672158 766588048 708489353 626461016 167723690 812602257 26676377 49416657 189503374 879092152 994282200 334235795 626338472 696520171 504627455 745024120 520385704 750486384 341048692 820217235 868785640 563214455 17866982 412062087 257604903 265693869 902468309 53970424 362656615 990470285 625449243 172023792 540399820 337246529 320471874 549417544 923994252 966704040 769217694 708073875 201534124 223944235 83323448 615574356 993276166 351613497 842209670 385280664 533621622 196448860 878030568 138403489 841611237 256456036 536664429 741827327 394393319 937432229 661498174 396883443 105059242 327052514 251037867 892689373 264063591 391474524 902280078 443370811 585788281 676719437 126370631 990749489 776252997 864216111 245067699 822572192 610286192 100742144 934347920 965063134 61857764 376071700 245282086 162106690 451377540 655578039 87807341 779364206 225638210 728719282 513993731 699006779 962693138 284001169 654300011 190263525 40069259 775672530 535520277 932703415 59510780 941616260 628256924 647319181 144232599 339534318 832216429 24908599 283394967 955547164 150469699 51387506 231303056 321257739 497712771 122630109 134252764 65545326 179436330 767160784 971066977 307661069 119357044 918110820 529756109 135216623 921118901 950072749 914937019 294412811 688110111 538535748 804518932 425007308 633583945 368887332 220145740 480863009 494792051 380990521 835149244 78585967 837534727 623638195 679964994 923748954 135122333 406054764 532605775 145107793 290430312 494291884 770153527 658707335 515106779 997755127 126996268 365313386 735693482 40736241 876035734 122845287 630493516 408854194 55996079 934978935 821539093 529318424 844515761 932103536 581789019 578634171 702238095 87069631 527255004 709613791 525055841 153619875 989177346 261909711 429515628 838715117 242444390 12653536 464833981 886070982 129582058 125830931 728430235 992164483 57825181 727368403 202579255 911118853 670720879 178842060 318475075 708473125 827745852 423315042 46104803 130955720 863142541 606007946 670903038 781100091 762348487 262504729 574103258 282356396 440071468 29149169 510420021 875233176 675025781 965475624 924295024 498436023 833921524 865881409 414679857 786235021 218136243 36059635 872652924 720208685 367954782 136985138 799745452 720888611 258926185 440698021 197741666 628948825 221993937 39801470 998426254 104804032 344143529 399604692 295997440 271404688 984142940 181105373 753478327 445330266 950310678 175808826 670800210 351506630 596340177 182499617 636748814 87826818 599954133 478436511 273132229 233107593 287018116 487968163 362916017 329784544 360786391 461525560 454195195 211141211 819435308 387058614 763958317 322387212 726066527 896163766 91420536 622591395 219375645 715604501 237911726 674009610 460449291 720954022 120401895 887731444 43939875 609828371 45723655 273377648 660352711 410111925 473276144 397571009 942010471 992519218 683121182 473682094 800889749 782451502 971699749 742920123 425199739 590875022 307648341 373402245 974527928 191631455 651019626 860283255 399158515 460193984 942021832 561442937 373461217 380881711 578200244 156682195 129979433 601728596 766138930 968098679 258546504 519777841 155236991 799051247 49068847 663847930 517047335 595848424 910101845 77675063 152008680 479504372 249641427 603223672 90763484 881133028 823776215 624118826 204989136 663701302 246787574 313661997 663048042 434316350 360096366 23227891 389467710 869867907 34639469 11454634 2034638 345067756 588094057 450958984 811116500 817628587 967499063 852875290 907545373 245213431 911309204 409978388 10098414 435217907 268500186 615146207 260875029 664156023 444504474 184823338 602080472 301580567 348618872 410520571 976634908 577199737 363762693 785055628 89217493 526472834 690760511 975252221 991736875 91472981 664707085 35990164 814000349 168877759 745376384 578237274 471811559 409908090 122104846 27988612 380280630 399726148 229021584 677301041 4368491 359613011 683182467 647302521 487571118 638615231 816057752 442183082 61089155 356220280 473432878 107656931 121319149 933480195 445246699 343862807 791615174 669634576 885985832 791318300 212026141 129329331 215984918 596532571 968674376 989640756 221928588 242188429 185718256 696813534 787280979 310000301 687694582 626722075 507371919 698052598 296106982 586210697 741201353 51112083 537011911 293762320 87151950 294451904 949201584 871761462 682421491 397595526 225103656 604521749 197146679 191564152 309972151 890029667 724519678 135786517 389015401 417416498 545696542 288608646 687039526 807173271 361675710 329596457 171637367 176131908 595219127 663000663 137258667 104559129 233067518 656324914 794749839 451745470 46491081 5919779 416431535 717974494 353247092 2843892 186981647 676282672 858350368 950198393 693187929 221250028 136071401 39417628 7264576 937466108 98661103 281579603 568611836 16260339 411287408 183291962 453027567 831789495 468359344 387360179 677319875 117874425 801537520 217379201 660727034 192476745 871653903 419549866 904162547 270858708 76316142 314010908 463092198 609833802 709536232 776543608 372499557 875060873 105864968 681466648 522244293 992188740 319226047 310845668 484181985 370601963 260461330 821177395 468777112 643523267 969454394 597342585 491554062 846596451 770171717 729756116 441458417 608913837 184957016 745514864 466365098 66210870 864146172 380370620 482914043 203918700 333905507 469035049 362990335 463979388 232537286 119775684 827860151 742040200 233776917 757784374 59491812 42639459 131486486 948715706 961937176 736120475 404226195 898600960 659321780 611203120 285001123 961186019 414923815 633184017 284469752 181968361 701070205 429149059 206397306 38693709 149237436 944550017 57151461 811334303 888801406 198661141 292888066 6145743 289187700 316544231 907480234 362771159 465080088 115430178 714337728 68704820 448187146 759623481 788974930 237980002 496137297 27983395 105671891 17103476 705723154 904698415 683873027 844193598 879674935 133407252 725075710 544527527 93232718 697166491 701934757 948224167 116825997 575254053 166149622 992812937 108863086 470299130 404498639 656130324 477700849 669070317 419616921 757084487 298532411 253909064 655859771 256174564 172507662 27228646 98187442 264562533 670806299 309846762 805016949 500566897 967565026 97387154 233246191 772001677 918446687 274379778 16479089 994297399 297425404 768819869 240244025 257605217 159314819 588319009 319897066 13964162 681589676 120703140 679592292 767740651 7525654 386543806 96744994 164562078 373777443 244781801 842712950 906624647 750646196 897038507 403083134 834899242 981777975 788015665 202348193 560498794 65629466 563318265 650989359 73939014 822321475 700555979 740506941 308191758 155478030 853265508 728489533 680852781 418202801 648286522 734295907 764715666 79098924 66745733 914011862 984781384 831415588 44907541 685618970 803125757 927245907 436296701 656719954 476474718 663025746 36550065 425577468 919604294 186864791 687040024 658874954 595838673 17916051 123209742 811172729 332065513 380781288 841907548 124857641 889629080 353205333 5450444 417762467 595477117 473569145 96697664 251217228 400979607 506873047 857945567 35443713 353987019 319451771 203278864 421685565 9879207 274066695 546535699 528138720 60864227 879043190 953296599 738847489 184648164 128354425 590239814 863652843 769730477 755654153 988698608 835873177 833393856 67886322 873429060 909385351 813249031 40483314 179853325 155709791 482999739 392598648 28606939 894065654 203170304 791864770 52719458 326162558 906011484 276634686 523394560 62854471 430626366 833930370 40163286 485087172 857890177 738400616 829595525 622536498 828991097 381040191 761294331 460827786 371818472 241828093 283021004 234563750 442137892 109085945 731095283 97970085 794194376 318943758 172258393 584015491 672164625 732103279 58784386 667732560 749877899 164690967 657750741 923694621 155478935 570121831 845017694 774629999 924398872 976291099 246130316 758821071 592271577 871307084 570208654 976894245 883815746 715716439 294918139 892575560 773520419 304965021 333626652 948842849 11544425 88860822 37891186 498502373 336918347 450273252 340082841 459783984 671444068 439967160 574844412 449047066 961815425 615204824 482160643 81802374 454029162 704201145 766420550 234522400 406990675 781950919 643466974 737369542 618837877 651888391 838692442 815935580 66698178 730514160 604302202 276408351 914828665 508397961 783432934 946713280 572491007 621998230 966116447 658940653 301016062 659983247 866814127 559313915 767734966 881848369 786333069 138024665 651991841 229681640 649764070 133391079 306372058 337616192 68439114 232659340 348742717 986632216 177952259 664837669 769910093 562478856 94836667 496612727 439370424 786854895 913216948 392225906 758673024 733840804 802328777 612620448 700095198 409979714 274741338 110846999 902827966 622543624 137066884 899674118 170641144 379303563 526531639 43906478 869268213 618717759 683767735 918396112 937768867 686440978 161056088 628971392 864677940 57393144 577106092 183404813 298041670 610304163 584286588 9801220 789698382 182840108 118234888 688510456 837942639 517178781 962757468 816519601 925729945 145153926 387390251 940274804 117986009 426072545 189031387 925672975 105186029 512950670 459848711 485079924 855759853 691848745 982994378 325590226 530202036 748947940 594645630 467876783 834741360 744568245 32453177 541475367 346322627 984362038 736531684 795588492 638537642 57881990 685697162 5183779 987448933 618393338 521155778 331511841 954543775 769193462 718363014 265106065 774792131 570003123 478872115 506325231 611237846 510628660 432767476 663518290 237093329 509564057 32381780 863556084 450509963 91909707 102626565 942648870 525368901 909745803 64789504 412222185 660984918 435761216 440678778 321350332 811873209 202214646 536526171 52881293 401874074 761594364 84351775 706250343 728989864 201363730 423989775 219832732 615608722 873403919 441772661 958401771 48095672 290107597 70613097 452226382 292258195 760873078 387099436 668497642 299262617 929819569 954455711 815553281 894786151 607240329 212585526 543536243 728344452 839055407 120035766 291970547 19815998 550862388 692977648 471229314 792703494 657346426 735305436 130495925 767006223 385779019 172016622 897720005 749930303 643891821 127362932 699508220 66004368 99382614 521875780 904131860 21143413 798727705 453983205 124103233 79279688 981549679 397002742 280767605 321299571 335039695 770042656 647422136 294817404 494899003 868931424 663291253 320250939 834077273 738865655 386816432 700116239 391854761 8333961 420763221 84567572 354080730 530464366 932405905 841239588 302665457 277261198 690411542 660811408 989999206 982009303 532432912 611919620 933898684 389686963 124817140 510885239 163417619 454142825 447944593 339545267 381907526 948503964 563264501 697481705 902388515 284943417 618244485 346615190 787684957 189695961 977988047 440960673 66541397 583909527 239269402 35682139 827525353 17503918 867914723 101965192 213805211 412058115 52781886 395257938 575329258 758101756 497243701 699565921 785067302 842342307 801276383 115690635 727619954 202993485 734276168 616768757 742120824 416175776 198925479 242947244 695920646 75801801 670545388 640663567 1658672 594719816 618238008 504642319 311032750 256009107 480632276 272124765 337074175 92271284 453945727 115006289 191683887 345209551 532917268 136378453 269017195 727857557 424417140 684152982 755061054 782808069 834886140 662668330 597840031 15809491 570935046 211469932 392824939 472691033 62727320 322178064 768195444 350325971 84553384 271310327 816861043 979684932 809795922 39639787 937904061 607000165 928667599 550666553 496282055 138200046 285102083 73053660 138324007 909417949 844217329 542259663 247750613 922732660 702610938 360283528 889314982 557777890 118674767 358352080 56969981 346284454 423029980 660311567 303154977 956317084 519895721 598135899 546255585 32941948 738992700 891277276 779937429 314500848 787359273 96446162 90614331 875735768 747423235 310074143 821832701 204972479 700127376 323652729 299932935 328373776 512593536 489266889 433613307 610143441 378048408 337180854 652240143 515554785 720138708 193593598 843500550 421037986 339011784 593606468 375225773 5170983 3590175 241270252 157910429 526181953 826886200 231308855 928598667 415972401 792787285 682468248 472225765 87407362 44603874 662721486 210395621 310574241 644730878 828496084 51942863 497470639 657435467 429909889 328832145 869809787 426582036 521980346 381668047 736893827 385702091 197385266 573283564 510376684 271102861 730874862 570381061 313660469 59858123 903491705 870641058 369491439 539729793 65538249 996014228 881291969 405495160 302679468 129953916 298162889 432605985 908418645 963587999 288002708 11009617 129184296 211898431 213811867 147083993 142935588 145607494 396607755 453402732 640207388 546753433 585643518 267330750 701023247 453636946 309625139 335867535 724497539 18359808 124525376 398403448 304238236 977746966 650524423 360979267 285561757 144195390 754669391 56925648 211232155 599530488 8504656 874212649 158207387 325608892 905419284 991101714 574483490 610285983 449399552 384830778 516469717 588759152 937172437 272205170 614186315 519644286 150197216 47484149 574673830 223934761 706358898 76280633 98489896 448020274 874894724 519305484 94747549 21360926 336398266 553782898 285176414 537750799 6976293 418174093 197925473 785290298 151127213 31097042 905257279 680009225 810450057 901191244 993246610 294226092 183741194 57714571 805212513 737773441 104472406 676680078 133791386 19653902 628796797 327888001 625614537 709379726 654700001 172796698 823617081 700777218 907970094 761863377 449526398 417010106 652174779 453518560 839543154 585050539 36879677 646089528 488119909 260341831 844786933 211023685 55905573 415295026 660440565 299361625 156392370 925475312 292529200 444679439 904422227 23218454 252901696 785745520 682765376 284822349 395933980 80573184 897984984 438823751 148143715 687424282 955499343 98500803 426730822 438100618 213391305 526825698 79935421 248976101 671108833 750201097 894497416 907505318 431082476 896846343 26592474 283374983 311942898 201187433 16285557 685820181 234687739 687513733 424153624 621900440 923915532 293418901 232268852 395598057 983240973 243993238 638091127 429540227 161710692 1483228 825680478 867385472 929734341 228037776 626159966 787143852 218826461 660157228 938128093 216902354 592826151 368570040 670641321 300137760 268259790 76892983 605897148 961383957 14184523 769595072 233894234 114737327 928926992 296697028 871414031 756457516 47696853 518859495 984351505 678776569 892880798 377998750 558879631 810510059 560436102 930670574 419292343 88561128 531422710 266631641 354529946 692680563 446004550 969729472 814022287 206984626 424747265 218205022 172227519 698913476 543315517 787419720 813251959 866943240 776899911 64964904 471773832 585260362 208761638 626486428 126580884 552008266 267326324 415435986 29495719 748479809 252514702 785297345 249374686 725956683 122611471 393258325 334070761 40768202 646231366 823550112 255285781 24660269 491748438 7677855 99784673 46323788 354842806 445868672 382311148 261502611 195997438 476166208 782905365 991395454 508670894 924552648 523455410 871520749 164334323 979835055 853267706 626665620 879103022 489030536 284034123 554164760 934948159 949893844 978078268 350796947 725441349 870430907 441728907 485738767 291313036 500071802 533812910 480763870 164039659 486467533 152692545 784145947 358646727 611043479 891400622 627754550 479780998 676049505 776122602 903256631 222266444 788043767 149382245 275973435 485232956 549355662 468347095 354137814 409311419 905752372 414073858 746774814 773793106 63207706 574904166 975521613 214748413 840833311 390799071 918512326 983627520 877354866 953433885 491326501 586628364 19756726 15167331 41758613 996704103 629294787 777366137 186641539 672962667 802554329 991555948 136747339 754893022 124771190 328310302 52972406 412727146 15914519 483618664 900218393 188431375 171689434 202926143 551854770 55053056 186572414 149153348 138843833 772244560 429631809 955722824 646418151 10090148 244632084 219903328 66801129 519966565 51528526 696748141 842120978 38040824 766549192 615264550 568722245 108853387 878122168 319285733 22026504 119558467 369853825 379979454 277318830 878117998 538159555 215234260 827647685 743287688 614514692 368243622 148078453 281586989 879338844 900873964 79412837 865373926 690562206 109806614 434285132 418579520 331173768 411545266 603367406 356323904 583599802 862229712 500824690 212547571 223185985 82653556 398619549 493635048 976633295 867035017 443428338 728379695 992920401 623134050 381481920 835824049 761944336 675385605 172612004 193379865 466939513 30935354 644960346 543816716 672174944 954659599 107746373 631249780 816793288 475671246 18418003 160036801 848665395 664781193 169203563 705704145 112256411 470007739 993196138 251665665 852458106 948052869 868902131 521905081 209642744 66228134 381838337 18070657 473824993 613282281 508670366 879234208 621403106 430692943 404803329 281826902 127794596 856906316 977291132 623020642 201155867 386563860 771061458 875607467 548843229 866963487 8299399 198234011 595399976 145498102 911912477 92021767 513215656 55672380 512486993 409263087 275081047 375332019 120508415 979542946 958428999 485737393 589084055 663982038 287459224 882409385 607313482 198659630 823278472 203026565 291428343 751580115 509724927 584881489 266592271 174330414 838188822 541859588 826112588 210731656 766064264 751519440 515181943 578216483 544017851 958378796 449956468 288982065 634776998 471019667 918889682 572746158 112412702 579837080 391457453 116068737 663866729 297968734 270211512 10632569 122556989 849605443 35174644 565796331 905435245 781489878 6566032 585839632 651840387 84881913 967513323 471565326 493403680 747871914 95439427 464429042 424112875 469485865 88399019 4636528 683249470 589506252 658370828 604290578 105674571 257777112 507045297 821632975 484382697 844237699 257218209 677974593 784601194 943748596 276155440 688855349 159849612 879882496 9848487 67981179 66896041 459971581 737307583 583182111 603414404 804231970 773712147 984666817 45409632 997049091 184378557 273531693 809956418 676311453 289556227 728697140 788901882 909296693 3102980 900953465 281681834 783069882 940510595 84717825 798943974 592624108 287166350 543686210 690160423 585926925 750368050 997609553 196596004 998073283 473739515 217121380 828695434 612886758 778431774 601590513 41137729 606478804 334670626 835471000 303555197 854233814 980922733 232877070 889713469 656476171 30271395 439505289 707726365 786046482 61762082 849591134 458872438 893663805 261475650 252001371 737168378 803872974 774529739 48829868 939418113 455801894 946285867 804682371 900911468 187058930 652494537 183262229 586840710 939530717 663776209 880677691 596219353 960397450 429047922 353161430 793217873 434659511 395684141 771669282 401739956 525785660 656018352 144444151 821445685 993251175 172504670 899493719 444440504 680195052 127406866 186320472 926958895 130589660 562024523 620071838 966204716 359326047 836845656 77956317 307653156 520375377 588414775 620199462 514887732 96756311 185411609 677173767 829183607 967543519 879525575 999427706 803601280 249900088 140592771 234162199 476088813 400556279 479854630 278887757 866567375 160762303 962206619 661641483 871557621 356264812 924294315 510719358 371648915 740920219 4718234 521634557 19279967 865701795 756075810 161536169 42947812 865223740 274704182 557314269 350204517 590549951 579118450 399513571 927256357 518352793 839026383 323893979 787296255 147696623 439386579 955972429 326080788 439389715 174817939 325845325 293915009 137633216 661426284 315039117 755996 212265492 608299468 614955221 980812510 393090658 160478833 267050282 413672162 463825067 77811728 497052030 199448574 755026525 476946443 913145256 689981219 217362424 896354183 963432350 65371306 780593764 621987785 747758189 169596276 291638798 512734196 912948781 692334742 334136058 743283094 464686845 853383860 960008052 543188014 883298662 94851789 49817249 300093727 905168337 491949869 84645067 897763145 542156845 26839985 858077840 53349151 500637168 120792296 411470008 303979429 445656764 709933969 453853029 436150682 803781883 522233736 788709808 205575683 151635296 647119723 314899589 760075726 575818191 690171787 319586649 856445259 963642917 693524472 934883888 337392184 252747875 967936883 670896638 653973268 134940942 11527196 577034482 919793739 367921974 706938085 640069284 930469175 650585548 189068969 580874045 556241442 891454839 70906231 545895798 101664236 473203854 190067888 276125136 71810688 508319212 778917687 18787040 190739102 959045381 179528511 699633341 885556320 746731337 976484292 972716980 288944507 289548353 575400892 885694092 761775865 776482864 12431362 58130123 527406634 184022085 467707886 732772909 807699799 699884294 525348622 792641437 61712220 978817431 911515473 533589103 815707982 376906342 780896082 700267762 445302749 704081318 307049174 258469407 255277637 820623838 451867967 791136480 102644341 777574018 231316058 129501974 558996095 958963777 156095977 388816359 695793893 653524098 812390265 788735915 710939398 607750138 281645405 896759135 879980642 431125465 524667223 985638208 985567669 843923229 505079290 481253506 534039337 898165346 881751389 441901036 600668902 7370177 535823367 751659223 592078698 660963095 546883906 278764208 967919948 988094036 112625088 208780129 785967946 291747816 540457592 173615910 880439878 632589234 908516397 418417792 972037643 634338541 962529271 751529239 754220808 505880411 90444349 687406484 419294598 483093428 432245146 253026295 203512997 928535439 970794336 866700453 308231225 171489732 338146874 565207607 805931531 951787241 478400001 287849970 652341632 96792537 210047205 508076547 562035053 150951518 567915157 780894185 13306803 399995804 386595901 569044335 830873316 912905859 318812237 697272105 638336964 727475482 148015604 449240440 223740195 392260534 774846177 143433984 529974635 610664446 447382613 58413430 153099948 738882762 67034482 44931925 38949780 574558293 701721511 408853305 405692405 417667726 637579919 748693737 15991237 390200594 730948648 746675055 260933232 245416547 604255131 606512503 140045429 187984898 68636252 843132262 937363175 337240697 19195266 55951448 139174141 167338089 199372663 858766617 615801380 426855773 595405818 155115213 876896446 164231358 186178263 32499749 515859746 864343245 679727212 489817197 544632077 89773824 854799112 873997887 413634945 485471279 139992516 216010528 884999253 626170737 122349155 971028488 483128427 537968382 141905766 703994910 809578223 239372168 461425545 964946060 517777659 917851968 930919879 787038402 923574645 263845366 686275593 231947944 25688262 458075420 966143864 477511101 565093854 400669516 725613875 532493138 51291282 159482429 215081778 153841809 296309553 604913089 75387444 549590539 942182756 269212360 23400369 666361594 72997514 649393520 579677114 226622635 979377923 110837252 654306624 936585414 787136748 778230724 399895528 530319045 462643589 175868171 454250294 527643710 83867076 540453653 833564332 497294221 795479201 541923142 662272702 302134423 696062352 630975247 729186274 60875104 558305467 360070344 934553486 574064020 365851800 853600682 748861468 697778336 829229431 192600944 419769305 673908315 723156703 414202702 986082067 842057666 300849584 839806720 552607101 620254997 428358069 50678760 716205058 583874386 696216211 902701738 756258010 753634452 600570119 68452007 115201453 533430565 629473833 837189530 828901810 256680448 275612960 720945190 554346018 130068528 666408195 3377371 335275225 170871522 28727700 180568093 605605833 918229926 791423120 216492007 290072981 482263657 362360944 43393049 526987825 318443269 858414799 180125716 667360250 756366344 497953170 750967254 247796742 429399619 665817092 778106863 486921799 83806315 618999235 943233673 55225133 859243241 233435859 984154639 698608188 791407564 721169314 787771249 210373543 41851700 206435388 16391107 640706518 292653089 297083609 171226463 315250837 49832958 178608337 161333327 224524532 240051276 250548191 751526729 664929409 259859752 909610852 910893427 394666067 915884136 134207978 286943202 989198079 897678794 149574981 503465087 616899882 912099769 940147383 779573280 984979784 44137210 863185780 121974041 686716169 87713700 320127140 293452811 522157630 675721411 911216169 70921110 868135833 794866482 760554888 96152765 989163510 625933325 895325330 339440064 668449444 461834420 44176053 971811990 649935285 740760881 815825767 482119657 452532510 349590504 564641523 525235521 864195008 620608600 357236780 487332654 517410915 769819438 710073836 240352690 961165029 538403371 647693245 752932260 983159163 958051304 603287675 737715669 520572145 289269455 388021141 28276476 997886048 463766406 215871693 65024621 595169269 418989814 728825045 38554682 696954544 708927933 623659319 830089701 442953304 998774878 83884804 526505811 915256621 437320051 538070671 667740340 212367593 491961095 625276070 867532596 622854258 446769876 920455183 64205369 579561557 554178629 222099943 967754524 331020817 826146638 261237975 396981564 786331705 407755091 631000548 56198842 733866432 431370303 733025441 710566281 461117066 208643608 390110525 160703458 416147427 281002846 383090936 599443206 603037947 415403234 823408651 92967568 847078157 198984089 700548306 777813839 144369766 268252267 565029876 409414769 5241581 729395662 97770848 174681097 703698137 133970863 636877306 150370995 57925750 548451342 300325218 274569394 521042904 936109705 706576217 997868307 288551054 806568484 446904539 789598675 844089022 622780034 969713007 230943082 616368799 99593882 777246717 536232614 478371806 906212101 803149440 969346294 969629651 486060976 729318060 476829531 76251772 506282919 673058509 57926427 321807241 68369348 671659885 72665134 539363354 915500033 357300912 187431618 979786860 22176399 557694073 500393149 153634956 567965415 199356253 212316846 814778354 155863066 511890183 815421120 109489700 316744821 572551154 644084506 248866697 312293853 881939140 484334648 394152375 113922435 177248627 575251778 423447866 762032843 57055374 104566699 59025741 96452774 921122459 820912459 962905910 3789089 779445088 348924147 672614786 417154778 783345329 762206691 835817981 924406744 146323726 155539723 396301810 425620136 214938285 273978275 220494211 301843390 544583811 670473938 815777212 323085818 641613772 265391089 254052691 652045208 744591647 167720504 453372895 68238875 718637045 54474160 255608463 873499718 893545298 285699479 797114185 992096141 356927201 649521523 358646737 64749917 713597490 190477525 354939016 273430943 297839030 607153266 318627206 251465162 74555846 479359357 868148646 401028968 909079659 721051418 257659169 807448806 14764222 5556336 756660190 934376284 358368563 540206103 355046735 760003992 317463594 757383583 403693399 36003076 595084060 473045352 751350923 985759792 566531848 392468548 849351236 242829925 491278564 396739512 88984530 753755793 912554250 471281769 622663914 648643807 124162905 567597430 85824198 362820865 148688292 377181362 379818281 288833606 769546489 593659154 490331227 999237851 133982260 928811284 726768045 24483211 598708324 845513550 89483916 726723629 173139386 340531261 136113821 711886471 42596220 401498596 914141685 379027171 797969707 975496985 28546787 86671450 984583522 69640942 178029508 426162702 610602167 113526118 1662557 899394675 875399682 395093472 256932160 973122411 3231372 90789205 414170968 896244750 315163744 22854481 236113762 156665644 6264649 517590966 461372281 831562078 652205297 848738865 50572207 59555050 860772508 76240672 418820020 793062294 548239642 708474939 811495854 968641921 541093519 903714582 513231395 446891440 131532445 389896554 101759239 990587379 14943047 755308143 594875122 415090613 516800890 736458010 627164825 149523016 311645972 519512993 574072033 10752022 925917080 326591325 993540385 39795805 294902514 192053 425819380 128137922 914954461 316903860 762922547 564290213 888049608 402237549 704654380 468356818 889956081 75432131 768462720 288303843 570613756 988045979 57962644 168206277 294601759 680515029 745656877 647611937 565907169 451960113 289605948 566969974 454319368 676629032 555260604 474263944 520408706 192117587 967044855 532572373 28735920 411197713 9314419 535515357 611949027 941039857 230204542 173182288 907199434 923457873 883750576 667544144 916083382 269499835 148243955 70476838 256722380 207269158 111982498 211864569 947018471 679740899 753889058 74049009 949660896 761425727 439929818 391595290 172636108 762643005 640705817 49673354 201095433 3753747 52978671 955491162 75283997 215654442 914997191 780254449 571659160 483028074 279919742 692377753 633381154 494917367 76911090 449731489 696632545 281273496 93932168 251482257 348382693 69693918 671705905 482614605 705198571 149758432 195501098 611203846 130278410 472302374 920679950 931436173 929361038 668654759 29958453 403411885 928619447 537522848 212540917 764798289 551973154 486679317 537759229 548583937 694434571 902713880 559778403 168044872 821178107 520799474 936948513 258465117 284659334 297689258 524569268 792129388 616158584 889592194 147773250 676316506 868535963 808241482 263878033 390029469 559707816 221453582 855334949 84236490 330156692 696517868 124616654 844174922 688654721 57122065 155309672 246919907 875447538 744052180 402347695 498734896 214582853 424109405 331264705 417962569 797978814 225949892 181237948 252581214 916088239 729251207 582479381 353843843 595210898 567644412 239910431 669370640 134813467 805827234 380737113 855788217 55870350 122629129 97914455 712437619 630417580 66318904 221970270 919666210 447995652 200962882 535726394 876218211 414398203 707772900 850343624 526389956 813830646 125573298 175304599 930399809 412754400 795285486 983457035 74573552 355577547 567088160 868541444 168420890 794316225 544307524 909955637 296993258 169687481 818627002 304064904 842925468 723899361 776854253 273180667 119543582 98029849 141121736 724954522 202820144 230463776 421319722 597974271 17257202 106271383 376591549 218820511 595816408 971480018 562765501 310459933 847310839 576098264 806856057 264324520 530943104 371959235 613452231 239125678 952005967 648913161 588692107 213071061 843880171 887813766 621868714 257182877 579664753 560676126 469097095 766165858 68919432 31185373 756020535 799000724 174163657 920496615 745304640 865243302 499591587 714523695 155426254 578234847 359228602 231968872 499567947 631102037 125417535 534410763 67394854 818390699 175193603 46609607 147385533 333532956 197198573 198615127 68034673 821911414 923312468 83026954 31220920 42736702 49476589 670221692 247277770 968635667 930879725 777039043 399923771 368796674 347591615 890516205 573879586 677792300 49791944 121298615 526663082 678095641 289014835 634249499 502118663 55941101 299431603 768916390 791262392 249490861 758820886 985567017 439303083 803257026 629929413 835521889 821166777 534649045 481388964 271808520 572458159 278537334 516274853 891049357 823435433 833865252 98590721 658558509 598119336 488916754 251656222 484875125 788290415 551686980 887315349 535180397 370740387 373768467 913078380 592541632 251256937 448581349 117847039 170818306 935093402 675265807 593420478 936742118 389228774 49553935 594825726 975627467 476519571 25927179 593827940 203640040 821642430 895916060 692158644 804608304 338161227 591608109 187855759 852883705 591258347 423036139 814987842 560478375 760341906 334250576 516410662 93004858 336447467 571550126 127367340 113712756 664304512 846811581 290881865 883258334 226115416 501732656 596890025 319689921 115911575 807019716 568403918 582930532 325928102 676956785 823096880 812296584 511581096 372754601 527689801 138555632 434921252 454105904 125202009 8385056 776426520 431268758 760614888 752669036 579284917 795673877 366564073 24388402 592367871 571334193 613124464 350469546 707663589 987379952 189733108 512895949 541570743 836692142 46402150 221963818 577699896 944211651 820233256 760684747 888853929 462548069 643268510 815562417 85217548 616958466 824058640 149926547 408465 135048815 957436283 345152111 322446362 958882906 436507859 223043702 993182600 98032579 11808335 104529089 636400285 972632610 775749210 117932767 187680864 350746090 377821055 93605711 120425756 493880020 956742188 351233312 501579975 392411527 231723298 744561614 770288354 843844296 526530286 83499648 935527460 538606957 770299644 435037249 388313501 731903638 407551865 718781417 220785586 369495899 480551114 739681061 912398100 135867374 585393118 228995321 233554060 376763647 549264018 34655519 773058158 65646009 287543959 536697533 701227810 301929506 715601388 887586793 866180330 984963071 37168685 518254749 903860410 36949018 164303681 358189356 134302169 991313310 125894906 119259747 577674708 678945655 99230431 988142939 78633039 726407737 520645094 249357331 737116479 780813475 250522508 353238209 84764318 601969018 443369490 57267414 664257496 982688939 329215582 552032696 698661603 257866474 33330525 989846779 454943011 534151651 502227608 664335365 361726722 700470125 751228605 831496255 972270426 416346064 12700413 751546473 784521320 165997747 417766376 207960351 217981981 538110747 776649436 984238457 324682505 709440439 350326251 228754732 703965987 831381859 66398641 205894922 307924501 102135782 21763314 733533510 612096030 573365596 119771549 641393329 699731111 669435137 310503139 432848161 713708454 655525585 942903513 895877228 442135403 375306701 40288991 422517978 986587329 162961944 641105209 377952279 220544293 687143247 679641501 595292228 96770083 387778989 418066276 675235459 493919436 18212138 155064436 559171197 623140875 765717153 240313625 21092777 66973616 575123944 711082529 1067113 500873897 637792923 966486746 817822252 573689762 98582080 14321273 292615869 844915657 210928070 438162464 533275194 308312382 225056775 729314292 205055698 170151252 699464228 63723538 283575641 78098779 694031718 471502209 355006389 611558655 327831834 542698953 201119740 567814465 748386529 297799348 603116963 384841274 972296091 900115378 181883130 694898214 287055341 34851495 561460299 145492508 819850794 95238300 532718481 571649510 654833371 82206257 132890383 664918430 440266599 81028164 545062891 803812979 877517029 244086964 756349626 562207959 387082685 771198451 817102411 495502688 117951678 604017028 634029527 76022642 971526297 315019030 419383531 391485325 420808965 97439971 152460291 643439918 777270406 228106728 591564094 172044515 354534869 588749768 725593394 681023828 596684705 211115726 945323947 22367384 331072103 39697766 70710307 790313799 210212923 335729627 601122060 149946215 113829223 863002500 837891212 549081199 252411291 179609517 279285793 450522386 482957996 193017286 536205843 619435350 722112986 470107062 65630927 585159985 85899452 4078341 236119681 836539891 311841376 384094471 120516646 183365276 495764876 262113656 286600447 985237947 47542704 748481020 787181307 178484726 435905151 219248094 811820731 204455332 670949031 866122061 74475652 707915771 645806527 81875576 944958685 381939010 385170046 132094086 926191703 62516864 783159430 112259514 402955010 832024477 542733477 96152678 103226348 605073581 247545599 33190658 653022581 622175546 101977266 649776964 973008222 273687191 26593147 314164464 430353369 460596442 143559484 78907443 287463933 606076817 124245392 593394027 336218810 46747970 838846100 126421259 256965014 352178933 913238431 924992467 633151591 595687619 497617386 765060277 356683526 380055479 512865008 584658075 601732314 904710884 192515098 685545806 848382132 480532944 623751904 545119840 195324341 147678414 613510216 218874280 454893906 767794868 918693092 600781859 700682464 433058166 684180407 230245100 771772460 460296718 374698084 294072635 145543114 704622178 836528034 369841950 764724408 39246143 808575254 420962772 874761810 475172732 370584674 877583465 771112349 375185456 968380470 129777711 382603298 268773920 19263796 21026310 896457771 79522952 676762143 492356806 174838815 577994650 899123353 589469032 368329512 939233188 324141807 188823539 270056788 636545704 364365217 559969900 844016083 678063473 314319045 179371601 188444664 578194781 655256626 167812558 485479458 109225795 907135125 223117422 984717567 150277755 454837631 880582014 545305510 10483223 520484440 785449392 143855704 962405259 769466983 373253571 558258071 508502553 332690458 706664254 403807324 581591683 765950210 776832062 200178993 608551991 352578564 895513252 977056666 551309571 879039252 305722208 543257741 731154029 961004163 695597774 959908583 323361627 692822953 873609218 582022469 901441214 706576914 429808236 692489737 416823951 664422742 73195929 782633730 359745556 380781775 562961127 994827708 836666171 191734363 404071611 718420182 776643008 955038285 742005392 539570515 494283841 576602120 729150463 957691113 2927934 582512205 311817467 129436808 226490805 468876264 586315790 633519656 115690962 201746725 84380371 944899321 201632110 851198977 668057989 347510071 444346478 744698611 637711209 972764282 581677864 351505810 666854904 528389182 208766045 283239732 925848284 615260863 969523000 792400632 179333876 505579056 277016480 888587948 545128070 5138227 898928817 338066807 517297261 329381809 611397844 337554602 779417497 482223740 745677674 151924460 470178124 476011378 814771544 786141305 18204339 862989691 723352284 811237726 547536146 966734971 315782467 294441045 751550996 354540531 88835719 960740820 678315548 747638899 7658428 86646871 702724427 349527133 308597360 869400096 504494739 828072507 317856505 707526649 704553686 739841154 72606786 258036896 699491159 998657394 122661047 192017816 809914957 93053848 524345047 414338000 992343745 647867608 477434304 409935341 582745732 577419961 873807429 942299753 873184440 812121579 124539102 76285851 76213299 578044509 277579208 933977998 859627373 37977264 29226736 979219142 313886721 367223591 944171024 749251097 257631912 197836825 350846725 12741880 793550225 833236355 584109033 859176881 397433205 951304073 612272987 739570032 159731419 869693480 660060414 592463150 553652882 781025821 835983972 536535289 95090724 321483111 631689369 782293600 870018747 66035846 159567672 679705279 920093195 659641917 491843510 820259580 567840860 606124967 511255392 396693226 755677657 68440439 918012779 84506899 966184339 177271978 13663022 401306293 664256503 304402543 844463405 548874494 958244118 586759746 630933928 219432292 21154639 343866735 481165824 875653061 874402422 226913259 986954498 927241916 107245326 914639957 701972479 848412264 329868114 714302069 149335263 312958524 892020455 664801126 945530080 188421562 434349569 521055557 989345116 725342230 659267236 974358908 554592809 690969884 679336491 351413404 850144305 996582206 213860785 411951963 822889494 991872769 808818546 487732293 435193055 333442542 209833723 123183690 28087453 527074925 352125051 54718974 641233868 664845554 291945521 700338160 202929753 119085696 334907733 132344938 809475085 463703611 514881618 767264524 321676126 413696489 758679664 881060083 853417575 811720065 486047837 445457590 614436444 622770100 769966799 115271321 932089720 419018245 882678402 494962684 224506310 620931146 383777762 170981089 628094510 746303626 708315383 921939856 242111124 165005287 38641966 777041321 221216783 453610376 401621083 526227967 918246283 736371472 12902913 489494810 177150149 319463228 590542860 327618409 980982826 395299768 805904852 799627235 115368387 8538042 682050589 878311068 537266896 589383407 264744090 899040863 182658461 820147547 908905166 980203736 577509581 956528315 217833045 315847778 628983896 492488365 244990068 785002944 835276748 982019632 197735945 898704191 515144216 905297588 433906257 405259870 451139003 427193012 352916306 986704540 481557322 908144173 985315309 724881760 496097973 480061496 974517815 595479042 552355545 630402008 915346053 271828627 895883369 228747334 361961406 752513501 485985134 257062447 1236141 253493712 169877814 615341131 757020164 558113612 202957349 706464751 406312034 992452083 872760692 144442170 569457776 329396897 813202371 375691789 601840162 51730432 357136117 709126483 683071886 275050381 759924779 660226353 387229845 947687030 988376853 831854164 107357361 486304152 937143260 780504884 899882674 437881737 983793773 741396110 814224962 239711701 195833921 851120030 756535713 277493461 347493763 199292627 647195824 965309510 827007118 756406816 986778989 433750122 387756340 513693374 289514700 179348210 239608284 186529331 274663737 516162189 495500097 148874343 776788037 273304344 250630658 683581355 312687846 384527322 472894019 337600684 727556323 743355617 829711832 233013891 697548701 407133576 97576482 385654203 446896535 890334477 615870521 909519939 289883125 357245846 923005919 735198020 596039 442257615 242380027 745994316 513754793 252635600 63658340 891643891 268250372 675852540 447115873 813648398 467760355 129321531 229473913 824265937 594598008 385206265 83702396 281985865 715695102 289298639 385629891 167292616 291046109 521702253 853302341 813756750 529560997 868470867 964506739 164426515 934799069 314090409 671918518 70359244 782145446 481338882 386133045 471635163 942150560 146925715 123325933 66390399 913608897 798023402 12337390 168204358 625649904 529353810 487838653 40447853 883018231 193622882 45504740 73556255 440554107 190721910 773630750 539324747 922673313 2939312 899264224 583390166 656765025 631400261 475402462 933342068 250947624 775954444 546543221 470746625 592556105 319446212 995907307 130099489 688754011 640512735 783605043 98395012 541272618 795696663 329002222 623518411 942992521 188147201 929608479 196180617 193101953 925709806 455962481 783222015 356063899 478359755 924412081 295378379 217965938 844320821 596150183 305447839 723899288 504129091 271416598 187613095 641470759 429890462 438275448 561573018 586099184 581103484 606496753 897031550 764812097 93170228 230473129 20133726 447789050 746458350 371760770 9467371 494835133 236311234 344628577 318668409 201515834 988503994 709777215 438482036 196377011 231421977 732106539 455657847 782858867 342309628 795836434 310091873 575765854 195027284 904873297 35535994 538210050 562419736 883227974 76301760 49390708 620419761 231905892 873804399 267928273 133200035 686308843 788365466 215559103 295237438 190113354 511909291 259073263 791015362 834018312 375193643 310175677 888469981 935194929 75002675 159633458 238624300 463618334 57138666 467838053 901795527 865162369 353694452 727070228 19823498 160520402 65442268 301475431 630672094 27253070 891906376 384969207 654791038 751978470 312834088 628591136 190659618 901367501 931898479 980733943 792407248 160689227 856036224 170892344 531968954 210705933 669217419 585866392 86733671 517720989 381671421 820606441 871219030 578301149 686581756 626206187 348701428 634949317 73503748 840077732 941525537 62895939 325473925 602245814 987585267 65218776 387505453 613833326 741570257 973509212 989932271 940962981 184739905 870386052 428256437 999201704 873601394 426924475 186680919 496587393 32911421 873820065 815495514 375497262 930382656 606129714 212560917 469261308 551068612 352128604 195527105 594603442 783058769 419083047 398295643 452392889 37200238 869426363 367639650 601251282 103016489 335295408 85542329 523569608 225706172 413412293 536133322 218154834 282751239 387367463 428432853 68985174 751219016 729353894 607424514 50503267 892811619 714362870 9780071 275964693 444491748 259169847 659881522 523428665 116343623 106532044 180535150 842130164 415715957 3604357 398184050 221249156 892727857 335075331 678756871 629377111 857112157 614309029 703251161 145198074 110269970 906653009 207640293 709934256 856044446 246543208 496461373 474902256 703159657 272506778 388724339 953724136 660382683 923400248 593179042 259502945 364501291 525182944 311068071 235402522 678757769 104302588 773772507 348665155 863350520 433809678 452820867 845018379 203977865 393918812 128724478 987900093 61952605 804835232 603160317 164470127 561242370 553908773 374154026 566342875 345149371 951402397 162687468 699835925 109326939 820834700 891137053 62728255 37875051 786637561 5772659 482127432 829864900 636695789 97822635 78096033 350506117 21088085 464713008 544898909 746759089 849887093 752815044 850791412 965833340 162747119 85308952 474411476 531007501 694793983 4476575 964823632 314242570 121160863 612401287 757211040 121405722 557825686 357483970 637520182 100959492 191604410 621279948 885952227 136422116 939513870 902134862 342029595 412634728 680663941 406040004 127318816 922310886 2825396 916835209 564286918 985116855 255990493 748923296 544994741 928650647 174298159 947250735 409990570 432597129 80250202 502260470 185157520 35167078 630538648 265985585 212757009 95977404 292717440 593791689 996403993 818241204 508476625 110757293 960965105 764011578 414062366 76774191 413979477 920645467 66942752 876119832 415408604 883939670 308820098 564763009 471088000 544029612 28013218 799159475 483567030 626551729 913786440 582618615 303160574 598951909 579086291 771559151 964489427 391053148 510525257 524733016 239496035 582205101 440145984 22026116 732228150 551777476 605972034 375256719 560417530 349428904 847704025 386273817 736016133 734627510 649072115 885517619 825636513 246692733 624269903 990258179 54905098 194160282 581811395 710367839 322019485 222811672 735550955 510279132 49535365 625841775 828408333 340395676 213178317 666136651 598128984 878897228 588924376 187237005 493974727 62257553 986596971 52751460 868725890 602743209 133283302 702439622 321316612 1707743 940611855 71689341 629597160 92473024 119426295 42821266 195167457 868023944 3074126 750030633 127907500 997876933 998800073 366365594 21349978 417542492 924812572 13660832 590076531 454353132 286117294 230143621 301600256 576840971 481024622 677731900 553742125 899604701 670942818 50561899 198293988 630866965 636982648 785030011 290861076 473860595 762214456 449336351 373776723 578814724 987780039 746813316 466935957 885524354 656742566 987148195 842957209 71460757 919806810 46321321 356674340 455286322 674828467 834352357 211560479 932057708 475646359 231888870 278116062 849884454 177176750 777600075 409349829 996644866 141354988 328131830 780136960 704301834 26108883 616922217 975866371 996441792 672387680 710098149 776923203 954289769 625223898 321967425 412119384 838596817 731542276 717597253 628900390 211769149 230502962 665734250 638294486 561878612 592291267 226592451 149389999 557868705 1242403 626086021 910656291 160171742 362105736 905659432 153881336 851296412 148509910 756687431 769856963 799777586 576780281 929263874 563155470 150769936 820263107 143303530 87676671 185430384 471377026 961591186 172148724 664831073 870031412 51091082 77113502 49468765 519267305 804399501 538160300 38629130 537559318 678776565 703505381 53385049 715989846 685610529 956464739 464266694 37300495 466117377 826146591 910629339 405975532 500310423 577175115 429254764 697679536 949830754 458361157 217229010 876695711 769909379 119843167 143367190 80799494 600014128 43182699 620974919 564495979 229793111 327694130 857347971 331124054 498282970 325845252 47863269 854968002 923421097 984824499 164766499 120295485 35046847 729668418 575868211 712341884 277915833 319469051 844546791 140963940 352256379 432600103 805929905 319445839 296366568 703746167 613168273 662060561 144813772 821696814 246296953 365537435 584282536 622391969 612713297 360148163 82674876 534710085 109381052 276096399 815831343 811101192 35402702 569455696 346592379 42797676 793885988 992656969 150435794 238705113 800427058 873040630 920794994 422974219 920643447 821489346 612430432 189834974 422642155 660022431 894139060 347996107 100672394 599176763 171838409 561503576 408762899 600427113 156088060 602827762 402979606 87334022 196791744 330455483 687181893 604162167 622286012 304951216 515719000 377180759 184494023 192177883 975765960 470753616 547297118 845185035 260396623 341691430 529124790 418454698 321140890 142725745 890778786 983559084 130879823 517435362 741578318 496054198 661866093 6798560 521381887 385106914 474397294 395555915 493595279 887415391 948204729 11064450 166836604 903275984 426614906 430224925 531079548 838061023 814606046 825589060 770984186 757876523 237462618 846478547 347689071 543925544 829456182 813246660 78732808 850949034 281613418 951309408 255916301 102320877 21072686 914994929 39329578 787281319 622039184 806886759 52501547 707914309 310607592 824090731 671332980 417053547 335381030 390713413 80683404 910512251 829362736 595615262 716401488 834344149 419228800 169585761 745463963 561235660 740152151 143861673 388241371 51154406 752470996 18771384 283212992 263631198 124578038 220736309 449441852 733482986 679384198 125167991 609838041 870299767 548407971 473727771 207696931 266971037 669789657 863928156 377722438 15720737 101030430 105443703 922176706 554428149 463899072 715923075 24562827 235891302 384644582 918736678 7233713 277874214 363781447 940932971 974520502 576588304 217171871 75372439 93006014 501275051 803154215 816755671 626017840 964346884 951411604 653955439 708201913 344076254 969142523 474143968 829241926 338321266 32084946 656395524 206186860 284123538 653494130 564343054 788129155 846870628 659910176 842922007 111418723 738379992 83967092 225001701 798776850 478916499 536943790 321758520 105119937 484268732 755611943 780623831 389366372 204166826 158881182 584239586 407733411 712669199 882955086 206713246 782918987 312341942 273503536 467024647 751107625 626499260 714880243 817704818 943137406 175193599 71314857 423521501 850434482 733431573 554034774 252582623 510862225 961773096 684909971 970752485 845058938 1177946 691476366 686287312 721049697 119613088 31523237 112557017 70320085 299774855 761910961 907105978 949368362 651922462 406666693 893687259 126337881 583829704 252910149 422939492 420313663 852788319 440861495 874873955 735776969 658990859 232824449 914703090 944437297 520027742 915321877 93711072 763381045 455001629 944121550 243625877 387906694 307120187 238156374 563977736 175440023 172327660 474869903 610475739 408441664 619004570 374129290 973659123 663876506 277289419 146803400 760185724 161705796 993394517 150534107 324320014 169303405 535259504 366966780 430151517 195793211 517120808 511044468 733098507 696000655 700247294 874776571 922822519 816234361 252747975 529400551 498848411 783444491 327170590 843215672 761788430 583241675 401457668 272921755 768257807 822441502 285072573 425817353 287223454 412482792 777336418 391683591 644616315 603119987 923051672 458800382 100387187 642177282 166275056 753911589 948730854 525398748 726308859 951300647 87331194 911224603 899798090 486704655 144783449 772548268 952392160 253029103 809828285 956914295 823137 902136101 358140274 409647508 109183167 896289927 987534924 262787170 90071526 615754939 735227502 595433785 261977067 103554463 475316271 267517205 271595023 152537866 54571452 625931447 949968333 407335893 930361568 746131273 105917212 560078091 747964130 828541955 340776825 109804217 581872906 838627698 826951320 220159002 258288628 368640161 374062946 452097032 904100694 627289997 482076374 682337922 877197128 47973212 675562616 34943618 457450492 72491320 573801591 653925087 587735671 990105200 891533183 185079650 3954172 334987176 310818851 932315524 264005051 70731836 439766023 654445680 667467694 759977331 895691912 473231267 605404168 867995328 442224991 447161905 928252997 494543724 806479871 411779296 696340537 890687467 214540981 655329844 657508872 810019294 808196666 502326877 656404669 12092384 138795862 101174566 261635496 996049292 601358093 177121681 116458465 10962560 652216939 577360414 17079240 709571816 783912021 674555885 641891272 631765891 427873366 9695872 321126338 871069684 276760051 476942675 206058466 150307762 25857286 499761694 146936471 466315809 856553228 583709735 656464576 307646582 339978381 476745951 767985242 297357999 186467320 280172774 700337821 842852430 888390154 41319072 364656029 930907771 420878046 446610564 982119001 850507935 638492976 286521480 554506738 529497850 546114637 638104521 261533942 511788148 53927168 900214326 627368066 360496543 223062061 422884244 418031806 423283302 971055191 17971522 288506177 578907044 942596582 988113669 46785935 436284944 287734849 910970741 385649636 554419630 291411246 353213298 377500165 910235073 853597104 280829400 949166378 166037650 733048539 776429660 429973463 541546609 261979263 515025913 568515838 750256711 550936420 875675201 989182136 699770151 724876361 99092705 102613756 394771226 65871992 856628147 660891792 865508918 383375981 283032862 393142176 79388152 117357535 440819926 233668234 754712764 229305760 438150702 342627315 785162950 744790168 954924699 789983211 88693381 834399680 447363281 155405081 145834501 678568683 937943902 131604432 224201327 208210144 594925300 808043076 706858183 250326771 457157904 875501490 816647649 590244144 698908372 495770222 305081407 958035518 363750227 137400617 341527725 147345043 272709076 165461331 374692261 373621828 844468632 996815245 287910770 918616894 698814966 568178237 589625798 953148904 573901601 782249389 205961003 629462528 240430477 774410801 768826239 876822602 234172857 723288171 830026625 596068843 228461000 560462547 191032017 254915541 287616149 504631747 460081022 295273518 982921719 60094380 335568084 918870812 810783490 89176841 796029129 415878413 246636617 597557466 40963389 115820735 58541241 54507876 583055 891734149 811385459 796807878 868576289 983688121 275038089 239856856 967994687 328444960 932301086 30974122 805391081 915950409 412205767 961487553 177436608 805656456 64202725 510705536 561586765 671282730 20342151 713510382 902052994 541623810 975597937 348653710 578859528 887557854 478361225 743358384 850018734 63300342 773851762 623147530 82169642 208315539 869744551 280687382 529106794 22352388 292770977 866878815 534704695 725503825 974255168 220663920 344457792 355218570 380274330 934095472 271547145 193415794 471019159 283413137 714761047 492024217 169728104 279484219 664502724 13604432 642783976 198551204 75705987 683584128 797504496 257652345 789058811 769775163 237412207 517575479 255442165 733142449 508636227 610904714 685337666 307242770 420544177 334050943 581613285 717776350 697399835 514259700 53722721 210133431 139462943 928019751 593484495 787927705 91390168 721686375 529366882 467222846 308764427 197670354 549442125 927766380 249068989 848671635 231084832 258424333 255102648 595452381 849384795 507261176 525883884 401061860 891954043 306604272 349935601 118479691 596886465 683236004 625515074 645427008 125542408 168892054 33923533 494253499 606997456 651736285 864618470 841817008 913525912 362662421 416459619 704047179 899410454 341937931 65015885 926524926 767041042 972149675 529978019 727568135 631750443 793656955 389404262 768278986 959736995 459395329 238428981 505602904 766174751 781706308 403127684 596529586 298852277 823612303 576663111 285469630 593515966 17649718 43300297 752774959 338345017 959825348 793432300 760339681 642780195 713362928 255541220 781218933 612339355 929689704 279100128 721539238 824129404 71654815 652395193 256910895 796335744 506166834 201113784 759209082 250393284 587657257 849050992 745951484 274536213 921709555 864859016 867387624 687257207 196989678 440943418 620250813 547343297 835704682 557268495 91896237 10266575 380639483 539834599 386114255 242547429 210647959 188656273 751319874 907042814 480250099 573124738 120502583 959673172 330573571 899012114 648823776 369445488 50875807 715864233 602447532 825366368 622524755 897507911 948609780 775133875 30128239 612523973 893495921 198674506 339069581 808231373 208829473 796375472 214068957 316609227 284535628 254517259 824515983 145525863 772757105 744400831 605505118 772204615 252115954 8161559 416090038 528725041 791871244 712233193 306057538 491629679 809018383 321906153 197814564 767102163 177512199 190149390 926478319 623510303 74386561 817261688 314503817 661756696 66315687 58360565 110221302 621361171 788240593 706112986 530402563 666368597 936039148 157124560 192858436 231675560 13958290 581088892 21771803 797162296 595529565 380102709 468784439 866081495 166666891 75058424 915627216 254213199 954789862 64530037 431909570 72556818 526240185 844808155 238935633 247352317 650646765 986345423 632195219 906433619 762861927 732715200 693462451 159051789 520416709 951771197 58482449 435147707 731062037 235754567 496259406 155048603 545714089 954347376 544901051 82603068 196477555 718554965 589297660 299886130 497375510 877622881 370128325 287148477 912371128 569057711 335763241 688063704 411292193 696203655 153668666 814376380 170999745 186141315 842485755 511490080 42229557 615922401 476483130 996235939 121638951 873538617 409762598 103146278 54269639 524191849 993393334 131503536 863827249 959902010 871181407 432561705 207769150 595100012 62427757 969591231 556295326 33145881 405305152 951978466 72236995 994631973 123969372 985597464 327025672 335789532 372474064 728153828 918902212 432433289 625818555 660625401 595546866 262129353 81162378 629662734 255680153 417627505 720163418 876906074 118519966 41827394 417484168 167295778 528326551 418995059 257807286 864946087 291373091 632678946 952206879 931188830 828183910 307460290 494730521 87173236 395175486 327328884 265065744 768800671 503672995 163198595 995372537 66462553 293477920 320173296 905597448 207528660 939273603 190127807 329833673 906901790 749643789 103766634 356993332 967198299 105437503 59521423 761812422 564024749 186562163 24453393 704568711 379072375 847253480 350566961 384281293 585490767 371362004 927135080 23822942 562400149 442382579 792370740 277989145 480396112 673825852 452284185 294117841 465357218 722121855 875214955 945579907 891888310 617756564 928257472 123318607 554679551 159153358 348210116 329808812 733537133 851037363 446332291 268993342 3799286 866671959 430856938 126528863 228932665 441121842 664556077 439272831 696741385 352678900 887570430 163339777 991419262 70992614 724109414 812997229 88759386 462809281 141369743 695841916 637655164 902143334 225469489 188573691 281597829 319752774 201273233 861115974 498152332 24345361 869803708 996083715 109973031 209041599 164140017 365316987 300845176 297293976 901396444 276361535 309759883 800006296 837397476 444322100 363722092 326312008 962781169 317962505 571966520 965019114 115617499 394703963 198219102 177044850 360738055 852069024 214831528 540857969 193794625 334427519 246517416 147084096 670065608 964681005 464647794 725458942 585057379 537783047 57112505 140181457 642125845 972569629 31973203 967331151 607371500 560563983 994171258 648362828 10334749 570451910 544353122 979809968 702684092 891911686 25026819 783491390 642243254 694893996 581276848 40209063 528331205 602652224 943767189 658117900 85027526 600363450 696568502 498086502 351647329 617077288 352792392 703742496 728359468 1182310 731218341 772593043 202036567 961390517 219396060 649155388 976789975 965819456 69712519 506502305 297573715 812959263 489305655 373577778 500167972 530370054 115683887 255372365 355258868 405203040 613635086 624926244 24254476 996228898 277941710 393479588 398597821 639748928 351217497 541048753 403173978 121510483 626103751 729482803 134657484 120321992 996405124 899505487 21469919 375960815 969233585 592470955 742214642 911467023 827573762 837663510 134664796 87718479 694619028 354968354 574022800 297641206 917679577 169533759 868846127 324141238 373229041 433148387 83191320 348421990 746042957 735837361 486647818 648936641 14003516 797549933 965126188 457752887 421622140 324500594 887931721 526853549 704169990 124216816 410105456 762813273 723819411 269641301 562707408 745499054 119235681 665059350 229070508 962345915 765649364 429945080 4128844 515893999 300026740 169781484 720349025 256915786 612545281 966969564 932464947 20141382 333211816 62961407 888098025 421419811 373906475 973669330 263460811 906188059 398667397 760325613 534194337 711432751 128684067 786590336 767908033 378003807 384100447 631598959 247673462 294496637 723162612 537008664 720882346 247228069 368656911 464920019 609055908 293781289 893112037 235241072 196498586 114621268 333624980 480268852 964515557 830546221 190478122 851990646 747321004 652956108 752803562 602900134 782968649 251077778 684505679 968830073 844144965 654346904 75445491 424969636 123997123 415340864 945062310 695935074 258640921 165695107 887317430 808910659 961391216 731384952 722085663 143504418 146126561 830131657 245578068 79966132 549243398 658700747 574754386 322991836 440971172 929656545 149150511 776875156 193085312 149465599 157706455 980704529 348091358 86813425 381605331 141601480 39433832 636191361 681067237 480443111 196041433 666565331 973523266 59925573 229713640 147231417 880085343 667972778 283776154 633939350 534531582 978428023 795629821 277377221 677761907 281696947 982287945 513759335 262009427 448004212 791136871 504440721 649302179 676025454 239043166 515950501 955676606 717874396 257209130 122348766 710188473 817464951 30304459 808910392 551499601 329514859 225051604 728509133 5089991 501157556 556559965 404880042 509690776 785098987 974850677 908390439 377301758 219596143 163482655 246643440 632723580 752535659 325353795 929681397 399416498 435120853 597978376 56399275 117334615 845433997 784182902 431214606 680828910 664272471 196792576 629407125 386304807 842304607 785081651 92214882 329731177 622880232 381640274 921937274 441161306 789241617 553956333 204052191 749059878 519309849 608239262 685092502 453281882 200289258 948313454 614897084 774931898 453540425 734901348 38688071 572501797 692108501 929130302 931996173 422772658 427407048 52644159 49330644 706183126 864935875 291713549 397424650 842802137 512207742 518039209 518473610 197110286 655247820 921012058 261458738 878009126 718584713 654619189 685739791 964112279 312289171 148083829 727761291 1621223 572798962 55667872 922628541 14113825 81632622 905078071 338777406 204934947 783832341 881919669 931539183 362071267 815478035 839655709 879392750 800723797 496658372 382831180 246926074 639276514 394838936 824968555 539196190 949599939 115162824 928296984 415800358 916754182 716577620 893031934 177325604 528879832 169519164 831414069 426250588 82871679 727338617 693023288 294253362 967333698 136496697 663454275 678854467 779363192 500921901 396648490 551971975 398963544 952847424 627691525 782882247 663737844 810585991 661450299 670573599 340964071 787916542 812306571 323424615 295669557 829695854 117822377 739008868 675290480 150091271 104255976 648858102 100758850 583380418 241750177 803577287 794315047 378808381 98981265 19676704 396939858 731318328 58735125 983707327 206185949 293535266 126721463 83487673 313716524 946385938 448408344 446506927 660311104 668833300 558138646 19766931 634991502 638315268 55929034 881266882 403875708 675065100 511786581 475756933 69253000 93398175 778414242 660832936 503699971 733635919 250138473 343518758 273783872 410382660 971520076 639744111 199179244 187473757 471712885 100178048 641068332 563538732 184244398 480049127 632133583 825152451 735258306 902468399 975359576 991761968 671382588 323991530 241810034 648142148 594318602 517231987 914566252 227544018 62744336 252811645 638453969 30894429 740466397 174757817 761268301 920267956 285897022 839242914 604892960 654726613 359691174 918633727 157550739 519645212 463228798 909460308 454254447 607617555 77728678 309215401 874542982 34860803 698632331 617055749 164267495 819080045 115628743 252860777 621048935 470999638 193173640 723720337 588722205 114910940 111799459 968245373 419691523 412757321 873065996 81352236 263362644 567059574 20057290 498769335 597625325 866024992 992223543 193802504 714835216 708986823 104029543 697643071 970770421 538399468 742089296 139122860 7882245 632469602 344134065 79704864 161145969 82931350 218422019 154374587 530205165 17422161 133013616 686292441 298862327 447873316 301886574 329182574 131946418 308864695 762068243 154948432 359764579 342420585 541502852 148751537 531223481 315745810 648177771 297949209 100863459 793416138 801549699 980076513 19909870 824423266 479166162 854874524 267551658 333138800 166154793 495022339 502197991 953667160 754102456 55032731 280091149 997684768 938248633 788616999 233055925 306893215 409124584 119007283 15732941 643413236 665035 466955749 756290907 438922245 614631286 406635608 978710758 3182574 783846516 138878161 313492168 120537270 226315791 365829175 171229120 893937395 174982797 420129790 149800138 750924431 729599428 659541628 17891045 287348007 367916018 362809466 361187627 357323182 159981023 741025863 954940459 534299631 417225137 15798915 917522227 111548805 919739209 284315880 318000153 277767380 67456417 383064080 4975606 324029461 447589857 650122519 886406360 369368375 378145395 590535641 939200582 106478817 801030755 695230331 415865318 138502791 476981844 700115336 833861359 261683436 598802097 593622854 182783669 753731725 821046316 839136460 307437084 256561969 504498635 728772561 12747345 159351570 671468013 51493787 108210365 799100554 264014146 520569542 265857277 885626397 316613140 765248991 638231852 20970307 482679622 193565725 675711706 458974662 338368686 354626044 119124351 752902908 26926253 966073094 572765931 672202841 282879863 3113444 814791057 414336413 858614486 259386242 166230168 945802749 751257690 969725459 537425316 980717948 65224141 169280237 745379016 178049566 162311020 62426381 163889766 123927582 372844298 734494814 615797232 316729742 768784311 715522287 941294201 753343620 562525231 211619860 729854588 517947355 467838078 284282357 205575384 271440355 913853719 621054782 362018622 198206640 673832072 843338912 402765566 36100740 318477256 651062135 118478207 813714644 348647747 753686863 9706476 100478494 621222247 553547858 848892753 999250638 358301966 270242283 753029086 226909912 189002049 349842302 72661444 659219879 966406691 962457440 690019118 453361243 466109567 622389656 306769132 122694739 472193344 269160711 522882031 526429959 225081693 515758235 899505684 332702641 110610983 396469132 511834388 299367421 318928579 596433619 394195085 110921743 445528985 660070859 18686106 527459189 333310128 437187401 401100552 394436891 749492255 459422875 934048756 204181628 736153016 767496054 569834263 941313318 797131159 590793930 980618713 53655830 752587532 540724927 986649533 502471090 95865435 650511581 293887568 517629365 644027308 242982909 265747874 762807378 245123007 710899624 203141716 266668027 236484041 76329759 538599739 632353415 426325277 425055613 34996022 962132151 336815728 655413817 604973286 576941021 245837946 275749731 620681188 17929670 532572197 198841167 699378782 346699066 338052596 230826797 263765647 8522531 359672264 146728494 931473650 846123896 820651871 365217109 157376564 459488795 439306544 51384725 727937980 479917197 632213699 473756580 732189250 595312471 504751399 867854376 424814678 521836458 939397988 843471892 168931343 163386842 522637931 427155049 12811488 299498001 411679544 511263911 968212171 113462882 302591017 371119305 554807567 12411193 21399709 525191868 102162816 191075564 535800857 748284062 516906327 100762724 519754907 472586901 629010009 77657574 186437960 168260070 380184909 547184251 205324938 467405604 905672486 117414011 277576816 814010723 566882043 372140361 940154866 314235117 209114359 267722310 279822715 156616129 81245276 813906228 721687972 236154130 545488669 914153645 602209526 884028514 234452299 674736696 761487370 877012218 533740774 466911919 364684456 42777587 391471287 6673779 889915380 94295480 243866125 379672158 908073250 297288098 698187338 601277562 242627651 808006027 586246326 994731542 566362115 102105312 917475898 627427488 946799894 114352679 252318145 288790594 695416163 857067797 641916054 904047081 316629584 141657325 928054177 94566732 408770316 112285092 281602361 272554709 648902406 779854403 602657479 433068540 335631757 228626153 253225560 322216352 314980154 984984274 788915628 427666034 942069820 89531838 471663884 845348347 847236225 461700174 918064359 640866092 884758621 473777175 252591074 73537933 559587788 601877786 817529810 158260304 802767674 819907058 288021694 238054885 192090142 578603566 52442182 241296894 532653236 697697860 712843543 524263745 466171684 934928032 911947346 824211017 852957134 815498326 942003019 491793414 904338836 261276879 901839714 80360005 30123035 937019455 454028105 641698231 674627874 494315099 939873053 606074785 308542570 128534826 570883823 701387380 971449747 276413751 510235515 872948801 256666181 683485665 283528127 634577 193457218 471719254 356860227 39850454 269943985 377820421 835284100 849567962 813485590 711987937 31983831 947643716 989154851 297850140 509788536 317442498 440086804 462274797 58573288 123351544 420957793 711392461 637903159 557704945 57455080 432113952 49557718 524337137 489841599 20722620 252421567 289803009 751978399 93938308 617868347 777361487 771828590 262082694 206300122 821114963 111220531 431293988 302555648 523550756 497363377 553383021 699182413 567642950 683669577 303366635 753566253 371278345 963389012 865526224 671384319 662906419 192764620 726878403 431040036 102484417 613249986 243789960 163024269 425956680 85897594 175757221 654568053 259797443 167272385 86582395 296201362 844936352 450244762 459914188 979359654 757756145 676126227 698406698 893470981 600911046 707218270 418661866 507654614 187193510 449085443 367449705 74231967 614425419 801954754 693126431 392171110 339178226 408262649 865244775 572951003 484738810 234063991 255037725 946313811 504971998 551603615 945023447 88822330 756223374 141158644 342202936 701421826 731104037 223939858 577011409 340904016 74123763 662843562 441317284 812915777 960477346 52792641 177207348 683447142 109455643 630071212 220406552 558716009 363040579 148984110 154931133 65423568 261065861 145633625 464556649 865031326 968918218 305467855 113807304 796042984 763900923 617513326 758290148 701327778 341084058 308909895 597708310 293014037 474981272 292021078 522251231 453573654 118356438 632822218 500785977 352261820 449741469 595938218 447008457 408882844 789350736 183658795 730650864 559483826 45458363 430397756 184118690 920507978 841595382 658033440 910129623 172600961 835067022 981166818 253587398 370685461 164699695 141235676 721480990 999184294 730500881 593116025 320110495 281373039 997512149 300938597 44729627 584210006 13313302 717033209 227568949 472706960 582516077 603270789 67489180 309774697 262873798 62239198 800273458 674623660 730784377 840130024 839825535 169575846 526138882 742628645 556179283 717467975 532483498 167277386 928888698 91613801 147517712 160118896 513163600 132399547 90075420 627776168 953751172 498702981 817573725 792594454 921127538 897538097 639687379 183473762 492742053 731995206 302401997 370367070 633597644 607978878 426490921 922428177 17452689 576433635 548618742 71940811 537764218 310041992 923098266 687126060 787006447 983263880 512398249 992003156 606379426 132158363 975671239 589531150 746651952 258134591 320574273 304263102 308148774 443789968 136948325 908299739 452828794 302061587 412823466 508729550 121412449 902130924 15777970 101125959 253079120 987582087 979090341 653179097 334124940 974828906 403602131 788537248 921902671 762528019 544537758 59460882 729387564 140330894 6375504 338985153 608480604 539380954 880693508 964153430 89737736 345758879 413708635 278704397 308580259 874745708 588573435 600761206 168118298 949685546 886981648 914046742 796395338 329322478 654568079 479283489 222369424 468378626 273469424 58916312 664362340 342486212 943980574 337745857 645119644 156041305 535396230 194994661 235082302 170490457 155325064 26394870 535120942 77751028 602230556 775435082 99192082 757807203 902296043 844145174 275543431 82170855 227856457 349225614 883213286 550014817 363162961 730544642 469273546 254798946 137369313 951922440 979389325 987151921 900566597 421019029 291982736 141996923 900979666 594791640 676344955 596521473 933651164 220555786 286379460 474280208 347045390 302223769 43923269 282502850 336149689 254151905 935821931 290497057 488578217 997635692 99603140 349509699 915474984 816422700 200194068 631715542 608272803 293830352 153313179 176611300 668674593 288817250 126666193 987995256 962422327 435839907 167769642 71481284 406480733 333352267 280449875 90183120 852550942 267042779 322703075 76243118 418109584 664749702 928403957 167527776 702574305 581355604 114312469 259932139 639278954 513448922 460340716 523186663 88321898 778968970 407507622 619080781 937965047 269245233 725907125 958410579 866286192 835683881 472799609 348460072 706226386 245376498 122653203 826225380 268822075 683485682 943708697 70775285 802556320 902988107 649265555 20996308 504916682 616817815 492650306 521392393 86990005 116233757 863144453 987408632 931491236 318348025 460990094 195786463 238138802 549680809 58004361 102997762 771877013 899396014 52785657 252707050 419725986 586934011 338795896 733562034 991750066 986807401 523343433 665491775 133424857 81133637 887007872 493381896 642285192 798911262 231210357 263152482 46770502 581129365 369775766 717037264 652081468 459123721 256920635 560106452 95988240 639018853 57748573 755332856 202189397 643205187 501300428 732493508 532293617 594433561 621820251 870364478 660458654 434045130 152725422 512133174 734169912 320028833 956471714 706166847 693990339 429670192 628386595 582720577 76566418 86469083 434189185 754641431 370105878 532054909 230857581 421401766 288748298 244258643 175250886 538098543 735475425 415384505 122216283 68051283 882896192 304418013 923879435 876660715 428220114 695672332 544342151 768051459 215182277 57577922 335387867 632094869 70175816 524663861 889617206 451222515 310666095 823816820 581389140 395956946 111519193 898907404 266395357 498116264 506070089 886621138 822737676 440849409 191070102 59750865 384048668 666862915 781787249 168846713 709024646 267842888 685229311 271576423 59594727 965225660 970578392 205511702 794527723 13523648 905738948 166372227 571746204 869550207 74797203 912969546 739719728 993950817 141767165 451144158 645307777 637870494 298926553 980216786 190604434 90006553 625059048 672721789 690652700 444550884 707961872 938057417 689111357 524336490 837864132 398573264 514683174 813724802 123264412 723222852 377632502 432206388 196148418 902799730 158954487 339057325 571281900 788237920 578534548 507169413 320355920 354636377 264578468 609866477 283259115 34575023 765807640 194957912 770514074 754584936 81311659 992411538 244471724 745407065 46239773 739813821 702408456 969151888 66813225 775187205 327512216 912671393 179533956 946023015 743858751 370124342 705348839 550131127 795251477 780018378 240919195 120446174 19248626 71811329 173794747 307087982 825485491 386843114 509580750 518118098 331459379 562441701 150042248 258213800 665819182 580937722 393079020 317060970 46342637 696226237 404800557 377614321 828428814 765309765 595309149 834858414 359908127 105579960 305741583 597996099 19759161 677845061 792029532 475157823 892707385 25494045 474957568 184038531 327084635 904063175 605414913 560655475 81137625 658564636 908982352 229005094 828448123 679988013 199315514 566498253 646303112 364279773 702187361 480420825 67280800 221274634 901744901 893243297 714202497 422466092 508311098 590565394 743808735 592292486 303161843 800340245 180638586 457750008 144557372 858506823 38728175 332628047 987276210 318515740 797799833 779917822 440165034 75953776 365401753 405157752 405102065 178324861 455050536 197754036 803220556 210620255 951002882 335479911 444235114 161790117 305725950 868311995 62240872 598843196 958764518 506143847 734648793 352034178 452889 608940685 200920585 31118264 928806485 841864155 645814974 907376154 56612122 68515742 496640473 532413751 573533176 352036709 272806955 793876712 239295440 408298057 183135100 991761222 657355261 212290374 863211442 813502650 544343337 223131528 446907670 244883432 422213910 726802419 84155835 638990556 361233223 356246279 754648388 737510012 620004984 816349989 164529417 941009347 514804163 60309058 517619857 529488418 395186995 899229991 926507714 375195773 407753123 111952526 337207054 828048595 498527656 481949823 918991818 89037892 814039414 107148136 645783894 347496624 656136935 807920551 585036591 309251574 366755118 739361706 768371163 558941391 127991645 455279561 227395175 190841851 255955075 749862456 98209728 383789617 657400534 957415487 643581125 421390845 901529417 761418904 66022071 362554044 226509026 923366040 797440777 810341142 254229586 264189166 16001822 398329280 730857901 82941898 382871797 169977928 122165647 47264104 450564948 891613410 538341762 228668783 311647428 83158781 11257354 715478245 327251538 312596666 456608722 758970559 696741529 838976904 439756129 723898039 329565647 445053312 589122472 711437814 752078300 683165658 627554244 179961862 659040588 51273569 961381000 649006478 531362990 554721325 769754685 325061059 219182210 736012639 848829494 321350625 315906388 986992512 330844584 379138973 805795850 898865909 771136241 203708947 681193825 775994296 18830103 73893934 403954440 722922719 36839909 487539317 860253878 932728629 54907399 585784932 726199891 883377248 130139104 386722596 28683410 232713939 801788821 238032283 158843182 377713756 93004023 348846580 953324489 681328333 482723313 136865656 166469830 808849267 110518840 82577504 377467525 793433558 844257175 764096375 464870747 611942617 904845948 104191515 473067924 527629691 671623052 808674848 615299695 985646640 433513442 729927959 560313964 977712467 175780758 742545798 519011647 926934064 784967317 491311314 450795754 849974098 740227381 656627601 718563262 701535592 601154688 513097628 33008100 978412253 442320850 107161998 607439773 966957338 106205431 562811603 276320396 979173097 806837731 914694800 609808953 933192325 477133743 752782273 492935727 367362493 104014380 470000705 66376562 538433138 109877147 963262243 755472105 242174709 713245956 948417165 214653724 149341787 157339786 459412534 651412616 719668646 685691031 443852383 765209827 100465187 110677956 505844040 668641192 980223922 635682950 663341937 645410870 237574942 578409753 646170569 247764028 717851440 135710780 921192370 317806930 269643012 131712592 570102374 875043146 289472253 475473800 22918644 874861025 113405355 453299515 809437510 675438239 532783426 397628415 309178098 853054311 359423569 758619941 992496046 972389663 290793521 447932394 610611647 987219485 901366863 570413161 939295258 448015286 643587968 388581681 667403668 12171915 929818336 96146229 358045252 299869804 521082675 736270739 680076542 124881528 922760953 528540035 228951199 350209765 403993674 244659171 947937940 534309879 906491800 896327827 21155091 515450141 740757171 370824247 105716787 716705753 775484914 188218385 34964460 840718869 714685438 64564868 41620858 43907599 352997154 918944190 702674258 860504111 454519800 216333701 259661823 308021161 617747970 603058739 842085130 412615120 582016702 2674107 241370513 313153885 375287610 585039978 507692680 427276972 219890651 588713787 783504499 66416907 299141486 920206955 166797804 935530954 214833515 785307586 461074412 571395297 322265040 353260377 812087558 866470605 810452547 898805424 447330476 671647991 947877907 531957038 503127546 879429286 354979203 488327898 273644862 454139914 301826970 207482757 100817787 170682986 533089004 699470487 393216925 654251758 30128198 415268246 988325621 487091573 347331447 926044623 846634027 171353880 312758150 679087176 873133034 685444483 591898000 686182043 828682903 516367313 707590215 210942154 457458111 425734714 846531386 722598600 244794141 523240925 15008798 398341509 39179184 661928999 572214674 185490478 571969420 771286029 714700397 507970822 390513945 326657630 276435647 179812282 4188852 921957222 644558554 796838311 403778281 888898659 330730182 199038791 467462810 712323974 2986696 96084386 531332724 583204119 429259305 421473274 313291719 454152869 923008288 929541359 42601745 721260956 939054950 756764329 595208846 296810870 449615899 832588528 641141225 848195560 455245435 545407366 972360890 588876858 237560419 494563509 415749012 157408623 959978932 50826900 716399393 212798910 412448531 913892519 83789950 732081427 850308636 967421365 345444928 114383148 364050687 459594801 785979165 281341948 736924767 731362448 72166137 564479663 700898391 500286964 110879468 23863171 824315857 571644952 973947440 634436367 127005150 464793873 851329774 677861484 781923025 890726981 771647345 657223901 55124775 451474462 392071723 678988026 590506727 300726413 85882283 644354308 601685534 895031152 287685187 427081788 258432945 781353196 586151976 149616318 793908841 313630551 485635594 212512151 242210423 696651046 185803909 345691770 263589008 873721398 651638835 27772426 833043580 56110386 312120759 930422615 279751448 143783946 67330577 815408058 377065878 309372976 451038842 20167374 715241041 541305954 941473850 313971252 556506274 390195144 573579664 846888097 430408566 727863114 737887086 328734423 741539266 278887886 110476858 919957817 514755017 73551448 390913626 348171142 573585504 706536063 896958612 956030689 19234443 924194865 325980112 339831895 93031524 559175815 401985819 25920137 144957561 741553065 531734776 394532807 561843806 64876089 356824085 374487256 672651734 170595661 73659516 110391582 579124630 193372971 813114452 504642422 352583429 860573915 676147223 659188666 15971079 491230367 724615228 801923036 607193041 380331990 539151187 144272508 966845781 861362156 957309753 811020609 386215920 585356960 277889557 418765034 350732291 706294808 982471845 699669608 236157528 526608450 854913660 446809617 982182226 934381375 370730766 838908496 381104902 152510736 534061700 550196999 98459405 687522781 251035023 470204297 848307073 486729193 279242395 118742701 222847504 636323970 497383470 59319197 729841891 105626151 837855708 272317779 331505611 744376366 588793950 822169752 865940992 430358063 661622995 637262425 147415990 28550845 29392868 108744916 471758533 879214469 833141389 725583762 221172662 376870189 281646200 583191080 173778722 46694618 810027627 250943008 381653374 157595809 415011357 721375878 114021379 818075488 636680757 69838178 143374452 282697756 963620376 607431191 946586914 837822937 11978921 637048601 726988446 507775449 528023489 407648757 955923748 515027272 534640537 600721971 454057627 996352110 804376330 504873804 736386846 983124703 653428413 713337108 509253477 554196760 334450210 715424515 876791773 640898315 669757280 49129053 550168738 564501465 944547574 589047062 359493154 45242488 345319607 624498599 511211135 573286233 689585754 14065655 476907195 208571165 862132223 25748611 710390327 708153315 992807389 33332246 34252587 800071461 606818618 774127639 69043972 146564627 108715762 482759165 10460891 985451859 340858173 51905253 694631615 746944324 18879454 968786169 98237072 709309304 430607069 334075542 352574758 693380365 753806933 578365460 521053046 156603747 418750654 541022021 429467738 89400298 479838407 823100307 817062133 388536699 227278099 168821869 681575628 630054248 462287566 576826126 953259448 668478379 146480083 690311976 512159618 838275853 941779444 85025479 8296501 838337150 961101175 744921382 348290625 100715591 534156875 139039829 322820703 40908391 302660536 261992794 333355484 969356687 280883042 305465610 312501556 668965521 900510930 824745384 640219638 267376531 428709777 208368871 70456992 712019588 437516200 109673499 575373858 720367758 891442789 660938728 724479002 783702160 697454183 822418590 672676095 831430240 671761143 936140126 449635183 625385782 582145079 549317877 231924309 169036192 348833248 731690239 63843431 520870209 858683508 814011037 296519526 854025664 26872248 62360052 400723054 153171049 720100417 970714767 651689839 512316748 859376521 634225328 765924391 94047918 56032884 582482682 192983895 996281406 680535350 581616783 454596755 230158632 505247544 103692410 247556211 851003791 73211464 265019942 11092242 165076574 725321381 762524840 393052092 752234772 835730949 737261221 406589026 452892985 69062510 477265149 616315974 418552235 824313755 952043148 655756559 156177070 126166619 675298704 809032313 676185282 96340289 743281073 856117774 969018431 755544620 678492813 561875747 349410878 624341120 38737529 140270771 292356847 555969716 611058817 777487237 446683233 240159048 956151943 634654771 292699260 719445625 114235472 13995441 169698030 139295053 194527945 794722965 993431287 413451881 143210767 969211785 399880041 180518871 314679767 38127292 127352098 193569428 442488594 122698845 54089555 195156643 265822201 915776692 280502343 805927935 696221524 405150164 466364642 717710925 332043230 801985384 44788523 33100010 358012682 297007803 242090929 647893999 511097349 856155927 645127978 753234194 439453166 591034305 387395487 443936437 94205091 241717226 534177743 719970662 326477769 779224466 489295144 378674658 257822912 55775563 859022814 138721029 995036131 167261205 291131937 524431420 851426193 558127334 834447772 254356585 517713372 942307887 462330107 60904361 562528842 860830333 902168602 329739321 242381755 662913155 314548668 578868609 301055873 845785749 677206010 963136673 48380547 481978357 176348515 928102339 757146950 564003889 281845480 784010001 641307626 363789902 969622694 338328354 560452717 292101211 267666676 383897551 460896251 985301925 517471350 21888561 804856567 848194983 889023566 931383341 146697771 660045312 956738923 525876765 136614035 888123142 315583579 752182485 30247142 173850320 745450775 987419462 807055611 762476105 79448920 159816224 512522783 847365857 849923161 218402837 672672303 45244237 543857677 184958369 199220317 830433384 484641120 642278076 815033052 483702534 282852465 825772034 211963993 678734169 408556367 529660789 68367563 35483885 398396221 909617502 528927563 673394253 857071907 382412068 128757561 7354468 939436838 905609934 412033984 156605809 261769800 541205763 536320979 337776711 957759588 217605365 932251231 946893275 381712968 830464219 95315751 570059597 332017711 956856826 839247018 264054286 313977603 552136449 616259402 84751613 389468387 173477559 286828366 48523700 618394901 350332127 830924412 778826095 717934683 431812501 708997180 862912044 905145389 10014972 953790606 372376000 302058410 76335087 486514826 358375955 138457511 563036543 336058396 589014714 626551097 900202447 214119596 482049146 370935932 7920528 418816675 572820666 879068874 185613144 613417880 234868125 419987241 92820355 69800 715246872 986736127 305492319 998239647 79739129 50877267 738473273 128959047 655090209 245136052 79116898 432848135 420779459 215685201 168850041 529749250 883716028 288612012 622023286 799530769 753358473 956742534 438642640 488174369 146468676 832199307 472905978 107786905 723568665 516061647 45921335 73864299 612087641 759502767 833250419 582482971 15519065 924385931 399025084 503515547 812749502 321871027 860106755 46946437 646393965 336508999 592693775 575467748 349938654 360131218 82965089 481468153 629814069 893913377 92864371 21521407 51233126 58293502 832958423 751074842 509425031 424507421 742278341 807050362 694877466 727593876 635447405 346854279 640144756 633771108 754728527 424077775 618174206 181307000 513959593 623793210 224136560 171719969 557359723 29870521 401676073 640818569 154935307 847704655 237353737 278636765 808195434 4020712 475595020 32955507 486168512 556092522 769332703 185023480 365741091 192647093 674456485 463762259 664655534 612324592 738210559 846935853 355759456 883581565 389230829 326552224 969756814 979827082 125504764 712807443 565369741 978961008 284805292 629786529 356009072 713362066 61331450 216602844 344915145 29485090 823629716 157407318 843384078 636671792 157382336 952440030 929289708 639338119 521017325 140424065 671042311 413755916 194915206 210579332 357020385 944674764 741055914 352120837 382337338 12944337 690270946 137038059 780943249 723749721 78176388 570389366 39362104 240777871 129903031 408243705 88969631 450263284 157858717 636561476 745783998 257914687 130912665 940357466 797729711 50684975 454613188 604321112 552562386 95543528 917744451 448432732 902472963 132113463 482061438 84230649 567804746 405628920 645764430 389875181 695116612 961642172 730571887 121030757 508464241 755943859 459231049 305965143 783241064 618776992 638861376 435342305 236091481 950589409 303944063 444075996 782473562 978923718 887860333 561902318 393347592 513426154 655971812 300678084 668391979 16665352 565517809 621420620 285748245 411257736 382015510 354165730 261555337 911978242 988310151 250902967 217092481 205778750 159610278 649214601 604146236 725538457 468157235 528111164 531639252 834554648 591699201 181598047 256984809 147571586 63183831 474024739 897370 723564351 64186341 360721842 8824519 509470249 810018904 396542959 914122962 495756138 515453493 260350884 298414608 328798948 802509615 483708597 234404110 848191872 946344166 392563510 200546126 36123349 367996034 84114343 748940165 267062046 839889712 666850675 369870525 905082170 94901804 38940758 351935166 47554359 48921091 999239777 543690390 683690623 680440330 487721330 422595970 523615472 459577686 757999265 164471311 390497179 467047894 311364899 259849305 653492609 738908545 403543393 314478890 294693163 631691983 678208253 92335314 83596921 564067925 755528798 915721390 910930765 733975247 91241789 639280512 612426740 396046814 123523022 618385192 910546072 263376677 731546195 786562257 432699556 646673079 407845475 358211422 353674122 567479586 555304673 16612838 129785179 327950887 27873068 56651616 702374251 72931926 213149591 374637124 128367708 45540485 720380936 399523384 353737917 505860267 947797898 362329000 907859003 599311024 459834080 654727153 766156932 447923595 682103473 714638971 788149293 604934654 73277165 274922426 645788595 458768195 668183206 794959894 239128921 916338739 921976618 332439121 921344215 959348898 133461390 635895574 666551798 438230917 252334872 173868504 220708818 907410034 759327116 728478430 121502887 503786972 929991718 179801462 580625087 665244329 959847853 160984869 689683487 828454590 537593398 417821260 469444525 793452984 440071373 125285648 179918064 918567398 583658262 879624357 844844257 922163245 828968394 328202820 545882926 41613696 352507737 188249939 571587651 791498761 492487263 833894519 984359603 992605395 982406855 870084707 376076591 700305262 360305688 357079037 901663184 327801309 241684150 417686016 349836275 160638357 271850864 25116586 101877812 496767183 351696960 80579183 571535376 281698720 726418 408342414 445409844 482696952 986679068 745533008 479597340 107492850 600515281 291975032 749148209 200995322 530584421 303726071 631323712 620312969 249494938 860552732 317194469 204060679 439947126 126265126 691112336 262798826 378707203 388180729 106743318 290287988 798494303 435879180 832760710 862287630 33004891 751815610 646224038 869704053 152836762 476658977 408658645 768432500 2916204 470298825 769407644 18120765 953852651 567389271 265872656 530041245 171847104 446589102 678821226 333268758 671240349 138049345 831438848 511660275 221759674 649866932 667483056 594137516 990767962 917214889 899623155 408281697 681884015 495684413 67000723 96511970 233055677 231285258 954817918 537241745 879617098 479928147 447593424 634483492 865912614 566368280 773318191 763259584 220966826 127575753 537679487 982642559 957545368 425626155 59213301 107990904 110783360 493726512 585537702 327738189 806318175 246106382 89101558 911013098 612738383 207700668 855339200 558074502 604127242 228130251 192835286 770965808 669239132 648834300 346570663 256813699 64536503 79045999 371331346 869713332 19998874 123313543 482577141 324048638 699841663 214209788 523510581 901695237 954573417 908810581 114136145 655867882 681321085 510951231 994135645 998259318 814875814 892770754 398070492 670945907 136470624 128355704 525199759 41819789 353398822 128111587 301104198 370899626 197959692 609192710 540240763 44361388 583942741 84315381 850046400 612728774 428037418 263359526 373549695 310301772 343070068 778234989 39223515 962670810 559174970 283966242 284929583 198440083 97445819 962288368 404394263 989803137 769456857 880700248 902533057 189103214 708704136 20991234 53814162 724167266 720829606 953132355 389286896 886429263 200702714 438837469 945536941 88249311 869174999 966790514 613264620 504790603 387149442 22883875 111147602 720158018 538253958 950423061 171174568 338049525 695190106 227103290 477942959 649178532 636608256 162891801 779421776 395638736 72352332 530531900 632092620 157884100 100915361 755564698 625379262 957974962 655279383 138220240 341008592 302943909 515995496 210537750 980861579 38984979 931368198 625486500 220127394 268597892 758068825 893733789 643918873 964382753 484302432 747121711 208492274 945540770 770052255 595667437 285358646 371499310 192366776 930853159 793158539 794420803 690424328 457053359 817294415 454243549 999428112 701680310 423515336 6577732 51130110 620472620 521827271 998884769 298544815 777674441 531054514 256889999 406007661 911615354 898348102 91280849 326832324 771271685 504300232 49502314 678541604 408866095 485243670 917035999 211105211 990382239 397247767 686998386 502740262 746846120 44484083 134758406 421525663 612001101 924448626 868407280 962735011 267218971 29194631 481891821 647498751 846158121 785283539 168732382 149187154 832964331 343077373 623362055 118218188 857757890 903638745 204608144 874225399 777749254 878387053 108714318 268577607 994208541 202708374 823451629 134515949 799850935 901245862 490748450 954963700 40289035 841212313 423953535 881124380 616546143 437662544 458949388 483339965 472127179 298748327 757832510 491479617 971271428 423145755 383916683 539374178 534801032 99728346 477343084 551049248 991375868 539260319 212251328 665861942 827733758 108580368 660103492 754552655 316272559 208997408 692031622 663985205 805902051 272610334 376833348 409739487 456256699 494894024 779446717 127179494 51991152 965167965 722862187 721928449 170846345 211547195 287393818 176611202 113868531 320048149 216426860 332302717 228723307 499112567 592645650 981518614 916843781 838759199 638720165 446970959 308355242 79934155 245195322 618160845 904157982 278953722 440088659 412731895 30032043 558260623 915592877 230167083 645392932 572451236 973825978 633555070 917791767 379484692 122228205 442108922 132293513 496706586 477186886 365973536 72839511 320995436 551984130 263254771 843194893 944334414 511417134 468084246 34688326 411804447 863476657 466683115 456761882 939105291 271517692 270956463 197626410 533700706 804463998 392942575 340870419 231670275 956080428 791978726 664788136 173206615 310845779 83161539 39979554 967622010 915166212 834090714 910536467 739181111 657831809 549850664 425924659 248124307 648028970 704786845 985672536 733555591 952112263 550321435 361999636 472928889 368034180 706905930 64881137 861911401 93082875 264352198 819570035 486877234 982460292 383199556 121911539 286828283 809903680 482499650 826251928 641863765 277147958 429244836 506901452 974460358 586341823 790264200 815136134 115635754 303906641 479228008 993977233 388411929 365414638 517525982 732590073 724932892 124671882 391583080 935004356 78703677 291452383 853761773 512452617 544481054 695678425 608841371 936587091 807225553 908544152 976773216 708096658 684141260 735613485 587168050 676387277 715394961 435923415 92163084 451558348 586012052 291702467 700620541 612018295 791871928 775372186 653267539 158803777 887678728 722572816 756366513 674339757 139307712 668088605 103499757 110775932 675898765 703282179 471972204 941424376 553959270 766938898 464892599 139591036 923227073 517949808 261953747 146174635 356909784 280156681 349843069 919403848 667296437 103698983 254303013 446973723 867282670 815596351 665601808 442841928 550832233 479939280 356916314 876269375 769185193 947792177 41244684 399263087 130071817 257961869 789682976 784339620 151330843 372425592 590689845 760427394 509574413 556514688 992474019 365699870 223274478 666459506 69604547 459092822 688524116 978244908 750361315 664531353 619175052 315434394 879161209 756249684 210089616 222896579 421602531 158020119 267735008 608943297 178431717 399314453 495494289 245378819 107837480 481513671 275623994 474442027 342848373 186332295 629109809 375550580 419168111 473443915 301538051 759021972 719530708 174136729 18090065 293189637 679960677 230708226 573028649 1399458 942597900 757612323 88465645 155488565 213875068 470696474 264597061 90454924 140833918 331876748 527388058 675402367 839720657 981990660 73476728 732450905 227518348 342452309 178435209 743170739 321681934 821245233 12277352 361418227 159526528 852717774 555282727 286577077 359902 392845790 969397063 679153887 71406292 68872856 230393885 78715795 601470837 455677047 733121560 219908594 184161986 380753582 577511155 980537607 376124898 726739993 261873198 176104913 476718651 341151984 627512863 583946201 633969844 229157816 199706095 216153332 840639184 254050669 388497621 51506604 380900016 146354811 141534652 743150400 264886022 822357638 768185312 5797865 846326562 539277078 574834159 778744664 684786816 438882129 14798787 778457033 432890003 932006910 759887862 660768862 141011341 881195666 859422060 75960112 961138847 171618011 501069769 654626259 935145960 422236726 159085206 897246444 726101488 816430991 71415086 46444493 159567430 864665191 32109153 826952632 286717431 557293027 601249346 77314928 242416834 945738581 68822046 10318223 575364772 168960450 722067196 936306479 990759073 10688111 877329261 907701028 484335141 561263336 30103685 682834432 550659423 822689258 89261360 512260098 555135768 156049285 982122666 640371377 826216869 89911382 707759854 664057748 741333319 440863073 682944573 427890304 945845827 260890393 407833892 467389190 243137194 71623706 701444479 953712505 850518234 101440799 334219984 791748745 904687831 698769389 363344294 625031707 544495239 578497010 903024845 434481310 532077576 753169198 864303921 372981563 776669858 963647668 570454789 58610657 978789971 588593030 304386900 399898726 911115064 521314494 409579520 323737646 592421800 355206422 577261933 69773931 131815880 822008450 952059921 324470200 8097503 956584662 577725820 402120094 622833609 112324857 849189990 999678170 63526086 254409882 209118312 613602218 889921759 702671617 14098707 852330152 210108441 638565676 766832871 905870877 117139847 125411251 470835598 14567026 836884465 296603377 473370771 230547723 848088205 95038809 631607450 540596211 725002312 814189775 429697089 973024254 745240861 784314287 132230613 468937168 72265883 420572124 133925677 863882322 96732207 13133140 204233230 331205279 13697430 63183431 991105749 735804875 79447692 506468029 598285966 763029921 143854437 136941579 13223761 328611029 369217288 395709099 409966921 469603547 844345170 127870461 6187311 508103509 842318784 356503417 307541528 786850329 506734081 945128919 532449459 961234463 75826175 636326709 48123893 565119884 992852701 845082594 235670160 141061757 175311179 888329573 312813046 543523532 841716370 121886207 337300094 540349909 755619376 346786472 134600150 725866970 78069318 235033418 607855004 419205593 127237295 614258622 891179207 8674264 92759509 929233234 282650645 157356516 665959031 884754922 604676838 729856494 271479512 638738070 341130250 15926228 50678122 616674882 946325737 988013677 945331385 460452552 348422928 679407665 229042818 689543610 605651092 389256026 130675437 27947014 2529175 658988868 77101749 469250533 32596500 436262234 724987806 625799048 269294714 389759948 602585084 636100514 37975187 493482252 487700640 349354744 524920970 440382390 511870671 577982069 207180925 927729254 726805966 691766160 859412844 651354776 294499705 224003905 894153598 64998462 428502684 615740202 803577289 671588704 195779303 251218717 737060553 105921827 74775979 545269244 832261732 787690263 694112990 134192321 269221862 362230104 210948914 651822253 497577659 50724163 192258806 178673128 31225404 226990185 168714266 23947597 741470195 227847248 874970411 355132530 799734108 611863844 346304335 725531938 95746961 369055432 855195809 645662674 911025687 775538146 162325517 751123519 254956889 885978117 479170051 310098757 483463838 503878161 408812036 540153920 463170752 5054536 404189537 839999647 68090017 333217361 535427523 621919195 557814000 726338010 558499322 931403104 354966843 456484689 680245203 244668455 575503378 676087446 14823242 919230427 988858107 344175244 928756712 814887240 813946701 749144935 282907570 211777991 832636030 990423145 185495813 91697933 170076548 186353886 689399414 170339134 549377721 985227478 372089423 747660572 161763207 981249 184715122 518577083 175920520 531899433 928229450 541372414 853908318 724515721 135520116 973692774 332348596 195054012 916703780 535120513 22209740 607959021 103995881 307342426 800386853 281165370 711132942 778029742 37623624 581590292 890749205 659175922 103554249 409569802 348688791 68210859 947249405 180856581 88935557 666207877 654995819 740594580 985512863 737586671 461507274 882038180 25578415 4451089 459748692 369360908 814170771 904481620 968649518 265945015 848740498 346149270 569226662 632766684 620479037 215797141 668885600 758548997 399814640 660560596 904891746 242996325 88433996 867442390 417349134 789474858 913405731 807912739 126911853 563099859 467044210 99759600 162282161 939344304 800680987 508854381 769025728 618077703 922648487 241833349 420005431 231611432 149046414 136241016 931292786 608094929 719917989 838613739 619955651 96270876 917577387 133082011 72573892 927851854 290083793 917294680 247426810 719466280 151622463 357408689 510403759 167939175 232441328 852358894 342014317 229198114 45999991 722841036 37715303 754695052 856436531 761191976 226888215 839061485 976005363 979341159 273011861 339290812 105096701 850138352 337002139 568372160 931962555 334240866 359509884 243418974 253478620 352335292 125806630 885475363 588747601 711401048 492607488 995233416 631190671 972855720 612018708 267977934 892362332 449425723 431318662 59866395 606831923 382657867 635025763 33338896 184269031 404356721 571797492 569708465 650167672 825989009 106880035 102209545 358052514 145054374 796112006 400045241 694401874 515556465 592180748 898295444 397946555 633790179 181461799 23699055 519307250 971016322 786377348 287564587 26310508 243942160 684003433 215197978 729610866 460141958 572308782 322866101 507614393 331994601 653045197 808793328 460957766 425526354 386986478 305075925 421886068 682953856 10980801 709411611 686538910 339067395 484717809 221226874 392980120 909655484 161578754 34398008 108312608 130246798 724861280 182751557 236664847 334055451 997887732 94384871 306255963 35720806 767780168 945483763 494221294 6778828 241754545 247684631 323659144 372428034 362235309 791203192 509375979 748563147 374237214 865362787 759984155 820267412 845338007 554906685 220982234 394968921 526945303 982794679 615964472 125926397 816307968 641792677 631451802 666312575 80379489 667023649 142483994 721966118 104355719 519818671 274729028 932103760 837441614 953195268 892394089 229121550 965845313 195015376 28246711 677466712 592143839 784055889 340415529 337940272 982971085 402844418 142198655 276323980 741530777 579219353 989023395 473678813 475311572 996983097 946575210 232286635 751031238 489184249 201886799 948841311 312770777 786517845 274330012 625310924 331753461 596302555 64898795 670087002 234995203 529525177 871738532 452710100 773051529 278259896 905115794 822489674 22504842 274434884 370286033 298871334 132913434 76417837 995418991 190808753 783963845 86314511 107811874 552288099 375163523 35851507 350803339 31988251 411496372 74304134 531981510 339331278 520869429 14022057 178711231 306649483 247956973 737083540 221011113 196473152 501344480 809383510 660233389 860209700 158321930 265536273 412359962 682719020 50138565 561249710 457824524 209068428 948895585 429033629 173852932 675480147 839634356 735123422 273567209 256506753 224066668 825102909 398978058 958108612 623683975 995530595 125758439 126354572 689718574 213021244 924668608 266557450 171989897 435798321 87819480 576320007 417483725 95845824 159633146 104235700 658453473 51595014 92723994 981821619 366511619 85415696 346580749 438399694 568001419 764337306 334319152 195732286 822382206 487573578 726277327 869520890 289600265 626175342 586131155 118933211 111968333 49411200 872369163 835937434 680853495 286937318 838531885 592546334 631018131 231557700 486660941 670433401 830724215 903627406 142301818 749537287 874690472 553215343 310003065 276181538 307543961 618928332 459404749 864021562 906913772 990874061 141179714 336607053 670154004 688508431 356444435 620540143 854691125 586253599 513306085 7638069 30629749 691643409 247351020 350631954 676750232 884552637 454153597 791608471 418542035 209476970 603849085 12407033 891177572 369724609 463388514 33412167 952327155 735046082 772041133 85164444 631686953 98156691 981124267 814684421 529106499 813940900 806061093 393350590 703410972 175849644 617994703 753936402 17773474 721446404 985231078 916902231 641189850 372601470 693745410 916566025 325103307 561101801 3306629 461558621 32497941 520257800 106747183 31482245 393940713 216616812 336163990 318591200 377877334 891544949 278545465 386066351 537169104 618526035 538068738 556040170 630181893 842497022 66165657 753175911 310642989 819038284 718364196 703189614 308495183 448771710 624798594 869632713 834735964 882662229 487429726 884962914 768078201 133471284 831836774 905448103 446371950 257208744 807982387 433368727 799230014 42575479 704428653 926782652 743875910 700987760 657424813 934560988 917158142 993707461 398553562 695509543 730870420 579620664 521310103 668450893 37885393 706934051 866764924 263758713 24964020 625111910 375651599 801947186 331129748 713094693 450151102 405891687 641533813 894496085 547109710 392044293 263177591 908514912 201139074 84269285 895823837 203922655 858523676 704872327 867949977 32542900 805629525 906803033 821035458 433005714 355727247 501795776 317409375 262702968 573787125 519710868 372437592 60744472 27110175 583690402 448438422 463570572 745146095 498108648 79322558 744830210 599319231 348455503 15706136 227647994 805943555 802082043 974809489 193173031 886374893 321604741 884546860 743308296 331670472 208279898 574397122 766337435 152252356 458378571 89825861 505709138 603017871 684386011 129731094 649849693 614233165 781115188 364840043 549903536 551238967 550007407 295663924 667570824 934963535 413254010 250278040 302907618 90818931 252374476 746991685 766765577 64716920 6988947 946942485 441133863 721033542 423114077 893610838 186171056 919012420 916578364 531178759 474441340 870274316 406003405 981060099 816844802 641420965 370926324 821272086 798072966 435720152 970128677 613533369 860870707 927661319 849929043 867263222 934671346 655125570 553119782 690694927 292934566 16376068 714179281 984396184 855974484 137155246 679106634 17852458 890627672 827367733 386359632 155121566 449557213 243945794 859161916 331507388 672339601 63466855 412729551 895514664 354326253 319558922 446730736 970269394 943620834 438742578 371699145 215027223 365520254 497548934 213709796 678527280 866769763 736950826 87037677 835084499 565493160 440153542 887941617 474170245 588598718 805132634 130958100 793712270 879331211 826546463 786527597 67888802 662902759 358443055 867332133 929830635 474027407 861111925 53158464 306830695 386075744 765761380 231880617 694086164 685641724 123694598 873879489 219605259 551661761 512547777 121725207 837963337 362941687 121352569 113902377 642682529 538000768 424911320 734609146 468190886 132187202 820621867 199046735 269627938 873568892 985252715 248698121 483964897 779571568 61952636 38704491 359771697 189685941 194783968 364744802 796365370 739092365 603004972 636342838 825017168 765023289 599109066 469685728 625545754 853628427 662200097 232955467 414643273 458793649 254812117 935878804 160480804 586496450 750851132 526307009 253993095 773868816 139402385 954050125 687078096 622178908 835770244 690121113 420485254 603226489 974991920 551976735 158638926 826188850 480987047 773420835 630605048 157736922 112854776 469182095 467873207 494375174 785025915 587944866 841774783 317747976 338859066 307709255 281916084 7267549 826382215 597852451 708886714 764771417 597919795 116216934 82448387 564746271 904123403 985251204 390377313 514413356 365292687 424954341 224092594 861222942 213138851 370126931 363221615 977791550 2513070 364156798 21268394 634715845 122379671 907357454 152860410 877810827 276680263 974281355 77238768 879187891 174496152 432118304 904730091 584163401 413011552 569746365 326490442 119332407 919964680 897170070 594301898 554776617 213102222 165119382 362669526 226414467 521679877 747585173 639009302 981592930 141905276 151200829 728114635 86299137 746411451 293865592 504915800 97433840 548714713 626207715 326262982 258070322 491144806 324621411 832304219 220449539 579948462 271851668 287659698 317921879 263758737 481577454 586068293 191673290 195664802 446475018 822611203 713119757 332720630 888437980 751118387 578614386 792231526 634317498 812239236 273440165 387633712 439847921 616254211 582923058 37454530 438754110 8585606 999989895 448402903 579810898 557263025 892963152 296129014 852563889 336703529 618537310 474987516 911042844 389361135 301045557 202192317 948544794 708363569 483722523 483192752 517996864 485726943 201645224 814762161 177056629 95573682 208406030 372102647 426724258 326015326 301415024 707010612 78687596 409402849 697007990 420430296 722257348 126126049 295714177 722473972 977044245 546002070 355617910 694642587 524214066 492642015 212503483 674756957 660594856 295613168 816705865 433806995 992651339 975153550 851611035 731676962 953937503 753752713 629920165 539353627 828258655 618404822 361529281 215797789 562687537 130306571 885003302 809195487 993317562 47554723 877693002 579648519 292361750 608837848 498016976 370899389 744202596 700213846 610857652 377362560 60129740 382206835 821138665 655991509 209778914 992067389 970866102 880205729 299242094 856783101 735692576 908315520 721054893 919809418 697421860 479767495 568980014 772651682 725064464 4261373 187684350 167130517 13517737 581179907 31743199 832869395 200541239 914669101 788000998 415457937 522453625 61498930 562266870 801498444 541446593 740565432 336782833 537654698 273017203 602369347 442032669 771082666 746902045 280022487 20974407 202319891 821445512 846359712 346522483 747252236 935840021 20363596 31072073 742315913 890260288 438435096 263360933 32604320 298826762 568101974 182968968 8412065 458248535 342872237 415773530 149016214 245050050 959575212 313267241 40705099 32244459 307024975 911795330 539333480 706940756 467414906 548281105 38044064 9673309 512742254 373272615 296291116 92973904 193615030 781850956 859637957 703870248 961345762 51243400 597689292 139304771 987085395 664475561 272778816 583128452 697482202 8754894 93351423 861666001 408385704 116807298 256160886 950054388 578866712 461094007 393957006 241323425 815084435 614161437 482114412 975103516 224177889 657013506 628514321 557125143 15261052 570169633 777918739 660240955 440613627 750677114 59611380 688421699 946985535 926980222 660610024 399642643 445574574 519010719 228386865 352988710 647624129 627816510 317381163 978675691 258007059 537246909 667578948 852007729 216237886 855012511 235928989 664163860 122195513 738067333 51084900 504496612 754111788 470105396 136768856 248724457 815298183 782359593 939271026 341608931 971062750 790001408 161783065 110874385 428633864 910453369 3953873 135307807 438631147 24893916 901029113 409575142 929560242 434767425 796773168 289739166 911397835 825772307 273286333 305951943 761718515 255821776 764572156 438231352 237059422 899216673 560710415 901929130 176334310 283526626 916073434 164087662 171108241 875390244 247554261 918844426 668205763 566744400 970599785 74877642 834635045 66058820 140591135 948302053 734578961 498634412 487659768 275373333 896964189 423337227 82139313 107950648 263868552 196884671 512797602 994256125 471561977 299396047 724971675 857531701 664291931 621285394 532666437 366437185 784413574 261858938 645406836 796465849 754939758 765928059 146648262 152818558 798714599 453864136 973404227 741167061 542425380 848267993 579523479 295316533 301378201 726102183 67730841 680757298 201129180 403634893 745954939 509516228 393859077 919853881 939142109 839823783 740735588 170100175 689751443 373971732 889999040 828714492 289452614 734818509 201573079 480493345 15031786 440611712 498320233 523014105 696247714 102075463 43058480 877885167 160164959 474597189 157894082 799018947 587091715 241938823 240224167 851356933 168540617 270393957 823457108 362959644 468003140 489664376 473455559 37437923 434079435 403658485 148188367 488740176 881344150 595261098 687417583 461781606 916463786 281970335 300037395 978249181 881222527 248225961 729485538 763497966 444506545 365929906 94204962 228266932 500156751 642047217 800128793 134070575 878647980 432094162 887229807 680961163 321990302 275550920 416002781 192368124 528638563 949951685 37624872 458553089 887749400 819179192 254199226 358698593 542911700 88141281 569897214 886707593 280816807 281797577 501155982 20027644 772249575 914294692 963341232 738869299 518604272 395805587 423459346 35271176 57588897 656495483 671787068 372474958 524305105 345344846 956852072 668441356 969160301 998677432 704061754 678392932 399322749 796148792 361936067 511443471 800541796 953887678 57507359 112154502 438630729 494209376 916891208 471168127 847460884 557310091 184970315 909089333 546133743 276149995 131894350 283099162 775593801 124471194 788931286 870534323 508433757 914057818 896796875 603997307 896232315 849265733 463538064 488688974 424990894 576784027 314843942 30823922 686254261 610481282 986238273 265106815 524575120 187100680 27647385 365234692 380086114 102071006 374092894 915128416 28731590 228252436 198576270 391534996 175089932 279982287 796495614 787114097 288248692 917847683 699515549 817835339 500492586 265825266 278372272 872403599 633056827 539424870 438934819 439217325 494193044 844372600 839282004 809924975 286295338 342583912 320550389 630854482 829545412 482856994 574529784 164026342 910640292 633608892 26051440 19531259 160074748 976784556 495326046 284625801 540635298 6628752 432694448 109843077 273418137 864947710 26828063 703147904 116317180 75154727 800708353 992867938 874221551 984619009 314313939 81316342 986028203 160876095 732328485 827386298 476606878 592828578 167258904 244845691 443008008 442422874 229864358 326186687 209884491 931589436 615640609 638266468 281397625 657739641 408991687 766186874 669778652 561478516 556896522 207840517 779692079 576292546 878253999 484310620 207700760 529233136 187492494 679718275 196705975 274720808 271675806 281659689 315928880 230559558 797154008 579766909 783805313 692159005 110261348 995823832 672779976 773840380 193189247 308815298 267577029 896811545 380683625 448129306 444802168 479204200 539110408 260254847 682930775 640715602 656322579 667661139 744405922 809703374 236547545 48193971 685293404 701037759 734100254 444124544 669564690 661353178 287113722 952928864 927380674 512377975 917061045 757416356 189078229 15516676 759543548 67943094 501796418 995290599 364010699 362661862 871061248 725218187 265794438 549519487 144978076 877382681 773516567 822684494 924289835 578851140 387477091 926616798 976134059 228408784 863011487 934218057 231684693 650612523 368191051 439819936 846152091 515842730 890183132 20725450 425907214 571598832 753279302 67753432 143565634 340424985 607970159 409952188 660245025 78542264 760573248 459348762 800161968 388753448 789877277 387448782 85637886 771871840 730047635 911073443 935777143 344709443 452209582 309818637 111345484 630209009 129843139 755947656 397170421 430256600 305420353 798014762 732848794 969572331 409255531 353132778 636323668 512403297 1423713 332907395 66299577 131652012 124258230 488947929 516772924 667523129 959864762 572484535 671451787 497407963 771347186 270650893 827847721 214148973 246406269 227065844 658984275 2832999 198968695 71007341 849500128 264258327 136865694 769230478 431425632 875383298 780782720 447499807 673954410 300851220 167301167 351941839 807142744 813302751 95994362 847877746 773392730 141419108 609974558 44875845 349235812 874673006 65926738 795644046 479865445 535453038 650925868 793827901 794476469 796873090 324464664 514457140 302219905 114625652 546224473 899082259 188431353 631647938 325474382 636856299 657187883 293380447 895348475 518561420 853585317 341946202 764086032 67685134 627266749 363727308 69301041 382674318 520340491 288395248 731017849 662570562 785149765 955862667 639597981 962169357 652732130 297034565 692455939 397141310 166143016 961133087 501593831 138173338 249838084 808716413 25425683 175429689 346831052 405166932 615223420 628465016 952893119 236114997 530951490 255577537 804739262 766611296 594635312 588569550 816864897 632200667 583269525 934429027 18838594 221069808 744754965 55946491 36033703 989790524 411780222 188818884 553624087 481613762 921243047 784098328 24552285 972707211 941435219 96995634 972178868 171485020 205181589 467655166 728212281 220846831 607262697 808491400 132153947 153850563 153843706 945378972 364732212 693964181 550900218 321550565 831959885 290721585 458566239 889944794 216220335 333881679 832506207 420409520 936411672 840817806 491876010 371073508 61778193 949478018 516034262 787484208 380732672 884894884 813733833 197292813 254975022 330974029 568388536 443156530 318163607 213235827 633954212 437891714 872253235 296559933 711451930 474192539 362133390 936097283 739120997 466095149 211495046 683855633 451804358 951880125 464347906 273614928 406054859 355162936 103855017 722565241 868599499 693946331 507435004 263065177 229283546 572409983 314215800 394513797 395457231 480524179 881333809 681776449 94175382 17820469 286185737 735231247 361012520 229073807 157693247 308536952 827639198 719814766 997175206 595532295 747043677 228054600 876197049 812209235 456101331 533238689 736140034 184605019 372587662 506196678 991017445 507570980 662718546 829180484 220780864 692519583 658648830 908481401 186395447 923720651 701126584 401588234 838194609 602316990 678337444 802525489 414668011 370433785 382893274 701887695 220474255 464890239 923650342 24164743 41706999 700317942 631538371 446619965 54163026 857603605 975489893 496580873 784727157 123657630 85833950 487672504 750260377 469595479 410212764 222588472 475022430 931194763 558835309 834582299 769891131 948181715 941118703 374359955 924568171 754159331 468769116 839333205 222578668 750396151 356776537 88220711 374622130 520136302 322477904 516948424 814398824 547461845 870829621 583916026 108985841 501008817 734997647 507888113 136005080 260574998 722976196 715430089 922745549 806126921 965830229 96781657 328126961 513958659 882610212 799996382 613140063 20084023 962159804 927044172 746569901 748362550 677020036 203561126 753041875 407036862 494226140 490834158 39245895 668091504 466889253 907516437 298758218 226356130 964121704 824099277 140778742 842597264 967008701 175220528 180590728 565357955 934456785 966057143 343833842 6533929 804777309 829517815 363643935 22595563 860428217 340157859 136172946 767882885 47565347 2283679 585432380 781919404 645633584 194897152 810322745 132229434 638025358 325608407 862415175 287502059 229724279 681798131 835016752 308992988 430531816 679701143 79698647 29123827 466512039 568424129 546548459 859933626 643479092 243658988 70188978 3861758 997788019 172839373 873147795 368609389 809040185 284618314 869676140 175251642 945429117 464014621 338721544 360603425 655483053 154486251 872388320 14103471 654378805 642396304 146959685 21953342 110518865 152218701 312349734 514105576 513901681 514274359 402237862 856840608 68042528 352000635 803587874 532424073 252222379 456326622 933021694 694276865 615412035 835831031 184124754 441659457 450126371 97477579 741310735 351818980 747120276 513133009 969024106 473320375 262307035 597862766 278264725 38896642 692631563 719900772 576986809 778854308 901084256 882280264 634590969 364192620 458415927 355193666 767091395 12507259 92787467 365039652 936910931 198961210 962754615 847019805 421558862 74010725 55541481 97113154 480482833 754141259 916527907 935915549 74695337 785655615 919209187 7666497 249384768 420325833 597870333 119754278 773158431 455787343 525132730 568840103 277926000 148548309 899876012 619010995 964292483 540013512 576680225 263285391 252059354 553892470 304681194 734825770 254255685 64479490 613487684 124103611 754485629 786042590 807793437 542766414 889454785 4497003 55585840 586916987 653905882 686991597 7423655 318610463 171277244 89572989 200314355 359302348 965113783 482008331 383723620 613734246 609335748 369710014 953740569 743231851 47997371 5887419 800222425 966198484 649208476 329840861 818601448 778640048 515314882 68091947 453262829 174052831 380104458 888605504 124493504 607258806 44447617 28284471 287720291 808604860 532235883 341435870 137140358 656811177 525465776 331583839 815491083 262608173 666833274 733550679 921648788 16078273 203161986 474451262 33214786 898657224 288838666 859023372 927436557 533735556 389479719 58822711 691598508 32142096 88324324 317221275 146866433 585534850 113305543 592211419 147318243 874324846 857822226 445869538 228266682 20678798 464734301 965556814 367087682 878759741 343057957 67351657 775033245 501774471 886118306 555519196 588118606 677560405 741211087 195547497 150537962 391089526 780676607 12907342 345549726 709849242 663617942 803061866 411923315 46863202 913258274 447833173 104578312 658631257 803202163 321297157 4787491 625033285 143204947 804113931 855454886 127600590 884522764 624366056 992008650 368217586 925729022 978702694 516022097 442993879 255502994 302910875 63498941 641568184 44904761 423351703 295007253 541222934 516744403 8352172 99785408 619853768 585947467 586657758 62289326 360159187 658489717 701346435 73385372 575295200 287193093 841519759 177377768 9843010 142967117 496688270 17161959 395020281 249448412 106300891 669297718 525352048 463098706 155393615 417392478 592594226 692095729 106070727 262580007 647171002 26635480 812594397 171812776 275854304 398050909 651782759 382052478 150078223 24861136 275037928 228233431 682424909 53810547 629456691 859873981 978040560 891914172 333852041 233402699 236242532 433395468 529118150 260359760 835746865 413029610 251128479 826352811 105698614 610244735 26521087 421104236 214004932 494792435 135023734 152692368 868479461 859656664 672057372 288169400 815599363 362033590 501853528 509121231 240881494 729160109 926795952 99123069 119020313 918297403 973739879 357887014 153575247 190631403 236389670 80278625 509910852 428822289 689946117 268114277 837943487 225612559 944669597 530996608 667901409 402332443 486898258 921825471 63508146 13098940 942368545 193947251 494059525 324119092 963610605 286794443 599361835 383482244 535235495 850097248 984644820 939539188 29828020 469662494 839227388 124882070 299646068 998254302 440964078 144949961 501020494 841280406 243488678 112519315 749381523 664052562 593141060 302384066 563288299 966867503 551095872 312952752 318290447 678301913 594724956 335290106 435663811 956452358 424279473 829173040 897985168 268602637 437018675 981463493 579049899 701072786 294430743 756070855 305649792 917221946 642125666 276543319 954417273 410117678 443497313 673062735 295141028 746656596 636849879 704658500 538579956 795998117 536543326 20198651 624647039 470047867 922153988 570011774 148877899 689596605 990830589 391626446 530087831 597815458 627035148 973495485 102355183 829022785 282211028 64738160 342362822 157421252 70822395 649213889 967780581 660440711 406656975 853092504 573999368 15117959 717364602 9172130 747054935 427310968 114209466 304843914 368178258 513366523 335674032 178503567 196039477 10163620 672032392 486025797 196187348 985294421 959597758 534832931 454100040 690306712 635047615 987069516 629883249 387309389 962704084 836987671 473330685 230585339 622667592 627866574 53065349 929845610 620592619 439341842 753794531 152119012 664861884 804256288 325505801 484836247 709908502 731596968 470718274 602744213 187588255 352477601 890613408 44414486 85991217 643500179 166096697 264102835 743860134 721037242 671715440 342285914 500189758 925277466 598771129 756558006 567251473 316697799 71808994 610269539 652446775 971539530 805723705 913908665 848254125 280604754 129363979 967316469 657746102 67248707 434926271 312697244 983540927 516154529 459932306 751494954 82378718 542225156 501195735 103836887 301539692 145748983 969033670 328734703 168021097 102698764 561999906 892695886 575550543 396746281 290543998 426733167 391124226 534346746 177415581 882330348 278822877 486188740 208591368 897590587 784234778 475220450 404210822 962914897 263814469 217614318 503679873 940244052 765911364 640258428 204680648 178037533 136342483 120292302 397286736 900258088 310284988 324365013 16153221 396201386 429792031 490090023 691520205 21154392 761998998 697413941 293210770 893033133 8651778 651176589 933282976 927805874 721119533 709107630 974974496 741787065 686957064 165002151 535073997 986180898 126095411 577822910 441114584 36345619 221020782 244770493 997321919 445287781 577519153 301786264 554448334 286968308 505626733 608555587 802100990 743098272 587197389 437905963 259347300 819710475 398888951 396565825 669535333 286146946 150955065 130412330 21300547 129728494 422281015 725832402 702249630 802984847 74184410 195815905 609789161 902309798 798575909 677695458 44346422 845022227 581948211 813736336 584627042 612680676 224376240 740298430 843450721 566734013 113341096 226000747 493555059 613440793 703332659 603490265 217669273 832400393 944275126 858561043 190936570 141875019 443711935 241949800 779241734 885395916 830962051 798361668 349187825 306796464 328472114 948930981 762763704 598053606 83195875 735263904 442017432 47401639 122042535 552889481 848159900 458632308 556243725 574548395 984315450 422845720 85079933 509263378 983609459 673452927 349709909 893427358 377232708 508573586 922897015 755029482 17757409 984403650 997042005 407394085 773742798 843698622 174488156 448612052 458216318 136763417 922619022 90807523 628274238 286900773 530664331 856547408 339292366 465183838 191250814 673185300 908133019 525940082 871718804 665491563 296622256 508006739 332288660 89046269 519362697 960030284 506572525 165820248 719651333 765870700 612964266 372542558 562389755 11635191 369899415 53102647 434001777 779866286 952527858 539386925 450861793 914841761 895071029 685185524 861361720 819302080 55934873 249702276 381010783 147924780 460349505 662482396 700305081 856571605 465113617 929977611 780600234 225240013 176184829 927640101 208720596 101164184 293271619 766392601 931379870 454617316 359722568 507909407 323856973 747484572 735863647 818385299 506368436 815238123 514604450 798917907 796408392 506496026 614516709 103380026 289309822 593284531 588464629 531685840 393981965 905523695 588811900 560977032 107898031 165540509 529193304 970755424 718810240 673327060 842746397 932871488 737642458 778636021 882712968 295840662 375000095 479582816 10318577 399415691 833968770 800923098 842673595 849015261 127649561 600407636 797170624 289279678 937786843 425423150 394680745 245585999 702468303 95958330 157063008 719793494 816912424 41176786 5952769 77488875 166273683 725679027 577950567 825527106 116094705 606027427 559340402 581387448 817249178 746763769 575229015 93401696 906807099 612878593 244031027 998557097 347004611 152914182 610390050 867018044 492808228 817001965 269037784 10462295 671896878 642826453 97955273 584573454 772580846 281564790 478725148 727414495 312380283 420249467 969845118 240301248 925322631 949112102 450705653 804798550 886244804 339644152 936222839 879663518 481044444 748249510 264355502 516369642 852812407 775292474 837293772 830135134 361052099 633930386 226698650 152888418 401649637 324873072 562952903 619496384 239678441 462741493 352043630 137414718 661095053 437219572 993022514 245243894 431364036 11620292 900029362 538187497 289173802 857279691 124422429 214689202 798859454 609574153 183448062 793910674 930770113 778719314 966273738 459469705 809368967 821861118 904956459 16636353 939309081 618053061 382493458 395587486 813640789 224259357 346244717 964561143 411313049 648025814 865417439 503067197 179988007 65281647 219276203 968565201 870671136 805858507 179619450 142379865 937274278 118779414 407883123 263290896 166325557 621857724 819485303 199699671 799178142 590372169 751728112 518507397 103701927 671238379 312346346 990481360 209281398 955700424 504134023 241612621 33535419 239773243 316522786 627722911 599260407 462182819 135227488 463072620 994310333 270086904 625184438 960920606 600112974 357792883 461547512 619575970 581629723 267588651 893315803 52028482 150815675 242916047 346868202 955248661 907638425 573219231 753500951 40140915 95575749 626229183 293360389 180415138 211246950 606671503 174414687 835316226 66798669 425418388 160135329 692824116 725033801 310004681 294288073 142086251 605577008 864764480 362775015 995199098 957490153 692325948 932239006 184534590 142904990 508822143 158973587 277630901 460043220 711829710 330240694 201735973 283356245 398850525 698006393 353520514 146863699 37686740 115625315 269366030 239494863 221276291 606528363 149598327 599322580 637957383 100629149 8825931 534293337 506866782 978921389 815176625 726932248 963320332 333279718 987489323 620757560 99033567 896062012 982328238 639595520 709413377 241454093 668923623 566656246 709930703 276022810 55284021 810281193 92457960 173807789 347757282 143668376 986801356 371428097 168647052 126962961 894072271 340883007 449692002 209970758 665301496 150685146 855810741 574429489 880332898 735206441 773198495 540973793 933503805 43664611 73120083 969140781 881898275 532652241 525636119 719262357 100941602 936215178 600163976 50370279 160811418 393837928 180311260 935215055 107486789 911866384 566614756 666531893 201245254 383945989 163392068 573008331 789931780 988022846 854992836 730503788 409995489 156743378 724745966 573867817 641842211 166441371 484926736 907496602 115432395 327185293 748101229 469892369 668191856 363192364 549628412 296536858 867658461 52349229 571371676 674897364 837337875 729503705 805847107 862887418 474373401 316632270 597222123 721654509 260109206 311447282 626394771 135313871 727814120 478488376 916315192 463384799 735615933 753045322 676320853 333139190 908031615 427193137 539859985 250432841 443826363 506067315 287421791 659681390 316978915 490652659 558825270 478757943 666623015 227041776 149212053 913589954 457036194 640711751 420495911 822340454 221016511 580526468 745642312 50505282 28494124 313305322 351436379 879514415 552733080 750704059 114186482 943493164 735350754 918078192 939252074 723862845 534590674 897430691 387364884 112299556 838569290 111636128 967972184 871273667 597071202 648671530 77225138 417648900 554708701 717867390 281283532 847708336 605068139 496029493 541951368 309126638 737806885 807629184 594310750 961947169 852241807 433859605 396275813 762608996 649354210 867794073 365596695 637291081 212334411 913335620 36092892 10129207 882398643 592084894 863706731 725933919 296242770 802160169 663976931 455611821 398228465 584843691 244602545 871767403 362730185 937073055 630601282 303757430 469997117 598501190 87280469 534260266 293689037 63061966 321484916 453507494 196217559 280956680 576553116 39134588 267616974 854268259 69554719 53096630 304711873 26257758 393979280 856903439 893679143 743442397 335043950 509625589 40249462 185968972 999678810 171030993 475696052 799324963 498319492 69955697 846357322 750919207 432036579 780068031 11549208 163317873 971553275 682591418 626869791 842889237 612308983 354062762 407870339 345954715 958991993 704066895 689405925 852817421 753518724 366546542 737512060 998868888 922509580 902657891 594128263 749404087 884645053 962197184 533435277 521954372 853649075 885043523 146806817 595144244 355935507 509604908 589219530 297839179 305451949 229612082 824767308 616858537 977981786 176173130 119723186 581487115 147136322 618140773 47163524 820708372 741605540 277370206 898596734 86891936 888655346 290146280 438686556 868758560 336741739 385498767 417135950 669647304 683213823 793005329 866809935 27309194 269401147 523370530 278480060 920419556 281670907 721631986 636993633 593465769 436851698 442852569 692017457 876095586 616230559 252777842 232399022 271700317 100860822 341800710 312257069 852878034 583955589 983217184 542390568 304558006 999839183 423475650 239268141 762511006 192400149 226176826 744818770 764218546 602867676 278614094 388892661 677355137 39698495 702514744 528976281 578206676 317695900 720756398 178067488 191198095 19198929 676797077 461000138 121631536 101092651 331949492 972021266 550293758 571991846 256893768 799329633 445676323 910371799 999005044 770838156 614116098 79477823 732762481 127012062 170499496 5478984 540820858 764532162 911027945 895446109 659765583 551735690 917821709 268844858 858629487 678715430 669532236 358226599 486396863 691732947 936661143 565956910 996695736 327981478 246172806 545977085 872310286 80852438 120160328 441416068 785724937 418674567 687393657 452002047 383853655 321439952 51874671 109592712 315333539 229257252 605295556 954445656 679163428 697100129 351532225 400754967 1593329 80359822 84828623 486876 106397765 849858191 485407312 337072923 862033787 176339148 988165090 340998878 344442761 406310020 891643305 234798057 387701129 247697931 948283974 328472297 849355117 285791477 63339948 740901308 757216058 771764904 725564938 417804989 26473335 586186298 616660560 51895839 684983593 116519824 773386882 132942460 890870435 488670893 79308478 268449171 234886910 10006976 209137627 469981466 629668556 71295808 753492082 735178483 444208996 256932290 324822383 109291927 680325828 284278042 870003430 935510770 384790394 153503350 149540912 342660259 677191188 177047091 76120465 96989773 204160284 585545307 135356417 394961235 893090661 224550190 250557158 689693309 953628573 736038907 91723022 952347720 148020082 406454147 610910613 409853960 259867835 230097757 76827930 480880927 644561108 752918036 175311817 982778378 592039498 348624109 68358776 331735653 605483360 823426084 558021699 541933233 613412116 760421605 303178457 879901773 319425354 888235939 336383806 337741367 988422983 58442209 984194405 767855898 140141529 947676398 398852131 820256457 187607968 841827478 870286813 109585482 801033830 669335023 887813758 411413597 469976322 817356604 539796043 762278137 49056811 103766717 856729071 983305285 797708395 421744862 511694634 570616134 979324708 24685735 900426013 515086645 699415819 426445276 666707936 336229266 296976919 143116879 68081138 215064074 794110910 104892679 57481602 485972087 496094082 719344961 69399880 434462010 551534864 725659900 327194440 182999544 239850431 140062822 656363527 868992520 573511390 252818252 346820344 692209451 895741455 933150608 156363843 967918061 541272843 490034991 432614436 902623104 819407592 267496508 988442039 584207917 209723768 969017157 913860189 654780041 488338582 488314862 612233132 387384713 425299698 809444060 329092590 637222625 631960777 650254434 539381236 96607635 584445473 711721551 139786402 390169907 131032732 229309675 193971149 647388731 370393794 579211575 902429894 811010101 561892405 613353467 975905383 25525190 916001661 7634252 532067380 220384299 950842592 848882433 504640529 251856706 715034765 614017582 387512885 462041842 947204160 460778679 758829114 967767233 975637453 723047293 134202912 111393189 275006781 868536917 885340935 171264501 427296183 712220287 96180669 686104675 434701806 108858293 296991800 386114408 834791427 586056816 716686163 930439544 860877927 668107056 192046756 26352538 897730342 414451485 629929195 761950607 153593119 480263800 555288828 586958230 782544732 964800322 260269168 17012631 242882823 980758451 11489263 616135371 391727442 715821966 424205934 112028808 3149591 807709703 408681125 590696871 916791258 62108267 96501931 550637032 8308101 229735153 673541879 75041089 398565408 836014360 565262073 668920971 217958942 888278343 519356391 906258887 213959712 263529155 209507399 440424752 693578416 942140906 497681319 756185649 531232032 603655718 873776174 397041317 545514381 651468056 555857860 422453213 227094313 300772153 562282256 125035403 663621619 409961052 605434278 75082635 710014380 648143541 824030329 958234561 218619443 175580376 922101917 226674447 896862743 977118457 549219550 333590801 99286424 507603028 777100109 86361538 177924104 727799138 32932463 809645284 148131528 387312094 297453867 23514231 537050344 143271131 708082478 261399128 786452886 24075709 197253983 744881489 497140698 75235957 99509637 290204429 882041890 667583350 461347438 345876557 305498191 887965071 371128739 755660541 121845807 765036186 837679149 903490941 383115117 781111922 202710283 901042132 12083450 458335630 713643494 330568988 321011536 255149785 338618344 638150404 131924986 430866036 302610561 661400339 875662117 574842519 445640523 310901823 635868099 180346008 788796513 25898536 376897484 976258551 508139219 551869125 319652164 829502236 277691916 88853002 446234602 193253479 463293585 52444129 359333856 666486349 541181412 661637608 150712812 406277439 28532826 674603293 264323226 591948303 345824557 326802177 155057633 829425121 953809583 924973378 172383153 993477655 520383635 343157537 84700395 879243313 566286227 358005117 916969992 547102047 704059178 243994076 571918423 600122156 626769676 14206200 209739985 428659728 600861288 800928540 65610226 971042395 314172352 809564159 271109102 57555474 753301220 344630978 173494552 611594135 331927975 434243152 435206384 631802326 895553446 508115553 945114159 440418069 496656709 285132302 332490200 221849073 268501975 315787670 7220697 991997993 422158707 689426871 446425203 518331869 438932772 154970259 44367113 74621809 954396508 978432388 833632375 75234100 958795250 251736613 558481823 260312461 988855809 314655989 648130002 371087519 772949226 2444671 497753243 607546776 569484825 488166453 998428742 479824953 518717063 361138337 651332706 322917259 236589913 159735188 454808282 330272681 425603494 46438841 216528128 996979575 960953021 509894151 851762921 973600694 660752603 717638568 714227898 424620938 917832004 392999703 688672119 244671187 273745357 219941533 503258285 534407366 159790616 145294363 240586523 211027730 860580281 403931806 246986963 651059981 725087733 392055671 13440898 251171830 826458148 978896276 31421193 997234042 697308150 689139760 944506670 414002782 694959566 472299608 187663878 807575885 42109408 826438515 963089561 423198718 524986567 157621674 741400248 44739968 936676002 561819681 378174078 199072214 385103910 933117413 313950836 897025397 303133831 901711201 956450485 913878156 208919725 565380258 642044155 875205004 513262162 528548058 74312938 213732830 664210430 804785889 868865787 374053163 486152359 808037502 877511446 189534013 126226443 746651511 703411183 456511454 120639561 31617554 479518410 718426929 522654713 223137820 48125907 428436948 999087231 574273789 716333201 575063260 543915246 873593096 750047533 559337729 168469425 231602389 149731165 851734812 237037019 661035355 922618400 980136327 933636164 396214573 565486062 781841018 3569594 546751130 143444415 692972833 304293736 648820521 100235553 933741633 124717516 690871226 295676945 336915507 607994132 49469167 569795514 601336915 606337041 150356001 705458617 312987031 39912603 228583994 692941570 703973195 827512761 694736857 92926781 207508375 270486165 175909554 423791698 127884581 255334357 113174330 827244380 271922974 849423322 573087622 481815274 205949891 453706294 758277954 535621131 778025929 801792193 890503607 447796099 169261037 822045577 647984356 56604564 32917666 833551989 87827526 909274015 848535964 158314856 890217689 810062213 637609855 749695996 360824860 22319322 800192530 559038851 562437479 133583475 486767646 554793095 13637346 293706417 872090701 446101398 549578634 421875174 39926167 937568513 184177570 851180756 119468042 72040966 654817704 409527966 444016061 189845582 478271145 560667313 762156925 754576134 13580765 682936194 326792931 829625680 668645221 640254321 507069279 994823414 117611482 996684962 481765592 965808034 985578804 588365054 591602260 340965909 82374945 555515621 77876931 288810870 84050881 69971449 877506194 222645760 380525269 865258658 572574471 254679346 739984312 338955280 477350966 455216167 750965646 38044844 247769717 93893179 647333324 137594855 34153199 600159771 371284875 174320013 845508597 596241622 596615716 497684803 670024144 486142241 141053858 435868620 205828486 722690732 515115213 368182560 99666994 420626055 729585547 243441468 601106684 524067988 787194612 939802132 984067639 316124682 336249418 391531776 842199513 101977102 515813904 212280381 459754802 106543037 957880993 145474067 186690323 61333519 76819259 186047274 934061407 34621101 506246913 873661266 988772951 409490860 688029148 920510037 284792879 977167940 162224651 529322138 396963904 630680636 519872913 807647221 392749169 903764967 428721802 559107441 49423930 870656654 875245699 620164592 233933728 524000572 78861914 534865965 749809716 327032277 795906320 476284662 539682469 727429542 916557113 390469669 241982884 821542782 619037100 274623707 883547864 435998287 534991932 25871814 880719255 436459546 449563571 295836712 71444216 96575426 599719005 163438815 992623515 420106020 416949789 94770619 978520084 297720500 585559299 773209749 853608425 538352280 6339000 40116830 873120301 815955682 865946436 681398993 302681439 547448139 111240635 388587209 733378768 228885761 5191688 389812954 238174926 430507454 692891633 570088401 995235569 173147143 362276446 190049400 231648700 77610614 80774542 562579194 127392773 376501647 106444560 461416749 847472368 653025938 987266010 250812426 548847520 296556038 870566550 191427360 525716866 722059808 188994230 191020558 656361447 770059795 979060983 592628894 376422850 974993498 846150432 577269500 698458913 66571474 662164811 159771260 365437312 687141251 751436179 771526441 827277393 713620570 918707466 770418471 818889141 474616460 369214299 71557327 586398074 555800582 968952799 776501269 776603232 674870250 505509412 154540931 925125968 353623319 33239258 467816203 214747507 923347772 530368344 78285031 363874971 50300187 548563201 155086651 16732988 790045704 981163213 417709880 740238616 134031817 270924340 679622745 27668256 863432966 609315186 48463208 870899905 902486385 523022527 173229558 747202304 744230979 761358149 659391762 160440080 690650930 155578875 368731707 460599387 572561110 657782377 649620322 733761120 175453570 868275863 878896537 78801994 668254973 673221153 753515172 566850174 718092741 11028978 107567085 297262116 190712273 696554245 406586299 93940612 442737970 330913143 458032264 864503624 500351100 246286730 84188736 414648325 697425164 715347705 906589117 441974229 356085646 465874701 429496279 441990994 703411116 945553647 865844655 731663239 633855266 621083060 556272860 891160118 853780886 161702547 826224392 311802411 879732206 234867219 49540940 847613900 230692202 985759605 441796038 239831721 431819601 456338469 828409359 916584642 835235553 894581753 314936385 948878212 253168531 327327381 538142953 294476187 146675501 395911833 4467845 814816752 293938815 423012148 803235069 822641593 725588489 133997466 266734576 433074804 39032102 272409770 79469697 665623742 781326913 408323604 242056521 75424508 52469808 298875480 945540748 544265277 245243008 926967778 623018498 615551852 580612279 131419472 442453154 382680093 32548353 366495461 525459429 822317032 290355871 318930058 571157288 838613460 471785052 517997357 417233791 837650825 423950135 984395844 952814410 162394409 208047981 888918747 138260193 105075284 664442352 496087511 421697989 696957970 374211983 798198429 849463783 139028818 789892430 659010860 560763982 575541758 514457122 607621990 747217028 546483851 272535829 694160918 457640611 996610817 825984191 765957012 666577435 436436663 546653539 742203685 997845199 555250823 419080893 858871528 285196296 653363699 615369280 312659336 118167490 667370963 689703113 435280171 341856349 57686989 582483959 13230388 980260695 959050225 645347828 23998881 73765669 997423958 93210168 786466667 172672455 106094677 195265810 423737972 600538557 825720407 93974385 228910425 697820264 869061539 830684296 714508439 23872057 677406511 195475930 942080101 996757206 540956236 971487445 60693762 724867187 664498148 610925719 379926518 859254116 323996281 580411642 123328484 970404393 668349397 853799372 670839769 498883682 424644074 319298785 260525670 983400541 771068697 219510007 401600052 169966586 451028172 226227944 79214924 739689657 828049226 107724303 266021820 239554064 49521797 604379468 642213982 949897225 772244205 644642704 298266186 1828702 521897337 730301864 784893393 649073491 360003224 509473226 26621694 724912128 342605252 127056680 805866556 790966478 288839610 815780487 487069575 563192459 137921029 631151838 905720977 359040278 60088809 414981224 910264808 561246280 407501586 946142592 114984453 747943755 401782840 858494439 908564627 756283057 446943371 495717882 60707995 791239828 545168127 211780603 924565867 670168405 360718864 72570027 337131392 257307113 235796299 793511490 467829936 686615825 204583474 582230788 816595959 994530897 302353599 682337318 864345267 871458096 933356304 531809615 242085142 239097130 748630847 179134615 680410680 11692182 365996363 942532163 39195952 623600399 827558371 103890755 731043741 752062698 902813610 540444900 651049268 776447781 261303032 704430375 143522106 265625323 805994186 977870616 733220346 444798683 80381190 888604937 646175286 926611235 785392539 321647558 601030918 172760855 498226926 483366285 535911113 374127494 812723653 64824318 793086176 911446702 670644475 908470772 647296897 950540835 352322322 580656537 914191580 413916774 790562911 995573447 470147803 600961053 134453195 898240684 250926140 714549330 77885749 90214179 948344435 890757717 214353469 672918504 127830181 20640672 209965128 517977978 141900315 932452971 241281653 251141240 139217130 711958828 457449003 656244152 216107605 478762071 632610652 597938174 325389434 331720382 970602836 750271744 463846600 694112918 151379222 190364014 484594056 622577708 969436038 428351651 821187673 67105179 45776552 182300908 415746181 595858387 318764573 593117193 39596520 270399493 539832047 965655283 204374896 785040693 559706367 510304787 325345324 196874736 50591951 194866462 977029068 242024221 583464290 575317061 705605220 139865196 644648757 345495940 940126842 123178590 438275589 175996339 78599480 62367648 679107188 59708351 876762093 870738785 852708259 33012120 78526271 891763117 388669309 243068357 420030568 217475030 34311395 331446266 464467242 493089275 977382473 108453606 460081553 145571757 508493232 854277483 135657568 826243699 857453694 694725455 439785779 877349678 59743910 41289428 256451325 556138406 2363859 38156451 29154291 157427039 759883685 764339887 160651263 894801306 212540015 101987115 667472695 143035864 196075655 124149745 29421797 734075166 690990739 356091323 980363434 939865903 11276466 599332479 613289677 810669335 571743132 761968451 633918586 276999698 881296235 341134776 595001763 236002997 81032356 286522204 783735603 412094185 962393828 696617711 730396023 391861187 302178688 253091484 122652468 131546708 714732364 141985033 119811695 498053747 630583126 556117806 823217661 198061150 852449862 434394158 746665496 59599896 322903801 118174664 157620057 801107880 219086561 384208666 866279645 412928934 820002261 356819982 729097283 610853082 616586927 944048249 705964620 84814024 182324003 328805820 890084470 560657782 767197877 612577289 503935931 818530926 763798827 725630043 830272830 825426689 955016969 204068624 833308328 485059576 912506819 511636487 726755550 219923326 520031552 177539559 779149886 635048598 612549760 54554168 443896900 128011527 933186265 498879028 387677404 774266445 365556928 793175630 635918840 517939423 169397630 428988697 502666578 738045980 310876423 317103250 784361664 698633194 300219695 247561107 464153305 919223398 937936156 223442059 870721490 453776399 202985541 360861996 506326261 267582908 891557076 373596758 117439589 663905195 494186604 442619192 708094191 79990192 52515180 726444610 443369048 250221869 358791389 121825452 731635718 14277887 133573700 200781352 833939417 861782773 474906382 372028072 907402633 570103135 437136919 350293101 89706077 365865184 637962324 42571723 307594333 901488102 231899441 780836805 400236376 7406415 168459781 694418035 358344873 859281417 812267833 902885296 847908838 370037572 340737268 756498905 231630960 530717333 836691342 925378270 33154315 288438182 662501182 990404047 106028501 769789142 55759785 175520943 809131222 786926003 159848251 845934570 615453886 379333683 676303078 527649287 514046334 429271177 594975334 427043251 800784215 76581354 380708009 320286369 308749774 265673263 423187010 345922971 449649128 309662170 997478037 627623034 904988923 602771069 768171147 755017672 164155188 821004235 171523483 431756542 651621848 678324679 798140138 58802060 675436834 23535582 402093689 818755372 8649209 986373106 367778269 460240410 280472618 593668928 915339941 737338394 406430178 936869162 159687350 843193546 845194854 230318152 285418485 343967849 41784384 70930526 979689637 926533716 954153780 732599365 801869203 928866744 464970947 329271149 112998063 971840586 109093933 312609458 312942693 369487743 848226582 67453673 320410124 820125703 52887067 460825227 931047225 403999549 8617801 442581746 473562262 532058803 113341346 875441091 569467689 390443805 23474390 997182265 564334030 700017203 554658518 369049878 26497714 505631028 166492631 50310606 522605421 473687030 291675055 562695547 504708272 197264208 434579829 954742282 227211605 101655623 231244027 414255789 525869500 802146630 600578025 571992989 787726993 432397752 458170217 683871892 910463169 71378127 849486997 265125030 953809285 351681634 795806024 792148555 469939451 713104098 212790889 749502807 626823453 93711669 996224982 897871569 289736079 173557156 35391643 758300256 576183165 880878104 885614948 16150262 24251694 40059973 265178620 819802668 405324022 688339883 389187676 51234589 318018933 77102045 211467699 193663430 865277296 798470542 735180192 629828372 336012413 473986749 457470805 688452309 359773009 656950923 950662142 310744004 986115411 416800973 417827561 424417246 548287114 143733353 210685413 22072493 516652144 434065956 718970362 245277101 125032370 470418626 75920455 344456257 411330262 489089249 672874222 432570226 794990026 756934711 80610711 424176018 210143388 758237106 125780279 297451607 296346956 670253158 687482386 910552329 454030346 764290994 443115843 746270282 206605210 590368038 61467923 114280748 81553188 790029083 20045442 184028861 740779343 364044672 719521546 481818568 155016808 638532024 191921189 55000131 608658108 803294363 639372694 301875552 658793347 444375844 369799969 14253317 94590725 365071345 421770990 434703925 518372799 860489556 808855412 703403614 342356548 541977001 68247974 946543217 92979640 870075914 916141875 307891071 218577999 407543984 538617220 419712057 79390561 289301193 582468672 708845544 163695331 275631646 748904439 280394718 601764563 500143357 463242864 241563642 791585287 815736049 49747129 486279630 645744306 7284497 980289574 589308095 177844030 826287026 399110696 616970073 322165006 323981997 423706283 880576295 412043646 761199398 809037152 199362841 957963069 112607441 16839004 841494410 421951662 419953243 323492548 379878660 790931588 675002864 866296683 706536692 480796837 896601185 392962519 16191937 204052372 910824777 783345585 241965075 708965854 314089840 435357016 866766755 377769962 161850378 407632008 472486912 57051019 470974670 217370770 417703194 900919507 825412074 506095701 963870631 454307893 2527427 484829843 965976904 835768961 842830018 421500548 307679500 78570419 909361641 802989571 249928928 79843056 511431643 429937605 587634242 289366900 327923408 302490868 998485479 309851656 100035357 805931735 359581289 974118853 980100929 417096590 524190447 718894978 320755360 543327478 272961534 84403784 411615483 866987726 314677601 52247831 325220095 694302584 386716558 545854985 949974384 486320144 355591767 825275701 671648602 271110605 151021971 282866000 877162652 137394190 317525722 899747683 672408234 19370838 980695430 344022630 822210081 975504618 617169772 530869524 993441050 988152153 295237266 958969264 299764945 910252835 678812380 223603593 37292072 354558758 919991521 403224897 103892868 204174055 56427914 234821782 624924391 101872354 729612746 104029969 511401534 380552029 362905917 684440228 777388171 100065526 808481262 850536224 785788671 932370788 746095880 921800641 232767410 767978632 998245516 683833047 540914191 540759432 165314153 922055525 406567172 18569 132500803 395423807 715129395 392307660 184777194 976321191 574017175 626026105 740145317 941034674 84509487 441000679 114895039 294031250 772079170 958168582 34847517 513094233 323529661 128613191 195951925 190023874 585536491 817131953 233054521 655549398 48001792 421501100 804937815 640628119 905267099 834375087 961340047 109973957 13871705 66603146 729514428 647100064 954719017 714121813 927867190 25001706 981921032 6891852 487049693 428678992 854917600 861173874 455362778 295236212 815563690 721455352 526781572 844223387 169444181 739142480 784545085 460927287 718151319 937260660 967139848 85116531 448742096 357128782 408369813 466970152 398562289 477115559 563917469 554317330 603517319 69073898 353369659 580011523 954084291 13072663 985842263 519275981 798163013 173499550 112593982 699067338 445898047 144052241 483398350 340666093 448982559 593844783 143211071 902972320 957831653 743653500 220830703 669149786 669793195 23587612 588448926 624917987 450139198 31015283 390966888 973084100 942680766 499744029 319653609 498277502 640882709 72316823 705183955 923104235 454626210 816667325 978266871 653748041 505054855 239011610 575087233 398126285 167705060 712078099 190702371 802468777 84832095 938604457 416728006 348933154 352442567 542402472 977029442 397370803 898227449 555470937 570449467 866437357 804362314 224750432 504100836 68806701 895050923 433585672 954747632 234632418 218558219 514952756 346119036 877733154 7327556 799467856 565186618 62641462 916655116 105533915 835962381 911753982 64559934 714309139 723466186 840751258 328448208 675862768 483471301 588613114 541451872 424404170 312807136 87229839 928284949 527901473 156609762 841455623 877167236 476433236 788724262 370730499 144509326 515830117 159343392 431287514 98673035 308362225 927108603 878945377 26069825 201972034 100302280 870845343 635172734 915929881 686533401 104013796 826386363 806622330 894581829 435273839 961813819 744128961 69108329 579338614 805887038 500609968 61012578 962452455 373197787 281453840 882118757 656109476 147749344 256680660 604474327 271284243 925244394 342090789 502117488 983534303 61751416 199310588 106528516 148101483 853871331 831533889 155269964 843941893 699591295 730652962 829403960 790579767 176962289 139218740 938452532 445350866 209363864 394193756 489438318 477638586 890960207 824891266 591445764 355062557 982187421 907510204 727006175 84006206 493280924 88447075 51459873 458290068 564405582 415233704 303869718 57556514 491059356 387375962 554472585 687457771 470966872 6214774 636734253 37602404 539306011 381528362 437786117 124746620 443713423 586183801 329458253 322731583 783376648 511576778 859549375 44844697 980903672 948449022 41429038 593520332 657761254 365683964 40586497 907603412 950269399 21194021 849576998 689470312 461267188 632569170 585214190 986712952 694576315 269903063 25082954 290038422 422441105 909788594 352496268 778144173 602573965 561649293 551357271 361514650 355839815 651887743 487674987 684049570 643523613 838894453 23959044 580788124 529957210 354535038 28700185 245558555 412567187 855863500 585266773 916883990 624359391 373648877 270720561 561233781 65115887 617347442 877262039 514474562 616808509 733496382 156972639 483805781 992229471 696479751 415490685 881665692 88030556 726585180 647073368 200826122 894645267 691749995 392804547 647263925 950943602 857725958 530051553 31687493 699213997 362879746 107324560 955933733 287638388 486411363 86546291 382904128 397764184 617440499 36061824 740859646 742956262 615672078 712833987 661222958 353138723 999187677 989222172 954703448 32331610 350098808 79060327 898432549 892678269 579850710 967076294 126535238 141749312 552777079 570786338 450704134 469459661 442077132 833069293 385970463 279742043 316589615 568279412 226462540 31383954 120242716 443120232 606723040 653841777 320914961 793847764 298000372 711657427 324706307 492217731 53793116 445114500 95202630 122522475 387688395 926688867 972820758 272647305 262991486 693405991 494305562 969669842 641457682 261991675 74254466 89602752 728506940 369574046 40294418 655085749 576262931 939660850 568024527 251381375 995059954 350373981 442847729 876688625 91799750 547361999 364789162 424201863 171234658 451760263 213313052 380074765 388817908 351728402 210047330 758958990 397010836 813156091 667514812 678877781 322775020 543407410 83613064 316604097 848635637 858214887 945838030 29658012 197201518 393145519 115235367 875082177 613075504 802496675 638844082 636836567 128826521 475344538 250819835 438487100 829480494 815396848 341975734 877271708 642389424 558684985 988987334 112949751 658765722 358878166 390478095 434888660 785562997 225938782 42363639 168243958 145029010 79720129 239932049 937076973 757673937 746140670 24649984 713943880 79553004 103284841 775662691 647408058 693580152 826549040 427163424 919372096 522404538 981658469 478199276 6397134 774262706 283980260 551571964 628079770 743498194 233215480 15583436 118612838 232218887 996744884 791004143 965145582 173700786 661173853 107617402 121237137 745050970 14469119 95811635 751868193 319234266 180179473 10683336 354041160 393938509 687907959 415806929 740490665 357312072 867562990 704784863 314988670 708117670 107041010 306822527 920395340 363672906 992443969 949346085 819144981 166759617 8797156 784919438 824022112 572756463 666818633 527143127 125613121 263647556 947499088 450684335 193317653 733590011 413749429 425468217 410392536 610106128 179747149 33894532 752125166 337530540 309368187 612090905 783038498 349174869 760059749 124799630 880422245 78203407 904817059 866652152 424567888 158413099 697015962 957936692 936916259 165675128 853477014 417549542 693841214 18726678 30374643 969519145 485534541 965618994 463139564 168654933 51052506 657639804 604750963 280842175 880066184 197108521 672181351 171008302 432970991 434325572 266019418 923653529 183696272 926748911 607071703 247840641 603490828 307074796 421652180 796760427 283279685 197700172 743105582 635249773 659883959 513974627 285546455 908631012 857063417 843223029 72458023 982009949 410791922 267834118 136576984 163747837 721685787 993319931 491304287 81281455 359560655 920325315 893475446 241169259 604479313 690091134 13970504 748093944 791636585 518795560 411982763 335581358 554327329 559299474 570080522 137638818 987627104 878176313 817724027 397032969 624333936 506657489 57590634 236273270 757009100 79102265 243700021 468452855 866213825 50584492 773435697 17767696 675659573 220405534 815452322 975205203 515922239 152753268 671587655 110907039 289719960 509960980 846559446 602736472 701206399 470163255 475259586 605254774 841851636 200580071 610339810 939467960 623804742 543158122 671362370 992625622 822912219 644029582 129023033 800955493 477060631 398064092 976902817 927126466 623487051 620435600 195732888 31259152 167300042 448053019 92567331 39968371 93498969 956144728 686434351 383576901 587577203 257852913 61344477 633930061 754061228 162589042 202105813 424057966 252434123 31802652 346406547 864720807 247566345 175197875 233554551 850812724 472484100 546533771 877002672 745051709 399508614 976225712 585324617 230433079 643438908 173991091 701404968 969911288 469233054 285265349 106088393 454982839 282192894 113390513 319916065 188674010 332613715 606038721 108734648 732135091 814360439 833013865 596635312 525541717 438911542 134390962 371108827 213156890 914315571 439066237 707160043 903120729 253187045 51308252 179970245 412670555 267566229 532545061 221055286 990827946 114428554 879353740 166938869 190207684 713325251 306495711 216723822 191815857 327796507 452811105 297931653 291289016 144803584 304739615 878093825 306064193 895682311 227155103 519324716 304061714 770901046 457976676 295970516 329318174 838404220 339899879 37692352 29175047 773591398 137059940 879689293 772223026 573080766 963374416 312965895 306346426 555750391 203673326 864737718 403183869 809252835 15254635 570930955 103025493 220899493 626694467 726806684 766809863 940855774 124008181 708068160 865767858 822524171 766368632 255268548 149011557 517846320 795124449 531378597 722837530 210352134 855271891 285056245 706011493 850539669 289674309 452107606 170413241 678339011 924123576 870300392 946178337 199537496 631508332 414159070 81505750 444430111 794423478 750456855 841253880 450471678 75485016 135946312 953072568 415168820 732010158 795393140 591191976 516624931 194168300 744279279 138857869 192086933 361693926 859890270 168506949 488069291 763952766 676431468 691131573 903555697 833329968 691026458 553855100 427650029 17113834 355534739 707597103 443187522 752850667 974184780 879044611 118050898 959791144 643692906 993419340 301526497 720681426 473318935 952332444 281660033 319591715 158285981 974351215 676595560 722085288 565169385 126258896 792109284 363352947 104871253 974159491 739326289 438283215 867914808 322459786 703823110 636811591 708593185 990877546 890588153 969685751 67566449 470228917 480859486 125356686 300026075 160947789 455739006 683819839 36627465 828405308 834539828 502382020 563611197 693059529 651630203 184206199 963669259 421276109 168538751 896254102 893752001 861136562 826059378 96217342 526803680 808504841 760890224 825385528 283803604 895742274 44203 985902692 304399993 210638176 453676125 745689713 19564784 864985375 312786732 8879507 990234801 124920459 141034909 356793840 132353824 781445524 505181951 294718936 33094408 182424483 895906516 469365683 492346407 810668000 49386697 363517864 937302538 619962974 351902490 703210951 364953525 428505709 580226265 683237430 541426053 355891926 474973856 582954420 197447004 52092534 490369402 90195211 467693829 168018088 382442629 344635087 465352459 118575007 77824477 868486356 301150194 831049818 407842254 250873390 964766537 364028130 873483883 558184491 979562398 796406717 218026733 569056733 751397046 126517657 38854821 193872834 871457958 360187956 346320072 766991630 569592764 101844921 914567117 690044140 779841190 660537755 148616170 558292814 646600698 948405366 913287988 446230818 693991073 486055082 754500216 635999463 947593844 85885800 649381046 850291520 46619010 426130423 538201124 481302243 27566702 133907734 651530799 615162292 76529010 357420919 63930206 188737032 758870540 700270663 427544352 520488718 672334854 202139349 369593517 828078137 162743506 187915945 541232995 82191665 177249910 916003748 721638723 57901801 870534247 404685344 243263995 224367210 740307266 928022653 382286617 936773837 775189659 340787787 803179600 621339304 533464216 369342315 827316054 751308931 320700894 712901285 68661324 450520834 913890913 583314732 970751947 210092711 424051442 410952663 910844792 127742930 954520866 83689494 85509615 121160449 83894199 455366330 836443037 365518874 592917710 801038598 179621880 606320028 416160211 57684264 440041730 161339514 150509969 617875299 738415792 306392487 36338561 221501975 736032816 638348355 730494007 729202473 824563226 317200752 652485539 567157718 762346272 970927808 41800250 242026150 598748996 356151375 274313431 502744330 737632934 146151358 623594908 179383488 333823529 82356389 95601244 985663928 538389678 229953243 287207949 767581803 560777540 378981967 83912844 325780834 541904657 477915461 428935594 161677982 295074918 53928149 607976328 908485007 366675949 436181556 27323873 899157534 140341591 846472174 974640109 899823230 867755676 332942925 122011871 600545083 905183252 389954254 319107743 33901517 870492807 904846579 949868781 287413229 881105731 99169634 876035822 622020457 670210380 279376876 583792183 361125410 13484698 446457288 487777564 340434840 399772157 747099392 457452846 408171920 23615660 654619844 412941021 939900499 916872911 172167061 233592576 194632505 942984398 61665880 842459599 487541565 678843117 200587573 922750929 48862593 738273047 831845630 698500121 123287469 1138606 62132404 144671970 821965123 207992413 489633356 133894016 175448609 596192724 818706731 86160976 208266458 640452238 561417324 818273870 776560258 609802630 32290379 231741324 206735952 775741628 475700990 953150004 358268411 781488130 338953140 761732294 518851151 802907610 903265643 957620484 724513860 134729651 398177881 647830814 599558974 367382314 407739801 468709824 715734739 572727423 202714004 815448384 530579337 797103560 124036483 417208026 350017997 662310938 405301217 617642044 902336519 616388940 295280555 201368131 841845692 855087213 428118618 700632268 864433915 91182101 259495479 88898208 433267297 578295491 564717590 261987983 101944552 182732744 525069040 642890823 833420752 880237656 617969081 492549294 120400362 98035140 646605758 120827228 756071875 76375079 392016405 87401748 266675752 214093341 154169986 388982785 349509893 739693280 510418754 621916839 909652125 238554874 52227781 748893228 895862696 668547478 944187284 370864382 40921194 934854754 810368680 354204755 202398371 837400434 282725315 987193829 529830535 628924277 774924212 24625753 939106511 759481245 111027444 745243571 560689103 838172104 214192970 46774054 726847421 482805929 37184036 301995991 432307915 642965628 30870736 64267983 486282018 67758892 592835292 605086134 436493869 753893782 230159444 497991907 83565508 531859394 912871902 241277779 472880120 281231819 454516185 607106187 407244868 428717583 781450895 929167212 487580491 924838538 611608867 70395360 634419575 627469780 961262222 413066558 278081887 710702197 556029660 336318532 939599520 308210496 726505331 988865792 973970772 521136709 969482178 452033789 496667541 816241615 468869897 478188114 925215538 927484753 591667441 297788411 766239314 993886251 532566043 511720427 613137869 261514353 92996108 631526875 705290875 859498958 161683822 815632105 703733623 481261825 33663355 945477719 284358612 703805565 288140420 755581629 712389679 321125963 251040455 252882479 13434726 980941904 213384812 504174929 456908329 51755298 318067230 595850253 292422491 111044472 159077549 883135565 254038345 240267594 855204758 397841683 726884122 797935673 695879139 233259163 514932656 519806088 387999434 489258530 515812861 285547430 37080912 730512903 6972028 120920668 651944131 574708842 2207037 688300388 359716239 636402950 986557749 807308134 936444899 378537863 370201220 975755094 830127445 27190277 626718300 946650663 358388638 278582481 573121786 151012986 447138273 253562723 141996733 519923955 133857062 343760174 928587116 505467770 353780955 838109245 514689787 793286966 358990732 547386210 692694168 375737739 499216167 61798117 579196790 280385004 471563176 450126997 909395776 993739907 930868910 520492692 356893720 207050346 868769951 840621444 98582656 724238048 207759163 444561692 982635186 813640551 690244569 56993145 631284210 327102628 891854291 39278259 150822695 867957832 958362165 499365368 473184721 2730744 823171097 110025938 584237936 134860671 831435817 972142368 318339211 889967802 455041844 576558329 762692031 366375230 336810311 235360723 601265313 169070472 287850568 854133365 589108536 910139589 318795666 880259668 491081578 15214527 923433505 608062502 646333730 757872939 753331926 760725035 166172849 918568495 110122816 200138686 117139393 961171540 764211053 174693464 421554034 622184083 714764666 941041042 624274276 923378808 27305370 767766084 709497436 690601669 514100284 611806857 511338528 180619555 937548108 298216101 661855660 897556286 271321080 736689330 241872541 164957570 715838135 125946961 169183700 766075599 641021485 538613469 437353028 881596680 356626213 907974396 72755254 38489040 961437972 527802126 658893733 139613857 567611230 930874183 642770599 149851329 260877001 969618699 313929784 905940587 657234866 910602901 21851787 155612268 538619579 895011256 760024723 722325075 37157056 976071180 370997500 401671917 498892643 535579881 211241095 338242592 27927271 972721345 718650099 950104920 432711192 624435831 486959824 122437212 796737095 72268624 167361406 833249062 557227223 639679837 699023504 822292053 737356014 139243008 983157992 60590194 520263800 131464496 181616201 832595041 988526991 648649666 880841423 149605932 304659525 602592481 39045595 35362279 541715369 596466617 617876639 18282889 958866412 826075607 515873579 508420690 980881234 424978396 504567338 282656778 603635232 921518536 547510426 215775777 423963828 505231742 123447112 631818231 541404363 68442581 536892533 416991808 159452814 520578556 888512657 27661076 334257185 341464026 181463170 577976159 375345230 425700316 795255462 228709502 640000183 472573943 932176217 106996360 171828623 489658453 261154100 768044884 361560428 859271557 901086068 611178950 452256851 336352140 27652217 903133581 288682813 347736254 65622206 134850519 97190479 976638295 699115129 904659457 953780840 62023773 435212556 449171801 963556105 57575261 608967084 776608931 207812504 973730103 934937436 831052915 806896508 431160938 73900294 917214384 780739175 539775985 718002669 864440020 855763744 961750608 699119532 191772800 970626220 269663577 405717367 772219259 137797929 33012957 340823230 59653885 615411875 331000917 915818072 17221325 136206827 952194823 483944866 891762502 974045154 222386796 58985998 575068006 352563246 574699512 688529877 868184517 506125616 722318744 157385456 920035237 306820094 617244832 336783814 812380349 625365437 459962682 744809618 152846185 519272218 163616781 779849354 317151820 640634824 805511030 226365926 713993548 170308516 893726225 226052342 844623327 973988888 15138194 156173775 447790178 565639314 679833474 407554781 564660481 944928445 52020869 371543893 211835567 727496357 661144996 475512557 917018079 834377085 847804254 859190885 124052723 273604233 780888913 880016760 478001259 218869485 654007698 932376274 531016849 921879476 537917546 640123718 250670088 720913037 729036732 75373637 714119511 571293620 79572540 212766681 284747497 733035629 470956290 308133750 880355536 160973767 979146628 273651101 817845894 750213010 352126681 472640170 938395659 925281948 455232978 418305676 426056952 269337542 430911916 361150612 195861612 384901466 595168600 861434026 118358149 243458500 544773006 391354843 151493732 639531542 875778599 54131940 687539920 139409136 936830626 736249847 270368208 612922254 50537918 358446865 251733414 924685220 361604970 579133936 355737283 33897426 804502894 373188401 700646745 724281732 534820638 850492565 337242233 488416664 908196063 532478865 496526772 195560349 262331781 256575348 406999661 450820762 349255120 608649797 915597816 304368353 331639557 449679831 738976099 27427992 276460944 992021992 110528265 424097726 594853812 121192446 117539192 112085368 354201118 926756449 669970622 807770044 806746985 427085286 937258673 195782144 787284521 637787168 155802074 433162872 264502652 437421426 735671083 623744723 230977208 671259368 979597190 939738116 839584681 788898134 983343502 997788434 637880231 191888272 276498498 50610038 14400995 294611382 185643454 384024143 3815241 845862686 931625860 229354516 761434696 712921054 610946557 575293409 94881391 765072682 575613409 364393883 107460518 917742426 170331192 274135798 615353520 647031214 421711119 830695376 355385590 920876321 193373080 658244575 550276398 19388261 206711873 575695769 380031661 444724 711687703 728645445 225631623 687803786 354713178 376440398 120272952 189084772 365312951 32951705 554600660 203308453 522621206 785301645 667168011 490842763 217577767 329071163 637690512 474612292 516616315 300074543 32627426 900641480 447401292 309233760 722261655 753477741 409643840 429991424 409138100 418006752 945459084 643732859 582890118 562297459 730306699 206738878 224023694 502451008 307358982 427186032 756843619 480229224 697853496 713945480 554765854 376336087 579773555 376997303 162072865 622339516 134660172 375689621 344006915 763602527 420740354 244836226 73712841 715498769 16977615 416283412 195875063 877238500 875310010 886010425 547301758 545157228 228569852 315278390 336978918 32186120 974232169 249210004 466122058 118250343 905024914 575312247 725477745 317817287 802988381 233763809 342604789 315283886 248237261 631305728 597210421 404287017 669052493 986041057 992568185 979922766 964350475 276292624 886039074 136909815 18557716 613758710 807765573 687104859 929733009 361127154 869446692 392698187 835379842 826017324 678226937 165954411 271182039 487966049 466612987 987789440 57153863 515005453 458422963 349094300 28770045 496838693 561204021 897112717 887114868 495447617 384916870 614661309 643655220 642891381 56781433 400624271 371773346 852404574 934724036 793180434 970353472 885707370 604739135 153899460 193240781 675716141 643276047 299016160 602823431 558227491 749498927 439482670 940301578 577105619 221506259 877941528 142604826 161428983 645252496 875724859 432967496 819349755 855052591 789262921 552294888 792586752 28651010 934506014 287157107 926359627 882014723 70523047 635444955 407235646 838610860 444560397 613080605 407123292 440138337 165785738 430555360 644665982 904755969 172158347 120073847 594473939 894131041 61676148 179765431 958580123 689530904 405169690 562627644 588191642 542180181 18979379 791376589 250637995 983117171 304859469 634915260 484389014 920938071 957264948 249871796 792851109 907451236 518672355 718717312 308131569 96012008 417027846 109736694 220511749 398371779 941257802 429415646 58174394 974644249 953445524 50438834 848016373 431140950 992298330 687090227 806444217 293359506 548423858 572377176 547462788 359725571 405286668 464656156 59373428 159310426 383545610 643701642 452982043 190864878 480006695 379592781 330116495 617025018 299519018 134969311 519930377 754966378 141374857 298499041 664611536 310157098 908008983 968778716 104383296 892748631 678703476 928937843 544317443 553294547 66717881 190078048 845915390 386995379 606562150 450014059 565486556 176623935 419574219 54733844 250439680 53158847 898543479 313621794 762500152 983731513 52244879 475015009 130463854 864754632 675923048 327511220 973725660 730958543 524980778 254763365 199092212 247093881 141959959 525995893 371889270 247074343 189719912 44056256 707581612 918663846 750000609 931459122 235860717 443263026 669083308 662391424 683246778 566312042 363307400 454152123 96750648 735975587 864849961 425132336 140436262 728416179 433016941 685017832 729857256 770076096 172749121 911115405 765154239 906555662 17232728 858659854 502878380 569538807 135805183 574795261 963806846 534649068 623999006 418680749 640704965 526980818 173028352 454455303 980994708 553857973 565712310 463914697 194574717 100069820 648560972 424749917 607808468 423404353 182218996 589105522 48346189 865119037 606602168 184782931 757030131 225779576 509722250 595354215 441887140 311410559 819875549 134535008 371246699 684506895 702893465 580578617 461973316 70968741 257513445 98452733 807735680 880811214 903179410 46449788 614391103 889347188 959489570 657224708 381187683 266349231 730516383 449999519 543317314 256860668 542467397 285809070 291102052 72403578 975888011 790925145 745841523 684725889 181656634 620076759 959605065 519070160 444488398 876790567 486257604 652361834 597447985 939823490 508076184 946410422 400906874 932786365 111437565 758458891 526079918 98327129 498977526 706667618 640076975 826964630 655731895 298962647 293889569 88762736 682899846 543815815 953218331 4388958 62506501 100503252 958675883 718365567 227683942 309949373 885833598 553542176 81633291 706089825 540277796 563031675 812687919 835873935 932053627 738629466 190843598 980398043 285785584 296147649 493853927 877506641 883631660 475458578 988537070 71252104 488022355 852329431 965180656 612496150 801989121 229499428 632415978 702467926 982696916 265074668 336015399 181984530 17330753 540331147 614258535 769691709 541444279 847191866 677609241 756892188 342401086 531819080 204940844 321041703 55389916 295919394 674166954 927703999 244879745 523199049 753443226 471544341 345187120 474363095 46347754 807618082 729853736 191962452 143008982 177174137 961754709 324500299 976157122 809144979 721330174 294921727 462651843 282701694 776899754 487430506 638815303 92797447 997536974 487720149 991514284 614794517 617389135 852851223 537191571 440779564 771190164 965085363 301549573 255655087 687977046 63549331 688663327 545553280 976292622 521624390 558284765 69776058 440665198 399168917 470537589 505246176 826895919 99229276 204073962 345295318 970693280 7741616 886044800 804498306 46601980 539441960 204304433 875654898 538872392 329566257 779973042 874432777 535645941 910572742 618813253 835456568 363163069 164059939 750166177 575431162 400169378 704120483 456538614 778922457 507388618 831579434 691967021 716712196 295972991 401012099 277576517 699809492 661129554 490674076 417021149 182760499 25415625 124810810 533350654 145790104 168290809 384035444 865401341 846858917 752015350 854127048 297080753 87670951 377027495 71560617 983361738 138457154 839142797 608464262 155985467 706835447 973759801 296727303 260570330 27930702 523413882 949915501 846892092 326801004 731556363 598329391 222164585 514514719 87773960 780093522 405042953 516436203 294363149 746947473 95644077 51962917 408986341 307737814 902441055 233389682 160611745 368854332 379886110 896200959 242617963 322528051 263278512 217167361 541257745 228521818 620818213 785964276 720851709 553508540 840949947 606903364 12433471 615374934 286688688 158796358 9173404 125260500 703637060 856508798 295059363 366567947 74687998 488444272 773254227 919456507 907731844 564682418 149213011 423217873 90057835 603731264 909499952 230070795 571101314 857660543 213714365 371040273 130895528 954744491 680108222 943855619 384324574 517134296 705773619 684215628 783323287 64486407 796088471 173830409 138824014 655526172 851280793 383065875 347844769 480240663 516597410 68596109 797099584 141440003 263844298 774092902 412287883 496512900 619861431 5142023 493136497 271917040 357596069 945933319 330814813 323301928 865055150 957737994 999951885 965702036 809002005 184050188 339175769 239001264 616389513 622776521 595091785 812385775 592532411 758350604 504563622 731715619 984671399 955761908 231449508 332075241 22208958 45669950 377658971 998233056 86469469 839149094 63223617 784695774 570751473 582511684 1248065 170834726 688260084 874641977 100393769 251317578 623963025 855149822 969990836 39543442 784105264 121609346 579739671 587731429 35007836 512481090 44594133 511752628 144311758 862092150 735956085 31974806 389505348 580755177 563107739 521561890 85756435 425989629 574788514 847505431 968301409 278523221 920920400 148954228 632272591 878410208 899169809 172048874 543996350 110414450 426513611 721545332 176008035 824040886 148799116 196740778 509276460 994921638 696713501 787886707 581325848 91953740 418815648 972110319 726781226 452650303 298489019 379401995 428182243 717775695 904964413 400484163 795411597 945939533 297632829 412537618 981630103 716938039 8630147 596982884 854487208 630088469 836075851 39933256 164430546 362887490 184449599 137844604 664380746 949963580 473848918 563006006 204179893 271974507 176422253 21619606 641962185 383731711 630454874 206031448 904236824 661439123 136706876 86339912 706795242 253283909 317323514 684466128 223316946 147569255 212031047 751842271 269315609 410337235 346474605 213996838 893006367 436522255 3960311 611715875 123592246 394219669 548999291 785090037 672936064 852524473 332907460 717532577 279658740 246745917 481565935 669539035 106807500 787962030 452416259 850542133 742737215 636073499 215355408 196657790 149945064 516737700 363979494 757025336 719757219 902428127 675425921 585913103 209429067 624525320 112253870 13432012 804130398 245912162 656528362 850393351 507225139 492692528 347525674 138627277 454829486 156172754 557901019 852103641 537190544 934511932 293034377 868547511 386758677 897125755 949672210 458593313 460698125 325455476 420817117 361047440 100208160 489842853 269239012 962982624 386171439 50967065 714260796 268052786 204506167 16090490 852261553 263069272 189453723 554606922 732693305 63476488 633054138 730843372 659415328 283480754 86154665 448381205 64135644 914039583 858642704 521892223 256099648 851620883 536350292 399033769 649431345 768385536 774439918 687521216 565100239 115819559 178426896 186261891 308046708 80192245 296994412 305238347 699469324 936710292 363015314 82042228 118411043 339036581 979663503 651796369 569243417 307703056 431932477 521091424 761044908 66209492 300566393 324812944 962886501 612673772 516613838 570690482 281669346 907500337 732070486 852173166 649525052 674218521 621511111 65675959 822727034 72141555 390962334 931507707 475602305 9593013 692256685 627686077 309776876 337245871 761546194 976762550 539223906 468787238 577023111 308771033 370682715 751742290 118257341 850042443 438922905 621954942 715918439 660514603 756113432 936095518 545584634 643110971 109452152 127379618 160946658 273588901 164679641 581060732 865763759 140004073 534291360 763337957 332242100 606919463 912866906 884260779 407155931 218612000 981739665 500398219 415115737 26689485 792404178 94058293 580465367 31301135 201756179 118948953 38505706 410289668 375796193 4822577 147610862 106704436 667391245 221820549 567732412 577970726 689959911 785432552 500239374 608085680 18926040 72532449 565373200 249919601 542184394 331887995 971357753 100844834 97692622 826071325 745333425 564328888 379527646 834430027 122227616 401621787 629338687 67942141 126299495 574629448 913751119 11825295 174965183 411138819 350992601 225496596 445136610 56470089 335699497 645749648 107481883 588913729 295845413 402173615 486623463 65944993 584761100 640433540 593020878 750100140 520487566 927489427 114819251 112330462 845861886 304879396 747821631 684612796 54732555 868347785 164249068 839439937 511079899 640605786 907355299 321370230 383752298 989631679 549631579 567558135 772278884 819672676 180478731 156457148 692609168 200921565 734422255 905149069 214885962 777536447 67637927 375841682 366592686 828444989 325901305 868426349 492262324 549136381 71985545 527148788 808523313 368828101 305711350 572832467 13968467 62670541 959940580 916720519 226632362 220005069 847511103 852438888 543462184 807925203 741374083 703282984 269685171 551202094 589102849 132949896 812791592 784954266 163695560 543632104 862944926 42666199 668616 396393093 898115402 465866385 503685957 811436778 835211564 23804340 450430589 392270406 689172238 489806097 29862758 570756451 259187637 64112508 93018273 585604964 157183268 296103744 674667000 307369810 192226837 181831744 933454415 961444305 771463673 724145286 855859835 665450277 306922439 611051877 995180317 713713057 722832121 776209736 285164438 117233294 99556328 858028789 542312020 93188626 341303737 444207447 453207149 910383049 904062699 521054443 368129372 363190311 330599302 595049154 163468727 621108802 346445188 372719211 350796468 450542233 199972954 530876161 429999648 388793270 637588231 255696921 188163808 760720076 743178635 627989786 923535691 498262681 247953198 888113113 848937969 468987728 930314094 517742882 846183009 404115562 579004347 884181234 30842738 397417765 248920720 304462099 803510516 767874222 265913805 285490875 763093634 86588987 876768039 707195652 367147843 275569190 476434435 242582785 986478227 129374427 592591857 450066845 271527113 276289053 66908590 248389184 487657775 5325918 91832648 176956213 442554943 838307782 708299227 584297533 546890593 325316114 220228709 690141205 806083714 360940039 909826627 721161390 875110364 95211366 938368878 658500677 165524819 548254671 195835513 821543690 909838109 455483207 623623049 357620898 176978385 750361256 106492294 499993136 126583024 385488549 773433215 950748355 487791968 574724114 969708638 131912950 451692745 74510973 712061959 46389570 298548304 111568731 727660388 230615189 835334647 728120479 483808651 862412369 556469779 859341845 257639035 18202190 4341878 648924101 579778090 991296999 769248715 503282764 821181167 866723734 913691898 244149282 367231641 583500875 449498539 450701652 315386097 462350092 891596814 211193170 687544444 417702105 502252816 138917940 555643318 471919589 263770050 422254965 17678405 770096026 113155213 585187416 705625206 691789990 997632340 601215275 346315940 811989867 160288369 748877913 402382092 603819189 319310774 101417947 530026492 275364212 901311602 966593975 932773191 903647544 891372745 858651342 141397782 203351257 223476576 827770784 177645042 221080955 647778318 58128986 104315663 500906351 446065734 196698555 365552422 856001813 556083955 338775084 322610242 36453267 101577874 606985061 551978121 749318309 79220465 30868326 976719201 523047826 31102215 56147203 654503397 230934000 811583013 192208832 87560847 230033108 566989225 708597733 976097741 380942792 117903725 585131415 976823416 495230178 94470730 739586024 163650909 928045501 791459200 766648139 358149878 227292737 727296441 869051689 904876356 873857148 518072825 34546694 783826228 529365520 204638143 323535432 79352174 797289746 617840598 134965928 833291123 825152720 143975658 835444764 460464252 149702665 278912140 886151959 3208540 887602137 767730504 283082287 972730283 480124182 826603796 302563942 972178616 285713361 249830528 753990363 13619665 120404687 600044772 249170218 470204932 542986276 361461129 481399607 442383672 147579290 493360882 471416093 189092864 144718250 583521825 738959476 870550039 144379271 664907576 578449267 408802200 341969122 939558769 377783696 442034713 427401471 172978751 339012420 619333659 690293106 405895881 439740570 954787232 341750052 269172705 95813206 742678261 340305366 273783909 421763097 997441553 298723496 564951516 677782281 118462022 727570407 517084800 12822261 454924092 34945313 821026984 496723960 42449548 820142285 265321147 998297128 997824611 454840944 123103342 181574313 970066810 494990216 791614374 300548096 121656231 141303174 153984012 537910312 707986932 798015150 417366729 631857919 143950465 463658597 912459425 913219513 844342520 570157405 97706327 612016271 996354713 593795112 898787858 455965559 475101140 661790677 722329866 637611528 12109343 754647950 336009570 247624746 775490943 853078867 411661284 996635822 307720884 638973234 918587061 573053828 378542440 823846904 954163677 218076066 992821177 643780744 705142615 284499458 55294888 289317029 225159838 133083998 537574531 541047698 617568616 310840035 164335957 69924038 369478849 861858678 368718709 340019312 993039871 955487613 267318980 574972489 430228490 407917864 581865166 87470524 631793191 736671508 975456820 106819377 478501038 960312923 929695688 307572236 947559384 737595507 300166874 942492003 462797978 78131293 613494550 195904082 716430055 978060506 569695495 493722871 446619075 624869275 680354612 927578717 636846667 648598264 559097250 943864888 325382098 158571049 672263110 842818257 222241989 580630982 562999149 447074034 160970784 333624097 543250721 1267947 88620983 75063452 556975759 406835139 29786930 26674109 955519407 535384100 970205903 962942434 777116578 195827937 186591234 807587693 634655166 107806285 924984329 395767048 422058558 725284588 407796255 461834650 432578107 843124136 860547074 59814978 701006755 534851710 473243526 425608755 843109831 287648514 497857983 678748363 279690982 722245700 759362595 343728309 109445333 436932617 495873291 443021292 790798770 953338570 357083360 658134255 139396892 697221425 667315181 830807936 835627806 510229046 672641095 236984982 156663652 683842771 254741328 357593308 19916094 988265231 741848558 362628609 695781381 565183552 190295004 933882655 823631146 37415861 158995373 505753571 740143606 305102187 490630366 591255044 856212414 601496570 576909871 269071230 175966528 5477502 298359016 846206548 591630965 833196815 843506712 487505803 516535680 29512312 653471230 995416986 769291586 500655567 210400711 804902448 568922929 167528110 158327632 94189272 690321090 822700083 529361129 472751689 89047376 413462089 372546749 933382769 453551257 783591311 258425593 618189242 630225600 656566646 708932308 218931481 873501953 526915737 105824428 25671470 905128759 518706485 257389080 413858208 109901993 249976469 720137634 595833042 976124186 899279018 968947702 719900522 26211543 844377828 568237830 14800803 355493754 870425917 993840881 51269887 985031137 862523380 137069065 334557358 90682542 75299708 444536395 54574644 505057531 172379974 442864098 269423083 729906868 787147745 567589218 527831849 844596806 832423915 689254275 963021605 408542681 339799405 998337979 562481572 324613908 630165128 413177114 576298263 158450231 542898846 283910554 317476398 614562422 961120427 927684152 523992034 854366489 162003703 73632229 391215122 331860099 709457126 858527476 687182864 84559070 978085669 563290768 866670451 865352767 834990434 665665001 869061979 763249919 887424338 770325494 12161390 501582795 92036046 230805165 737264860 718190054 765526788 250517685 734057041 570090885 593973115 927975560 145678046 294255430 153983113 938879240 890990270 96650100 683741629 441811547 184382956 869299760 270333722 884652931 324800185 297129455 30841857 424491444 906941461 688871276 711184228 377873508 951088889 630323441 503964419 200385628 866726964 388819355 787041370 2666219 135597306 328473670 365150221 899556655 381488824 43731809 53812531 401545247 331759129 77490599 406696161 834251722 48200114 949171228 147801372 467691835 538199377 309658014 114223798 733430962 670299677 160790883 817604430 42031661 178001891 282347737 471695972 96577265 665732368 496854958 199128276 515139960 965706345 772534864 211137000 196447997 966150566 83816180 510199555 524275145 100225548 398738477 761911099 686159246 783701915 329888644 767377073 747967765 338794035 743366379 486156287 195765382 785741825 869389157 74111824 862964435 351867552 794204094 619565840 602495760 33997148 520421344 453476332 175551688 784171529 582492263 706168806 977440554 330489016 531848335 940365347 364473559 89413319 577429078 179225766 448000623 55884742 171171078 621694074 882525183 313113297 494180880 88858804 869913976 89056619 139974349 135961413 191023182 502397535 338657478 253806594 216688861 224724781 999954616 568230565 502627655 429738230 565178114 303437278 782123794 107705547 354170624 685210140 307393259 465375627 342002164 599050199 260589962 917755140 193735817 958069096 627316810 923529667 942979263 816783553 384470401 240510825 434694072 912783448 664716094 354217653 664533734 737387916 948011623 959335846 675931548 436970893 433564201 62044590 910583967 851902197 129556698 200568813 585186481 883594083 490706494 612202350 296657734 636372064 96886233 621531145 838501772 857895591 951380924 542623559 566701306 66818874 133408237 772395038 547206858 314764252 227343011 841532031 784271544 613107028 878005177 956508659 269862349 258558372 367568279 209368785 533874040 642066727 724336583 364704841 562014074 153028501 427022748 264293950 189081976 930947176 768314741 564068488 896059021 452711925 996685692 68085019 126975632 839384892 781299837 86727016 961064101 193841167 13669305 435493375 454279411 18822271 338916892 101399180 856697470 122394140 548157788 152117382 462523026 754196530 800305981 653541165 145206294 881314107 368064465 90956934 143824326 287956066 465489048 538100638 570958596 974597041 293076722 590994340 869263647 429847342 206977432 456138091 692723391 893609081 82099630 536970083 540442651 983139911 41888258 987606543 608816540 779883885 729786369 35899633 119257159 76770371 440199840 692872744 663974434 17404459 429021567 326409934 292226925 831297708 980674952 987212068 801510306 814272049 616712419 917686906 360988034 33194183 877511824 624462750 483265826 729860153 78763810 991037023 731247351 376734052 520360644 114151856 497566376 532605579 454998881 478725971 34905538 907741134 940357725 609450489 613738376 268216110 737820676 240085976 996711685 731330778 898351922 145350638 20448063 754332129 756244797 671939841 160561194 848678530 224947769 768501936 177752724 294680541 425177643 699126614 546046289 209506762 173091262 594543367 118737279 617749904 310835335 988482049 284949402 840796614 501009912 667572534 30079337 42308856 260077743 164688351 59346839 330681401 424536118 62703431 202225510 130564954 968927362 657349865 889456306 703067399 535793297 669989695 444366206 709800615 321707224 227979009 467168267 332335279 673936603 373993269 714667879 129126355 929829433 226920403 805894217 737782711 648081586 531646158 920553491 574011706 495109160 834103547 692834126 618309212 350628359 487644053 31246805 740627768 54708435 267263531 557454534 626407814 466051508 632751668 312091198 740675611 123884781 54810666 35137806 438128099 971463899 835694974 211575093 903646043 13904508 400437075 812796613 830079800 246794120 103623688 63548190 323170148 152185561 603160728 783383292 721152173 903924205 617273182 273595957 39309793 21230574 987276171 198042736 185806589 968970209 810706795 814541210 738038139 408181190 267423913 18699067 976696976 883620943 155863944 100361661 371685533 315604264 636044009 35002625 733442291 708039196 69950020 797882517 539243724 262880437 225809449 424902855 22643725 218303616 468568856 488287846 989989439 681182238 866328286 173462635 601724479 291988291 288931997 604203742 3837499 420922524 136283245 762557092 464171127 607880785 31170200 739518659 707446808 778596766 558947528 462405993 417583246 491033977 144459605 249658795 348126673 529841381 163625836 141883111 854530204 866943183 678859822 158604996 460646401 2609462 482980283 937499602 320354484 562521642 538540629 741518782 910076798 685544071 622506684 573840078 767377166 935456554 765135090 546929147 206831973 908660587 367182735 104037150 18579343 846486928 815416461 271082200 848374973 604022741 513924824 879772333 801177158 821004917 103335436 858714539 971087922 734672952 885399687 607842539 182169767 736078245 645217337 421338233 734741361 177812945 930930590 591612214 752054125 540567074 539548211 656505656 780075358 763018524 472874109 322120355 460892049 179564614 37398393 2044012 699850869 96431382 254053230 288134735 901187638 950949592 208667406 828588383 573758161 528335057 885181474 665523000 782567345 271956487 642402456 903729110 56351329 935377882 403294244 49253435 318232455 145790833 805730186 824368902 3341669 177692396 187327877 246214080 466089384 536618568 634488488 918698651 15856919 974334622 922638058 628816354 143561489 284153824 496450282 686468739 744524817 820631631 496804115 990184183 730622668 199840610 667696745 621641943 668918689 369055476 279088710 711529892 406678271 748047592 844211083 281793296 800513749 789293566 318231663 752226643 906160130 892222439 918417021 406448787 146541046 511830837 820161362 333737307 587925886 977751796 243589262 473172656 169794408 610470554 197001484 219612211 165343039 396309021 559941022 798530227 27382296 669051769 995934846 75795712 387632912 40935058 945646024 666489578 618204779 644248800 296289901 725244818 322704292 232232464 348865378 628990476 989077033 527232563 144917164 373958275 760355357 900146120 833290619 326475544 943867456 616342695 906810551 513054206 848660471 606618541 64423324 248198550 357342470 407517612 46351188 667401295 494504318 674582875 233252790 752423181 190017139 833821892 975960622 957395663 718731534 102185159 768284583 378631903 522805006 965283163 842598550 905075052 721259364 218937266 518233435 983431309 947782815 572366177 274934033 916698070 750326058 582194208 863348043 808702604 213626348 299002510 853837247 34565163 372093508 123416347 73456552 917457763 885043043 102949623 362833374 174580503 955573958 139688107 265085408 287181781 320392820 489970432 928237551 922729297 967264574 914319021 390561474 729048236 438824698 896009060 699331733 650004545 443818409 655424761 274952911 573056286 511007687 633243622 359296720 970312772 757518510 486581314 429431224 104274892 618062520 134399053 521025475 665522932 932148904 500787915 380655989 644718536 434978025 774110713 79408973 780233137 223844906 313631943 997730545 756646686 895070008 433809610 209109094 489115306 963090960 719910281 60805543 916799928 26111786 180679332 97829 722075923 426766016 223229246 659492020 665816843 374692498 757310307 318226377 257325710 379898476 138994152 459612613 974802764 919547353 339356688 438554804 389009433 191212304 826848113 994321748 678881375 300927836 854886238 991985634 89241861 63462743 503119542 989016583 361400371 418551707 805642672 761566545 563850959 976993533 168780370 137423474 760454328 668480463 588486210 873755752 532533805 121121314 933151642 438055735 278171537 459660208 96477192 825615938 951815270 250637160 704392211 328519999 259209787 27040646 427123685 787603834 997400409 977123233 801720687 843753580 486762640 969269227 704046195 461791534 615278306 314611323 712037189 905998781 789321205 288454671 973606526 445397687 261838132 68974405 742632248 832542787 303102725 568864192 140153349 143284178 289804776 930707590 505155569 792595616 322507654 548943408 915809248 737963905 848442477 955476208 146465005 519388093 419156389 135989705 923878679 513696403 390876225 663693909 668947618 589587171 901873003 570131353 708835922 930410515 468579765 148199870 602630851 66920680 487388431 527838004 234137097 473710353 344284816 703524350 224561273 448015804 173918266 942536526 849851322 376920024 423229119 801620573 735107255 933336203 560002933 104139877 152567746 28467437 2476436 154318959 538963935 77043545 467945692 262363779 358031849 534327469 727455303 928405653 810838255 855790003 750933980 482008618 499822335 343947297 152925357 30961119 249118208 756158848 372480044 452035059 346270144 213239225 340227507 567562160 451921417 558016643 592954112 364188407 636259225 911313736 240231466 380141944 12852080 162209187 228154853 980090108 563779530 591157588 366117805 607990644 573541405 119487001 572110644 990468641 796110505 144877090 176038024 285798709 113293012 934868915 189576472 675457327 710724325 224271344 986740434 766055699 659934250 249091818 1649792 124480740 826168265 449482152 508736796 896489302 251536235 709338240 753632427 385104010 524390386 413504086 682909787 352269951 818282933 64188295 85362689 895981817 305566596 476880429 161408986 47806316 807708639 299517013 28573743 988529507 404470842 517511610 20539310 234278539 122150298 543678364 701378672 977672279 62519804 410658134 308871497 44255792 365986020 899960345 358592796 904410651 663171501 482620000 809641874 902116368 507936742 583757617 385980626 452171381 867776539 649990749 785854816 522846616 44421207 490715452 613162284 10206661 998489956 207545988 355144073 201104487 232582493 911606311 669727050 450966698 59176365 238283377 903437982 902116496 987312195 283125721 826359704 637364032 636728282 61216511 849470993 335328988 629169685 554829971 657614697 994242870 221455934 32165181 772497792 842396893 501404537 779979784 667528686 295022455 987653422 211697637 916016442 468221328 186868491 431675624 215475046 406269151 556400655 697889244 183294830 917406078 211047369 518155345 697839872 647888533 844517005 166778856 737214885 543677354 380996301 802951976 87282940 397355639 733187441 851859780 393327676 418395045 388009664 580248490 119896068 719888040 233028248 483737854 792174075 41603316 175441037 88197803 192680524 238140759 847977754 249826432 841656410 971243829 699221813 691351368 816470697 838931662 311818070 322468700 474079111 601690569 886824879 826810721 894263614 905017771 618265784 478680606 469552999 65885772 527582585 20514745 96627978 346924986 126034459 199092300 923483351 314727707 975924219 361089834 660885581 202519759 656719303 905708068 460879372 942967549 933554289 464112116 75092501 732907495 798586924 895893393 314779032 394056725 23876571 98515883 744189877 433783209 330104897 478672854 839081145 319686497 362754912 382612327 418073412 683335617 609056989 924783605 909807217 842427137 491037212 340616795 567318417 575973229 996577660 67732527 981267180 815778290 13739946 874319994 672669825 84623100 590964983 78087548 601061783 790562183 96495446 81227793 639525173 705058262 542725030 100132315 47574118 435776397 349943354 455940522 491811569 748206061 996053855 985255221 955284940 368917963 910747577 377847335 237803574 521358917 743062650 97965039 62542320 852967868 810644215 388890437 392383862 233993310 410388972 259143798 142968870 458095135 358697151 316074362 131670580 803916744 317888261 597759746 78600493 497635421 819036761 441075358 577718304 720886978 823607360 94735290 498125227 76729095 190020909 39025755 178658972 522313839 20563946 429336975 984917836 667050910 306410243 126780656 133348691 714298660 809966320 874065331 286493522 164138896 507587507 107930865 133794977 597272884 619880506 939378514 658633022 679790537 915325336 196724964 43029260 991255207 795477042 59578776 878862649 920750894 600398151 961500437 699846961 945833239 670314262 803028621 70930544 617606618 560654029 622130371 592891772 643730661 462756509 566643887 228737391 371031156 36835836 966959128 623575739 339463811 193635186 244770262 399850290 215239071 765041407 471587540 30493486 669857900 409855049 296281023 681367202 535388088 226004032 983193685 194141815 177484764 951084737 231202189 104381991 784435134 761189847 281507529 659104695 649419331 850683210 479863249 543362005 870221563 834397520 992707971 954690333 432987881 622508344 371016080 712650650 64282122 204386590 998456629 9684072 346105597 376554493 93174519 463338220 935126257 320180576 654361971 570131748 348462113 396651523 475168224 823340876 936668860 696921852 529002142 334157981 238147931 10182986 447624250 604139972 209617669 838028416 603383759 802519306 416315293 529615927 291597526 183531186 350031001 727775257 213131304 425259525 59787913 242655882 590193590 98762167 990152573 413238193 175853518 45543590 215116711 426121435 993263102 816588070 724859609 447325495 672965201 982688443 930067248 46136978 488639171 264435474 527134170 814294607 468377898 99270393 722411723 274547317 736481299 550264307 717827763 32805095 932746006 73203364 913577581 543349482 629058506 610071588 955356844 338174880 557370118 535201880 377737159 48622 372024399 747432115 791892387 807487542 591812732 102001670 717738080 344792556 998915401 180822771 772560395 49489952 633068123 188008276 538765687 408640967 165854321 899170342 619579483 427849897 145137971 608929477 288312287 978096829 983564188 620002803 521037881 233109292 95965728 436546869 355348825 107851194 678802877 662345573 19607089 559187728 784554467 704999688 765877343 129539187 190327385 957086504 281268424 246632485 674441289 459711420 126866058 873074272 47861836 388541454 667930542 661268565 781210482 464811240 282004310 467207156 729370374 93407248 692082543 201484567 431832609 815449734 349863135 310404552 282002660 877461345 760323525 250483738 504859496 271888886 737610637 708333986 380594821 47476674 845203326 82782294 958279926 915949871 516825913 822433270 386863264 140790835 481797632 710009901 403480594 486000063 91843988 415666951 195520232 904321384 597607879 898216171 559451601 651535996 863998466 972520593 442776520 768956912 798075383 737605572 954132382 132884675 733497840 437587714 750577844 183898624 205296231 467098831 516093349 253010086 710354575 407870084 921327953 174031038 531266196 249599316 580519262 774981335 471460284 361436341 412072040 83851780 924295270 844280139 717533501 550800857 81260832 265384438 734831167 787686313 90412309 607167804 535918230 968784157 478733182 364110697 734305033 27872446 846670575 480021783 416390274 313882783 95685269 604664789 868130564 500204002 246352871 168398029 977355984 443092463 439734306 519605493 421437543 218398047 959095300 618786951 764989039 307781977 476526604 468800625 303694791 828514240 943060081 393751710 837473975 697092208 998693414 545410419 261818285 110973074 53999781 268176465 889626495 498899853 130885700 457214665 618964852 351345513 346844075 275656986 44815560 746425483 29662613 345906939 262644594 900045677 539871276 118404589 474608695 347269965 523646454 624699172 242708934 67832285 412431492 341321926 877275873 809159144 133230845 126315320 74984476 170713452 190563831 174626412 775908087 694152643 581191735 805883425 139810405 861684534 112889 12600600 473539103 110066519 927910044 602448704 353582448 352142124 252487013 26682529 438019972 310393071 610859370 945190292 341922007 768151872 513431386 95725022 964735591 232819598 419695468 511869517 713913889 439660709 153694986 176804311 526657839 461950894 752582590 126223534 767029742 630840785 608560885 942134270 15010106 196522290 766151979 932792751 929515084 157384369 761766457 967649278 358811833 463698900 981677358 281959712 285266417 177666348 78619329 553459646 962454365 966356458 414104889 746996191 552335296 49786124 923034974 219195592 144728681 627251084 157217077 435260083 754328525 40285619 51558909 306301958 146394477 864012362 254773182 584035449 498186755 230505075 176246235 393161922 84240711 764043144 977239090 445195970 570800348 347375704 411254339 904615124 922903898 498420865 464664806 745392171 515893045 124938837 791615996 507396311 963823094 773900221 232576014 704494403 45250535 512606902 549515510 102208331 789618044 318141973 962087999 375502652 231791056 520313108 970045130 364661438 900566626 589898452 137628341 81802261 43546131 647438987 101908989 61823037 611122483 982748360 595251731 12080789 649781620 316458619 704464181 803803203 269860157 928195136 197734164 679995319 774546184 577698244 561274697 997063299 983701483 158656157 726283640 356671243 777514096 995046437 730066778 146420445 467727584 658667946 596399425 712180074 136297192 732836865 887978622 326360794 127905555 222866454 945942145 923767493 147952104 852382163 867079860 865223348 791650930 394637173 959675796 917442407 787454441 925926042 135699188 503251490 637567025 542785434 651467107 710211541 716334423 706392665 184342109 168191815 469336426 112452242 877716476 869433881 727906706 889155026 319341998 612925460 943789799 602236893 347738326 79122273 444760059 380851206 133987005 188205067 800681749 935318895 901062575 237721016 344480135 994874431 773296774 826911150 180071350 137021150 686689998 117908010 771147315 360775255 124287251 25020678 342142399 85696100 337477960 305157424 937593495 504257024 553493736 444840115 47508249 822789041 573527601 570779458 553902799 762318516 976368305 43476718 326557904 998866151 487230819 222650267 975398695 44316179 205530370 34049578 736953068 888154404 79198354 337584967 385203181 135707961 939202023 314942174 923127209 168953540 369215037 152423653 491741262 852309435 451446246 424666459 778227494 877615308 393695899 267469677 923117369 976498030 370718344 559785069 517493240 51932044 912738090 406362911 151359246 631967975 639455805 502163517 749204819 10853307 796284689 728055861 328357335 325377431 472266632 829489035 614785507 885209296 416849968 394583305 497478587 318519408 236939428 608201530 837447863 865384827 531424274 588031343 910116249 380990880 409644289 825418630 171670781 47776678 290639149 427654427 976124596 28585897 867597087 624487974 220063477 938830466 521033925 178612492 27712132 912153836 680585810 77426153 932445676 168857934 558455997 375580876 315397398 653627822 998826167 805587132 148829067 979732217 14475030 482159836 944891988 507149645 256881498 419856705 828041254 391973451 161019109 422120359 548404645 485086430 981748368 550400575 912804126 153338810 53746388 819166936 443023199 132982065 40131054 972628693 397845837 402452702 35296548 14881425 826540277 819565315 761966037 832136232 988287273 344157677 455791739 127955036 456853052 119642128 303093151 967706999 314143263 27467770 395494151 811216032 343568712 74815812 979977168 460253261 502981456 213920846 741681875 890849538 208252521 175085231 911707635 728476734 682273160 294068462 325495 669408386 113553940 165409121 357464570 841442632 428291456 201228257 773883636 449030289 309607278 195681273 376701018 552927913 785488151 892180516 480318477 273828234 947689495 145140616 255313831 705053571 777852797 770849258 117359595 423543006 810193888 250079134 246459094 510741880 152041334 829261387 916257111 660346653 963544555 782463192 674708552 5929997 733721088 96366610 852216920 725687079 755846972 422871018 635147668 613235391 646185531 815447229 705477225 953989918 878163234 951681007 746792976 34654307 422972574 3831689 591587099 724704050 676557787 351365995 375664863 884376931 318352080 148566427 826343757 480008639 755374508 193485272 843627038 695062764 141778859 346393105 354493399 113351778 152162718 111066211 677665620 966513530 710227702 478224306 42017766 14501588 702451446 523760230 705164894 595324533 62920797 716639990 340509791 106932003 871398276 358688921 666938639 460409025 869871095 356660795 57501361 305082960 422933689 697628384 191341025 481067631 524877674 718265476 38955860 719617808 177405509 969966282 602132532 245657648 278828373 623803699 24113494 179413217 851401175 277404729 461797870 898306360 864254942 195049589 737444456 503582753 458490240 113969974 529413914 196862579 630099264 387408071 259287852 57037599 508336436 5791372 561253944 178992919 375172925 943551732 922925244 335096087 834049779 736471767 814271880 395314847 320076952 417189671 751600405 470994451 675489126 74501756 978208717 888732223 86397867 107995261 329050118 38073900 723909093 88875297 864852920 868106980 770687389 299115079 825414423 612701297 824366662 442019828 234007121 503361657 291032175 443603147 231237416 705146357 23751369 546179217 391457663 623945027 965749907 710133841 770464088 664565127 583875744 694111459 327775492 345091035 13059273 680667753 335177413 367341472 871775993 40935519 656000649 37955616 129971857 256221603 723055762 652955308 436125235 967255257 528883170 295032391 649816077 929304416 324356228 957413712 38342923 570045927 706038505 365157812 396695276 637089513 531208809 887206529 539512093 605163115 778019722 891161538 711013045 734584490 667230539 392439650 199345849 767099166 368793060 841170001 377612107 946726639 590665463 775917569 863893781 126635743 235169428 455479808 115147086 786369781 422052490 319834403 149102571 489030273 410199859 472916892 710001677 709842480 595152192 248566471 549588972 256278401 101897974 325265174 260702196 420924737 61302635 467581583 822079112 696835217 801940971 267233671 636186879 82133277 716118246 631069897 532482403 992925386 322595519 371743879 44401020 991253484 946404266 243692232 44965007 36233894 719594759 897015090 417983964 952222024 195746431 233097898 744599984 363169756 480752537 659311708 890974723 44594621 250664683 202022410 176440596 954383543 939524020 425322779 420915025 126708011 660963268 572893105 301446235 574087760 465332468 148431816 737095502 65709675 954803717 297859372 365568533 79541649 868429660 402234911 872576025 455493866 356038688 981050853 755308451 270135932 11041882 923408933 77877797 326569775 667669796 679425538 670612917 82068964 556028709 113919206 139592637 337934958 157298041 676649579 718441065 973983651 463102910 769406306 842510338 35564544 376219253 638751481 637440301 537861669 572141939 81617511 642891880 932623355 175672668 461268000 777037901 208508759 664271864 755118863 685266676 81963546 142991973 305081616 170449087 213462631 862222475 744363880 324612322 409688455 935529565 925850483 251947021 883951117 910550531 396062937 584999928 528105346 219846999 139536022 945048604 577934127 83745575 636716879 948475068 828095792 159902881 334878952 45506755 557582075 60855520 756870807 109221752 32739155 364604520 118277999 111145168 681022000 580442825 318083059 459386889 471158059 817653779 642802607 773842632 180053973 984663059 988426402 648398963 198959078 698367844 521605141 58720414 841157569 618218157 844487787 515389748 22186361 273309037 719881303 427721461 240062220 394672525 576164339 857709203 168138264 950725577 770506791 924436182 70613487 591080814 454960532 829345883 423849562 934147516 882207415 996647255 206128925 725516013 429136659 797967526 296911154 584124957 309962670 256947832 314550942 849711995 734128225 755255246 2603888 345264615 209267044 537987568 536023453 224391057 602831075 362819273 478200302 388484889 274689530 454717612 374018261 39819566 567953832 625998230 980983555 719278342 978105091 572991859 518120206 254546234 439820605 371490170 706842277 107445017 154074809 386653175 954012667 976222023 325120868 950769020 723337311 470679045 745968190 913392482 358591362 304113973 878155912 599983016 1322667 1929836 294924214 594843033 328151125 108317899 11042373 731201385 601476994 676745361 130331462 591034013 543660828 377396708 39113989 130067025 601641607 164130499 509874618 202237939 529545620 466926230 67180126 602170843 929306706 472054696 231515335 410601167 505541498 160940982 831374820 678929084 460097391 499281091 285057979 635038557 903579461 888820217 56761231 126762633 745706342 355145884 479269622 157040329 803400695 114529993 262576264 333064339 330010006 520595161 829956363 541184163 736449870 462668971 989972368 251531386 555666247 889470923 706273071 329700430 796681559 881721249 151831801 384128994 71087671 412528682 428255609 169253457 787671011 686092501 480747618 795745558 8848217 128164312 888339940 110113242 186668950 45081361 455846005 523760904 58792948 252281164 950222678 124271701 399933961 681776638 442215126 366276571 722748939 753499704 452859149 602708879 494945093 332908155 720068533 118457490 865654516 683528201 450274598 494342740 897108800 873147811 590890138 705781190 345888497 609998831 651047597 104132547 210488129 749596222 942836994 338874269 736599198 591769966 105194304 639796857 713191135 983627168 392410652 748297764 729077139 584890480 58872872 394427235 118581400 248348395 576067344 668153435 313093851 870882703 579174731 878848177 395579906 469700129 422236122 958676498 684079424 889676808 964061213 702002660 968391096 514321130 220316772 283788247 12437005 919554068 752593984 341638230 305948096 324950422 661245345 748180649 201969902 136459073 458598939 293244633 45417956 588504824 992454522 993480148 222498971 910287359 272809347 564725248 214145700 395086318 606411705 276143323 394643225 231836687 516049055 199146126 145371213 26342666 866428881 100980915 474654001 416772952 579751280 818437559 338438179 843393159 72943075 662671854 719851580 873031089 680295907 42085831 428153760 193669326 179638687 304683241 594267788 556414316 452516123 408699949 532698475 823820644 848821129 665745787 497464940 831817245 964829865 13842668 508813159 521518845 406309681 765586524 868666933 197235966 945659509 248661820 11908039 733985224 766178540 939411590 34698475 67227622 256447933 283779831 810728574 161538828 450947073 661764431 891530775 16606374 551142644 905185699 848960705 855440663 504927251 927093293 252457020 878364593 670825277 274107625 76203074 146707540 248195576 510317633 917379441 709490013 104663646 638612166 745085739 222132795 879240072 190065164 445661751 671052757 871810257 716183248 5522850 472533933 305622887 421070985 105901534 879347489 809949239 319571719 165900000 169531747 150881678 362225597 979473084 601382645 106434731 392267220 904696170 603107243 609565145 156757452 826709144 690058559 425971371 723409864 249493769 578503954 653447103 39501139 56402105 386001969 292206823 566161934 556575794 62593073 929614629 568769810 726126594 322017905 912843596 24952857 911256625 3598939 371823078 181303298 118008440 43902865 831188163 947390924 340650035 672918759 540168957 667033823 553401212 227084969 21651456 681117594 310731331 794987186 112279299 667163438 391558137 458576479 730823108 87587844 313661312 313070015 9138088 461148169 594582126 928066808 699595712 128065294 853803981 618798487 980374948 863426001 481413348 877229887 390202755 249430320 742805201 31335915 828156679 383430329 327285263 105981218 863927647 613165143 264940755 484013666 563428604 30546699 596455025 401726963 346076328 225489084 241530173 896100636 808347013 532663168 991569867 417183754 726007310 924713566 55059657 432371277 919139896 844130060 11904615 36756759 45521297 871719503 228457319 606802653 133321319 651672480 381365808 480120726 870391191 615990867 834476292 633364929 276228383 795934924 579660902 787873273 519430547 953198088 297302389 715374513 898158726 780847762 212035575 48943678 139923311 743909644 267602485 307000892 955826163 591749669 216106308 979804499 709450896 656256651 846203770 168779270 546767236 304170195 579175657 19896933 371015800 268496423 53076640 747624585 418698938 55015586 310580890 89380949 49355170 358974445 198877363 189122956 336797788 6201896 170633633 474648473 410903238 7053821 152565219 662482944 16820323 518344472 517694959 204036585 493503062 609482039 450527876 887073966 300532836 226857369 71777143 569685353 583785536 242276316 344097765 370594949 134534913 607896355 702443240 418024092 558996830 838509903 300311461 925236537 124064666 639987729 249512487 744135633 713819556 351666439 294844049 702001723 981904565 865289185 789448098 677265070 311268029 856872596 893777099 769538306 75622538 49957914 231407522 780966064 677848530 643836729 430334628 368260720 363419095 755017425 883476003 431255920 849291550 539376530 355698117 59473794 466793997 530696101 175697288 547731256 559961594 857056412 885585021 500767917 271632112 856708667 946272296 630235983 608319558 410851297 386198091 280236312 905931791 194084480 608428658 4499271 888356776 749076327 428678529 713670570 906025696 589750991 317345621 342003722 271703532 63946398 786456 689781405 555439267 57574370 964850301 784759431 719935820 369532511 369369480 291446757 822430301 121315291 230434821 691985690 254439084 209092417 836693173 874146490 967604998 719488031 191350033 577199780 592916443 654949923 225201312 604962129 469599122 345636215 943766680 856668879 240033907 591196778 560791039 706286544 374428185 584682533 634927988 395435518 37453394 155994704 555982155 772090078 360721333 450209305 830771831 171341758 651788310 121442117 18675299 520664511 209854988 162614953 865802956 483577691 680883848 414693203 506952139 737387159 584416954 129277787 59887717 350598356 37303004 177466250 396388332 522325115 322894360 185427548 988462345 760018818 919086634 995544430 273700694 91951699 249265148 936301706 360567197 793457905 724859012 530418222 402192398 720792879 445737826 783028213 256513968 763603058 10018064 701356318 237699469 125587179 190073797 907518500 542175667 869203400 804035132 260271201 333799632 168616294 439934882 445031667 87916146 65926498 422991165 373934113 499218633 225108742 963413262 406233517 132787145 899780397 535474574 696654098 818248189 712640091 393901888 167626441 518208106 932997457 796384355 597575820 355231517 470031931 364111541 535422802 366082260 738288516 412660642 617140465 80877139 99188823 116659682 583062126 444157321 324818078 432560287 453644046 391636533 93910200 876513621 523232409 426670576 712285258 424634350 616402250 515473390 212327091 965052220 613386950 898134365 174714240 847125383 306325640 348256127 628767562 94085500 168064123 705910618 872165836 237386773 164800829 838495375 268799280 130279231 820738960 559012853 34334967 952825483 255735919 459322648 279155974 254977353 450008797 799850263 461315574 714914786 257105356 775862685 605244899 986062348 661871906 681226696 489070940 629670297 685282579 307228800 433253704 66026957 380598029 226345528 483748105 814460127 869956946 835838553 404428075 941693486 655994256 687438857 177488473 192810245 924840401 521001671 971477871 449052825 985829407 682855880 511055937 178024073 874120043 543267324 578658098 333414912 374303531 386333239 409667926 102179933 183274267 99536110 687501891 713582592 267960830 451401264 362048896 233257099 783608159 717930824 64695619 339155920 722557471 205971896 216377626 971915178 118982716 473688298 252750292 177662914 843094241 489388547 345241613 594977085 59715669 321674856 428979249 468844069 108198269 97808390 235148025 776708321 554231838 7989762 184263547 363461152 124190140 63417948 126998649 783305456 624069750 119453164 839525414 807787982 724146286 644390089 473376832 370349047 106404046 162076159 691939296 126765988 603550440 44106533 756876268 974700200 402808631 846807396 754259026 583633151 891972837 420628400 895725806 409637079 524516146 430697893 324919570 980613168 800556372 129868906 374721890 764917591 146358538 552785282 677626524 537841862 871497912 396933256 560690499 592336988 112730276 162845203 991171005 326769305 153732300 14979411 17240503 729965534 945181617 929966243 818625481 553391422 277232293 508462201 923917277 981670767 816607099 959635266 372901750 793734081 951827935 656885775 477620819 531830578 209078039 285784354 723332839 202499121 914414530 194304286 619519991 97572845 679745672 572237920 507512837 549129782 515123445 345449904 880247012 24837994 720119392 696937074 79239119 395696093 233343162 177787181 445694930 445683464 260571577 801351975 762453356 233592424 540985311 643963454 551919456 344792236 871519444 724461415 382056640 475759213 286013460 759141892 522268586 550064752 815150079 53381491 322493133 826919441 948602238 518466591 682183195 569821648 823293636 327188353 859898700 997077627 596205489 363325420 365634847 646114978 501052874 431824699 577299903 355474844 84242903 285853326 93328605 396151025 318487283 434059067 791069343 749847142 89399887 110720418 537816705 509498843 117674759 683315940 336990978 836794714 713281003 60949672 435461638 963266878 978180790 137925816 790323247 231769120 397974771 339664174 555724225 702023707 602095136 145122414 958404188 466730130 136100405 142530205 622314717 900390679 786278943 706390801 202819276 492200600 605170801 680592068 889256987 453257937 355457255 227920882 146185226 637918467 542685068 671445581 111071292 31441663 859737251 175705772 173493764 63107254 322365142 665853592 849627325 106742756 418438180 997352520 16291271 451388816 627532560 516975676 68802106 440281142 974686653 231166478 881585582 30577013 486699975 836665250 19511130 731424643 134210742 824005462 641672157 822759803 989565092 684068319 237305617 984671255 478528083 170559315 294181515 929723797 771383788 336303963 684663603 759253739 347714804 338415400 794983114 218361482 650411436 116901989 526791573 76840872 544000491 623852401 17322605 504619948 254333657 138207747 142489896 840600050 202140435 178649649 838471314 175440760 347367855 689671781 902063113 689699385 323140240 470275560 86111325 662300454 361986934 214311342 874296895 51228685 336825790 607670261 443207827 277861696 226136058 357239114 673922680 523854148 388145669 780952765 1217277 763883473 682833972 302636892 871873054 555593538 421958848 427762043 616315665 62765423 64159969 812075089 604100557 419285016 703798156 509063121 48775666 876719696 94611315 487978414 66948658 964670495 677910499 674423774 634168188 504506736 12517732 483237909 513241765 513470895 441540760 212556783 690214841 649161974 373622169 542620253 540691207 950163422 211965873 149417478 313386688 786804302 453777614 64094290 221505334 228662426 721800181 49276858 294579337 922870777 947531267 251259654 97304598 725499786 300123838 577553617 523472677 886058400 857627992 718714704 803894390 462607446 460259495 554273822 769033990 655019430 837399246 471056264 128538482 311925327 319239355 23235891 608180889 113925937 68464505 26711975 761541674 187126593 326981866 852469827 138221629 542061288 340045121 197450528 127257375 519888184 278523032 386026150 63508388 220229749 275795842 951601215 938529106 914998434 682467737 935107659 892939849 778712027 307392575 924405345 93790002 588061471 157521062 595617660 616943658 27331049 469571169 404935372 505395332 307543015 210457086 781130731 928224926 912464688 193899549 466595315 942046862 968170987 991535855 664949564 511694618 81447796 219731985 828905963 549025807 653963486 181791253 948311473 584154093 633791053 206550966 270445818 611730718 517899309 624965970 471173836 389317661 804388851 162865839 269061972 217350392 608254319 280005198 831395233 285894603 64727081 478464488 319792542 707205854 939019145 825547927 713845599 729077014 166236518 2600789 335781422 624904625 571722899 869232530 417651967 671481686 573391891 557488693 746299135 150809901 997505525 486130287 214573963 575312529 634282541 497469355 423350334 872206750 41408603 423305343 268353059 141923633 147325981 26617 627702607 604712002 274855865 386884339 372263782 342676170 552580958 776619872 385691427 366819569 975139923 512132901 214865613 123182425 331255499 343133447 906352505 77277557 525020695 396841073 79449891 735494037 626709209 435875018 811443263 189717580 892929384 938168263 187492824 72936018 85616994 462360349 245896165 318325610 923034911 652707336 372650585 610770914 427845255 837100839 407929317 230676061 651864785 482483266 559163472 717458260 513599397 402693964 441040939 215822348 94419296 705635009 405342599 876718508 30283994 317139871 691142473 679243824 605259575 801460116 961552453 643014550 877612696 682442108 988118321 15593816 472037039 123805383 135633805 921983089 317008798 156311725 115355239 966474374 346270644 296521914 397806530 795308017 276311784 523008063 102368956 322696034 749816383 269025169 557673381 676141588 56302933 572222625 175863188 697749244 352504210 542209688 574189065 452236888 467488335 435179001 698308397 887430977 794971130 468407774 243387096 409799152 293342618 105577986 541335787 807327261 846112494 176393925 561187943 863413106 443066268 273359768 657321235 529709547 756941000 886848233 35124819 971526298 550588116 681494696 219228371 322217965 8900805 60386266 736020239 624330447 614924566 45221986 519712064 349526650 311236211 572809774 380859333 276282753 88371931 165643664 643678954 446192261 606546359 668031968 490908992 232283647 890120699 872841883 405008038 33997954 209356651 133698776 582222712 257258051 909499234 173990920 60855337 655395414 656758562 347030743 141526220 6094547 276725893 13841279 107181916 913625253 474955770 948834612 132361217 319113678 667872441 651526316 268327983 183736140 626577575 942993071 644193757 325399807 540590269 633400373 431880314 179901976 572340724 783031073 654099121 756727030 601173547 193263049 247162622 556303172 144349981 146930236 305950726 498970925 487323975 428217957 30956180 473632321 577411863 793829392 757379743 589932997 718533330 287786239 199058245 295687197 798525186 687021167 536599414 926193026 349208187 299857281 118917115 432530790 83815880 972890006 941864664 273072853 175445053 998189192 584579056 556990675 959802144 428686472 434059879 173417331 105772752 622140805 651085752 413131996 942835105 817954526 39782114 899260256 831784626 897723845 458494858 81523219 999435510 245115924 882876438 459703770 528275124 664191536 900517150 412954773 807426229 509625245 896320150 96024317 612151162 604669364 649309579 225675720 961970236 966632429 416294804 943745763 585742258 165598953 144694277 433133653 655199988 375757749 470618069 744290924 985282546 104376830 788700873 388730227 9691172 29789697 13586471 901777745 737408324 103529338 868435982 989320943 200607557 330182663 834539613 39725225 44954078 487919810 994568383 791754291 641258097 886774040 484915370 613796193 207224312 121635054 712150004 542769698 765012685 826266823 761901687 578151487 395940452 98672670 572867891 639102477 692616632 201628919 671945091 607024007 964319044 21592942 518673033 142287632 293339168 127516892 81931494 438200424 692237886 377168160 78863038 864586596 207542106 122169231 79199120 529532449 664912089 715251163 633571154 750302171 962018066 559506899 985167068 903058513 440213470 831712455 853676944 817711387 937416961 56855206 722496469 395823691 744098558 750773726 956416309 271156652 442364698 686717398 66665448 851963089 202218110 993922944 919046067 427611919 645844570 278993688 73511465 164827192 98555712 936883759 967983010 125408303 243426820 74228002 134810657 229692873 896664029 417893827 251229622 171450405 880470725 701019208 128781267 156481248 498435760 710062940 948806685 533495651 803711722 57895981 292373143 157931628 316298107 627691487 711301393 714482621 214864234 782575360 641567153 147653662 312060708 231871731 759865134 106605982 180351253 809383797 954652354 431170815 154859872 431795220 251280829 902765463 228417562 135412062 793936274 279637843 357515898 729029488 252330833 475786419 925385564 589037033 975100888 699664419 382567676 916678008 784031160 376584860 409283247 690649828 613230071 597496297 9415300 477198549 270330111 275862421 400439048 569402615 342403105 932903639 602777900 443855546 549771320 237938266 857498959 103087403 644305197 8603469 395631052 272502466 14663973 419979342 186341688 289697783 534348537 74479344 479321108 105257842 278022021 939466975 751443615 878722811 86255807 433586806 878841990 18154638 664452466 77228041 360855448 485391940 19128545 713065095 193685382 870010433 174339442 580211162 194509463 472380 68518496 152137614 638065229 431465621 399741412 939666890 705905731 373137371 819624079 901357603 932710146 837765336 921093441 368160742 220730261 665427745 829869778 513214177 64356045 678608742 10443066 480591925 524467777 858115065 202099359 505081723 534899886 43974208 558038335 169684208 181146909 8763518 930299848 247371661 402034192 140640478 885411812 274102296 168736527 730615310 201296974 919552128 386702222 206460998 709255269 825339749 763793972 156929361 559450297 859544145 429791205 102974061 666472413 532928038 417013632 216199897 713562138 562828681 246055565 775430077 25470188 7750982 150808354 368506822 113249668 421888997 936205858 570608303 765682330 851548423 772242477 576671170 566181166 573595143 546706569 604878346 2380590 568553187 543613304 480139727 231932452 777882306 679530860 973102493 805371292 253321057 740369551 254283579 17378249 69013077 510381625 761856451 795427651 892404781 390995692 320666235 335018876 14029431 544943807 497071536 156472259 979038895 658416387 573177966 858066276 214788731 249096821 892110557 348274127 354154657 437137806 714864529 397972640 138722118 301482887 461019876 888717159 658385240 410842438 804486826 233335170 113610603 464490137 547649327 135171055 98430935 971512024 745960242 42640420 815422004 225766705 679993196 225047663 945250151 339174418 112974093 895690531 49500073 421130087 634244160 432028093 858446324 780172769 153327220 783991156 905927578 376631158 594922259 722006327 96757302 202659697 763741883 725433533 975808442 797949383 224184685 638482032 67175720 278661920 933396076 860318257 443658129 728574938 25201303 125167591 146914393 375610267 926900116 811275890 342544247 392192343 953665609 401071616 671495995 888332262 709532329 340376039 460392776 206002022 994315042 219481634 863246954 320442047 477541679 357475200 579656330 961468406 203650169 310053159 263709578 908044471 942333606 346527236 200317235 41513705 662406991 825100917 884713096 755477085 319948658 432391933 967354252 159828956 860866310 181584700 64618854 589852103 897422563 648535380 194470807 91619991 824873860 16515680 563070477 507985971 208036873 736236923 615327394 753064899 161577480 982612560 361590649 894367489 935821465 582048820 116814080 847448458 204793689 713741135 164058799 44980681 30020288 824282316 444969238 892181325 568474141 759945197 475008938 895243198 404596408 532896903 581896905 504637951 236086301 694721270 969912590 855445928 975223585 745873067 2760412 109079744 680021539 606303026 534675361 959269963 630367135 599864080 995163266 25778217 163698042 359161726 53149240 971210383 179054635 340695191 637421116 101583919 599618368 912024152 658877336 174669384 712899111 105200045 147073556 456977506 504074393 794095727 661831587 966597095 62687626 626391509 833350674 675393990 68545107 858567148 565629899 412448719 379463417 62027298 737635921 859306151 640256588 271943007 7237942 105082158 803270127 980877851 421578087 189761919 820393604 496108370 528795333 862398511 700343007 7591334 879884311 686571299 759055799 214183955 234570146 688141300 312345398 642265973 198515809 946374147 816876833 141857111 401013668 254335250 872959719 990591293 178823074 244951622 454537190 538358380 475536915 438724729 575766955 696249089 950077546 574529482 129503623 111313684 358683221 772303267 748654360 3877647 722290366 792217651 204823704 904474990 403036395 840135579 23404494 553577170 83854477 946482025 769144781 618546261 368100886 676029150 114558885 858844812 658389769 759370764 909292743 594100115 338961670 52092121 339796611 525482643 490207509 3854886 781848121 804821088 213600898 120573767 371898921 650931988 824511175 394266610 841453937 288329743 784295882 641693006 750070841 96471734 144547506 209805674 846994747 904899339 512896137 709967903 61439111 573871988 776861441 358044010 495031257 218050814 853042968 769460743 36071363 805764457 148693818 239414947 633048721 923995633 4731135 446356631 319616145 220120045 663250897 806854061 642479032 729577176 95991158 399485349 78631870 733550747 901476604 901546480 409038315 699715199 228050097 975685928 623502593 325133523 127446187 684445390 292667901 332150659 283863097 463882059 438378735 165118252 279839313 338243462 235721810 345389614 998362241 955023554 473655477 275681602 298032114 156372800 871764986 898243563 186772907 670842522 983557898 706627450 109166936 732533439 555366585 41489280 947558100 718774153 915514713 769470243 222237744 713403262 611284079 688335526 650198943 203317054 944048007 752888031 423635368 161016143 768630613 225504038 478014138 419959116 952966343 21140572 388727449 100698966 961844286 94257543 325303629 995688482 137644640 223599997 762985408 733695975 420067300 714339893 196981036 611356990 478451997 82598816 79948792 112022639 349774100 712584773 258555103 120154058 708115473 205536601 373775631 984076488 800492478 70277308 746864615 714523802 500439310 12663387 74888998 50072643 916135568 161441741 891477243 286087303 416259026 543661189 750471073 880471159 558137818 348275644 281238673 75623000 528920304 619621361 601405908 286665507 123467539 251624007 609979877 222115819 861578881 861077155 412016784 536791642 389429534 175647097 31628389 889078039 486289610 49995289 645145635 470835250 590800567 2757846 553939755 38178829 955748898 209700217 232839060 457747325 844365284 996283564 62817767 507570720 237630098 625702435 429387906 373732067 126703351 736799528 596899025 969484558 748823631 41027920 815630578 795159194 109129048 981970534 271195333 303079392 495506931 620943770 271959472 383292259 148084788 103249757 512322552 878257853 210746808 466841135 701616404 262193670 452857781 766978949 765266952 500111781 403065368 550075751 238758528 496905862 742258080 556094651 964949907 220026550 300246499 786559298 29419030 196756927 145109460 47857383 588704217 387705075 428609344 516847910 382792344 503411276 6609360 305527092 782444330 61142584 339053427 580239840 929324796 433654572 753826156 419751278 493650688 606109754 974403434 265936698 29789366 322087902 649966393 274077316 92722021 47145006 354620983 786670776 963996165 62823445 136851910 918687111 630215973 588435048 286766738 195054119 882876776 575514326 672649554 716547640 924529454 658256084 864837285 13975448 159326002 264447315 51501028 606843889 178636705 406484284 737941981 263831063 642584909 185944759 174984780 350485265 720741255 127215494 895522824 837656672 695338446 838520748 208775117 367935516 131578044 478855747 832181969 277060651 589681479 436809295 623426802 54491341 221853277 660135722 506537608 694540877 207855003 803096021 249595913 400664399 119607116 769877105 698219098 321107405 996067571 709109904 736699131 674856590 625212409 864820569 434148069 124722445 799030874 544109202 508023380 604855248 176518686 434472845 524395240 451955013 918280610 900858734 214502273 811130934 595493271 497302424 595078804 213683869 905446999 90256778 665902947 943731484 631300020 424129777 904227633 920937533 155666964 450192771 715821562 95927074 644015632 669886075 838281198 593079469 567005101 692262068 931198445 381798559 542603331 594732260 933553196 364967186 462187721 221384382 719945335 197250529 68621650 274898681 985790234 127313341 283313711 176256951 965152663 37208047 98590835 289481574 279025050 76080735 93097462 909966105 332543921 458809828 868800809 805524844 631331186 688063786 784356983 143856802 831471796 548944140 465261399 523276749 465134583 706595996 701877353 607753657 427524936 291363027 277767135 415895480 98491753 38904716 564065915 907925570 233296230 237521236 792934911 371505486 968577229 3313674 830912506 748207552 25802027 753079134 667299571 728823663 53057564 149482089 534752871 179455308 453032819 271095314 167422051 933140682 825700235 713009361 556190663 822719372 571787455 696680130 792062254 921949480 209804039 223069025 665326932 919361785 867486425 73026139 261665811 267024501 353252790 785904476 727056057 488741327 253353175 389986744 87315062 175618679 242149612 438692028 62401596 977100058 542083149 126239353 475844160 6475371 380439821 253440700 869099583 653371520 350109982 487184957 896745452 77258124 559736557 882430671 55978267 235324760 26601336 246179723 119234949 50146649 331723605 670373660 546962373 978052796 840330962 410031138 347529914 841247244 541836272 927279299 629553411 539504426 896053783 142368128 417902848 455151878 359455612 614113441 831279679 297388594 293666107 404808566 500965760 901660883 709429668 579535272 746299403 159215641 421419519 861260326 111174824 911755169 253407725 790341823 646099634 230250376 371007035 669890423 157200551 606939254 699255986 570151370 210456055 560623561 72180494 853103601 444583817 41418027 373447711 72634843 554665638 378014505 270306867 435525545 235273725 752340457 776629796 99652626 592731608 857829360 626119618 638293341 326779298 773588191 164216008 698047225 962301053 986229121 885323891 607477577 490450949 829267144 131089234 821151839 527791916 313589698 620833 861476636 501817776 369067401 509861077 29009792 72710399 216629220 985933839 991388531 206714306 935443539 708322548 433812212 295165616 101756826 134814112 921081122 135451193 440681751 962871454 117027455 828930864 438399354 671314643 21718049 353448418 414929837 800377689 93201620 790237191 992130670 33939928 217508303 479987864 260723012 996309850 869891165 547277936 941631482 578318622 535329877 764157320 278644052 408205641 457293090 264727850 878587560 414107386 203968047 880505636 412121113 874525184 961743944 515756464 95510268 689082872 885615963 754015156 778905063 738609422 229582572 65177617 58116449 568315325 347030087 644637914 462611651 638257274 960587893 819780857 652098337 918812611 918834547 240814822 33456643 900046654 898165067 548875494 936981512 321740385 568633590 627432002 933045007 944958150 549816764 648938858 431838357 993540110 654107043 235125600 475560118 658295757 380933994 390744601 69443940 799082784 562632658 459480329 615807760 797058345 490526228 803555747 426179471 61630644 198504005 138116973 301172180 174951889 14046452 500798210 822846540 664251420 651029989 125564955 775277685 910136713 169620189 925257867 666417070 78431338 965224657 277681890 440068016 667052855 430721023 860790464 819914255 582002846 405436183 49776112 255979695 351479695 89870693 194600026 752001425 24702052 300692526 823325046 573809346 113869549 154176449 239908647 796430117 2905370 686635679 950396808 173484631 954637681 121730804 499643266 203666011 998841479 442942164 714803431 272608134 898313838 92808857 594902359 905946406 474832613 453155493 518100165 763296801 860855031 454565768 572468952 877281418 632218430 470154266 261120255 476013674 268804410 421480021 816920751 907576265 8041772 904871932 809598799 849265950 352771263 154940588 759477196 836242473 766836297 859559173 630250702 484076056 133347849 842189994 752865136 136702013 796084086 395484523 812492614 863268960 611054158 540580512 194057153 240778538 608820327 932466251 662484852 868042468 36416175 617530199 541328857 856339644 520157264 593393597 650115744 169918714 268768461 987890651 419331671 882582850 723284163 932549460 248560528 882423793 657908931 55169895 50004583 384358940 247219388 8927299 539703566 112319215 193449199 162639743 294468484 470694004 696561892 78459365 901654745 551060745 549773427 785137248 483476797 502034066 5702163 219927279 75222708 711823768 10079079 663558989 391685845 213023621 547162694 653759270 837411327 515320848 654525127 403942072 221428649 675624629 375015094 662487895 366206459 560996713 143522094 984249765 485424125 872073497 247232582 872283385 513004671 22901693 181219529 174021722 882329690 747443062 793542235 223163976 666688995 556225822 500409443 561521322 838141781 829639981 974794548 39901250 214836902 96720360 470842779 861413519 989938068 839220932 305279506 174279980 368606725 876583149 833354719 907727549 945657959 430965496 479229920 235976873 333350241 955645268 947421306 168343302 504113918 769295365 811319895 230082635 517304879 755389080 632257883 800452163 792159254 337221190 795112728 691119817 836031840 350372055 246176103 240760515 193766548 785791740 348262233 622267740 789830977 30036066 11179814 266761373 152419851 200496472 383712742 156488051 251143755 490928245 110855835 328770102 237909100 874671843 484057714 815653166 704049164 898041990 272850948 812977266 815682400 155523166 432290893 293883110 622083119 105047461 174567609 509735636 358135101 54167438 622440700 541595522 983152700 557003454 459494619 414361237 368978867 895268535 736615016 555898530 702877446 682403596 122852528 135792226 17005617 531953392 584933779 915232287 980733100 578460257 24369091 399297779 468546882 479097183 568504909 895627168 857510627 705747459 873007015 585086474 879186180 484049401 8110519 265276485 446508993 2678681 468039632 588309875 293498497 788397502 492049964 673400469 426272643 950400227 253696321 621614401 931135436 866775897 306028146 482306438 462811436 379942038 539217638 184515904 554437448 185275850 243840612 79935328 834062002 514421956 965824253 868866734 371232484 113489392 876575657 239397712 775656101 900259925 630993880 339545534 572032199 213521565 737132203 354686011 681321001 872737797 851224560 515198800 222853777 644079648 324961864 615154971 349929775 771230955 171348987 817207707 831132284 566460740 518702775 821523145 888821016 177196416 393368947 29657744 479653065 295624380 66055267 551512695 139349600 871710841 516829681 999229013 460001207 568213410 770499668 19733549 859268049 423738788 68285826 879532703 738828671 577745926 489626567 905954774 23755775 326030619 213785950 607417172 883893043 595640610 426346875 258466976 216695620 73739093 629460989 465212138 659014368 880899584 427446222 936326608 997704184 722419192 179508557 507782719 216150187 506677910 6011895 655961934 307100544 95919955 703139718 429311997 946229204 316878114 14772484 593919377 800037550 761295042 299058225 58729325 18530305 676970740 747754768 496906075 241004940 96507879 987972069 444494123 779628544 760355181 46530045 13460979 751595540 45259543 429329856 440655132 586290727 456655878 507286350 446714648 977801575 764874763 751591869 94702816 431534712 35239874 764111702 225243554 37092271 102250863 805508400 303805444 331656783 165853615 177355761 431443375 514589785 37144822 353767852 263841349 874831552 498900202 910285308 301877634 916165076 590350646 388430873 315486299 694247480 170546665 793712046 952933441 548590089 802153493 26662334 50183417 419768573 628550346 838559110 727483648 813163286 976825883 759813150 298263399 883254950 775159899 558740119 405482403 583552960 993880583 825621909 412998219 607337515 685552642 570134583 376104802 818911734 368394500 215926867 598361966 551807313 226211922 838975486 529869326 338032394 614781441 409902904 134717839 259006629 111860468 679073582 809482385 505676648 679351686 326292777 54233868 165930688 937138491 181785243 951577494 412478221 768832 826226960 421726597 621481579 702966553 536091359 704184507 950613800 678288656 692266508 897093694 87334907 829960888 57035456 930448090 639414432 565117101 21663415 33635119 260754052 254681888 660451052 623919509 593517592 194060971 358228166 86407177 741533500 494651045 839378690 541925912 70774512 128393229 252581055 354746632 928565018 851995907 403942557 988861739 752020146 221992203 605182008 901802503 81784528 295828264 853366805 941358448 224439557 57089390 650577813 251113959 861033133 326392656 494167732 996740708 234011338 398593352 483598814 586868530 715233421 338738555 684152165 380071664 789592258 929666647 174622833 324481428 884585505 478992714 165026667 252756782 374849585 842389931 670163553 536229283 485473105 869127033 178901367 323978379 161604183 943438179 328843646 117374592 183390149 831028626 734401666 781756112 210542769 128215567 754582030 643721855 591403702 216645057 233909774 232148036 752198197 634322899 794082736 170883721 295309484 907558199 630644340 793917848 923891623 58206581 142777157 574970128 435985519 535548873 194384172 533534973 61971220 899319456 446619643 601486419 853585722 223061371 893818181 329516107 93400214 206680020 376471772 617255044 237236430 988045407 450692983 424490134 665117505 843803999 679793200 584406510 289613945 905067354 489059370 459391563 822318580 204779770 781363117 920587343 270443284 178668183 26788718 179701431 338013455 683703514 378447288 606004200 386552410 371647590 721811569 605664303 666170997 244639614 481171921 468175764 593770319 27947597 832142592 791507995 986561125 492812862 956360806 126103746 355059149 978527730 341477129 343197590 737049493 495128444 228880038 443753051 966871546 897896592 588062189 852673850 561205235 262953775 804120411 424668783 171059399 802380004 517685274 791107427 522571245 46449211 559979035 878676969 911267811 891358917 413406945 76882299 236003911 431813493 999515509 132297703 817801267 702843269 139708715 670031129 331920218 789878493 320420522 644310290 995227647 450786799 87878949 355710708 859975595 745344216 662075629 718651222 596079544 637343753 992744572 67003115 349657692 952496167 971917927 694131177 344369469 255377352 908195630 623765768 884955196 383755314 187289648 161408697 960785412 733087131 808666334 630452095 342524176 304150383 819374911 775886043 30154688 965951346 653937525 230294997 802117932 391089817 88633942 936656674 62670951 504819880 661187052 511098807 714482569 27013989 954864951 880873835 209610163 143141375 405849616 842395062 688486415 688496344 879408800 671316403 497353698 368883796 533039535 386051129 782440325 152965274 227554865 380505208 393459229 593597214 813349310 447600766 113911060 232167298 93324581 569736178 125237092 177654710 12292468 588734800 303714941 211375587 438432380 806284749 933872210 962009277 108830713 236153358 127239379 149620516 958224046 783114492 236337330 623931587 743536580 78647971 89185950 354116939 330655849 396494239 931688041 379395719 745361902 913121394 392483209 124136191 896415039 339438239 700966805 48655534 454764518 841115639 89828597 38839942 457736337 636672675 678887225 949466837 342738693 886137473 756560104 679465369 423986792 730226599 595871854 685998719 678270256 818651115 122698295 848407064 242569633 159821489 704590665 616323800 194860071 870598546 986021423 617888446 126880109 513780081 662175784 962336446 334359624 297989411 887843076 244965455 252929892 91461213 188917293 215115137 180831161 440632189 977606277 547989583 383504449 37761364 939913749 579472519 462137305 647679588 762353805 709348193 256074376 613304267 91029740 226036136 428415784 36017579 597692436 910225765 139421268 836429435 803918101 419421090 45126624 224003539 711161634 555248503 56141009 945166350 424215053 430237095 747761608 255232644 503594300 291608848 925298115 422886925 225566381 678720336 29889895 116069712 514497376 596253930 715259691 691172433 355148146 955103066 925232052 825381924 402581738 357089790 363606403 184768777 2363397 526854380 922442931 794896199 654751958 696401737 241849959 632284625 952979442 532901159 849975552 228557523 433797157 455947100 338633752 301240258 382317064 172256489 3369410 387133496 355593720 785786379 190564069 825850221 962473975 36133991 986146172 104722694 278959785 891443507 197978240 523586471 509382520 193088977 381866930 296802784 922154467 599532187 379987529 808033374 213089104 545435361 166365281 224735820 18498451 179170019 707096918 542356580 836246987 525137402 987505800 475813685 782013391 131701325 493109583 681856369 922998545 290803214 704135424 716427230 233993036 542558114 139988042 230176765 353353614 664274169 818177170 616648425 57303376 150094655 519378074 673941851 456200995 674268414 143228714 773134129 899581092 490767923 137512159 812018277 569198203 342479898 949314349 752167811 65582073 522637256 662384233 314585381 473162699 109908326 897063455 393286807 390271139 84619274 342213603 555940194 10915891 587274137 50926889 20454560 944230277 308897618 971153308 583595857 801361031 431501129 737041852 379541135 312962609 854012086 248586412 842376365 403001677 81979419 515790381 233565317 362312433 285912499 341415270 718024111 232385379 435991473 264147954 799451024 32332205 457423369 99003673 217711595 722069767 766000829 107651973 873004130 918958525 320476353 357086264 375267556 31542868 408252008 433657422 406347259 865853813 820560433 148504380 224988196 970223578 969128304 329769424 132476785 204718672 610036274 931423986 851445912 803743434 272535411 179814898 157634557 221917761 532132642 814333834 875151712 860419205 480679583 66798604 488316842 528271380 120747367 256366971 608472546 374466818 471528691 466252257 703699068 980726806 105302273 82022770 948163380 329882618 118503208 891079594 686195485 70913860 571350447 203175504 253507975 435694156 697550464 771302877 61402419 556665361 849876058 631031872 254188620 855904277 717412692 560901584 555507519 173095866 699889879 90796005 630781421 701576937 97269821 936672214 532919542 968910948 639563313 499146779 952431272 291988633 662235633 392722293 22269110 574837162 777894768 390164411 142408915 476838021 151108115 117025233 624956484 582457715 589858370 849174620 207259619 341746848 757763319 24124064 671662601 960596681 157334315 286059272 527119728 936074636 833739878 135476047 324600243 140296117 629790636 122456781 192180047 350577118 779108520 159963619 959728887 631613499 794401595 311120316 57271053 360559621 368918857 941574416 685584122 819282580 757583955 763259924 576708627 517190531 715444939 640323339 251060009 786768989 115044557 276340539 22498029 533061236 985606540 379941455 916983003 784329954 538273257 381718453 631180028 255428731 459279779 212638249 398525717 749669663 371807489 45260426 246089070 141977640 473312723 926940303 597882 214909803 175485134 999910113 85050198 361627035 355262337 154456237 532704256 22209782 255515704 686795880 604145660 534433457 472180576 955647161 832726487 295796530 430283979 986232077 283415740 506526239 940136397 49067684 792106613 800576726 654405955 252552618 770091330 36462560 966662554 795281907 646978842 704747957 377569280 212100841 107076220 128618180 856724073 774951983 501320950 584362598 239421986 59394408 645786785 146045902 563693260 162794907 958282731 473826228 980128759 36822228 330928221 394298788 412300237 415829805 519881798 222098409 16105257 396760038 338913368 340226181 509854087 547111137 510597074 244703031 225430328 399494795 368787137 428418043 261131248 816342789 21830883 890517413 391777198 941873583 676491166 216737525 219714413 842423737 935142511 563873201 731041983 579381231 431202493 20979090 639369828 800886035 525526079 927890674 582837502 641710028 500766944 287802333 266033659 595838617 962787982 593407536 33173408 939340138 787033381 233466 367004479 891066629 850068890 146222586 263373916 157301860 769937670 130332960 177254440 498555833 976092982 434999755 420369700 889352128 213981062 207372009 142438581 99114327 191927269 520714346 725091604 573554325 866271637 213396631 70883669 689880261 835691776 279551571 847342957 744347002 162846785 157638227 34032774 418446489 413485661 540191799 741253428 95128002 241508301 430942002 706102696 62404766 66915642 816941623 506241625 961615843 886057195 893615645 573302940 22780501 422581476 69650352 89673553 88691565 70731671 838850394 487446791 986649254 515628843 76358845 273434239 285338137 181600884 355349741 972239719 139563537 555947919 976517790 937459770 954889358 659696528 864438276 891519304 199999753 695207496 874080376 373348946 625765975 738630023 101164958 709406999 661724099 247711328 10240655 558064675 429868485 119283533 588362824 558807309 930139302 95006279 912882524 268221320 256799795 449838686 817641704 535452106 670460746 445713377 749830240 916909479 990876852 387327721 841340471 396065356 706343484 830828624 601147044 161469926 773686623 191439675 839721842 288245232 23751701 820767034 15279296 433605373 345707837 142649252 124676094 22250935 682907665 138866866 495237419 689074207 639772749 81373419 109939456 832832860 801769425 752211399 786198915 181659376 235960858 979612964 26746182 335481561 491869034 636965032 314525201 720894482 772642677 462716745 228873655 900913121 922258776 921112014 297541912 939128505 294400489 470329573 873168163 418821021 383310444 54630859 969028959 836801899 833643977 275481484 278122657 61818116 945280757 615145938 508563148 189797502 742613580 705363950 76818293 111820651 40724282 654337762 329395169 724594355 514931239 35573900 367333097 270469523 81567414 703596600 457567759 84256382 749959025 825385625 772250656 644942784 364614153 406909724 220525402 760207285 532762085 240394656 24036984 538107735 708606925 694344908 117296356 280093590 536809674 366055723 593195761 696859881 396316337 163971955 145598930 723995951 558460769 847535601 378526256 155927679 249604724 126087066 899895112 290668890 19314370 77013406 276080997 420833642 431873 308474160 572405128 553599945 194725869 133086838 352494806 153712666 947804812 67350314 194626168 685430539 361502069 937155335 17780462 611833110 424716668 500601152 792917597 355282356 643947939 950001900 985878325 382040290 991055631 314878082 665417032 499761119 390994258 15478480 853186551 315222291 469581091 51039961 761952080 492036879 95040183 553342594 799486030 136156877 596156250 958896441 438733661 54580478 242927188 779908187 780232290 99320419 844172108 443228324 759378006 783490862 6968556 245971861 282147022 378277430 123002891 714671404 380168425 8797132 55783427 880054702 38259845 408802367 758571048 712182968 474605598 459068797 939300989 207805795 861221260 643938054 90836045 619819249 216540474 985649071 809914371 323195132 134518828 279412815 399352763 404082201 696128083 981997645 283051764 504202134 279812088 705140374 3189419 171961806 180546151 282761170 577199855 85863667 159407313 730751079 42065926 239685085 296598521 2515949 866005658 549718679 626493514 799374419 661891891 493695713 523501742 698811481 300086856 853246262 36095031 822477241 795306215 367025082 6190279 855736731 980880738 677879951 862999418 260917455 410380352 239373695 492387884 695654423 32842796 255210170 462084844 299466069 335709901 933882250 225863787 981821331 187836707 823567745 900003778 319151139 726342552 812185042 100757135 747644763 561500072 484624016 356411975 280098047 321676265 601212649 435947107 569676157 652693895 526828442 969136535 877376160 202653755 7786648 858204960 805169724 320615255 494562107 522376994 424662805 122475410 43156700 432666499 756434461 445641215 374065517 327576833 624079619 304089589 603602847 112374082 24266279 690502729 374211507 518121451 364763648 489558661 175062930 43347238 167800040 949134183 37264574 543909114 233394581 704914396 559676147 7595160 84010410 246999515 210573889 718880386 623172873 614477701 854416156 490362914 29619950 632499942 209526569 354426731 530299512 573496918 100571792 365713386 309887477 628078802 512643156 618246537 555521357 507492149 720050363 489677175 460338450 555620880 275613985 581345310 510759168 979437650 689817209 26110042 931694742 309544489 632487241 231799329 589121228 466402154 590548964 285969522 590710463 42781024 438826684 104132792 748918040 547961938 797106123 173982321 991364548 752494983 75816021 275745577 236298423 698194468 784643569 149822228 643208038 923554063 405648068 718663366 657575843 422660443 45800343 296730491 358448091 767571323 640548608 296509917 183082770 701167206 825682693 499568049 536886973 327460463 205866415 906649445 350397772 48485902 867758094 269738456 27879588 190215950 859432484 284773701 777184325 837675464 777499662 870580270 848077463 656842066 507321539 906906745 649941974 550556810 345549824 877720406 105719145 353685754 658763251 106573506 617196077 775204699 921604352 355843756 860663748 408240539 468963249 922060526 509229535 532203262 394319616 13882104 934608743 753812344 224220668 28685322 363299807 710528751 568428375 918901288 64949818 433915191 876953106 246581011 908516756 546259567 168059777 150569000 544998839 299017471 644335582 142976713 563398509 259058493 244134696 471252575 52083837 156353221 81459185 88954915 692619530 246212725 528437094 918459640 891941766 581130684 78692104 313327403 462391655 275837180 173400702 62880665 722513043 92832944 970662219 66563633 452744634 46283761 592301112 334419007 362166674 616201142 351749962 7351244 206529402 253295070 421146558 918400501 880882784 314241765 4728653 58868844 209598892 291345853 924643204 841513104 207685600 227782806 538985042 457823582 337694536 865972477 161948279 317683081 503065832 453966049 441430819 671449350 369794193 31260202 659524581 934725169 703298707 600895 456668689 914324513 208827662 391617719 433179558 28245086 580027364 685697964 25526237 848763326 661967782 688177100 43643090 923838628 181437834 919192975 145834908 641767507 687616795 394163629 222313854 252764840 999017299 4800993 886442784 364703563 542891590 536316671 143999887 131784005 529919780 356384531 171848814 7547835 293850702 484744062 331545684 221426729 863580550 403895874 631888034 719136033 295849990 710835053 895133117 957034695 562725899 732524786 705910050 982516792 238681599 730712602 913930644 971522154 959364480 151154894 875236167 136094671 109090083 322996794 498078516 272327105 389197050 877376798 13227083 889353072 326997222 765687033 672601859 859755550 455377607 271792563 227346106 244991556 581085309 729033748 870628046 925272213 137171782 307374982 580938826 758391623 664380761 71333085 833684322 295934467 759026114 761803719 957792912 19786991 163344241 580253260 218522549 684878424 386360045 606271678 389185137 238031079 162827595 883508936 404886411 141196568 585229423 798538446 656217794 919493661 202051137 314046903 118304102 994779679 376573970 190597014 214523041 569168567 709471225 812594463 488049711 817403429 885578300 927441438 714808653 680525498 922193987 913154241 706805365 127549640 664037075 984774781 990573607 88063006 247836277 47130057 348501108 771546905 151076852 994375281 161975079 570094360 472089752 3571863 655896171 200942404 625166876 100033685 835356863 278657601 709340528 178576427 748356414 450008549 998998520 924543336 760732337 195095470 364368383 514545442 76679558 523658163 442126675 261425840 130305082 446716402 939267157 603461458 209058101 613545622 340746831 372343391 824830399 848497297 732036066 970596179 665483870 831574399 738686775 375741938 770079044 994055253 230604825 15629022 879927484 613027545 542273503 205699275 979188022 831493368 840210162 756473193 126384126 868527257 835559708 907792899 266103506 440769921 192527481 922513973 2119922 790286913 98048554 726080550 812972557 559102446 669068255 915477705 722637650 428394196 236654458 233558333 909032463 714101857 258260259 529742645 984005508 107065612 496083103 281040123 717883426 420109294 301457876 139856345 605167398 362827619 468823619 371585689 867407809 970825230 698661724 223842598 497933819 250211941 618339414 928720628 162779350 138641082 122970704 285809957 984317179 82638011 632472502 533341197 67953271 271123006 137938369 616601688 262655449 659095922 80060072 49271401 108058253 795689461 742088897 188238780 181962741 197377660 318924152 476225737 294403066 719323652 820554223 304149938 690500827 175651149 994518267 618724614 514947428 137363889 19446958 126840484 111600020 846984408 691319861 786104556 195240045 558539049 76311965 251125787 438783623 986751798 802324170 660628845 630018134 638184937 279477010 379532279 69837 130386012 386068792 859745658 771046884 370469412 926171233 851161830 723267324 333736896 563386147 995794428 291719831 212505215 239962962 381636913 754672261 589915067 309838248 19894419 680562538 540794081 957106093 797894986 157798056 911047795 630511729 507020651 730914148 896397262 738093727 58982491 124334926 503327133 431832466 927717078 462674925 117705875 572102111 726311998 747207438 28731218 926608615 106109139 797127893 610414312 644949526 119161010 701027964 61609181 540247673 302286725 105191974 256204286 163424819 173821223 385035933 365422401 312910388 338037367 236010064 150722361 86326000 663238655 497576135 360305892 759687973 280045466 179482050 223112322 237167297 615059177 282255244 550020345 185948796 371832554 478073518 930541263 842207505 144135086 207672334 7125501 806996918 546018316 389193528 513163834 275276780 143418419 116288190 262034695 656296749 846475599 285157419 719808865 947361667 176552388 232379596 623216724 72306612 481868749 47545632 312564452 227978848 736139674 988478128 294383472 164807003 269900038 210902878 269967081 805851867 729409852 819940204 108363671 746428668 408334691 741761958 772666600 241630321 884181360 668449932 442716968 252456923 69588439 445275771 893498652 915497506 789055162 899255304 313228493 888467090 719290775 150633943 788909986 558796930 478869168 304337010 566447904 498569193 338388587 979383363 418152520 215258446 569579168 554616097 984098562 927597730 766871326 593358561 625397606 807751599 800599753 271691911 478314070 193974963 242572382 14928906 982645676 178240127 609586129 973438281 398866970 520408329 45615661 502349439 12855898 707149141 546364518 597581262 807887609 313751275 394497335 403944872 861935922 40623598 883041198 775455424 265950318 724550723 738504192 60895835 289634715 710591552 251205028 94736977 485526890 319465038 225613918 568388492 146821429 428070849 137547397 142048840 288597591 804924354 59643313 962987773 551537447 358657830 13797759 216792122 502787250 59014550 364238573 325279912 853354529 400270406 655099579 326364563 238764802 709524158 446791331 552753647 298352936 398552534 309529677 44751601 142523503 11431023 795733172 670848614 839636943 426285476 306556169 342665757 377310490 530860945 561335798 256921538 110531470 967386656 66272284 878746685 927898497 647245640 878931235 28947756 154938624 783090217 636543867 707647835 146644391 626289814 740946142 836533496 852349981 967435623 663509840 645250539 262305395 367226468 805817352 734390766 243490000 910207899 800145586 504873521 16897254 596853612 708174989 326478097 485246730 86621858 494229629 442448235 703679366 911216568 675570434 52747029 870361239 464989380 493986227 898197410 214787616 710111915 473825249 731039340 376969257 351050503 730387377 340151563 880370355 764958406 289082027 455195999 325993479 375675643 225712201 546378486 322462527 78406552 949611151 909019520 291070297 578818602 715618194 280921488 579206991 656378549 19636431 323234199 776841484 972277271 144242750 155736121 562765858 975305703 784792702 936968158 798731113 681397584 852577107 649185895 982439632 711891558 407896516 583287944 441212585 495680316 523825827 752877525 46035650 245480293 361426430 817861263 446941969 791999731 211488857 741793096 750216192 295376036 804965681 545216508 415186977 545065885 265471722 628747932 402624135 206059792 327728462 711746701 623686662 279474834 87294902 62114556 401915396 595446027 300780785 429596496 708148002 143137319 164466482 599289306 135056265 251188199 189515003 431574829 233415993 572631569 45605138 681511489 402311965 114133226 196027897 495023801 182769508 279677409 410020177 565306035 431884572 522274334 865753579 280770801 69259350 368934494 138175666 766352013 741853174 77935146 29692837 379652578 549555021 454593298 972028465 112479374 426100798 741139535 418316426 38004917 707968531 691841588 648121811 721351127 510434046 796640693 821094701 65847328 333945406 958747453 173381725 656053043 107570652 348506351 950391964 236302507 430840574 320529774 456733015 382165700 751158628 833213071 883862498 132263028 284277330 352633395 9092568 453048430 292768667 262629526 13520555 239687066 116462740 252876000 858950562 186387236 718044986 288624501 981875162 681686409 834561710 278923591 681870802 14951563 214459965 114626382 386758233 888113856 316300642 708597817 319700965 156837719 845220147 581820085 862704994 768234033 605568336 549637683 382443441 87630855 577688820 568151252 46996961 547247053 970252935 895393165 260837549 996796767 194347736 858168769 714576097 339245578 595305913 385002890 555745422 238469836 491474067 422740012 444275684 890394920 580032479 754338218 606515835 700017768 769262157 342023537 153612430 383637124 720890990 392809853 433242431 418171349 169323385 307081857 358832995 969390937 378133535 61172600 515555170 307769041 715303092 555657385 126247809 368746445 320805658 76554722 472991906 368879466 80825866 354420095 139536291 931608255 344688929 185018464 487602519 890268855 387653682 366010811 995791643 455427022 926421705 202699590 26693982 87667574 502600425 916522644 341025651 638141544 713925781 354584776 965584812 329235195 49616218 915531554 519437311 576799833 31609518 543563955 555120587 695682915 182934885 555294983 397895988 99809952 350888625 859048802 477972111 461627462 916709101 266103176 768319316 142054690 97856494 210887698 542619455 798415276 238391067 464611164 682192655 212009933 54526081 985703916 600507452 935672773 944852220 829656392 586092979 895976011 724860546 615080951 934253712 566405625 264887641 594463448 620888037 753679953 581371788 906567363 893984543 932450038 811028739 176369458 529889120 141671512 139275373 245008135 864728550 318136104 219388455 251409943 780615995 27967109 795886850 560888594 339066453 889696371 284467172 231356611 981838060 346732858 7830688 500077935 64100286 276760 522371079 751396430 185245674 790380349 565087991 352056599 388415316 980457741 87476547 154390211 666006927 757185499 848669124 67243973 582632312 770658539 459519005 265460893 684324251 998869927 864204030 378460458 983123093 690367479 415582248 258894180 257058876 479899877 269223111 906074315 66277866 752990840 207821565 883709526 409506026 568803181 219412839 789085925 859550197 47008560 604648606 881225006 246516337 408895885 922144734 233141006 668006701 325657206 987165445 672433412 314823897 140389170 728006193 304982699 549005463 237649603 106687924 594994982 316768063 513304673 863427696 628739595 250307335 913019619 249359212 375874223 621260425 397826821 468487672 11594719 564699692 3401721 810307612 852538360 757340658 989589568 265939354 586806 614953768 115276083 684887693 426409336 97421217 280733160 229939274 991241496 922292500 137389348 903795503 379976118 515710408 999421925 804800978 527846600 553057860 934617164 395656911 858830266 173521609 621287230 249464414 957889920 111120498 339991531 72596451 153845005 371443563 925521042 502209375 727513040 706621436 823037051 662880854 426159954 470494448 390531461 239259872 300558924 243113641 544221104 697805352 539006628 420669267 116510279 406428231 738798984 711915910 119130567 931869948 552478206 325300896 611192696 576305053 883991448 304248404 341612954 674248455 227224241 726392994 164675767 644876477 345406401 554917652 651667165 60757656 960246516 198911900 456792466 685838209 898659479 800230218 343354606 591962635 700968797 908919867 207798111 979546402 778141093 123214200 242796818 134182627 499910098 550646438 144346927 896622681 583617644 826889637 526065701 265047487 865024621 581589397 891695957 829968077 337878461 87150037 846037286 227197905 23718337 231612028 417844083 90860535 774844311 83226855 399208817 249988426 570707704 610865247 825485634 429738528 136488723 222438376 363253439 472160759 75795967 71111589 616348052 450167109 648275581 936769702 195607625 505180681 303837759 138167718 560658076 403829897 614392661 451750685 174279701 156405548 221305628 286991691 484595709 848066543 249283148 80285907 974312767 766906587 810507768 742111051 17974938 609391526 520605123 157102114 656350038 787886530 387656201 529446134 483747108 264458042 227477619 969627947 667293388 350639985 88074186 124374572 983802859 372362272 185043965 551994887 313456119 650745673 431620286 277344798 336704794 553796662 619168686 415754812 631876213 186617948 585452500 997100954 628624648 95204367 356738679 374704583 397041461 711123992 582026064 506989815 907906203 492686603 882029847 620838419 922984092 957027890 357243414 558329271 479277901 252012483 87660304 481189762 746426721 465047618 477485345 587494070 227056736 475376280 501661941 290676379 446144922 741082973 710570200 92099540 607132676 434977411 68556450 751470763 916654487 607322173 668943286 538413352 955384269 762115744 539349806 822258656 801377249 752784274 660578004 688988111 996598564 840878289 288686372 937074269 801862280 856712421 766437745 47961881 633087297 734717353 133117601 338096661 318785362 501316126 158542283 532172945 873342885 586532829 921783740 506756818 371254543 878797026 204003517 432631973 261352367 600990182 223154275 556936792 402152049 31729250 456766646 400990275 797283951 462173359 968138842 966548893 602004246 117863958 998966209 830344081 97920606 903035300 364258435 558355335 13478263 153175766 816371568 359079116 924258455 47547265 663693094 122426766 950825182 171123849 198386138 534927287 84992991 978402583 391293923 811178148 996651744 330639595 934358951 127458748 975556423 430495517 184958952 408934659 411531016 113372092 232383723 344502239 535109429 361046972 748868180 495206245 462205184 419681423 115507916 151649066 912481152 356664165 319559253 833126259 444302269 94183898 375910188 448292854 798544223 816827103 936998454 953868949 530787728 728333313 607561367 518763405 110858033 152242198 664098170 479635981 68150559 272907413 449347576 872873687 458812388 167406769 597241470 947978855 242483729 87229829 113377508 227953980 189059774 183801297 593479298 62341026 244718596 442193420 648700998 451330937 262120390 852872855 781081155 677673050 35758856 912469333 567657772 883724062 895537449 933642506 786042153 282760310 623449657 100674230 770205306 216277723 518810918 271653611 798987000 433224244 101973213 803701596 848733631 840004716 563779878 499956267 570917158 97718649 57935507 49502126 578774291 541720099 259846169 2305465 207873238 68281799 645199541 553295341 420643318 538102840 850458223 555711061 622629890 972417283 601146321 967051349 888525569 288144369 932332923 780682224 282928632 6564162 400900888 583913997 661924506 3626169 84332286 656744940 509988306 844787706 879935812 630810299 411343886 365574629 232661190 936931774 831827046 229918656 678615337 891451192 96756946 583899262 867258544 870777344 988012547 667764394 369508733 631753692 789963030 884900503 48362317 638477500 596083142 467336648 137215999 139325227 682937824 613330134 29229369 322262731 172590584 991357156 120352590 162472211 417486594 504166063 629384598 1793585 807123372 463895478 940309396 673186866 636028461 231113607 268075053 534334175 769995253 861818952 195671183 869166357 569544100 87219706 224430393 854164956 711818370 28886473 657922696 795588386 406418611 895840341 613583726 418195055 277666759 888539274 545857217 203046874 596646789 779398829 978270793 400865765 954074542 101048103 110871541 905702626 535240618 572154207 852978069 212897270 573500374 963052678 601564099 1759020 712138027 168130247 427259194 30474721 277868071 139277506 605347197 832087024 403647286 709169736 737035488 988489999 881914042 434339882 509556551 790618572 40477718 846361606 8402140 752443934 970962182 472216795 492512726 771890818 865830582 350626020 652170480 498961740 63204332 443285750 730005231 512193382 532092351 450300262 65536791 898280030 433014515 771805451 968512862 457706243 20915258 417179133 957020919 571117745 445639005 995300201 71485873 371316 105365291 964968454 174025375 637779051 492133464 5637709 463272030 951638266 306910913 397359614 905364901 857407726 919276035 25011099 615329674 424811817 723022779 236293008 90824183 378613007 427588864 270337364 866993533 797898298 259578620 392994674 669882704 397103833 465733041 462383486 910247915 835805733 864243548 219822400 54597987 50346691 744341470 498030511 668303321 475940678 951840448 682046183 793253699 722856822 399359237 560370637 171036968 577047930 322398648 744458203 397310719 6641914 352654289 723803035 799353752 708422604 651624358 59409701 477382484 676969523 480604533 452141718 678736160 314934823 180973671 306215082 449075681 403563504 395612967 846385044 336974051 311296985 834463885 310921913 542619991 514244023 279463159 498007069 312971916 295523246 846486097 296114568 121720615 705371840 301733315 497744041 529284141 609786081 924279231 92418212 45346280 31020240 260413219 296294596 74107958 339140242 277952204 374080336 977282298 17646356 344810114 86935176 365092529 432856646 93348309 869529250 709665463 943517649 207591044 269913848 107259569 447238554 219926777 358163422 265579726 760496203 456144170 238106017 952243587 287838445 578430428 611480607 575234916 114412143 83696658 922565213 851801187 169758293 745495392 457493790 973234213 238179846 908492285 44461993 87996058 899808445 678526290 36916674 81693816 103876778 608996788 829409688 645179963 668590420 748851046 332572694 221050147 430470041 238667368 94028214 435235308 812131083 664107291 988307331 691332795 108697201 136974182 466719665 40297607 271094220 590750662 486084054 409425275 60692411 307075450 661098896 994606232 845880901 930436289 584374184 86292674 542953384 253283559 717021805 842809705 457558712 155756860 689630266 141274391 994772317 331791212 31768455 461361962 153027022 810034743 263503112 489617859 783814586 761554777 629548455 683135277 844395568 898247916 619942343 654932486 780947708 66140964 531754138 970327005 190705521 332391942 759656216 408901418 185591822 698345190 903770460 28334241 315938408 463058108 970842017 236999364 375223580 833646873 191494949 850285887 802736051 727988478 582820105 903932071 895308975 186182538 183402245 202501265 528609822 329326744 32423690 430625553 920873982 635751118 194881209 531499035 238586574 927134675 720130531 675947527 766566546 635691519 653751341 182522482 542318729 560399022 484559530 238583076 168856195 976767762 240736145 386722597 632213961 389431156 248813026 327777856 988264745 197499928 423417644 532608279 436647031 901111454 492908875 931533766 670062795 237133712 776033151 243468142 150670238 893683258 718615688 503279151 492569589 667841345 764871740 494762728 287093389 326274862 739987479 966946209 202639926 998976472 108002483 523216806 599537913 889940072 58449633 671058086 822146021 41282947 688712065 882906057 572904848 555155281 367843408 206241230 384121735 480803070 489272261 164393274 55670611 469674539 622524275 284594258 558363169 753653337 21835850 585306930 865520874 567073050 905396807 969754535 332630513 927645955 807533422 889392187 665519086 947867762 378433253 10647527 778214236 277659120 119184010 250757355 905787598 400091950 88186109 399082358 361438599 793130664 963401698 520258315 54882141 226195396 784259441 775929505 872813139 469291823 478133497 795809875 566624888 459399052 109455321 8039041 168408923 83273332 188800235 930689460 62936901 241470655 396541427 791648831 465331460 607377492 137390289 778586626 920233134 11462920 926956108 218448503 783512720 280994857 507513913 543825278 44606045 418132117 572473866 410518912 440789284 854041289 812511716 731021654 460630599 214694510 43170791 146616477 310621125 452721132 733986055 88642285 733240785 96009081 889002749 336304667 904066945 422219179 627670848 560787076 448471532 756277503 682761953 314056802 238124448 785922264 629291535 989745235 104262204 361872913 861034473 840660329 430280416 291846432 302564848 801666285 253771891 657999819 782904037 91987673 629202117 295941297 689082720 817109649 490163172 772710527 842183066 806856316 176153461 459773074 965183977 731957728 657736840 650308779 278500086 483736875 451656465 37748403 292306368 149543072 442333956 314337168 490725693 424827213 151005140 484591890 756123271 105801197 430807202 786918187 437646120 542187800 648867065 758340575 45055123 592587480 245460487 782942027 814896509 490796183 850004639 962910930 732741000 6948278 901152041 254455072 300853445 167343709 222271734 853938410 410840937 219739737 556700716 145703343 910295293 276618772 676713673 555222751 68314865 824568668 848762346 710071382 301373314 235934107 380638981 845823559 252173915 645606695 392511450 210988387 517338071 22067570 944482576 640888859 325414962 83963361 813477894 765888716 879511855 199552702 856192445 227139223 157507512 700737833 143985320 669097247 976661577 597733859 805949105 608206630 1173910 856810199 204276993 32539265 938929196 931393818 790054735 193816097 970482738 495121034 282555127 105124892 389423867 215712407 209122072 924284454 405858876 79745346 927669399 58330236 357537675 929207218 38070055 816965761 753868031 829103608 349650414 859645350 401125986 120695662 702302186 488706000 660918507 68787420 536026691 860310424 978900903 186042430 811656449 603281475 127561105 517423694 973997743 507883981 519136107 994806225 284817564 308999353 603283165 461486758 187453727 987706644 97512135 806658026 201122801 199812645 714644854 243450798 985532093 267851736 717073758 262342821 705452352 997912154 266333410 505223592 671936988 772587819 15577745 705926065 365562972 121483031 545632939 200929236 236348239 327605181 800911806 391227381 469744721 121868607 382438843 368873068 704236456 197059891 316129818 373081228 27939514 114533716 668976547 834139680 31524111 759309994 991360529 238869004 983669172 34934369 325151021 871429115 872665375 858808658 239603871 161068839 338677288 867901924 247055101 6135732 956020693 885328522 624124141 124982025 752327057 815233637 550083029 158912076 611109053 906816956 896400716 153663756 107651968 814112224 621882270 664047465 645988604 440211772 583965750 526916550 759962546 823705799 199746399 159470368 147826157 979621729 782303700 958064100 422457066 447757238 136501965 981088548 170662017 83168780 380697299 600689522 495721522 333430060 155592102 586798280 68941015 989604850 794912863 970526684 538959416 586146548 863689113 323157539 154183601 195380444 760641970 634533735 249253315 707753986 881570483 513474680 921194502 956536712 129507382 241078222 555991322 38188416 252936878 199899034 54799865 10628079 33222268 962499080 746285595 572109668 637705059 243015289 572603602 953202992 660018760 438993584 842074161 189890858 607828438 703128883 434111403 38935646 737319258 381784555 930634224 184838891 187699007 958051647 201786701 65232122 475276974 426791079 999317209 607027024 559413439 6901797 616222213 311734652 677201151 836146358 304590077 72350167 339585006 541871005 926116568 368323594 507745888 797047550 284669917 112845821 394216357 718654372 7430010 492242333 709253131 49658344 685657465 260917689 386138347 41531577 90370955 494192169 292481417 126023568 528345324 626355078 885050518 701683277 724867366 383858583 508887596 610045240 32184137 16099438 244885494 829980742 85453735 853240546 462009483 705236991 189592456 937220460 403876378 511022757 920728388 436117168 683644482 219214749 53355766 919313370 819651645 381078055 464686314 974147992 759607038 378096903 956569224 15272300 256682307 137177902 869149528 889589168 572751564 301107909 160917419 404041661 166400561 523128578 978091072 47672883 648156137 202711317 629464076 285669629 641881050 284507879 428179763 90625479 60120586 978810405 102939140 105926064 943377242 395245760 574629466 377945409 505443569 899045295 570852082 434217031 436129342 633781458 784754201 150670726 194150539 395974715 546068760 232453284 436408056 193566989 166145573 669511464 261244075 795829678 76827870 286345871 430157691 762915577 574440836 94196471 159449054 522949639 83899000 205228696 418211610 61393081 895047056 610478080 74296609 274110727 800248394 635996914 858368619 335167487 428977736 128034859 370915351 523048493 653141522 470789201 4000909 475267731 236206551 17927918 606932409 549240401 40800765 146034085 875960647 296426520 815521469 211424814 476811291 934069942 190014717 604374186 716909344 879527542 754283966 203267791 496198089 555632364 572278351 93481640 907115868 515244487 459205375 282151704 421410852 647280210 969011945 194863675 916889237 165763841 660615657 821204642 879001325 632853046 419764054 259656445 632228456 994097821 120238672 494891817 894988965 140084952 288509943 943218371 816109879 391562656 878741343 274758547 322822667 576452654 517722749 365819040 186800042 438891053 288343482 487294093 549247623 319405560 899470299 514653179 408263660 259673205 13053683 73651541 128120608 475166869 734293737 379816319 692067770 518921250 105183635 101441522 999230620 263806108 111970062 219769107 556366 178919623 891426657 498334297 628436249 746690188 719671210 644009354 782884948 766817932 180111694 854046295 420454699 7880865 574666916 354166848 697911508 685882231 961405164 347745190 46433181 803141648 303612837 744540259 100614722 168696945 342626535 775809651 891290399 828043736 910033074 14894119 457186794 795337505 687665224 921344542 746859209 51623485 943784609 292262587 60933550 128270045 636813000 664675499 990516516 836318624 205084490 138135954 864570226 992079731 367601391 422404399 945655944 111175578 83136934 972415976 583879734 634879636 152605569 78995437 517275942 903927885 55169124 183543765 239708803 287805366 883829732 898183605 115933211 84127852 68560335 118999993 94592457 653309181 429613849 737705613 142646853 485748192 222912468 595133597 927774756 893047286 638307607 604507305 29460638 699947356 237947721 363103727 398281941 343468395 950069788 241608898 565871897 121523346 476472189 612820682 40623629 402273005 776950518 615556286 632656141 939160004 347352088 624336682 373124313 294289223 867751549 320374078 744380630 299954909 189833222 332929402 959438353 96832845 262092628 665196620 628557954 586859704 245196274 976255320 186807454 424222178 690790093 984734164 108691477 626431607 908150237 600199846 779580561 353893382 946645227 523849628 870021430 415679736 459809864 441783636 649451931 188509563 194716457 413301492 717455520 890734571 587823504 694105256 268901968 427734793 697684258 787610525 410290425 710682210 955418497 466296798 419795551 824198716 106862943 367543063 470321658 107203258 32216439 147806111 379387064 103564242 990002370 453552042 479148059 369294835 651988428 973885550 629744641 578952236 52050604 587006633 794875097 769419543 252223481 468068413 464837888 498472374 548195681 278133371 31558059 853610095 970178031 106990301 559185815 946100889 645050349 513142307 454982643 666017584 912153373 228939028 232602938 186601962 491085924 808417192 195641979 658604086 513544335 552254687 41071254 678781987 652882683 199707094 19009942 62097206 116065493 571938873 105867801 193362091 76718613 468061833 264439926 67776085 182540855 556833565 171767004 994946229 101573059 64867982 399517085 390014066 778399241 501770406 313412235 17976015 90213927 152180241 971931141 896631459 686652876 274657790 741082193 478299695 490693581 351814551 381972660 719419511 331678618 908704921 346173272 911809287 702395898 238421327 926247994 746946243 161064415 576281184 902102517 715409835 427407523 806157071 672646129 260837000 342898219 560953783 103194525 964740004 16542153 711573928 2743856 221362530 743516600 826701770 45478896 940110948 340928248 878552367 399677922 316768507 933890156 582728143 60299606 918021606 752614206 143812950 444021656 300328080 374865115 877724414 251026445 208193048 957031512 524551021 422361109 362357832 963501430 65240577 672105346 974961725 840110202 61450899 621906568 465291989 699530300 782700601 180719254 237761072 728934998 576498509 446319233 781677331 312139929 276066532 673701957 584074186 594542504 977614683 698026162 159572055 716949566 56197420 23102615 957461657 945494207 447656757 6083805 728575419 840887250 691829051 371207599 363345033 614053609 826107015 658172055 665478767 652726526 477805058 903219403 707727337 389418437 395540719 909305361 133559587 440043993 7240231 28526034 729330467 818063785 598440091 853021476 300600520 269002897 200760272 804186179 33736131 41767751 840776166 721053744 446696508 412229918 534093653 578271583 196289393 72369408 881837935 426010640 640107857 139530672 420100936 523578265 629492962 163154240 666564349 981398247 290702089 359724497 480813006 327594904 459917066 734099269 130177194 473729220 558815756 984759376 812405040 735333192 474858084 348608328 943602989 77133819 506393435 876592263 497197721 452044798 787976828 806863010 821144306 739945127 212044919 163941352 747023476 349742922 247266808 794555660 125574495 934197060 922120912 129838591 544250115 503858057 92549320 748962523 948991307 127482264 721767506 505212115 456041588 280619208 730048496 643420898 990173838 229978322 476176298 736763526 708275110 943231721 794475703 244212221 305629502 584259860 901619106 326920580 774192425 568014514 425405704 337667342 924835954 730347525 700943784 673268480 319721458 110711955 471583113 242534375 285745145 716305232 670865263 885899721 291654038 661985251 371191110 301058668 868808650 375353169 821866729 862900480 26133141 150129122 461751266 784147802 610157811 836773572 340519818 430084398 690931583 602435472 219299425 954900101 574459029 196050105 756803524 762319614 872067545 757537720 400068969 295787285 976391201 865722699 373622211 174788125 128015834 60891322 884932054 737334707 11008979 633656564 243805539 288719741 441282247 690496867 902291954 295098102 320636476 205105285 691286684 301679067 350509903 547414363 593728593 935161232 261190572 115703374 289456321 236414293 868286876 795534082 144674951 324393746 957279752 438036296 768993691 230596019 455407825 545742733 949281380 520361859 806264431 173648531 272168625 81869833 510431140 348078141 172208549 362309117 982496201 123840993 131856858 546683882 734256894 347886228 80907135 339060989 401293280 916897375 338057846 959411099 752580599 546742377 537592201 454449437 414472354 380507859 775914619 589120448 218470432 601710341 901507592 197638585 76200545 564913593 428320823 453385588 732807236 747180740 559754023 512438857 55002120 171035444 161357278 56108021 900061255 391550048 942314211 492478532 729555250 583002131 233692401 564309429 729570053 457934632 469682306 990974187 157705971 121067970 382940195 788371469 967281758 651645715 43252660 174304994 661105053 942993624 228677463 386618098 387297063 103931378 307287872 769427354 977999511 632527560 197018865 554906557 160861877 333689432 962296458 641130948 562727236 797564379 819494159 84729759 439865279 34429278 217117553 539494746 403442878 572660111 120795891 869348733 751212645 619389748 386913704 488395297 968772486 767481655 729936694 276521445 843473170 888619350 369468128 713923120 445320587 84220139 84544695 402051355 277794380 307338679 284256587 775582349 643473079 554979553 731928633 384882192 348079693 532164377 952486084 422218623 334913281 476423523 583497084 725805600 912597580 787799602 976174671 129419185 447368080 714034590 822383735 199330657 786615843 68518433 434143309 676647971 637083 523826349 466854415 613593434 787755172 109815922 766812082 534635668 185051428 497548794 435123799 684269240 118745805 723056398 505839058 734056543 487704029 307012651 652382279 615453305 527312549 902487432 555124179 107561403 537590063 824755849 837109053 476720004 115266130 923248011 912823826 752641034 342449796 581788036 90879719 223801789 5594561 191508670 881593809 309243815 436440738 53341670 835868725 555783347 38106255 622646132 702358638 158282995 918674233 586656622 364376021 935360447 9307294 798319899 160033012 54381377 189271082 788139435 108470877 843851837 323828952 273142976 399521217 219059735 6645102 695461720 628942140 243904106 791533187 171313483 886573202 706170956 324508673 706502367 784696534 817446034 824418028 607033677 265357646 497189544 616972484 32180554 384871547 920390421 836858956 633941080 431255687 429844133 564847666 178125387 418534109 414451993 677201563 647570879 553780867 451365482 363041060 547946737 294121295 516017268 291870210 432599202 912118659 254849070 759844685 370246692 162787006 980482519 962129072 948632629 441772901 850007129 986657310 847067649 798802548 970896958 307723220 502015834 813306873 355392102 657755280 323510170 60409909 339561004 320820883 37252213 442152323 580654511 225156004 598162566 586002362 836710002 768393227 699111785 280737187 30047224 154816539 680079172 363271177 674668062 733338986 484189590 439881491 408050756 69109480 887960409 251223415 372494375 1678460 505964958 407610983 713082396 236903663 740500867 749222429 106822102 178221616 464578380 868061937 786581676 707039632 860757309 423488352 660456585 443565685 712557575 224951279 441019047 63913111 396472350 481687667 403497131 894215511 236903109 435616992 593886175 298127113 220284173 726736103 312634774 817450065 377580030 544429538 110590368 335708293 878382690 35655265 928348015 66960064 665983849 199375096 609056055 108999174 979799672 511747462 905706433 763477268 792075072 151363596 595857918 133082686 735323858 101665441 595160675 485149822 872959562 487824657 346815675 631246760 674050693 993146125 414022886 147011738 148378433 383651803 60657581 117051361 164626906 956936625 158472651 119504626 877587169 947628626 291535700 270664105 192348556 527153949 852850493 433067155 208230986 589709429 113308559 956191354 217054775 427954663 925148411 485698047 871927808 931602424 520941372 102797215 699446554 374656142 986743816 468725738 455503198 340116809 254182453 790800582 535611265 20410382 656276444 113722120 72496122 958105895 153946705 108412021 607833444 227986203 387888860 257927486 829611777 190035163 828622629 671362565 395409981 511315264 949440799 916999190 654616471 189085271 311654283 413909480 448498803 932004655 837255584 644478629 351676864 636442927 809097944 923461820 784034267 354436312 65434783 475933947 708627403 101897845 288419770 75576346 484217877 343812311 854550260 442199374 744093869 327763915 632429350 674850086 534085527 61596327 887840443 415551262 336393810 563291269 566415638 368541825 758495676 124002503 525256173 288088361 513915446 905472319 573520057 679214753 705834981 265973034 417562836 990873399 333230803 889088750 763088578 181101243 411195383 925585049 312084679 769305288 81410071 162889490 29694630 210634458 972528021 311478342 766557769 518912929 56513008 930136902 320391340 720552105 554617771 134484954 48398804 404339738 285440378 406442525 623959141 280471165 364386756 746976803 229231554 450833151 586471931 433126146 310688280 399160694 994447279 359480769 59492910 523336495 360828363 466119330 575384453 695209901 613907615 102409494 303800614 337100801 38803826 246016988 557483017 759107477 99491286 102631265 687929739 244861684 613642419 945127194 943398476 779772976 381487739 322047461 690804990 730497096 57921429 84857329 692417496 522252636 501328532 894320316 223133966 715651857 178238232 520013738 263337411 39661835 473304098 391853963 620413677 130752376 889490113 37322985 642706084 222236645 67397178 548123459 607351913 836116310 562493563 451679693 857939192 227790941 501710984 282676734 917362002 586174637 333067145 561960985 91142556 60887180 682274903 79610208 89452405 408862188 913506494 926281181 357943179 19423120 208000394 356002155 571200597 55523350 483710177 312415535 939344268 295161766 163734792 975064225 527084634 597352847 633533274 72810131 252397318 537288199 406456074 299881777 70942694 667607342 443754935 68019868 892651719 435546606 30945135 893115475 507189198 562362789 414294709 53254170 126759283 904473920 172359011 282111623 770408907 121763906 379734117 757580065 467456002 304318272 184565137 37827370 406015259 978473532 463870194 823349724 797012543 973668800 329063447 588717599 323208860 955914064 165902953 232367392 66015114 170893304 781371207 550094229 515582002 19771618 667963889 767121674 751443425 356861069 14604354 608419210 456495910 206346307 909600765 687572085 754429143 473988393 44704133 694424180 179581305 432357902 164001420 15347206 250231463 432640511 949508548 556349962 238363957 208149975 257122430 518944594 442825909 758101559 793538685 984656185 427508090 401236067 683030940 823888337 486688018 915099080 347346200 822064163 11464890 135276665 995444369 594295338 717749223 370369405 818518048 741580861 675474154 817682674 764560215 846114567 614169775 890099588 532812122 428490544 351741390 848035531 564964841 909910039 359496351 353035341 829286572 411479289 973215698 168205352 201984766 24567092 866953175 865389984 249533003 885427346 128164298 241044338 524837207 633358822 672742117 158115222 2057751 157576768 886328292 277560286 226946404 517232239 308944742 903188387 262948680 993530232 232313809 253037639 756480502 219977946 270502053 746756440 609572506 483802292 697981644 865002663 562055230 23049160 621416088 328778608 642257517 917995297 906967473 346857310 172450838 493056147 883235774 438453687 389873399 595888114 319537354 784985132 871632568 985541865 245229701 155070499 244283770 621916391 933637530 724028099 256881903 231300788 796950765 559574857 352551118 94280810 467594744 995279635 401865090 864666111 906582914 615191934 915415122 994515973 935143860 280277049 324079788 918249920 649337170 176246126 647582768 944491661 471779190 628258371 797047398 205354972 255118017 798761395 507737202 57270901 924871050 975549938 366668043 72778944 279001607 308195678 638647552 287054580 290210648 575410689 659087017 375065868 170907400 873242658 6200764 60977099 24383678 244760752 289760633 467808488 89722286 735797408 909865649 35602276 553709465 495327963 954140010 753731595 262967390 341018626 519156856 52864785 31724736 281177010 285369279 464807054 873360875 484747820 439353510 41747563 118119440 458590249 850439936 15803170 786712314 677722481 4345451 44401834 912001467 739217984 584863011 778546032 788629457 916711795 540301197 660971524 200639582 594973820 896714277 530327946 656988055 529405265 40087190 200835092 764260740 986710304 97294763 989181408 719595285 494479684 707687553 425561869 815650505 61504562 757975267 641706936 752803944 887923395 20232630 313184288 897154729 454207716 656357539 875946576 503506223 179200275 23353471 61077632 533406925 777289633 291600674 652146257 46486606 576438416 406977098 958340637 627225182 244717293 551225057 756205545 557451185 586854194 9088696 217795517 922767005 444683222 864577455 251136416 564931012 964802739 55097316 896817282 348133880 385107479 755181693 125561103 511500413 638548887 82210557 827246605 575024395 762318149 406889530 314516562 279381923 635674622 984886051 892048252 721860236 407679771 630119791 709689028 484418217 151222121 429346572 79167788 391862606 846786882 43032607 878891999 496578730 469432117 549528191 577804281 564290730 93604726 755365579 894795090 492984666 383475920 364069221 713613840 250957449 764869106 133424608 576227538 175432906 604013017 158136873 150868574 935372671 494898117 418072533 788877208 48208348 716967793 994399067 214841182 656805751 628603327 593125653 52096070 75319996 777950717 965322367 645015605 138667971 714505965 689074601 249010657 182793375 380857966 876902178 139167100 985680177 776996039 735287006 559164208 66420398 523292197 217722123 355245922 562186041 142338700 98802637 74493263 166646207 580941796 500587615 607635156 567206753 533574391 295670720 387193378 867745573 622765440 783116871 479798429 640810338 417500604 957830756 391495752 209436184 128504236 727489049 949892220 399217848 127966620 4215739 93145907 453391241 468437524 364751879 430086365 332167783 138651 238985288 404465312 797350972 845590025 130276062 80013798 266700176 675073296 416242365 640700966 714254915 337704830 467547602 548842106 623599320 538774321 953716619 105197487 772000514 810698865 176473572 414293039 6533619 168236451 609021132 404096455 773623181 268816072 231500144 491836308 110655425 737775163 760147913 239002921 635177763 355492367 875997083 703175414 982498750 61141552 998847282 932893405 834858624 406463431 711270843 585021209 245697844 506603733 211782626 643558908 335288665 939967839 711614372 169835277 536579752 400632571 372244401 125502729 720948748 790245753 113466662 306312393 874337833 489082852 92428603 82841968 590493680 125211833 954993579 781946374 779086615 533677190 802903483 715459518 255729882 842624271 216317107 840386494 156759440 724703258 447234757 934470757 973594147 798446024 33426020 125005332 307853407 413082521 134393450 553604624 444764291 270155868 360859816 549400618 688203945 145169117 518330472 410156779 728396636 743541190 67975349 397207463 470868447 721345947 599927957 401269142 441589373 750668209 221372951 287553036 507722252 381883574 208704104 187824497 288793721 571978840 474501063 274344620 646322724 33363119 617689061 558699683 711430283 826703129 689931345 470030375 338172773 976960774 461543283 103409450 447670525 761948827 747231251 452939247 425793009 53819191 702407583 708587988 50176513 980769628 301364418 206500431 475808624 369347376 153471579 314709337 23909698 99664627 624447386 959217587 643547139 136010393 802353163 295038424 751772537 185972848 869178323 603957855 285207951 388974912 539204275 893388809 672876370 617397382 921443971 422637903 979584288 864656698 785321219 932897621 723228312 709519542 808102529 763850621 337516319 174511173 951009300 281165551 567713779 432136109 720765048 28708977 290614501 597290012 952405037 762578425 730128240 672812357 196190501 929007041 579897147 687187099 337171447 840247828 465046480 711594404 729699723 267353518 538478630 374167694 397603284 580162105 844721309 340163317 918417435 261196675 128184970 925589412 741001947 690027320 579255650 858234951 860324888 470726797 945342265 665203852 122212758 626763667 610714864 262247650 167689121 745430047 835695748 469072658 770624875 400822637 688554112 233156152 407082823 555781487 795703470 606218312 701498768 865606567 222763915 937859426 426044091 190394827 231516650 179821119 999101688 909390069 703343976 248671290 312965518 185914580 494156717 847502810 483114564 669916896 935692120 642854720 934905459 243233077 563663572 96211636 770220267 124237682 325057743 230289090 842739533 449201339 474817663 766632600 383371511 105455550 980749776 283537939 862650688 594314228 531066676 349723165 886126643 170720678 76472755 803813730 881984938 359985051 244924429 200794850 296668867 909260902 739572637 246994934 836137307 664061794 340900824 138193869 845130713 347378001 215473682 675148802 291330140 958007725 200199091 903715125 107050102 958126049 348935026 69408464 315694106 297042608 113334718 91100308 556136094 151813582 473041823 560285189 601331893 59324386 179970184 576819243 819476959 128790997 179058732 387560060 842892247 970460051 830689014 646436945 112484181 723419606 407336072 927872658 692923716 310848417 1118466 19164477 303245287 130165812 154817034 204831299 104141881 120249178 357611915 793915423 282687114 71810834 544947936 588048133 743254622 730632910 681287548 465956279 266940577 340331203 337816711 687483050 495219569 355946437 235196636 102742911 192551026 436874344 408109994 256387901 158355395 916028729 507339456 863978515 546825543 820739512 547769109 23674576 235925778 779402149 995094748 176686881 799053517 94004106 641809419 981988533 202554784 103677541 194976657 491808342 720537750 396877219 847062337 642811383 99915592 282775908 181235847 77680745 795280866 711780366 339722265 437007579 464626505 564418660 762195482 691466684 311873396 814375803 360088821 299496367 617980839 581519071 498320646 825666433 701564911 51007625 12954368 96995331 760050861 583788789 969290498 788688434 527326094 920488112 590793956 873810243 646519203 72256784 247331790 802308653 80640609 131237697 281138715 759500735 191477776 141373349 716132078 596535197 680353566 18829113 817713608 814032153 941937517 744658066 826938826 153202224 393633075 198768983 907371355 897353719 729483294 167166062 853674858 578645926 954677219 486008176 41439144 612403066 321439897 921199681 758581603 627669759 483244633 958140275 133652683 426279381 16398979 856278614 52620662 397805249 562591423 57705253 206137992 15487854 289328936 58410050 996048421 160017483 64853774 361747468 831424559 610029462 146495360 972046140 733394129 476309900 298988410 724471213 460981189 631565128 829421250 270222704 457735582 349351240 899477358 726511655 455441178 589307250 241894515 856363686 911264351 804233993 710048974 242701713 677131579 100036449 313295444 306277098 176164315 162358126 908607464 298038925 792655998 565642384 196706022 574642332 616163630 438209421 938819023 207671485 849987329 381666949 577221203 990677082 717046799 429805708 118431010 13735284 454034718 866705314 322978053 442120663 232543078 502815983 756635440 481691485 696636244 30995040 640849117 396618137 536651923 490148172 246231707 702251916 580207726 798991671 499546611 805680258 245793099 294665622 464241701 326610332 903418805 187363276 492300647 807760709 88735560 26284398 421190093 931836199 523750173 961383453 627961484 199670399 989417181 317068408 896962955 783566073 268422745 47790414 339879706 456906283 110220882 369681893 817708549 380276418 513410072 165967951 231182684 802727800 632231843 209274286 955036145 964828550 540870392 187255408 772455768 739655082 575243588 941876451 471055021 84935859 785025148 134423442 413397745 777368577 390682334 270458648 919382627 456237231 239880896 970375314 382504586 655766964 610665831 915536078 512772906 498871284 708676167 307514859 164949039 449355605 134905286 444712155 219533607 995008525 85831035 216512409 632016636 448883194 231542217 537625080 70106264 171104203 955037756 691643043 726494720 354072300 803696803 719992303 649158828 232997923 125651750 828489831 211675521 567959561 202666746 392256527 12700918 42714271 853395544 700917690 744056214 243304015 74918313 188558254 333444490 335940710 188123658 463615591 760860724 758487848 925711989 532836831 336447911 203109433 800619986 928043541 564388095 47969990 595731289 86601832 602619272 278513681 566780665 11241180 653858920 487082483 185876173 171519605 925324403 840409599 645206273 258196000 912616255 842670784 306330539 986073699 96313270 822302272 927694369 983659059 986681070 928206612 53589969 837570001 156771942 306394061 583962732 571682051 146034492 396263520 705314144 776659271 834415918 365865328 997778768 948881165 197354916 174594793 894913852 449547468 803465234 354191839 436286995 354147817 366357055 671969700 852890646 118482051 215361313 855411643 538567597 275885036 117546049 744364858 511831385 972686325 587824193 215331743 394336638 517170465 891089128 381387247 363817616 863155555 445378699 782071216 592555972 765281326 897023128 855199524 580556508 665108390 131462386 338099996 795694183 704881238 573003064 213704046 51961992 495758614 63377812 720508767 537737774 422103026 797764358 123045200 895225470 143017511 232999747 610767160 48623821 607121827 791923646 318116857 95052808 281587387 514701165 76255423 864781875 974545376 558191803 908705793 840472664 561369039 154903177 294686407 38045089 479346345 326330102 219896188 175606191 490967349 342611471 402124279 415169574 85793173 631664987 586377745 286150840 887915366 102209286 906018814 419973013 674117963 713467422 770343505 813342353 852999742 696958221 101301130 621311703 975474600 170868597 111931869 225238692 345854943 327855036 171324441 945148616 805357721 647740265 535304146 254677870 838762115 117886428 545187705 731897014 536703115 351105000 976828100 932314990 144542208 483791830 811547718 443626267 978825480 990219879 650361683 499176293 314906607 763145967 922195360 964056409 461511346 172538694 336788512 680875413 106769748 345594624 664484930 662486495 990404534 243913157 785712112 549980837 312195007 330739697 260969777 207054714 482448897 270808790 2932925 819841663 516506289 873642320 964753078 704128293 495345706 950018445 173038857 546126601 300088096 143446759 9302629 80708521 927431202 519909311 733205858 386446622 963881998 688359440 989020377 40120833 952049850 914373128 755324914 143800412 70337926 118712756 438449324 465714612 607013805 484222372 894790443 526859772 455726044 704642579 602878322 943911058 883473516 918466825 374693234 697132622 401477282 676570028 335644713 858860269 668562086 740388514 314999111 605454976 429785904 687842485 276442532 574886560 93799688 870098403 160980035 197876963 940229784 323126706 72183353 168352420 133447659 992557372 165424606 683146076 563449482 949112579 715886070 86435724 135552104 587970277 288414040 21075507 288099805 699938279 314154437 310864831 923275588 717760269 681808540 8415800 769820450 695806812 729951067 874912486 52419340 726293932 374011627 733109054 980545119 768957191 192397628 49451948 896963467 969496862 350630134 409237352 499020994 462562590 207172878 827921524 616660367 707909067 272249411 655108592 370994405 714675326 541449158 264065755 329102388 627827720 219550971 849270653 820088724 725809606 891276385 493049773 259543693 74356256 754660144 973495639 637533530 643849341 975592179 799329517 351564569 113754477 897008290 365762103 663865115 605460202 209702387 681240677 101721381 320853800 205259351 615626790 580307432 263050718 198370548 383607102 540861492 660978748 763458926 605269588 845815906 435759161 563590466 281689561 979781844 514005469 88160989 288143692 100715719 444228252 780797358 178091186 220979465 694050981 31909456 773637017 743723455 381599353 658738998 586809431 344613436 886096035 292125943 452966586 383118209 22637334 793090889 151506163 915073789 196097861 934367294 434931191 383083085 43558840 494848134 78814312 822150791 870719629 592432940 596901231 121553291 538090152 803362042 713285274 626245028 364787739 574972540 435520982 37062612 965574601 391851497 456979720 437192556 754837414 923306923 497955986 432789042 753955787 725301662 335092669 39870078 3917538 387871989 665810787 637985123 946921705 848962341 366849839 969967539 273754388 872853741 612743286 788564421 535512264 336964773 118603343 777987377 60441721 667514194 929111198 76096079 369697795 487886148 508688314 714887697 535703456 558592179 483341533 91696191 634421948 400651031 96401561 564532259 728733237 990378287 706093711 171760130 672939406 797249747 812860927 308269900 731057642 992971698 617814203 604673604 50856362 455517739 868915529 209755887 709459352 631266188 610810267 716567954 22007575 396736007 632561266 674334896 58149151 337067958 665944292 754859675 285466346 573840270 952836201 44860568 116969315 339257134 752203407 379828001 477181916 104578224 824054092 49965269 774397361 990001972 475355690 338785860 339983025 376774515 211727056 78126405 463397431 785176240 86807669 280497521 938790465 671035070 981391088 395802624 556268711 311058861 437496809 873787629 133202589 55421833 200107549 439682194 574083980 100692076 344586581 521922599 523939300 724285281 140066017 799185765 724445409 112705674 291714355 16233689 85816847 291444383 718759136 740115361 552143210 731314338 554906698 52471954 360651026 175394138 197873589 290362527 414201594 876158577 33923484 873688655 191719953 64451811 476791754 741388977 352365050 599852189 187640889 412745328 681678822 367045800 100630904 789898914 971485263 403774097 730603248 223703683 407046206 248199876 86180498 128735406 854104710 393163459 492567797 330447829 328390562 209833956 916997785 535548182 840200629 753513595 900591263 421161878 215207648 910924082 397048948 387510522 677455212 910865025 468154800 808573413 780641099 881143224 317403034 39872046 983255286 267126108 302238517 795600451 84054900 990308323 248091599 817417620 898004961 997719723 300898395 459242122 444158326 132241205 856515574 855311503 654706902 15915191 236394972 910739132 616288264 654198449 786690344 530304240 230057279 819512862 920026330 793507446 459637319 933403697 1165119 751803708 512651033 106945639 896262842 745958605 769071132 906347635 684962050 419870167 517322514 800182274 204913867 741325948 904478342 183670609 717346160 403657217 935859907 793385757 558337192 436397313 937999212 620667421 685425772 479003507 151496761 87401913 629954098 79151125 845356383 518914236 834610311 325754945 859546793 427533468 549816087 629008137 500466085 298453115 954606278 327350186 40472031 773280766 254902496 521281417 469882988 102492974 376641494 949385828 452170542 327984653 257583641 142028335 800407363 921872442 639355484 636281392 191526840 660184195 977337401 918231147 819626598 958248315 582033443 863529975 666525839 693617767 123208509 6527060 471727807 211412009 194595461 748803076 750350052 265780161 625693233 721573649 769364794 177082295 921425612 41250388 891112407 207584749 708692421 17926722 4597512 562548895 60251900 396851162 100476028 582077660 749233470 26312317 667212032 712923186 183268351 455328839 262003707 760320112 627712480 661494492 898309180 525390586 489505097 707976827 604335164 647871278 827830945 446444182 346533245 156106769 809131147 974637460 497264311 985776445 721569850 254293161 310272625 437117590 300986608 369969210 446471586 795992755 502013547 732668971 45907050 523805341 651085575 347689206 696229853 481630435 455315266 179262025 116982933 387351968 256072947 406291260 263285376 464951649 594792659 71365024 777286214 495712468 265474997 10602585 918758926 87558395 768989650 183168686 588121527 740668543 185628842 982596800 394791295 199184160 599918575 655106047 34739649 755364286 667017712 407623265 366131005 512380201 38074431 825298585 448488382 167069539 269495044 894661341 883106797 546436265 871581552 56542292 583540512 88341642 260909961 192440706 329031812 413034738 381116297 53967320 881389866 543333014 989266149 154535425 773277475 21691580 241008735 423916150 944486122 942347449 81216348 612588248 195959087 484979072 536625335 671471384 296241522 110157993 968056295 149786430 3105869 793990033 132935751 723498389 873020999 661918978 747262232 199166568 384871689 572594463 410668682 147818197 117475436 524810727 834922883 466430080 133821691 517521134 756533990 90550859 352620617 463105181 47931292 446633795 158228934 693662765 651683859 761650137 727823184 40679539 932015781 97115881 923533849 351983716 869897884 623265900 8189002 887415844 308754123 435265581 146562054 350077268 922968106 737833153 412892904 586809605 454063524 414712681 343793781 411048280 10693948 433558766 172666673 971227382 698240150 53945103 939369641 406118147 350287225 807401540 474005096 597433200 800749245 396691379 939587875 636111392 221986679 905663721 148847894 346540679 454313313 830604217 612846918 668166457 705821424 378353273 128913913 100782047 691353189 529574540 684304355 502369474 668162299 767761829 59769259 291979505 670144721 475861908 340004522 605513191 300785161 784180396 369130258 918796803 255848822 82022951 74534645 237376521 235421569 248536373 628945186 633106603 783077296 15194852 949758981 589993086 246484078 827687938 7669662 574520374 994065029 919258656 158142520 794408435 415087332 877001791 30662336 384224942 846514145 908496144 403089298 695501747 745070131 923439962 594822128 72082216 702961699 991438304 318743947 175204325 465396117 191985710 260300396 708777640 363176130 733875504 168779754 207141865 787554624 611621867 805325014 665476982 185687971 155477088 83368536 872593164 168715304 277818477 48386808 496657918 116407181 310456338 918094812 870175181 825856551 228672940 291067185 407353965 174831913 736266281 403710398 450285362 119850128 653244470 994970361 282998928 507253111 52967564 73126624 46854396 115203876 629424820 89391413 677069088 631299981 169661246 528545477 30086175 426210473 201090315 397226474 735057866 405468245 130484152 157959788 355337109 363479773 632076421 54321864 305364932 645634536 549382500 464622439 544074849 410714246 548370009 355856528 406994687 30972711 1794608 359160096 271902711 269277497 190096726 302907602 803713755 131551340 878090702 240692550 461568328 335840591 262132476 23636310 523704233 984710037 327838286 84012072 716273232 766326474 935407911 647675106 711082543 194574474 845242223 182016841 831772237 904989302 170011555 309074356 625526940 597097294 16033781 326376705 34741255 739400596 964968266 690413502 654364667 803365565 987000820 621413675 974138353 113129551 45997227 244524453 261131378 825455032 328989243 811036181 289132073 631323168 582913088 609938047 953279969 765296894 395218641 649184631 298345673 325923069 584664027 968195649 350980606 650901806 733188138 992697583 293806304 219987645 509765145 692434319 454353308 432493481 849650040 303157338 886090782 21456043 523702675 6250193 40859740 16145255 622253623 454308537 84395666 614728931 329039923 381210805 259301597 900919317 207537964 532076914 452083686 706257724 871621784 655885128 789821615 316919507 359524833 919678201 266718390 864420189 123678835 664611922 722663182 637120717 158039993 337831886 399061672 463756671 832247072 256485361 601321796 287855292 525642884 812925496 202131566 57100595 57650572 960526046 606254326 943471115 623395416 893541849 171467351 325496672 820415827 723189289 485633770 102620683 900380256 874463844 281584241 582357211 485226731 109413277 474174408 48205111 409375165 336051678 562351265 788651533 63742412 759847630 274777124 755673406 140209655 385234195 419597553 95876220 816455598 788917654 867707444 629157427 504547676 201207036 432080239 246093702 157419527 708728256 25159013 818076136 998791520 371227218 545790629 923116989 23449238 73235149 914100894 310518943 855363689 203154142 944310208 333272005 751160552 660439127 782831884 487449419 327806767 960300132 454961097 299381089 336244678 836757552 4459713 598651863 468296563 206725563 705504165 488091463 958000254 846527299 271455928 3498827 824974447 531536363 802105975 485053184 161386530 630584547 418633401 197422501 891034607 20588456 339366263 736018149 629255776 650942303 934534508 625554603 600207072 509588278 917272066 918190693 451588870 238822621 907419936 85901908 289157341 175741888 902108831 425073875 368264917 100026882 784852460 5030814 182573310 717193827 970483807 199012764 180803714 583209502 689177522 167346947 86320742 241284246 446588752 455217310 821482433 916649483 689316795 434076618 768865607 918947983 907073795 607913352 487697018 105222419 343116979 302071608 513994797 27733005 584229973 853320776 578188703 96106095 137159677 592646973 380052404 293068768 900744215 329188782 107803272 635483014 582662002 139932445 905729883 36190514 577183092 891666824 794089435 301026820 685822375 422661973 817426269 197482464 951071362 289781555 530520180 501652844 610513229 708026740 748044565 687142496 40559210 947451319 2692606 685978115 401145200 464374303 966360295 261779894 642855756 541289977 712598182 38102459 887805735 277269818 473255707 723873829 362065613 190574783 370779823 801430423 868819600 364373321 929834862 472312866 815954310 791181792 146594562 181848008 454864505 859992790 628320812 405008251 940201119 83870916 387520700 974429880 794098019 719424938 90851756 792528982 602478625 779200364 98837669 502874823 788989791 406779345 404885228 95857379 654656722 199018101 565473179 360222993 902474235 505892936 978248705 768670744 832209213 938244913 72909192 850235645 936844128 449699440 928787314 231319668 964611934 445107401 747275358 699879614 808706323 813515088 650285756 832188088 770422061 234848217 740747031 308914782 729998439 500500718 105539437 864624007 462243702 979663083 126192061 157769289 367197358 640902838 755205753 132260392 760703162 373870464 744530628 27688317 486378867 803517111 867600557 262394164 911908152 473575903 623189592 57876269 297365074 892817701 304110661 192453695 756443690 700000751 511426295 421710038 902893530 888588529 321238086 451782860 699032758 714806905 575299335 646072268 725279745 831521078 48638642 801161659 195331918 113020711 873202755 697627035 975736271 57731339 930813824 193443895 212869749 966617378 385158774 125921269 681152423 312488211 528116180 8087954 243688726 853214217 900804744 673870016 695612875 523716867 236503674 418120571 734787059 220964755 113804439 179726127 763832836 510726014 184448921 919148569 152414767 616813402 557977893 237753171 714887120 117344434 243903536 94885269 141378990 450985722 625301843 887895333 433002677 192989072 224459461 41803509 399261339 632932971 979916731 714715885 170861206 231089374 941422714 842731862 501823207 251917784 692071271 497069973 941289183 654278291 36468134 25531304 84738788 144963136 959914683 89604327 190932901 111810788 249238422 34347755 313659895 321458754 893445520 836638111 469270094 428425763 6767797 672935569 175615306 110417725 56216327 174127835 758346538 348016529 671811665 691207934 561723734 49906419 167624299 940729771 232167040 513955364 27583691 679349748 314355103 243432392 72341683 595527921 343898753 201748099 940112196 328126011 700551450 788323194 273356302 6144045 51157093 697992376 907417490 520710850 798578270 428633773 878418694 319457991 917455716 490868805 282643935 950524024 392818126 533426194 314419950 610146835 777153175 775727488 2523479 965800343 617297495 539682647 897462705 443965826 939840078 694203072 309241763 269299710 480974746 832438595 393234730 360900524 930039027 457294688 744957964 657102051 822835005 263682578 492198001 953772485 449234381 630730883 8280829 431975796 625437887 44243894 342120666 167945348 924423240 63107895 138751517 913446056 450552107 994115640 874535698 4044440 281439868 314820247 879505480 721383701 853414156 8258202 639590579 19113224 417511904 610091084 448671953 423128994 910512438 175049330 415384431 569248131 506874798 476065727 641365442 366918425 816613662 887766286 66734529 565462894 50176862 286308475 340771829 23251944 494601073 291535481 250715324 62017687 941343680 373833538 992246478 497626929 574108364 636504774 381016455 716970846 788364104 631479142 314912295 907011302 384445181 522385987 484082621 731108208 797316012 68977957 100522258 804736890 860062953 24561151 30659877 863147008 980205252 86138151 566061955 253068571 961588184 754602218 97189863 642652544 667342179 212102741 213484171 814241789 122224349 493018696 926410551 218035840 129238809 980088416 293886084 216696649 94668736 372430845 65857543 264130130 997847223 500245690 585735332 549897734 178466111 176416502 348328237 907030646 552100217 677757006 738840317 379973703 141196202 914681005 127585419 157113405 224295248 634963590 563244806 77812800 754150862 839094433 665519134 511959588 621676391 100918109 566029 708672493 717896683 238397759 676245025 14206642 992525827 777432973 170859505 34166609 285848439 746344727 960423756 374154023 817551347 511316747 192313573 366555660 472182560 696868320 861511689 187387340 265922972 249001430 9788999 779383023 283701667 286078748 914147017 57205995 468326695 127087448 48482642 821113827 223259353 178021237 779120665 50227528 795556214 355128037 407832774 338876759 123434899 571274373 994366304 648602867 744306571 303314209 730036646 511920014 719114834 29833088 691526874 794684443 254553181 975989251 490082017 144976840 623956039 588697986 29566860 836391711 673917348 47052705 821260612 968842711 578070204 315708075 696534575 218904129 711248528 427662845 544232925 528867818 896929688 366669496 727243112 735656901 52533937 868998300 704582712 71076550 629802457 669009734 718660400 774463356 317800703 411997687 492201173 623393330 929241771 791287405 239898237 809747303 584703994 557121245 330346656 389893887 821006874 916650661 718451483 838218778 173502278 969337942 264081644 55009273 406239672 158576385 986488852 666330609 105243257 818388956 812994006 863000993 376182921 395108130 64239123 584587252 701523866 772033401 783280934 4515976 320899387 844231188 360307565 457516160 62808469 414100642 542059914 209630338 348515966 975837474 654983480 426820684 297512614 200362105 82469946 78759217 859250844 260188693 90368619 649821121 884289967 547439711 959781088 398553520 968168556 914731831 42458499 738855413 34148649 548958138 483200005 449285830 403629310 220193767 929489340 540479025 464391551 745298621 163705585 960976023 626229014 819334904 345187115 200306464 12415116 630220571 258581454 564031067 105558887 156418711 895682086 269741767 237939676 716207845 796532605 963535538 733396461 965568872 338973337 733936268 805587464 708291098 729270038 214452534 221193721 518908057 495382166 330683086 804636411 666990043 538216355 445358078 553741420 670303335 385698885 412815601 201291270 194668081 365374595 649698662 855617397 326150969 597389731 756949512 398151260 496094510 503667077 514030748 348007411 233982422 606820370 813904242 891615807 616324635 316727845 689796819 533182582 598428240 190423742 625920019 976152237 665614971 348852589 727303203 648605602 602043672 4367030 593450855 182151239 376150713 83187113 564933142 947430815 708098528 133962094 791342950 246897552 410398892 879613843 978949770 854261994 557072390 75753528 525094032 891681704 168305326 780133085 72261553 49466217 8700522 601351103 869167581 588263902 914303666 842702613 814419258 603245252 938971312 346874141 686556745 700708356 43923872 677090894 701447447 275981988 466560905 963291043 270688987 744011209 801919805 696934489 73950830 97163841 485012556 154335264 148907323 405488461 945354630 726347866 538603444 200134265 451689760 752198130 953494299 177183146 813384049 486099580 841656650 336557895 415346179 937007680 626674841 769897151 566866141 283456897 254052398 812987196 573906286 393276862 256996713 513357497 271411886 204765423 577278705 651172286 210365493 458260270 635248943 395707199 541930487 550002151 415297719 658665500 402996409 181430744 252120492 554316807 886012672 268279884 402774833 788780427 130548522 689083502 389305788 701521983 90068594 546383742 275990429 149869803 81751644 915200583 970233692 722607602 969387676 686392482 996643893 847388393 782419291 977216502 227052154 475421012 563710566 718578080 857293484 982219577 116495973 80898206 846426373 35481564 129781172 974943888 453911488 372543897 127795401 722493251 958581892 262871076 792907179 987218590 3405370 858358153 329819825 736637072 267800371 398031223 925706555 981823529 279903492 976420131 96962761 478721188 827815806 659734829 994782980 961006339 943032438 191179158 280743627 204166193 727918846 398757535 880577962 302253385 159744574 266367771 287998741 715910933 783306444 771083568 952417180 41874039 556311311 940073567 973604562 110389184 705983558 446215817 216419061 519920295 833728156 893361728 898847224 984652821 732898938 17164035 865637304 840602994 687559168 601896119 102890268 661811668 852305006 380858340 114314800 784863233 302918610 385934501 216859905 789753532 43018479 427071616 84843430 28155169 668341007 839225615 739911285 230103889 142633711 772930593 671518238 484818642 641231376 966657309 7543088 536390396 496822554 914536117 183263520 551020434 605094223 478154331 841818280 1790405 731825237 87976683 882579813 162514278 86510844 45181000 726048796 620439739 411073036 805532404 99624287 890903031 834722876 97880754 889496989 474177395 34060870 216077540 939644176 257729777 366231567 9936619 418648714 411826383 134144759 291576256 4443738 251728286 196913298 165125762 263869302 99872024 634474525 725256381 711185290 64812894 473263262 98593318 163529328 15597145 179346016 198234485 226731668 876697599 770949013 728267929 888327440 259929789 502753628 526945157 884220233 207424212 497902472 335026771 380411433 235613560 27736141 696409484 78990831 862359569 15747521 493154860 332246658 596014735 183143970 377703191 352711246 241452156 573538781 146424117 452487230 340000396 559571942 206408067 432133224 917663522 199960548 388635586 739591087 525779324 888594095 259559283 801521425 532831852 206561680 890105269 87689132 148001373 803744524 790451924 591477722 218171444 389055673 560496900 637963804 641945280 566221085 494331431 210274006 746113840 351401642 963852589 320527819 818993032 304629380 630066789 20600094 952736608 293215404 546637286 811557212 380624145 193437210 7040329 6285921 730086718 42972348 483213431 383013125 191593725 509073525 231486323 455772267 634875095 35902832 409647924 219311754 885223619 591212809 24847967 834728778 89728925 140082373 37479079 30621623 166221773 698761134 19036184 506744517 776677876 380794805 483676341 210415318 830959513 54285297 783076607 356719357 766761740 502059170 79878048 416456538 983559955 705866512 722261724 661654689 1056499 452432809 617886478 269074354 937151463 189431708 10191861 589028157 285581202 972439823 528915711 549666975 990236389 379344635 287614352 914205204 41600480 471287713 467827036 100515265 633835993 337908026 504298153 708963378 60644241 443994426 616965896 748638500 824579273 504941123 47591854 483896155 226411222 900425548 312061964 168446554 24180821 802566711 349917228 203906667 879476415 430749340 977177672 76437896 319159474 951222637 427598997 655197659 702309655 246281493 565382071 382018120 406276332 14954891 19876924 839742564 1022309 847458556 776913488 474557038 361461477 827232032 260316917 629463317 812574538 781414605 413825086 636034748 184689920 398075809 234875439 318726289 309835859 576021867 645906513 257535033 281441770 113768436 900046121 373912601 631708814 218698751 469262217 244224720 721226522 959205687 988099209 991741917 781735020 137674727 551431377 126729186 215527164 869734577 47454316 330650625 949839773 617084121 918987386 989001513 841096440 624087140 378857475 638526541 638132970 199664655 761986362 375488190 601794968 364078808 522343628 94557617 936427654 697634547 485948779 458514237 352527875 988685793 617188095 431914927 699726230 236950256 27302073 388617946 26000353 587351606 776985459 609020790 368293164 474930391 431061793 442217891 797322513 40294482 288322544 350062904 490734391 787061623 139555415 301867572 25288900 310862653 683387842 113071928 526246234 389845153 494064927 962389566 330034477 888830732 938077398 51600343 524791642 445088396 760048801 767386743 305226224 337797224 712395322 632630942 163498263 871058625 37198080 532601991 947215385 614303703 72478131 126241435 638310770 933917847 993703469 831138828 191446745 33835247 19764735 552166431 907785861 462259329 493100634 48174715 526989437 954840624 657970866 706247735 385877781 598799830 672392086 199203441 767201204 541229651 886726058 628484661 661902892 833953688 242240342 691061578 196642765 119932295 913758114 244677540 104725531 714247340 294037654 638318984 727004925 860484927 438937778 523856792 275042446 287543533 856872150 572971318 164458099 294710749 180263982 326691079 380967403 685149719 53507149 908306759 756231380 407431816 210695926 711787930 462019002 152543004 128247517 830679952 666744181 819851003 671313167 906881852 359449012 473749781 83298811 632112110 996744716 272595498 376268394 91873320 316849229 714354562 846259049 69639178 971878637 381693810 282959760 607254236 247382062 581325432 584574676 231763813 689213283 289627008 637059654 196706981 647216694 858227159 782255852 163404792 174989337 354424467 997866715 449702734 769236582 734082499 597346603 520328497 498324641 885380876 939649340 618143817 711948919 50390886 843115282 151507616 783131189 186960086 514087311 572158571 136353345 155212168 354509243 513606092 147005490 174781399 952342590 763005794 246014754 669549489 418529667 944243115 212450060 629151559 193840377 937751339 555464789 460778810 789259094 762127356 635098144 704434164 736039313 568625781 15006275 234732800 94040254 942986647 472211359 519574173 881587555 203567754 437422504 968156930 480732085 47986558 249053054 692408392 527461758 868711885 460440150 933141665 343036140 554411075 882924247 473005632 809280397 660004277 557443775 110555985 277093093 44941802 41057150 629051080 467785391 979244480 82099060 179105144 858750184 649865683 723029358 886716537 546939545 74329783 482414173 52941036 397393587 468350549 500800942 69156904 139973319 323627656 269416201 209407702 224039373 54533403 782527088 864704299 884510889 332880269 381872180 777102360 607265319 253076772 672437452 641045984 971580186 581404527 345803514 233037781 541546831 338927834 874654695 110962041 850077372 496236264 346169313 709607122 28910029 440489068 887344078 593625141 514186756 613169509 28043046 362324797 500147457 801621864 905048887 552042684 157239144 963221402 468118390 831905790 122422819 294510154 598995649 915324787 682677642 625061786 418096580 89627116 697285883 187720938 373938047 321627873 794284072 333228221 39195012 969118035 392359746 779994149 446465359 881585197 850107103 642539482 311738496 406752261 792597304 894242762 406300750 377631478 86866199 45989032 293890718 411155382 836809580 394408613 309672259 873231441 851725111 577660555 632605412 667888018 480381890 823426671 861617445 878910524 815149699 820505485 657430283 475153131 372539774 752097084 95751699 141981950 120774389 463407634 501779318 111324462 946514964 838093870 432273854 861008007 99949868 125036881 817024435 208760823 96606703 67848579 251075368 936086426 160493385 298234632 359392597 799584603 22293121 902387135 681697319 836310596 579995121 861727135 626617498 7582221 854786608 437401701 948266178 412726039 174862203 794727956 94047770 154322706 428068920 656349195 505381748 815167105 436730138 361588084 757177619 113853349 361925098 113799687 602028166 859105819 622787277 838220481 45013051 194933540 399389327 854335879 946009741 680393844 526008599 944254058 188788368 379084331 695841810 482585333 793254629 731913384 836114406 413857793 18096986 828051225 366143835 909408481 886617602 43389860 854538710 909790594 7140736 49758403 572897341 678619816 426249307 104377139 779210764 484385373 642294330 912663549 3065368 102817483 194418780 108038378 156527424 541295681 568668364 977405484 88774377 414972419 356538744 942256503 303439453 842210059 56677337 580491456 995243547 692387202 393545644 858696108 686110560 791003754 23595552 34209691 268769927 110209328 213587572 573082040 858773270 703537245 426304972 704474020 934646124 628559638 21347042 601631624 191338097 339631304 721697958 673387706 147981079 151115729 689837426 573924948 665002041 56309644 19257400 733378794 812937224 557084796 929672667 691434928 786576742 853340469 537428070 241438407 164242235 867262194 99801466 554324217 88642392 528509633 213442493 900209095 555717158 672645549 8860327 877292163 449579418 927598216 203411825 813189887 522383868 473787361 118984943 904712034 940277384 660784342 809068450 335895629 726966367 161079039 450845950 874319904 835541504 819848201 74977954 553027361 217126895 14588425 242554493 931993712 997052987 762769749 407815298 179310919 613451278 856634079 197541434 473169198 734544084 263275001 240879634 665776133 586445431 479065405 774395398 763926230 814300699 738891381 979355087 83165115 814788692 622984651 980167078 565931476 58213183 34116966 425401240 466978108 360184776 224114176 648227931 849315741 176882440 891702477 987383298 406845094 177897888 263999289 469030200 55604861 308252400 855678082 30487036 987435251 692306643 253317707 359041694 441626506 56197614 430679604 633958090 826016160 138717971 944956972 8044303 878119194 162617502 947481595 392183434 622124061 619827881 217577541 656499209 634416813 602281392 306332759 698731166 902156448 23485961 790775916 755363593 361510962 438042989 200673005 714450532 980512073 155807370 312887513 938165970 154144533 365382328 587470873 765858364 344822748 793009687 365442645 725332378 314890499 228428787 446542716 127582792 100649397 769200715 799641479 213821832 154721851 448983868 41559508 603301727 620094444 890498572 873478361 194196282 411937177 315445757 530555325 909382458 584659743 416600754 860131853 734387515 982868258 836865376 605862255 561314831 656043934 812178140 950354924 708664895 562901492 607912716 785596199 970900816 942154176 145256979 313874422 674170534 558669007 354605670 899450409 416510732 604301764 338704046 210908977 487951913 19853310 606183592 390431697 117638230 486355380 2901097 845033364 438080990 120869248 175493780 989975471 13107553 232474947 523583079 223804488 690023713 321936909 907703298 503493678 552889094 695874783 510123451 933607732 67450665 622069470 414847643 205266705 200819289 831034558 672500584 673567541 116985839 565392662 198726308 165448329 335757180 964883558 358079989 103828148 152430344 619881226 841012532 444104254 584979963 340981293 213624081 203605538 308239247 33397108 471402487 640255 839738815 386865618 176538101 331468507 460479285 378306758 311348312 633186148 975758155 149467478 621481814 641268054 609311090 838467685 953315367 52540150 789720484 32315812 562007401 861479530 784405273 86262133 201551000 499754032 830283301 81659481 978988939 583565612 991306596 716043544 690289730 694948322 890267022 487107014 411738912 102045479 679558822 454690995 569421406 437378279 712289612 321831 821064550 195818821 684807633 785110620 674731110 832834250 628576118 953024894 505657728 155048695 84864146 74427433 516133311 691968574 591177058 25909495 754029836 272479409 916541048 487962263 76047318 899370769 397300367 584670855 37433526 332958444 579678229 127883061 325710885 708110269 104827280 534189014 520609785 160318568 146891012 831653697 996391334 497182139 984498902 492648091 58033180 297762135 949956625 310721407 507494139 416994433 895952118 791039866 411411850 695034603 888213888 113027678 823805151 548340642 927097112 344721614 561380936 616938789 410641812 152595230 91511677 921137217 1490332 981003446 683368767 809522508 350188920 393235919 668014905 994608918 714070031 650689920 700055106 135671526 547314715 216190403 16044112 155305066 26005955 817985099 408033391 55585957 494787714 820310952 949852308 812542439 89539578 644458409 915978022 61617830 212605997 722937961 548210645 926925981 835035993 50748206 355943580 544215136 23300417 310970089 343877889 874250115 472321591 634401533 357526340 17608236 856336953 84780549 739105807 513681394 110690069 934667065 279109854 865468389 765267770 873639471 828664996 296974305 494331013 32282704 302335048 615782346 621187216 317601742 477867699 997954704 421718773 658535380 921955271 906735306 182600052 564760886 639788922 699036775 263593092 447515906 413596864 344730942 829599914 202260489 657656629 592391952 496344833 220876010 324227889 788605661 292811610 728264530 865953554 179658100 331469990 268800545 66300353 13200164 967821674 496723879 511625101 954074157 824739232 118986773 756774043 351701808 900871094 635746225 885310218 217535461 185533264 942921910 276889098 477922390 914037053 401278962 536707295 912468606 568309919 508089945 960356588 379343553 147740566 155379295 160554599 563381476 678085609 508253330 475616799 738124129 400816358 522187610 788314518 601922745 181181026 235339560 767391499 442118170 622291635 500133271 248559549 576538096 782828126 268839908 209765092 93781575 991146981 340935573 175227808 512734287 652257500 877188272 981817110 773287530 904220921 919519553 251742685 469275239 595657382 508862126 324089930 31240065 704379318 660081833 260957361 540223293 707813921 185263819 301620001 695237176 983393555 841072681 74068455 74807519 791429997 350726661 85690814 18266536 108441802 340712779 845341163 993185906 325729188 714188540 652639428 20854991 706098131 190806126 376030610 139772153 260364006 844227866 542987860 118041425 726374500 327963314 178030396 762768613 893236515 982535225 264313862 125974668 658118153 379136282 530304389 512768398 55059729 574353262 219004699 133686809 240736192 809665535 669896249 11561530 897307363 215731096 145396631 517858625 122096846 372108086 548871166 647714200 246673866 499888166 452647442 251384561 541428141 134304429 713900095 77685992 755121834 374410403 992846126 116429973 978762514 339868218 586687862 656227463 148798390 693448929 566000810 784044014 764907600 919913126 928443592 609268245 354042441 988451842 238328589 632349183 160379698 686689617 26313369 117020864 714658360 856031834 301841772 106109268 377552003 816297005 641834254 278997449 373385956 87806071 410498596 708031687 150403174 884698864 353311011 968674988 339210743 503652791 593991543 259277290 158625174 124231675 62628638 328240573 58406380 271274738 422700173 861872392 578977081 17039721 756725821 329042473 754986648 925043802 240932870 718900140 793207680 871482378 923551122 241477654 420993172 375146609 209910269 383254285 572811870 486400039 827663832 633463494 125636439 742081104 269080288 717343850 970271194 435559252 138340552 727720435 78157380 789000679 106988876 517770588 65919795 976604017 832873464 156925235 756171820 193370960 100284691 887415372 590734429 842517630 261012289 993665932 925145999 864920249 279801019 28405767 886302596 757095753 558809672 58937603 184873645 521528530 780311601 652936185 874988276 626622745 522559816 586076120 679640870 654483549 144688961 989275736 658851169 586263343 659850389 925281052 649231523 638431128 821827635 205401852 390159263 195388019 573104551 218078551 645194514 595081345 437238567 79046583 672632996 647393457 861277222 555641335 440379465 221741839 24617148 274424722 775240400 336988241 79599825 926887665 322756429 754209065 106737935 100640911 223914263 664643052 666780361 993732197 41682809 539116659 91496982 309109699 19450595 412876191 896797264 469703853 89397515 576580808 132678732 418939337 12997321 174306027 884927179 966630587 340680078 816935739 47523816 276807860 8284173 678100368 442638976 110069689 896611305 752566675 603301370 315386844 875618872 965986252 774731122 375536595 939751225 294646998 105513896 368418831 358858071 492786981 58364461 718330863 317112033 90461971 841301588 555384630 234550616 457583393 118026606 540802304 889165664 4654694 388172864 435323779 419869248 625696278 751464819 273085634 259970643 801314812 62234541 451984769 244002453 462012790 145376029 823745233 511535943 797370032 66490834 41643149 659727297 327189058 556586441 910715215 425751062 991815341 557955981 190403859 763619236 724272739 242209294 178264939 756224312 850704826 129574412 392102461 52404422 171066530 585982100 282920485 892135832 221215113 947282152 960399705 454007837 866368472 390176581 217980868 197804806 501313410 839230501 563164905 929713508 720706921 996492201 665694911 409787182 137662231 624306458 234675704 881189798 555107644 260048260 519647801 984077046 534869023 686459016 474911513 223833923 988522735 662234630 773883719 391977611 511034945 596191425 372416687 409158157 320521699 424268499 240936493 548216865 143639826 695037264 770705388 134124932 771958606 386432714 745157527 77136974 946821462 348502175 245899500 972691555 502158605 314533519 251493028 530379643 765742638 707918567 144362526 193195480 455951228 555561309 687456510 519708590 287393509 561114473 170272899 120680022 501178678 303374637 935047794 998630827 424178521 502115493 10815879 709304677 594756280 856160269 658682891 322998878 912401106 398699691 397667537 232229671 59030592 421377423 414779234 737994208 981604871 141823002 350317579 551754035 45092746 673595510 815224225 713881627 850976748 929340234 945078210 153561267 584433979 94307225 846937819 890456634 417866913 376040109 573541585 930143740 694765594 567588872 36989295 542225891 634586045 227609730 373980987 754697200 747961133 730495456 940193376 115273510 79845846 840427765 792395673 584189901 392830471 815949555 13116553 980792297 868971207 397899870 772852403 123684896 251456422 845295912 785313929 2793157 796503083 482973084 612745891 817166735 196441516 818205648 147706873 730976149 602836629 599898452 955949793 89308243 212843827 810175594 233674362 412078431 217047075 229678119 304191070 192400373 711239942 383831225 612271083 970940906 776573857 60957048 225076779 148192960 617217263 305617209 775357951 492171637 760624846 727913543 610352192 607010173 904563317 137824228 415146813 540200392 227226287 104754593 912265576 249380418 323408590 292256431 335286759 5780639 669524800 81035116 784437119 17438626 908718451 959829094 285524320 78033276 219233765 232205952 391730330 450622012 58702103 903968986 470797650 868047683 713578548 993335738 86239257 185148314 239193982 504801248 298037961 556588996 712124816 206443480 629967182 952671982 10993599 965293224 225533975 84357163 851160987 937896678 856857638 774014103 717372576 224744656 642209603 544508018 294407694 912840730 145192444 701597217 524247161 769453551 256896929 87393497 65790061 433683334 194304115 451094536 826246695 622739147 556119062 246116514 604470559 777949670 535121683 501345971 288670392 20189345 365507845 598781822 334287140 713029706 421224007 732139763 172276811 669265352 25916821 437536995 691920822 434682679 845471139 655122217 779103896 217131438 794820252 615331422 666951315 110359543 997240343 590092852 133015736 27011769 472811638 570690463 366538723 320102464 325185642 199569193 291078552 919253331 553294998 244268695 879787912 326323320 871722250 726084226 790311732 517393942 256730101 428984278 763408408 543446573 239597286 117032777 83762498 460783414 644194903 772659944 609808844 236668726 607189407 77124041 520302569 523896837 434005013 458915134 386197038 889790853 755770656 120948997 554185433 482403600 546045686 260771318 17320312 933163271 802646985 284654593 750661028 703311055 46819606 961398624 641797244 51007639 412042386 112790567 490767882 80989825 431860034 824104913 935832860 862537482 243132553 427257994 25504030 255610189 374787003 615538619 841414263 483251509 318988425 943445795 939941252 982058242 164983570 357975762 521783267 811729193 67543777 441899741 64788178 547425332 821715871 143914584 32532510 339317384 836473452 368877262 326102370 613361660 989416843 432700222 530763712 883230396 928949697 252678180 859977986 310461322 163742263 454471121 893710908 742370069 843092942 914351326 552361028 651118200 928352921 696255535 372388924 926920253 387090678 65848143 530526596 956177474 889401056 3543243 552800170 785636169 977698964 513262914 206117927 581826579 489363335 12410995 735524228 683113949 557893532 949728524 384321720 427712415 851098526 795999348 645663773 447851759 604721812 800751089 661620272 917887727 558108896 105409088 573150134 905986039 932584596 608688052 177247724 957003668 544763282 343240144 579045970 361733647 887934631 325284030 103381798 610861985 338232599 887820502 598767346 753271051 111696558 404516292 427520066 632029348 328325539 504813116 974249466 933414955 73759169 998549156 835634433 697364545 723533085 751825132 194080193 515820356 992013715 585797614 352698262 713613054 167442454 52791086 968383713 684279479 10644498 401896674 549162962 321952040 417696148 792024106 416908270 891861899 329144220 120980616 929341020 870065535 525295289 95687591 508011460 569791249 68023616 758425193 651414030 739473253 520807933 797447913 276291035 640836235 971933523 485296531 674280947 939328304 541933770 348778121 879081769 804032067 765847488 514860767 60548536 538702185 16326705 361373126 980203505 519368160 976088214 5095458 938745881 105704238 452156108 703090540 9498341 330688746 601705079 326284908 745783009 16124507 218607355 723750589 602501988 720154820 706679213 936090392 248685920 402066172 518960206 972040667 541360621 391477170 895181760 923677624 610287623 471433180 626123814 52322873 408130947 99839672 128429851 178549828 130660049 300028771 692724092 380310816 832563461 237932993 437417865 342556244 533085056 994560967 697672691 413625861 829884412 942471697 384917563 478175624 227836648 648693844 160835181 225015699 912657724 574892292 952455542 256448851 736978499 282758736 424424279 12637089 740247504 218155788 718389408 80628051 1459612 413194411 793158323 779820373 318008444 539137697 654888905 547338852 789563608 300670924 172725158 302118887 389086692 652519436 403311515 609482635 749811440 330679335 91243735 359727762 59256744 919241219 951056117 889963044 115856135 161632953 763327931 399655495 808938256 109903100 870475452 246014190 276216813 546470514 797991262 428134149 850331346 391902299 54667064 860762687 713658814 856828755 375489653 6699263 867456893 599654269 876322273 228041128 34085091 583250101 552555949 927270467 388081381 494124435 24298428 113288659 2520714 262854771 730888189 236185912 696112523 546178088 923273554 101259438 954289182 949071998 290877654 118959508 202544702 155660889 928367060 235455056 105096817 243885500 879431861 863921243 949626777 153517118 604124593 580200447 461163638 696455206 991434782 473635189 307416826 911278793 359808747 57004472 782655260 617397103 167967311 181349609 155117325 463443975 45438549 103169506 778150813 523095676 111564535 337067990 836424019 830486632 67998000 910981374 49455926 224111837 404281756 859429260 593536065 29511077 343672127 595292281 626953259 950630328 418307577 26386581 693635150 754767413 759613461 779576645 837304609 320227940 164427554 418442934 549133513 406347719 763128137 557276810 248102998 12900052 509427314 639356981 656400838 534963058 851750700 283208356 539724415 984674291 780623699 232305535 681495813 782736461 87633260 561222915 276619703 263596854 543764023 124138804 849578782 597787297 666565323 750303282 103552161 807742956 518562637 225222442 892754689 860305449 974402414 900439380 747548652 367270379 772685597 985803794 367555510 604888774 944344119 664630406 277635412 15086298 712639253 31715802 416697411 485424182 364044681 620253211 881100010 497202322 54380269 388550093 857323514 132277778 167806965 340458204 842576173 711641627 933129826 486757330 173510650 702498316 642287662 739107985 597371434 897769819 61977940 3988626 451705471 970089245 538263301 443207315 451082605 266722540 686381261 473539908 616288280 801797884 44458243 363452065 917229429 707421630 428560140 73017483 725858628 342483055 49581087 515822987 776863583 888085574 808463247 323804908 106891447 526336264 455542807 921302808 558037660 534073902 587010800 627696932 325189868 143024925 229528142 128962331 984277483 80739583 477992189 163906587 660770449 761432777 422717796 541950722 606066781 173362047 244079104 966760669 475405651 753773633 69036069 241817004 704845352 852566412 881444865 565275231 137003734 490070570 103771926 481236168 19509477 97771789 548863696 987975263 874775757 352846383 354751388 195806783 16241621 233223026 191544677 487145064 637476697 491593540 69151404 593922176 383816961 331248912 138602479 37512060 723576456 612546596 930325141 80868390 578195978 701830669 366066405 821427416 960884346 266787641 670215488 154163277 514371887 422478148 3826384 584106623 150523435 606591520 278962188 229528858 154078977 27849242 317100864 218517222 304103052 647927381 118716472 188303333 254595161 319008347 887843383 543311296 511456507 623098812 218844325 749773371 423607892 901843330 795551455 243077146 478421731 404097277 775178653 270467222 518317921 995097508 983097951 228664471 913037935 12472214 960068016 307498000 875615427 899915413 165254444 882761571 390456584 415156071 157688966 159039741 915700907 648165373 315555248 696017708 519629594 418254285 903280592 709356105 933456238 343385541 605691784 517208513 368766523 591821901 39786871 167722985 780500943 513126230 67221367 847181030 138554953 811705563 107223864 872437495 556572231 494907054 315950494 391203354 227187000 225589356 203731298 230237407 889532311 775879554 846509396 296960618 912054715 237621690 321941137 335859461 429641843 67617770 578698735 654776450 181684086 434866943 343801471 317500371 642834088 543841150 324069822 347600940 543492431 405112884 107892788 524446760 521733672 566740414 338386589 845634795 572930979 998393040 506642207 738634630 144632490 701016241 698103146 971734276 418946123 151571093 966766415 216477531 664254715 858772049 185962277 704395696 365027748 260800454 604845191 422811507 337535590 964641522 582593243 530844765 260338137 390247786 925447097 189301515 522094527 397458152 805416356 350023742 665506401 115958244 330941314 498762997 242953946 206253837 353834491 687349347 607530434 871853260 720689656 649420815 896645304 435470628 417874670 79940966 502350518 62948930 818258226 154208946 321656118 289900847 185190925 928133274 183765831 55274652 475453512 640555219 993628032 741696344 376719783 177551718 31608696 959008762 167988482 941081281 790512614 813276208 898546228 399504972 535574453 968509066 543306925 537575722 878109416 569928059 191904749 789471467 695664684 972046148 270308123 29718474 909986909 525363382 962083179 35669592 794801733 448600246 359233231 717581570 838993503 332085461 377919819 873484547 357452595 749243654 630041483 392684161 943391532 186117074 675146477 398490684 719355404 114916388 910109525 77615599 913513833 250937057 397836912 433277626 664333604 717669017 380460198 7625355 988090206 639627237 454659156 544022390 615259226 216775820 689414573 772335147 220883265 258023339 892208747 958624572 256548047 644595926 211123365 653375543 181952998 303719976 996005034 366897319 214381348 243571934 814416135 364008216 508911447 714682292 738257070 236605264 287225440 244818866 424298252 996226830 934457778 72883291 893398260 880562938 557937072 326380743 321597129 929022571 263117866 937111516 57216072 199891677 872730427 539078051 85224408 576772748 226800882 643049433 359831974 224174835 30480778 881672093 929510177 652060853 203866064 438364749 116178010 21181060 129419458 193544741 694047220 935003059 749475478 187390161 593710275 156631221 813547268 461036334 170136954 639882530 923247987 5533008 244944463 121514837 498889842 107648779 325765856 614412423 694137066 818843702 823650565 790979063 516167309 321204739 497972658 192455638 616255424 265661971 132236502 273119707 854099344 943420689 366184751 802049444 727729986 655304450 599678362 527748231 683237821 710324473 692022126 416313466 897803037 385883692 571909242 503291617 248975824 251172780 369017283 930515003 810758754 63160586 363548593 615821127 753358969 753297959 210816429 565898768 24781478 259440573 174454345 881730427 520083237 477655012 566132815 547984004 317109658 675306100 100600661 60893266 858332232 178408168 288619805 486305342 90123040 183328993 290928699 262378344 185864421 302156628 990222649 149622014 943527355 343979696 654264059 250154673 979925909 600919638 602669861 462557443 809060315 853966120 88960696 83946731 545826848 674585274 594649155 368065020 826497162 786949629 529093867 573150965 412076479 135473077 986189922 199527797 778139259 74850588 189018996 543802345 105512940 144430699 495047272 389233699 224439113 789518300 647140660 68418428 574353932 326332758 905788317 852506044 306345989 645630774 800004007 683352295 623785669 694108319 268469198 873364326 812927682 62159583 380183503 577718235 272096061 412654453 725023317 436989187 230663432 969943844 265693122 288502218 415239143 42157446 761226190 676005533 845292409 341492128 780621083 713911579 129353457 704561462 475956070 178967107 505297233 543206604 560725821 173082080 865567969 870519990 648669669 260882881 569230041 154433554 454462189 810615482 186124986 756243065 717760452 707102580 607166568 700003687 514603068 204037388 575387264 411904003 437748448 945454739 758839835 585992091 98473531 252610078 888158749 775712501 797371490 882965811 825459107 673737795 170145760 583388748 748097830 510607260 874758898 951322095 704839114 295883587 161083931 252554036 109535839 847224182 416822902 445769798 984474195 766684181 267889252 179850449 559789050 200504724 771729955 702835837 850014258 999825646 983132802 616251691 409867260 166759254 29379851 453273944 70023242 9613121 465502164 337892458 422109449 221725754 956779848 765020087 714579839 976008620 794812579 283575677 96986888 360963856 488837908 853363895 77700551 374905867 162468501 439535196 107147011 903055607 139612060 906649844 918723945 728673568 865741368 557370929 258065769 708453632 234652618 174776131 710997752 798639616 494069287 327269341 163631352 134124634 337232245 648100685 321516305 20591078 73989158 763050796 843697786 272234418 119667686 988275939 182500384 913876320 374145204 212604334 959079301 124159219 689769862 259792825 728575053 148869297 667468189 29142406 731003495 575795743 787377189 352681596 795045313 631860739 715134272 827555844 539861466 594950767 639835026 943189574 803606918 527550857 452549438 137248450 143464656 260912996 848410891 570045821 991668359 473011400 545356369 29314549 884493232 849180417 6345881 499689303 57355974 381484995 382811181 50102616 52318193 852418235 452881052 769739132 556519813 324004606 450618917 103080501 217248642 645840382 40376658 464977431 351266097 906484625 380245182 941199733 818888550 506670458 405589326 107418328 692318440 603715765 8032622 606592899 138408525 23003719 692221787 33961301 19590663 591186431 539478822 360787131 504585084 549185637 794111874 968405989 860525767 153752755 525241396 967190769 488424884 220341374 391268645 492401574 685266165 58894164 676354552 764040176 490264410 325427531 612256818 184622698 484041646 577993690 993643658 806253724 691351383 15755467 417067939 723847630 761421656 841945206 94768692 337468417 888599672 555192346 113250021 94432643 784153265 584788147 435693721 860060828 327646340 933373264 715238222 32770633 332431878 342478094 439892559 909667840 51501656 230746648 361625010 429528313 642421294 46540418 514456084 35675020 278486894 298668675 472801769 165995744 575856777 608399484 113215740 280052077 50071836 706541230 925514140 332295690 241296531 299352689 151821929 376286533 834949270 414464179 551933761 190630869 75204620 134153846 63790922 825613098 204861517 889222261 657975811 476281247 776683295 29783718 870187446 469310404 919847769 449261743 480986015 160285529 561785682 269067841 449510286 567917243 151937265 601775416 448231485 388705513 557819544 57533198 432963158 782227207 296282698 81254370 327558189 203637395 399826793 775168968 752473373 852373505 444660304 711889999 584540823 553489926 610333204 296161619 619474112 231166665 230656109 565948954 423936050 312629789 775700291 624893041 17070982 449641788 15911411 921420660 154426923 326858082 326839837 85985592 859729978 219563288 911876783 368323709 862395780 976495399 913089490 66088722 880181624 192864148 329653201 280644235 599858132 665914728 542394705 7882070 364690304 134932769 104524810 472226732 755397287 641496617 966106589 838030010 844704402 696616982 54501223 758588537 336089642 398016516 810440970 294307841 34898161 891928922 835257552 478190263 269541877 71407149 718131182 723500359 444930703 880250549 796176249 826631955 586429436 590902140 704043618 175196596 11194270 814441169 749658460 760293962 254828999 242088259 744150482 492295511 979553946 955140308 127216209 219095578 173439187 844252601 631948730 572317151 440965419 145709462 607012148 149968346 108096885 108514027 718161950 301670961 460101765 520441556 689249391 169275851 297951020 27463138 266761457 182169304 4725159 965566910 124734872 15681230 728989079 547585591 909598003 893690730 721253709 304067176 94968250 234866704 277314342 112841513 410244015 268332875 512029001 719985506 658938806 111168069 470389861 170711631 453201601 450179001 169996883 274044941 377547495 737721560 532860648 459215003 426581893 742167558 935450440 36909191 555515001 11782477 463985940 412861022 956818618 807217852 623481950 840978620 654597595 46032687 251944733 373792016 859279130 918713945 128182514 19586082 562520140 686857516 689299272 430500837 275506455 534456579 606336246 71450342 318739945 373434704 671251767 757099517 140809628 995958902 732731145 691942067 953099557 13466191 773053387 556137333 298301578 559341296 449699726 433245715 448486997 465388687 796897560 536753271 171252565 7226596 952788491 134412493 85289697 708074598 659885355 926409674 667332587 615350357 541024312 823641705 472796342 841382611 991162911 39871919 163108924 19333515 537791104 670728291 187757562 950575918 226476814 456569316 610789563 324302781 520445966 749698765 644607616 651832290 102590971 737377330 755072740 548876651 702036225 314237334 397308745 351415806 447151406 363369798 936827920 91285446 138524075 368433524 222361419 824032523 524829251 783523445 722299295 810865714 900480009 76394845 965020072 126506850 342485047 357938700 655809645 15210632 796007601 476119631 783179931 269874547 1765517 975768453 680065114 86868416 42270716 714530908 756855379 94234124 34362194 533551958 261936665 749458950 365720650 648382548 297857243 200884298 181078108 926521191 692758890 898608234 972586766 865810872 971634499 892248604 272797013 941034558 619804501 599155658 818754995 696480117 836078847 66784239 988747628 328955838 640308945 680613251 391733438 340094923 59352705 151247483 313621913 564062211 185797124 627954708 900615879 853377287 524033252 325648567 602665682 160453721 542924693 547049774 171149821 549278788 195723727 494004943 555180478 625232697 124537776 344858538 48555513 124518225 593471670 889410446 635160070 721347008 388638817 665385597 142818223 642911478 821346869 325259943 612053922 653742089 605851312 175970530 107294276 374021013 973921233 651377939 909804083 93475047 227670096 993071461 948420280 570843156 436942399 467337732 849297789 381696139 486376776 771483250 363603451 153442082 678315716 690188894 120298961 137264480 911957553 715055107 561244393 757287385 131759214 767825365 469660688 406325355 939961345 798105456 139659767 182499288 952334789 864321320 482740002 915189579 921516972 554898332 841618473 926671548 278440741 390480474 813024908 466369013 462742389 523637938 170072034 328162595 790300887 594509105 998780173 570634416 718691171 828268464 849153690 543256561 645389571 524129342 206748491 838917098 13006513 508646905 183959255 557491951 97179284 985730073 304060797 340491109 368189346 610598446 852806795 501613980 433197649 102442269 501088468 734395151 737454273 334164643 220106313 9763741 455131217 486320261 65415551 161671285 634262683 8781984 729540488 187141055 441118784 44014679 372336550 161313376 241029162 490130150 140677405 77485793 674118313 182296919 252577164 399132715 278899788 857061817 51498136 44796782 241516803 37337824 38191152 388814666 490320715 461564132 328017654 33619366 758410891 37216953 632175564 91410159 619343027 775197732 90611637 199102370 456113572 294132646 519785641 301474635 615504847 354867050 889875708 280512010 633799442 644498675 497439740 31942947 569949310 608342083 185948325 825832390 670472702 51178811 720733216 268536501 829873634 241877940 838306438 392057536 929603076 287884577 513289890 297711987 166221467 268015236 619108049 567036662 389874141 451796923 457243875 145977663 973871205 965637183 230566655 426830977 607841900 125712737 776250693 793314872 276859228 668627454 438705386 967632554 57010927 83775095 604879575 128746004 562984395 316758143 562858850 305897265 553251561 136078734 136963431 900543088 976695681 663181551 36583892 658722209 923690720 790310822 426990148 174768123 500671811 867685699 685058452 243746882 863714253 3811248 1843701 481189509 592977580 750493102 377826328 183887116 453550918 554675269 878901358 87311862 86072911 768234868 104778377 156445821 998596155 532077949 658816641 979678571 138308993 254576636 736223052 485009283 484621147 916494505 621186050 833450228 124404176 867466559 558567937 681757569 215665473 642978661 94281469 819201357 731020551 887357830 943279369 902156125 423342770 117181220 506740926 788865004 580727215 237240111 910227691 25101885 532893521 796009036 341530775 860220190 803433794 840823380 688462368 689216365 414039940 896803169 804398038 228611784 792081911 212070729 377042454 399365272 298075290 265955669 927515476 506996663 225063952 142824371 464269815 203277671 516108650 164139263 939819688 331857368 378820432 830366478 336388569 91800227 557374136 901005847 336042075 840414799 226987699 937602015 525304693 498992150 958996376 805649032 116704401 573013788 703052776 564072092 860075307 143489031 11804854 859201191 466245956 874503816 166995745 620594585 912892031 824444815 965118675 776714913 858312739 854274897 762439330 269736877 485389575 331161293 255074789 505477278 862801667 100889037 815609282 79200819 951492427 685597691 815516381 403617734 568911459 934796178 739243914 237090380 334714508 916606504 890949296 213701824 111334206 2394951 578347090 55198463 462189456 612494413 382838496 833530181 87808220 596173891 610738546 650565749 997832156 644412743 154133920 67401670 327220310 413784782 454041078 91569315 420355724 804980103 99048559 628782462 609256867 180372790 904007172 836515806 360765122 779033514 286760502 673950074 226028831 501996376 325665108 498180060 541427032 138485627 335742374 474033849 295028120 190344961 783414988 300701052 216088004 118536391 127153765 179118794 602635736 732427730 471393788 621382410 191368323 281861172 484451057 731062529 599068312 476843092 434994238 105008428 743658833 46007152 265263643 432456992 706881412 884688532 654495337 409063234 434125622 461265768 782052493 680869254 643087630 756624459 797582648 521859539 524185288 299828710 133499700 902278681 291450079 149524153 395863311 665653973 356356369 632876208 293327312 990114131 573277404 182265025 835622886 219828644 926071733 986183203 727566886 374171662 55316848 732305093 866898753 603038766 516951963 84912827 137637446 106415055 849934168 253935520 414434272 514269213 424352210 55034401 795954844 438723990 398057210 934805040 33223916 730759953 408100998 856620399 884696937 99420445 923198733 535385090 312868016 193074053 646933122 703906103 749910892 156549454 639809438 428962388 788464852 672336897 45937229 8976572 492868645 890641627 669718788 978552633 747363370 18670563 116586471 350100710 157487383 758094607 126726157 629166435 905668002 168669415 421493967 270481777 492786844 739471004 204469783 85749933 314822832 567669666 407323055 621055210 763336099 594292929 422376516 272918390 83794691 860683668 55679519 257232940 199390038 914492208 17814391 856469423 673286524 847019482 80596293 33496576 478840041 96693837 533896394 535872943 910315183 421502250 501685081 118791578 572479498 746876768 630046354 179269384 949623886 390252432 255583685 625944211 706662523 963440370 372573667 35403702 511440928 379015857 969183723 91134167 303935777 649514654 733581374 970633141 481884622 361805170 502184285 353111658 331374642 95798000 770657789 325049463 513301623 389752812 712066290 284170630 601725865 558127764 834390798 231583875 948508114 702069453 71272742 227323196 774341940 251731611 37665972 626470963 198667990 878910668 559661873 912491820 695400141 782419363 195834433 336283795 376086224 884802568 834532931 357421239 511623430 327065495 722275123 268461246 703974965 278477155 707801000 921690842 55208599 648909922 832430126 165555836 758686946 478543289 186378084 18383058 389930588 226152307 243693674 108853172 956269887 305166684 996179755 669821553 889301873 29458405 788760971 108329855 16532450 719408307 771252125 89388479 417474129 164577689 417966330 425937424 977189344 831719996 201856679 408583244 330325231 344938030 113333208 570345477 882733105 281725407 38398470 472692442 412984825 173863896 498983334 871703544 98013802 21491202 134503753 916461826 648890297 770794603 204886541 271101879 86225231 302085712 259107363 757415980 457610177 941386724 382010063 76607808 645670309 656695647 954831727 65896840 685891375 80626967 903095948 501071286 309879029 885063902 509274624 336740571 176727050 553304951 792220409 380641450 425977965 417172213 222575703 790557103 72633633 130751563 482556052 592905208 113766809 888976258 475368671 198687134 279065618 159032030 119743821 975792324 444550219 162434247 375905461 789885949 596527610 467003635 291093736 35470800 98891518 148350114 149953395 138553255 788074697 504470666 520529107 229640290 24367576 113153364 960814012 377676585 868714089 48914393 232577135 99291985 479586219 371834224 47928506 878187212 843897795 339566528 438451893 516008392 902464707 274089989 625595948 851954815 413274578 338343669 351915808 204067868 284558426 109724772 405980587 741319639 671222583 535063294 749413050 874458830 435041335 769530319 112504020 366607729 587250578 953256578 120099077 699764394 109491745 682162727 130765561 154680642 750066302 884930610 604886072 643910945 902694293 521136454 188858419 878565684 586771823 554011209 305738206 549862133 834921148 321022956 521552511 272124855 587580702 418458185 522523854 494746817 671587745 2073371 759008419 722751447 983398385 117274018 696727027 28533917 103945149 345010102 499934392 628558946 908278841 291976345 316099502 158654501 60699916 431306148 576081085 607644029 150659471 149805938 324415230 295153201 594054430 659017491 135836262 907207068 952411914 538771881 316970507 18069815 198954666 293256615 885625596 256255516 275394023 979750431 843777720 510078066 417603770 717260827 464966154 52089919 467635422 242029136 760040273 179871206 518412724 561302496 878548396 983984795 553873320 36208194 849659719 942280417 853366836 355354532 541520539 117844808 859594212 721657965 782059436 200501837 972559658 257677928 480892598 140303399 818519516 718978661 776440548 760354465 564548304 504681773 610502310 336412948 330482087 562726237 345475955 454375194 407428853 212919143 133577114 443117807 296923350 423971708 181233473 573851392 528712982 235679109 886515667 165545329 860614608 541058654 261224572 606861489 698960685 944739460 984310104 777371894 834269846 877549985 786444687 811433230 53410998 252695170 875485315 246274218 496510564 182630583 591783820 489318496 964345850 349587464 733633464 783711052 588590147 270528705 752564349 24865071 807463504 668984200 846550321 809707336 512739714 165255382 958990923 451578416 14911273 731353636 862459417 935697197 10675088 686063 540538697 247160680 241021561 66439137 619303187 938236601 703478609 6043364 598156793 814129682 199924464 441984425 188568746 127418189 246210002 407500582 493483240 692880351 149805183 320737449 135462624 417239862 615754482 674436798 485072287 11899328 527916398 774453948 999644108 30276824 594893351 607787812 876274293 825787130 506363000 509446451 446889512 878508656 703041518 478411516 557800526 524083572 316142654 807544152 334627769 130239739 864600877 461495633 139314064 292738674 748320756 989853065 45178727 371750693 461778008 542558621 328895511 547953061 363767414 750162924 697577575 182240897 984960253 964276202 274274133 181451572 116731836 996189451 62577654 502581980 956511940 578845989 702949240 982343968 429090533 287709775 319164834 67917110 523685398 703368201 990785818 844150189 295809037 823326399 593308838 462375216 531215 16608386 835759798 613820776 755230214 69987478 503638046 611588713 9157328 737922066 515377977 210464697 893426516 641937581 712005838 806803693 815084625 538553644 445784768 534782207 488151554 331347654 36754241 643077316 29887970 475585285 179452735 426902494 294301224 509788432 516513337 181874181 717144572 724637675 303362404 181560748 824006280 292843870 565846466 693953578 23561832 280808321 741983316 570168910 100940370 231877263 793834379 276561161 576223027 389358715 111287658 276855800 511416910 636373476 549735598 694596399 436624881 107351814 908396654 118025106 283567058 114566905 108734925 866622149 683178365 490725269 112494438 999408160 908749804 228479132 100817740 211949392 796143857 85053599 178427800 199483416 666560072 312069420 103447540 773694228 639160036 897439147 436572536 84672566 212114896 193572630 180963914 642944201 993532866 288964277 252923944 523833747 102299724 239270599 152711605 623741444 435174739 308219087 408157400 196650954 158429428 574006796 502404589 271553496 85348561 62515671 408360295 447917808 48082796 562392921 321079197 950788044 154243439 25927283 656646776 466087699 502525792 707028245 524018335 853775329 964034247 474407131 413070995 886639212 918373935 625082634 653150853 824476867 488092642 412098141 459663892 188030586 399986188 881489046 947190898 765005040 166565634 939067673 577956108 249307714 364579129 524606539 378218053 472364166 311528713 392625435 720464273 451577430 229167075 270274433 766380018 828772267 371522767 558565554 249957751 712548757 257813258 658867815 12158602 876781692 911590538 526881426 818756286 971321768 81102128 920785080 842358380 422372179 860887734 689391746 756735944 894948523 377871473 381785538 502296568 805796856 949216079 19293218 422996044 441042319 830736388 484068065 964956228 45451453 463562455 79784236 39454990 996467620 325519246 990089695 161117989 639823510 197650111 143843149 459393475 550889550 700812519 42536615 327686733 798608324 67156714 653602778 348947948 719947862 952764485 445475764 85343027 148959579 675795020 619905235 315984645 23208882 976642669 26238409 382175973 886263488 2227573 152549270 364191092 75695536 555274849 961158527 442177032 563881062 332527016 269096655 461842714 14857257 838469708 695328726 316066600 988173082 272069398 229141625 730218838 875181923 471521683 857971050 466006443 610424482 694466741 172566803 704294602 608681708 868806899 457651355 604371643 905206126 947796278 527054383 334211727 228534988 109694069 565441703 834209446 541629372 949098519 15438913 60881454 171968640 330448338 826403770 669627233 526244678 471181818 627964044 486213220 125174457 679979764 183748268 999177309 692838454 728765371 644460680 534079042 282960205 613211604 938075593 806401731 195409872 169961411 236296850 902321915 592828592 708480130 388573760 934299109 471445611 827815450 615797672 157407658 416860895 117907314 231295323 920216766 320913394 409341332 60195757 925446121 554013580 757842283 435021758 165837015 225795078 441351292 712018299 728688270 916555821 160631759 477181925 307953326 318600193 289994042 982645537 664546943 611826380 877422113 774249723 580904222 990847036 17788739 246869592 948048495 626287354 550890420 986505130 330703786 443977572 651589623 365447675 809949973 248680699 363234119 775264764 943742181 778038220 717518749 374032747 328274450 925956909 725724425 390095517 989840692 927209491 680770491 144062965 901428458 93846555 654154213 353738252 399098296 650052754 86498890 938498202 923581717 569745870 598527070 909242157 165942025 285077568 102558176 690078643 121577701 606761670 66942160 87182667 843097304 34849942 287091447 482166395 258572815 367341302 634721759 61243984 475189459 204957020 169414743 138044008 343145713 168218545 704010646 12509674 337486156 198357766 359306432 77231203 582306931 826266848 858905601 935997324 556615729 821250028 763349208 506677693 922314220 488915240 976594924 347576087 660154249 575161480 313681964 209880331 171216496 708884066 89220903 580117476 661057334 798576329 531136427 584471701 895824085 930426862 587876671 620975755 136060796 737022618 769892801 554786825 626517131 802538276 69460943 820407936 811346281 325910001 872676981 123628959 255306621 701252275 112839857 596211846 764059803 153674416 287495940 838809268 146182568 428642230 96238281 446256977 974957660 783956610 751527350 5127905 247238037 499575521 600652501 398385580 729722758 765713701 931351417 59220482 677876524 413721864 756205244 59597845 177787838 296992986 35006227 557193724 919556702 555958372 59607910 700237335 451977342 906962132 414888275 625372458 515751212 87818632 810447811 915376899 775593196 696538478 15008928 415823692 389427588 14204567 482144995 670378696 396647449 162048259 76202407 759622653 999926242 696724484 703395596 226520335 290965597 53084460 202064397 103236754 48321847 9767884 584656626 24405313 85898636 872536074 274700332 481339586 867267752 527372894 660616550 760572740 122424558 519720023 91459428 942252517 51951429 990843410 721685375 61964115 702768485 858830079 278628584 927830829 624785394 21286076 808001484 826470270 66849886 359742716 115816319 529577881 989496033 529298258 79253176 695003112 840572303 445212504 797492339 306693440 130378858 45423350 914503667 509704106 29601322 711892190 727631574 233447531 118395183 552596358 794960512 198350481 74355369 669866774 286982799 998347716 410982473 335331772 219498899 453913887 224206311 84124907 200701000 807638482 918053405 420068597 86404673 893948245 544215057 221795367 810214102 423172928 607002617 620473907 542697693 63356343 274096072 732801657 290870369 672021734 556333880 626567443 787482870 182437361 645671554 198048797 268009857 756069708 771420575 487563442 862826945 32673050 547018453 768846184 856880399 473950002 585342732 940794600 638467395 893310919 855025918 419417888 117890190 818054537 271365443 108885923 448991525 72450798 243262943 103831056 771081406 916235971 250094783 680491215 940969474 79565260 403588866 271054297 933065091 444027675 547997297 854315563 460001812 142110194 256378630 237274006 840448774 972946597 857785035 386497639 240654179 728235607 921082577 729806538 645504082 309894014 391747677 551341055 566499050 760247212 283422913 448279133 124809720 610370505 745973443 658923487 355456586 251019787 436404824 519773651 327926047 294923379 685537228 836926515 484154043 666296934 333463044 652842958 42806429 434007021 978740520 91628718 876714185 451944190 597815170 476310347 653087207 497393422 470372 810910974 113917303 837491011 585450814 918634830 88076126 282222283 553933071 270324737 288595054 23160623 732427417 413958289 375492542 478376230 724209487 382560675 323032687 539675030 277562131 611997217 930077978 933379429 966302541 681989137 460538970 800241929 98496900 14682573 753742882 392557748 313509903 928013797 318657004 805677292 644593437 864276923 848344143 331364613 76995825 843509925 481840446 11185348 480077887 469334093 155632858 580629784 543052723 509116737 345907771 959172565 500355086 647447620 400816765 530846836 599638394 542381305 726499138 917585583 776641120 764963695 693025557 367763902 490763986 729876226 396529218 891155293 318961279 290719758 510311877 364298823 744719194 764532142 323033910 578217049 460529614 913780521 733709928 803143005 689831032 200973107 992573570 128986677 112549456 658400545 744940526 542571929 503977730 225648235 144326085 122529408 414245452 634087918 672771615 59705523 769496664 329238492 678310272 111215730 260092259 287202307 936685635 448724687 574955428 116257239 510676789 690201481 579241836 826567028 107163281 73077703 59411239 487540766 937247083 232658298 697117466 175416429 746719980 136678331 785446969 962784597 710898176 96783190 203142672 910215439 701023010 60073085 201547556 829194103 27593059 327363386 792532772 611666736 956718224 506477790 938044835 292826516 621666040 81623518 271960355 398631060 519805584 103439144 870634337 66522014 924276450 138599080 475165866 433321751 590527595 935487892 84461654 429188358 889921931 849237176 442679656 455485929 680172006 835361822 300237763 509273023 568659843 694672407 316185553 333451038 151595416 837927746 665038596 640978188 491916948 381094144 208750496 813887166 908435299 609856811 244274515 538828670 305192237 783265481 270894753 325409230 487347617 168254756 606396663 859410533 976473614 940692490 739766166 769552377 478934406 816798218 127369741 826027558 508587692 83776478 860161510 751786129 347585611 581771427 425284566 817261627 994956423 718868289 915332860 780752637 528021160 643728111 493772305 140865620 672292470 316613595 168431206 352505386 279931368 214089072 347587882 527179034 632404242 941283945 877578475 67768037 357008436 262960066 149982078 21062378 750192783 272644129 784366193 999087587 229713012 800098975 210526353 979300900 570213608 973687996 927761527 588963671 136422939 228840293 433947045 949547433 439752261 354893945 853951383 26348312 952461691 472739885 905757602 601887364 878051395 39166785 133146886 995371424 35286447 962653314 943083832 335964823 868436034 781456675 325506062 552964486 95122202 967580590 17616816 529200489 962591630 414039386 215099718 531421215 622823551 404440667 362680884 722125752 97112614 151483472 651884015 837195754 738386059 767653796 545419131 548006585 133562712 453097942 721565358 462338737 804778381 181107387 234364476 88585453 665828389 864013981 899463166 983420688 234378659 979323860 684121347 733023537 205625980 399714143 488021812 803010406 388818828 617090356 81377110 705136186 386164543 737127759 563826893 676720718 99273769 116490 394477075 80416677 549305490 945475844 964987267 901740601 762801493 810353615 506132697 143454689 275615526 48913600 713175267 194129737 517132599 552793222 389737499 619025503 93171391 6599266 584620676 640255492 294807166 607793481 152114079 367551455 409409353 230106136 428022810 101413773 597535522 118008641 905047299 961461602 118361822 881570247 878904351 752612912 44787898 778235364 423788869 521670544 827984641 595227196 377935 782396789 473751099 441362402 202695199 816804151 532567011 778175879 468152387 623280178 50670904 226836694 404784896 443726074 784491260 224334579 292412645 483350675 131913893 512435698 431804937 521071164 152940132 13371755 686152400 768027809 690529627 873764509 314871726 65429387 909166145 949276693 434316722 732849559 846205448 422599944 704123200 498137397 217864573 771597338 65018424 320670337 772158203 244298018 894307301 273239572 48310817 536875811 172113001 8707580 896465688 781760886 120047848 829615714 479090419 265084646 19998809 517941107 743497968 358259278 996904435 954434169 983811498 681894783 263835156 29050046 338485432 841952565 230203748 500608624 575289881 396331390 508228989 470626960 112358510 113301752 20519861 596441459 204284096 390955271 407435296 181724467 992575591 200140204 938118084 588896748 728862129 56095680 805076120 414842739 600297310 961248563 660213746 597592640 944776632 660045632 65261623 673953606 300132989 515941033 148688657 764060700 943853711 459743021 574732132 457150760 165144689 182760678 684226790 185844837 334151155 874693100 358908916 835586972 395431657 387262659 378361914 592218520 467310372 226872316 99142085 364201469 66581073 85259335 980562206 470120454 875446384 356532933 573690928 513515793 224808399 418054482 173504123 665397439 724450220 330955825 304048795 443486292 599730881 156110180 505265846 686441756 183322371 967048840 614600796 911897558 451077171 711558819 950107533 41564899 209296732 666523770 835251619 172098607 610254510 877527692 299965086 435568096 799268844 247782795 20797330 903858597 691187988 906231098 917280887 767016671 993894775 237809485 940375735 492487408 23212769 173011092 562725053 310632514 735129102 896490738 776027564 112384367 199831052 377502348 209522516 907368230 600716532 347319067 360668887 47393464 11218368 431142930 87898100 575307891 944961486 842685316 53853799 229218381 733431880 880966991 165429562 136737827 783779006 294635688 20149926 135744804 545374266 139468844 15672423 836388659 733865699 347977445 886757315 294853816 338015085 183324611 989994619 621611830 447238718 589009315 662715761 359439427 385480370 819278539 850699050 131600507 770120574 496722374 704751839 461946802 737493356 348735639 639857875 646932203 873495639 795729028 167452590 490094871 745400924 246858750 829484864 597925944 417543930 118662329 877002777 918743627 626723025 507176390 189720774 309472689 696711098 150017844 102164735 22445403 48761835 959766520 433851606 974148404 167594124 644514367 181536888 313006640 94087643 935469768 767694152 199911269 756465663 558392529 261999373 37770782 685989714 171877229 388826494 271524830 576745670 665269056 274447566 2265684 884302335 529466964 835396879 94807740 430771540 882732649 984877930 592948309 445193877 545021311 285504081 623451122 950588239 933713347 742244560 731287003 503274958 951863298 328083956 602132470 435233353 581389076 960580027 126765403 102004447 461322981 49568991 290627807 986185615 848959077 834578315 344588939 737870094 538496538 380491701 752362922 133869741 605550098 802250223 94035668 713619842 852333139 901602052 906010410 472623511 453226903 141275987 413398133 641203449 309306790 429416812 727594608 71560668 572066874 142305551 697374806 711388377 591798766 263101748 126403058 83455335 811199075 907478532 145754668 110218076 859817036 481046655 763260387 384041653 655783236 136013419 79432720 741788751 499505656 923276386 663142814 393443185 257231391 799424911 660428599 327060356 802115665 828529394 142551107 252579915 88016484 846656011 405755244 664892592 626177808 215668892 207717082 732284012 923053326 518537164 950725121 729814733 439199365 303555818 615159303 558605691 59370819 957267301 873460740 617256261 116806421 981975321 815140979 676945033 296124673 26769471 999384587 426552954 994890922 539802445 488984580 967538964 334822860 633227207 992167749 383169708 755761768 131514865 691634494 831111500 888573900 667685307 94332441 678683786 123167885 938402153 608822307 882080017 923026951 774135112 379200444 589926352 958280862 513617428 786604141 115779476 960676477 43110118 240913289 152950556 198951278 53756938 711082368 896235642 200444026 436212345 691456467 582254730 969977792 354199506 112314118 971882604 577013191 747589939 372698181 52224999 132035835 893611208 597808110 547780001 363153514 573741137 956196015 913579474 154553260 223116548 629817535 754464401 75184140 537051108 314376193 495044727 401259288 509917738 522546894 372742545 826869460 132708150 946770946 970214999 772657648 849333990 615425880 809811904 264303211 781077599 736799517 136185950 101644247 231761895 431511368 483702072 574279647 602803830 611218246 884955683 884536536 911347307 695326989 213979476 401986489 215442493 347371884 428880782 715429917 204047224 800200061 628036932 499166155 174031293 640678060 895873294 881311143 835789165 233021987 412245566 895521862 130131562 303628102 583827933 994131651 811049981 609474790 263503722 803361240 572656722 941852789 422325432 579005726 352777946 567602996 963225892 347812915 324866716 454937412 703464705 285603185 534351006 366032504 805800850 188243934 938315580 525477892 382815766 770567831 76153751 645330123 557033545 570328775 607728599 246048483 759305135 465187220 486283305 687383815 89137679 435852714 927858222 139296557 944919969 721774113 735147822 927742322 344177081 828838978 616000196 747079337 853613905 538953417 536767955 225468638 422003040 609028434 810820259 239706288 123721732 744306275 56915470 230004619 838708718 390063727 511596410 187109774 856638435 614378782 773904989 504989823 10759842 235075453 238534879 196993133 203407823 671350375 387128297 827744369 169095707 513000757 888055632 631007875 822517995 499023772 605996677 699051660 317954638 100915777 556169492 900671669 389907380 877075353 957895357 939209677 657949937 849694946 763244719 605823752 395220646 485972148 800911099 303455486 341463326 439768064 853753739 454938619 503215800 899750807 153286340 810690675 821568297 220887487 895061634 255684690 473971398 960309321 535327676 15551919 844307650 200790048 554226104 655323134 318587106 643317216 75018616 26657748 159833199 869235718 182528337 622038690 951783005 368832992 281146924 511734154 384502634 642640276 896853453 897730156 163659075 868412278 791017470 604589172 256207080 294204510 535715756 12901926 248377190 41788018 967662043 5974237 693643445 142888414 532402723 945974850 545953332 758584330 614874083 516378314 761608679 887241309 286007705 160826026 224552383 989752682 7261837 463155317 314266456 657980439 34267470 629245695 441473426 496468934 437279504 179495625 333271493 37965660 306239520 762925839 752399414 896977034 784546601 473280755 189232617 341187456 531522414 924885444 814390587 959980937 344489451 648939508 836051556 520575597 603138051 420034197 694775676 656124662 690861524 921479774 621257496 706186719 153005431 133434761 79885255 195256247 556502651 424950048 535082273 991503404 838654442 209959046 457824389 715662125 130871822 602792353 548670576 700931400 938747637 691155640 357706689 911181239 116284563 474724829 535244622 764366698 150047176 950174014 309688445 209895268 958095947 609717437 193092045 485207158 142529038 427880388 903993314 571949986 666265160 165812901 524500498 307210838 717623617 474151932 113032757 883657270 199557454 960457303 417863110 380395719 470909970 873626831 351839471 49770056 480128133 712981083 87887506 732731604 582853141 985791793 980585411 914809432 26107249 433337114 919108731 562847918 313463532 271733565 531066052 864520255 820336245 486237673 149353474 667417767 834908821 635478028 519402744 507043499 847292189 732129800 220237688 678729867 47627535 501392930 384880251 386794475 486483962 741183496 43476435 229653707 973017779 329178921 784320793 258369761 723599317 879784401 722603834 699579380 391558788 197906661 337418007 333383016 416952620 733317642 901859599 775833914 348314658 432349406 43057714 227259380 496074456 192165033 448004449 956410054 403960576 884649724 403484174 436018753 85179353 990378038 405833005 903951402 296300142 881600922 105219478 283335898 389138775 885025936 302039049 180514400 215042740 252172602 846658235 547622911 4061914 434918196 340126712 723881945 386141772 591559027 776169800 35950250 236999748 28700667 241266966 792748858 530584512 683371005 105073067 852586162 870103089 922185859 232728308 216274954 815726118 237167265 244106282 615055806 23171683 611312158 828809216 823986535 430895393 410992118 738112475 570351219 135266942 874129234 842893577 620509446 125246437 828089020 923621803 220111901 438280473 951002556 336002142 112303297 856084277 324003314 890230418 100227795 588577020 312440063 253121596 321378996 268532754 566595281 200085144 582363612 969138741 498259413 853732246 65643510 473774892 124484362 599601146 106311180 717197958 471255599 686616701 289358333 775475400 250823885 177291772 904721551 903173456 136983041 752029896 668476669 266712269 981758697 314916287 911667787 277827350 829489070 467603705 637775775 956564193 332687778 264992838 393465142 238993207 905291986 16212150 869829343 58630069 392564233 216985136 887484093 891275826 562428703 296366206 349955470 708275235 700460414 197582729 976421059 925967722 774222097 54286186 889007592 998591977 879566752 279751029 231963831 249440361 585253851 901736481 396281713 691261003 765788803 837698651 18310891 519361127 648904813 365512887 225213249 820586308 472697813 954343518 985016884 230946469 507000036 172954939 685559417 896712630 622726077 374637553 574315062 333636658 540708465 423682804 661404361 211445430 630560362 699109029 68945040 115332410 623496810 502265498 650294591 811130012 451548724 760283312 745077989 171251696 783301184 925168963 74055702 123705208 28942827 889662480 669021912 78710455 345915760 548608425 841157699 693425348 316910791 910953420 665302956 865002454 571376633 630296358 794012425 181955516 629659897 956039008 942206267 185974318 396891651 957330716 372045534 524108267 782798941 935547245 551953042 785561729 544690491 758867120 273005391 91487963 341974029 679228551 965385634 208697666 107784290 923064279 851319760 661397528 635850108 201889264 528780239 649470857 475450994 524480740 994450776 172637314 457996087 69756308 853750034 74349999 620016554 148355990 46102614 88676235 581208244 694121819 2212976 300346824 230812698 768188492 214430153 927223482 536746649 237792793 195805156 688881584 398085584 108824846 203976990 38918391 825067817 641143523 223684131 620636948 144843776 431828046 959185069 563670429 87478483 390944565 652807848 795072411 604513940 95861833 961833006 25714851 121479466 147405028 204525869 551622954 710780937 325690283 395639501 147631288 594294529 696848929 142781238 34126242 629120401 144993893 419036787 267665945 347758538 210188615 193922793 441336179 894858413 92524644 645061174 813006871 181466818 793991813 359873233 687753429 915800286 588967151 435832155 373418821 914787239 119774026 32564131 745627095 25742744 826724378 507613898 121922427 269555111 222707251 768107156 377575966 241509619 545549456 493134503 25374235 863291392 15734130 207275693 628594493 924526208 320463028 108277328 99386069 38351275 337791105 339799056 781004858 315114137 511277484 261776376 179577795 728115956 563830184 542467087 135468472 513903927 626916255 628876815 348377647 17250667 549031911 755392063 345033263 393586273 70394452 593129294 393186536 475891780 208816206 152655404 245309410 110101725 843727923 472093773 167100862 14554779 511489879 289717667 859945091 940848398 872884460 313949223 791715469 638069462 252393664 783819345 776200292 543672935 587438000 987236342 620834102 143314729 677805736 521003679 68636813 416437917 712276908 507107814 933604414 452362143 819634036 562951438 188357778 248766312 615727865 761352090 301730717 15564574 239829890 577196869 611030042 903075836 685774038 840167467 930398176 526680959 924977686 563073637 767922778 663046537 586010518 675375720 41937987 182951673 437366596 257859933 418220129 7739871 840169030 336878629 707381769 320771582 770464244 981396192 279395572 292530050 782355 299989336 499752789 367301144 677050812 750333926 26663755 607152471 381752613 329235265 973466375 23073770 12685190 543382348 26054489 690454340 879167447 123802161 586709233 771363798 896900590 185074805 673271116 245176191 168482991 532709809 542891005 551141711 133742168 382949878 31361248 667276764 940023120 966169139 884380568 174020651 109490500 278210977 630556517 961034006 718225980 963124574 80861473 500596820 610618499 309234000 273715689 528968575 385362868 10914509 854328409 576207277 966667825 662418780 30488058 797679819 518255248 20835204 621863342 760958037 473611149 636857884 840825009 651946631 217441127 107758890 584715414 976702289 708887768 669669102 407060 491176595 632915625 316248830 663922026 922660917 431487511 902751272 821787315 194042086 150842269 666535061 470623689 494770521 717807873 233601807 866273302 475329731 252219323 234322884 739806290 447357292 911939009 140102137 111872845 79402430 855278555 936692506 603462857 664233074 63775824 849620861 680357948 444799556 891363365 349321247 897899473 114162250 280704049 592730782 762027817 413952120 485921259 759014591 356987880 78531781 903204620 175531360 143021118 279321587 614920835 382288093 288921386 957892194 702744746 444613605 587489491 594825210 50686665 910187398 961997864 216716320 133138774 751860811 859666413 878140337 86169212 640476986 4815802 932043305 118680462 599965621 36463298 481370500 423490562 245906103 719115443 728866897 180058752 879080444 806852970 321064921 909366192 428653393 792409838 207840243 439975925 108983563 504699610 603197624 753203721 862051043 181198514 549888152 780974007 148196532 435721072 975792371 344140873 650609565 805085603 664840551 345713636 760144095 569416765 962376954 42201742 199986012 456278135 496261244 840557414 415403670 561056306 42436689 135346128 261028704 569463521 557628104 702174976 576323514 730899705 140321468 582453432 653011496 36865508 230777115 916828901 837332733 217946651 366538318 491059183 392081457 708335777 185583706 606838126 546620524 947343066 894219018 915574485 489112474 885987534 662433454 466987895 721296402 921445954 673605122 870854217 240697126 846424469 136777750 780296396 234582176 615022967 649394791 945751694 245659612 273304234 678752225 848086640 218633584 907655795 449038696 71117977 328934887 448823439 890667504 790388461 274239845 27954224 91728561 958695654 551807917 268357141 170163650 859150440 44952915 310260192 281902972 789695195 96626097 342868280 477132435 163156979 642806522 578180881 191741419 429514526 599130074 31689718 152318007 149293408 260971168 584222041 851428617 195373466 104685559 268704062 156254407 629103922 748377714 129284719 501745431 786432334 217601109 658720947 681434463 570662683 740949003 111704167 34192902 173967347 875992404 915711831 231118274 64163518 520679066 14895644 198208224 226190069 578891165 458850114 958877207 294797185 350618245 577335139 167570830 52866119 317898789 565632592 909024740 599459561 416949240 579701338 862462578 624957665 443873305 154326814 66208396 300754461 542816855 38631540 454887239 427484596 785508910 808036026 963735956 546430385 380137353 294529242 222906222 766045149 820747756 870903527 200704664 323030948 311099070 896919753 925027043 984087434 75579401 832471429 115030559 246300164 689193085 279503495 10803793 389767311 338254316 906488923 392447319 958005919 921540903 171715292 467724035 456841715 47976840 589153365 772365967 948427872 266950421 851669106 583164309 750820680 277059698 220843734 328459876 618955836 572992794 917157491 945979786 191014728 205742324 764923648 472246685 740124979 7807230 203656732 294796057 216131140 622198891 198197791 676723309 470681885 683450754 621618896 284275737 383934052 510196395 915755716 353973981 632275818 397224009 344924558 775892728 362490557 953314526 300605538 19090298 371210191 743042488 310633972 820001942 364199511 473789344 454017982 301409335 15198315 372571820 976103790 983977816 143054270 550518966 608634575 86434970 148311460 750505717 627218155 204588580 494067793 672710627 576034065 390524845 337347241 606409501 299676106 613614439 119786410 420057104 648609682 465858074 924552803 634944429 109281915 67898905 692192350 53186649 847674624 493916334 462444598 993953323 199769636 350383849 46601614 500357697 949825876 898778005 725562022 380635890 463948984 36351749 371348641 140246902 4795108 640997816 360743229 54032769 167562520 545145077 412616832 694658470 494076374 791391981 384047053 53570407 722578114 990508445 761459250 466885281 484167571 225852186 941259072 428912557 608661503 517508930 660848745 310319092 964116825 522201801 296942473 616188849 806536794 512279116 172476747 494865495 524861685 480672174 79816920 825345429 624826605 237890240 356717738 186721443 813499508 310722913 179780588 273787499 468859690 917300794 72918583 624504332 116050527 88981398 120499281 897089988 560984292 155187644 827662622 481699855 268102732 397436506 573696756 555405746 828739089 875749202 491984643 464387211 285260343 448604465 291054037 229936515 706100386 719256705 660630459 40328287 133703688 249001817 744303975 493799597 108232478 165416884 163490156 124687178 9454344 874713994 120816733 400971960 281550411 861275281 541273883 122648182 445318586 452615762 776015998 311681481 336771174 45165608 582367116 998145842 532307539 496258578 422982001 298018646 616307332 921743708 505083558 865227924 398256169 378521829 411780568 188284145 116040313 278322356 335467723 795748378 952660773 359881672 833559274 665808573 764755078 666618669 754254757 997653654 355158764 998039850 210928126 972765514 789848268 819215770 35559484 608610436 549521919 649756347 567368754 556253773 378026709 561486364 678028634 696732049 795533626 855488985 984452850 324537341 581304368 757061116 309970346 741856629 189240327 639432039 136495728 950451347 850422773 984555164 462907919 414177714 736371110 690386644 197309820 934664426 919943590 259693615 531224039 216336645 119034818 449041513 738940175 840342965 532039216 809764949 627966937 740218275 778965821 693497105 800931941 644058115 564487098 764783837 933843077 170113775 168985925 294687688 645934965 336945587 239988641 48124477 887411678 19496676 667005893 917565506 674584058 803087251 916328358 432528910 39453170 862413484 205820197 173508224 649374672 641108239 429854904 65178907 336868909 596684029 725791571 409174927 971308083 842144005 888173769 300099504 82111226 438078950 432894464 797257641 985604885 411380091 854681275 776568944 271236022 93857375 179913270 978523915 987308417 626604049 561091928 653250711 131607005 570050641 760008765 777816502 546169886 306684028 137690427 835108459 961185550 480689386 603014974 497876973 702924510 626910170 415908146 851544197 393715962 382848706 246207675 592116512 719839484 22756297 655432650 203430909 828115221 776028179 733354513 112790824 330375874 732037234 108393440 387598008 509299787 574033564 245679337 781029542 138379943 442472276 983398552 272724837 658369949 575347437 861849513 468488087 775881088 488578709 612235978 561189195 275927412 298740214 492933980 22338196 766726686 396732581 371340861 476014047 268756226 412462077 561742879 623286184 560433093 651051862 676666553 904682001 854009023 473740107 400586164 831189807 118199089 794443814 578285988 204241719 840579231 352656161 228164101 706144066 136822244 374984036 618867056 106932972 244808905 247185743 129186220 70172943 358728387 473316461 72027823 7568245 897780325 451879129 352497923 728842411 437599019 107853413 950038995 466981604 679136412 907221996 106284671 71739156 643307949 551128247 143132710 29870921 296339178 648107294 769749071 668009146 304967379 615285567 24124453 541586852 428452 253084331 896997358 390576906 359292380 163479486 638184287 987976085 286200809 252009278 707071749 267822296 248063854 553501384 831011771 616023854 578331789 928675163 881219746 785758257 614168875 838475463 686897736 548631839 377571286 82472946 348875798 925487790 744564762 800169186 18849605 333012977 216511389 731272138 246334778 747885881 636526491 947899083 366108517 714108288 874961715 804793515 834018506 974084073 407432284 80963341 669027051 150620837 893658331 947661253 578327740 414914337 27920725 729155126 815143576 76908826 965630534 992320425 33865575 80961551 803963532 485983515 461333991 842363813 845275623 234249451 161652385 354738785 427872779 483702251 758269370 263832252 520873710 377612182 388934197 602343605 299756151 827241024 446128072 384607351 364771108 425793835 637101015 356371214 132879178 650645076 802700603 744664171 683296615 943509714 596577781 618698680 888262708 148325717 615832202 431271338 708500168 220379585 579133475 907590716 84279914 579440321 821269331 116924514 815902297 487439387 533206445 212783455 857032443 727076286 545851422 413576587 188335580 422780207 663930620 652101376 31430609 568994773 456613531 607481653 543196996 310231654 570737229 986745685 450301417 957287948 864483614 747237818 25092617 919709609 825352718 361675020 648192129 839819610 497673425 186378775 539446092 683524881 116231468 406075878 289347569 716610175 872522832 372685283 7021129 453805508 434940314 963400152 708465795 676128109 340522620 503382751 319783040 524100617 886560163 628152494 464486043 75217796 647711749 392365365 709176171 261715207 230351729 359168260 627644416 232280362 431064610 661140797 221553714 484810630 877128900 10335049 786428875 252938569 195402323 253373101 716334213 410695428 538398081 98320692 542151323 240624094 937010801 885319406 772604506 661926681 15377498 10506854 251421479 485002558 961890990 608656197 792105523 981105760 759611782 351119005 867320083 858699653 186953522 823870037 709981240 756324736 663217968 863417846 68705432 958118850 611656378 372706304 951519138 606517528 395997843 206308751 328353754 727296609 881245563 86321625 618097563 639958239 781849682 865521501 394546633 692964464 318719957 160384239 580143759 179164696 910994167 282782460 935730757 570657952 54918096 893259190 686006533 215659440 263868124 876818397 632956162 958207603 382467921 340452200 820104104 944318736 819704745 323996217 958461199 628230324 420186423 822252902 97902610 974098947 300691046 847201643 133485136 226516229 683131580 420744953 51089643 619244691 924294270 861764844 448130900 628026242 265167547 765943512 383759266 15127523 45380106 429799557 87560202 784232953 619876103 32181977 696905669 445283854 418005398 274429921 339520682 445874667 559437250 784719659 517730031 872420475 12034768 158095200 622933291 398334161 851785071 454222 628012179 11395294 462539146 737803060 630495557 391261869 924006645 975647126 916701041 307143297 337349596 296581301 276261832 748591916 302616579 214752829 688957465 100731953 238598070 748572545 680512152 570219733 94732345 175804248 17342962 747651084 661058150 595285124 487106569 558135707 99687128 931561187 783894200 117391693 820786022 489623322 877726654 904232601 493137947 307209678 52091258 819744823 366075583 585866147 954530154 344326593 895141677 268296407 319073005 353739170 29766974 121516141 77782737 133389551 922435259 985568463 526683844 835515274 304467534 60379037 612117145 564398602 726051168 88048348 786656454 555059100 665334611 199387143 276271240 258464477 804903438 560673387 881362637 194025409 468381517 382492189 546907761 691248677 324461564 505073702 540882815 264872695 784647279 930878111 844958753 198284866 86048587 853789740 841044899 795620757 719734828 581004458 30726320 330222628 128492717 581302638 136820273 448003606 409561098 722909391 893856389 209388408 516061505 870302945 806164402 382983877 617093331 778614963 714878003 669077782 616504029 177992381 534063065 556436178 336091487 60088214 530610122 602564184 109192766 817237156 904645258 40342465 305006111 979950847 539645211 348326799 217481146 602794825 989320500 352747290 909885925 829939746 602843610 74271949 908004083 606575669 463309795 502654419 966898041 451901484 94164442 180502227 232328408 121481120 645237626 278468546 79022620 493913462 889695163 289032133 310863839 767006655 187302052 185289968 598103071 415844044 614348487 828824271 330644060 692373470 959343798 942729880 577786672 369795976 386389077 372566721 445161706 300018708 468223766 586965362 598111075 285217863 210747285 863584384 829617069 300278737 929440565 201836664 271096304 992700914 298865615 985922045 925745669 577573879 949611562 574122807 980131484 373566532 960741260 832501186 397550821 920013700 884070123 931465972 120135922 342769086 901268345 171048968 855036098 868749198 187281845 833978601 202825819 876392476 62239237 250916653 324006865 378319630 111936129 587414329 355893710 675645781 42981323 390408282 139841204 239531770 322709127 626129145 803092093 960065165 351326975 39927386 851064061 870524918 179829687 451676797 386505478 582104489 877973167 972717240 216040417 508154770 542622910 725697200 652968434 17077615 252496061 754737883 744671041 296932101 218664918 906114684 220352270 559628141 561007866 831152777 314586178 86663244 98632915 144777745 315527557 177432246 113320518 190515850 365545897 329970240 336066613 686540122 459643543 944481235 492408599 790695815 775798333 721771717 618083588 832368541 886106006 653079930 866916601 893076743 839175511 735556269 420435374 170890559 865201066 561998417 15458588 567992737 136407447 753418342 137294502 613669868 72265541 667527538 705013358 685716601 58352880 633780538 823331087 982536951 22366818 785278905 118962999 11634427 244637850 657452809 119781437 374629484 91951766 585682469 949013725 75217028 392224828 131877840 772883973 998950875 755800090 549459857 519889883 67361195 310410166 519959695 7451105 650623455 251051674 361767630 14256977 374168754 792393000 419867865 211905851 605691465 807767642 591191284 40155648 984276552 215618897 670707777 742608448 47936172 375684913 415076410 222437789 824029826 583178546 1051582 583723066 219089576 211456015 343755241 48075083 984398447 957372744 383838070 990519041 940295512 702671193 592337914 266425436 383001064 913289493 555853652 445420061 199029850 869613311 851184399 498767485 385203378 741707217 142460857 535925259 545850496 97280982 936600224 577424366 842742621 589944318 54646372 88527606 699350815 305893886 255257467 384036131 211607729 918735883 932571445 701832287 849159446 725130838 504446534 834331176 160908285 397085723 283937581 614264282 588477366 423379701 831278617 577191676 748988356 443046082 46903578 326505013 82656361 84612982 733326173 254395767 87014000 903556571 562207667 766313227 235690214 847276546 410797875 191997290 514013790 673918438 645686523 208783406 66874174 627279560 80767219 592380993 3698298 290216097 828392675 740224619 509422425 906888142 996791241 755877204 867650193 244831675 462137688 227883059 974274830 222968764 48091474 988457838 50790529 602067022 790335836 284381007 816495561 392442916 753737319 309321954 980291498 159520744 618748099 641649073 782601139 733004501 748139351 837882230 706290881 592934730 678826565 704583732 411786265 534489674 32373640 887788849 311527520 163632101 206625087 864166247 305131374 700716363 330543910 629845396 91766180 409457754 163692009 569826042 758318722 394008434 644826904 298959634 86166459 797213955 388291384 506103542 250063770 107074632 869483953 79152225 819968753 74081288 400421628 239562832 881096295 76455676 1191474 79613372 55660445 15707317 403818506 226243004 236074398 852501427 389035441 465921909 467390297 110610466 683007956 816138744 387029823 524921688 910990934 731615078 97553524 588111099 93312911 522002917 996521483 261588318 750715285 708773468 667101279 497132057 643402564 339055724 301637612 239657725 500053807 388674626 414001373 629739500 355977535 938052087 105312227 506634325 310801016 954946182 458418337 944963750 21179346 310883009 26999316 452062007 561461941 903172609 502377163 22040482 855429782 623425698 205690514 590070435 661112948 853431522 709365603 179498692 893859445 842533892 751091395 278529715 584117403 53050552 780016894 75645881 303891541 464390708 649860263 512227530 281792802 127931668 931374826 43590913 310037523 915334244 14690889 580136520 882423114 470092397 354899837 449903372 15686116 787008584 479896096 422129537 485505079 484879412 790916962 809045943 461245386 642146122 937200214 425564436 387487128 464067167 231863381 735892625 732552415 242547667 81048156 314294825 303546020 358776228 567331041 251960486 195654468 800737315 905606125 829288138 13410242 902542504 571881312 760353345 670130124 335969636 718017169 116699345 157053144 472293664 520956838 233181795 714120088 853095678 720192448 80066523 925923048 587729895 200778463 436996916 348472254 607753245 379696411 60582136 227898987 682178902 716564797 62905846 922886806 600820603 279095427 940585531 160447918 376279918 514154935 515190559 640971710 218339722 704084452 903627860 628639832 657880424 559060396 675031666 411979076 780688233 867260353 734074227 438830219 413492586 716760605 531045371 349570454 844583452 283474611 210044881 619321279 323331794 577418921 169790684 229903799 717680144 808925846 246393738 223358751 190608479 411739184 689622193 968576242 717071135 151957336 686328034 957178096 160424699 639918482 796919183 28986794 743367308 160748718 165798733 133049129 676451080 660330332 255368327 418365103 391800515 155679576 548752937 795158964 65636243 212610342 382964971 279666506 212605144 553506943 798367218 576682869 35640081 571544412 58281034 769430346 145514524 322133593 994761227 511293698 805812319 408617225 121415491 128066406 812053646 569301958 786210519 311150128 709029008 995913344 779059609 443998877 489719014 312737816 236132755 656889149 184983986 748198391 16026046 741035026 1729994 438258025 101351905 448222368 507185127 472901788 807077455 580821888 412177490 794484431 50261323 809240660 945441203 118273214 817093211 228604854 387133884 939284843 250333766 747754502 260523377 417030837 113486176 189389996 891998847 528385237 815077091 407247417 261467580 929339493 107368629 568063436 575688915 383094235 553561774 580254789 308500508 790454385 783245220 174747758 410058063 823076106 221166986 671077875 155644847 890843883 64484603 240886955 615822800 196507938 99001884 855407827 243703176 226189400 773477542 335178932 37186297 436000940 737226266 922793012 243536663 431509763 828393861 591410015 538182673 340907966 841491978 88479701 290892742 36810590 497219738 145773682 346055622 385695804 634257636 132766780 887135701 229606685 300719181 899662322 439723701 26971208 373878848 449458803 369748906 981915305 441237785 578963954 691020638 458928989 852214420 396098829 13601736 148089546 155978626 139596246 272168455 885016800 41630602 981692027 341813323 732266694 281425591 61775118 161274268 776798871 376317617 483275831 543743701 542822436 978417581 862629191 267445924 105209466 352843536 667971508 212115859 269517962 119346755 247197244 195071666 944529422 34596369 136607283 393845794 721816723 134117282 544619437 831141405 341964903 760879372 587755954 670836845 618834981 513293985 2107040 597309910 511148569 283841022 600623222 886367415 704220650 920830450 711959723 380158487 171577892 6781274 563394159 153852142 503637818 847128359 387403980 695805253 191556697 471800219 683483759 260951354 120494610 108035293 201079745 24819691 944073408 228815966 94797478 162101892 706323530 783572215 700164526 747577006 271798448 350227348 40414445 563313395 517893535 223911438 971724654 926986012 190318726 303761125 673173211 636122427 355709026 574591781 212150803 67909879 996608818 209327788 312901481 416959872 116635134 757670332 201467706 78011126 962042670 859190135 885607444 109743538 695770864 597206421 952908446 304252637 18193261 676941403 355936223 983665931 949266165 350993592 164611702 471850003 598654039 564310747 41951283 521432239 906423959 446306822 100715872 521053182 947577988 134806105 173002670 32508909 551414937 651906344 231845943 828784926 294613712 791648982 524367508 156792263 317637657 967332695 66121645 101109177 294696595 257966753 812638391 926090450 848218524 934771748 131116852 416601672 522111923 476675464 636052633 431258396 377571079 183507113 295138383 255453441 950482603 525736872 44887 751215933 653927313 317341198 967284476 860192468 834713886 976811744 914256929 804705349 924909948 214157668 866418640 449075231 386506885 665827408 187236421 11319979 183686392 296887776 451561656 351755984 251406656 819835587 886192244 222447850 334529021 174784259 932458319 986263628 363007493 329774000 210243035 146828217 174651019 318786205 246042188 466420279 995410894 828368264 620250682 606149596 646702432 276263956 955061653 752603345 85939344 718487234 692427837 600433145 278934838 641563816 107839967 561868593 868688141 840994494 418024056 5928752 779469956 328730056 207512791 781049951 95826833 841373558 714032378 472526440 990605104 196982741 428877107 868021208 503528849 277115920 332390461 589995571 781287885 427153015 629915496 270483572 249434677 773792197 499370110 843511921 41751493 62884901 123901523 945376421 234595143 817720301 322426403 772843659 577941525 352021098 617794581 483603830 266687148 218449652 257585130 884888679 767149482 186162770 782338938 797236368 724848632 635817800 4994590 857799751 718709798 20274325 610767035 474313598 970126034 876149081 386312814 76814833 74000879 564791700 616773177 472883071 560293712 208823758 519958996 277368296 479639343 76441619 405630452 303573364 614825149 424568969 403349689 469871203 61743725 310966806 549640480 769269124 301071367 191377221 740204324 965350470 980010367 611058648 384238733 352206326 935482039 603601718 992155298 112078247 518022211 196412525 848058284 581406979 648796544 965006497 830526316 725273032 14298713 674242330 150646285 45680195 502878350 678261129 881998894 317430874 752709812 94683028 106474323 315344396 51174645 433943860 885155526 927076660 19599910 708279863 728231902 453509739 912004641 877127882 574680009 917738102 717078674 257340461 735609512 13208227 432686649 902382003 694601720 121525065 517200730 202875984 220006883 669257428 270294736 428289530 284111915 907682204 813265057 870816652 389071962 445290863 436110789 839545519 471945921 324856210 674474114 67324989 344349474 51012949 780727709 271961202 813764936 560053185 169729504 384597679 720760007 200750334 201419374 928852309 474766986 895823632 300150857 916305766 906163827 916344570 618480707 160039140 155866136 740879213 857685237 487022210 393993749 259108551 944923469 975092601 153538862 779137214 37969334 144683570 85155792 32061492 170583341 580254979 633741232 900263581 976508264 850394799 727100121 981303274 561122596 924464265 192394277 917356833 736073997 613209507 699441739 180954880 439534497 460239241 661559821 268681649 100335741 779024093 913121954 410791536 159979870 532821721 447082666 741861779 418765062 676139569 700199228 998602908 851455461 191832284 633148892 518019372 739967066 55253561 487605298 83471686 357620566 659049068 293643465 243981811 100139598 205402299 728968433 870066560 211251745 654703305 798412099 834340458 656685201 672844954 464160949 982400133 489894026 838504400 291403457 980174370 296068438 422177450 822783913 912869155 642587166 37524143 396921457 778582277 865400923 302204220 1412922 487100280 780765532 429530479 276721351 406416628 765070402 823278132 911460764 594647331 275188606 212583290 207887557 553608790 556680350 298958528 44005317 684905576 457237536 542831596 417463490 447258526 563515801 852119909 398491246 248923169 151366498 567200913 512418893 153363811 934890054 892451489 202840572 233365065 448441542 723090498 325085058 518192821 658728805 261810485 268590100 694417880 239703468 72523845 899468358 800109026 739810952 492426800 832281448 550946476 361931578 398734002 805253348 832574871 480165384 85302076 707762302 140430940 280052745 872073329 831301434 603670085 365177492 872454113 358719301 180391975 605291814 782469717 78129695 84167450 351520848 454773981 318447725 391136442 477231374 568750094 658339904 108545137 789800880 576754382 746179973 704132029 707311222 174401470 506291140 363314383 920994537 280241134 723491348 840659640 297306173 252353647 58840582 650387761 861229478 811755908 394692205 676913848 691223109 809550165 833322346 97002834 195362335 290783652 597120651 361215029 571725189 454610453 677239531 16924345 999416089 16255279 929778480 917553051 148796252 371386065 993382443 243233854 123880187 887267309 469475414 384479274 723690047 120178843 468479239 67580257 548968363 285255216 508773645 655017845 393903520 666835674 368542868 322276022 386012647 861585837 284429154 962873493 423828985 139273871 904512339 637200178 376508904 201081493 660533991 809416954 115222626 152238046 770461003 539805810 106643741 642546162 130456188 238693768 360153186 51488130 95510335 631998237 237756366 191582514 335714023 648780753 6330187 387866458 762375095 703186146 84556071 252869861 595019917 605963996 914539005 990241324 130176817 342306640 531470184 822242280 66885695 893946923 229462914 866336282 581447840 892425991 14742164 624923480 924143162 452495752 409069971 37715396 557380924 350292025 739291561 226934337 386636132 235639254 677727792 522974199 195031112 323460884 606309050 597720244 541414994 331153105 57094987 219880238 528648652 699251561 242567330 553240471 843758682 607859690 233053864 326126237 228976073 823467442 828780324 895265044 539566981 799053449 830165628 232215581 264533279 194669167 490085731 344313024 850634346 472167841 427358201 304210802 610213487 637713287 669598273 719432581 780071068 569349919 865934905 728646210 801473282 397954606 615477700 402321521 448607992 531941178 71414498 111292259 886783325 285555159 63203460 741518225 746291730 828305934 317873753 300550851 391421551 663476856 103221103 267838238 191792741 118432342 221905163 232885800 614013648 966005560 576488538 499477569 346848575 639243418 583033308 417390100 666223338 34609322 414194688 680909434 620739032 213374982 502371377 25438701 975835792 951484482 573996719 546595661 462998852 688552160 777000164 534289302 52994017 936167423 105861214 53179978 582235973 79304849 231196150 67716733 249701273 30355960 809980954 632699486 889353298 826128909 70883420 524819936 815687307 633943734 146470726 620338385 731202328 197058716 918862529 662926521 871990012 293056566 688753086 809029356 163563987 116460856 682069138 9657949 665691435 320583666 60441185 661125304 482611719 1839015 877706886 276971746 203041999 680044520 906798463 401257542 377492299 853885424 374209200 605317128 651335882 878937056 248824947 256069624 813069055 460140983 866343221 235417344 22358334 706550409 771323652 467832194 982807093 308126604 706615893 431907220 15951682 723959742 178235815 134803340 561825234 840393398 107753044 184292089 142305571 361301575 80460488 525786436 145799611 522840581 730163101 419780375 254349652 322188644 32874834 987103879 377777518 625150398 298900273 565951380 661298754 681501636 841866601 581233471 431904581 625507041 323616341 196609198 479918417 497944938 487844371 395327591 524634934 427773089 896929543 602495599 170051147 244259680 980985901 19921443 111527063 975182317 290855332 442100247 930779783 252203484 696115549 535935149 861333285 505867405 895322254 924525770 128415436 705951036 919260660 490935594 203563589 759369848 241604128 466647347 203203101 593179151 209409888 629658374 674836186 875250896 968815254 684870597 694556659 893163204 21436967 632522424 586189534 373740058 190056775 687741910 450713919 118735587 458235047 424994960 654851979 27808749 946337063 566689420 251091987 629195962 660966654 432084772 890460859 559182651 60153431 649786681 235553168 307571677 360005807 445182859 417358674 729179234 999448087 438136556 807045853 55631384 49953585 255399242 89822865 902023216 637116161 499151621 185122003 760863925 836701172 727885946 75186319 809168343 638444084 286839085 940775382 782498922 907061097 704552843 102650575 939962412 133820191 941847319 496386292 963774637 657484943 859145432 239686029 848005441 671598521 340059658 150283147 413539792 569899069 543987128 603170930 88757155 961268257 236883132 706032601 490148502 737237249 699832890 532305322 516714953 534498961 281920755 610145230 962565829 657773555 472781725 528740522 453913017 546230912 235950585 241239 219161040 413670154 910861482 220129363 738667296 497361863 191355558 383657380 425422236 30686804 597172076 876805860 971289346 160606689 467525074 599577296 421011467 657559253 747763006 484113276 270792693 390943444 705778757 790463776 33704275 919252759 748856126 57386202 852398088 431556826 73080451 470051783 267090604 480651806 31673682 904754262 430332348 340407704 578358546 370154458 73498575 605156901 952358422 646708138 941976084 499946743 502368340 690686970 653126878 185890251 996400670 935487637 630438353 306329242 297255679 900601160 668860239 293202797 961052118 432863491 88982149 333565819 506386794 694659836 372298038 835037949 149488189 780676680 920945587 37958878 381519406 979339066 115695507 294769074 772997321 291961108 193582252 465905995 899026481 21867539 795184970 312678816 875139649 92158189 662292206 253995853 898320255 969061282 258046718 604831793 416054854 920116231 45726037 898457348 237171701 676820685 492264254 705332458 50693272 818156211 946076359 739104088 177293594 580832245 236540719 609256968 851655512 800034242 326768999 37980859 565989945 425532457 241824933 94993647 242814418 58642819 395986611 248724845 142466552 393568906 626772657 201847798 170429929 785581541 586457981 815308989 204988111 654459373 382704002 477236082 458252101 362034441 822679402 531814529 693476191 511707079 898779103 194834565 727370801 219907892 105212186 627516447 911617102 754354866 995603337 850149501 223890332 492652374 723973009 640217508 419473832 777529837 1381100 343475000 96556643 382393802 183972048 842150474 883875502 219963193 23853549 589056933 711314899 739086630 193409509 675650562 39012839 1692313 318481517 392165372 280676040 879626577 706677597 324543263 320853497 503383169 541359888 741083018 488684781 637488206 957873934 623499619 592577156 513793366 996164617 665974667 411308916 60583650 441135222 238230683 707854415 524961019 196329655 3738838 461892524 293071691 720852976 268694718 731919600 669808437 849592823 870721353 428943039 532930901 124967798 312177736 698735687 14253378 152989637 305156076 176182963 694412502 578006660 912489513 378878404 563532153 107635421 923939224 830815594 769850226 845790921 407733160 854347417 306514262 501233833 70185770 453203539 600422185 978122039 793246678 312938270 656231007 504178689 248078249 356943823 276163460 872902129 598108955 867205299 584494671 319124994 872461530 763383074 914858736 466208190 409402240 774429367 334943090 75046491 445685390 523831531 644679462 594851596 685489735 590146622 18380097 240130045 278628885 44612498 176884421 547426210 668441828 166365014 571227953 517489981 10945009 319787168 284843875 246034948 303942912 772367348 406156523 603199649 246678902 898338355 416793184 983605218 818202232 51518108 804436430 808596892 774030653 310456760 395862970 928815879 411715458 793155978 813409434 225790992 628298369 694912891 253023276 481219006 56492818 417623015 706183393 253822625 380416408 133172972 41546184 383619213 138596497 427319605 163504425 621858283 373297690 166873131 955266442 618044718 331044292 687579739 947060071 170944248 773837886 351402281 734763256 958726201 978986136 839437744 739487118 680512153 26368290 931920347 324263947 765445652 834176456 656496412 374361382 705916452 914545057 348454379 360664429 114159797 534558910 599863507 481690419 327876153 580235193 105848981 219536703 273291742 898505756 418965426 112705303 215283696 53028313 663860220 251320236 581745317 888222557 767035934 314162600 456519824 965775883 318164334 158337369 592154716 269505598 533927134 882334035 270893851 830986512 980869207 629072911 810426592 829461833 176671115 110112746 512644039 481069040 724733934 174875673 491669828 123897532 526475614 880448678 238675540 226274114 562553724 239676496 314249850 359478128 601410696 977382650 328232061 394639564 108558873 856599287 504168390 620004713 207339699 976639291 739606290 404356789 250903880 317463657 42270320 122714512 6682632 882863205 781685553 929168891 31384608 989530856 657064817 551383541 202969554 65495389 230363360 538376416 364640708 837340059 472864030 506156223 314217339 698104180 652768924 772713175 338616564 740541229 898636520 104076631 967239320 917432301 716324052 815641116 653460734 702612542 547326851 951401467 768775606 733115276 366516355 759172684 755957187 390726248 15306195 410670689 390570823 588182615 215650211 285102962 191023566 53601864 599205943 40321290 757661585 649469860 372066046 374121858 236066180 642970086 97400814 905942350 506655229 281069991 530066651 521173375 425983110 46694407 723964029 550784711 947176352 807967196 98788194 779723123 461599269 641187385 535864201 566700846 282997796 446956904 725105245 850575257 845330663 108446132 708267183 408060731 23438238 851853338 29325887 592258132 148222971 191447830 746921193 202849654 268237595 616880757 880624299 620486815 862962519 109094778 282281962 450617055 720291381 643076066 303827051 236619658 428522430 524929614 583284020 473401549 789033073 449612356 947117259 317413951 593980908 172074024 803242694 236156399 406122290 526335774 899728453 706987241 854121582 174181294 164071941 971885913 309775368 756704704 728516419 344212806 88592178 736218308 795694685 564516295 572188497 676136598 934335350 389726357 390446607 727762203 987491412 686516821 96223218 456183570 421750854 795049798 933745384 608537781 738154404 883004333 690455500 75934207 647157332 931531537 968874477 194582541 23046634 319422131 896017976 548621391 794782614 737425401 661443809 954094986 646601603 695363148 131602149 555977722 34540785 421519984 268293068 361585013 810589798 2297395 352090046 615146191 210423759 7563209 124317853 962754340 114828254 76842727 984018297 862321466 778084561 472224756 401990645 356046880 876569932 322768082 301489698 179629514 202156526 334793588 593495966 26757214 91861929 311071163 753424635 988882098 361589402 794535082 454376222 318008342 876387817 735042670 515742362 869061036 380057148 468422476 977244119 461308228 603963842 671533298 651142059 723602618 107346732 94212799 530888530 885907763 588711452 382166186 424767188 735228340 530114802 647203297 624478252 880251077 813495510 270386493 848917377 29567951 152883287 934886140 890750057 649364005 489248068 321561157 743284711 284876550 117851551 602096219 705272104 580694773 60065059 975215089 124987244 438940306 403867327 585415884 910550049 227539613 333348289 581677564 452987843 426892659 274171118 818096083 732622755 920905957 336685355 259149507 480537897 947045969 890788876 27224694 575572888 583982298 667017992 76830660 219718231 519947052 433897862 879783749 58108285 487524779 341906417 835542730 410288567 793134132 986320648 362814817 744951003 15156609 842308086 907865718 4141544 393146924 146706242 619558267 456723098 470814352 531545675 143989298 637230707 738086444 650003395 683220435 549419360 252855365 404511463 167360580 837693823 166119712 385302938 140920797 334937872 476783740 15911686 424919463 117886872 573710497 324753959 957536155 831806876 823966864 222688615 62218693 802595749 135683052 350580104 423316583 458778031 253440759 115364829 712131060 162374789 247456749 667879336 894688804 847957411 910598909 283176432 220330452 125334384 399721972 886401947 463050557 491181409 42489598 13221142 737586674 651094921 65585014 68756277 128457011 267347503 947315661 944350747 27556342 451097854 239999178 772380509 998602747 657574329 205332199 337134959 200642719 404635517 25904414 304547696 510815461 110695372 142650847 202270979 866897443 761511998 583587834 576844538 597397282 761342758 990272023 721314145 550972880 792438967 838541462 177451087 895807172 913588045 592021682 205847836 355351089 593348058 268032521 288258798 957384866 233764554 786735509 632642277 672089158 49484936 437102288 403546327 372597981 342717568 948285789 188269207 240382094 40201990 384093515 711419803 759680318 776886386 702926001 64718187 859843976 434277107 369753618 836474914 71866436 675374542 487731080 114359047 350147601 428435353 54087625 165595394 657220798 418419828 760300913 257523115 903983240 294368314 719004255 500939797 800940091 287423048 892061277 206418084 224009110 730422913 78985928 757235574 471929208 191069257 823727924 861798435 737374487 672790936 682101670 323361730 791536568 188592249 125357040 165038047 643566479 5456205 135217617 354948947 854136520 832454342 124550520 39431443 795506431 814220029 967116043 951505939 801373619 798521690 846320937 709845885 267841011 68063372 332891830 532587838 673054980 590969562 413220359 864807273 721412204 30020048 42234216 840894133 224639435 407263639 486311764 739979546 186654801 717870808 17178886 136275174 243105089 351784144 825560663 818534031 351432546 819825053 933878500 213248699 413948006 789711834 222893157 42485665 512868391 372633750 932949250 270741207 863735884 694230750 32823455 393848205 701361978 714439636 376427932 521384684 363402748 369249780 611155890 308911053 306533470 248010909 657447237 880006510 746185823 120046926 584561514 83990790 955092419 52960113 179572876 676812069 410070402 944346670 614430823 330007627 705562005 320154893 630931110 610364376 146389880 527792749 729844321 831554689 410486457 588744503 931157785 380110526 649633758 184652503 319334825 729767334 741034728 156209833 107231535 210769481 692368100 795048108 442487872 204177888 149678756 730784753 143638320 339669690 16769283 927987952 570921181 625470579 638365412 696024628 340135645 53379760 363045520 594439950 531011992 738103803 812525235 935530230 27762872 495904264 996839561 740180727 364432406 680519604 159714177 391044755 498401037 303124048 833013073 468128591 452138378 914647681 683783159 564831140 437304664 653627778 751354597 419352018 851857712 335575414 638352722 314820944 253821153 499979083 978197841 775323576 157173738 757616714 562680500 507947380 127465626 624740867 948493852 782815428 558322249 489934386 258254766 650427956 750315378 384077869 457824893 912732179 240587742 481350931 420039011 852917060 889551408 278080564 652904841 29348423 344165935 24444367 918479750 784254792 110735202 464194081 620110045 471830119 423216745 906709130 882869467 1752643 449971219 39605325 131349133 352341424 651598730 280686466 558633449 877029710 410327698 197211340 595080753 661348572 426924583 921066134 913983783 742442427 424642268 689246969 44540557 899280919 626070303 262275779 483236196 604563463 280094973 113336864 750041721 243466960 698142568 665465017 577359502 299101154 706129811 258009018 416883137 808308519 710229858 737320518 898886387 81213664 784161842 497153686 828707525 25841221 71094056 247543980 897796539 68514364 455900005 854487075 38341702 253609594 48710469 746958142 594813492 708337994 205215917 494672365 892319507 701833658 346604533 9002440 854313021 70000002 403393434 339952264 686751218 159631751 355417559 530042235 213768009 687816132 732086730 39647333 75012155 103419565 485440833 266288590 564602543 616285667 497247876 368664900 130636586 28044568 512308450 598972584 72641148 433877524 442642460 809060811 336500238 219436501 190633035 311646580 667002366 810989983 216154927 546180893 915125374 736920420 289565327 576071542 285026528 807169610 338057430 595488301 24373360 756880317 277400730 446559773 336308235 265746266 185188442 289679597 665068134 715302161 39785267 573116412 621514434 847227278 230213807 731351325 404712523 205712780 22022803 241839030 976995469 731833533 725374078 939460576 686216471 394788798 69878702 513032282 774795422 37543957 249591817 374114536 194414535 448201101 128552771 287525077 706607500 20504241 853383282 637330250 901263080 97143816 655314636 658228164 4402284 451727815 472095205 497308887 415166914 602905311 296300229 189578246 890591871 279568897 210679488 742374289 255116207 942731261 346442173 212436337 96565960 816264591 377212202 171271527 928462507 666891538 445716424 967724422 808130493 267465273 864151160 894115883 907038461 471761493 511957008 941056575 898806493 982880200 35182311 611947013 691900376 203146833 430734936 846438321 766734976 820087105 247585608 908827412 219275511 797849107 449039230 732027325 900300126 933786078 625310259 178367405 868885799 267641699 892694618 897939263 695225431 737032340 561969545 588984837 866897454 920858754 614620416 566217003 717648002 660252644 280266526 541466506 313440208 919466282 954820882 396861816 980002425 270444238 394690139 334937035 246906368 411656254 287262037 885373896 42843335 766777140 786214676 336347805 247722647 887774696 64804859 873528787 319014965 467231589 378906612 337128395 149737451 6432729 326262066 431715172 167508779 954268927 799475577 745019396 753970780 460235663 137479293 388957516 644759875 693156734 487142390 348939890 338644538 137148323 52455265 927216901 418223003 944977329 730311638 401512038 105632072 584274416 298519376 584340942 462041109 57760457 401063935 598087862 808721844 165217544 207752407 213705109 797553556 108194754 911927300 521314481 636989882 756775459 332573012 7492668 816108363 518746335 312931821 611931444 166763693 223694555 932512340 519811296 45454343 470221055 641569125 117498823 290239546 258556715 939932892 749836927 877072633 808896949 315935563 892793603 128688791 447353164 397735165 966426135 578142489 666456268 191111398 885484538 715264233 156700436 987276095 921939940 856284038 733995143 2937049 106634234 168505025 640210725 96724115 182762353 629081015 263419613 852659809 925102799 709607866 990465416 900090711 607049493 919737449 69913604 678592329 426734102 180912455 24880763 833402958 813621763 765284215 199178620 419879079 890565659 671220358 591331558 747420290 208123335 560810036 410677507 689153127 283481712 894311969 513688983 402984927 633004253 626105286 413023769 670384227 333829450 587710992 595608637 53686424 864148843 687670075 355580655 133793921 868128249 260058111 841370057 415984388 706984584 339881099 967417977 412704482 792890024 19011672 269828786 876553105 667988600 803567002 432462615 849437362 485648543 341152921 506558269 816422600 858220357 910422700 399922230 433356464 889741396 251726977 485003743 53085283 62785496 863759604 970512819 838697667 608672498 459841746 301572010 626770704 135576339 757189889 514508190 992937653 607629528 910443225 82081627 415578821 891058321 139006696 251967905 118939633 627942204 344532372 461906794 14345738 335318987 589181751 190173127 508931305 509825751 844449185 511760679 252430053 924688421 791267732 896765757 784383410 266957160 642004278 368181941 85285965 422943112 723869455 46501890 246213426 35813421 259291577 81385687 123624066 119414993 512584626 259162101 411372851 549587723 883772816 125310741 267769445 753691850 436365756 928619628 292219658 834860012 697490518 300501253 449270812 417891087 89679289 388089586 644515874 32721958 43901689 319588399 131562664 160158479 923023258 460045870 763171908 834028670 810854114 845368087 733879182 163310034 445183170 10698817 159318200 444600188 352275493 362177762 35992410 184322186 355857157 690907231 111074974 800297109 275019414 615380466 174066041 240344859 725181959 974717427 725327193 76263113 260107852 777798745 384935464 577973388 816028328 514263035 819605915 367529191 679873974 577087298 881176208 134949358 374502565 661103728 906466401 550464657 864152477 37837847 889468565 443163193 951913237 644434809 473847769 842163652 138330110 354029828 523627589 836872784 43679812 473404153 358109517 892917389 381314010 304871199 67907684 646138827 288566307 114143140 928921651 348691979 294189899 878895731 944024036 913094344 987612143 190392182 442704478 675275092 242247034 802924333 595567340 216824657 163226368 648490782 70024043 281677800 979723639 437959143 170731904 801394778 170425508 405087546 99329358 560934860 442373328 210676041 84342828 9512168 104484201 938773432 487021494 435399677 995790280 564303315 631974219 138930482 268442860 348223217 505418048 678516181 729258025 424901108 841370857 764549598 134748789 384880275 499540451 813229482 904537431 95453512 200835065 411133617 646078852 520620468 357325744 212359281 373692366 433747493 1446010 488893333 948901402 84379285 750270842 262201454 749163851 942682874 428620229 508543704 928948615 437461883 525016766 971795309 989287806 189940453 734282710 435629185 105550097 343450162 8562408 54700907 594395506 711533184 48820022 363419189 166548562 162940010 292163060 978802496 606866835 64625416 793342510 851037893 85778288 273817284 519863191 1674139 148767338 670665409 924749266 983859076 338422944 194111731 998284355 852257112 106053676 170262822 992548837 457781213 993882668 973149871 32028508 929611075 897315554 823238930 686729529 103290700 787011345 628653417 954297071 988613450 569988915 579311137 467209332 695916631 334913216 954697697 387924525 117727456 173347357 588723767 412153944 526956540 685443331 915008842 266679359 805566696 144590663 506130972 855608968 518938300 906351900 402604076 579901343 248490833 377929505 148533778 759832877 984240672 177132008 406201979 495238080 303785176 589407405 385950962 881090563 243056389 278166534 884808162 227229834 964609733 985336563 166683004 15490005 874243801 991922795 433894053 191595803 177648381 492358102 868435884 118174547 688319965 590372855 557833381 374467913 119934305 674617871 536787345 503537770 225315320 195513372 291871789 354981545 912256916 91888829 617023702 781909959 750705887 774947518 301684911 157578576 648598672 523814011 15119940 703962026 793116826 481901474 149094363 875215389 692690562 864451078 540056753 371243617 945688690 446964966 802036222 873639760 700810311 723282542 739812097 798652805 309536530 766448621 133826357 662642970 198653243 625142788 994633156 950922995 699295356 998016947 855963755 473358813 981789360 696825177 489338864 12121024 107038838 389504031 377414127 129632137 884024537 501417114 147082280 80800031 509154529 553436411 255864276 264849296 322194192 447158838 495021225 11182757 145422129 111192310 622862109 844782920 797506639 621122815 504368617 497141899 224773673 662012874 726153295 422941094 317013540 780838502 34817341 910035479 646566207 940683609 868187130 3923433 953818066 990561846 392265055 802105266 211402240 914157048 562544085 491938979 170928841 825178046 714409338 281377894 758974592 201625425 555685205 859182007 517087632 425878091 87892327 61461586 253906956 590649755 102232321 871874951 467918641 198063018 453049501 655568196 500619027 856847007 63214115 492494770 277637917 332947635 166467273 230397354 668746896 733439917 116933284 374193153 130386981 238226183 563181459 755202361 66648680 61442168 317108598 116617296 629998825 218598079 144818097 92779545 179383249 770275902 617965912 98502446 303682487 625531222 459813016 165543183 835350517 396085937 823480427 874676814 483655771 174268045 152878110 751160275 944795023 828948932 622389441 673457476 538591155 154586299 283342130 74173907 102583305 417545843 487202464 995727665 781526855 500143576 972677915 315622368 871441933 920292536 920148386 587385085 835205405 322692524 2572653 476235471 656949640 963392551 322284057 639254349 787157052 814370969 382419680 205995707 380410701 288377709 398401502 193607349 154234155 731321746 338702252 353827628 387027791 136371753 145412991 712644583 980309925 130241514 226273027 5887111 89134790 321584585 109873900 264822846 81227266 43945471 666930136 446149947 656061524 253192063 877102443 407020287 463167848 288626246 535724960 131511161 529128212 700190112 161989946 436676484 612796272 619217961 424062695 204206407 882493208 959571092 2205205 247861203 920577479 600146652 842481765 647901361 139699531 273482385 234833493 816602604 820163973 620794663 787887179 615852811 347527318 372840354 27843498 765585668 44806846 965882626 784417096 129333435 462616673 163550959 5777277 73870918 782178703 933719093 500036603 181559503 746736263 38114408 909778941 180316384 438848265 203725119 447637142 697767402 276658441 168599876 605584372 652469227 836506476 593125116 627093595 579152533 726976025 753976463 58339939 57898824 307298986 812013233 773333840 466126217 64155693 192347808 629020508 49008830 103814020 781470361 533440976 827953082 215937348 579464607 579318117 326851172 735645266 107079487 159167171 538543654 715286058 672510900 680221782 191113103 131946745 131270669 657491571 655040725 261638619 945653711 366937598 319493266 274377476 484644271 258289996 455700809 111965217 451199 604012934 115678893 631647978 153875851 635880144 119069997 21750141 925525424 143675061 217056159 399845212 882090411 741148290 800356881 879823010 519471152 480558837 433800976 764157133 194810054 72164371 422263849 46501965 120914785 269804336 652570347 964420632 973324907 726178644 158266229 107022545 320192166 973835549 148912911 937908909 715437246 849553096 864962198 880164965 824562149 963895966 382612302 683385724 775419438 298414556 954960291 183465600 251983585 641054268 617129030 845363749 788700088 170890113 715407758 200318047 196787355 249430481 649834487 984046588 749972832 507279967 638704067 246197364 881069333 446510099 381270832 806101671 615017058 874972878 136344829 296236404 936757361 163579361 769364214 120805106 450953306 638817666 948237601 201718275 160353579 313518128 540123823 833063740 417368969 554639153 840323561 670800285 942963692 827716505 547220399 222865272 90874723 361803857 979595911 519509300 366972893 849691465 56320520 888776838 319985034 453850167 36119066 261187408 628157045 362562812 873577457 352855697 912519638 237053238 312675334 641392814 75176917 215512885 263509910 979480427 618188394 874195025 667162356 827333275 568140876 585867212 144883813 721269390 726221827 157287074 858505201 16916553 541199850 106648257 645412134 448909991 332830828 41045957 192585956 737253468 842527411 781557358 503085333 638509846 565098975 707598605 288385546 444051736 725155323 288075947 140701117 522018345 774516687 651912421 325707322 32014797 63831689 325992969 75322575 669620060 873913752 545192197 324146409 225337653 776236022 92885536 26740388 534494941 728897701 948392208 775746272 229537038 254084051 865443946 247182965 848374492 656826314 676497957 36201659 868698112 98741549 563858310 376707455 4488358 647715651 199489610 375909282 783065161 875274138 850508661 21586809 840102715 971676812 44878666 352628654 626180631 930071033 96578207 834121800 902188546 621784830 654387034 560995283 498432656 661090065 36217648 742893631 659708320 894480198 585890228 677406350 371846632 931744083 55695375 278617099 189447167 395614075 552207080 881452061 196620321 645572444 43028455 11419268 894505930 115310985 710967771 984190080 767634834 856699114 501832895 622391262 358678539 765774486 630344784 784112193 369526935 128769082 387570641 66789674 749788757 877472112 415663103 322406963 980770670 506314128 912456189 467869293 877842510 213529011 736025321 687953025 900088592 268530171 156682687 836768268 629671278 927245915 760289427 396766967 583101269 674336395 33688918 727592743 979468816 593531442 613698683 118387555 897298992 362246459 778850805 527719302 695808167 712863097 255607390 865684827 414870769 414691118 709865010 825769965 844879340 202463005 793169111 395323207 413883530 414094868 211860343 88662172 173768335 999562409 808485541 818460856 798153134 843903655 547008646 752708380 930493451 325147860 958119805 380402687 141545472 643297549 576867774 785841377 675195865 576466837 17934477 25264767 245361838 744361024 142801542 669459450 334231893 883125053 263117384 289087289 782907193 925089749 514292432 346399879 552345205 253302189 482245194 827721248 179404832 903931718 904047803 596404927 610246056 944311152 13491550 261524440 867965243 145080286 559051205 912851957 807437824 820224939 499918097 708775312 476467900 300560575 50808313 370440799 983554147 745430247 574409531 55417466 580379107 54867642 829092899 297789821 119873240 769061823 893206981 189653305 252182783 574249765 304238611 634768019 328755896 270929510 68476755 893519661 738218488 711436881 330152393 566035369 554062815 316600425 751926262 279973520 774148741 286137379 746766365 969396956 153539465 323931585 302543699 882952712 648208041 855592271 140451616 129823486 39586584 146486596 380989447 868941148 435790788 102255423 114047503 488154074 696521610 488939849 341400658 111242070 953320991 772885211 849159122 947823032 236795878 207799598 143729299 667552563 65291870 928072391 329792491 424624837 854097186 689078761 511129539 618993921 395552870 813292458 655096501 313088477 22128777 733780526 234968709 149300877 956479489 464105488 254697877 140439102 292613572 352016869 974317013 826677707 98096216 448013854 755992373 679896606 357576314 15996585 982041833 354667765 79429879 194766020 40628218 445838831 395856981 911541379 759593540 351857548 202780987 329182577 104848235 886290863 300465372 982063728 43279019 584397409 517792877 995433234 744005438 983141778 585593450 977490959 286426236 872241947 610144869 593764513 617118410 558567610 759732961 22793458 272761348 313308308 928236620 247348016 836381553 373865940 460428765 366463603 165411861 70132001 667740531 343732156 118214895 138351354 791363243 628785810 180936929 819141026 93231808 672761362 606371507 320636695 889226087 303408685 960645482 184814364 229501165 765833874 428389143 630810322 448991974 827667119 464812013 864919060 659707421 317211562 723519464 861734947 7900396 864537786 746209820 902590583 821920856 549294051 315917742 352822923 922578584 207869287 796311998 263359384 808548695 243983385 404395525 535735143 173855301 129383004 640116034 446160530 884009885 665202201 193730182 234566857 925440025 168829195 30186087 65435444 989231544 959426119 734160610 342221076 25635726 85077951 224928894 351307981 862224799 605661282 80226027 932032786 942053088 600147626 138532595 395932795 21619096 818810627 699139576 439958288 212077009 231054316 411947479 791865123 919653228 895981921 256791566 383105164 683762439 688642225 504638304 9226203 201906907 949967428 774890050 463116670 723428603 318087579 25096409 100366527 559293942 523361723 373852627 86662694 532949929 269379787 993827707 527915476 280417525 655807698 241041521 669228907 338365328 968933792 549995734 672619332 699602567 114517810 250495071 896078777 578284944 148849228 617283795 763672624 75076186 968571911 350152174 567256933 903777348 450165376 371865341 26458927 207833741 647324780 575547085 349313799 240551359 337800592 313080427 404657539 788053386 735514999 570394783 663963927 292680239 529003779 756302685 152382082 334893573 946469571 395783786 982421353 942200394 178762168 732506672 958117534 179682364 535750931 558616318 107018858 829035030 450019858 123792666 680975951 574372247 679637974 497685753 278287189 802751251 381661394 265691560 430228182 390158112 70584081 115539364 369415809 594731394 552239735 581428172 521516910 74477473 558491507 865656952 940874049 12906471 819049552 222326237 655700428 904900432 195372945 452988644 256850862 842692049 58719512 440921529 98178418 326724930 524064095 109492390 930837004 405816913 56372755 204585733 200535798 861698297 163373112 489580168 723545826 257401872 818725286 241816572 389773844 906368374 663579272 484095369 346921402 528769536 889860582 933476946 847667926 980790668 810912243 905043956 996936488 72976106 695401581 439283907 365307078 867496123 984062076 904082313 406455839 103196050 191232295 666209190 698836795 628342453 559893178 484541364 828539414 406188407 373718121 213207833 225742504 874163968 856023482 623042651 340542689 99984705 529257901 413437554 451587566 728898836 194189804 320553516 556765775 578405810 32381553 809158476 594198244 968187989 106278948 82957157 989880608 614289814 661928374 199635141 784301921 162766522 378786826 298956251 459167268 951259028 386917009 255932567 271023141 595521033 578571763 933098927 950657059 436972563 95338303 435693496 255843110 176070522 72772639 544681412 537726934 400560666 177472255 534326329 809020896 472177583 637964098 319857924 820975134 740712444 436678839 555083656 594601902 138947575 766269359 511069343 35950546 546781181 889739190 22454134 822952835 798640863 138503981 366673091 640741700 725426555 926653178 591720832 174418100 794275082 367018514 985351441 721957373 390509610 383158546 211480344 540871088 154785747 433265080 143212310 77912739 914882983 840656439 10873799 867641087 410527478 332577602 111327624 438468859 661631554 556408319 508461838 314986351 240144692 846954752 266437147 379217496 126229648 992875593 862376107 583413659 260294621 485135606 899651384 890677260 960577200 945375196 625621308 726720459 160012191 683132999 521852509 502573284 80536581 648358049 438637913 409852765 330917898 552460585 930540966 480803890 831755900 972850140 430574541 627688228 126997536 42730428 501190022 279678520 73676029 425875788 250940592 602191403 811059509 140482052 617344846 130629562 800514671 372644798 233000073 590836627 63155806 664932400 367832302 326533363 897070613 528928176 472048857 748317295 615020633 982891487 108922966 665813859 706570955 704664462 602070938 486366059 906375915 795446844 210391523 257524545 494291969 289163950 244727714 985972642 364097443 321202807 221815742 19352445 437575499 736274461 260742358 867355964 507716447 147971945 689093003 172162647 318448559 417670496 439730861 294403204 940802825 318312043 660363270 600841033 754581497 462910878 323624264 798127165 922410935 283488244 662540301 867313189 206112094 399210943 949271423 403273387 225183317 237029888 285827282 457564850 161352739 5297177 429640136 680058274 992170111 835449016 511930015 906406067 224592784 483569522 996972583 672552064 159637555 555171460 819272768 393347805 496207387 905520618 369666285 519631287 936070495 646218015 164838219 615826694 984063915 165552753 990674198 781387612 604992032 791547079 610294828 8183163 474368513 37311940 345688232 41884654 616756453 828496800 397153572 125190778 48671403 76053023 973558199 988188564 421598608 162010147 85621993 801893036 811865658 397726849 731241143 49670962 532676299 46916715 53203081 922772006 704260467 835156283 592313217 575278852 133903023 755466494 542761220 891921984 368676032 245070536 415116077 563580732 529003295 647859315 876106109 33527223 6070596 453282757 813836434 824004810 421486474 435864001 986861256 956163342 127720385 958634058 108031331 781416939 663450591 922901952 994100799 172891511 274576612 775774223 868416882 125536489 934682348 798775140 448299325 587541165 571020124 958296846 9086074 781882427 749213458 175809602 512619217 114239736 627029799 903668051 746178939 750289184 345941230 205843938 217187942 987656565 946310920 799363048 91458052 621777637 341538980 253528191 619086991 113118447 972119851 842848078 743895997 833307768 298101188 583644986 743224447 290252360 77385297 408937705 467464362 683344009 774970498 439103148 591707496 220578793 176552868 158445185 329843501 97194056 251918673 654756784 430793995 572949127 287019312 817797428 61149953 185048174 152111732 538421560 13290441 446639805 971771208 976307418 94639855 150865824 347031951 426230754 811475054 527366553 250971841 441769813 622841212 708012381 863015220 521341968 32166328 816788071 248800934 211300493 47350694 60866525 783670690 799654994 674885832 772592015 559091202 254187574 316603741 36155232 609652740 415128057 4509259 576667772 116326814 811087182 291509996 491500031 835672536 731746238 363618946 368213812 108264564 894779728 566697036 277854259 640834578 57946261 150773377 73373333 598642842 186154190 57941200 402136007 611566284 637140795 899378583 237399332 442099591 739214824 104689635 323682900 119898677 447997018 621565746 375457963 342301455 377708580 703468990 88699957 919209300 631074061 848850628 656197534 398715690 997960923 693825707 925087291 454893920 97843196 477152667 321361002 266031323 111457415 478359483 133903119 465247907 356228505 955009847 318209938 302045866 784669055 742505264 546098733 575925605 757059310 806995633 638445293 505210685 175497858 379066185 638880480 478786334 244062469 876291664 332682169 239619412 195312962 856885713 200361538 834493736 475268359 606895776 609555201 399864492 69413833 53285971 766864206 2703311 230922894 729117072 327955838 560527918 163399390 405165417 115515186 710123586 639074408 952268144 164354501 817686666 160926024 737825285 433768235 938332593 589531071 730462696 77388200 184799399 344900402 598334661 845729204 125929460 928082637 208703034 694545440 96398691 88615470 799222749 331342358 831101438 971621687 380341634 958978626 804464492 3483680 346520741 899891937 931933089 182754571 148857772 483182836 984216067 870071357 63305967 680145214 122448330 396877900 725915462 749114032 394848837 183028594 779445478 810350461 215841350 722870016 834325817 509478321 135607405 445106158 85564793 959404522 30404699 526090272 33502061 338050760 237878644 539199091 77249044 429774012 818870508 820913462 279636487 114097435 18541812 479613202 845114301 426958315 821782905 804811373 698487545 238392353 476679681 664234849 156441542 720434371 778613689 58772129 880625413 33177687 761959722 32481986 679425055 990858984 773583082 340592376 338649707 998723840 722309299 568381671 167342968 291782755 376700169 660840526 419712860 710198021 522578661 275773592 69181318 972294463 315579071 254243785 631648329 487874336 463536586 89547351 969006072 822491986 371402503 853712344 44113580 504475091 225567835 244677218 470052606 159646805 479545091 441274406 554099453 455675179 596572468 68495192 502742630 66367037 447244533 965987098 785551701 803061485 435486398 55908143 332607413 280250324 38753253 597325443 448903342 812446828 913648892 710634029 443090030 315567924 631402583 270345409 474593319 849199411 18978079 302670849 872311777 78191100 951694760 128683485 857149202 962186240 489791897 392491766 957878427 465454627 86080961 745113427 601317103 381237524 745665018 25060223 138450413 343696410 71741749 825729854 347850141 555812535 550709251 914682792 840659615 808879152 903612145 778655869 261381851 162982382 354349456 471507847 426101781 845757180 641479017 825727516 47565063 947079960 228327327 312184259 317087753 998047939 144872644 168576810 784682484 625193088 669576346 491102982 432987572 697546205 239881739 958954735 167927561 798253836 373655056 562309188 432802739 794062749 414005375 247660782 574702340 439259176 129375568 336820688 175864601 494183807 853740821 588727138 867335339 271876164 78969093 967085421 771466957 236512055 657068634 960287745 697988979 617758636 846526159 871217763 582795365 270390608 309962084 980785294 574692152 458820677 943248011 48021528 785981700 432117406 488248781 615715351 120106910 417665931 669957636 672837079 619929031 479453285 456728292 738795812 186591140 721665001 683343575 611856838 487735207 769950760 54849935 533617367 621954325 727497085 62480944 595834238 909441040 988857559 542507759 832162400 362596418 837058086 833211180 82984214 253203961 520455959 488593089 767388068 65307345 505014687 937769395 637989546 867464517 615307812 18280187 499819736 175555507 951821646 425023609 559985791 779520038 175215624 446164532 974595868 537682986 102999496 573317763 352847883 436332733 28858885 776643563 59132694 623477225 647662073 569331638 325331677 848229751 316212702 591006370 278726019 258479921 975124150 201084002 668050662 275896707 935663252 439995651 362401893 61659260 887428058 582836167 878705808 538584664 463621028 806900063 489780588 873889112 988493626 383797578 81998796 674468295 545391128 618388281 853131597 278167365 613820035 277125527 508136151 413295906 222443143 322840494 355236152 213766224 84781210 173700698 292502062 968541339 659416871 945610762 173415157 526721828 762079769 177558037 26765791 958185685 954869529 203074226 118851281 826526677 893277566 83587418 699261288 189183252 151153624 201338390 932037523 913691554 622398346 886423144 630471918 153312292 566189463 331993584 750850345 562272026 570462501 412106771 731048356 889616540 130043750 11845355 675292973 728726967 12232830 661213503 461333187 947176126 322889810 223800381 452606870 786708930 506553621 240043857 230829104 45646579 454679057 828400284 757098005 573855099 528696925 20030461 276383791 199347751 931543256 943070267 665393073 669650416 905414990 470492767 891817763 231395182 27323684 655452669 42977423 32405767 511114319 257094401 361064618 797278102 722502136 919920915 427026334 922836029 209898588 205420524 422529370 368917880 468005061 899912164 734705142 301968394 97223886 301873732 502252496 632129335 792778175 556447315 453445014 757247877 55126039 569765445 314678886 180437411 87080787 427400183 579585369 563637137 778431171 573577089 509773189 581604751 426786263 451320358 320663032 584978800 344345288 881800561 526563928 834461864 841626477 183909042 699983144 690383736 578456233 383084690 325182391 862934569 663226422 87315158 566258023 750484401 869833172 23122394 929552719 875687168 258746523 982173130 18590994 455576501 482265426 31487099 234157715 266739230 117894880 222785816 323880561 507975238 331959808 548584795 42463445 619441639 834596834 75380141 226475997 196248185 825023539 389687826 575713899 671273106 99799108 13779921 960734881 829611425 458876577 805207527 937345210 485590119 76507181 730435019 915416967 100153310 640396439 7214175 298648645 473995259 110287649 362922081 894147914 29870902 968165899 203746215 597685689 919162468 650504258 384251220 577583833 955441981 240793485 976035916 383525209 365677796 547525515 255434522 517066725 113197158 376550752 787970432 989794301 498519563 124131671 747662107 598842210 485492506 613345808 913802829 487309768 968723542 111917379 8295491 830232688 390896159 110775142 216473447 357910489 602817483 129448667 364588909 482958851 854575793 792857777 428349468 184179134 59293905 788752322 994664336 867578856 400074389 414311197 11915570 446466820 255393656 264492281 784187547 312812787 117407854 722528749 984798373 815736975 879841540 249743611 499643451 272339696 969064105 198336438 244339939 847566642 771286178 896310774 730439563 70616194 723293589 549139483 598709029 482707816 509950738 50233735 52505778 118713427 522658158 123108871 942974752 273115082 234142661 782924295 437089681 484949452 634902813 729488930 914465428 335081823 875231701 51617911 441882871 389034779 478096404 711466391 884515070 518943828 95587959 30089968 543929536 474581608 830923608 301547424 391132887 802233716 63799048 463853696 523149998 156420793 732235689 134387778 118194669 463817953 935076427 486440168 714533732 307691849 366064491 166187136 494226463 69147285 334364696 851487833 225328628 820630669 46284340 189826111 726791422 522205874 611879224 733859360 947661384 443173921 529460820 704776393 405530567 325235578 401437989 673785751 178697519 70358432 733944337 153579978 155440681 985520744 565167963 210290337 963658903 882069927 185094997 883335728 393689475 536312272 609981441 794330292 466325307 456456936 25897510 603925716 208417588 647868245 404545492 512422413 311860331 648624237 317541429 713337105 141056712 211272280 3653875 764049410 865131804 498836105 391378549 743705614 441585575 678734443 727689409 402281183 526160005 6535989 843005455 245153614 962837518 844022810 735755207 298660022 678855934 735034865 168248920 670796932 859857953 632962020 508382121 839330227 706180193 526341187 799144120 96327520 21553327 854519667 67160271 548044754 73592154 428123115 670973061 347070581 431968048 9012915 576373267 660801459 91039534 214478523 2989355 83801747 399409308 599212592 432747576 332861768 527616391 767490641 624440708 144209102 629832217 421162498 780922857 110720055 875467618 887523318 700905587 773821487 669480299 794304294 740542315 480342846 98031247 356717168 154715137 739455111 94772192 694773914 212827425 107815107 929466860 744281436 340074044 155665977 600711193 693907589 784664461 815050450 700030821 608832909 707314319 334416674 829512307 349388927 265117863 115335346 219635935 23146370 438500188 732461865 948273580 139283276 463023070 808583510 143056770 969025612 517303827 879010687 729251653 451371350 575303052 983742370 681397262 952956354 261661634 405570995 398837239 916195496 234031655 982968422 385136564 130112493 240942848 477289963 508757089 769809129 534109766 990183108 283899510 590723743 106047223 401365220 890104551 993199269 987825273 849180260 977648580 882023380 585427095 644527117 351656774 388690618 483177668 62521772 998192144 518261201 869466265 598057230 70005687 466299999 847525739 363938045 238661557 158223788 84683396 154551074 491168755 213352953 293510334 97511913 428505282 448146595 321410218 944023163 684610916 883514006 410921717 207487501 324798884 89933703 114095107 802504976 481128740 279999457 993179678 308912064 929506467 783701668 183291291 291868901 802598808 938896187 713791581 847862736 34210860 321377567 585679608 294846145 228321405 792788758 724273865 380178310 862405726 139306507 515166779 652997939 135180901 307003751 906300186 523846 187884612 634972009 57700095 421045744 487029583 185737169 917523312 922835408 475936361 226759680 908204693 823557052 929169241 667942504 154177504 990569802 814546796 894626090 480629266 578699100 232153872 33133997 338977524 217420642 972592584 949307009 81846292 602642832 863995618 639886755 682176191 633501552 261039376 478185552 807062862 981497954 117223726 479596398 138209394 697178559 282785588 939681402 975693685 761705211 379250300 196155630 612922367 243981075 469812297 431068825 838862997 908420218 276185564 246218747 591887105 35140136 649601161 269934308 188942534 237604691 257419790 354567688 374858669 235743594 539142206 135900966 658360329 250002419 794365145 488161254 935929563 617333220 570611460 984968043 819596822 18573621 13853158 260601589 283683154 199632058 91280360 854383403 244089395 616079584 855109327 1133836 640534199 440786123 162648625 504974247 134977339 703005621 419482481 723744896 382606602 17690099 65798426 882717399 85953178 395334964 999301176 908970493 970913711 50284259 387976703 120294545 437648693 136372275 889746620 403767920 840361466 143371161 653041617 424151882 955068682 442643502 136977332 258910198 533890691 453552712 273254676 971028543 392432078 927962150 847937728 654605741 461608571 937787920 95787461 72834016 764963685 323921056 284866834 273190607 665152916 427515237 606187677 554392315 628336528 181812957 232800900 796099087 219562372 142234855 627652054 355701909 124425538 685313981 442904255 193687854 823996998 163835670 339569960 317009885 135037428 233115507 78393544 383166259 411610644 382223988 76004567 68344537 581842367 356598815 730933911 121742324 417413007 968296813 87401286 227327313 431640525 954509422 723366940 602842819 167499667 32740007 100444845 504148280 497094866 58014942 680580329 669713881 373670032 234097109 258516992 871494847 912363692 177626715 931089269 826534150 849992620 726475946 437717479 115627350 661916048 90828495 344679886 716332571 431462389 428936370 870755591 215132948 254832610 598124481 275032798 160685589 936066851 399856990 755885699 798834751 633498660 710122363 849215045 64180780 554844718 685763441 307528187 197088760 788262111 803681232 928185182 886677434 518628153 74402786 661125524 278365258 257109794 829456733 185107279 671195816 431735688 432609640 249897455 714171502 152317891 116793420 999745669 466098588 157539675 620067075 308218262 157272343 441992200 748313458 177379094 330274752 200926990 218963618 911990550 47395129 835984071 455514262 268975258 858274877 703530456 640176849 833079465 435617827 138930650 241565761 543796208 696610051 865679964 147670423 538204705 888102687 359705206 574403508 805711804 427657874 821760544 623095747 52802775 703662951 359095095 203460704 408960285 757460952 110342690 728873265 326387100 535581484 421823365 933536987 471341488 953505049 751165308 924417287 875243379 461746425 814383565 32486625 531109227 22162769 907095162 164573330 900281878 476636964 259874176 99845628 213634269 807691973 634088443 38376933 263652268 375887263 852727282 298394259 257727183 639310016 715149246 949072138 909252634 18701594 31388161 809485353 285648767 729547813 355544594 717617779 681277562 902659183 150732815 610175625 148249073 807513990 260122439 446535338 930001897 97016106 730820993 800799749 254191226 663568565 87487863 150066176 483925230 206400902 23293096 984095874 872149278 325589304 872133709 292686271 504651887 445590742 976511743 321912888 817291567 444250358 523939650 42963543 188701560 96784081 276702028 342001706 757763476 328945216 527181560 538416358 171496042 226179108 898226441 155519933 625264972 926063353 741784374 939852903 287880309 358154258 825292079 804028519 595116581 615804899 815077378 929140184 758183710 406545677 922199950 249138657 358575940 709191477 184223964 399325430 130906305 219009083 308280665 879074093 136725297 630429774 61616148 528005766 735610305 292678377 786468844 603476020 973533522 977587651 923800000 895267855 338273435 395728964 210154061 42585832 243858980 409061866 137454353 874984289 478666712 765667314 623559890 329956801 741573418 266255238 507711780 243064745 475066979 89557684 322248656 833368734 722302810 453733586 785255211 94369725 691490823 587395474 305138700 296636293 674690801 641780597 964241328 973638182 342267008 541813007 124189293 687501486 938636420 167410350 161966261 909859923 945814456 378325951 851797012 542221238 711913765 953204133 10077707 955555658 494492503 743440199 4876624 572209873 33263056 660592721 836980054 437656532 569654540 120346068 390187344 36951354 245716869 560645087 769564832 52287598 157518564 590267163 183400755 360963893 754824886 488210925 942776552 732475259 550784787 868170240 550202087 544082735 299327900 486628537 981284669 178704691 260000761 740416346 994371554 731377956 497906211 388026506 891203983 516123279 350281710 929771333 201428742 404672181 620728118 805116917 948032327 77552080 944824762 85236302 652515169 649971092 474707197 331891719 39043292 472178290 553130657 770551643 924909209 632999947 574520147 171906732 394604066 707639546 998178243 43589627 156083231 96058786 88755050 135987529 385084445 274053454 178408014 892173243 954799400 696193461 578344418 980833236 242501347 875228619 346288541 213911585 605153500 430908529 612680161 550448527 467493461 408204420 330937354 783575489 223147080 523453537 681246925 480029204 248712288 603740444 245853468 356674110 900093958 991890354 742302092 860902248 961557994 794796249 139390206 669759434 674341624 114302838 240482945 851193004 641705970 902402589 102817263 854257353 452612472 625158739 855064526 37613318 590008913 545606252 658350538 147811798 897706229 392296885 21433602 802324094 203172675 886884631 924433420 472841267 268473762 538671711 490174894 246594111 336404015 391340933 886108162 456129484 235366261 846612892 606778259 885313441 282484075 104936500 802743596 920298276 265537050 258248022 383673334 449232219 769249745 884907903 540368346 637622714 605036985 356261270 228824052 791350119 668946465 416809027 89916449 525265595 859311389 369741008 139950413 149558263 519009273 443413710 722284573 811978709 903942040 668090477 210365499 648192554 65363761 40196501 977847974 935441314 618124467 660828290 661995464 739718878 856992434 467183320 959974859 331577884 879728199 189798186 293205295 147682054 244783240 772205663 729955587 943436694 23854779 148911388 159863182 264523651 109363713 297056165 2136006 19925616 274522798 190671549 675685641 68794965 787994687 444735532 61639024 257396731 432996639 825677770 757255956 14341215 848908030 177112833 191747582 968983965 381476908 47385823 341285846 121824480 127902556 570098540 158796830 348788545 550883526 650293172 363335542 949978237 363886983 370909659 921159831 636930405 617635890 184029681 860867670 690256841 501533505 81039498 826079040 144352260 64402081 411015317 600487099 230010921 905393372 176230621 181617539 713060081 774252053 940657069 901079767 962949374 974600131 523983807 556740913 559343714 396535076 407974939 986996653 225652278 172738268 752330045 803386361 332648556 75571043 181868894 239810210 498523222 757738691 875771358 689664820 631359904 991717352 137928493 164984221 747288696 295504503 960590089 951336669 235474496 891326437 40441558 537673270 575446540 236054848 243110636 784535699 798497950 661828953 807872519 993822487 3446064 748534477 538026725 253866026 541515584 502293162 542038905 483339306 552885518 135434364 191017404 124095922 986616811 592417657 678348749 612043480 473890049 127201871 122142643 425937046 560047908 918882944 463106394 646383881 565021179 844894799 319685758 976157223 315592824 390237567 976188498 232404383 495964715 418820884 685443920 874988799 506680058 346310335 172665245 749292397 586915289 521613236 95189142 857024915 926391926 375883605 256928836 533741876 26949375 344609889 982468158 992738074 157332745 823784118 139574324 242380811 63334698 969457183 997306491 600099125 274861212 257518275 527513813 709182507 122031767 477647892 195191949 668745282 666886889 80530671 483348676 362318542 520742446 703010564 977003328 579646481 69330241 832219651 401799941 827125625 335909888 757463741 847023470 706548513 571310042 134373042 154279421 338142402 52583288 483597439 98566298 272650250 106106448 754283338 50330824 415932755 13709741 596129634 860192911 60959727 736776849 995732200 674719682 348664793 122698078 303511132 296531507 881164954 679845293 102640748 754436144 4198734 430202254 888357713 719007800 856354436 495001909 770818102 389475415 612186756 425705320 99212271 153653711 216901450 514208420 789924383 44000501 439546110 230918161 857546989 968032837 886620286 255896960 396389680 796561182 966313589 32222046 553281117 454520120 235819070 193391742 726593149 143354090 581473859 409776057 646743641 442787415 765497995 890612223 692520230 53327472 646931221 749481332 179257811 559852262 8277003 887936887 286724435 702071366 746268031 455240788 825782405 255899457 869322489 167950642 726250762 361639307 830739893 836870236 901166979 847425649 248530578 307789327 397890884 650022759 689820446 899936989 281773445 534642156 176350092 362713033 558671439 551296864 820482441 952668943 181663548 76660043 817907271 70467595 593849318 708185481 37627575 918914877 610599971 456273845 618564415 325649080 79194182 750511910 392430641 191758095 429566384 32451566 760087014 84072613 611014732 4892767 494843697 71777905 466598920 716960601 28790576 60553324 241633846 200818681 538010058 579054681 210464937 220344659 966641523 950943176 456138413 781407010 325321904 967057989 663705576 161307085 968711362 766277996 933750446 765061799 691193159 77661542 811944742 175037032 142265643 68717424 211327011 458579511 806693428 215823662 669855613 299158630 736293721 14582357 869961610 658593389 226642541 77526870 221202383 654253422 727982964 764201653 487446946 730243783 898960251 852054557 618635671 730958516 264464724 106823737 426860010 129839200 808213107 548195722 479087944 302121288 973525946 277392684 731379390 266732600 340100302 498058081 208351878 992895410 703833434 614103225 613061519 844704070 519328086 131313538 499431480 440659815 372013549 860153777 92672420 243816228 180642269 401030314 499420010 752570998 290305631 341635905 889689088 408651866 873040140 461590409 902755990 370100750 293174358 399765325 27405238 969872128 490270931 324688362 311376428 666802423 562579779 376689662 85432259 790943335 141863313 747435356 615551806 542415874 132612326 503575058 117680013 240693483 291814056 758485987 422466590 55142910 7285252 98346926 931628564 384999047 771759667 840757911 698049467 108229549 257878771 326834617 336148356 651571585 954002576 665758362 918787003 990807238 358853479 275598003 339723326 14375553 247888562 205416521 634440177 949938256 786806432 51752119 950511589 919426307 850096245 282964498 135867928 216676990 264045985 764880223 703159234 702315267 868037871 772286229 58956910 346500676 563697110 889453065 396357516 956686367 465265390 130768792 713906514 963224968 128868361 864085517 714998346 220539837 683623038 756395082 474733058 308464458 762126669 844976752 285526063 254444820 858320735 465616038 851755989 145043462 101199117 916966921 511507330 455185813 594117232 155621703 245094653 744563073 916243722 857851124 801435969 624318208 878835212 686233612 205488130 57897941 88547738 723854638 412460050 151004182 426337635 61460433 557199494 18112470 857155684 193846127 36341544 860537620 705515428 887468038 434961685 150698170 189760072 862438345 18731148 372032491 812731839 200782518 782920964 475736744 404646239 697382039 473168510 923303994 251433091 629231731 476023882 931641375 333330177 628114384 65684190 399019313 124365472 699003994 506720969 610914892 931271562 712948251 625181420 711433874 906417611 839755146 940283366 88763386 184083149 834521136 298952899 674279079 375910867 38425662 455663120 732062251 805038290 682632517 98715523 922379193 573162805 886201116 443015588 444167017 996490547 364835910 490786522 305674917 279606303 685875515 393739587 406648637 596105458 42361685 710966547 255975212 763528389 736867851 491479025 945288254 455095443 277032149 548993571 651802131 593789135 253369769 909187316 384669066 74829085 784373439 902008499 598132940 648488632 688424444 803476181 129286632 157877282 945997988 675433244 741559034 622732509 414706242 756769381 780645089 354861958 913799248 654287618 81739009 16399539 892163156 674169585 354506782 918682252 135656497 968033297 767761860 610260340 480731480 323200494 70960293 486941075 9402424 626757537 171574759 769870518 594028431 560263764 7698114 919034150 721062949 718604931 677003705 304340355 352851579 32021976 952947640 411445842 422247225 649851025 789353591 211854970 388234408 944661156 235868638 605555817 336025986 896141614 378159223 964752818 113681387 28056519 611505229 448968827 163236815 788572335 862667104 102602824 278145038 381510890 248707997 698057949 252103187 336991621 133112738 83552441 40127080 975274390 570904925 205663199 279376644 905531719 329233411 972542476 799774972 279350805 487328504 846206727 229388404 679196382 515176264 599308543 597620918 713636692 371009651 659488883 770041580 485422576 634308694 166782874 430260966 712055294 744075320 346036880 554402035 717403670 947139185 436550406 688917916 603118768 170674484 736109618 862296186 407530759 792116326 565628288 486058764 282638760 420749678 280127293 615324697 58924435 155760735 662098322 475907430 977717367 29059729 123217942 902665201 618327683 273821918 394265379 274746888 768744096 687915803 901580118 824062286 161029431 394726166 662687292 874403335 679122153 547236319 709320098 855941577 761194678 517163860 964009260 192638774 378943032 251453511 218154419 837023154 715971255 555831115 230147309 854928453 780358668 164893259 778553556 691878309 483853359 293508995 978195269 596583496 418958813 142719809 258112218 440546390 697709764 868863159 94887924 600495225 612138769 418090312 132028693 782346795 344753149 391550868 829545045 997291998 826066443 518129975 935595701 675830283 330462962 536176953 901894280 376883550 869536656 634853074 643834978 760758779 43130578 621636003 355897881 102231886 93995578 633019969 481848679 891340631 649570761 878300710 110256849 573460359 566229909 458244329 925055866 16783966 839187838 886902726 793547299 650199877 573760694 515185200 853865584 973209635 99678467 247042658 106635313 231470423 251256395 334601905 645333877 488127198 148910227 720225464 958644313 698115612 206922762 330918688 206845508 621055475 82389346 108406323 380928246 592353209 947527900 699940797 106052660 873183022 51687008 853896843 692758228 973475848 474395477 27477089 410358908 401117772 164374130 886017511 261352563 857157738 130531338 663335818 462170489 44466398 270107177 338038761 496391552 445538343 304758185 683019294 205926437 316077986 943307273 199467492 145889624 423642849 499145363 407597537 83328155 363241445 976978974 536773709 644536084 51151152 610678550 870245900 386511559 141959641 155655475 663010336 799049398 788130118 773484813 99084172 122914416 593780729 294346270 792795087 294844146 874484736 998407626 713997561 361481831 817904118 732099337 544567523 21619105 758700209 187207568 284276722 457382619 127585446 805769594 847154356 268220665 82593600 345116183 548958761 654004875 770154370 786533094 737599943 362569813 708254322 814368625 651173276 725652836 280329952 480795932 211822826 345519227 622519664 849519584 508305513 196001180 270489039 37696530 993170446 195999398 239737841 725671974 476478814 229279594 153304867 665623011 566129568 268496908 16443811 130833097 442169069 980518964 847851842 306497630 316893172 337021775 72121395 298040773 985153176 10719588 522460146 660814717 346016019 226193589 839786547 992224514 180616330 706519777 757484519 889067096 733463715 634306347 647474583 295372731 324640937 520219284 480674198 28782801 738806452 427022120 178318259 450656947 369512189 40132426 271562996 317230193 737798750 279320574 398346566 192007477 624526175 820339496 185061173 398411172 59512053 72622883 745231071 369840957 430344977 131217159 436271629 77896822 399751213 705421028 463976707 352220312 498999654 825473934 12080392 833256970 606335508 61860377 659975758 343283110 814473538 505695363 859924595 565163551 831124109 138730511 350880093 626433658 728237842 5745040 157760554 685151294 677377489 913204162 713720734 86059891 814760123 385084876 379426037 614241386 616572458 902632323 204150541 846605650 175812321 268111340 741765 204964159 694103499 904633402 972820984 945766493 381275764 840111863 813472007 337710333 467293842 463491970 644781218 340473493 938241609 735659731 817879873 303590552 88444726 90770755 481751319 305964396 246190178 474910010 667085219 920898898 818969636 196688674 960221717 674427925 827894530 683075587 218525337 342448205 126336290 768043208 760668332 748954025 241462891 636197055 338949141 469716001 847439099 608783890 248344711 524752376 386709260 399608970 213076527 388820287 495898162 963622292 434606179 206384040 985351333 13088846 795308841 98456304 238488152 277430911 564844488 963615937 976392588 356037193 28707765 951009442 893165860 772970502 886806682 492961568 668890890 808411397 724676004 775942098 230703175 646080526 530361956 28313784 584106913 354214407 85138711 51574167 183318515 317409472 125056030 46561026 554011222 134080436 727212620 210683666 569389578 158551130 512812156 372047666 173547558 309959227 743092452 455888949 894581928 638252785 8160899 807965929 622713784 42972150 546499768 591705113 682683512 239462230 827469565 409225864 286436484 847010465 91276641 508386465 584089769 696411336 798567374 546872310 163921226 738626044 360400434 803523332 806603722 660523796 793266700 49176213 544851647 820859585 326401539 311224269 741426403 757082095 929795438 678449717 206800054 711238939 75998608 10438041 667837950 959435110 3175539 345990728 992620895 578295431 458814752 307641955 958784178 408539932 128119364 612634815 432759783 223319055 892776768 215161169 50382139 117933740 495242899 884997766 55795009 291509589 915195659 112621121 430324615 819192104 943070120 7085195 90945139 348874534 244276009 157723618 187004025 414703214 542510663 64528430 697879462 296495010 952380994 857707214 22729238 8559887 860451169 565083150 944104428 906703252 999536827 632641363 131324716 643565961 430182085 49982627 55868215 17870371 751231712 90153562 249797122 20576705 627909843 503064958 147641153 835211973 914326490 710648943 692685538 584784818 474381941 216400780 692697824 259116050 524598404 9209081 569620514 73944117 735095710 534815840 898919061 75506402 430216909 585154607 46097295 14027780 372616896 830226165 373222326 63176608 75967357 199304602 274053089 689438564 272743093 804917747 861329435 360464288 382204124 860687691 21217848 990868372 171239850 223166629 106401838 142292687 844343100 662861221 627155427 939766915 489069625 528725816 645421756 911093385 671597971 761013966 971666866 520979531 941139969 151688629 522079049 698411565 862648634 371336556 881124867 724834893 378737494 313993902 20965219 585578495 71681647 433665032 589138125 156382516 641946648 773760297 941365669 693997639 72084953 753362679 768109470 257329001 809014541 513699414 566361336 343654896 520233222 358702887 316327576 364310338 349801472 871143349 889270922 376727326 944026265 319636107 952486083 842306661 188246916 542595743 658410978 913238101 223719834 352832603 119178981 768987529 906686320 413517341 715266013 767912858 454396903 775544694 618252635 398022642 346321926 70689607 59481886 271386383 492166767 890717439 296270587 806114733 348102350 75535920 496927 765097581 19108732 725562267 599590261 682086096 955317714 181794339 522849265 31129467 750494448 537883148 546118014 833126220 637862125 815519237 800637175 265400412 955197575 475310468 888441246 958273412 663497507 364152768 895192506 357533009 530405872 915640700 301563993 870703958 86595993 198119702 91239259 523241762 921993229 657118366 517377906 919373674 2811610 737971678 602480662 669750748 396109052 152849206 111455417 717168310 490749961 454024931 280408798 658657693 605973271 586072360 20585478 542227723 941656354 107015255 459426857 290978022 942505061 39101516 686961939 171098387 543264467 409543414 139711339 330241627 814479518 730808935 610800565 148338520 124920487 60531790 962696688 119966000 390954215 40438711 477054865 895731588 174961642 198812681 656070036 981967262 601451889 314543159 435891784 177617058 761295474 808336422 667229632 261388536 318699525 856380138 188483077 61800806 166040995 680297889 530387420 723074441 143206189 994579396 486930214 518972099 668107706 400162641 445866376 324210028 139986249 40549611 978626558 69707213 559513609 629702946 754100252 276826521 612671338 765380976 321768198 690114780 838719403 210086411 205004734 982474554 582571118 633934096 969334876 447826195 289109180 495061584 448013535 681899541 22098248 638657803 757020157 694373520 65664137 898647813 869171094 275812174 2126864 612060896 669340480 585218369 632441625 341187880 144170001 524533699 706039398 328758782 377001714 400405551 333110027 556635053 122453070 393977423 442585542 190354045 554363893 83554839 745948356 914404679 388462625 282989396 532370176 1703903 598286236 619566199 69655457 691632455 855372036 457791757 574701470 798546488 230799004 402214896 863035999 725518148 913382039 872733070 602858789 425953325 923014351 386519630 524260208 816650833 499439579 702413082 965511171 418932323 599653855 926177362 520984139 950776405 863655742 416044458 347398017 929689269 234768516 786359811 576559965 971287516 745709901 926218778 363582103 960996579 119647449 356162440 967160938 294269948 151570333 412776064 269118306 149339902 886643721 269508566 35702230 904038008 259836334 10024159 317129286 511942544 162005189 83348732 291909338 46211974 973422753 370272325 918460218 303739489 214611675 813535764 500901142 21014773 797251646 968159186 736247542 251616674 199876266 914676842 350823969 935729107 588166832 419055372 401684664 490074355 313840438 392521814 254111900 116522238 650734317 930903741 951858965 999642670 126357093 197539796 600581251 283765588 899167243 942862861 742299855 70011454 692018814 923439046 868476037 334410477 847488070 683955214 658910658 130465084 790259576 586013206 597070817 933780139 264939485 400600723 341038198 120422407 552491568 657986048 532625356 673917882 337276440 899083890 442785596 648570833 573697667 236254661 349296402 629622508 521402656 726384951 267654495 854419877 48338031 427977890 51729907 829104837 930855416 858191677 558130834 724798284 338238981 398272222 764136648 502024239 595802914 394087690 614420567 460858495 973309945 814044763 143508618 774963749 301330297 296537604 376346946 649219056 837146604 193134241 920469968 486750736 181544697 167250722 505234262 83277467 340435387 120543519 530996200 669072984 823647172 455632417 841929165 863652393 329272676 265793040 896443122 47440469 541365272 453130295 50609666 351002716 997941834 560318294 726566703 355747157 891665239 211744194 161068196 548560649 920996771 602646424 827153923 419875220 171869047 754098251 201230859 493825284 457511150 109125455 157027899 237977782 968744078 253012357 990142074 800369035 646024581 211664840 562086056 746202706 741308446 48890663 195955822 866478665 335151701 533050257 658542106 14970300 429869196 62473941 919599 606079135 543807980 456968338 83060370 515930309 384000875 645285501 22313565 278103142 639145954 874590594 937630292 434365720 775143175 876894470 966384471 958369510 100631093 316644136 61110818 353579843 170844831 532358258 891496361 766784952 816496611 341371348 597042755 415337501 728610056 995521087 973302435 554029563 535266746 57266262 56752102 976755148 932915405 756526933 780619837 7783329 481086835 245780894 927964013 138481184 908355065 469886411 126715520 184552711 497358717 512241064 737945881 166381036 748422720 618049818 336717679 470421445 424748835 940316826 847282643 465853052 18078461 21311157 848482344 60357459 641077812 900469744 300752068 969815994 383754531 262518935 276120566 460411635 633359394 428566303 970050379 478234925 695723165 215804155 915090730 631798405 461097713 514776908 886981787 723764387 520147933 806626090 900722790 541172474 60474770 921571159 988151268 555515261 284168093 294153453 165339181 913482762 147665520 728359698 457899325 130816726 894887962 83438021 804903320 834513511 662007580 514714076 956595526 517025106 884271846 704899559 183728842 628175681 531419272 343889112 801552644 471947863 48994274 101499054 366443189 250858205 222264285 710093498 677226582 446062432 139586876 921018723 404489461 758598288 544812565 394139224 641709812 982270319 498747554 288703907 105861282 509350015 808228893 653195224 767082589 626310479 209214034 217872423 404662862 389665084 987502721 900454508 920533869 638466905 512367367 135740180 546517665 123170083 273484155 812158631 516752511 500500441 887360872 467829981 40204903 885531424 958589071 670349134 235097625 164177348 690236157 901181641 915266191 526519798 460461034 528620081 72981667 902325115 987675231 671860737 427631469 910519668 481535037 186308729 43997312 463689034 317248811 64075119 289183116 910771183 428943384 950942483 803725642 216942915 424121856 329821644 513053602 48759039 120040253 667831975 218377657 667196153 181414558 661331564 990490712 670924439 648527572 242345094 102797310 628885779 968662528 957639161 851575318 721340780 511183270 58293808 369690856 828464748 81642536 86512974 975595743 888202036 227317526 501060142 852127532 859991446 476145861 568484140 431047764 983981652 42989048 577328848 575749483 998359246 936426866 322765426 42016514 387207701 175963022 903440252 327694167 995303397 18108654 283313744 364308008 268363780 602264679 557083629 249793662 416433118 537323894 105948474 655050071 237587446 442622375 651870081 55449847 363198662 355282485 32858107 728628228 3056134 450694794 441177130 149296844 536008316 954068469 603328193 607912982 833034616 971610533 151009484 831083927 186721567 140670204 67233313 55168016 852187848 974586418 71261528 4491884 149554411 749980204 278278724 467643317 524103812 425068775 457962739 829021036 712961278 866132463 93855866 216016540 622692109 364357882 449991193 150711268 722290632 240805670 676207909 744230902 912296724 150283929 580541672 532681859 609536664 917360240 374025048 941068152 438680297 496371974 653425451 213108891 563722753 315437180 118527217 272696947 719695244 259870194 653066036 791803823 429072021 812630557 479830298 445354197 772164858 326168898 621656382 80356390 700258683 172796258 518084621 427640621 895806345 941111141 182019297 511118675 661999687 950594570 378300565 913774522 11131392 894816530 532233164 370420524 146257801 955063380 822709442 976290547 174720712 921628724 230068403 762090699 937374467 41154566 268609884 384763209 137175170 904911464 530871189 453498633 775887401 944937921 950434166 710088370 170009163 429967254 922442701 881688858 713989125 826732891 992875692 558042323 783974797 901600226 665447532 94343295 166950185 470782463 695887787 887938168 115016447 139433136 885915453 591862407 175964156 315560647 163619749 431379273 458017919 138804275 607520406 71084516 37994416 927752786 7481235 187208665 130461332 218856647 278421676 929484808 836091893 570979979 641134780 680410193 373540360 324442445 918667470 505636967 829310182 944073284 420462728 553574597 162768107 852235754 798707330 8892856 194687569 128651134 345020337 277133989 732609486 113292739 762170869 301085878 938569919 108025359 914154110 167203715 602909473 637021698 6770437 469441150 249533926 328199147 446531568 877448917 47489526 49051866 185271665 391212010 521633624 149331254 975545391 884026133 902889522 858145182 131227785 741177158 200171958 600379373 769981101 750912960 351874424 308837236 169804527 158274190 317460971 775761639 959607922 205546168 130228195 740231451 26487296 906530190 666228297 220016068 659641392 698616622 472414479 141510167 200878410 746315124 942959018 798367045 549977205 413335121 842144265 699088041 388202008 81982708 381164016 440426774 759439193 458178833 599437790 249131175 86288805 847078432 485795453 765178977 74992427 532931982 395154150 591289071 973997168 951658509 996241758 654415961 897894332 309046370 160533837 74462286 216216487 17249038 573315229 132854821 745141061 955855686 509220054 431339509 109207912 157964438 10671561 968550252 620020408 966722519 83909975 989065996 237017371 556716956 359817466 609659090 130226270 453343821 368210237 501610057 999033790 996569466 694199169 212219036 835601285 522081488 261208301 210843411 220159642 239328927 258317727 510877934 574026573 68097441 775216961 920127061 131033000 987171373 734193877 510392109 36442112 749107307 383332408 73493604 264385255 307709242 830524679 820151805 121351263 370580949 259051905 443456329 81231596 776096283 449212770 378950581 104015961 872553577 877894362 119457128 877026255 117768788 991560618 657139668 48651780 527654144 3038270 677285312 822735238 370599825 126624533 550747758 342380036 525195751 923526294 755145440 255084046 834137057 512708140 304300846 311343348 405238228 446156532 434129077 354137745 106148304 892516859 423596500 541979591 924544481 113395836 102724852 961364224 515467811 299397660 314695847 261757791 482767387 593749197 185710200 398589922 764127825 877097229 333661223 819257031 240822169 65344142 476750401 673009482 697820257 844152007 202330130 272918042 206905733 137408169 140191385 886977606 130454210 806116137 799836245 132903192 591973335 217603265 718397716 605149362 614886624 243093093 741644674 601290237 166295534 351064407 633134663 828462384 908700949 178647305 24644302 731383869 613195309 805780164 942287777 374461559 527896261 836071981 840274090 943398640 678829559 314579322 883359072 624224257 561974386 509894393 351343150 316353271 803647963 364800684 189233087 219876454 208583484 615836676 526626642 698264568 519320768 914676570 597516838 644823968 594826625 715505244 622490236 819577998 145310925 66073559 557745302 478967248 810460149 259723000 962634217 389858310 82198123 232784612 911042738 628416203 91450098 171493833 771383625 879793011 992262980 210276689 448798395 545977561 907423751 773276466 535978898 811870531 790514959 288451840 216307624 546781401 616161177 892071731 17001702 817834860 847969236 532291217 426766729 359610570 531078844 687345504 5228499 616408559 953578062 503203031 672193460 312177472 142017004 244250758 544377280 708192603 216370802 94371297 824616455 325328534 626204140 778870883 142598340 48413582 901293728 516336613 610988913 806509652 252792960 867900043 909716041 824049283 649026731 253241029 249687257 890089766 92176093 901466968 933543588 636369272 719034141 192602389 663750903 280158610 749642036 611031563 180187611 3952871 745759476 837329876 169172810 678682291 549465082 275729657 185580354 288553657 162269988 446338220 166411151 3967632 263003614 115824239 607394273 255568283 146273481 943300354 903783832 880038048 682705347 479938994 55466739 341432747 381706650 915427236 422741856 911629422 419220911 536748535 72800797 541956400 587122095 538174021 993259836 547575887 879746434 410967892 482734785 24288190 793088859 411969634 162896416 592392083 981410661 849909634 81967825 971023077 47129643 701873229 652253938 787696145 371430954 29559341 487068444 263102372 653689713 976613973 879417153 952544776 218242056 375904628 926256756 309843831 408526495 783608006 423600358 913735597 8849283 480139730 972746498 434084857 952931319 905529199 168197599 186242019 662837167 306826014 894491035 530998023 597913889 821148517 301457623 198850922 491102984 50593812 76188242 715409308 203907820 471848784 552241928 293764882 806184829 597282228 104086178 151942269 398813001 171813960 547425769 225886642 699219657 817075483 431620543 888943724 192463014 50769928 175385141 438921311 234406595 264580971 298479554 964250706 608675773 605336217 377487728 8816167 545270201 484182498 480724440 875436940 156730378 319317840 241175648 56322367 428974580 607170488 928961084 396266818 503189804 884623753 556846465 777900718 195363488 196224431 899420916 614429056 235926190 31552032 973588235 800850168 960694294 252188921 269126341 104101081 899033639 760886120 993487704 866856109 246647030 744858604 12069847 137054754 347149501 120870555 125461560 186114702 541959991 303787688 73862200 770629230 714623886 593553897 272355872 99920176 206423986 829010436 494022408 709126362 298087618 484523497 792682482 49638821 329022018 713014585 817028508 59033187 851291902 678619698 356417292 613287928 246355209 663324644 14241722 559593942 14471214 33898835 940431708 116213527 120594264 582148079 584588275 230401698 522417504 216033577 696070477 364673835 507117615 71909820 88340431 79688270 920694248 522083080 224974960 851765818 793197595 601819893 263033954 485311581 532132365 676425562 550936629 617204541 128484980 966470587 496802565 831248120 225479268 934561789 562994183 600898280 974877785 623186099 442038868 933871069 661343791 834383564 42934423 544089431 27302256 825417116 302472673 623917158 93137282 373122746 205698512 424774975 387989366 265957827 351348469 319673811 119444853 926160039 495507537 66599118 997007701 381536119 226040103 817770573 891626012 480680951 9968869 309005156 365997822 558920054 798608827 95079758 787425938 477100256 581292785 875287001 881360032 381720654 310610442 653083030 676675156 497610615 366376740 471249536 286214460 556334548 247170451 218766243 422946294 988689093 205817644 852457264 505779795 23884335 138688009 775710654 283794301 424910292 583356695 249432736 4386030 521003225 921332557 874561478 705049471 530026318 970365513 611783894 751290954 224988402 978097 614033277 606648204 971342744 499084194 215676535 20003910 594857054 867426089 488151390 685312471 233346447 884015712 729165571 212315059 742701826 937897143 561824711 306478572 122619120 505309878 736301465 556340896 239001750 999481362 120221630 792375833 169512551 117376406 339374778 216042833 100476748 168739576 213867094 158128031 118437051 946477922 470418448 254330011 760626152 821484652 990771773 609245451 665780405 189594829 270259340 627604374 776891636 644838520 933786759 961194641 525500957 950810735 439147270 757839863 757268986 343708732 954093946 258121765 345149345 992648581 241058187 402601242 840691935 510592161 285352213 297755872 990287621 258271977 903555321 86504126 30344066 540109208 303919164 186916362 956649196 68133464 46198486 789340347 363249833 75687293 875800634 855065211 794604064 730979145 194675096 207582978 291957708 405728583 775109261 86718387 52302730 476383620 649291700 675578545 725634114 91413545 14043279 341597715 433636667 839295578 853230756 488994388 723632637 859097883 483234865 449651810 169419153 93145783 679121885 223728453 670684615 703648558 189891701 446935251 818237559 21867861 925505490 283351970 461673849 733905677 329930707 964369848 387183802 565948856 26773292 583039274 426037266 861705329 762726306 407699979 318064039 712959113 367548620 647757609 526170091 892031976 392728887 162821666 171614342 197943908 954803772 802609653 147048961 352995451 951878928 192916237 678516832 882726195 107724541 667327089 239013271 223732184 151601251 254143594 771712834 23882961 664456812 344038805 773175789 372146924 458528395 50284617 672514973 817681017 55797009 902425384 917379205 946855990 469348691 274090361 632422216 713700814 121477509 771655465 741947231 741153865 214325749 134033895 986951082 891124927 49442312 728339771 806082473 795593328 354697878 136790469 618572756 584549245 506190965 507631432 374897077 616986826 635300650 61705767 819305884 394974781 330482952 269133578 678156154 513381076 23190818 319922484 499038688 357084030 888111419 825488574 673861523 149376241 178154453 411512133 737339198 819705214 637761185 203587854 303118944 713982538 455724864 159756417 891783895 990143803 955198409 216144517 601045363 95059365 815744475 749378304 111895940 471960863 332808495 232641821 448611522 87972932 58325054 207335600 197708750 260737870 36560372 558729960 216122515 57988683 177198803 265480549 801438275 95392920 32472238 491415108 639671916 752445415 804872523 821936479 550046714 704049465 13602259 724613885 316554071 286907765 535493289 26063976 119920838 31139746 194163411 122002864 882978753 22710771 78399878 976754867 281061649 480819705 959307332 274916678 52620307 409279556 982075312 114623807 669559109 765062311 464929926 512414399 895130041 887185356 543107592 223032055 949145646 29435773 465976199 610137638 838584070 45225878 235441190 364984640 76574273 660265964 142700220 667600187 119539495 639889118 707422144 184057852 705882513 219754309 941943410 563239131 724191924 107073021 253274219 130495381 124172668 415757911 702063396 412429036 125969258 59135132 982429278 365676165 791530407 304213454 19804374 892954169 427577817 904916857 424824123 4969168 290191180 514755366 969332131 756332365 77041489 633049752 775112611 250885868 627965278 942276835 757294328 904424012 191118684 478427748 437193649 965851130 916605428 343195369 689959559 631267658 184745139 353836972 312674716 513126324 213517931 439781608 745588362 447962766 873170852 825802534 242783858 867246842 211291421 627856947 776811509 77176623 172456124 442131924 652773884 852161028 337256446 847915279 877435806 677367362 292834317 114533844 516128391 361430803 524726349 615957896 649882598 701415472 615582109 80072907 634468813 880531982 588964040 595160563 524613786 792763127 669693805 601781730 510745666 817794533 41541872 275338490 803395830 830158872 818696789 889779099 910699435 102172010 460167975 390305985 105294199 875062746 287299843 201722580 513714759 684635139 12425433 698023199 806521543 653759655 622080614 735260268 226027922 178839877 886159949 467775665 792631209 922455220 848281120 885703467 315967837 10881125 619988819 956776098 923721096 185490650 515786289 512760753 989992862 389257925 234506613 609768843 778138556 987276335 332821162 431890941 880727822 832478148 50415093 934479833 731357806 768820393 344335683 980871319 118743465 265717624 748783840 15497092 172635128 530063653 803530135 916954071 90453160 791290605 739209512 71959266 809007071 598883076 263810818 788062831 11359800 503280859 772543406 222202152 289838845 134682055 541684356 93317212 678950854 961002278 372419722 975695432 513926006 499421610 172734058 846892106 818740554 766860177 66915081 274710006 456525058 439188818 755295268 34924246 944286056 146701314 238362963 679723732 354241275 571267971 198418244 739889539 498633617 586567575 80043973 818892685 353774651 917412048 26904325 390764022 660176700 462318422 462680761 252908884 961871549 879338554 146089866 157056721 43731958 108188986 954544453 266599376 205933510 805871842 901351545 28265246 473890671 566522005 836196494 237132659 183196257 694924594 917277173 501120431 378002118 748485139 261444039 790658183 38036104 296448968 814422934 237557824 941358140 577072202 426097139 887098908 540400610 289724618 383753117 79665052 764910401 182656964 919320319 745401127 606192405 132465831 790108440 964351348 665998716 40811216 817095993 397479560 211402411 64655626 91309422 738714254 307440349 47995977 176059811 902177126 404408972 225866656 502643341 669294868 695070127 124251796 276981005 194771451 85693308 51893020 995360669 244718316 34540028 891800430 78386409 921971448 765529273 210438851 794515549 667620528 307599754 327890795 696130115 774162936 110255703 713245435 454290570 945595537 83561404 477107514 58514959 122898594 775269672 698980716 168337199 199822271 425110800 347643629 138187940 392602491 263969427 245225832 181454229 589787533 579832109 79662726 409873952 220042752 148675368 799535323 739294906 178603804 557224397 901095239 35182099 248636004 671647265 954403692 721253393 994289399 87449845 677348675 605724071 805506027 201487903 716857476 245920371 670105297 22970817 159757563 672164870 49365036 114305889 666383571 94949740 790025057 253980561 702941469 128311255 379363509 754527110 230153217 343609171 402346788 403354867 587991148 860698278 484528127 834932917 490267350 13036740 550684221 735918591 798873069 63280664 305386159 83433966 582361155 473377286 239320466 463907932 672649766 746610696 784175240 740766970 679131083 689124147 45053822 85710234 521228175 120392867 545090814 456252718 535695120 311680856 697740815 732688931 635855886 777601489 23625124 263234125 184217065 627194277 671976315 812070509 155991513 863421030 677593759 557281652 875225196 362673250 411520422 601271764 97346196 461449878 518044005 755552931 657699457 363385661 334647046 261801164 728541318 778060898 213541324 416453066 721407097 833919367 119849870 655153603 762483633 618631635 237459669 310525396 387242683 723610548 966223590 843031370 268968658 57969255 958045485 554008329 232180657 223230212 21705493 442164097 406952838 934938743 503171107 910133974 313307909 30865172 677286985 584501053 160823739 332749777 312760026 19765596 10726376 140238500 550356459 574964744 435165564 699657950 649104306 877899262 898446510 989962126 79681370 714108494 666550204 230156439 480898790 639659904 220600440 174875252 193693997 328197634 193484839 357134255 247790122 577030453 710205096 168686883 402766340 538641320 901360238 162714226 860129467 166917446 904861317 267180075 476592615 925814697 229200693 861762306 672041038 316672410 473004191 684946162 663942118 735367075 896125855 214177100 811230028 592688377 190877923 44066429 126698504 645683725 995036034 106305724 360793462 911100537 592525299 426529650 968313598 967028125 885576055 63109009 263030521 777383546 713964491 411238195 409578742 285687614 735412888 379242321 723168498 31431014 795336555 829918488 109794311 761754425 356285991 370757011 773001596 186503099 441128656 287119656 385247788 31389289 704208154 487995549 883213954 870920788 942330632 630283676 720536552 626287322 895209844 518552138 156120536 170275155 773753305 113588118 440450114 45767414 965458701 181560203 602838365 700109445 707038441 350875308 404847178 234207821 764096189 877501407 828061572 194157174 900901706 693554178 145222100 370196954 110930849 220607115 350147064 502185026 591069755 865020561 772784532 595878318 4136385 730510721 149068019 925828754 322001643 707311895 767393143 581180300 822967669 556974926 564080384 865442912 947965059 702740913 874757389 6435950 12961344 820469286 180579084 425537383 851452851 20832056 966360549 971521362 408520080 421073480 637264140 285073870 921166768 637680977 471667235 744307352 878331156 151444479 286564444 799502779 103524213 73592756 366763296 415671832 319818849 775778934 227466594 627346736 615315823 99833740 230924756 842792328 49206951 144752172 501511568 528197011 232340428 754961692 149892608 108558047 449105919 375701253 919330852 536282580 880357379 569816970 405117030 719567246 115563109 286693774 992975540 86307651 425749766 369590102 925656051 858944634 21980611 347944183 896581217 237554878 313713017 363221758 536864130 619323934 239186273 40545798 183844031 189710998 374445368 954321252 115340660 399444646 334415040 472482539 588674092 160331836 769046753 729874715 240631172 572448955 690929317 635070494 856534208 899036524 311172752 73472153 199913562 634766233 317824955 830751476 657710207 172842207 931055226 370026694 42004030 460573927 608977858 135623193 929433080 253792182 296467452 69532276 925433444 90685266 681695291 975479375 391689294 985949217 107357369 758727502 12738678 391512898 351095082 327917034 918088533 936428190 179325306 478425572 160507998 12469906 83080005 678168579 505826344 141988720 761782623 662218200 985111321 740921976 587020222 785888100 749305336 376905014 608337068 809375222 134019145 428929955 729156706 607117577 491387296 322143079 783706500 778665290 522021330 966742097 523383298 626291432 10436474 920470429 736854588 979398647 168285928 736406787 204120088 655100076 197822548 472891858 473922192 383023623 374427658 916504298 805973091 581128215 663863274 646935683 195179155 672129020 865827731 454619724 309582705 775216588 810584537 294448411 296105132 701060757 105900872 541377955 223940199 51584191 251777204 311151332 980554871 859731346 883295872 576052874 421593299 255871564 996296148 743084590 41242580 39278856 79488206 340074032 837494851 437032879 909694834 88730797 60505790 426573580 516465177 840960164 272258638 674383319 459115458 192058810 429995395 628726232 280038902 624165416 79071415 131243920 59490641 87712502 562594982 31140077 646160754 617541484 338380243 115086954 659368344 539473194 443440346 855906584 807355792 348528823 53054443 354213928 593631477 919713068 200897809 387071871 618440819 564774979 711172330 805020766 708681230 481142097 382984233 412013718 865540469 94105781 120248463 810239831 277652633 67976854 932388928 285495184 915210311 21411948 433202565 210660759 390111577 95203791 681645609 200799556 744166603 870724256 115628104 193676929 382964119 108357047 585930571 668392691 933627897 515316258 336114022 933956906 974707044 845242508 99283324 62797625 362519175 31065292 965313586 66372286 494322301 640238198 32294651 936872086 944839306 996356017 340097561 925188141 506395904 469837251 268680890 221406916 87514680 887237824 479391052 330931182 339065638 175888955 340484614 63675854 755488403 193293090 350347842 585395919 365094249 250336137 136505828 388754447 255860063 166683007 883992568 645873952 479554349 851951005 687504490 236379684 51693307 117486203 874961497 423100276 927998950 984075339 52526139 295984340 149183509 455247430 116730728 971451442 23762007 558324936 776981076 237153282 317399052 918797664 126149626 356421085 182787937 543314136 128486201 682054893 128968783 153097855 896233606 776539034 626583072 347963781 560274585 333193690 19935489 847085727 660135997 212551824 556417343 230875821 102163773 288254270 116300377 144684188 685861558 73664342 185087629 551796455 167307603 222305857 297176219 521434169 661137861 948590732 576336351 526895156 904052574 996877524 256369773 917750786 723080942 835196591 30612158 367195287 412612497 253284902 614875615 11944340 896424890 310873473 772655496 270316076 399260034 866579653 829588664 604391725 173402917 819420974 884372607 996293452 418237951 636393652 677734468 831307780 856585636 682322196 99977997 771876920 176798146 644686197 331405896 312100843 87978335 899061071 751915633 665101413 745400354 616591362 57183599 799202655 935284092 788003004 174363021 762448200 24197805 758611351 907210250 127083185 395743787 363740279 74222732 432985352 625553144 349052929 629854814 368430678 657586416 843059682 326763628 566128085 95429148 206964286 931879146 932614952 753483394 6047416 449537573 447260764 643568791 642048202 137866066 92817568 10282917 536627718 305881315 57458671 928815784 988499979 485954439 278584259 553661973 378341185 230389313 486471555 916045453 194663315 902019488 102594658 816270591 858882389 532235096 234911167 410635050 675313163 248833488 54668017 838113084 604478405 396414720 903148954 35554724 726269997 841678520 290374797 488843675 85159805 358195162 570251421 898656614 252476656 692639795 328285094 140133839 884505824 207032779 56763446 271087776 125074420 813613900 983269675 683415360 661313787 914593013 692065761 713807615 962086762 392102278 309724832 695223727 483967986 666849882 421135589 480427173 799369019 584854789 38364085 322591433 134515673 642733181 396177408 148955620 781103740 692715432 613405527 352291416 310171321 219655090 402052721 639997427 542503888 724944613 301040800 423978094 383658668 932274316 343380746 332990551 918224335 341823285 599212374 67833724 407738900 37656619 746739133 913817460 365210429 151237800 11331043 771659358 272470661 123810791 726516108 498348811 103101422 765821696 656891387 839524527 451448451 535872026 643089868 758132868 396621881 377330454 959419049 987257692 842027246 426446404 245897337 550738657 35008177 814964652 610195325 370108799 923895776 322426855 526575397 88187410 580997538 855218782 972264688 804127972 73233987 584802065 433954235 812421574 472057302 803299950 565513195 149565844 279622549 316887314 446159946 243305104 756158766 10751434 479767547 643957266 878857532 704453226 586821314 701911521 649788104 245470440 90205010 758019169 836378347 443011603 602202660 389899645 203529507 486688542 173894036 313404039 545824172 537375147 731929742 545082802 177739040 18122383 604980895 408435804 720482541 454251628 872009448 618214412 875013206 640389821 403335543 776663577 599803594 245845678 245331578 673962446 186982536 757825906 735576207 287947376 649968860 573126139 474325876 260604810 413448901 992045947 889318812 989417522 423969667 960483996 815827 807654399 707647681 485393434 553389313 936732974 529122977 339043258 229764746 939021424 374297702 904618202 409752704 294752641 231994712 938090178 27409637 438328259 745258445 742847327 876871552 808626423 591626880 494153515 335929423 608425867 722585187 492733854 286136612 573800648 987299641 170498195 127019716 733972269 935649132 418876651 387874017 50709993 126955423 152490840 422498543 768315541 149465102 130866028 526123709 912386783 498886538 143947994 87521634 379334532 215578200 120449143 626704740 142975347 90182962 646195689 921273543 349491702 764931102 447320719 763513018 578707899 577381319 947352478 33386350 1360374 108748594 282200179 821317937 656103235 935734347 255173458 692074745 397854067 525924453 126445497 109913946 11832887 933390484 917919794 750921665 621611293 100180894 236943643 787575082 739789995 256980833 156023387 949777253 270121266 399017755 99283727 76475811 807443240 158505524 307038854 105460557 580730673 798292689 809926672 480103181 811425854 178847161 319039977 79264790 776839767 403355009 467174041 211679027 485661386 884597084 461987746 500113388 760831307 235090466 845942323 555709229 588606151 442809102 62476344 59571238 252975772 169755770 526743443 20968263 877599670 585958089 613148948 333869612 531834001 940260893 286535243 189915064 34796065 685407428 290671034 9424796 55125219 628612391 825688872 990514125 32348393 123249209 422823395 759699403 93854468 708354601 439491510 508869336 183389745 435244313 430323313 455391974 47955499 888100398 818595107 463848799 199697920 318895879 104982290 867610475 574361294 739444514 185578708 523731782 485491437 900661368 349772357 23703295 239541844 790821153 435820172 190466397 48824181 60925135 504061069 33065970 186753292 602947502 914287846 497158187 105502511 629173560 262419069 339592991 869662218 483229564 906599316 246600491 570561926 898104319 909062939 22007938 615824777 96470766 955937820 469318089 624776504 876444726 357483123 687042754 107499535 933784284 78076105 661888372 993933805 609649811 17462801 776093621 505969667 13438965 300062509 773474986 348631548 800505482 69659037 576691620 591107841 114236757 415547195 365338914 562810928 52686500 549524402 738644690 247398155 490034974 332892179 204008380 976889925 702244845 559813995 140835424 979401623 863879293 290976078 826913130 106423928 840141545 775652382 678415635 688495423 837989561 579007299 410667946 389581194 287796767 747151364 650479716 952410711 624792678 496412850 65198395 526293364 64298785 256753324 234992177 971484933 436314784 325002296 977250292 336552195 690573909 568663454 416337775 402168523 908276174 591509949 209790329 810090798 121795672 946565054 722899857 513790954 119139539 445326810 955906796 714383324 713018970 69348218 16031539 821912208 1580090 78506600 46436072 896577995 240732809 246942890 219543697 566785374 550028428 778006816 417712288 300514003 355731780 852922250 167305997 139710904 240587916 681990155 515485178 279752605 894030439 640559855 421604000 840648654 684976565 579870865 423237722 608405310 332421365 523497575 413162480 432144347 787902032 996004808 958888214 326974264 844715488 216545663 688011015 514807132 160355898 36081979 624704356 405185287 167273958 829501878 697578878 286119967 445382003 768422268 262542198 827855458 137575205 423395435 534695512 301615138 55708157 836201144 604138520 847273099 916327908 969886873 843184649 59099118 573733243 585252180 789890590 959198157 896570948 997113903 318282856 553777376 753718747 954819079 627797288 207161873 941134499 735664705 370460538 139921330 580322614 539323987 765339005 971034213 596207268 904128362 442955410 277366042 707668751 971568578 72503496 736591721 827902008 740656018 748659139 526909947 788236925 721446085 962592418 576117924 170492794 485819136 130710138 649976159 651119548 103156102 601237614 576340708 972884287 928364572 549438952 986017679 349659892 731235669 75339269 93065594 593018590 980675911 946560812 406014395 210759617 54735159 429484904 772628169 536335618 495217080 881271576 228123764 365829935 692587445 864457859 540833528 101752829 750066546 558927273 921019238 866628321 955727501 868643451 713139508 270434106 538131615 802342884 200982391 697318469 16938622 801871194 574412142 766135556 241887554 988271213 683061686 316291060 76659839 610782023 447091446 531537189 562809674 248773383 54111035 726683662 960167955 991713165 955217651 206470954 250573504 492512114 796182054 735772085 616155807 913044954 88946947 415651897 140559632 713302865 805599224 530410535 35261451 400638495 924812687 53093894 392154000 896682994 103978465 875822828 415261713 636929715 462543992 887388372 92752829 67303853 139869956 405728126 853559528 794807211 3342198 674965032 878683956 568250928 624022836 609006458 591339458 494422838 699166015 41734318 31424263 90909650 688007723 305704975 73361234 364430204 75075741 308269547 432152527 803429643 66940485 318915851 181174734 316368480 260012597 659905535 880033178 770504056 445389700 708355517 20190642 11199863 46890620 57716155 468042212 354389905 653262940 708356452 343485737 762708511 777392869 928935614 477689505 312233312 957273710 96605438 585306069 927218587 211403137 678079386 627478887 315018710 289166625 853649936 905758666 183149144 846396969 773404893 647251573 792102266 537977925 112847216 830510753 436057744 839399594 828214920 589332228 630515285 571218743 720463823 372025709 874649193 599849876 637077465 528330500 183040579 276288497 488428441 888373682 667538202 30412899 77343162 189826570 6304541 984044602 39758898 679106392 461813928 968845518 985541249 486694001 727494152 137247496 178800161 159220659 91191470 344248564 425729523 456136543 234924664 121917441 954650080 139690856 789022362 949589737 67767422 614323562 403246225 781424665 151364035 169581699 342013412 964380807 411873507 111212128 944665223 256059824 210622426 692043837 418519166 448811812 13711589 111866315 139460964 411807027 238133904 731137676 780312229 896479400 801211965 924542075 320442753 701460855 315112603 391218889 530781025 753727961 682916715 69631241 205122736 215174569 559708065 810047320 248393804 101754875 222675857 86434524 280589725 834513570 835137591 441912959 816761830 88844343 485343452 69818243 533722258 736221714 861872115 753861014 73322699 716782040 591846388 436732594 221991101 824412886 378545538 191354366 214092643 967705008 295802229 868979167 546178715 328085513 935185676 913061918 305246552 847657142 884816123 932531603 881632404 625035499 621250226 593455291 660216991 591130929 30195800 758722298 942507801 981112754 61993679 47732151 389417083 88036570 109981700 786776161 682195698 666694716 338923434 63136913 120053616 525917276 710532683 359398527 69275747 509250107 995154721 620634524 620703094 984021931 874155961 152354621 503160026 32565833 6805054 94932614 25347932 777309214 343946200 87242277 86243744 638090005 454160622 690330428 712711675 954308982 189529910 86269939 96831985 166328381 810962951 585826569 338594167 590078658 834432707 552187532 514208273 224164396 59120737 44741429 834588164 111305862 533446410 678404682 88227996 962317791 741589834 974453304 197467735 301679474 96106833 676421119 147470906 495205895 738388257 914466386 648432824 665233301 843671838 17676494 554351220 41778256 238908999 123371290 663803146 42904750 711919179 369387622 686176762 140003804 891724603 832954308 780152264 398713183 48460861 993011452 919480370 585750167 982173277 682023902 627319744 134640532 890508596 48910108 731115541 612920043 606038166 155831828 501865734 248213475 72193685 546339435 752616182 763942522 327410855 911920224 982000821 696979282 48964159 978402313 73641475 509628761 795861702 922000305 33400628 647576543 353778846 108546645 569470341 194341935 311105061 51377976 401798070 68161342 556367781 577191612 343841948 278125982 211883567 412617445 876448146 553078379 873210217 421425015 407955221 656899692 572932371 161402465 378667787 327963438 738491699 863582544 723619070 551517307 413183531 582008053 34249239 703112869 967447225 315680845 655318672 67525533 752897000 389105698 43289849 883725975 217892520 96263921 482260571 916875829 712489022 526884377 423914792 555735591 990008140 384055231 72122719 247717194 844014152 688026282 993243855 902024119 889403525 482421038 463028792 920146352 478049707 28207469 164911277 669303751 612992476 343968747 358414418 970359891 37607584 440345530 931021345 296255113 549399286 915451915 590924083 794170273 707077633 676670745 915854254 663277334 336214301 428050207 522785844 525724566 714185380 836641270 188266481 603784962 619887817 763653862 970386426 533747448 525798963 749167944 321148619 879654060 859746765 345748188 886875334 78998514 511854671 360131802 356432172 928152042 657803611 761245942 772589029 279543072 396611982 710765051 346362400 390448852 647501279 574398115 8068805 590002919 838197977 809635286 138849404 901007658 634786346 673369017 123458437 568094707 123914124 488217863 282946729 81043361 776799796 614513489 1530332 261299883 893510996 675709235 903097791 216968633 971044722 614772901 460640070 613822477 403876338 443340782 611169383 678193757 694217660 225374400 393743171 436155425 334478454 82957568 935754145 660717349 454215504 116683916 587378657 976317094 82801001 238610590 57317093 208546659 769623466 854172035 333405954 574465021 797425241 23800824 590840007 343605017 479596881 249004872 697452547 762171272 272530726 905674628 651925185 383032688 695004279 450543254 291122546 58589934 60314122 480481529 893047345 188526895 334930071 558544865 609743441 804127630 172327788 775513182 413089080 91736772 455577706 873944503 945212106 907064602 175650289 39170199 213300964 343088504 888491753 344267507 459218954 921060836 812973130 598392342 610478959 963417883 107251931 513037928 820350467 19127487 774235267 644588682 650374671 615216861 881905887 889170132 638289606 527035799 620054577 166747884 694998295 367297540 800918986 474409702 809156977 760648663 493729752 333897425 296888641 829598602 491854183 769435999 581439022 111381795 107988386 906562907 687199590 782627873 118969795 258166526 753244603 754367699 755441833 995209680 519371605 358890587 854089029 836181681 290950371 266928451 127457172 694902355 436952778 665575456 358862494 527820289 164496178 655732615 415468571 657640791 386737353 989438461 984598710 534905383 647715070 991495748 336351249 368425825 679308955 204363471 548554229 713713247 53232329 829461578 747352399 686830946 359844371 116166374 572562620 77084370 797401360 808369789 259063995 562728414 570353070 805005042 685587481 540038161 358254526 190921253 732955299 622237709 98146855 320461447 636514315 449568154 610894157 926554297 802843331 349871593 649427089 99986158 188435273 972415313 704990157 504545195 481538226 632220454 602635799 325916831 191561479 141092653 481999406 489744368 443088920 542276216 477704665 915969866 64888050 900909431 931518713 781811629 158925953 190077877 497830201 769328218 86693567 19921994 795932058 447493446 287515979 990961897 989506482 470567595 694478151 858805351 495513250 602005919 937375112 363779006 443075335 446135164 158861354 398113151 962483883 797977380 742043129 151578578 803585866 162371377 523477891 979404762 295582904 262896766 434461896 934979731 130855044 371217568 877200260 368706127 881130433 418767520 784193287 874306877 256961996 91526843 908268984 311637544 38509286 672346633 40081469 488066531 429684215 157164773 817808715 688750957 358117729 691386616 347122203 236027033 109899056 776922930 671244546 857074465 178154320 90657589 611154577 774092116 820491982 791789613 265743631 373410821 414310301 797609284 479703990 567701710 878021798 470381003 46394679 423618460 516661051 892640441 868446460 668031432 303899928 110376218 962590513 892784283 160517922 360432374 306610848 211195222 459538681 379461830 816014725 523045352 862259566 574812250 870816050 404738805 68835011 698807770 323869490 963912203 573445286 603786033 299981180 169078550 279738493 119405583 710054013 477717047 454963985 216356137 598833789 247205359 1419393 773037401 774329585 317975380 333535498 524577445 6703910 158071492 763514771 590293494 708930870 302327325 204227466 488686891 857924122 718241524 219804468 671304567 317207978 920655453 805215377 339846355 339789871 394671190 698469951 170473144 367103247 967853187 114794531 302026726 710593741 191886158 345281757 409653248 371389477 502190933 839223840 956365439 690034200 343069359 751075758 598782272 407823592 411800796 741137331 58556998 402804059 260372720 91603477 943477209 215127737 929944081 332497472 386962253 993770766 693475866 70074279 940910549 969223289 969435655 770001832 506914712 99820401 761945294 93984075 533815842 543408107 233113239 585400511 35708291 647240337 599041518 916371504 562934053 347188754 865138995 50691937 490951899 620814507 528102115 242148883 160414402 88739860 800088933 474667880 800018950 248694519 396197441 206243512 847811357 253155363 877974327 775017127 250687146 215810304 694550135 162975104 994222161 482204959 974261862 548202977 919586240 702993119 730732339 361633026 771636 431666545 922412420 49528643 463429884 122758785 65639676 748474815 475847484 69836432 166978252 128965006 975059377 257065018 892769079 154875000 657690364 426864687 355775199 722266975 184876250 708895815 687338254 284496594 750531098 862440705 470312667 419332117 339534069 425662871 697469381 766533248 249898707 627418656 586924184 299645131 807821135 245307184 735447321 922098948 637191231 201669841 675497631 3377769 939732711 973566019 464508687 582381179 438464699 130079582 620008372 988825950 820630204 100054980 100480135 932410142 265596239 290506558 413475246 137738230 740212793 255637334 414505099 887379790 177095054 790323783 672064199 437492709 687528674 671756164 199481264 437505952 766319977 154286683 117635340 593900009 387295641 205363137 280037010 60475796 193606069 202998454 322980166 279719071 539163593 208726195 352496903 13888086 341348908 635567978 755030465 885929823 711424542 959137230 931055958 331793421 118061497 523351277 319102774 67595129 884050635 678412551 860943290 346884318 295693173 615553855 139284543 639101064 989973172 264882643 575734388 469133682 855111195 725499496 155950577 928817428 719190295 938760411 501075050 309464793 563167634 852530896 201886392 79068721 381388097 917579084 647582855 58791556 408805565 256806739 975245519 321738781 831174411 886515464 998113731 733858171 344026629 963662195 771154605 51173212 812828623 66699090 895909638 213675287 65714369 778812063 329972053 892947409 61285506 977323130 287463306 354823801 372306250 396039927 340192714 254619197 4467601 243199529 82821764 24292991 851780841 959678089 296930370 902632992 632890909 135029203 395844134 784259091 383163514 254527817 158570053 682685764 535985844 595832305 858495833 343131047 653940758 989045835 286096688 981486917 992015134 100680077 57107610 532963316 420176708 735231573 331764094 499972381 86459754 672969750 131480224 759752231 909338820 298207791 405659650 98789992 734382109 910562585 806018767 509890292 151489514 645188592 905378045 461116394 880108121 229855395 992927483 30668975 625837490 569481190 169041762 67864522 602038692 632030568 854620401 902212983 146196120 420792648 727827133 862916880 629125968 229759746 210730070 448819351 636348531 549953146 591058969 62730324 679649947 977019971 535434605 268472216 945566708 367446691 9565194 380073026 305977440 659649313 701058351 482900894 876140612 290481443 527948443 908150908 346383435 371074132 601421579 890610723 24089621 225087708 292831520 607464189 855356243 427421522 547041819 770869845 445617004 816060945 465390192 844027429 771912502 474807700 107916970 439160899 203845556 221181571 207349813 583049329 776013413 978388883 942337220 665140277 278849754 462134422 375468981 244056457 22893843 551540453 398754286 867293730 996340292 485371318 985400132 945165848 254238553 261064114 311662638 179274450 691883794 945525930 112905054 45234437 235916471 170111658 674438701 152125588 842079493 699132127 255166079 774950182 525743497 220345014 721673309 828935055 565141556 138151900 272963500 173608369 58741295 232961537 255769209 3101327 733511096 953433415 134468263 625073713 546083584 74619305 372829124 416044796 927171220 863857376 735224965 315492955 230229300 522553747 467752060 793891830 969428715 655446427 541622245 501352230 955630215 508661804 606371940 570557077 634815077 806193353 667200767 496851559 686145420 762887014 395868351 874480226 794679981 108165144 369999769 79999666 732042061 67370211 185572671 384463812 35965391 408448168 77303283 380281077 283029357 418823376 416389810 482561737 477829175 336132335 782496938 999184604 348501366 476932703 364195106 901168407 423749849 448882280 34163016 358544671 657041213 982889150 853743518 759592582 487475526 491952045 251365600 570033858 464186477 299388727 18443655 92842615 744644065 144284641 235015265 181382205 971022642 176968408 963696341 477096877 74756828 770249748 104334970 653818760 437705970 627340116 413723201 654330755 555171161 866226813 333878973 260075692 643208343 915279450 562783687 617095885 741945899 882969161 809044119 48449496 978049361 312843853 110456537 829457753 163506438 444509513 747777508 525150441 379379767 824830110 530328236 392218520 141137295 946347723 434823289 497715184 603579864 244006158 500692534 577035225 226988590 134974827 265317551 745457999 508892615 523057718 405114295 18729459 273381820 781849237 441403661 197245275 328248939 667194543 108328431 249240549 944425723 424935775 51857532 32625264 349596062 880839346 658887422 103139401 127905987 103037798 558119910 255992943 304638581 602959880 646968414 426172254 345963809 350587719 313257420 457703189 136341317 672740824 917807914 36182333 961308069 981950465 459478380 431114925 575303297 54255755 447651073 979014673 79828816 86049179 366772873 898768053 390142776 34163113 883082261 207097560 8638848 881955369 667934882 956874516 627713125 777019122 376728478 127705764 993718405 109944674 655996306 397378776 3926232 333457267 322748362 782637469 239047701 365606980 543807343 738181800 240041502 877224813 219964270 479060350 495549711 27232217 194963712 51242185 496972557 513494986 83784938 617202712 352860575 81927457 591652314 343301952 382769636 844188561 65188906 117238977 449133737 20311472 953290059 332025001 50514483 435008425 505026111 916860182 916296003 236634482 273502168 342807238 179437660 862240238 491813027 285652711 830491510 937123623 83171198 445163273 679823838 105026898 430353404 370289106 828103068 984534923 699685657 463589085 953080124 933658728 199300113 617263383 167888157 865780376 857008547 371517993 724441676 394365165 761239758 614124599 410467442 605894199 578967390 517866678 364708253 625378937 215737363 306929330 476331837 605346511 970450030 431695534 269499505 726753237 520137787 363964362 866854293 535696819 747129697 905467512 696063073 729105193 232835924 849353759 825734163 275318995 232193215 589136217 428176321 815079278 537480188 114427169 394979091 523964306 890141010 264116661 245178510 373321369 289630630 563523280 8828600 46820444 640139092 843437214 560822994 151151106 70467505 473538645 68119902 470347010 568450365 883567722 271641165 288080336 535267123 396429336 924806849 384184812 181065235 404547413 890551686 771990427 202156743 604924090 487051140 489718450 262329784 763584405 545121042 513884528 964226314 620213677 137624425 469562388 629989041 396499688 564079452 45909588 653887269 239989960 252532583 10183978 720577698 556956502 258549724 79827593 228464997 288155628 407777180 470173764 10703944 952707895 618141450 275494986 865783575 700740466 957415299 397575535 410591292 399362384 544595259 607946980 359251691 711420964 777208695 52150185 754539518 259290156 289270630 437170172 696695122 76271901 359820348 372192037 279542023 374847524 352001377 469361943 552584411 346872046 835722011 980858951 813335545 277945217 241080482 878906343 997044571 547099006 972731398 368620963 904725335 334188437 20688262 289313881 137859229 66523255 456461979 931144403 263068496 117552668 60750579 332423874 232472753 108108156 774425113 895372557 137688535 43499615 320257914 681133025 718841534 816838606 361249974 671505877 90299025 437688870 36808453 380219367 772299171 967011474 125916456 644322174 400859209 907160762 30216716 248780155 948243433 828647859 100495638 823683438 946288896 898792906 731127279 692871479 743057138 22142798 218740447 615701646 983403883 285242630 463829686 773320086 342248740 721610494 207444213 393549517 454819149 93954854 878800026 181484527 974266238 38503444 804416215 575315035 664121851 405680013 16841862 350245521 604292689 125681186 314876358 349331864 109026862 642086655 814567473 764948154 164211238 906222958 765576994 477796003 628841604 195671699 774021513 72496447 892694252 416749215 559317456 430274940 788870831 430534365 929033583 693572819 185117615 693989670 264862829 871194572 466426431 613553420 27330264 717422657 251156407 405299953 874198870 6413193 925318506 857773924 931881224 105535781 430284752 780723278 731185018 577248924 977761312 312075593 841720643 472659621 150605067 800906637 152965905 377089387 347875511 781195086 719237211 237926562 567315358 463196980 525344087 661722432 125042533 525717531 970191536 649193821 421257945 403869346 245575830 82944964 848403698 543930401 975428223 188243065 710983249 207826739 536735660 234701432 634412793 661980981 476746005 477582943 245505369 884498018 634041528 919665568 643205988 838163258 738709771 662969522 122519412 782742719 846145114 880203588 584885594 52535451 995215678 335955632 859117901 606794568 443537625 191597544 638095662 895591624 932603977 541926611 490287212 959390533 628224591 761902225 275907192 827155946 69691250 871053640 36498214 92265467 852085787 389842525 932505236 242195785 613765258 192578071 917770661 508197285 954044430 960796901 332929362 38293072 849990570 754170990 234820535 246584621 200066658 844988436 990388202 998883042 579946957 391957750 800515576 598514293 316100119 73165813 27419850 240829969 548374521 692571131 966031114 275163980 229578697 713688205 719068648 841800874 336701169 454783083 823265777 53560662 179911291 532384984 182795608 237262200 545076731 612182064 502467672 830957196 690739086 371399122 875742729 590775936 375725923 376681467 51145460 615124480 889549463 565043407 671300471 327249001 189633375 439347831 147362217 73296252 568728943 129043828 240491321 717491 240815901 336299882 20627312 437311731 652936119 747315330 611908908 851127157 327333573 680543848 400517225 790663664 784472624 78643327 476792709 452065616 549795435 730787023 978689519 499415713 215663489 171675739 585127752 718759351 934145504 716875303 813282162 457751421 712316989 894015178 115450108 654375122 86991266 600287117 722924609 842720239 178600289 857298884 436566987 315889278 244939283 889654011 920402500 51130599 509314017 118151443 28311723 820218452 207380687 45418422 811951356 991884844 740725724 309271385 940174302 395648887 596726396 370848806 56431283 736334256 788453627 949061670 712362894 132644080 471889430 35341502 887449754 719648892 58114446 721770040 723818914 101359816 520086444 399910540 300517388 156150187 401851603 944057250 239465799 34354669 577883749 410603404 17409375 318449068 591465232 30264669 711852965 643176524 414631681 879469766 707816830 278296188 352591206 408359763 223687169 417641804 138947167 564145324 543791143 96926961 922759436 650006252 334153548 427922704 263840903 660939941 943763905 360949572 647541216 4990517 373181589 504809215 655926190 520023089 601306976 586691618 42431424 360400280 894426907 233393165 943242086 927054393 591034881 538620583 873045901 730145424 565559428 46755221 242147051 63631046 397379443 804823052 397354328 187627408 530454724 431194961 396314787 77337923 749168886 63167967 550495230 87510659 535938407 393034943 693678845 787776943 462559464 862312473 766235713 647426180 438433452 989947308 722793979 536142768 298809800 859616937 461624547 926121478 242382328 285269471 634955329 922077189 589031445 559613583 414539588 654628541 63607418 898258370 998426210 81263277 606212803 842960197 795796829 56548107 546517646 31381569 762115020 716067967 891725620 548687431 297635535 63150156 472986614 507224490 160587552 792469370 126231339 906967878 534546310 829549508 108619469 308713398 527551706 744801935 396154931 827942131 536947852 365245316 416705235 982848751 762844369 266131547 325481375 768911892 230993000 447679995 186263334 709577292 839654994 995591417 322521225 243976622 781948075 579985497 264217554 455866214 783237638 496420097 553380049 269373255 206493277 56042263 546093369 819827976 29256086 917905316 629079290 646600014 611990723 472824166 423004640 647867667 936442237 550032584 354218312 444873213 476379252 949440157 425558781 643212687 617499278 610816258 129409754 537992185 272594480 582701894 498426349 959407503 240128485 517851301 288299497 929664338 339128454 190677031 408595942 497839963 403177810 115506902 363943513 74102130 935991763 300098146 672368337 613799106 170299398 834802138 235851961 852700026 241516777 337340126 126110517 195637927 59384959 179568220 166368388 746808100 707689144 726100788 590267946 234303299 411100532 305854884 143825296 172268994 583816243 422081172 338655119 809573864 519287775 470739128 293789879 771457353 930027782 585972497 992258328 332954510 286555668 642836935 361639834 717462069 374854139 846603743 39846111 172432157 218068487 120766779 812253264 128011312 255442554 5802941 21282044 243461719 495044170 166188930 800450150 215987171 676727995 239436816 286093672 600356951 695930310 326562474 709053324 169570287 577896204 844134603 306714617 915746489 985743120 434668196 589039479 344406694 890504945 79950488 657230639 249571937 261315876 743849894 356834848 777706052 633656589 377843057 575227593 118583917 954166585 9666879 581683189 382049630 804647625 853801367 202128502 583621855 529368967 824204134 983221844 832504179 151012133 309059757 105069588 746133245 89764708 312733728 349038700 399294320 722257878 532237488 997904388 246929501 719535063 828584546 584417771 271751003 969440938 406208580 962635772 342808980 706034454 445152775 316470386 951001102 987814124 259131123 217369849 719610446 26098185 928954524 704749308 118177149 597649185 798080293 214884168 818201942 471418548 192614545 121427689 263180167 184632965 953360198 3915432 1426497 697381342 533394956 444718449 303588708 656857017 323582904 165093277 472258117 674595316 167511225 991350963 710584381 862221683 431772522 931741681 41991714 611325358 14847442 193013615 51660596 364183195 349133944 762836393 415459541 107009283 24337271 232331251 874276827 150532659 639439345 441242704 397311366 506912089 826899428 439954266 621909806 19156722 930584983 355253114 819854971 452579643 822912886 410428187 969668865 935811678 41787297 814463083 847870493 827939224 498063799 615803881 625601111 774866749 661436306 734954908 871996137 592250742 430330242 458961739 184735227 103420339 519991541 446790810 136045397 809231627 350747038 921879424 213316301 53243293 247564542 422522434 595109107 683334268 973257798 275366123 467271545 998251229 978077901 528714884 380324136 464857983 910845984 815069311 272685611 113166380 810206493 73689118 37174542 699129528 774748530 956328726 63238735 796222168 516916204 590131193 658356281 861899788 592962540 19851009 37582809 976191189 372882976 659036904 305734041 341827055 104237756 353285086 244348054 517917133 613275959 769063241 229961423 572832715 170805655 536662156 604052106 540909207 67501586 830743457 644286770 475461578 676643822 905957920 167171585 343240137 941811189 13904459 833798967 161498006 85830735 341175731 861521005 245260676 350639605 735619343 697434362 314407397 992611734 652020486 855184734 945000000 874874845 741062930 877037373 311075787 921027145 275103485 542400839 812848460 783477418 305903599 108986681 413928232 672970211 268629213 505670961 927602527 345278516 777247251 181811915 852913185 378505280 730538100 510470879 888974352 295258569 707308448 367590188 777656974 611791495 362902120 785827064 200644450 179931784 786806635 337044591 837283278 18344093 557777976 338258116 801766634 379861839 562999927 385121834 442965941 738043038 320250393 641384617 793677446 70671627 398686436 36636619 910070309 538153991 708237559 726672566 497311179 244901514 249841237 657382086 962897720 487120292 354946676 928132405 225618345 173511240 808723855 472731641 694379269 931882106 461895245 536821523 386201239 644035518 451960800 150952453 703493738 432169062 844038688 535177588 647508521 374631698 286923250 734622132 330772672 95697755 785921638 362875230 209097850 728110007 310009281 637755752 159121861 663988829 224399901 687630088 220845778 970837280 173133325 599909591 50713726 88449223 587377778 497162054 766514972 517479673 841252433 923907013 801547553 523644414 899118232 988939524 857482313 558884785 11369593 761285218 774072258 547728227 668753543 906161266 734231 464141444 447278350 358245437 314788939 271529648 875111863 852672552 559474879 821630646 272654172 930176893 789078627 549664828 846755278 188902605 83269368 794363765 924765560 501081902 459785077 436032154 912164311 582483832 719956250 897638002 304252402 418809564 141486417 99729618 557511022 412071496 402679092 340286640 691109401 745094883 316111575 997020474 651091830 665680762 453181183 545004434 467499154 92017779 928153769 663696245 955197104 589958912 775275585 383602793 449215252 808847105 227119730 108363429 137080695 801064983 936627157 29346872 841510158 700562992 235105641 900993932 643112543 755715598 713814140 315687426 378824729 875890015 259851815 976904388 388690288 372489109 88900903 58271965 146153866 958406349 110166210 668276615 395559075 436971477 51151117 636079842 627475817 554524670 284205271 464116455 270926132 709357910 486034139 816965571 794853611 863095240 978312934 554994642 622857102 558410350 517629945 783238637 476152811 139049196 576949998 539166908 174341471 540242015 332892581 264280970 577641547 671266892 379237216 655124775 972419002 366711992 124845705 94404672 448350562 526624351 545526249 586787576 578321037 733792484 144796610 363290471 684714389 364184483 608635264 62339967 626039888 198625237 806314314 929731019 214297151 304415199 541332063 315181392 321880191 450914509 516610409 819688907 827589665 79670026 597234796 766108940 976481490 877498635 531053537 162853720 755462006 983650657 508509690 651799017 950206507 199475483 542424981 253525506 537379843 764440832 596913927 816209228 420719516 763788916 110360868 236033274 12880315 295216447 593235304 929525961 454104911 869849742 376685873 979644327 17648429 611689096 578251646 312300957 695598777 774501446 395303140 274399333 194429056 996200835 722807719 925969474 375330871 309359476 79867031 446960619 214493097 250972700 841730899 263079808 613270150 623411649 968614588 349344785 912680308 576302070 432023510 943099005 361470720 375337569 552329565 121912568 108394668 651058465 619459281 301117982 315058573 206897268 286113890 524837315 145059336 71794517 432652181 7237233 737000804 259924928 944629062 865784092 477510534 160185517 364912734 567470575 594374875 950850553 734045067 478224675 188201259 899339307 480057779 300874382 937853856 525644731 730864000 383943912 579381548 124846378 85397386 578560383 378650232 13272002 992281081 890980998 957097471 299058700 982375632 789851306 941028569 685132081 47815913 406021554 356610282 919417235 596525968 471058524 495800684 727578352 761202791 637055981 855694671 389016690 448182490 976998217 199226388 995115163 849370381 797135104 373797632 750893392 691663105 672414166 308672492 181236051 292360385 240877526 59907473 629290257 63123851 52028821 52335238 970043093 150329491 496817738 906581533 188454678 156980905 581015649 262098535 79152952 413301881 209626912 282539695 734936203 169763432 692357087 620487189 341944393 917382341 968615153 231057050 786309416 244742974 8094273 52949998 749975868 619819547 397636170 363268463 781660934 722729725 76011590 547314777 518169336 958690796 247650008 607250837 174166799 950008757 934658409 493033168 892198488 203332909 482473327 469949091 945386538 703971082 160320378 871406111 259422330 142960077 923357602 932986371 280160239 155569776 364226674 273014329 743841359 256993383 708576356 572901354 266728127 37415156 282045869 781360391 566929208 207289615 495798813 186811427 76072806 413156170 155156921 497554149 609692467 894820373 224671533 554987383 851533567 936368832 234383074 963005504 766306166 315778809 142621548 482098543 816685350 86210263 80910285 304585945 140668675 436725425 903121400 154923086 672356857 876883445 169592192 397516908 738763918 215594165 205924156 697602861 506193160 197158776 495700792 612433280 656729978 343728358 438776205 781020032 63199436 777611666 619319301 266230784 314439775 699500795 436138389 989328169 231669922 173773344 477668468 35607467 772485647 440107018 31581667 215510738 763238669 366796652 960693802 852562235 368114179 208211469 48407855 718478423 95152902 877906499 253567007 873312206 899271518 884354592 82293692 7915172 126245885 7383203 10257843 27766244 635495122 866435366 879804540 503979691 801811074 259593545 572225238 821575359 108906649 365747795 727542015 225342519 338816732 82893192 689962189 752032994 261329536 936718597 590782859 203649209 806839679 719015499 692772546 26520009 619818349 614752132 317197963 618807365 478461330 515865452 967655472 868751493 823700613 939493422 69278715 187235689 673345433 87372255 820618442 209256254 780854729 242252881 259850195 932130650 572682773 534659221 909992679 448293830 296505022 112768088 609859860 557418723 340868924 942635973 208703121 302256559 573419571 506551632 29241475 822285379 441775926 361038785 465624866 969146034 880042985 337565255 908521062 561611250 136866937 895788201 820550294 776251746 438581475 863546146 34922633 379332435 542740123 706951542 723697881 69253334 877685435 805812387 707277104 114706028 415626542 931618004 460801476 594407297 482212325 367887691 582910411 801825265 302564883 871086072 225595598 867618252 506332129 44969454 404449843 300166511 798606586 392192652 484336182 116064143 301737732 884540410 960149726 138999585 392124042 853375980 923480385 762803427 387053778 394858158 298229973 998336141 61032620 595660404 438345724 347544317 408715453 939539867 95744497 803787772 321392183 515710915 432952222 269044876 252503305 135246747 619109212 185975077 540691336 837041129 577900700 388352541 592148949 462286478 931636926 368622554 637066557 256052229 925248421 428550013 381323558 532056800 349077455 59280046 257867178 192511599 973097314 57615852 283065257 373957958 933453725 861909514 99338340 201872869 702820732 846817077 116136239 927150600 252429652 340314695 381723987 664725849 571735975 239170494 562199253 308645701 63590222 929287910 48317102 429031895 351835207 555267487 657107369 627322023 886725729 802093656 174530479 975255003 670756932 798542425 944132592 741011888 39914613 586229239 875884710 315852485 805832901 221413747 916935134 581493479 512781983 575654963 304487278 724521621 563984904 541077752 947623868 635438534 643646712 207703401 871158687 391145873 922662235 810590951 370658495 576286854 624379629 258040085 551262380 675751178 192806209 758976002 303895427 968126006 47207294 418941165 636031778 3486941 19872888 130631422 880638134 614637095 755502668 606615669 834921245 488715861 329792602 355049316 186888744 142537060 917690142 844427688 621822835 866168178 929052554 808598238 994003327 23512960 966626664 362090417 320064531 440366067 621967461 128614202 788587796 567777158 353106772 712648941 794773475 5843542 908746449 288676017 721288502 462809340 913508443 14238095 29267416 122596228 599505551 740077015 651923804 571795432 267865871 129752824 15814964 906957479 823804738 933844984 69713544 971174771 770622196 959397845 106190124 897976663 428335998 599828483 871704825 691719185 294284081 976166900 703520097 899927313 265990349 970982206 8904694 951750301 927066583 357623164 234553468 143850275 991947184 220892998 317322085 182723999 504062410 330576519 646669203 877325944 541233973 932641640 112508185 5833381 617287942 122713039 38957283 935804865 664586570 637740343 214924634 274700633 559336556 368722829 792270306 647734142 713179786 944219059 558991023 49104607 496498013 773198316 158820921 762255541 642102593 665052864 531246636 572366985 117250285 764922746 254444469 449563832 294158275 557064556 564941132 100270787 164981639 456591847 401078777 835139020 407000616 985310993 354102677 340955301 774532166 12071122 811160982 505142714 530026128 594401814 559486893 888111287 33271748 853986446 379644830 861831045 667518340 360581128 505890348 108609216 278951165 269897665 309935970 98635091 102981935 915112875 362761838 125963388 482567129 638124294 655705549 993969233 577256943 226433592 57461643 93759466 794906834 730648222 121595174 58471528 854102864 249668052 307266777 401173134 231798302 485329994 400394190 117459238 179817431 950001422 831534981 366943557 94290281 412521336 511794855 94356465 474566304 236053278 983154266 885851265 869899316 346294705 26045992 807941123 212073334 718588599 604697835 151332216 162200969 305937879 64382498 366430710 161334582 369034359 557875236 27353766 366278311 768219642 6664061 38450418 874709987 365786784 268131777 373087304 995606582 648342889 230473235 466334291 408726439 748793611 97396760 780688893 341183975 593877259 530367367 584483006 213425347 435283396 721521908 819616971 667552599 811722278 496353946 477331229 415770386 635694373 416085702 270186867 390924193 605532955 997810142 215997871 820322320 599784128 347894840 276480953 495834030 367965872 570857265 655384836 399138649 291134796 280539353 689072630 134541631 493136306 367716171 67728366 202867626 448049350 443008568 107779151 707036071 595375365 453390762 152050849 685600197 424812292 53229480 313697604 1544872 167466877 539405577 768358654 64937185 578583808 153145104 221158505 26190649 445401242 32773613 602795177 276224247 792683961 407734919 401027063 852753376 287172913 478225394 739917648 892074318 18091741 215831000 290606493 685806279 269474557 98510524 477010217 321119828 36236160 874017866 910739772 426703525 328533584 238250299 482672952 751884531 55561386 715717681 891805993 577962919 644348450 729145159 539871716 424457509 474635977 347489461 919917069 574728732 87288905 131908228 666969915 779776848 25403565 866515058 348911727 379456892 455319245 764572644 282488907 605476367 330406823 142561466 306446266 555561265 642330722 771435847 305195254 142828992 813311269 650003097 596198794 982301516 34466702 986332865 31589034 347127762 18394402 113521648 110097044 868303611 388924662 780777671 789427992 723705530 216631642 332571000 362896657 395428950 352609793 350055436 501044604 836479886 538081408 767234943 894482789 804911303 392368238 355547363 326891069 185897820 808638426 725764699 848488883 391085224 590051302 858612842 675392011 891258904 907001750 136886862 728792326 909414454 897221776 313267674 593729266 769288578 331429270 522069278 997060599 509285066 299320924 395708752 107863293 191277016 872435612 970437742 801980078 598670924 634978632 849967533 173030830 807437705 798849875 88178386 439892793 938610816 882513531 754674699 382399120 733425634 875287563 519230699 306038221 4775036 577528460 86296284 981478295 190076760 298680753 696148278 875963571 359059677 741975836 889348133 630535853 763709475 236235688 152657450 705178656 443465043 525812489 746525961 892113519 731035900 895687396 958011633 578436440 728847895 926921208 250960030 767988735 194773145 97160284 233241752 262401801 928226321 749585799 40096063 499399021 318347988 882932704 802284652 287122679 251707967 689300107 290660068 280828978 78418003 922107892 839079548 254812784 665721822 551760306 8456555 812619187 932255750 92211473 142871378 362470382 227408012 175941344 300554316 221679532 841535602 714144708 530180141 524264483 944406710 957249635 661967761 508469325 254115042 744502592 983400446 800353088 462373875 134750303 529937060 162986279 40493619 58411330 697880417 25605900 150311656 90003927 300838027 198935485 245630789 893745335 88101252 165212579 581583514 823975688 814867984 523747768 505566090 631910129 296707855 179841863 417584432 148404929 963425053 167471276 367492650 342134349 964136032 256518343 622128765 253717530 203387252 65087091 532206938 991229711 119421301 681408185 792005758 871179775 258059167 311370956 201834458 424631254 680357420 749183049 721272980 427265834 718330532 215862629 55456 612994740 692699658 174576755 221537942 602239000 303335542 87600063 58980809 810522961 157061044 250906192 912124850 491383935 337848803 142910870 654756770 669280939 576615496 676689453 242024636 178217431 744988756 783474450 224343969 594766721 60987484 924650035 942288221 391086551 139944808 204056414 562284871 286908732 911381053 695744295 438573377 562756591 647822123 250355294 288274952 619994182 427898880 339587060 798474777 811219216 895594049 531129333 462022999 989521146 735563292 244004815 475757707 596717191 94264913 896309208 373575009 61934211 24222816 757714283 84917701 733580592 708738558 595190343 6704888 105326594 546528806 364692806 611202102 250547477 727891161 161755902 121805827 545525616 928562063 995202779 827160368 372635819 735893005 194168853 805167289 886309200 561804483 101153274 327987753 326530954 706598534 625397945 145575765 985208326 608153398 328865984 154192327 868328356 173346572 337078060 862003052 932377463 811994607 267111033 459441001 807196812 538836956 563565211 989164543 441016609 981229043 660613899 245057095 927812167 596346667 6844059 392912442 124056899 13038576 904089605 292751296 798048407 889285527 192684753 55964907 48899859 761682488 366134128 710441299 284314035 774622721 81630395 785431047 490587953 617584281 392243867 918631270 538500216 264955974 483736088 163121894 308453288 361829121 702646057 914128802 365663330 23743856 558804760 156066992 994727360 893883528 582211461 309104132 221345047 709863531 47598505 954830611 645259255 329097387 241645701 614475357 385109750 640526190 132234769 985799664 433441693 559478655 912411846 472447395 184271458 151378788 910531243 911954134 400882201 801875650 953213596 967431029 95594879 720828938 623732151 294650981 60427311 109441679 841178642 451971537 786591618 567575884 575779250 819794040 441087104 54674215 880400263 702304355 19911013 389369692 281065702 617930207 639120333 452600263 41445660 535131851 213284221 360594379 100653432 136534617 93159867 516274852 610093524 692775711 912248736 276995965 518689216 551786434 677343436 146018174 66749330 514547701 363071860 641883467 144199561 385653786 851964251 818880719 973787606 871524139 134589782 214402433 252834065 332714544 998007145 6860520 472644588 298643006 151458968 216625387 681273977 353199225 214128160 53407337 584635710 573575497 914396147 154728367 412573621 600096937 104983941 821445092 531627619 299343777 238819627 691041230 400290831 988203740 958887505 854016118 966892156 731074356 993440729 187360899 958886135 344419602 795619385 201854834 997643483 757847567 808299138 457543264 550037903 296388019 930005164 912927934 260292463 274077187 541365638 727299815 578108271 839897537 98824554 159595307 899649728 696086990 78753762 904193764 676150890 62640161 415649939 228694083 359365155 223305784 611062643 95350045 23599312 421914916 973458185 151333667 784005944 393911139 854810424 30997432 333935083 11084569 915013107 750466547 249794841 574089852 364638167 146031795 265294328 787601681 448146615 174352248 116291149 683650009 317231859 134856724 953719392 448646595 440566380 608916377 13732445 484141769 699309870 170872140 610649663 433450531 801635113 708696498 880112745 91829518 240652662 668474996 771442421 300841447 471454003 799928072 357190148 146102209 778834373 808649954 865581843 5455517 286593157 619823784 177388654 930313243 906842815 911708036 521605250 887396595 528336199 950935861 767422776 249725424 487797629 2359871 873342981 538312942 975428950 635789534 724111925 532891904 584021399 754339700 169337941 18870357 275668124 720944360 869866940 841797394 782329867 143109030 259752133 434914051 173969903 794629168 825529423 321191955 124836810 652059980 807735847 90723526 770005131 172495891 575541836 37063399 985069265 588010718 522468851 138962927 614328530 777384581 369514411 965787470 122449185 104587716 80236303 710994644 835604441 989217739 632023759 430933252 735095468 107528495 172629201 77183567 340740062 340228758 199759089 717512233 335373237 502025959 98739824 39889430 86543532 706438156 866618029 536429056 297674409 407709127 636232065 212291968 486200262 238381175 275125741 331180289 561340969 464645843 973254480 932422880 231870732 883214436 492933070 981293128 281172161 698947940 960717475 160604091 595040488 911896918 431951398 406783619 520953130 954542490 677490418 27854310 349216392 623112703 938695788 859002644 956504443 981288161 811762645 352573229 745219136 428031401 851143784 797008556 485338897 992662711 453436628 335085659 522580041 657217192 776365437 755765965 330537698 149916841 5201436 445721872 372885148 740758101 206661347 240909479 137695499 557016956 215195403 465253121 143856848 424100154 836443693 561107172 897810404 369355047 827299987 880091735 606262078 321631337 367376940 659859089 268557312 888066330 329380164 680496462 683037186 201623311 603967075 621818376 677370005 994430190 958371969 526678007 382887184 986577230 715329999 840567376 821001173 794265475 773900608 475429652 500067823 86006327 95146275 162314653 944259730 983785966 721590678 947489945 781242338 234823120 304093304 732999456 291083092 690636085 454166907 871093919 327499783 446946914 832492636 818163745 550390728 271863774 790745183 928342336 453267898 12587777 346745957 614331677 297227145 709702952 270670677 270521997 997452829 132813772 920810050 170566172 465909053 426982509 866762408 142438403 111474895 893666165 712953187 986774325 636603103 705290697 837904230 923453427 240008987 595438937 483636119 116744126 729415034 583005334 152590580 233554671 889295514 578207120 564681108 194184395 598372628 827152561 177277917 121705492 526269343 561041577 725402381 628106388 562712982 654633452 197889275 647409665 62049746 153216363 678491428 550347885 303840828 374410313 657464436 378848650 58904689 848473198 293309251 312953322 76484148 132305959 353717435 523582388 534263826 641810052 392681813 481438307 216630224 791495399 82779106 659398001 547559074 550997485 84153023 350760568 185085155 860646372 274717713 7710856 533075558 828166546 122908005 672960535 59924914 641926700 384683572 844166119 430313848 828724614 702915751 3655047 173263993 123809615 607298706 947355028 87921723 619864457 155493681 229856453 922403174 816899729 744090570 427709674 82822782 37753527 589835775 523242809 541838456 28406819 614756021 167715652 825668946 948071573 784312430 346242029 408699333 206785021 843563362 952206309 410426660 630303105 258735832 768740941 385929476 426583433 636152051 141976121 670230402 11096355 546664259 374144741 918952893 343181346 743183671 596040005 910535682 43284544 632486516 471097086 763012518 679315662 530113834 647605428 583875768 846242506 64968293 585561455 712265800 247950958 542367437 381764879 159095875 371710605 591869530 865510648 100146329 103932458 359364433 809359330 417679008 119227381 163640370 619256493 296310637 967538156 831997224 987608876 433379544 835631688 179190015 168558451 472799698 406510499 319709903 450598090 105000732 107200141 861115180 176182672 243033864 230842793 457225464 734879301 730002223 549189533 845579639 943252594 85436993 49742208 414925967 174504515 341411134 232540340 960735780 175849706 224101682 476395609 914614710 293510054 320045380 238007459 104331125 833260396 128165461 243418805 96189549 636453814 580669898 798353354 45063131 948349450 135402625 365950620 749270662 417206613 180161211 474393976 446098608 660633264 589934518 646262055 693202716 555863673 803889101 976796788 513262757 777675251 900645174 347215652 492109068 891786913 150177066 983755350 54231585 787589577 409811380 148368142 738671996 701635307 552869104 424256714 255992378 674603900 915489267 213933775 554622194 762629669 406362293 311376418 186747666 285162506 871959158 777151941 933084528 663342530 978206675 213508546 281956179 805392519 169394541 228054397 124721624 521882714 28352626 284991966 432765098 14598595 147925689 984906589 173262601 267698923 940036807 277707172 149181107 106035482 957245830 646156566 270106399 863470034 451026303 4576500 825420378 401250065 840373949 273528500 523368150 97521123 231813153 69450878 575397025 385331754 685193392 404533306 385512185 615447178 497456260 202238540 861812075 932351514 262013435 1648328 579486797 789486620 557456540 324351064 300156318 576677274 940634144 625498815 149792528 345006234 440654179 373243918 825852438 104533829 439393050 398467882 607694965 598998082 46446723 85886905 136748250 805788211 275546367 472146806 839068912 183072096 636808315 991810734 135428262 63045052 573804041 456751114 974773600 871329109 934595796 77109233 893165410 915752712 956741940 865788714 978403942 354678416 708435718 638204991 769357849 129327789 218670783 823649615 922144668 369879034 439869139 770041838 604003242 224745954 798123811 494309731 286692353 366944551 522815004 179793014 869676192 697449474 562621954 493104112 780728708 781811451 70273313 277674352 546271985 38930708 856921936 117193938 679790953 657910742 745993926 575899466 435358083 568325577 341059706 117886713 118410937 60256850 809842506 149488544 990538228 893134839 793769682 96776362 535694151 450544598 682036852 764828091 199251267 638186757 652717257 73584691 3575069 230003941 361069388 861088703 820026085 503002047 3436260 153676510 586329518 318479319 865181777 921736391 286606363 534087447 63922675 352190700 261590846 810538520 936757316 549723522 65205691 747911073 355633228 532780915 633748178 190760740 486307693 44537687 293883645 277450881 257195710 127905689 1456828 717766659 612500187 44249797 567913849 199966595 446421539 86157254 652782077 937675271 206422676 262910679 450843449 351289823 361827247 706977115 381625016 895898096 714978571 117931666 113948833 452056232 531209664 528104643 482483487 857499066 922060563 324346594 560417397 79751480 310115146 960998343 314563723 602686076 723622218 979672442 696979047 484294601 973866366 80207349 319443343 181188543 941203259 567500837 472860605 44370111 328237869 526936991 100706754 672460038 144897619 739695343 386275436 937823861 539311647 372147981 966355764 102791959 228813294 632750360 197476166 687368030 491077580 446777089 961379505 522614549 987220204 258443655 866773030 744954276 145551425 34733388 726278233 712225519 952387430 374719049 918569475 412184708 696137211 372231301 187914226 338117493 432652441 15407887 660113470 977582413 982186650 634120124 379047555 573257263 639532736 693694029 854606238 246007151 844978599 466252804 340763760 625461759 807053253 421849008 331182573 163459986 754274222 717661252 485858944 983830453 618277820 681133628 891418924 540511049 448521012 503454480 751449297 170454402 751722025 837175699 21415999 113347928 878691941 721088477 755930034 991951768 202698147 36538512 87550239 573576975 70248380 937724158 728508536 75628318 369521730 643117465 310291316 972673684 26467782 861502946 382869860 211119348 129071301 679893271 855274745 224192016 835912352 41216147 921247443 726383970 345246175 302386041 188387813 460653354 942205573 87612883 576901217 949637815 674637576 878037485 563768540 568120521 708386456 368405432 168401415 172546092 816723334 706052214 222643162 740905490 859354807 849371067 94293321 773394070 864485871 140175063 375205407 236429236 92929921 415236354 482706672 775637140 277407347 865934543 808108635 600934102 449300612 168388510 825520978 330552215 913500361 332201533 354451280 141155426 52455176 511959490 961123876 436155062 735971263 593109867 12452150 416603554 615772443 642620839 483703624 468012394 298237227 629850989 516379020 138811359 692610610 622565689 16045091 690182923 44622977 144424566 536663082 396873439 540311999 619923397 1259353 106411807 962404005 742334101 764570981 31253110 393635664 215138272 331350073 99149434 441189302 774024277 314630873 780074791 981869169 60248095 321140910 951770409 305904906 13337186 619052251 82438399 400425388 452531733 793053174 482208557 799204886 928245171 897375968 554841282 591972511 915454180 332348100 364980321 602345435 787056795 237899969 936354159 410465529 558470867 336975142 943436385 113735039 77272576 300093780 508443009 529799094 724812000 578320122 49471166 898416661 562173378 790580313 247770540 70942001 745935373 231523663 802424480 518524474 393184668 381357073 619202324 382925845 434634272 280483012 792194044 342536071 11841953 393791100 916181073 33336936 838654662 685000520 618721351 679610794 580004288 909592471 550867184 588311304 904451140 995253559 400087489 392628715 889257827 219870540 31663248 490177830 441153881 345578769 478029798 251265309 405996601 68365936 612823637 341237493 8258295 657338883 62425322 511768890 130142198 125414544 571018026 941538832 60612859 818253898 727350981 585489463 678174397 193447557 179533883 789963363 905413441 173426005 457369492 679319691 648084091 516253354 404692577 582008774 159598708 9778065 467582870 910190469 75318567 153203755 931865771 706997935 322006018 32688436 788172796 180511838 574140479 622522308 263580229 586995435 929574586 987523887 871558233 627806396 957263506 568647696 193974389 193261033 419919079 906922011 91260690 646180510 989417726 847876076 285882069 708627607 567912717 481474838 933242145 678537325 583303521 920203738 22965557 918779783 756272437 221754512 527479337 320139781 16575308 474969180 289913131 639380690 315253712 286501826 444237584 545967311 853316812 886004261 78959548 174308502 610021547 666901468 142479570 585479026 614366334 879409792 430984536 34733637 607300120 395070148 542104914 649945007 438707415 384859254 937721472 282493729 385336470 900817506 618766101 17306426 611344686 558149300 857929200 971341381 569073959 683675927 877841835 872163679 170316812 901921514 713179160 330007891 582512942 932039769 515891589 691903610 502905541 892530321 176144785 499259868 235408906 684462472 541160445 545613068 403305520 888628303 886966202 286699780 151891102 116476117 633942753 529790508 498691058 378693030 346933095 476995765 773300703 253405723 709395516 933173543 250520622 14249360 797306993 957688854 679917440 393341078 949733179 462141658 698157886 386004532 969626018 189327457 266240648 815375203 596822046 292775689 647125639 574371422 277786450 353471854 295529575 810882720 811843909 189774335 603717095 658263703 706331210 212251286 266977176 801936850 177283668 176808032 949774331 545530781 670907237 873478888 453419924 808946494 397109868 806292158 246289296 827258884 478748559 772045700 985430331 178948535 102779080 661440910 582584699 461257398 989189721 96211243 305745658 96034003 83379047 277929039 920822832 44610164 796233205 239845000 109530345 854428153 132287606 448951528 158295340 187533544 912653035 578235207 288356300 856593951 426359032 685910604 404802849 981354072 300404549 762009709 482370811 486844082 222801996 299016381 497360616 434641736 17025740 235365233 19623747 815232762 33548676 534663313 373979233 520862734 809366948 221047631 117561887 579459030 5505164 857277619 103837514 214884060 220263414 274777645 156342170 571704799 975526197 354145352 180746169 190470881 570853499 153614620 879848567 548336442 88090922 695879968 547878064 911968818 702565513 377513213 698888929 558954285 532078811 81803159 998871929 398303896 991979648 738761254 136522066 442539382 16363872 226237507 379279194 652336364 478293461 160211945 174226397 651549437 861106669 750410492 592460752 141790578 97222807 149476844 210715898 263636344 756294544 524545327 826484121 877273892 508086562 574869216 166490446 991506003 584395200 398231179 581759635 683622222 280921297 889525190 315099149 844829161 697050102 442052292 387719178 301267861 252102394 731984070 993158775 431344007 444460376 938385834 884490653 211742493 28030674 174399704 335127648 740491688 751733270 818852479 360924372 809350732 802989645 744093933 840646366 471814858 696409262 167202143 13073757 997990252 296586070 357676946 280943489 15407694 109328836 343724652 926169286 465348140 136154542 576464566 620318466 118963748 776004846 421546451 486208811 547294686 460383546 309387322 370701335 557306330 857808129 285180986 580027571 946365026 331468461 474977112 69054584 199268723 519089773 559435358 855995462 709718988 926114248 823241006 345799541 113120455 497947059 349293245 847085022 623630827 245094659 684522607 715438032 249589909 791365324 708332732 598508822 222640618 342939584 564788422 911652752 787336811 749402557 274321419 903909579 222638256 828559477 294579433 977821085 820151042 238432737 614535785 523211355 835453189 872434592 675909919 476800648 759551447 585331599 362693975 457146537 722140955 882863619 990737760 490538051 378239734 986508235 384258080 750816951 56286644 411378555 373076867 912470786 428808817 920629553 86558886 174944871 403775397 295954674 568059975 489383404 69388521 498784949 734140605 663146124 887121731 545100868 622794804 437120148 577862231 839473380 21760602 580803214 402769580 442118800 729822537 551903736 54788862 341863792 768903118 907641002 77030290 254757942 692709364 721254035 86885247 984072882 568874326 131324702 856084955 702909877 717415964 164411002 4558276 243764297 285310253 887104149 181249426 843781090 598727784 860961139 408097209 859066319 66047615 607748967 473943476 864787650 536349645 74259572 159689257 263785411 442355553 248547940 487566781 758646795 856719947 439042632 897750424 619638607 895759122 925678287 716590058 435943567 149703556 692593931 31103713 342224695 640180919 656589049 185873241 656353205 951058969 935203027 294088192 449125766 250084323 460005964 689700095 835991750 583295806 805456793 175268479 954279676 970227301 535001571 186843169 817657996 754557813 602376661 478104442 174618776 500445032 404314017 910034803 513963773 695085521 36010265 403848153 575917227 188743499 609399522 281105812 168641731 758084798 31282111 143648448 542111898 703028276 282786308 114889510 977428882 705478199 962623744 55825787 36133429 438879027 721431497 913048910 470564758 600633034 652546803 873968308 317875328 206389020 53727651 244760700 263741111 227629098 295514580 872725694 205597217 26859493 645783264 622376813 727354559 705511436 833531543 431651062 929771421 984823514 634759975 188930907 31379484 549847226 501005730 126238825 335649017 888627757 544933511 748862845 627235229 590514634 996780444 966320203 983767731 471629074 339635553 442303274 965695805 800155699 652210033 382515077 288144280 901947111 720157277 314326027 73982689 507070339 302619468 342031787 141568840 206435862 932383173 546059271 228596871 564934649 911535113 657534504 621403660 639102799 300798493 191663472 995459541 231386067 448262847 105201805 678095139 78867660 818677200 19470153 680961130 140673198 31919610 442250445 147621763 948584279 335197107 673849607 142090474 724467710 857261254 522764261 775229687 782156787 526054086 201373580 792343278 675094495 539505437 945773701 87319325 535086983 226987596 71441131 365545272 312524634 320491933 204453319 249646040 701629289 5727455 681353665 502458492 568851066 880800412 459725945 585688743 924910857 870356213 208600044 605325869 456906494 620095206 754183840 176814893 36438156 235052373 218824029 861304948 400292075 736082116 443022024 764118546 197120308 861671111 97962504 915171554 215788475 261717310 579255986 703825346 283854498 380240715 926018753 439026326 242612863 513154915 486997589 227536685 313226070 828556993 639246361 652205341 367808519 457466914 153220007 766965197 364434716 44022988 614308132 49629752 321324303 170222514 255846813 388176272 195704931 448646318 438391992 938955681 832533209 114746833 577703045 124239771 778655705 325946375 946757801 883386657 186814767 295313838 728197495 970748053 574330020 280052069 971545541 804659343 560786815 665117624 53391097 950953246 115871919 492879461 565166970 39599973 922131799 984710038 858347251 973485384 754234925 290243088 988299935 601666180 606524310 335864000 60249791 601711129 213255093 262432279 404708317 65802959 618427450 785023114 496468358 332168015 326240030 373019017 767779567 711491309 627815795 835748173 639036840 574688373 675773313 939453075 502418025 235649980 811997532 604910566 319864229 418596395 321827486 657467188 159509296 141924732 394085038 485714750 939559892 829332260 657573731 867894730 818603959 202765179 80724889 382625070 324870638 606793169 855145251 523262616 638361204 324361648 422731313 493783571 517991954 705771492 391219069 532324389 885274345 406164004 615261314 114777718 492749744 284378133 30603632 163504996 991988813 877289663 874853549 775897857 676371780 414279078 862266954 912979242 775776933 2965384 303827017 960029171 349909254 445982856 747912766 717453336 272726782 906143546 136475535 153517746 152844143 395779342 233106734 465090827 483118670 378131492 124929539 955913235 416772352 69000497 74655177 502085471 1618033 951245444 235465471 69576833 47214149 570736667 963957805 108216480 760176490 558097938 341055683 321521671 976451360 288027479 590613230 891711783 219851030 990300878 419705629 120339870 250272313 674948990 353440617 272854997 183164748 226538343 629937493 795560805 755524661 797275888 666182002 942508516 772552460 433249852 552480284 608575401 755854912 405595554 268766250 103435033 351121643 337003291 500076079 258863565 22839438 598807987 622190218 821896573 565164622 651727858 800370628 449542297 621776267 820904666 928137084 156296425 161048953 175150466 865783843 257291253 184365388 80581204 585588690 637755540 221925060 105441494 274646366 731244006 534998217 604572475 314043031 251959227 335598530 259931322 217913841 904221864 634059549 318944763 651401333 258993332 9120736 408250959 118771208 290114277 924370177 575852129 928850002 254143938 909923472 575912980 371767407 169784347 849339877 32424 314822808 285463852 458781675 879139812 199153155 170961710 64927987 492050462 898063861 627864921 200096611 470741203 96610675 547886983 642824474 153379312 524487795 56138599 999775187 761108082 121003779 16802970 285721478 302697049 772204192 230900768 62835965 155343011 799946574 750970462 268437984 267894804 5013715 191166211 472761471 464408376 700088239 150698960 103996814 72931747 548333317 811174668 842884668 782360696 590143742 8552823 84347219 79614986 314251112 861904734 945727691 377251308 974601628 115346280 147059048 148648272 882972879 628919424 597505460 374294419 979407631 718469420 58980307 405861123 933120994 771123859 344208795 122078485 279930749 663419674 303293620 898238803 804962923 589950866 157866883 233655466 229526355 551672428 347758357 41066239 465791420 201409817 131290706 694972569 846605554 31320271 664765379 569767962 946701261 927062976 101865593 325554243 404471476 43537469 573084893 884711973 267712048 863935823 352989862 993821857 178001871 365303707 461178675 576317746 817743490 423229698 13675002 919042882 803433684 409849894 153881275 59002231 353430124 585798661 397865596 106125744 366578175 286706683 894879917 630029283 612509411 686644777 169395029 616475265 390337840 348439325 599735556 83211077 854421970 384132866 443478554 240454191 29881833 840141972 484445578 586996285 856341838 564742220 635719887 305944644 56683660 798294204 572930412 315727227 856120424 990313154 637624535 756008872 952877212 691699516 694350138 830905964 352588773 822060868 126503666 885343010 532984693 629518142 648926578 893223664 853652139 166480214 331013230 101644836 109142769 290677001 326613256 701226568 94058746 602091406 21401664 793901536 590424690 745568236 511753085 743976461 761896759 139206684 132021038 683341413 329989707 694484763 56272908 823644688 697387064 919509417 595459380 229320091 380319762 428010386 723834497 478215376 712178218 240863620 689466253 99744490 945602066 483554312 126641296 472192049 795941495 221572902 435908365 350779797 633126478 129260258 820151738 747094598 154782570 330063197 227470504 604285573 581991612 163317331 632911375 28211650 420805681 245248788 942400364 178885276 631229835 701733691 38950730 386544759 705155411 762475243 496425593 625659664 258036906 436960555 506539725 138349772 952399314 417207776 929014295 293585040 62472181 249807814 225702922 226286994 870686636 45719961 211088765 731515601 447976429 354825708 222184412 453143180 886715250 180694026 463202153 601567811 825439084 407646550 290668103 922946960 500432153 46507151 933945420 709338511 393051416 82346645 98828446 95326191 335453730 464324181 863846328 216966178 113620339 592476604 189798957 826891429 644218754 301223860 577842466 877895886 874021329 959584559 768895047 724530221 650296441 799909407 6247849 187157264 532817105 809900424 696007797 739006890 128859639 306336747 321713295 598521913 413468256 827292114 233152592 877764625 912430492 20635657 859173929 112065463 245944294 468541675 822151893 309309812 903216493 468603181 69767961 43595010 258524721 970597747 305163974 228757923 820202137 678109657 173389250 591463461 111474056 111800941 337134280 737681610 569165902 229387518 464163896 813912394 93908042 655612158 286816123 701707896 967097500 990175617 96904163 813039242 925868700 455783679 417273694 699949647 391018219 559848741 131012523 572787360 727337738 473162092 529767846 40658452 403890134 368801064 986454775 49436106 988194416 669690837 716867889 765881408 140571995 674903804 891321905 143813676 697860377 233665266 777766619 898192532 799439528 858685527 495438317 73660720 845674384 11646333 324007808 408199889 563220913 515827801 630160242 72794539 563464493 771236231 520788333 710939753 726445277 127072355 73434418 366086433 48053826 739948211 440750645 655455619 81087851 89311209 120583882 628664615 398833280 664025887 595501729 360100807 666975316 430308285 156749043 790773431 910978009 938997374 381465536 939426865 201465708 1032869 167880951 217257673 813239493 687466691 579023842 996142656 747332528 233078075 15834576 363586977 745190599 328391153 758744635 894167733 401319783 931987712 496997761 737711962 992404978 191696371 58099117 649227047 352951401 405965744 669747032 12142528 126154826 751663259 516835412 844173417 156952858 775019814 628775766 663268521 411500472 925314139 404064894 583443722 419603648 973801077 17096966 37459037 206861860 476545724 605578774 524736143 153044732 669999716 426591430 438553293 72955311 781586432 52075268 520884793 278955990 770468812 882428498 200994259 975012019 855521770 240862650 318533075 492286315 464641132 602765847 465591023 809213721 50549837 699581269 797275882 908903986 364523185 976756320 880057862 967201241 993633618 950465389 265394117 200087236 439572756 274093987 869567283 907018051 740782283 482318562 670538662 235621648 998263562 987541317 454590650 303273529 912491988 486579546 611984676 330915147 718484755 572935916 699504275 605724145 531277453 643629982 325715116 537101182 807662050 847645307 168493395 819746103 190113686 895416769 50423342 286844385 405401018 500812466 205394888 766787017 221822529 866444289 839813775 253529666 712171697 993408234 664303513 686889534 235044241 958943817 562859340 96026432 48820017 290381039 58013407 58379137 901630571 131522688 82037659 353231556 200576979 313734800 687620161 374456999 156650646 919152770 638343937 888033095 765506764 693617163 399637289 826977299 228675997 74335714 91574016 712322545 550998562 813281144 233484791 460528100 246089455 394566217 229262476 861304688 296589202 267811435 172962950 332551752 714875141 821927824 74079298 317782079 5453861 90419426 63392665 128979898 503847103 706322832 415673150 97345886 186961242 104025296 736631287 14634688 141591729 918536247 343381744 433108339 434822203 32120065 597727624 697310908 476756632 995789547 92323284 380348492 653084967 646010498 277464395 896925049 605327057 465459881 65152582 605078152 501120397 484955221 353279913 125176753 688190233 713720024 384614266 662451103 576083713 559391572 924570427 949967817 810572469 492887514 658898085 939877092 769174368 285018559 321620588 670836798 807989026 319919482 742717209 660650930 181504691 397042984 71262274 364020637 372376147 260658122 663996160 680024333 917046836 295960144 47129451 473272913 909516570 991971681 50163549 468402883 759725419 926673733 491823689 167489206 406940079 636695529 663107607 960544653 370601095 877822405 54301930 936399522 822590102 840247236 343701713 902328735 568786705 204343481 874097091 695460485 227523538 351826193 685966836 669358138 412680345 417044034 787419563 741837554 591076848 555471345 380414798 373957839 374210427 877568657 390236447 314326323 626767421 352429034 945440739 952048247 884626817 459191270 981715945 129468195 286778133 192482483 613874630 867568715 888651245 535646349 629167793 805523180 621987109 433480508 787536308 354071504 837930095 247846490 157572175 85672442 34925397 874488027 109273319 946158091 539194961 718667236 984110034 745361566 614902880 982450302 939081600 106465610 127087511 989138649 879767294 825752212 988900832 620244174 943176261 568301882 851764580 690186537 619109409 42158692 314620257 134940859 987220363 966524197 239645026 693396866 522785661 904889698 964279764 187795615 513658732 87098104 272842424 108554512 735638735 51932483 844575942 501174634 660675661 753804681 218862097 29486191 339533568 338309623 339938423 66504246 890410729 153983274 134812230 882946842 948988040 683417832 632508419 333002632 800939634 701652905 303538004 570463694 564741188 941016293 763573750 211774360 927331043 944272521 396832132 72992734 760863506 670730712 465470156 236421303 290704299 716895847 754009262 379983530 944259308 246519488 175042185 675002887 493327210 972778737 834609659 461974376 231919561 82825651 609166071 686617790 450118468 844490075 498455171 475376563 803296884 853620318 498525231 194862232 342752923 211116212 612947397 975940207 523505662 495861592 92606296 874676451 287008988 562278624 609405543 499383043 157856458 653197300 288530467 755518562 633161043 660572188 507387416 900341078 161901573 693125116 996487548 501770417 522689761 207258612 920578868 298186429 6476936 191546589 44570479 186764432 454923050 949595620 820920609 684504970 370285010 225082265 23170889 995448092 486598078 761441869 297005299 254530535 126256065 357738219 721262112 368121765 914236454 921400799 621038884 308802155 303293243 693864379 280780599 572443736 413476782 612968903 383568195 394666720 733799779 70618997 252294997 14198082 228694781 30041355 972903511 20025637 801469137 801899688 192325775 383001625 949253920 801813889 907089997 861590727 405522539 896720518 899887272 514657350 350640612 954364552 215639512 385623383 219928509 337670108 292690545 814655837 771488666 819414946 989120840 39872192 387457568 395922291 109742918 340472798 202593170 362743563 305686765 817219408 830638580 358059090 118776984 81675015 502466865 135160281 755590740 724530569 126809064 4021316 288012555 890923179 305462942 963967276 618120993 940463001 488124334 462853229 499169406 383564169 202503775 39416884 145624430 469709471 946761797 345207481 317098838 566063311 210194783 653627445 109188312 185584580 705334464 314655328 61543649 7760231 411853389 148227183 975453681 578980029 171590713 126532881 875559646 409201275 555443656 770300399 52124695 397009502 619756880 231262645 593986715 298816101 686256639 876475541 893317136 312517563 703968502 355568618 107241342 338983461 719812897 93231140 189352672 48455663 168228208 436177711 800765206 908877371 283158811 225385297 887824796 454049689 969866366 716422487 965689839 949755783 974019967 967003162 124203939 795756386 629253104 103360078 525346219 737012642 924503617 587966569 563975660 885138435 738742242 687604042 894147930 404036264 641258253 240326860 777744272 129677277 176305662 419647130 402074869 831988705 660897342 178849716 792552823 286435632 757400439 700355154 36147881 831798920 458109025 665488911 66123889 288782713 447914833 943040621 650510213 370161805 853091156 318844640 765704135 666141637 598854512 463947973 962374747 801812611 127343376 584359450 50831682 331004223 66259764 653027898 523775693 493710207 591513655 706164464 567101436 847097646 639690209 374394966 582945440 299699945 206337570 784576798 495613479 936693260 976555127 19155045 491894907 959471851 105395266 909633393 894909458 743753262 637593841 630667007 12220367 947758735 298301756 298998112 209177069 278238289 824571830 220921197 948205507 878518188 461557727 307687549 12911121 848693511 84437521 977879191 362390523 723059723 344475205 257794574 159304384 918723830 363904158 876383223 690534696 677863668 926535774 144879398 828902671 771156428 366778637 779005208 990689515 807916328 542791496 103233546 2967286 800885769 316453821 766099454 604909324 550272890 875278527 42633665 821018429 160220574 673464053 914039513 548196504 145649679 477447250 474506234 299835600 171328075 224372087 774051230 36392962 465593106 177599001 726871443 171644304 786130541 894409961 847175180 297147977 858842804 299976623 374074010 620177968 84084504 351968319 355711210 6407059 434542274 8866013 108805213 549474196 777431102 414218807 796757230 664917505 922305385 275000735 13114749 700137771 156982596 547421266 387704010 695301186 488570478 515898490 219156456 851193535 620588403 647894196 111192027 53448485 760585831 973201247 440325414 970157050 605693314 797909222 646388186 298069315 126812627 919787899 462118269 402654413 670510239 839702918 203629187 543454858 284258782 270226981 175261277 498376682 541312144 284166844 953006120 202611688 665903767 423286587 500427497 722406676 444536944 280418204 546050190 761130725 332042369 527888626 591710728 541431379 878298489 884419050 229606307 241815657 770178111 262105623 499394075 917333486 833901939 642920353 759727971 551618947 100490066 497849968 960993918 985351847 908961806 170223375 24964699 747402369 709161278 657165938 777544572 18950685 401147451 700529624 656332872 139783362 208058347 963020308 221400501 248530198 603165080 136121650 681357802 960457700 748664469 333799883 659556068 929365683 282701367 57511495 534461897 544154052 697517579 906951968 312172659 54170568 122107697 79724089 886667827 938842733 91308931 725782964 562603599 552350745 83759311 233348811 694132311 138423560 634183157 738661235 727997354 164408424 776461499 749521252 5683970 828588466 312707762 823846732 327870802 267714622 539971894 338806733 395548801 420689589 106357347 201450389 663332048 96687971 610081789 425922380 751839056 55740306 395965475 83346922 434909713 14921183 96041600 882263582 295102285 634106605 611281157 359859589 658062071 79389863 291933544 596471148 835740955 319204482 417105127 917530954 121492814 732097603 450744915 895115260 11951708 493042443 35402624 232874865 879910816 683593746 75233750 897952550 285022027 977085123 821228894 614170798 881382093 859305896 300654172 801675752 730611964 42259360 753032883 373891590 760848423 326241394 867510530 28808162 918297380 138700959 807316919 426688631 942507561 550920510 94805267 258672823 765166255 97301144 905040787 800847590 711253805 905814142 537383548 24869674 85363992 891844923 499431605 199837871 861980380 970048545 265449491 499925547 40829984 974699970 836608865 646394632 769874232 334902154 464240586 115156670 633729408 390150923 123189805 16012418 542395454 539065876 935653465 842895722 704404470 475107397 848221910 779997934 956127582 776300976 21064004 388252787 403960875 754201901 277309977 848637994 623003105 989874372 614562355 5725119 109691335 679305589 469455006 568772447 547302578 514541251 929275068 203651679 329741563 190311410 10772895 148993271 616680155 809116948 165433344 856008965 187671059 839034449 469646473 711996270 994783048 951276394 694012906 982810225 877294816 491884267 519461349 537328484 59400243 558273144 439415684 402273055 871093881 353102188 937946370 595444117 386015982 795877795 2673639 546585266 306742434 40594144 234483018 634474072 781102262 79268874 744017690 797074464 930401007 511923433 703662804 898713870 137887394 296606210 437092682 920313243 966650750 651207887 202776374 671974090 319212081 236321932 580505179 431253649 424740857 219656390 497226134 804840227 343002955 589487865 834444380 689489996 320388529 717756402 990051976 140313082 657524722 296785109 387976312 177204556 564990198 56372588 943093000 378332241 153375594 646319507 448381926 694117460 139547618 404886332 394441773 532553516 430362575 784646083 818264638 532880726 695288032 222367605 697148418 130330000 26511481 500696530 539592724 989103538 586748949 678520663 380399285 257494658 59855994 402664851 707154098 775121351 292209948 803183018 805079483 756704701 685694070 349749248 724083511 15504636 773289589 646656966 908222736 685412571 282625831 186651618 86233394 731605585 300266194 751843376 265804133 687313875 374108695 744463161 938222305 183668434 419520077 989244200 593506131 128159275 839018974 583613069 353454648 377250064 418170012 335236597 833742497 357171596 600211743 586327911 606787717 505672970 338806472 842026100 599582991 754599690 212793784 805204004 426420802 403414289 402004511 280120951 29898152 720736841 170010161 532634364 640745605 28364758 110216924 121356699 158780328 514690963 955819242 583951038 90290678 503459517 48521787 956539136 528646282 412290250 128241891 280058234 373727431 849676255 494022104 990370534 236273070 557441226 144252197 55278016 701528917 579370654 624602526 153392478 603349593 579047188 75216680 78655386 773627315 460893181 770150357 138108160 761975684 748036972 108962425 796574696 781451245 689366986 520440457 472393212 1774465 207971381 242842208 856075099 802114020 174988440 585913337 311880331 591273773 121053854 320711593 358491624 49858579 898807989 877900964 472241296 687454235 385039743 186606875 82562309 528608450 71857124 197412761 148306459 858372114 853827090 349342266 732128478 282626427 501178179 120849252 703680027 556934364 143547248 397566257 754198644 314648013 915945646 607099649 408055931 985607150 985684519 705260154 770551148 78216221 460509134 479091944 17256823 687966636 558977876 740468027 798038345 218139043 720638936 926637926 247781892 680699081 326475950 140223347 27118854 119639564 136357992 297295140 273119406 388880685 951145959 21236493 674016531 488735398 60816436 306310875 422413404 700882899 499925904 213562271 673832075 86389636 347539136 585965233 750235973 864567733 943652204 205376802 783894275 254659033 617816432 522262546 292016853 484346464 649814180 678783283 653183197 665641573 484207410 234575013 176193262 426747236 541938821 471197880 138650431 90230695 999211917 104727813 24173940 982763804 529313433 261277336 841547399 19737919 330527379 629811437 860230665 651729424 355127795 928403781 880222832 60744254 431371040 139347676 218114667 924765126 907046216 152746476 115623572 373789041 760232747 584327022 783256641 857932440 501596591 163985085 698226721 801693751 765946126 65850642 98755168 765784760 282387542 376677927 287466640 182260680 29468473 907503021 578704106 984803526 838561926 592714657 178893334 487789208 816914552 502807179 59396826 93572159 644921621 340779215 357062208 476977810 74821636 12389380 417844773 17249959 385490170 757955941 342311895 598237435 305174615 272014394 115690420 553557680 248153562 847001805 520910074 747356555 459528834 119716767 388066043 522576936 997644362 189701629 385428303 629281335 744652322 222415994 995684016 461930321 722083429 740844263 638872316 13825809 687140222 466762739 123330632 622679551 890826146 558586604 41066698 159865243 293447815 146078637 461191599 789382448 550743348 24920073 614912412 993492989 170085748 15310537 894812684 850518812 523439109 976917471 170853791 978213953 861677131 515290443 285438731 544171172 698938313 227895335 372777587 859145127 737961784 837365933 761178652 467950400 17779864 95144439 854166601 286987930 48311894 588940002 785522959 622222200 569064055 337176210 323431949 236241229 360917639 178155972 38837660 979778854 416377433 659845915 690188495 939693060 234579209 794961116 936408 107095042 863564126 724387895 302211816 674192042 776391073 889773990 679924028 771934139 327464026 91228128 25946791 959120192 975523051 709825517 981575612 104302596 102774176 812844500 239334811 674816283 93486125 574655957 720365103 427186025 394994468 599201289 417298580 396513860 375090070 691182823 223119012 483296784 88888803 555657865 557354344 583140804 569281991 994893398 717200204 39229771 542093608 536941457 40694909 673984504 623275395 145947273 741763494 185680021 191472309 37525902 676289928 320944619 840972390 844194618 156192012 123125524 418719426 248204414 745573993 425449383 200683507 405322670 262332022 91961254 409355349 848028375 36024017 606932579 751708985 566496314 612005292 754506226 453220057 951563652 940024833 403010979 631839939 293427975 972085185 744264007 267963846 381962574 439801386 447604238 945008327 126288178 80930016 593452879 894119405 329995814 184415981 159785082 54056335 483631890 136644749 838958177 793428469 628279197 963144603 571124391 211307641 701788779 654688783 112940392 476315646 379855718 6356866 369245537 832506023 298174675 419603916 350761732 369674993 757375791 304248213 91772599 107485006 474514596 372150983 958282683 533540780 583619561 746435806 433316405 116806873 47272255 882143435 710242645 363873965 859399741 496088363 979868792 864057849 964870282 96011086 697460335 556412744 145577645 191825560 389532135 20800298 118680791 634267946 764278625 767249519 728706805 586314230 705066409 737203362 298305718 444760419 563361566 941824966 743471179 843647357 971182996 283540887 270343971 47898590 81357408 663910159 751522509 985936438 819697211 789968133 661851458 982042360 702649307 680860574 908386934 413829666 788582299 654311653 380808552 234834790 86099128 207892773 861394301 619133068 968326299 954993328 965033463 242611935 924770075 553729427 984036420 157982453 822175191 621077972 157024636 77502581 456326413 372135050 731638049 821240160 69906450 362165939 542836832 492419788 322147490 130035256 174033546 40591384 826544985 602100441 935079868 662146968 579144462 137825435 885709181 513100680 187084112 930789607 346245246 360540337 968641891 868253929 909128285 86826501 68162099 215910828 772932168 752241921 84067168 919285409 259641671 768084460 5697576 350494022 353913298 745703153 616519007 423677471 332155864 594765755 3830345 315795989 101599808 726851508 20183420 189299177 819828279 702613418 667907461 676935470 635301775 450997943 534879390 71998371 137804623 908261998 996712444 251048064 919554020 869536641 793390428 986582665 971733021 490385933 42984501 981804510 783989997 903473428 609585018 18279449 557465237 706271874 934294248 739573773 136503441 551894410 349346153 706098214 359383176 377300948 490048901 777655776 916298846 156397297 942948036 320552327 415185784 803294442 37996563 223249340 362865006 485098981 811664607 249417163 48733343 187040293 428168753 216357712 972467936 579483423 356983023 837264791 365886123 915993030 494854912 586239516 721023280 883609132 71709424 498676392 494456182 735434857 608618387 340281949 239875180 54293416 166910760 289912299 991389298 208701215 436959043 143293720 751367829 934390169 432601673 549270237 286531996 725688352 148284508 145426321 241818274 855833055 113032617 477690897 513508848 44215599 701902344 742059844 948090394 784936655 262118907 137951716 660410880 247240747 564272114 902006355 399786866 284702506 424563821 974464892 781574195 508920272 944953940 838596011 628271443 337461143 226066025 346796454 182221738 963290931 658442596 768185030 499973295 153431484 713647147 643715072 551562888 448208240 342976234 388864868 387758001 279035149 405582370 168959548 895165652 832065778 358419731 633426428 759950549 748206339 889295434 818443536 683732792 975449866 151806380 96347626 992264214 522847733 430162449 24210716 48568801 882572548 449819424 991264478 867533227 381726208 601614968 498006383 758134220 970026424 396170197 851001597 564892127 759673565 665509518 801896650 115617897 18996237 442015703 624063934 220661018 595032714 51860517 327661471 103354646 697159896 435985066 127446152 326511927 698645657 869314263 655681404 6724308 659402220 404173960 188830064 301135807 515220902 764248850 920931616 353504109 631944788 911003937 772460450 602442458 476578899 497226606 91576265 431152256 710569116 268725394 935483170 123719103 806302648 141221312 395790736 82798513 953722387 884505868 977948153 607298641 317255421 369759279 260216694 317092300 186134296 396436884 995679457 827794649 691260310 480843032 455916866 273824274 430023698 202799066 758607471 314167318 759900502 45733404 581811459 437777889 466759327 295855522 822239789 686307667 233495731 670367914 924380332 235901323 446347236 239970754 740885568 751525034 666072252 90987802 605868261 948314774 713480159 717851968 362201865 539590114 634213599 997424149 534235149 559675508 35947150 489985951 929240551 842833220 19628202 356913721 16882303 684785766 703362367 753052508 659433781 600045037 842161093 37055609 333178367 857466368 363845386 40878198 481332966 957078707 701002775 870491613 97390447 990485065 367362070 677291783 567621896 360864348 788172445 64267034 27275988 876416838 27394443 422551651 682772083 64682149 210485255 208919165 416096516 953718616 716627868 377813708 654505614 103533096 499850350 530525988 931242653 709149041 975374447 716897939 295660838 861322114 402377132 575742084 356065511 806523327 12000444 852376136 239906679 576684433 767882566 620012784 175184851 915280750 275927028 853318797 445016030 173428453 808146860 34783105 95360720 806288986 417908800 474443896 792939576 6933206 445956056 595281909 191960150 9601430 670232100 864906244 292191319 865591548 651592663 218679268 173107482 730163122 38052314 309345938 707212145 995907855 925529355 970853023 56282079 810173032 516815412 389883060 691883265 446057382 527454383 394473049 960991930 443085750 830919147 68649419 495707266 239158633 270261523 421493807 844260050 737140031 105079165 119955259 263649071 121968218 14941379 109424721 505433399 802196861 910790981 495983252 513511162 663945665 330239259 324654745 644299382 350734328 408155075 851689771 182840624 141736827 506504325 392143895 540278171 32417416 905021016 459293428 154882644 940546646 995408357 741812975 396310843 762734818 278565805 94631241 128324183 86645972 218470599 594086014 598371918 608770570 180799885 593629701 730729696 232064388 821572221 59025904 235901270 327429437 204656832 553883561 876143397 180124476 467969213 554402809 467840978 416460144 201830930 720530614 818528750 160750259 291634452 917515985 433067615 348436469 157547907 377691506 983755024 284221553 216229868 114290695 970885756 874547399 97507346 602747971 769017323 546479360 394768883 937238573 259783959 282124802 669313926 182378409 486463797 255136819 224265919 691952199 714343165 997434525 52523087 997157100 885005331 560057705 608294909 496528493 694764994 114886148 229568396 51292901 656067156 427118008 650828449 692095611 495392768 295900927 381657727 303721711 354392407 673091155 906173833 933005120 299827759 803073316 354225954 188251274 398966438 43144954 539258979 973114977 197427994 100585824 205559581 386841431 222865120 639710233 799890113 925067489 279679367 946253373 887165328 181058607 628681092 681654573 402120794 140549680 26395448 874319784 833015907 90196565 703283432 827811298 379885967 173380117 213309246 100464497 280600866 305301996 836534200 904462405 81743830 6843613 97675014 794789333 939593825 246627016 775703056 43539146 747685344 464257930 590522682 953494581 796768456 493603462 842327894 587784648 780526823 64583700 653810241 243846950 741599996 799553708 657798125 372650774 14706309 277237046 551057060 315859744 459510311 645182407 24890280 612957532 573062999 665552754 88360330 687407012 691133790 756435445 164347482 62460720 806870143 427941445 179094063 612064079 201300567 20014882 147479583 218909195 194086145 343223456 148435838 729633138 267597525 512648620 354427142 285939877 98253744 82042702 573781490 722483218 298541660 924942612 272682418 933893411 943326859 335493976 760806555 530949290 948204849 322888668 365365847 483261379 202631686 580436536 770475575 971382571 432576784 666260654 775398808 851956926 460597891 415010157 854137184 575495142 148346343 845599286 794087168 455013725 365609426 750092186 160215300 126740068 164487333 940462882 635845852 708534124 125153135 176556378 595959584 910039445 804474611 788942630 634317986 740328305 529360521 919756987 963097194 654631620 491278711 418451801 151453204 578827080 779417233 800390175 520518554 314202678 69589005 169633504 984502716 140826651 852675420 257699607 124075022 398843832 775107504 506397671 777947711 270585146 204220674 750719496 590171472 585436837 903842458 531225718 722020914 384993483 422682733 859886937 544995170 868668186 738000995 146232299 953742259 471471265 243272729 687321749 61515684 18212571 964803622 610344247 669113812 691227301 424399350 632279998 510442553 82016908 729265973 150273120 653518888 896179692 383724757 306940891 99845788 176881503 599024508 331985170 921667616 627360707 398301571 419561940 728919001 182828896 851761229 497874698 441141510 655492236 914121588 551922230 595050536 88286411 896531993 362891271 325220364 324422330 489181348 721639582 665998763 199966752 63286145 589379075 924224644 503688188 495469865 966506149 435142960 19320557 195235467 812001204 617176004 818308602 355924184 580565884 662617532 519611316 653366819 237562826 757873969 292079782 545601124 204488522 205623285 129903005 366152636 643100 764053098 815739269 573421182 32873397 130543684 221271271 831196307 24734353 120784099 341130971 912423171 854181718 385976155 148972815 811983385 700245071 175064641 709573722 163810185 939425682 508390621 599708774 690894145 816964746 943971408 841300381 609739262 787878331 883984932 340034908 98901944 271737047 987457704 869587027 846059710 869351937 774849139 78508193 433354737 822927266 265667020 68616343 869645092 27232364 741432976 536352528 149533925 585223586 36601232 632797031 271266007 498637575 362123278 960717502 471560699 71798928 473184580 47160807 975783521 272117148 161884817 397544414 260135006 714874624 100780185 511406597 764677532 701233666 161261266 698462787 644676539 220851218 860480349 174417280 215534017 881933618 507669952 160937542 8441009 769653489 531366890 836665077 460671609 831439943 795387789 497138343 633367763 875068857 825991999 916469413 979777805 678461903 530453172 409838065 140896565 594721505 303845191 30810613 825610406 207054366 422964419 166895138 689643684 300464581 667926621 921292115 862004909 754773067 145847850 103786373 178170866 76037535 291215354 642531619 451240097 310659743 746228460 411339257 758435270 942795166 807412846 255497571 189030988 644130980 316918982 489801888 547135456 615705471 877130064 324970956 468613121 684521634 101405211 760265283 116643411 422288119 952792869 164170397 991777707 158244505 26935206 727734974 193639699 943687051 15898861 794917126 393587409 329443445 108282405 629210036 119609525 709936357 536169915 85637210 722550819 128310303 529185432 958966308 977020711 58424504 174610545 992184026 700202250 238771418 662303902 68523000 873651381 80836967 271463371 117455758 142887354 598025737 934291055 342097628 787826124 514232716 973686523 76083499 500762845 765293794 446099864 766761621 945638167 675625480 482614330 980967198 902116595 252135550 561049557 562245157 861105334 822944577 850538913 722335550 781051019 601597233 701509872 580861057 597861817 357568474 399544303 664563389 774242148 340930652 703940057 965050662 662734813 254676497 611124730 150805865 673784019 706109393 102124958 554433772 283015871 523362585 787423740 392830540 18525515 247036705 908700504 675222034 683797529 265063236 684924126 605782879 708854482 792020382 207434621 405622825 417459022 425149150 870444669 540517446 164206516 852390190 561152197 857332121 347871994 820241846 302337084 659923087 273814164 328869466 89000369 619870980 512895865 895589160 993032119 977469002 874915911 697154749 503954948 736915700 68665147 285001959 677306089 88692396 326052703 533041096 491480231 257577214 986609266 828863629 862160041 233645757 85625450 157815541 293960154 175300049 589657748 167851378 493137353 29562793 186377871 899237990 430218324 590230942 524961973 833918440 15374732 773495981 423618953 109889402 706427739 532780847 344049884 928608243 365387191 412710519 209545973 355349627 394827631 661539074 595298733 402148890 388346033 31196267 971084782 920470347 925946711 803806810 28217764 227480400 331589499 570793430 939330113 877977661 156178373 935517116 972374666 656415213 242697602 805832593 365387015 838775155 495951633 478859856 980659329 468506340 863940496 767965343 194328573 561079057 9543361 12559493 672398749 3235248 222347043 864229052 598288186 137943772 85801589 309157638 88603248 833845155 56521423 393905084 801453963 928587997 475328487 198062810 179328326 393007317 335938207 990674335 240485824 735038178 938428970 628751262 152120193 741623091 219222540 910583805 342771134 469026780 174939036 582965008 653104531 910962798 573532151 136852908 87538386 662757312 335954668 196290106 546997135 870072201 293480891 228864735 840273695 175242088 629326198 70399768 523516808 778503725 383625180 536467672 945819163 786447232 906055604 944321886 219375589 184172416 825864575 408848869 128186849 337891673 851957618 727245058 798318236 44880077 174911790 97063059 583938333 382330318 56723403 802411515 715234346 583742525 723056634 494142910 160469440 674538967 178188334 894338841 614721537 383868656 447154700 995731566 944661687 662199450 169464511 382191979 146672141 829732546 689642205 961940921 549478427 221866518 340912327 445651805 348727113 949229158 728768802 934116094 783567829 86145727 325387948 20343539 753853481 874235902 838023410 192422997 203679976 386351967 109203247 935555540 819702596 622840245 914115438 682077746 1339378 718314992 198966320 880083328 192583338 864531168 413975016 581663784 247069403 922884532 251142079 471109043 532069391 760157212 875268047 123054592 540836237 153717339 927548761 8994980 365625472 139731148 954172786 796105693 325824236 496010292 28117413 571485611 909420863 28498387 612409035 432487353 824627203 496184792 266264759 872559697 825846698 728955154 637405854 294386392 262603213 476704654 223905845 140602533 928665975 437498765 476186802 842137401 353939874 5986135 706623874 776237631 351710156 49806290 524067549 452370669 829431735 442954708 634359771 143764414 636261614 423358488 662710726 672914831 889418223 426272775 974130583 919255716 211072746 666280905 715120866 324090466 676615021 357407853 888333220 908126166 720535706 137684091 619810874 626141611 457953016 977387991 675478056 99107244 467938978 476143323 148946417 844144903 656147466 547754601 47278167 179343523 520918251 818183973 479480998 651468210 846620025 588209889 2379895 695316802 881819390 686152642 840799934 593666021 415655750 906070240 148047600 454660005 20199617 557681069 174972592 839498699 518897562 374207669 279460300 387550287 664204867 306638465 626220221 80038168 728145792 484747714 480335037 725250077 632528874 349634456 493750556 922570828 692372196 255320167 605935528 943336899 948327048 993397096 579657526 146150066 340588401 685715141 86273532 790017717 491544657 617370772 369179647 69817210 687532189 600621842 299642174 170292232 933217582 256763453 749816004 691794569 780760623 188045661 286151264 442029847 636442306 926439875 438649923 474357474 833631002 296819158 442863122 925731561 524463823 764309469 581840924 129479009 998362906 527767128 708916038 810562193 521878530 954066702 307868607 386018466 257638621 480467797 193766615 943134651 283643437 336091419 310541625 495144757 535861554 227386705 326598529 649356522 638648570 838374440 42040809 864150421 425855599 322126469 464398811 515779577 871300637 454127955 627093122 803062317 958713814 588438001 850995305 156473343 393741852 18574390 398867014 305725744 682114629 988585286 404075348 408718264 193983057 142894197 734027976 832553263 394532421 437051326 887610209 507603307 37807683 33171009 296639018 181718016 469925903 358052281 121120668 543404059 441474256 543947810 693484660 36793246 9596494 268389869 142338958 373045853 332863232 999606239 719076359 981197538 883072050 171090857 709076328 941148370 395853167 127154530 392967618 676354896 407599723 510775112 38109122 505497429 674606233 910690192 868592281 802837702 511958415 526207234 153379828 668734689 386215848 939648675 196682310 309252095 216934310 411100676 680460065 633218553 226604514 675283076 144481394 323350900 961665979 865951855 314782029 923656941 391646517 809507718 188596567 424128724 487190037 429302024 359295775 595069209 817078923 714613768 253526434 653080929 94580412 250283300 108590654 656421030 672127062 650494729 883074198 503695650 869496444 664028600 348235344 997948660 584033893 442663994 628790093 640009132 390267970 871648554 645779244 922991479 360609326 992609100 302152506 864130870 812544730 983418729 154154840 956211412 63006853 77245567 628108686 650429318 312574860 144018485 912710537 964889607 895123624 599887905 605198721 318002148 209372785 276515976 520834458 3465392 369441142 53817024 906528384 558177523 936283259 228029197 992605876 916548635 866408464 786108057 850951703 550761667 93129559 701936427 972480631 870909970 515261338 671077273 466518044 440104066 87830182 820579885 154715130 529898679 885758067 979386701 92326018 669709681 205500105 435697626 979434782 277601703 587828946 882582594 691107556 392934012 230249683 621488259 382811823 162270764 17040393 182297012 149526378 26316044 438276547 21575247 211619054 200543476 692043658 196366885 631436304 432534294 776019875 486095294 375402627 192748270 879148595 211911410 7311349 73198639 464183384 935976639 96187279 713822823 848881256 481561017 697038183 841191239 731098487 507544042 468040391 44076239 757763781 622094393 438600788 792842112 871341162 806598111 915644406 698667251 30131420 537289344 580016840 984630751 938792426 933018375 355877238 92541874 370537500 414152319 408080942 343588462 38676261 199221548 135767255 961360246 432139332 207891558 786865439 884341774 284496202 387815255 814053550 311078554 430848440 605123081 428721276 397074752 316494114 472916693 263399339 598983993 493072414 670603019 496212778 543469381 670896647 919687757 260764370 467368472 35362891 26768457 725625096 952524301 632046295 803222672 1363791 704341658 587288008 8550919 394600192 970037442 741341505 642296955 366518820 813301846 396118001 577762863 263363779 504208402 991247808 108690577 672070240 460369684 157478558 262491642 595981433 831135432 815292189 251215225 888460266 902077636 693069735 347349611 482108568 908011926 150947198 918211553 924694032 242881272 705704398 729999434 481283264 451747583 548713770 89134564 984860586 477409544 976903039 529514166 691753280 303814008 897799349 865295698 170649127 866295608 829408134 195305057 33152319 365776060 444397834 634837827 438141013 49653766 927117273 666173375 918698548 36466318 811530331 612082710 506621990 223709193 982816004 549144111 351429847 864167384 738485771 477894056 1153223 69260203 304903628 741449536 173617499 884558040 178134782 469204455 669547971 659091703 101143544 146664192 315519131 333041348 608949088 196906600 722892444 867069626 167015301 179690867 344697521 637934624 65544927 528453529 197151768 60120704 74398378 731410260 563924977 981948271 779317474 180762161 331575335 163226537 403412322 104721500 679674304 46023891 345332613 749108681 367509083 447720054 380452453 227239049 656658340 624092519 159838599 412150189 121078327 979954632 834570198 301768716 747665132 180070172 466729693 471192581 790644427 79931095 907973135 498930868 457504016 776336005 974461775 519407567 525527508 629262463 716998741 162006692 117092689 914422801 210685243 560189881 567628307 530152729 175488472 523602649 507868066 236230893 718501925 694164049 422863874 708905472 702846362 276716997 698742239 823498631 700359426 42003939 391737947 774882291 510329578 280413640 898040897 737590737 677659458 515461541 356324433 597375093 471202450 65636861 556663678 423550659 616155224 509978777 890193757 493226182 180063206 484701194 211069354 373327101 615502096 6489709 377290246 969119891 934851335 471158876 603608968 221882593 152365460 492313673 635701978 711945618 958012754 157235053 767642615 16621572 816469724 218858597 529748771 223132303 394016638 992781165 346174314 318179214 535518452 732151055 968169543 291614240 585545327 597133360 124571316 810502370 423536660 331615867 197695287 520345688 931629849 808741138 438086946 217176790 34651615 34641127 768021534 931440237 791763233 57919655 876612578 386372355 614423034 722855161 842612375 90883646 424028711 162405706 220303487 85432830 611591085 420774838 218774463 732677270 259629355 96844501 577499349 379554252 968863649 373091669 738976223 504260332 711353677 729219421 756689941 914004685 775945774 12517625 992109931 959859659 233364629 750427273 688511786 821331219 87985958 211510106 499219367 100635579 47986131 22424096 370758815 40250296 485382906 22654027 978559832 336569891 902456671 959137817 63319916 166194518 341495255 923953338 576908740 464671306 186267100 840323268 619224766 406351308 123147811 707743041 81954142 591159190 63501621 838869809 96384944 916849259 457346074 348293206 292032594 586722901 167642452 883878336 374014823 875470384 645388862 731119540 388839625 597719988 743867721 812869822 505897883 737089493 812009196 498598950 35441674 710128425 504889138 307822059 388527778 435715412 18369438 411077973 446901879 854394177 678908676 281530286 104653877 771840914 98180359 928201549 216198712 406365872 951474872 537818989 516071282 495429430 714876554 518394732 415818351 408254408 25992234 177219316 613555023 410268737 136844661 190165112 122844476 684355399 771400342 311788985 553451581 298972386 347529128 697876275 732138962 81358566 853951111 768488255 986815829 658569240 95971530 151837377 327777273 972242498 735194486 89804563 614423258 263383856 881366745 858114952 343287495 462289348 620860496 311245370 765225143 851521431 229133767 654735183 115886191 579918471 717034448 521118460 673340813 458033142 689305990 626153327 281914781 707873849 695713286 146695337 240934777 256770785 8322754 520931908 781529450 512590491 614240298 234239428 633107235 932198996 170338030 85804044 728107302 639688611 130939154 503132558 139719274 54236938 448335015 350394433 319896356 417548992 721079783 922012716 936158656 965623932 376638479 529595790 974349611 764085927 489849234 208332556 223940113 902609241 929341350 950677668 739783006 133288495 729429233 592686888 833431645 445076186 417026764 233501161 860563658 993165711 776705848 323984923 426080713 618606953 813859915 858135386 988982089 928844323 40819834 409142310 453623418 82283905 463663908 685227510 554458896 374391746 365635978 407756199 799591652 272833402 206893019 456768515 297667291 213424404 217543976 484870261 519251874 40559536 749027815 145228792 844929393 757559120 866399196 402514163 390303949 479628279 314989118 493577443 355730292 940235146 152307110 631093076 762642032 636755747 783854774 84916240 872419311 64946121 896557457 703874986 41724700 268879332 662642427 738157967 915754248 584603017 456067177 693882881 125974339 1874894 437954986 387414822 834074958 869827867 432453856 731182146 741069142 160727212 838711853 227684868 829968374 105529488 257611549 140854564 15342886 526698916 291487158 378759872 581287182 51144304 139210805 665890476 925296238 807499226 548596089 368769326 770583323 174484192 123538913 212773945 23233439 676200628 881957702 749131132 239670800 986275118 972289900 735566902 804002767 901415020 789171218 845129962 422432791 198429046 656531829 622546957 334661671 232647238 85487631 317772717 771009865 453409534 351957177 5562908 320263809 890499515 173960040 221163933 90386976 599370746 676581465 470931366 46619867 26486675 532608960 703811728 758541883 291094708 179594173 551254722 593119827 257525840 29565915 256005194 19578935 388825440 569721908 551998388 7932120 19236820 340790527 218880767 566644777 685585435 905907176 494947318 406750458 531947166 546318990 173307665 182720190 483127165 743341909 643243407 990181633 455816328 502031396 213420123 754257207 763575205 52746059 478467462 542780290 413449986 343930545 986283501 122717106 819310292 863568080 82104089 455567249 873191474 514179430 407530585 348259201 919683910 803611545 945999996 991611063 214620852 932165552 700192586 140193720 117270510 302740669 454888431 932915844 919958126 874628598 166788965 19933279 124555131 292239417 858381706 730545339 69780687 366707983 393948241 303326615 900596806 851289341 728420965 720337741 721643929 867599507 575420430 67343643 287255329 12447930 785402077 804993459 306341073 286318094 898965074 713706172 124903315 924115828 769655850 204710256 314435185 21428236 514365178 559759050 408178405 457811421 505357739 4121940 877341128 636810264 559800575 892102147 668853184 714990055 541207224 440007606 842055997 242204255 879809939 706700422 342037028 925627327 850637211 241308355 11807423 873602284 369206832 435993048 802174848 698298091 83013296 382409483 331094292 690135211 10687547 787081906 166395596 126541408 708377554 969164386 856441153 549280592 315468918 2002040 755336938 800755501 280402938 510412078 247590382 489274450 165230332 170035582 690416715 979556552 899538536 759697105 13310072 128092677 795963690 724921802 171137866 636612795 384361127 112782055 633199068 766889468 119698118 147501715 153296824 841276586 606708526 221485128 126490300 530017911 515598594 339183212 580535156 618376815 989711999 839090726 657879020 900566243 815105623 995042332 518701812 291166815 757285335 36378814 507681618 295532522 718867269 231469050 736783747 109507230 422186478 545126461 461280015 828673589 566600811 211444619 731358555 995958259 735285412 991117034 98367313 809225316 361380562 279271163 943612097 445243561 483048107 938936548 67422243 264522232 566218528 872589439 704726800 233600323 30115807 332069760 99049537 345381753 442047559 412020337 383049262 355754270 889787149 620413832 241756926 369977066 360824041 122057906 763047624 421970309 79930536 223274993 197084701 29371996 848176447 19279924 778454720 578460936 786174003 71405472 679106279 507955870 314717696 300674726 996904699 769829148 158190210 186929395 568711153 145974151 480185631 110201083 609362515 404074619 928677743 797791656 660153439 51312858 313227016 179344059 600703879 198496301 796114906 466907380 36672164 615165406 286965790 854392950 343175729 591774778 396568037 228000484 100671935 826029089 122474958 200477437 491873554 99591651 956401221 121037411 488463683 761287865 971711551 49564489 982526718 443150353 229445529 623989600 665205504 377506838 403806887 217194946 823027379 520017932 922759131 300563003 863304416 254551211 565302266 977776880 880052091 576915165 680227907 144059382 717548224 364361980 560049330 241530002 107966769 930182977 997234475 629310505 185937701 315801662 880827650 8592162 39595497 576293066 940487042 552708945 972136884 317930283 323701147 408581013 633153487 179718060 456244480 308998355 133113723 198329162 505947551 743764397 528957027 415308072 259488909 963088361 953630539 891058671 222139738 293393304 8940358 784477214 707022278 634060034 379282821 192943154 895703178 71733613 474764778 756838834 944816682 395548590 229666261 563488645 891493261 114626288 502523887 802606801 771940967 702498035 709106879 350058524 961256250 246124809 490672254 120481561 497429713 478123933 68782089 726122180 703419917 234614938 369745728 341885047 324896061 220454995 111740817 762113546 358216642 734020175 415211998 652631644 369637382 644039443 165865096 499101367 255944189 979857202 528627248 739976261 763185015 401927961 447224032 510599426 526151376 172648440 20454810 94890774 313086183 57102959 971648664 4973261 300160877 848490216 893970659 941988967 829952392 359252160 942460478 146326982 679687054 390192918 476115921 840990065 790564910 773428330 514274456 323413760 762996919 552282818 592710597 759263267 565867183 886979803 437840048 333004050 120698550 574753159 392075220 418743521 413661404 174280046 789018360 49619651 762627139 428509142 217688654 264230300 896446914 592179380 950875759 841630631 186743316 636487431 237451810 570166256 345598121 634707521 121408301 241046499 16959578 606821777 582169533 311433443 252560735 259932651 567753468 238946166 241335792 728195729 55288893 984969254 168490189 467625080 280892123 238045967 259956249 778614271 650917365 985411344 47431240 934017431 413709004 725008652 402393088 321421274 598288586 560289751 796704412 645032174 644581984 674296698 302080395 542949384 633566407 972933597 506944142 286942493 828622032 748820336 104710620 16363307 665859970 738684292 269213424 219633654 784365313 420259794 6644143 407815645 687927077 248107940 907281616 949160030 851245515 641999633 188258108 928079127 28369779 606269114 106461136 317458569 272252284 222359973 884513374 789117198 809083443 474506052 789414984 121922178 3540439 20005244 518968936 221530428 91266401 225046381 35358760 136011480 149987590 701764209 359398428 923772488 109616691 74859065 789039356 738802655 579813418 778619412 134238201 556719628 482336009 116562302 529224738 553762098 493329682 168393898 822013565 924152860 113671322 895908437 745581169 881805161 832251584 896692818 810530799 290538299 486117666 982194424 217435740 434087802 451415906 671956942 608285325 844580163 832803401 599318893 274210777 365935077 306033047 489003696 450113008 586382880 871857386 404958323 966428385 480431634 663619891 235411245 18614201 20249214 664948990 692523527 17228698 56770409 623565866 739126076 747236680 959621722 555844949 853251329 621382782 430521565 193366416 423179190 383824128 565172167 264387022 478601806 760248859 938075688 847857948 282378207 46700649 605933498 418467108 961601063 535016177 821618113 125370967 121599802 770037238 39350687 23713337 671142669 915570937 714095697 997306937 384293694 910439946 476762219 144595792 782992948 456141125 725317331 827236209 193038521 208503669 9479513 292118933 972118094 14842873 736605698 260440775 179527814 256399872 978766583 926110043 191061987 977649412 835122820 273808364 644644850 715219676 584537898 10425319 388281103 696963507 930674581 354907050 234406119 162429206 130311687 84695331 947127199 1085257 846481679 38675396 367015394 12971156 411438738 839093915 477628369 541848087 858786078 187693907 637352157 629776743 195312168 594886316 338877914 328224967 510323064 641394417 572107592 253838797 700885781 486622990 380332286 878154982 274018637 200519654 82294698 354359352 810806167 64715902 323225425 100364551 621449093 972529569 694166161 748020968 110854757 430403199 740845154 980290112 618988544 396538695 634316183 20453351 647009329 273211433 565306571 377628334 813860779 574154724 7077702 624425394 776854185 607433104 68177809 575602590 648047590 689821319 407091158 489153067 51244158 193416193 772104482 895677390 70796055 968170345 87821539 487286917 902723821 861607535 572784483 238320001 507476882 714625415 521161916 635285308 570681309 509528086 966750757 882155538 716398222 846151288 320847648 652198267 448137098 915332126 346502350 877303900 94832732 208508947 463875884 399217249 121005341 382548727 345963119 201498808 77198262 32245415 57072726 102900506 910641119 771491263 342437960 631278829 450851977 741284183 687165045 179169993 609232691 697696972 899728411 453569737 336462914 592261861 318859938 263005442 614128743 44252259 509628889 471205198 191434761 957737653 383076514 531733518 783989130 709114365 698206065 586492794 239665912 88742331 178091505 111357060 588059580 68354053 171531131 496097276 894309006 893281735 742225912 355955266 229298294 654324638 16283574 923493763 384833058 167200210 630207221 490936820 693254025 520560534 675348897 866642982 224051699 971287687 127009663 790334799 648483367 131692031 931115159 558720853 515641431 612338873 23407157 524237104 172361108 990164945 618291587 340719972 742127754 410590303 476859628 257329760 464742983 267346463 68898529 308435512 35887813 550772340 369159882 660980873 570857965 51773385 429742781 714762453 643801291 568960593 854266499 172538951 371534558 127244431 555069058 933269216 782882403 913799362 422718580 523978173 248072271 761704022 430745231 126093585 677940672 868485751 452191393 200722820 122050321 234165384 679217474 979330788 152401415 874444565 396432617 161562063 167907554 981551033 730559502 597873471 965889867 316745116 737900234 265977963 510416763 286090026 590775031 218889427 59340703 779245786 598684675 651828550 940099612 432012275 23470380 966496607 122454420 862404357 505576129 97721845 912535087 987906542 203483199 311475546 467624039 367160213 40727087 969366232 365364064 739275458 619883943 530108555 544124089 999311040 82605628 727837981 207911185 880844361 501463493 54238725 104199737 371080689 620279187 864293782 955022973 810669028 562320672 678633886 58816515 71639811 363661141 176414887 261853534 707235856 527386705 59394421 148147532 420194676 571021644 608856527 994467572 923035402 943123059 26089769 515345889 974730099 162865457 168600611 73899360 167092368 293741108 483345916 815035082 363784967 964457332 245837264 54093648 512416887 824287713 787745617 217954421 534745936 48931958 845941947 1027096 297250558 773763757 543405528 227846536 108197152 291071758 47591425 696642251 745916336 820733312 502019641 809609417 236049299 413908430 186168997 437951011 120068995 506839892 593150001 845990916 112337754 808664089 166775852 463141508 388295810 489765589 396462508 488303173 870403519 723587340 299250668 982705874 1168084 357767047 376677662 537827985 977695120 865753172 637910224 986801956 108256910 367369102 450979424 272281851 617359167 677955987 230712349 952118037 131441864 379674613 877355266 447458906 266817891 789847509 209567741 405413974 935286433 954795549 403168349 150596801 735758089 535220602 993434212 855932786 757344789 182732471 442949760 503144638 560635185 694775910 33327304 300838352 521373986 579312719 138997624 175831027 4317288 41132463 140064447 923576802 208776158 506972895 108881659 88271568 108198446 199890540 114033503 451205133 254675640 511056802 844949687 205983948 652174906 32056378 488024133 571335288 792731969 734988114 864480816 161045515 292542444 266859803 393372453 434801668 721147467 926986626 853078163 583999663 516733199 242077058 618768606 419502282 400120754 385818280 135837754 551167172 62495520 927864309 35188671 933981440 314395478 747642288 822087685 788681222 479022267 469916468 826666093 225425566 602152751 541841671 329986899 894209109 88996752 692747667 803843347 161110001 344962099 721561158 471124380 592002587 17350824 459224406 964579315 480626109 64101643 171994895 406881809 289300007 184127919 6980468 998663104 203428240 259054264 349998962 359805308 479147626 143144997 680336345 592835100 435465865 340005690 399298131 383212541 221836689 606839506 898770727 571553224 270738828 943220856 180026672 292212553 314066773 436577912 914829538 727113867 62129001 531408387 152713722 725411403 706314430 236948724 204367818 1013846 599369769 712447111 649347602 378739636 676073318 636703880 251874053 267558209 1900929 784037167 349664227 905685103 47476877 898384311 390342482 636495845 881803801 170715913 678437723 72950647 430709570 675742048 220999057 179754006 516032270 194850746 614733456 307548884 102123838 487450016 381284500 438520667 452570793 305523147 974757578 756954634 381729498 572207668 931882244 835259297 680722264 911495025 911904051 470033559 872407062 86318904 717349213 361713904 911742235 587549285 93289312 42198124 967183803 341105479 225924751 187475760 613450420 123428962 65530929 623391361 878471199 317102835 480281064 822570252 807632693 730177506 616585823 298761924 228512139 996773096 510047530 160146531 88161816 953899614 321001732 615102277 57588671 59552339 808780021 992544256 625528678 358806076 173007385 688145554 244444929 286253326 778938814 735602764 42223729 54547975 680624401 803329712 438167193 263828595 648674267 229051692 513063959 575913587 750820810 654169910 109629293 702583243 76565051 207929862 908063494 741977491 515351541 948093441 689836999 263879862 464973200 921794831 147909525 834975784 873115723 63064436 287044886 732361443 892294571 880234629 626115923 929610019 779362337 252417887 504755593 813034471 890256970 461084272 503029247 144867416 880570616 232851571 668667586 227802286 76031171 586195173 832989212 920164270 681218066 617536009 564184315 357923997 51091202 362028520 391941030 747005314 410453828 59271699 647364187 984944377 540417449 380174545 227602813 408665594 952366462 928906196 255399330 208761114 541457734 876506420 678822644 68746545 839749526 738746747 227841000 500293453 948655715 795093304 404482605 816286108 621536092 89566998 777927203 694146070 523040235 572640121 82020142 70010390 764920043 326082305 947333552 68799844 475080071 645957229 923705236 81411072 364251308 404650900 821339431 292619342 271258771 589029176 689496920 270456436 754370859 451861859 901135340 895883533 85264226 688407781 62923478 42096889 179018435 472235489 616422239 865179996 231796153 244249451 199207614 780314022 812269739 565982401 333134337 241712596 734218769 49391704 223114516 788759808 293818179 29926805 391974238 659139620 426409710 482422785 809705608 861131498 733190607 682743755 610642950 524995079 169418817 233994778 556934711 684245719 870266285 594267300 887298603 283588641 40527188 650254653 44411980 193359262 760436132 782731765 241299763 614447756 279947126 876552542 186582700 632635525 632323288 443758039 343631123 425920133 900097163 184090360 992218049 430996830 346274622 201768283 533650827 874766381 648697610 276405119 586835384 715722886 25963690 300652972 980690436 613173514 908689057 528388787 480909271 781095338 429735805 119162505 979543579 727944045 590071407 156553438 464777540 323040117 437826152 391599985 914234758 779604676 952075998 990540157 829615825 245200476 442368343 836603030 546458060 218699907 898191848 132013932 505156114 433429953 987618740 910561979 434776686 477494429 67564574 206545802 887866697 118309836 447329628 423443710 92775637 37408600 289435750 137099477 191528078 995427283 421649621 760904019 655454667 974229593 630602123 404949252 605085278 173991027 439986226 234027915 454427742 567586129 638564470 601094616 650841164 255858683 51732187 173788808 458879363 182397589 731028419 767305513 344803762 177263126 833934197 913265709 281310868 786840531 162355807 928842119 441140258 952542138 74380458 361586665 580434723 411162222 706741096 437175687 360196522 276431676 719610112 251196231 406235077 490684623 485588365 768352098 735516072 829677609 215200949 963046265 823783520 744851590 690011722 148703818 844773135 771168496 334349113 358979191 51865246 553656149 471106153 71893474 963706939 46852663 786737182 801405347 103698604 431310246 190010031 143559220 172871687 290680436 544327318 642812742 632214404 546432548 681479101 201476181 167089862 875376027 691214269 842370495 531229263 57289030 789673834 996714732 374453959 475998251 198871768 861384149 928057399 231267243 57457041 853053802 285160426 162946489 806330361 33705990 868808134 230263705 919983587 23425558 877315146 206243302 14553654 700889286 629826500 176020047 315056080 742376216 16804404 751509413 647694617 462490493 488874765 792273958 715353592 68643528 83283393 680857496 233247099 116713564 958932868 713376441 357521020 742463191 850810803 964837020 99164978 933110918 410211023 101684045 653121649 209864689 723299697 58194157 506632253 432543903 455322111 238862348 941481983 371933575 663390741 881295405 619942496 724347334 931277220 673544830 527552857 30405492 222978891 539390439 905579021 268913860 731297437 155346136 821653449 543925447 786451900 275218076 456129839 199511561 734661552 840023188 523679597 625095593 97752791 649311036 121363415 433550828 150040249 563345845 331508995 131280255 851636877 816186456 454511168 773125068 685910991 436999548 968195075 628815554 59675134 364640396 909043211 192125007 261735990 145373609 62107719 456433023 62105706 472297574 3068621 221940698 132175963 568319009 320182820 629479714 584032816 102894288 610203886 939673 95923415 976652880 511253174 88882795 741523447 480313532 90115616 262926978 829271589 425457381 474448021 901027504 13666817 700240020 334872627 919451263 571316941 561064784 334723265 646085556 465234266 8299400 226027342 68186720 538736140 72982538 593508101 559007602 437096409 155736538 254171716 421620301 711825913 12804419 312474730 213658745 50112640 9914961 11414925 64002246 555653801 383873198 705262426 621256543 809010370 410386816 487123739 230398576 914629493 94264047 522633389 141834441 79804981 225929204 28123978 639825583 361005202 752398944 860021005 386971624 276252900 48171804 493845944 259790031 166872133 511923913 582749112 251610733 834919506 332631044 564953148 251630331 379154727 130010718 881925294 718609796 910577084 509995686 320111509 160688977 993248553 293281972 863897226 863044934 690622398 707151443 564262612 159432750 924296642 443300143 318954888 252928532 944284261 356065478 547327158 129595919 769300956 626621369 589455862 948825136 817333276 188609425 433662982 84859952 190746074 186850121 69344010 805085394 946387607 118250900 212844259 818189854 477381706 48030072 293518637 135121208 341566467 127081699 643171553 70219015 353763027 143344640 409230227 420735076 887761650 252480618 149555571 306399685 962434529 499119787 842776230 219783444 8740027 992247383 679914361 38436183 651772837 85512645 305772111 352743289 954831494 95790360 756700645 637585472 572899074 411861138 580177077 988095232 727660989 211240975 607095943 14558329 466617407 446875612 508149928 428875211 924487799 162694950 813173040 717595544 176666815 214467897 559901291 271812053 370409367 363855447 17208860 870920888 581348535 556960178 831188377 600742816 101969882 51607571 338657419 823042356 921166593 464385842 576838827 788822984 343693233 23624743 406411503 445275330 875999430 409824412 940745437 891905203 341635062 519004800 71020038 687012606 36752246 817826925 488866317 413142301 63182773 256983941 684671741 402917010 598455574 917451669 793641166 232048162 958549499 721872724 447280416 56723614 423051983 673849178 54885761 819736797 919441639 966112925 694466218 310537789 724407284 39381027 889409445 178861756 697040394 396067081 76084887 852444903 164592449 909632007 190940072 7503937 601312915 85152421 534127560 657457291 287469497 896626274 841301798 527430981 194758055 412856688 29344327 485898437 910544469 997700021 370199708 188376757 134789391 222302879 948611759 846821403 790885875 380896881 227399079 927860370 411290243 287702494 615470371 234413161 323739907 432320120 54388270 510534868 946980628 821399930 669159225 577530361 96145530 239264562 562940793 583566953 850459092 849788986 64893634 395617360 387192162 172779157 488546157 471845156 347280204 181865804 382577860 625708256 93501699 608205319 344970160 386095810 939793416 940452420 358645724 289876411 693523709 787340242 958247809 191917036 985975267 776778502 222140260 145374683 216926485 139711980 619758503 850326903 797276947 771942522 922262674 331518542 147609235 370070544 189900221 783610395 217872530 315474647 191434173 866882063 260553526 569747291 91299146 508936179 252207169 51214421 237850292 261899241 190478706 552770157 885828451 451524337 277720940 516089040 20851158 334092924 242083272 517037205 51828346 129354626 509027283 673552604 332896544 661553029 180670998 376206532 380073515 587221717 301318467 305202607 23124674 975832151 324603276 824704899 867512447 130850496 43412248 64093611 520358051 466524050 659874500 736578949 702326069 713206637 271033648 50617537 866130853 226138310 266738164 417699834 158903567 697919202 383397564 480820873 858118361 344351566 900974845 485945794 330918807 851516416 348731480 539420441 372985211 497878923 354002227 164471189 818719064 27494789 460636330 139956584 145376088 832140205 513600202 360641569 800858966 269901308 177694975 680215114 477922830 701026453 500899826 596775439 272060511 941865430 62425350 315434313 164456743 392989507 150107081 295763945 267452014 330709072 974477999 190389643 919563176 949546228 600252701 484875615 382675133 157415916 145861424 735960187 769985342 618876910 429309514 736109918 528886473 420476717 407309563 349587627 51107528 405462018 777970755 965328107 473150816 603732067 639388646 170602899 769457750 839763080 909803349 603010022 90861248 874414505 819712464 727281972 230785247 153102644 117238020 146411679 202489738 692833286 450468688 557453338 544301085 950190478 754490842 296810029 785635719 456749667 253119075 939327752 653640989 390666486 993014009 487559733 342834014 816585916 940328426 906757500 101320490 665834950 103134985 391871532 534643281 381298481 959387013 603111395 896499385 847824440 597993323 457121287 360411155 211358367 584406170 528221898 96016174 230489054 464477607 861278515 994766349 951525371 562414674 171426431 682529025 594983057 66730971 147748064 878905681 874564078 843212743 728026126 586661767 436444884 845553730 931636586 540716067 443380990 483403111 306557474 570975615 152614301 417752164 954301753 987230882 419724972 456144530 230758059 620832343 182223453 968420168 959265159 244090964 525192590 456828082 335268201 957925590 942002011 427940385 429369237 125890791 580748907 610899663 835610121 897686241 4999451 559777219 390465746 608308520 703010166 657928473 744313813 934808755 240740774 673823267 981590638 306901600 900825685 674073828 376105110 19972514 588482728 356467092 894010430 401389624 841295601 120660816 344988687 632570273 99751723 346787832 958853362 136958945 964248207 144300593 354181818 368468238 160294031 401602409 555773250 527307282 664495689 204947066 227907107 399604126 606524894 244638875 67088106 142196572 35936451 801077323 153022764 140529044 696863409 573859905 986572126 864274645 762440342 224205129 482152489 208211986 301668005 750642478 88390158 556212249 949273349 324468275 503196291 256081800 930607263 872901824 740991033 428421170 850470175 180888848 909719510 273163013 551429643 762886240 637834679 863896518 508193100 389976796 726981654 608472409 788262227 747718893 544778776 298220847 83961266 680958644 92158221 840177735 830352101 432167590 138167081 718456723 967978069 841754203 978745965 967789046 494869308 708904597 579075844 936709595 823715532 621740301 449677092 110842923 850077597 181603697 366086580 776193970 716102032 92255901 864709733 828833103 242120459 254190542 604548689 654473239 154268271 278063290 511124385 110636400 810216550 474749183 907855678 712782372 543567669 457703969 760366471 83520984 623094384 956534237 80134413 209515519 709195273 126197614 79963992 460208163 955343507 49278777 941590014 275506691 861286242 331752918 782222652 801876631 837614248 161784663 345919201 172858450 575999343 875745393 654317832 700215631 290547969 598014449 397178128 639194361 873544548 710171611 30215059 505099406 719618104 477069039 493492729 680402371 662112302 919109679 996784874 869418261 70633810 140566342 980631287 179106052 165471091 696549471 909736240 600891079 379772401 813298280 364686109 989199274 695219407 129628382 628003802 361940306 777848543 577962317 757354207 157476791 432988608 868328713 133753836 712904169 989428234 900847674 911114788 636128759 987714277 871523317 510226296 499042395 118406206 477946125 878123187 401388969 802572086 281188254 192630885 463397675 617019389 610365864 180686352 138028378 576442758 298831826 550805856 583013777 302930945 643246380 271552140 256321745 728098004 549162015 623858099 604129070 210182787 416387617 858010411 913574609 158421734 125810800 534723948 325367628 984446292 552399910 368834629 672959532 749518557 666055688 604525726 174255200 231351261 532916939 312909574 367960002 231494508 736453935 429111161 318970418 901277492 185000948 406172610 413499192 687063531 688043591 655068315 75636415 285807733 338946068 952145623 912615248 267678423 650553224 332903858 968062422 590662161 411931510 658507431 77310422 971631686 488985771 574609980 534665498 347125515 291343733 540818263 533728003 136017798 733498944 627728329 701470598 764271449 436792890 569081777 870765281 657656065 716983667 948625918 464340675 943320797 350664162 414738455 728635401 266753401 796943180 66008651 115506467 941902733 665159064 218156907 647643924 199324473 824670938 247324030 71977370 654984512 680633119 674351115 286233859 666933034 628136615 297623773 406441645 866638061 312514725 124512294 387709708 442264469 956816295 579149633 61906242 793872285 522215996 635374746 234401173 870812527 93951737 97139093 400073790 649159127 850570461 709654115 264395200 183098021 755041315 190481875 391567654 225663335 149829650 840511776 243077781 760804897 239102776 234613517 129208539 630578689 846241753 683857673 505210257 2484723 335561990 281286421 447020171 811925087 70424839 371099041 253348241 491974834 485920695 110008556 240526399 258546349 128710560 994795418 763498602 796415217 326926242 976653795 724517734 522425974 174246087 599183670 432973273 316792692 926639890 903554482 281613436 858722097 434006396 348508657 559376388 135846250 890046863 93768963 397854127 595062855 261788767 860690637 206852885 34860679 657046540 226919340 177578779 202746543 937251223 44968930 550308345 733494597 39310287 527748114 325897980 890793843 382347766 361326583 330167223 388132844 361291794 107570420 721484507 777898534 651351461 166958436 295577536 875225908 884884551 585705819 500949116 677065447 706184589 502706840 250963395 438881616 998577652 27328834 915175197 484943966 943630213 451634908 41804362 267793407 909126980 343304564 826107542 196727332 138699559 814910853 715755464 629663960 847565504 951481572 378663726 519799769 230623817 740599338 844672250 462824802 623584064 11124209 914142538 987863780 657522706 380452119 397930136 175816443 159857208 171393402 260338117 943392651 374681306 911380272 406233487 219634989 610898492 158080305 869543045 476865910 507837156 999736069 866604760 650441719 740794316 803704738 193636281 72537723 695645707 334605846 194691233 440699194 33202106 839504726 118924194 271477929 783245940 235790714 98334607 715179669 857231895 951200878 117771300 223634788 564762278 348977888 939212832 628129732 592908667 983345629 262601640 135533050 754335265 386976331 483483668 518589553 681104502 370480513 386465071 115875072 574985031 559425437 807933489 966101479 29629045 981446584 153481063 987423461 480814335 986013824 735389988 507030832 244352331 335161277 72647653 717615626 551676586 633373326 787521007 775210182 817363873 44342332 184850340 972045409 696824692 73654 790328681 724370268 722897123 524377595 576155135 420447171 390737284 636142188 711356191 365216337 463150000 651366894 679219702 972316451 896287836 563364764 249269579 704148562 86640192 420957986 563562383 170117610 915233814 573132040 641608869 660284930 425389515 68880392 227806702 770947640 213822110 2210253 300194408 779171479 234232643 111599484 434936996 234973745 178253527 109600276 34796258 642310511 150037774 216339717 808035654 559819173 60851471 466685198 841670384 280181390 747590695 169394557 294053497 60796598 699384083 949423264 647509171 268961636 976698995 218158733 254472536 782642371 708086810 822818540 385109071 30189105 795782904 526323728 215673455 64361544 215574389 171625833 987181611 73520483 228142929 540212348 24304024 404655146 154452359 139691730 597571305 168666759 869939405 351819736 861318490 860703999 861464113 957688027 972734709 439355753 285703630 775688004 591874966 38917812 589239687 400480451 357670890 876627994 214747467 688722263 191716051 606729876 119782531 896358687 415000418 379447193 15191013 628391597 698707255 360759918 520399922 168940546 257798501 191972252 88916482 131796396 263758242 415680600 391764193 884898577 193941352 888920445 491836214 621602635 160485804 555026880 840616534 961842780 849961388 333967452 108342128 574327764 955396618 369163248 917492173 351708104 930024602 924452410 178094425 225758409 80497732 280764773 322328175 916186364 561119820 204579977 314779208 712764460 233224427 517146927 235812862 410868808 977272538 5998992 761989296 523560354 572582196 777995729 422667193 369615783 343327636 664190119 796313650 940628607 530748005 683276521 979317623 3158499 102047334 271011962 656203509 481512303 840342458 942984988 933818534 369973899 244690946 230414633 137485180 752652260 403040140 237527376 205473459 903823002 679217081 86716459 536712972 177494716 2762650 903357737 941135206 772841420 856323991 552830083 350651002 689451735 43754818 242166850 285858301 687902110 617888842 135966000 830521858 439800073 914830284 460293272 343790208 935333380 803018721 729814565 268678492 164631829 546271618 613869651 154814664 885335834 83710296 815351236 540188252 797234607 586842190 594366652 221579677 601962957 394320499 576413536 996313077 934066611 878220401 753766824 217600772 556658589 85877632 918139999 599372659 210230633 205801136 314031988 186420725 494278597 378699536 920286691 436378589 572068831 19031774 224484078 273554736 893245828 746270749 792638263 232854059 694687924 827221569 767037070 390716508 611768124 830226101 569987735 887256514 910435189 960892986 459934095 252325516 883694034 45777190 449734359 295293860 226186323 391919165 870198596 909428042 852246635 107315733 209013933 50984675 505928464 552854769 828616507 817553691 64265279 973734216 138547064 835415843 751215956 313198331 648038904 448581060 13951895 610873664 56336472 421011068 308345478 962238564 800729306 507577586 425465585 85143447 418792015 653228789 213134769 76677447 402684839 458100251 930642497 368618296 377250330 48391005 198183684 83895265 840239456 291857703 58531756 536226128 699863546 459763821 954797125 548536017 175496064 497453812 705301184 29594917 569977910 610427786 895728763 811642941 96813233 968726893 793847266 17889569 281229485 468553183 658263038 481228929 345074874 773362532 641090432 988381040 997459922 581100760 111797435 175546566 564183500 362555881 4529519 419159129 159175328 527638271 211807440 29201816 818742630 9515081 577938173 14769019 800373256 310892157 193788669 52833148 672655380 184416199 131343960 363803924 142940147 485106458 188204118 811570636 89719275 421162812 529105935 885142019 573998320 318351075 478922933 185794965 389598265 418013106 838954673 533678524 601984411 683634590 165515405 849653234 684498457 843609125 374988126 33281625 651626108 523622388 265263247 761607829 417686156 900610399 984845381 223625372 532643089 480429959 710283263 844139462 599515987 71610681 265970961 641070072 248961240 789639152 790721351 653367303 894653292 112877931 445975705 564980402 678816315 685378684 239202968 868228065 995141363 770687746 216058000 593137047 705311045 748942970 322663676 867462971 948779564 133306786 816773126 832649810 699019393 586089088 757960975 790661577 152910119 283560273 362238538 70575838 390851461 741244640 642320945 242634443 758282333 761778719 322974311 727767130 586563197 169237431 796005962 223813000 778382228 14482138 374358038 854714554 547757177 959885901 987445318 116933593 737648970 703380590 41978122 848533220 46867539 389142670 702397875 381910352 257447713 345237818 844414954 129565329 593269796 473259509 916357845 452994030 805583846 311708351 376694854 281900348 708393565 899259615 854170568 513229169 383569140 170050327 272568375 24132937 456169653 761643803 292422137 733867688 984634898 388199030 454088054 291045250 208415109 46850043 557904735 610727977 486491138 946128464 787665989 52494831 260478184 649107922 869969769 353872896 441658187 518803919 509373442 732960370 147012567 21009066 193173858 18214673 7326356 242522364 199366224 718470131 936198121 118166013 74850781 723442017 260012792 773388229 909146771 450881418 498609276 556451144 245680736 668979727 419439953 776665893 732320469 23943780 527626486 515163790 411335858 473639201 456587232 687066284 218659437 182783810 73592291 323576202 85309889 974499914 915305105 268697731 838408624 67912515 227355110 184437682 760953958 875257849 814247201 914241079 221299245 440204602 318053153 491803049 517526130 165565802 270778098 546270227 887553205 186809825 624420899 52113688 335278527 481419224 5851528 272585691 306535572 630775982 379835255 964901022 767784667 365902929 294117789 766157363 585231360 601645587 7517155 800347609 15391316 22597030 395696832 213305662 409662998 731801166 685567280 355932335 773742808 786376027 847897891 74442550 461481738 226385906 117766565 801259154 315177357 122924284 771671027 820614572 999455940 745398329 880213004 355550775 465395102 519114114 520337749 29699212 24151089 741977976 370427141 838574750 478528317 615048734 794824441 101265277 880381133 188590512 563849189 614631180 806676630 758309866 701171799 381540405 820333212 678421014 788322257 169113500 18113877 946007688 679524024 674706331 587500970 382866101 716486825 856031146 579388502 391644607 903665695 456567607 661436771 393297825 607503712 437658044 993259360 385322611 525686255 341202631 998214011 576801433 766042881 654288139 587548018 986631062 848989927 571700311 943244241 266963688 641551137 968894968 435714739 765433188 333991662 993728237 831008509 132441498 28021935 553335270 139704036 124464423 97918596 912081494 324907623 109696476 379963972 463048662 548069994 38908785 997875399 185734026 807066171 935761742 575826906 804563630 889899061 800562409 64226303 811838666 290249783 388963819 395639028 794628170 854618363 610536296 102686664 760454575 327499822 807340307 485866246 182401594 115432793 252835910 518073216 935354153 122097842 121572744 316211888 129037682 87917169 5082716 831358007 708158422 259136673 527200209 854721246 964717927 549288816 435339413 198542471 204847027 5903482 173826455 151407324 208408 730391666 385970594 912453008 909160522 111534258 265834238 880709385 603087016 33719610 738596180 882274263 681792524 245562939 616837339 266253510 400257335 671379709 470850502 803845256 124227802 177951007 208806263 768167041 80689207 300905941 667359016 508578086 709075769 195621184 350722127 946161593 266152887 370253535 622948089 949611376 680681115 678820859 378933120 941136779 527459059 401747577 783073938 393284733 358193080 966561509 398672450 868432015 158047425 259780340 55797678 853115442 900493349 195678389 837488078 843953234 394686575 122846970 540404487 98373023 815107985 662853813 35456243 540909414 992775901 366410232 680912796 119982376 337535620 380161294 674204472 690189054 845884020 130374872 337215040 691861106 376252577 738381421 206891712 158256190 588587129 414323406 810812946 386237571 123025976 981057912 371422395 473252500 250137135 804145426 517531151 742980945 503024565 712224267 207317928 567623694 725620966 577271785 747039359 285744314 909268194 114297338 824740719 600074029 669800563 502424930 426035965 533655885 612833692 586524466 448440915 153675773 899662456 437457443 506419587 563016117 241432787 910015978 330548164 678391713 701380782 665075690 608124328 185361420 362824313 555999251 977310502 466092542 834737605 446694647 301042537 998555449 219380761 941529733 545125114 860875744 343680543 120936567 492093253 307908577 811193103 173099599 803107309 782332795 371601480 593692997 29130431 884698878 298861373 27973472 464866746 188285566 662659371 832144341 29718522 388777903 444218360 98361048 164162707 930044772 182375318 580367520 106871068 115607599 383650458 137543267 994195315 579138075 117566931 455858501 861390055 593163899 845461319 650578028 848824090 539420176 239269859 771309058 242325804 201966095 921906087 286062191 938744546 601657662 676337365 7660469 637366167 438673829 916675158 793465796 162537294 996596288 872624634 338225115 718303174 940901325 558949923 334775934 311005847 263159868 88624858 337612492 628842340 723086565 852067328 505638076 932956975 972659804 732374008 191190575 105206561 445899056 754039979 918588684 250835822 734687739 784164001 208791134 489138926 766028882 808480654 709201981 535326545 225232816 686448696 698547077 43280917 70021201 402278582 619409340 344052969 972843174 315553876 429894254 937255128 287394202 803642334 509131262 679342428 497547846 787053695 364023301 631437443 637143220 352644959 69725567 331563415 184781191 398291155 121003592 799472002 593476261 710753013 16974356 707012593 194541709 250348569 359960511 47918534 973728217 327246927 592146882 414355585 815562817 564190452 621007111 604085152 945809514 490263302 318299060 454284670 300640277 257402563 436934922 760693601 199147172 338287377 270249001 277586024 673791877 983536630 669691736 538344050 200817767 797403459 275631304 121845789 302170789 872365722 53566086 34887983 141475212 237986299 370350724 743790618 730879305 90835915 766513144 824238 909601981 577428635 827072295 703288915 326389938 323492887 987749068 464713510 299213899 425475138 212615733 731073371 169007664 601720620 548387667 392832414 657775460 562120131 913195540 523157996 574313192 834163926 749172514 690309297 392930425 173624245 982225530 994505086 503602623 485595872 866440197 505495915 84408569 418973777 489561119 485643090 686859862 306610614 671376887 962556479 417700801 308914975 34211913 521082316 483509132 54246153 565289235 366639173 74291948 191304897 342115202 862483660 827005295 22933109 794130529 438737627 30339177 57960790 558675745 92036299 448593016 115039866 387904607 815562534 582028724 3645389 343270961 43207091 402412983 704318329 630971768 773109319 192641473 676487463 351571887 382332089 858079861 988006361 103321978 696882306 949353532 789630220 102368460 790009756 642490612 837900155 842159440 187948016 261932149 330186829 196000422 484164119 958405797 18425973 334864816 668913662 414913754 65184970 715189946 143440204 973721778 203660365 310864883 688393654 379662480 163271859 930153208 226053422 816285693 454609653 606172147 8338935 216926201 717486781 495671758 244609875 148704602 555039939 607796893 482492141 137303504 898807024 489643372 920880376 416384444 290488503 981893846 203037164 918452749 91658823 810803437 613854604 943124533 531425990 433075922 87334865 74235656 873286083 190534258 727010168 120862858 745549357 253499694 494840056 411526337 531587746 129537407 640504021 595235119 521878447 130652958 107178183 799623001 833822768 705545545 112605647 844525929 392709863 368114136 342003003 181076343 237960079 648534451 895986730 908610006 288006966 569946935 978905873 229960042 343821783 964000991 23312241 254718506 912749853 905132430 176207483 412527460 105675907 791943375 551539902 957085459 952952513 498226837 319138041 694641966 871857595 670713615 155860079 735358330 893488390 232306248 953524149 259461533 62468427 804610137 805960289 909435817 835486890 184006498 713316341 94119383 42733847 563817039 868776833 913792256 724888205 813163778 697847783 367146481 280139865 998440432 482110911 585460447 697229271 263021513 107607841 742234172 740601613 159191567 998753162 133922742 936144552 122497974 998827765 448188813 343528064 435658338 988172234 14647388 420735786 695625878 3812030 503501444 993148191 945058034 896155556 449768347 940259774 702978710 383129519 701494781 621769392 466691863 765670153 525882548 324816020 198259811 812846033 85535642 216819138 848213054 28054281 584851366 496574928 329791709 81941257 520711030 303757421 584516929 373906731 406312455 856015261 509426798 267850095 236675778 357191567 493905659 808546107 570214269 269216533 52407990 442006852 468559039 827664584 70038884 225586078 505133950 929433468 835824186 273064701 924557426 308401170 394245012 77964342 48949388 485020628 311075371 103954168 718928430 43876311 663965896 39056056 703263595 837183887 92214277 736099502 795272987 142505755 726039915 826217598 197718942 112079063 698043989 305306692 644099591 958985744 792851390 541985628 399750926 736640701 543201077 836112632 879313963 897448253 717004902 764354380 975100535 621315019 444285791 201448978 193086811 628534970 636727596 790999097 720777093 568593587 802901123 575884815 190697433 825788960 347463722 61948492 7020754 429757430 797508508 540308994 197828335 733349049 400391631 484402025 221259436 159375824 612761801 41950258 93663745 380014618 231645648 835564453 5907344 70429542 174613666 756245152 492211864 290755230 459385165 349072720 486219770 980975181 672310254 972810219 882589301 696641270 669715718 957439638 898598044 685339294 10415144 250910251 937799158 912523343 521653881 903870155 124461621 657577668 392586854 443131482 852511052 106431439 506441416 750864794 177217911 2145560 999915386 393609069 251436552 586159560 280404233 939724550 169224548 353400061 994133906 594684041 333803314 754757472 666201133 642885929 956638002 692191247 831442950 717715178 637108050 709483194 558728299 340655919 748584921 316495858 510830551 779258022 582049254 632514502 488364651 253305960 154839466 698171408 659285800 186142360 803297309 296875781 219761612 134333213 864531262 558255156 254416877 531763031 775264849 758721776 673181761 727702346 387478219 287335998 845960789 29925571 106646063 910009613 755694215 178175783 884763416 855070573 309373435 384378987 288915287 205834588 766104420 699645776 885952017 950094867 579384672 820261482 949173276 274775577 27380355 363443395 686542555 42191727 281678757 868600580 212323055 950596756 140213144 457952383 440174948 310890599 865427173 788014095 710601903 581743590 898110727 887416640 911596148 83621981 539608501 63967227 423176958 536610768 406840026 817326170 855428277 186062925 995347752 227338858 47358039 219729913 781141517 738436500 909360530 795003182 178020043 750767763 792836581 29504521 184644801 178989637 350655910 678814221 245594533 472247095 921777474 38103860 330336029 767707886 24974126 544722273 459340685 570297735 302991917 232648085 524865614 335313732 617406388 308566458 13946405 215089097 340971618 757286677 880536198 190054259 684548519 977347845 708365908 317078917 260580197 852784820 771212689 837493853 849737854 447618699 899738982 635825615 441098714 738760306 793155174 553594166 175558652 15036302 814525702 524607504 900796279 782151011 500814689 16725002 615700418 517546637 88953887 463324278 184499821 815765818 617737743 647226154 897919766 251064637 793911409 329622156 570651660 772977991 316693138 167782992 289741536 157443234 653548079 120599696 829830328 228491320 94037244 986815915 495256046 693854316 741134288 526456126 687694832 398706848 504847212 15190685 418901642 706651283 436629282 898315412 184961197 837495173 717575070 991648023 798388317 693725273 942086095 846398946 268717353 713540685 195450156 732341587 755773775 288638958 702205083 700474042 105663384 387667090 826929659 535256329 13870301 288730436 873974516 583980714 645397046 18175571 598102902 324158939 259619224 351188077 577886082 458119694 236646264 682375929 569237075 337162859 370014167 30012100 367151966 367760037 737534797 59527443 23659054 434721982 520081649 684516074 558879440 339661535 309087949 96167647 663818118 622860595 589164130 321719896 616374922 922770392 502754599 416545692 317805031 444326744 971796605 384185020 725546421 58408062 253968694 222910479 125764898 186806199 605500861 699491174 853301785 947694006 957579067 868881488 157113438 274365500 153287238 807460989 640612652 468174902 835177411 783102475 272639408 582498323 114578828 426376625 774744535 474057482 778714526 316918994 882175690 889097559 232078524 972617747 506362509 948362685 901773486 527795216 871294665 24611463 322210942 189334603 993656348 441053744 288493355 413804113 698613409 199985955 467561878 498953166 624184390 825263741 80955975 582357737 720708747 464964023 390608032 677524238 519863304 736759404 510399772 92393544 775928578 298714942 864397991 410822954 857735516 991152797 686190938 262186572 802925638 740582986 369410748 853697764 951410328 244326827 75174466 956142754 586481808 524427967 243760129 262314277 473114759 632331467 106832790 799817560 746434642 272893806 898583433 805693266 607308895 62965982 104092660 496036426 913892612 273145836 499631839 32693768 366697141 799345988 139328886 356048851 26319141 618612764 940460402 221014173 234683080 533878963 170986304 27946690 456859207 626937828 501473829 800758454 6580993 702024900 720119741 806186236 386835192 953601736 308963437 806935358 573573566 905599273 419043091 177786880 566813499 66469534 734090428 765838804 162860334 211273073 92465659 214896843 219570193 899005792 383473273 329784165 492092637 961936972 808763640 792160610 647485177 22534435 431159106 967833764 970304939 897108699 117432208 855548365 670873970 122807076 636537215 516479820 588809425 35450105 432945121 362872938 696455645 327139762 425859523 760742983 518501521 557998333 429721559 86507431 282690852 69156984 307433805 329998794 847371667 990362679 170750591 599534128 878064029 710892397 142173727 998298524 685227689 492410402 491679527 523136330 41501928 535545100 128274657 299074639 576032468 555014840 823481099 920660072 808248410 872704960 382491084 845345688 276484414 525205332 839266382 592557015 819235211 109546809 27500547 629800033 376024343 96612310 329927127 486062858 527266518 162532970 902107656 594708177 90814095 187118256 893619129 654425321 399269358 884042890 533725281 11745752 268405271 964118283 959402370 807118846 468498392 505860889 223223133 621590847 306718534 498467165 449708563 186538439 634634189 674646730 106579008 510048654 786650303 820237973 476666727 463724210 344286652 773916004 366209781 588808950 622614785 537678251 475841224 398209110 326541105 88455531 332268510 145125277 259496410 486791651 758478352 753037029 607495691 543538351 489767327 680557136 449464547 542543794 285555561 51868456 865120536 850838022 60159948 890659318 817526596 701128582 881588466 560037457 45590131 44683074 857134042 907725291 550443763 219374335 600050339 168296172 826935052 823930442 89774134 686939859 166698176 411450943 664110762 916994564 15013301 491177773 958055307 523817707 285771704 596684634 778886228 205921988 196870499 969521606 997636945 580958294 406496932 524391751 409747054 166838921 293819572 31629743 98788966 970095708 995984753 905019786 473121590 870313349 513639045 12951669 946642141 872981057 843867283 389877880 602499662 448677849 204837485 481526829 459028372 784984093 84866973 176899630 695378410 824915043 210728554 271414372 857514304 720019899 513230212 734788543 862818542 749705704 218594243 692935572 784772846 883237324 550863147 768486110 322354272 196284033 340723446 145198138 462034573 749210061 453759212 498753828 142550662 659410184 64500475 404967200 866401922 442551645 754782345 667988900 47879380 625171208 317486900 280187363 684841369 937001692 963319268 475049481 138438433 239415587 688727149 262476490 116879815 993851697 844545191 997957452 21862032 297837275 910423329 648827930 855485955 868413323 73951308 508931705 876473172 862003518 224442244 859120863 860923082 698936739 206615552 620848454 62795006 837183114 861357551 393792380 216806305 961354247 975661952 65342373 998989885 638879741 822237652 139189472 156602305 794149550 634800827 228803474 410523419 209168784 982898986 960081066 29341146 552124864 136706856 951513613 954410263 635011285 506208821 806431712 412508300 961961895 494269213 218764385 518181117 228579664 634197836 230782866 233565701 627241371 360720 866661538 496063984 911154557 561121851 218347001 418316439 813414500 623556020 586568023 60798486 998173003 290010823 918045789 760505899 802847917 306382842 169111667 816817700 781268977 83415392 440704841 535885905 732245466 771128554 778252892 612284599 842884386 841480884 541165295 754582569 988953045 415506630 396814750 714556401 569018361 336405094 194880962 910890665 546975201 378149922 767803384 839923934 440144223 866419197 968476955 16887782 165375799 40731188 690734257 913650781 374225710 68012666 384071032 477727294 445435299 719715145 820201030 361759486 340291997 705726852 246451730 218150619 195933194 16974615 432987009 831013848 894695187 395158456 584931718 928406465 746171653 858256865 228493264 392358196 488888007 986698212 106184457 1365464 335968251 204848859 224257244 79422473 889210210 19077266 373227991 412367375 325141906 825077522 249948793 784311006 232121568 800680341 700680524 54742460 880902144 476235363 808681058 581955308 668479358 688053366 567007338 707099320 848744249 532294978 65342685 115953752 242187179 999612063 919918480 849066648 648447616 551986694 67999211 203851979 619294764 16386791 985095842 338698203 500309088 822437577 231273449 160144536 661130036 976656494 816858742 524784479 270055586 76573262 129371058 562035465 745643494 967497224 896812837 978575416 39959897 184110940 498555642 120245081 279507719 972662836 582986911 55126541 26455205 962036681 967320111 929708747 146042395 418464066 264226289 558495136 780046826 779767359 187029391 926688382 164447925 134309743 984755836 629995931 434711609 603995628 338634093 516758555 419860433 39615041 883470480 562560842 265716640 521944701 353499152 930854539 845343742 353121714 512133850 239930436 577984511 761234371 370634860 79322476 399623107 804347731 25972283 504402493 195513897 505183254 328176221 915739775 267842497 963753759 437153487 353366550 740864594 766239021 325181348 459984274 596885384 631430014 151181454 456773216 389910543 688272542 447178531 91715886 542237137 565093447 142508092 516711004 733367088 73362807 32707347 582785209 418842212 649772397 647874353 41157240 287045548 307250150 372434921 194137653 51166038 423731113 504407731 265950967 145161355 1834898 686457833 765697007 320020253 374659523 718473745 526406879 810212063 985576537 341909423 390532583 341732366 747357578 911962952 567222297 661047348 918611995 875255704 9571057 126236205 733341820 303656559 401847082 896730080 138503822 510887618 303397339 83827345 793591694 230706551 643668518 616379472 653563825 114421270 18926289 104655270 820604863 228956154 823570094 439771643 350995923 662093895 979348190 475890096 257886188 772268248 93764525 681654978 478054866 96054756 976770421 176321676 305494403 27439504 711672294 616841114 464494574 962619705 335310276 462887890 599544665 715500914 707542431 208225321 437025930 183090945 993994596 283733168 874297119 269503392 55165848 848832081 619833306 558141681 385034438 757477365 521394129 492342433 43471212 797725346 645275531 313392953 264486695 588909363 327096529 44184585 600027479 745143447 151625453 750597475 985208833 662873921 118228668 788673309 242592772 311204920 753596848 288798651 221877211 995936683 891963207 756412733 218750467 1129222 412726320 831245723 114937821 804675339 997968063 724090410 123351622 386677856 473331960 461765222 285513725 879216691 758204474 944909491 208284676 272265156 865692607 458083730 760696669 968113617 375479098 519231726 131124623 775365002 809985564 368256795 753293465 508448764 926671182 816460275 191640415 486374865 901012565 890292351 644253732 689332401 168298116 312746182 24806914 743824194 98678735 352902295 509856693 761966540 916457096 161291018 388715904 385132981 629128981 335587163 522106303 509017241 137978176 20664030 231863989 545296148 926029115 509399722 319652246 896686198 516973560 104745780 140013647 941010034 680506670 67367079 721240237 545471355 553163052 330963373 421047207 102327089 305812536 484093410 752493535 655061084 410240910 770236331 564106832 61991002 538260044 778738631 467354836 240819611 893011941 407654341 829180139 290883422 796040664 456965975 358804989 353819702 83180313 797973917 380156256 751756706 319996275 683639030 117745542 641091781 148153046 958445058 470089347 230223219 571330532 718536132 684213393 844527897 999192617 562690622 842186095 282423348 795357171 511006690 609091950 322280580 923452346 536360269 62239169 160180807 317489253 333477656 889868254 46900089 418544556 531722280 557707093 62215867 367278834 847070309 698865526 587575206 824385609 648478366 340363831 455341013 133504445 796983999 979457807 833675188 388035274 602918176 346266127 938616060 480666167 423327749 604653234 23366041 932074752 191173476 548795729 712486854 277566586 62779234 587395790 490875555 529833402 276384889 299086155 657636597 929252171 511052630 787634438 184825382 483817784 85049637 171441355 540236236 278369588 379624072 180991567 906350637 157846228 482037498 279024106 957377418 600367472 763733111 206859836 852759973 824277701 260343747 853388521 276466363 267538543 802419385 192239798 565869907 952039994 733775563 17846772 456291980 40135404 480302728 525457208 734312289 717788376 191135566 138277180 998967927 88815156 951459918 343505182 156088235 503138240 865531588 813788737 836667913 839410550 232681451 514952244 337790341 434004282 60628666 285158796 916859495 561255872 105647600 911243732 241062880 68343218 305329927 733721811 516166577 624161973 142441990 800645921 307206675 29985286 444457571 436890855 644477997 947740341 892542830 338115414 211661136 543734098 594448279 176787649 78598865 697908825 983975599 508989297 589574748 798449722 139870505 827590923 695009777 998014283 347564271 244610640 348293848 785718492 96829491 357315100 578720724 20035371 662090707 124306345 868951763 833194317 590934567 735476491 151998094 66932761 315839804 403816131 484518761 485534576 756894213 92230432 185610297 223593243 805791158 686237613 566119125 332245723 956774358 268711010 935485330 435125812 800474180 506785167 231806024 182274160 131810135 466284904 372301635 362981132 888677813 448145487 123828643 102256484 474300792 912802604 798416347 909047763 939673251 371470396 547184463 2876056 853414299 261529231 18880272 3681675 281334011 263692259 334366714 755376670 218215334 550826697 703583547 9504915 673887812 962680419 458001673 291521464 493490460 617221725 536784292 361440134 734554453 97513673 967921110 183824056 736983095 100266884 634008564 13762611 856689248 768677000 269182156 842367800 83486205 268712748 563716837 966776470 386021911 872047995 263521959 36210160 220659891 851390307 713490146 100121065 803741505 517709361 901628346 820298808 26584423 580507592 542344464 163179786 132394601 120188228 250826785 588910819 635709709 901445722 161472949 585875723 997914504 531510128 395332316 425952176 150173357 511851265 406447621 10145410 330873848 533055292 449809656 966490128 352315315 298685135 927120058 976001432 318725468 619055553 4538174 575749386 896885725 416483230 577228781 594065438 185065004 106596323 569985253 892473996 721882759 591417573 481907449 368596266 244511956 364024238 381013066 51217544 199147649 232156561 823401815 504357917 446936660 906255056 772398616 288497720 731039681 502484280 135377900 867892424 231617461 77539082 263189338 200005167 669632592 301865420 652153317 202782131 407730440 194156103 240677562 776761317 664403070 960335245 706327376 961291542 20188925 513569967 952325695 62706728 775166520 570341228 317329868 36835123 37422991 968864689 266755323 79755299 418364593 890511075 22110951 443474312 374843623 32653112 450090864 702818413 206640096 376999429 427773971 887863111 847026630 658813984 328493634 459373920 975985558 831727922 616588931 705880122 737355879 884705964 253952593 481568715 965949793 221983616 676112101 977397386 317253555 663222639 472054436 891033355 823544172 956778936 99950294 248898695 281825196 725569562 309407710 992435173 790081175 477098203 815702318 959153722 525120895 361768559 151351832 266100585 766352262 592257381 105883666 664150208 669336112 832992101 666986451 678718898 938619625 127483446 883863776 744822064 235970990 859935028 188281779 156444402 314197163 178091202 849325154 71052276 54327103 964459073 672796407 291327449 593767329 417210029 827757828 790648842 436046172 683287588 354643124 57040048 56013328 995542326 398651724 923566145 318012173 383242399 702785998 301974225 989211021 653896303 506285608 642161012 944374945 534320337 364584740 201707965 287122178 627313500 127380985 417265607 697535797 540101397 644533544 29016803 367419860 952885028 675287786 547925244 7611864 207130305 313038014 299737847 973815943 329187888 672179217 357249997 332816791 455534855 710428544 778242520 541936350 48020741 260071843 917431588 246064899 100085938 295845328 958736836 967353523 956897208 608035024 504872995 326618114 957789825 659174565 801155742 233705725 546423381 308795643 394967490 948341579 985433308 652738095 838420503 78331196 455967981 666648240 314104541 730910575 631733983 286233673 306403132 48142544 435250164 362239255 743875879 179219253 954881952 69299199 743976018 196522032 903645395 735296533 790269108 568856588 899875885 465034396 576913848 830197776 646764934 211244107 943658887 875712309 724427029 761705967 827671240 128932698 930837475 204578447 521193673 571474249 974658790 335290174 491765 910944930 317302847 381487021 620015607 100667142 579540725 809225113 908780854 956182262 680012341 946385648 122593924 912220213 904542288 292886723 924256228 732907058 545940806 565953968 536215315 837049782 236758955 148562808 331325287 157338541 546504158 608865968 696080333 204893600 499664601 966921988 439472460 647009979 681300329 158769295 558457317 665100563 417111403 926160082 264329508 433235066 341661927 688136667 115338947 105365916 136519926 842261420 780832509 75489734 86179042 35161732 352780307 508891227 70519914 653466889 437331548 581548240 633929164 478897256 50746122 206177697 328806440 274870597 25805841 766939893 509215665 740517812 73772193 523927692 771287446 900979000 917057181 480693699 628465134 46520112 84150428 854881962 824246598 605255022 434376994 955703119 660288602 984633943 14981699 539434494 293424674 522290184 295555035 262282175 486854152 667808349 221973706 56161832 456066843 539450236 785423521 973369153 113092190 253629407 573298639 834947884 110258995 274995792 59799623 859335299 859911 536052270 383341815 928380958 56479283 980097976 858321111 620218529 772872010 153972273 77667701 638604613 156751926 110152424 364225872 838863390 923182629 17777003 130919928 589049988 115436404 5944338 481277438 472788975 388190436 659387693 829318892 960886605 449021594 254608172 245579910 144505574 879729762 386399116 341466119 337807463 799140810 262801261 941818380 981285429 868492518 540463899 248955169 827497727 655792390 973965709 988574481 918421616 200107763 461587635 326609528 661877969 762928289 453677223 558832028 970609264 181441956 638441331 508161246 155976340 875597473 936802781 337259052 793569983 413695196 861344395 926186357 198933226 57591389 907582079 852911463 273653948 484598592 476422340 888189620 327260941 970809567 772495366 861991767 905968142 80024698 589727968 333990754 13805316 53284421 936929523 858609775 746737344 753702477 385871704 656453177 470367227 944682000 88472695 753897781 612102455 32503178 253278363 556803609 930060957 731658616 918623030 320651707 727616235 207730207 300697000 733312662 171549420 204324319 107982960 712481677 134852139 655808836 771860622 32204767 360092512 153448678 932540451 704586284 716110416 871772441 777834641 508974397 875394359 170813183 841761657 679396843 618944305 984053792 66390424 201276856 768280595 682183442 630240805 959877113 493367632 475783401 805068302 871404445 920331625 823972238 67105902 168717156 244044238 27192952 366410130 117632822 841200509 273164303 985240455 32043221 137776140 841003588 813252994 614731202 316937069 940057258 85756224 53584628 387906464 284017758 645191587 242059253 705810048 88933098 384633046 213294657 197454610 164888361 448651021 817333546 968194873 673625962 28157590 279647426 217954659 468096307 860054499 442993868 47990213 353879547 386548665 324383633 159941083 750001628 145804643 975919474 610569414 827479593 7558626 301071172 912298416 249692653 71311481 455607333 793332392 682778508 183862171 681765845 513154998 845658906 189969010 830417359 340888784 751478112 692112131 946896619 806701208 483262056 937580259 91056488 552244767 174399424 307557756 489844318 569395015 632443148 569097428 576791617 600063861 592857627 295686728 968231184 536052118 275091518 254814903 151941431 767983497 240967698 448237105 531497855 421313424 930200974 518308947 97517743 996088468 65904750 193039467 90046407 495301510 805177493 856126341 426482325 407555072 874506498 625992616 292866210 18801611 952396010 572628236 679494003 800309265 584827709 578642311 155584194 759871926 292127405 547120821 446801974 292267461 805658366 495150269 760455847 144491889 37511799 419820716 218055056 769496957 191050857 290735620 785413299 779484628 336281612 740272498 494520422 938789829 795976693 103180756 855840402 759622218 708748881 962340165 7943441 835382390 619658949 857536867 161103053 430798190 2162857 355676971 40292235 205053769 511326039 743888120 710137736 931272442 884667176 940819247 566285067 229927697 242237169 563503539 602008021 622770354 358096962 619466947 515810460 546675000 585788836 152422452 683215994 341656609 320594613 631502436 863956950 817316052 558300940 359374520 339596512 158249374 654754331 65411808 835770348 320797827 536252580 650832319 965049298 707252110 58749536 401709549 429121770 80574867 55680782 128654440 605387178 283876575 192665510 894871828 288006819 573383994 358559382 826906931 445408170 812787662 958886790 936701381 576901312 899413767 415103318 553947233 716283284 925249779 950718541 656223553 849458309 602079123 617246895 598377926 334080188 839617380 835314356 605040970 341964104 305226150 355806104 448029456 968039813 151714788 591027630 183699444 851787959 843889291 237597609 80796313 969515323 413263490 825308874 53597488 529723285 413979042 844780161 638976174 401843842 502178026 336245077 315126916 922037905 25199132 627935058 98660098 777859858 818447193 56350833 20571096 718081930 539021746 731977851 86866508 349126701 410479814 533783490 564790330 190183799 449189031 17779415 595215570 226190094 400253750 113350459 800454820 893870311 132345118 425130750 406836047 740591585 163279316 840740537 403620237 293910740 410138297 348262409 409597001 878099443 570910409 647964392 391122845 461042167 237261537 464912417 786975255 937261210 918464309 69528392 172891405 808656993 801432494 95370656 67773047 984372807 438019727 321895861 615481049 543713276 569433797 208976434 521971645 172330063 600777196 501294790 344556746 795798366 147207847 832871302 994897450 595921037 980208864 554958323 938961617 887841716 779831866 848592753 776846328 624548075 798361634 284635063 785392700 305455970 255071537 11064647 957352765 772409035 863112003 559579495 43627792 526593285 551983256 690225074 906755662 308931489 675713945 782921584 279397654 663061408 58986660 190704871 901417438 835697618 123344686 218592185 976917891 571582535 189363404 991371594 789652702 91200216 771070199 445421712 846298579 548686466 132968901 999840892 939815071 707841635 786558267 293583814 141162436 822512039 358465009 796454498 419714582 105310649 804358558 362657311 691579068 550401246 851117823 750460236 353485032 636094383 512441528 917637328 407228419 636133650 714852919 419880529 730045959 360840878 257457996 112350272 699298999 495748061 102873322 605800925 54917188 742691077 157814549 530385942 275685689 691967575 799749015 720929970 880360770 380776364 197350704 328051887 794671822 924192353 462191668 745066244 454307048 519428231 727282381 952004624 212521120 619308222 260845900 115297281 48324563 415493673 918855100 336327429 956859221 134430386 770114541 318873075 495644641 596200031 386082692 497701672 973508704 291632221 934612523 670139770 736463511 608494027 604502783 417855445 73503769 591917936 205263523 576128632 29098553 587761122 695447457 920767134 249926069 481362124 419161341 853848396 86537367 369517160 587725073 146497837 48884306 241281801 806905617 493234264 649699247 241494024 570748146 69996815 809106486 263663585 710188239 76648455 72014420 21552556 182269007 158344143 868155330 81213366 611773686 315100817 733543199 861466759 586304895 352751733 422698125 657749314 485973720 852653548 453534263 588870430 591835951 349612292 552156483 254454739 658281253 425295898 713020462 208688832 588747445 659430981 502079624 476347248 519971501 509622515 593320060 395887353 971797783 989069231 619440827 859107372 760754279 128729378 536186226 535507101 43270285 563362132 529648339 314378076 108310693 189033214 557420994 306998250 828789859 565002794 468201285 81138150 739736823 916943426 795693103 990284988 671736862 354493033 242403130 825588743 845408685 599776600 688430975 737883942 814202753 218705784 576796483 173740280 225835623 594381773 424008505 309711878 891860786 498288 882614288 918198269 479556624 599155493 796362121 119641542 32965 608985492 894757395 273401874 479532552 449452250 838955493 180735227 641999907 608447567 629066082 493058392 893671027 596527165 954546349 521094822 511632767 784685464 779737236 852382248 998572363 367930745 959396179 402800287 83100368 475031103 560300814 180956577 785645264 60139144 672343960 599884797 737036573 99818587 447990844 462312240 382859909 524388104 59973520 572272257 21972889 776018883 189976800 917657573 791846321 673458324 546544514 754070536 562277723 905996127 473854300 834655400 588520196 443962946 920499017 394439130 301077994 798748572 812951572 372407113 682981363 403483208 11032203 375231889 515024309 185220002 705238121 371468688 673859422 442266741 814947741 19298977 308180809 423535614 108200366 521352794 563265221 180894197 833522459 347130996 89059166 82130298 114634302 880943408 948461575 962175377 924132095 834125003 748707504 560178198 867354738 47315143 83165444 975166994 100703502 101432159 982796096 957120192 896265976 346732584 957009132 497295157 299601129 624643365 875602747 690051230 52731309 370221935 219633723 583019349 254860353 166514718 934360884 353875849 362225755 246034828 199517042 798889161 560937620 246611363 303211253 68932457 399110110 635224023 83088329 898712398 159936461 387856155 239400932 217364107 315146813 366191341 641160884 335190292 950394444 284695142 469348639 321400516 850751601 802263396 570344129 232802679 252731034 50443892 599045887 385598682 364247226 347182125 427937856 154992009 310899911 864156871 705886967 505526183 846189022 61879746 875918010 406006326 111860367 189597143 163995453 404910036 530082435 547847023 630743850 636997930 806136086 405822314 829829894 138027851 376793662 605314420 941370721 443866071 100337606 904166813 788984710 222496692 523088594 177216767 116629563 312590457 414446262 139441633 301543926 778615767 147343966 506243971 630837532 22351552 87091000 850102442 249681978 70653899 745566190 974363146 248160794 818540690 791504496 697807775 723238693 274486098 145060028 213362708 788231588 735004815 936012013 169329878 584837166 326552222 617322921 875410385 998994499 862696772 653176226 681461182 630993317 567945216 169710606 678666564 484985350 109582266 171588666 684840951 908538477 250918924 10354784 111196805 991351341 935448719 281331624 550695714 50152401 845618156 794865911 820602093 182372416 864553523 281630634 335339870 442227939 732274715 397058951 998532299 167554586 125205411 818495820 451987371 298770564 163584507 683051583 367820746 419743559 430789534 926737850 193514426 163606104 208194959 144648500 617646408 508485398 131412110 450628903 489221437 273753806 46909657 497819318 237087377 100122221 961800154 389525219 852923217 140998523 12745025 925697948 274105114 518515541 721581359 646088947 942854157 763697779 271017069 772112735 771248573 58363199 909534274 420359656 856473133 219294976 827515369 372410861 105214 496211592 933511503 671963400 999808227 688358937 153548875 283259740 78218438 396491004 988025893 175244984 444804477 70214261 97634267 854818582 781701632 937480631 624567063 626068002 691326494 930573551 755995253 866939657 277946565 232394683 602902576 446274695 817686822 113753808 712879779 227257658 450949323 963079277 986902464 863052774 519312957 760792094 833496957 877368325 583646699 692770483 465320954 860161183 446752369 149215856 976139459 261100399 679855742 633306425 23410157 877019711 277485607 527640204 49166575 913320283 773022645 725368010 446321106 912721458 86056951 573834363 478231537 727902234 757144239 876026493 706802479 943224969 7955350 461295455 622306750 646294806 791183880 309121286 460069196 750306245 392027279 144520687 502358702 295494735 895638905 480060550 579445483 284369383 187645267 660294865 90637693 735820775 795515269 823364917 964151104 634094680 898391791 330931688 123798607 958440297 770682863 508301459 926148547 768248148 644824068 1075075 607356385 804392621 316248457 469345896 211337968 449635785 5813633 245781242 183018694 415404287 651355648 629394639 177036079 812017912 68709858 71418017 42246778 534750848 191664036 314332482 799893583 363649842 371167886 723400368 806783740 410932201 573417549 81687385 50715710 727119396 292262272 436603463 527465302 320595114 343459408 263715101 280959890 471116867 999884382 727454514 280717666 605380259 369593824 763507043 206951302 282351647 406832681 873704338 253308566 678379972 667531489 708699573 202726399 283548428 487268226 561685876 88267359 4500126 873258000 877368755 540485301 700489427 576373752 836171617 140887982 652213409 950434178 172757290 613699188 988318620 515261115 223533328 920204192 542155521 972958476 283662507 963790578 186802225 754975754 107832801 329563230 201493804 10069612 165918881 628266829 671541285 440320047 872512368 102406188 809960577 704606044 386667204 56761599 156000014 527327298 594886534 995442137 293105508 806069201 599693451 742879645 733608604 473788027 30338353 214292660 820699757 761814049 353882661 360532566 792208245 377321738 222464385 381332793 824823704 243975328 521320693 881425756 114351676 650152260 576726896 795898586 75031233 675586856 133139858 270907758 639691629 427187203 663109613 419859883 770898760 875334276 422396222 437534003 28813423 468436453 622395795 84707218 550535878 280395898 16540684 576149104 45417859 378387865 868051068 62553681 257962289 781923546 983897534 544022928 84532835 274766225 958029832 804158153 767583123 771980990 397998411 426905910 617497753 367258852 167610475 835744371 976841731 21571963 226825966 746492296 136234366 974996625 214108072 513606830 745283595 942776405 720234488 18631752 408173710 814836699 355614749 965172872 214618915 112721852 730934350 468248322 64818786 870599795 796773734 209268628 653438904 901909310 588649344 829032756 86261300 329567984 87770051 789225838 75129395 426925649 924374116 751831044 530619576 926986174 467108849 294347425 336748443 618087721 164648535 692713723 625150956 941682637 486686697 949043534 962031881 25810806 735777111 84109691 84854121 241159319 463178176 375338380 382345253 113059985 695776282 878967802 763059791 518108203 789864819 443643015 636422527 635668107 461974917 313637699 745454797 890400882 522048761 66597652 28347450 97900172 39271060 5102684 896901537 180458129 124641568 57959459 477033495 430531803 645401161 646538199 330865466 72291446 5686574 101852311 45884864 476937929 802525507 760058179 129173909 236178734 108739354 466165822 529691614 669685203 389519598 67189530 691347641 345662047 247096128 288260317 235964685 707058243 614884971 397674753 884939508 345969091 406463158 977505556 644813777 36774737 613689657 351465519 800044333 412800306 566396436 96828035 953333970 448222477 749337067 244343914 925602027 865968548 134866231 986681974 894730014 286078676 337205072 947438578 388446687 265553856 386112867 578085465 383688215 12559229 407542197 219538324 36106455 931545307 968967016 224235694 188659630 508692671 272122384 527843334 464881693 750383317 702861181 618592251 817521164 612035080 872836684 418782950 582579357 878915640 411628169 407138761 517743354 451237855 448939889 879985870 665080372 801317064 6441633 626585760 490247039 467340266 674253366 91308989 471248693 503325056 792964021 208488658 107655295 345577169 41920795 332103201 271573265 879545035 944771322 657414746 990253832 504672826 837111654 923221286 134615475 534196072 908757031 795097652 64643337 243050784 691923111 618898694 308249420 758250378 323961409 599794545 670667725 509047701 865543135 151263945 570425857 571287791 165682166 758376003 110852495 986238941 346372145 213737152 268087876 968391872 506547712 444988909 994425493 798252441 733874916 273359597 796629560 307391302 276148976 623819400 653950381 579040508 744265890 450190857 595541221 197903076 502864122 988236303 396872558 403800544 357139931 353179489 311164491 435029860 272485163 379373210 473433615 441872629 641429627 77789263 688593308 438753459 854717468 481035731 977859983 894952421 598350429 122675843 284171006 388322307 398857408 47566316 86592279 388126420 787462780 365296144 368466011 243135351 489741087 984785823 839482547 106740611 113449038 877694304 650145478 898374901 834208379 201468436 986053868 291962561 822622448 184344781 484089311 730312701 639043890 371012007 219405295 722235501 199549448 450846977 936069979 371283806 796421421 687045701 999976826 562457038 349874084 742312029 397751046 584641272 454833310 719857492 440349661 539795030 214129284 176285714 313163288 450754373 149279691 159352876 130640702 154000027 961398580 322487425 887620896 880991546 497962189 816625714 733109249 972991811 241637560 37682793 396610606 305875668 302275126 812062759 109658093 128711657 735565365 958861761 713843127 647363803 750909320 869997998 938304696 408160406 139602498 265412715 752923940 924419586 979648760 697042775 968263301 852904894 845880785 448910987 918410968 546397358 566952640 640080334 135359833 69075943 815107692 209652060 475681456 245568346 939361719 688302349 213362580 69895764 265658455 635837927 775025138 228890385 204373945 381455319 352721827 519963489 40332950 3551015 782022333 843419067 652210491 642004526 726575953 883075716 418403431 299489364 716085319 700229615 630069394 728744089 46056951 334026609 180800451 61041200 102755772 328687199 921521761 465286210 243207238 197438082 46122234 261787830 282904461 573252704 239913327 963981670 760579318 712605326 735610150 694425200 546067745 604173445 363033936 630415958 739895262 796617136 883620957 112756228 426520806 669179455 728860086 153779275 524446121 950381125 543987821 819585936 812796832 121852225 322117309 387464614 868348903 69881916 574376414 650115898 599138180 979671310 182615052 388340120 913456616 773983866 666622558 670180191 177987266 986353268 417916035 319308518 584888094 132638521 622116987 581380080 446724509 362093502 942215489 395927430 716085263 740225472 567299322 745792252 415644655 580357096 565936004 152269065 773325922 155767539 628400058 213950849 319736364 88861912 716030595 250010313 686071570 430294469 405358142 101945309 497007721 204894337 721888704 938894855 973283532 543113918 227030464 81589814 761647147 882220009 699311769 274153413 571544711 415549518 92693088 957149874 712858784 507332043 963736292 695622759 601692968 568683207 825114584 357098335 209386686 878649085 703525516 598846037 934578078 56806705 806644430 297188186 835187625 424536983 724777000 312977300 677008403 306660377 318701561 442902927 331185240 283683203 912200546 727070681 360364253 331095731 164245033 729415720 570001083 376368844 379280257 549862880 50235555 780385706 715489284 926749862 981237493 262313431 421971095 516855502 624965404 298700082 80092751 439473172 349342217 646315428 467494 539229777 18133507 520006175 610344287 131223835 25260068 190097489 371858416 394549658 240580524 678800654 211658693 554213776 588146989 515934641 493910603 584338853 600004962 792034760 392945663 621442807 659630382 155779636 367232037 141430229 644196340 882060379 859863224 823703976 566576767 883809366 533486752 748402109 355127284 825319064 287088676 805915991 522181895 338624821 273742572 70744226 336007908 72941061 207989047 701858571 775931148 689651555 802302202 738295151 85753270 88480024 464195175 191445725 264011236 603629899 293902409 810115261 866730195 573216287 739841952 508098095 350379672 622949846 192694316 471831090 945493864 26728999 606750600 27502928 305020141 296281680 756153531 934599427 19667901 184682163 662596219 203756876 287821617 49851659 504314806 125431832 384065547 510634817 642393524 123717829 738682130 919229550 424316712 604908578 797456238 405016784 218822859 510945871 702000667 11104212 838334234 457638744 391048017 123941656 389360808 747094141 684272101 952041789 244024567 549441311 386939395 495187565 372296666 521639099 17649682 25993043 716123468 165047893 867043058 309646320 758916272 787491653 3665350 395825221 123055034 417936089 944171496 841939595 294868486 963455862 420091332 471997236 315821257 704202093 172937418 646711270 980738911 768866139 991943635 477087793 89446295 798842920 923814731 922532698 527638473 983160834 173231638 199933464 85681215 402271632 917133593 683972543 284264582 818729852 410552423 40362713 540969860 419122533 663067412 160873586 453275917 232237009 384694036 753526335 895829463 890630622 608257953 521442196 750177724 975730111 69287972 512977953 276708108 129540399 896535119 233029647 675893514 629925504 303111665 333550005 902826758 493614397 640224652 770602924 24829142 822655977 926078729 222684471 376994513 681847006 428140046 95848841 218538662 831277614 60554729 98533536 919807647 76813823 40314574 838377617 896834688 465517106 568496748 117130905 103029098 510752740 186317943 783206000 844311073 163804214 610621918 319959639 557241631 930192977 374473599 740946549 888818445 616158073 773008051 444054138 941691959 367590783 183131025 918418238 759887042 841037964 723135641 636285180 344738940 496292054 900959253 540585504 508068002 733966322 578441813 72776314 728548981 448037984 362087008 952405004 321935382 351894252 323922676 528910652 737720716 148695556 353810756 805682647 654984408 466171929 272440178 306101694 164250905 68695768 311266517 697587068 834285100 282002959 176173225 295600479 828097820 798315444 642985976 681255698 891486527 248495240 874680140 635321044 206375639 796704218 686673830 681528420 582517760 770566747 93023006 519546263 765976572 625778451 479481214 136361104 34474391 390602746 335575475 180082423 952130843 407137550 171177279 956482402 3579588 60128289 133097685 375742429 381436005 596534767 833129189 299638000 360485934 74285055 108173081 17482961 489649321 473588621 330920546 284738598 64927505 568040168 162453962 918028145 968203247 713022862 455871597 749992375 804190549 707794458 496682360 306998434 615676111 829785208 33265809 255495436 324689279 99461367 366021506 569239707 881977362 660413102 36210989 710780590 218020199 542225468 675363626 283636185 557787771 496933046 429655908 618593001 338665850 314125860 431749628 926517794 426372716 947352297 227653997 88391515 978392932 687172940 17179834 300752765 837858340 948700053 543034131 143851951 657627018 524154119 716791404 942922101 529476066 65484672 85928411 383538304 511697525 606833983 29336567 497457850 468417255 563193963 355918375 36910820 469923628 578839866 705701852 315547532 470696617 551223293 510654375 351734885 67313984 182036458 974051179 530910385 851352037 555646010 784034585 711798876 304159987 144302218 11757304 909407475 602797423 945511546 765854720 576401692 899864912 952182277 472242611 259410590 549948544 548147080 324772188 124423520 238410505 904668650 109859935 5866106 437820263 833348031 53033125 964758500 203764623 517846332 130283451 90113887 544894692 568877997 704326599 18681563 997217386 799895922 824294693 659785791 270451722 69201661 459827446 168668001 963807978 463263396 34671726 963805493 199269259 606071409 703954018 81633622 715150546 706540939 862697728 910985305 207981111 343577485 949355077 263324240 620869572 400622802 367514565 765367121 230745793 964667544 28846893 337839008 803010188 260777328 807735919 108614194 750534535 961456166 173088181 404006521 325605835 331558435 856460444 601444594 991358795 286209749 811234498 665819838 904623445 69149023 928384841 308793739 728543632 686281036 20923505 372099294 458537308 977669964 748108803 211710811 505344674 770145243 343583441 717506026 758070949 768121297 848037368 191883615 393485445 751990689 339163021 752618147 21732450 639758290 219412354 265789651 123112025 560784122 407681525 626495632 157655071 845349336 715762035 263574282 477116935 271452103 190950370 866150411 65104339 483735159 427490761 378212582 743000309 529357171 740943344 891496606 329397988 961221090 211865708 239770520 862469202 489874336 106792961 38358416 725526404 44477576 109320967 152402391 342862134 298637186 580708882 799928951 674118626 492612180 644310596 604815274 743698246 503461372 991792275 744766070 895601089 370775031 265884803 469296249 59779973 668954184 536487815 349528597 845451722 922561064 166087782 268060031 134296692 428765984 994382838 971367154 205266439 541497443 327769354 873894686 883362311 566131742 410484866 219941280 872272734 174064471 61599264 791892589 938142115 169921636 180185337 322681508 43637951 413432588 554063827 873923457 262231496 551798579 50786924 537812872 812486177 527276460 873973042 147353072 120939831 414469517 850536010 617122267 77222955 845002676 40057985 962228422 887911172 892118932 487282810 221387630 988151842 581231695 82315549 837311933 134225151 633581195 566921204 485787341 437578965 868578304 240407010 346685410 489733269 374927928 948017312 39531218 962076187 729878732 681282204 714421372 960348089 831675999 835700197 879470830 940055739 238554978 805587353 732296202 533168635 722957596 46148572 758426145 165864231 826922430 502689167 641642309 761562123 769631423 883491697 463482992 96852867 539961706 202885321 637052470 546410832 44434723 105022120 938651827 31793531 363495511 835287908 885768241 124623651 274763650 772053410 9256644 115388387 536215183 755100814 334363370 753338516 963813054 199462721 316254738 762841760 671302932 940946410 471644294 409305165 426752665 258154466 900674153 435152349 144486498 755827316 928138299 933908208 643876960 872162864 609498123 336910981 596142692 429561812 176745890 840932644 120028900 315488831 599670425 861948948 837452737 771607044 494250811 908483624 569091966 661851230 721685715 169588621 951380765 234667122 765817690 882036706 913024916 760719531 764943134 954411265 545062156 9812356 369087913 942917431 22885691 761303103 346367181 764204331 297393575 483844432 536897573 287709711 83904147 288818071 699788066 524451617 880912593 346852726 187352859 616497508 35592835 180574974 349653430 322148841 101807442 306199311 356093835 633916675 892548022 484155202 90380686 745766292 545921664 535024946 508582602 451276822 879268751 861760680 277025753 149577836 577294501 320792683 901105138 705918343 498331168 134077322 612340438 650096948 765676137 358852569 21840231 246011553 927748216 73096700 821610502 619559999 220699820 610151186 963882785 820749416 961712240 208435673 773944020 165807007 58058007 516027320 195368002 80233530 107305219 727425057 666643119 885131723 854313088 386540725 827392274 819760288 681864520 486626262 683600490 488946262 44187097 207180179 552076612 247040719 481412396 90293431 406221717 813271621 636110852 307053407 233085791 207109055 379926526 13741309 135860395 24467393 39655656 118674394 547818519 834855271 548253822 938693851 122438518 228645218 917819872 395304440 295803745 480157865 250491362 119419517 330994159 770409536 679065295 289958757 944341253 254733852 783580955 458388301 958608601 343950635 187195107 642287532 195408743 273273783 227654535 573841412 762741929 914063645 509282254 79102796 165808643 908343740 100307930 931304022 727483986 307821710 702946027 410103932 936389261 57449073 679222519 627476664 973048685 946742544 40506049 691029372 408764534 461400226 54796698 226699777 511905736 425449067 964157818 135024 393245612 756044876 536028780 35043312 302651697 49181005 481477428 356528323 36387635 607517369 922515285 730015706 425357954 676609418 796435433 422559348 67754739 642207068 590655075 261186843 829670589 892424307 792237821 193042857 593359569 948207353 903247315 516822670 418240045 883553121 486589612 307041861 817668766 113073188 544052924 860192602 150302119 661582592 78705451 49767362 375014352 472305874 670346341 861580089 93799055 354461395 81831476 647504144 307201181 49116314 877419638 490753614 9445447 76576694 908061497 710002751 98188167 343979986 375481319 777502740 51588457 745961007 887081914 962477351 69991491 535131141 719858337 30785216 228163202 955755886 106789517 464411422 361292566 36940720 918702792 548941798 967439414 270004248 358679299 166383478 756126742 539380498 63334855 550336428 846729284 641145104 487721217 327081777 13002313 452968701 869230488 86130314 352178017 289132445 236165117 786307125 133650749 742190736 108554482 762059952 767617895 574327003 100723118 748606010 287923184 716181419 792003755 841032549 730427490 879070635 61249138 967600740 442491894 24935670 332282484 808451619 350203551 21567603 182426679 706426143 671430973 847710660 473778053 817231602 500650376 475576281 224696747 305666012 954789345 318700200 725218540 578897715 380093625 615008371 135109183 891336566 702686456 178686886 344223594 389919548 953282666 895347963 308059899 535260003 967314147 120161653 572523388 288627389 460574005 873234584 194955312 16247450 418750095 139881999 196424424 447475376 281000492 622519011 887259568 378935865 145421149 922127524 148548166 978676414 426162022 459470727 284047192 960201751 111102801 476308635 974339788 614244234 918197094 547611933 426617702 157995017 636405893 763950546 493599255 588186747 240724336 774300392 93528703 985132910 31798889 856403254 176165482 120884656 803470794 816003464 711243572 990120779 933710454 98487379 19480903 248033665 512375537 493398230 29300395 111331199 789914517 852655922 631939515 954205452 698149018 835438858 297787968 52477075 694909801 123498596 366519765 970651491 887699236 611997876 876463266 13078233 122053829 939817815 283154449 696898345 925195746 866003899 862527950 261372667 806874946 419691325 356075614 550931216 341504376 731452996 12546750 436602054 644816489 755741344 181149278 119497398 964946511 984392721 979708118 766115384 310356099 371101024 329184031 758340895 345610233 104744496 518598061 173032062 121694156 88478511 186301432 141028453 401856258 74096743 300950009 667941589 686647658 177728355 401578653 722214920 866783470 967743456 495190961 923465666 444208509 558130218 536838438 899366961 17225719 952380034 623919334 652870948 552078424 769233662 919308630 521313632 978748161 824542479 607604590 606883571 563913120 666338590 881842396 294991077 365496246 509907948 475500012 473807873 153945512 812860967 261663461 93816254 63476581 578639033 619333690 469800108 638805641 921563348 149904827 897510403 408450211 523161154 855389451 98712332 612593216 135704922 322945164 551390826 210792816 683626286 930270573 446420098 154671288 778658194 472295136 224678400 41820401 697383649 643155375 262510254 154113415 515507341 928882744 263297258 183281767 340376120 462019569 866964292 545853986 79134328 139987406 989173176 475563677 244631001 121264125 669899161 685575100 397879388 25370513 241661613 44135703 988609538 758001498 59884717 933949118 160655643 966256708 132827166 377760625 650619271 733623573 193744743 99895400 555330067 200942103 872001609 664805526 29548732 713566722 162176226 448686374 265493674 908835031 910104290 23521851 796580085 487171300 881247633 457408107 871385683 84156701 226695621 812795907 850833062 794837276 541187155 557984360 228312678 119270754 137049779 643230523 616016078 3953752 636720167 613883684 586352436 718495088 935177971 623662243 21073438 891324893 544177493 726983702 586852922 45337457 14904236 870415676 411855950 699598617 284865653 751765883 644693397 348436442 950548824 131284200 949096676 657930884 614616376 794936542 745108950 390502412 629246566 637178171 937649320 413705387 442828644 270351395 307260964 984204028 787880227 402890063 234333117 450368568 145713427 273913043 892715560 425590016 407916047 234978976 315371022 548572775 45490660 694871795 713609831 998493051 402308010 122926086 775200504 60849699 181795450 925887179 339488549 844586259 649067180 478785527 828791722 632197748 566178087 876231070 288507798 371791277 275347740 656008488 998915356 234804349 968430246 818248209 484040820 732312923 620298365 422493387 181660371 422495064 49959508 730267811 381116393 944435168 397172464 289014739 289896945 667569222 990383972 487619229 340416778 611867611 757303628 324149688 705436932 758341883 823330263 327074475 656917854 448711919 440715050 496379951 918079113 936536245 707492808 359874306 149068221 204149725 941687643 529890133 895138201 185918476 447928082 341568798 201672822 564913241 105191811 140214021 290153476 730715068 979879903 693459706 288492304 416201779 665397762 667761954 805485455 692116643 955991165 169969186 770808222 802719931 445115893 689435420 515052099 502944348 827732281 420310365 170945650 42569561 726483752 471249225 847714745 700673498 76742338 501792051 691286896 761644057 687828619 390339570 925814203 389685798 827073637 741564326 884884737 125533850 334286566 383444600 128931473 548640256 699530379 298985325 283922649 146194058 575820419 922054933 48646102 424842077 279070835 546585648 486237435 757975909 53606033 984404523 240243102 640468859 94632622 469727044 748983147 52436261 714813269 430653332 991502483 167772311 154973944 787269562 979853959 455534997 283250370 524212290 265192183 202183245 106759503 879562250 431953934 646766628 259748708 990344670 530369810 285128042 729019252 700269643 371112607 590724604 314460484 441961145 38183687 691568596 582519950 699893507 113899680 428079342 862168666 426494163 189391036 993899256 226914964 775985393 321785222 640234567 256939011 850197226 330882518 674272963 51491486 995948884 102737335 74682460 389272919 959989748 191085437 116591949 146555568 349212190 236462457 376342012 235096559 642215651 233307410 442967716 273459956 830343120 707227838 105899127 618829338 717467131 48271432 112281978 617775486 961540675 481786144 746040480 526000882 223613197 817959751 75739842 974915786 137313285 302439847 492124366 35207654 52557617 32403604 765051185 837627560 259332731 980501445 482650601 139196945 258348300 915912747 197440225 407443274 984185961 207931858 974449672 357090064 393959728 711982955 838854990 999099515 616957096 147194848 887162042 34995367 18489099 259184864 214210386 866427372 918650432 563232137 269426831 779003830 68409903 927230474 291752508 402820238 461424980 831394267 753150273 461350841 182904848 924497090 814488639 682960033 905125556 260067041 357213713 459491834 385409624 205014840 588881561 780069013 681795959 832120423 577774684 64730611 671108576 209027326 527760267 526452582 840940415 457165853 682116669 174329543 744645960 650213947 239691595 698162397 559277926 251186273 958528401 152196881 476108475 485074566 717965035 564329983 942737760 400933239 969677214 749006300 533821384 424866131 691152935 663510124 987881386 39586264 22915856 56940811 830492302 266632751 308017946 710302665 494671193 890446379 581659559 287569465 715863712 196168087 933483034 932437752 905570369 335309284 703856963 34586763 962810170 375159872 19697417 856232867 589175910 288685232 247156787 94623174 408181949 642526320 18785137 584127142 368352176 39862078 290840767 384706230 884889154 364502789 404154630 277631704 971357169 946074907 483977072 502722701 65535730 784611450 38556022 934515730 391895831 829858472 102396860 824304300 412398652 182460511 372271536 78813432 721212168 611537217 506519116 311917650 757501119 903040602 784598592 220890085 358543040 561617357 948320830 163831868 52265596 525375702 807128142 932703732 763718140 314164897 775094860 25532315 548608095 118590341 765422624 446870332 708654714 598073499 748557307 160333583 782184743 853571012 530318210 988876193 219140831 222368341 329942593 712049465 116107345 759717659 708737335 104112767 728209470 280067752 875121242 777960902 14421016 574117912 215135861 990167149 58414229 227234687 923990530 941983285 557156350 628884965 771380379 971196844 30440409 598613969 835225423 203012877 313196188 127526218 111760531 504212133 946544353 528556779 552281472 414581979 989237862 717697290 190137068 63939999 477739359 953421502 587623052 803725966 293917441 212602972 259561199 847947334 499622989 730576991 601956778 178673229 68616731 109356700 19716126 856344947 635881783 550793546 134721047 153473401 102076985 72490769 869790061 918019536 965105185 831867429 990342494 789728997 964983104 582311023 14857881 934434536 286463649 547030468 44900247 194858680 197121762 818905381 373422694 56418130 229859402 509335115 413967664 327779261 220132785 50586923 479544436 981356473 444634652 973699616 31841272 358622979 24258032 910841822 868922131 764363317 189323614 933912300 132712840 686308711 949815406 656152634 141249394 845902610 896065916 850549525 235569694 841509657 575182995 464133150 265646434 346964016 160692555 477979027 649203023 531603459 412615083 271768303 468155907 945626365 186471402 48683256 796099624 49944994 600574065 665220522 796469592 861113135 666780208 181598742 289270851 497124723 410171926 785306860 213207837 237618423 73943121 656312055 339649205 369287842 581931880 4229976 513360835 10976314 613448103 4643024 266944981 699321970 888013489 219336928 612170288 744393205 68842066 77113105 105879543 39062025 988345965 346643506 734579597 555516705 218049427 26398487 749253792 818910482 374320689 767023797 371234096 637742272 176971330 773633583 243153330 324264626 784624889 588793482 895391106 356496026 231222222 797647230 278778389 854658500 354751737 805108047 867229710 447968663 595715134 637522986 356039734 8019580 697292336 950633819 87547277 742003032 902791493 297937977 280818180 727958360 810926592 849598193 808697334 346846614 343430591 264410560 76186423 107227501 293733732 327496858 630518470 67732435 475524914 981887216 409674558 68308914 89700176 24230306 722262133 502767460 816331692 757487612 842339752 552262803 67249469 583469110 859283301 683967130 325490052 902274686 684891287 787038343 512472568 697594442 790606002 686943343 755971189 898794297 174077110 767015632 5346323 486880218 457039902 480346376 575983631 595471524 353689977 209805626 977666940 565985635 343243878 883380013 711568411 353763532 135618120 230594409 172249168 153669457 254124963 535113981 387358430 210821097 983298514 432891337 727231926 61548108 288248971 163572920 287673216 983339515 464304142 665636876 384659167 335493378 180346455 861651278 207939461 424129625 168204403 531523719 336548951 59273630 245634475 479901068 302181821 176287537 55212489 713666369 820558073 336390484 548254982 829518653 990457611 912715176 84982824 109215292 827222140 32657958 687729516 586045106 60382035 946853930 962887590 470104831 668918916 540941893 902063569 747464955 987819893 983807967 876349083 147119399 991183290 443609014 896681152 855245659 926660242 941442554 387647173 745831116 796970220 231532629 15879928 895027683 59549290 228021778 205615454 791342664 26387356 880127704 250853903 406370416 742053150 623661557 929983420 343742530 642344652 563269855 430081366 175066212 427138190 70766174 44320994 243187035 607809880 37540773 512333669 906664100 646599756 922456794 120617645 835116974 843963744 268808092 683783932 186452643 560781515 508031588 412734300 262318536 405300266 860376742 662351159 815088449 948298750 194349353 122632250 906326960 377732467 385369800 190937242 806559179 967123730 816778842 150449582 646802481 868547311 782198688 801994570 812558958 156798060 455939818 347532138 392434144 328560972 925466279 998929909 198676435 479057983 127300913 590445961 614141716 141651946 200598755 858326744 946610030 247228217 663968169 982646485 375695606 616023950 662277152 116723292 618907958 943312006 798176450 928101368 354565738 474773885 328358766 536654747 312655209 675290002 330150993 167884837 703015206 455560659 69186939 850743262 469140640 942011385 12531593 320078378 262940160 411750680 632672579 935066468 780199638 862870156 83661429 96540498 282152781 857404096 78790405 54808457 392797459 998874915 572624486 588272328 651855910 46824530 331999727 375807309 374645842 113294118 634929075 397095331 761996474 503875456 758567042 682961432 830349500 115650208 515380866 835765524 274570646 923269696 957822545 699457719 806159558 483755518 570226599 790121626 986716511 601492576 355054154 600141379 772746691 168287051 345562060 221228347 402730593 765972512 426325625 362370940 761142972 421131391 388409592 481978465 919955198 225641074 112564352 778808562 369707787 813886060 484278711 414112401 797968298 984489800 450919454 812667491 886996058 620399323 442894394 751795884 676659912 430949533 50221984 424149903 355571505 785594228 997546767 784740648 20790311 896242807 618096555 917226303 831053503 638065477 72194205 906875173 206522304 261546597 998448804 679875852 175326557 991602654 248427855 652671373 957089513 250013896 359248141 191367495 881440310 80513405 702556277 56944489 496068302 877970664 639936821 764217917 737411457 727277217 519942107 414590360 40052559 348450412 170159159 662544157 368709298 938198757 3475897 311775095 93003191 745618377 573306122 647768213 617422608 268605634 202781848 977915670 497261416 272069280 479785192 815160963 22758494 253226513 134211198 22488213 525071615 688327628 663845571 46660160 611097392 981900494 721800664 464017001 258142284 684211583 58452431 981282784 326581327 625188422 500592807 408719951 697071666 538268781 553167206 643287500 371857389 510123928 324732809 673930192 404141477 501783968 793832253 55146852 860347142 366272299 341691298 575108261 712974602 525157618 893924189 795953944 90968970 300555604 741764264 464282151 760368655 733447266 568205940 269841169 102804629 724532330 667322974 727257276 828267095 405563150 555411752 573990927 110738695 849750907 536775167 192748729 222292766 817338247 802891399 850092253 659957229 181763391 280113262 604287666 446787570 670239487 13537387 652600193 340854495 489910715 772967207 48406782 843367686 819628357 27097591 52665508 574487329 824505255 537987911 312123579 509343146 606167327 881577501 885407454 624939279 700625397 255222452 805340503 245403026 590586629 443946145 186061721 816011414 815907467 208146824 172442414 854723690 598133437 101563307 571973018 364898596 603461477 541884476 774708029 411824717 272058961 213161882 996425853 404816941 592616531 530978530 192404687 644382432 177450876 15029860 883316528 779339355 246701319 277174430 810389269 451870736 246644394 241858603 619397369 792007161 583142118 361003710 947625649 668339202 694038382 745147967 572276786 213799303 638292975 306839459 555869405 741544808 677197040 434694018 70611299 993384647 946417641 736075705 968638437 321410922 790092558 562187610 889954265 341387643 463080411 494498464 810480091 75621628 737074592 302078066 180581180 358716785 66532160 346424558 898664226 658087326 545311389 500343463 757142323 311506410 231534436 269893197 460874977 968411001 126458501 657911421 276763472 981885341 368344732 100810637 386558480 295994602 704469961 720138125 841657277 284743990 453043591 40792228 118318141 738870147 717515200 749313145 918214771 838690103 218700222 798193269 54374330 822184708 131916052 579348592 848815493 438465348 668440094 243149071 493802440 195409800 479035058 815864706 446942146 727641884 396639196 22206917 470015194 310635697 893679191 823960457 57092768 890937215 94742206 646787438 387003552 976637493 448098364 310337664 591071447 183041002 921757241 857359895 272247489 259180679 521934308 358415128 329322898 222423504 512710089 329534690 513288609 268805185 299239192 781699710 315009879 105366696 569658163 26690469 524540592 511196975 846252852 264288665 360330994 82748539 916696204 341512744 438244770 287674894 632655587 10517645 929606061 871429546 154064042 629247081 973968858 201706875 930026696 525375400 327943296 37312539 293770580 484674844 636473196 135591070 308794996 227417552 708397872 214477338 306607103 896346062 945267512 103109347 919662232 643751673 952821924 220178251 239386555 483975751 526972408 567910749 59772765 376876741 730969344 648562204 911913646 220312365 151305459 583663220 381564062 333039066 715190010 673868597 644864396 958826120 768623595 166912635 567082113 208435456 941777487 665490114 334062108 940256711 872238551 648989102 556920900 725779611 957926936 120995361 103425915 503772699 44369929 400117187 988879106 808839751 562377905 872225046 358747813 532126818 359238018 643760805 523875605 515170925 468342206 271021794 510552279 24328268 250245791 859912518 434520689 86865208 151963641 571359879 104278266 878292692 901710455 612711754 511115058 650377993 619443474 374849220 74502761 728524108 71879225 363644817 430646860 676647321 511416343 118752742 208857067 116885784 531289162 631103517 767875042 480377262 358725979 545108640 705552582 100877368 409205112 595136452 841141229 669176520 83387345 202560112 241039089 382495420 599327069 296586571 53345757 546669253 865394675 626568710 343219161 919715456 264405672 423560821 876149989 941538482 594223664 204134314 890471864 799443472 524193202 219545649 807589987 465907971 681461159 435437550 871650655 371108721 426835366 346190756 316877147 704514360 820175343 753792817 826165775 740511724 107484330 144165751 219679283 868592377 509772493 149082865 606654932 626486831 635969116 581364345 966687895 229115685 514094062 841251317 863842638 582606772 333489937 129040965 16623095 896655589 579266489 650781741 860837650 622122855 598853407 437609291 644869396 608940678 925899657 478439204 233234186 280855319 446129624 894769124 895371158 901394252 288269845 627481431 987909180 377731293 357309609 43261830 979271666 352672088 504863263 320421847 227915639 235457805 389038274 65003277 794060286 346094351 521126524 177986848 116539955 903992506 861849888 278235010 708335065 169384726 826138985 79317549 870502312 67826759 446167717 808278907 754422052 535866549 211932413 438563256 641250539 932068064 87200157 957108347 290924546 835664080 231990651 498435166 562861215 205033935 249543933 28256433 718265173 324975947 700297664 780466403 888179540 72937759 560843675 774153459 315262073 400509924 48543320 962380556 246386935 737959217 116585312 751299409 433290736 300581210 452616679 892047906 750786677 954451890 398252916 579808616 504398867 235727115 860642098 219430770 295459086 96609499 148769286 77810648 4026719 305252101 588197387 765991623 361140361 802076619 410139597 485700436 32768208 230592142 543157880 300413163 598054321 941390188 834980516 448694630 310089986 758188114 907517205 589223053 127776645 671308254 466516166 982994667 911576506 54457432 274561451 599126652 28155725 790267292 107173349 10770636 294346688 515850733 176500880 422487144 770613364 760846131 36973568 194063044 927857990 254569245 904348763 444568367 578304195 203015480 497385015 179941097 960460031 640588937 412300854 632569012 610763375 465488610 356743344 252183106 593564539 547130419 277315952 795133453 667880112 591627696 245135661 810438785 366355553 424349886 418595390 778130142 620585467 797191105 299683712 637774304 196313507 298870760 128088916 366805601 347650447 903442800 950579815 434803828 404177831 714368234 895524776 545484153 556002966 856761258 35065937 954003037 713994823 729463844 821948847 512251367 155141141 693089750 392324922 778542112 920113107 951484084 726152508 764426771 969968214 540527408 660960504 998816342 328819792 798467505 255996952 544358308 691272902 650998292 969582346 362920294 1168185 723943715 765867626 216353405 443260503 34328442 715586152 389568332 74078268 532830831 137977733 193172724 309822795 385207744 852729602 280474799 551581036 433846681 578322330 78192953 213896586 817773708 846918297 380243517 437207381 736203653 895041380 148936595 903399336 718802988 807754624 513571280 58549653 112633008 64255819 660167538 829412538 212885478 466110836 961280335 279708491 767982823 412224294 51478140 451584304 506327204 893753912 443453511 902957577 39433662 247868833 564839794 169668125 691871100 647735834 431746594 601622520 522067839 153341166 138963286 375837359 613721591 938760927 418450502 794221950 274243381 915660561 26811988 679529692 704772246 190386595 165772843 567408393 901028299 253494599 637406153 54495077 139092214 766006599 710282529 380729815 797479161 936375974 493863643 212024798 30256534 408987272 453938782 724777297 906280942 541371633 348076734 164531461 494518713 467370090 461478550 673478962 739887335 596153893 341613100 470981318 622070560 166078362 139155428 628052421 116286679 617327836 401350106 945343336 549671958 290628105 180059256 366724768 185345035 900669341 868373761 609499799 420039871 588405123 383660130 513697554 657065369 983123397 880531412 314902510 939013534 387519191 458535111 842191981 275950882 210399979 177492749 231815297 148046312 807014990 276852768 12038479 208346743 960203811 68191027 853011235 977368124 604779146 197472326 856517933 657283236 816292903 59803332 120634664 360982774 928229733 127551275 777621214 386008501 775625162 417311382 436490666 565548692 739751180 205400171 608946552 581289616 416965409 399545086 706309700 232351860 110987163 489011155 406237450 111637239 4416401 813283582 764765435 406392333 538938671 482401201 848789574 354826755 934019990 733802372 373215300 157989108 995424248 847109227 150745267 206764079 184535141 371930825 995227773 365359500 463959502 62889101 357155539 20373133 78968512 713249514 947814570 693215894 871644685 348150575 498201375 698048945 461715042 292639359 902580425 466485458 919554677 7223402 830728918 447076989 690644776 757769012 941083865 545774950 619083697 605498077 784144738 368209516 935095819 683743647 305381381 581165018 376788193 427201493 660291352 456673327 224523091 616704570 16575182 978952050 419638237 674033837 832303623 386596648 472310885 213454802 498868548 848522369 195181724 284370837 985441153 549712491 997850939 350512243 686898833 219828522 162722765 860531222 843063782 318990527 870432607 424002399 77529626 635113613 351705185 355411317 800305599 47628298 128666390 939721259 491532078 494290595 325162671 506827998 767050120 958373135 571513428 763696467 831865053 173726503 687049696 324401313 335631243 496173587 855723481 793763072 113422384 457328918 702635196 851474950 888439171 629167383 433264448 667548089 855595887 803258549 343524181 968134727 938253235 865877092 139703345 358152139 253331438 404275819 625281889 866758245 583536908 48046254 194886924 34663957 667083800 107609756 484957516 816013353 120998608 822937867 53572490 756565940 779898996 518473162 306456 278128200 246737553 495157259 403037619 217503922 138060511 522294350 196494809 292568097 8287127 561056579 271017746 181064208 276387123 461105133 747754590 538976104 977735500 684394804 480257547 203059628 305345928 267582858 97216335 456829444 960879719 600261752 513574340 750973591 573735028 603795253 791066731 463125635 224949691 782421717 927284792 286807021 300894492 414492768 491834169 169440091 455612869 182574252 663962081 34171681 960267529 835295835 517395668 183058732 393849562 323858520 823064886 657384227 333780880 630531262 660588843 736480213 816000469 66444704 489212 424896718 367279247 775448922 250417980 205883000 590045089 510138774 393366867 92354139 613028896 410780707 988334260 708258944 672146760 317129976 90890295 746896756 734139462 513876761 386970432 728097547 852220794 698565427 153071047 172803585 812928583 293498651 405809966 256795966 382067207 373459700 561908167 583454181 362988007 475026228 651965904 828376916 929208171 242118863 609901343 667450362 444412333 824031129 285601992 372327865 866317615 78956446 603941188 758167800 450791282 526338110 521534192 154739754 676743620 464537576 191405176 77799188 329538850 673637620 572465059 495531324 375718431 782694590 269578346 174872484 992978548 23250478 904930581 92523941 137928171 809906956 441126275 5576672 552202446 620166032 505566279 418825286 159230624 634566203 991166084 371911030 39328383 820892636 129247031 13530670 286226879 261103482 277044424 42490895 788088538 703768388 931000972 26473947 344349859 177324860 638775899 406521658 534445681 513784516 117260805 207458051 917159597 31317364 517077900 176051824 437221106 672012724 293484791 296315439 260083463 393983722 323818875 499195290 706395136 840464307 234922888 227223356 765849156 646673331 716059303 44650204 416379378 500883101 414183902 786707050 925104704 252034830 9154935 426765298 942089781 717570315 913536547 692044078 553995882 849983345 98673713 618556652 784587142 994309912 496984712 697095005 3646770 941535517 323320407 173775231 245663537 796626831 861709343 860117797 489644288 831095002 895685448 563906384 416134296 770763811 686273345 525982297 944870098 824837155 382909029 317516819 384346348 210205909 54718058 863678304 479688708 321718724 306832996 105011998 97397080 939775897 433371369 35992450 672844420 272426377 630728821 453522973 424130034 449314430 535809450 619564194 510248634 397687212 107819061 144639337 425504274 878895876 66724845 24873985 951565469 732877692 368636537 913552912 388248140 175324261 190144627 474128807 528548060 377106701 934867282 74147881 634672054 512232060 253698645 462203755 549281990 887850492 889909669 521340011 471460392 959724306 675323851 56202107 485727652 340945507 92398041 215018742 706671759 846892834 480691286 179701634 103065465 864098280 413385709 115289503 324107836 460295194 692094515 865389596 899811436 711570392 710769968 494210147 182254387 203900072 714588867 918773893 435074494 354656154 760247659 587604650 196461254 100119540 256954307 421022513 629467464 338708890 599161097 365344528 763716793 906211575 457447045 945458171 519805577 943561915 626904039 585763225 504676906 89148525 768047080 249761254 595040180 150574665 670046993 307212774 946760987 55633739 517674598 532246370 778538705 633904541 906618367 428910710 738677092 563603815 241944928 132072344 86379956 54360264 947202068 510763592 632516111 919080138 338632821 330765299 507393812 986965322 712337738 851169015 934837251 292892315 160662010 270468234 551375630 217150902 291637497 19700063 143655003 936391820 284134719 243857916 546980048 856074853 344721184 342026848 489464720 702227826 273514981 871181359 538444685 240072406 533451200 686801004 647310850 593008337 399337235 812208105 871173657 847770018 164220161 406922293 406976328 456583096 77436097 249613915 557266786 4016446 529759016 436943664 881111633 135638058 861865275 362483642 656376421 286948144 952859581 59842486 901185938 53482519 261921137 727737129 549603263 240283144 440953640 33032474 783860835 447724742 974088541 564782924 524746554 987828420 466065743 684891030 469244252 260377840 535513247 137592850 610732790 101267820 991066523 271069311 504346326 465899082 124368174 529128896 182704856 159159293 727898629 485167331 843383161 373476244 791439528 782695455 142360999 566883313 327222920 640008707 121846406 36531906 585988003 746968869 410029313 797436012 939526572 645626019 147114545 441777623 666201922 530189938 298969975 196825107 441530094 824651323 100041197 960245156 441388693 339952635 549565112 529482770 652690771 299839988 776634500 66914050 69252066 259205370 785852410 64742071 491062413 181846816 528737062 753891725 187306571 43113734 915976142 363565233 718515560 915893921 329802013 821748064 354876403 809780755 358110366 943826678 311513399 318018852 975768552 638472668 936414628 958168326 449977223 965303644 899731265 909608673 600915702 157427803 182718838 901589272 162510123 281261738 644935690 817722351 820277759 45461753 512176883 123318119 265146318 154755161 417942886 469077169 367853680 266446987 156313833 348640132 277748081 269791264 428106834 65725098 471673684 377383393 846938038 436757554 626799959 570963817 539056365 426073791 4112660 701044604 698753559 138653326 470891891 805753058 4181752 222670146 650941613 470629741 923392019 108367311 466298524 585693600 816893128 773160897 889039971 380928621 950931434 877186074 946063355 777773477 454088643 968075701 213829148 825346189 301448421 53025340 592177111 897073792 410478284 937234238 508678270 414882877 397066059 800319340 174109151 860972422 813450118 468437874 417886581 717672776 32380568 159180724 19984672 720324491 613745409 932356711 227431242 54320304 146882020 276977744 545114112 322281528 604721881 887456749 186006941 13409084 414967434 451290266 528411827 107274533 737700732 701753519 571828321 82478983 893724309 294385989 982167580 574401042 26733832 518967950 417361265 361658674 262228589 677771429 135978095 168433199 969747829 624883620 841079594 874932759 40623560 590318554 96064443 22625896 295428219 433976110 811039924 809587902 836236024 132280655 380033863 441734794 863845145 492703734 966463578 397856384 106964530 583356076 645135941 621897323 695472517 79690035 708000776 555341947 230517795 589657783 713497486 762282034 62885210 678255802 601215447 468509869 318981863 952236474 899511185 185106891 228335969 436728855 937107572 162440838 404536589 232642995 387658346 346093405 963113204 715129957 197371776 180165575 485742726 998564845 514495293 163872433 336159082 546274617 686490157 796734213 469183999 654356939 916685414 616260726 322535451 833939029 767412724 512887682 352310297 911847218 473225933 164164277 947513677 931701499 725473146 324923706 104061123 580498576 631461316 718731935 427542031 786150011 807617291 708547091 993142146 132253567 901735385 852708407 73063938 641668695 257068458 85215505 285888021 651102644 540647110 983677872 389775300 957731632 673130564 665194121 20731119 235059088 680138511 826203286 753911396 498391807 607081341 557223181 257218906 166011852 426639862 510839626 644169279 676882258 545035735 142406148 956290602 268706130 885672379 410290217 965137591 223365581 778881517 749368574 200612065 996533653 247895026 275155317 912326508 679446925 686198828 56720372 529525402 587864186 634783685 51413557 144760398 533242018 294382936 682756065 551709125 739323625 279970859 738772740 441831030 630338335 577480204 361202513 849290313 589749811 864984182 470604929 964900770 249272433 757373239 932352071 282013648 29828870 379822708 55410482 118239702 584896807 221091693 860562602 702839140 143512193 491574406 242887217 297549424 708656645 476470187 78653408 838221578 768803229 952386615 99906469 621870857 646667332 455631179 416536283 691329508 382230784 155103392 956263278 915545984 741834922 612287679 682070462 726959897 183615279 669245783 863060519 829242260 209138907 360026476 512172794 18490153 629887079 461843753 47694315 690711824 417692237 6108196 603142272 19475038 936701660 895494058 593590310 340821130 607933402 280798749 283679927 543246739 10170759 284239914 474681853 805202991 880080098 926696324 57076671 320757246 702276700 995135091 4477930 940615311 943405465 477460115 216914195 162264946 191368651 480853458 53873851 557391624 705891627 197299122 374658507 455768137 304539182 717795867 156670538 66672648 958232549 53896746 106372724 340787916 757472556 89508112 814166446 252299649 33334516 64650514 488727411 481068050 833774616 286410131 661493280 322951172 500219700 462989618 128698385 148951304 994796709 316585174 717482265 528379978 238845546 517247110 150618764 399883695 402881028 462689901 183183956 42668789 815363957 993872397 268170597 488344666 253482705 376863901 938865050 558791918 911081538 782156088 154517161 534179433 44909345 343470265 280309318 539438359 729216326 720869764 154364340 217406369 83639981 152214977 604311556 823106271 538862900 68128494 862183106 588379185 60091927 409930174 588180422 86241939 938309424 572180676 860623917 633757591 670044556 42872097 535445462 897876407 896178422 196076618 621492227 754167590 333451258 656450095 898863517 576846417 339607822 968323802 789826707 794210817 937118483 218808010 512523341 169851623 869744781 883229603 872087623 978158927 872129893 591195437 292629138 648048138 142038599 754998398 741486729 496357996 790722625 379550374 216791233 868865417 262076702 546303618 634138647 36318377 849659489 92962702 699645827 366518336 622465040 577206878 299897828 182383699 954768356 355532920 602075315 346513023 181569009 251763570 809009779 454602707 50346037 846588018 291157997 541059128 810692175 867799231 691483872 114765507 774863955 791690661 62751728 647401037 916590894 917351006 921315525 325578682 731194368 628930352 254955452 851202696 503284190 291540613 953752140 990863575 418045723 554228649 532882924 90854769 226111276 315538198 294817406 424002807 87608437 176403957 959022411 726632301 771537284 564887380 953220030 898813129 391006510 685557578 772389718 436461472 315782642 88864189 851873181 934339343 285527467 150560534 737602615 139522941 205237042 917791008 53263331 69385999 399692370 540006397 634182731 128141790 620629779 754392266 127763759 405050209 4005502 789563196 374676898 497351422 649798464 935574205 831441288 621281787 514406953 824137720 639365131 411034504 962450534 972412400 298086031 802873345 289159026 211178688 472406386 625585931 942356243 39796187 476336476 259098356 810574419 386261721 171629551 432538017 996037046 727726949 561135190 755633641 927778962 667917928 74680094 295614414 774824200 667795598 839633768 72259904 855208445 701755830 515664493 468960948 783038291 672384589 406937190 640938539 343234356 414697526 728390890 364848455 376478781 539617080 4342849 685688636 140845253 86124597 333932033 625547266 288398338 366816569 209557255 90519399 573854991 444010696 903772848 917527066 729013175 727887952 937298273 234313350 535643565 72212450 244868379 219811551 239896431 311710735 451504979 735913006 981556052 766814002 76251994 908345966 291708713 823004943 761219904 555889677 132092213 969569288 392030096 825042258 804718476 227098306 548776482 823534553 305016918 66444421 810052536 902674110 711372836 207368584 626621084 107641950 358412425 121000874 804473944 524337606 682368794 333487802 621434342 54045793 101663223 94839715 674649126 533578417 19168095 22973489 376530460 725038164 986395592 826607275 994911298 567131280 293917759 521433860 824707340 832343910 601586595 426351470 374683873 605285726 684015062 671369957 731623833 305305166 149674528 40259039 702286316 593557264 461549247 688509339 797771795 809392527 792386639 571194368 849878245 78741854 388759017 793436865 163286783 821405092 776880729 431019558 422664900 333586760 46020566 26200805 369453686 31821332 750461825 853004631 654955292 663804140 272303645 579135745 671454614 481210730 817040344 968910753 629610570 253290809 703966476 679504573 970065614 192745636 300468842 456995364 931624417 489519078 998834157 162630508 128608582 426200901 506942660 334539354 794848450 127001641 368494163 120741049 840142744 678733553 310886725 893345507 402633741 974320963 539555916 718399165 895592276 203994955 521574167 969579022 611529664 852704117 113196807 848491654 66466609 35587075 55627683 424122472 520744659 428329994 949553044 825974270 151793207 561971023 925883521 515031986 327927566 379584846 658220091 212902480 678568354 715548527 723801854 994859154 988189324 430303777 846603787 687030989 132469951 732720414 603003094 630033733 80785719 581908886 542337152 160797460 387299055 987880747 970205941 853969619 803162791 298881608 717279657 856853729 586601442 450347356 622598302 61304885 805283429 844688263 943798977 228210144 444131620 712437783 101102011 627877929 186892589 700456882 928446907 897468175 92386983 866198943 835385325 304060840 682724222 79355494 734823877 45475710 76484130 656680492 491683864 238976793 594745589 180107323 511826082 876808956 919882615 431178639 869052994 985423984 449636750 191058921 433162858 275835924 608502763 776264962 657825075 794938319 14144469 337727855 820900623 299235453 376174020 178845071 873523819 639374624 164874536 60767886 686395056 816401696 512084193 615005552 286678310 558399523 714603550 441972849 589761165 502657247 707426971 540023226 785094034 152719627 408779367 285475635 58093587 2278875 808556423 176834965 890981410 333187367 909283399 904242776 935539368 745607480 333747350 544739031 106500243 747734658 575799001 985042286 209486745 524273116 924304865 110299508 601997189 768938549 892956650 516504403 458698570 834071326 537529855 999411731 431495872 135800909 789424211 273766249 647279149 63503811 987513417 550756812 618363893 224324878 729303545 602690066 946263869 67895208 908456243 864207422 850593017 537446102 27095357 620580675 977612989 614442486 623023531 669111988 160676937 433851957 307164003 143764982 901406877 158799398 597398132 834704332 556548632 633905589 351218612 739024929 76471499 395177660 603162974 326954005 528528323 61731660 129821768 903598387 253863877 819361683 799597745 524113203 804884847 321813796 964688898 916621876 136164953 778149052 760454597 195102701 884730550 88846485 234145445 872119519 400975175 301975379 965444203 512058920 125604416 594518332 611243278 146408997 594242319 453864880 147386235 51807492 660375326 906067537 654898592 745357716 189606341 494067243 427032554 999592724 117870402 4277682 651152165 343552979 719840299 894837589 445282005 109607377 345846383 917659779 639704588 681678425 861693415 260753919 260567795 424994638 874729130 750352847 992887499 589288988 162806892 935995518 128485754 497390963 874430394 557717531 688079418 514370952 412135662 23790964 294250663 676933851 483516460 330244171 796981403 650037923 253171341 45591072 415726423 706329348 494086837 676019700 898298592 20801900 124147034 591203441 724463051 91884155 689423258 748712663 922367551 581054291 277410563 560088309 149493900 348541847 412105678 695032403 384844952 779141261 118593085 451506630 101561609 416526753 952914808 385462349 858787655 538113335 682297014 113580959 718780478 936956433 545323998 241551404 12019706 297768307 211696885 631312173 637872801 129673371 767751502 805134327 54556258 478789622 846331074 454578379 832875324 667421062 377639818 550757581 166838244 455417046 683122327 952112291 597347158 622041772 454434171 190005534 998955316 565031146 22151641 613489232 540712196 256627288 463126974 684267245 200232980 203771601 514496266 794298725 216034571 796006480 359799682 170276188 580789128 416034062 476158399 888945662 985822001 229317074 705689757 669634728 265272010 367767471 155549387 96215785 344033699 323108706 762134685 350866443 317859853 30380769 248264470 115228060 733464707 462318394 940066079 184999056 439637096 852260841 586447006 45977638 449880701 828212776 834037287 736289736 926096526 662021049 691679492 110237022 243713121 634880567 151640182 8244457 397909089 455585104 85251059 581813937 848044442 757156238 173881549 846876382 424211933 507746352 314535670 506716655 10621042 891628660 704978911 195921517 883145859 389697094 23391872 635777030 658034685 301103142 615498919 574827670 135779316 190761797 489338068 378461913 174613525 49995639 545036147 658000507 438438852 981034398 587359232 317894064 406775768 600247567 851799962 576338036 969205299 733756420 930900919 742794051 811535080 225530628 228275529 581435317 969041352 100408300 326640528 880735674 860672722 427821816 643415107 792407828 214649936 274126769 818352776 328701200 276721817 669376043 819722906 319354779 681962710 505772104 950149353 12990697 356713865 773114080 981158804 141186019 811013210 983353677 855142020 509421279 354457861 928410563 909409767 629946393 532403935 972351092 966041668 271677643 632548662 990514724 925233797 889231871 216801235 650926360 31946812 670361530 594947972 397467647 800827757 961522315 287179030 750382817 890567957 542403046 120943195 296742572 57135349 207605447 713949218 234141947 535794603 220473671 660148141 981763017 399411192 495670207 674238106 88809684 577476279 923635656 351360699 266345680 709577155 865889439 288526457 13179139 717978910 396871615 995513381 530229292 853543376 936619022 563165685 588226609 747988164 999729125 701242498 513299040 639993176 131355922 265521890 218174396 433956877 382416159 288352484 87693258 199897316 935809846 872391468 863609669 411288029 131558711 779897150 759297289 285711509 940310307 257778173 574602038 767773348 358475708 328324655 66639563 72955302 639517901 215649650 735806508 83512188 831496630 339047426 512159929 873662352 365463740 857459184 863526256 885112805 135919172 481617411 599360692 732909948 776359044 570293475 632146398 371721927 103939464 467412027 65084808 346282346 112916941 479822105 695117080 465998195 877186440 866576842 926764508 162001919 270396495 405535992 463530103 826919476 882694917 820988717 140933276 998997176 277309272 682333843 33089428 563406686 993181811 731326881 929839775 266673605 954575289 46053295 421573745 537357151 509046433 554633331 507089459 868695097 944318326 121333824 979934874 788483420 846886973 884362465 658452863 444220185 276208269 344464694 632713335 468358753 751654135 631061466 778101877 349652942 755617356 9613224 223772103 385038777 377259373 711039096 454892704 722848613 125823713 888143549 473712813 983944929 927533760 152602490 205939923 319403318 611233333 220410134 190227083 283270912 655637951 735788865 291805764 780349 861908525 75006013 75671872 883245690 216439199 293578218 796521702 841118852 248878920 171621202 807375490 594621865 981125726 243792414 831662605 120287777 219701885 328287066 319876516 974300827 569368431 799132349 497603514 911694296 806372946 967964845 252787723 607432512 761975971 776225438 688806927 820694051 70939292 211713104 963472047 280647269 922877692 980427963 523989478 348469319 52754145 39188720 397286098 56586923 303493823 775523676 165260364 74969457 631256638 823094728 66460299 164560695 250549353 905475999 11790830 233208506 752515757 188330263 858884169 199477958 417484139 404058316 976728304 605234982 934652334 591128445 824135801 922251210 553665524 1495876 322007578 98384622 294210877 279638741 647976742 905407673 295017586 559155715 379953921 340395670 659981499 208833736 259210647 287918161 141942430 479213454 141005892 926822527 851651107 188389672 320328560 494620945 761134271 366278679 700147021 898548739 874248370 199378935 87487965 305310320 841038916 83385918 914294002 505017040 946219165 782900469 677101222 853100400 392978455 759043038 912557197 705685656 468330108 137348441 70619464 673778980 655646657 305509705 700539365 908376440 960074497 21668995 210989593 191992748 854768210 263655374 93109338 221949895 753258760 324965471 850980331 671903144 892873432 952025267 673789151 359755168 724269982 182411798 407918506 203078519 805787432 429325888 861594146 82091815 866177462 540281516 489355732 629940969 771869849 917733085 578722556 745815339 928631914 483227466 556798031 991757755 28077268 647227088 796813750 69413190 807250761 190489147 50052842 191428632 465644292 321490898 56508301 91170072 718244916 966131598 214902620 598026905 955164750 596886443 81461263 574520104 147255433 692444349 808409584 747987283 850363825 480904167 771332407 378958733 499186447 632862492 374341184 15498020 938828448 212555279 968005602 173361975 430207229 849884367 240660146 707419326 12898749 825874748 24664147 663837217 135712564 130220540 571503836 213199805 236669118 624054804 649698276 426346403 346927575 59649603 511408443 263415515 524132242 236550681 958591156 931709987 979752654 472253436 805105853 411426684 569646795 261080024 716312241 640437870 390706051 688432776 524060573 931808300 391116977 938959669 529213766 30744880 387243885 681988937 593396317 209151912 368854056 621903041 600410689 942619983 342510796 93248229 350374324 605403283 177517594 658659560 609347809 708383198 146110859 979760606 639947277 893970771 399391957 397532549 854030390 839209168 433276152 784948429 945988997 564414613 900382152 941381654 205962402 263882298 980651694 479143262 530358033 572144038 142032048 583444375 472861842 997483591 390228489 597251314 331366280 171209076 194802643 793912049 659288185 441407550 59298899 14556570 46802090 722305470 247482180 180338470 425178192 174936941 714842170 843105427 266604392 995608125 578655841 509231680 676777368 58624178 972833566 282530321 622896312 994595329 783163889 491546739 103906686 382285407 695451702 517631688 527516670 624930381 221402334 439452587 432710338 535566480 697216156 984162059 428797509 255167437 258854605 361523453 416993199 413779914 126695781 850761467 520465086 96242207 74346802 765636240 111675578 744865557 674262291 145684647 428557748 657854022 142462426 86967673 760841683 13290491 60422850 567143590 870013135 950754574 371144669 206841407 244012462 667353668 42493356 405695757 162093062 364770184 86898600 306836910 371392099 241296709 155543784 703722664 56826470 481875331 754172902 189030688 739777612 425480376 220372018 62475425 969236506 162792324 465198275 562946616 370166138 425423813 894694098 201033336 110488815 140795536 410011851 599914351 899329683 85414410 527721339 6610678 221397865 613347102 72851456 47632490 413495641 949204239 210112745 889469918 295083072 506718542 131480189 94751837 743077027 118646977 210433110 78576899 866789880 763858825 376830516 567124400 84527816 953973417 25061439 49750886 494324896 790540219 737332005 5219259 450833024 343633719 750557749 561284750 276335338 248312226 345933388 26720402 125491919 525081272 479047929 896263184 44741868 232701493 734500150 144357033 851891180 655957551 174173762 826156948 71135512 419766834 850072903 310552602 387840238 759973859 748692054 775818087 96495234 651038441 461686510 345072751 435218925 477210919 278961189 148037691 326086781 272910686 392722822 930800313 700797610 307670140 790760319 539700886 439201342 143489654 393991780 505081876 324105096 662067412 171725242 877527477 933797328 588555602 527179025 346673379 712905482 833694704 435422138 195219882 944928333 444793230 117872889 880259391 690792537 688525066 709918624 587796964 888660979 111852813 731907061 395562111 559182134 139181877 107257866 455427470 896427947 927414255 387468043 25617836 805272636 428566533 471403388 695102985 262779805 852275065 64612389 653625519 961306616 285231812 363448295 786095737 253275153 371624804 827735419 561875775 741866870 195689081 963705594 172231327 4692327 614679744 159647507 666527888 30919932 371581285 442980080 209932617 167917597 469691304 698158309 986366620 800767885 232318249 316628058 717878127 970023562 811379306 871719596 854187882 793517413 200210457 480583021 667251083 903999474 733621717 911803204 813482977 973151770 161445974 292651600 733709588 30280310 290886986 818185359 417794200 469564295 270529402 892122396 505245446 702763824 933869803 492427520 288181162 540012215 468949151 371950836 127358505 990102080 350146352 223195631 115574224 723750104 107452430 139635063 661309586 699317510 804335007 614000869 156197539 902325812 959288517 567752166 354407382 143928880 811861787 623284881 720810550 110091573 175428055 768137750 878771269 735955543 595073382 170110012 46944824 725121665 213159709 231597675 990049425 70164793 388194562 142702063 913648235 587452239 536306408 165088109 469453987 845479193 563056343 457263255 153598375 340362488 943396440 517267078 158084609 624773294 919813935 749630448 739086456 697299949 947835234 984748389 851788075 320595725 587717134 685903817 539394683 720161549 385879139 837979140 715359159 231140754 703165964 298255753 859334388 23532018 638802920 761511979 235540346 899864115 508901569 589802438 253781462 304948290 491465987 150208406 413936076 45538116 795930348 146527014 369850553 385135786 981277669 365614640 254678263 596826267 534022836 752302199 823555878 705602533 452411010 204577037 705037423 175786105 901227047 357084379 708395200 946804775 324114367 746123303 391794645 650773280 612422996 760211498 43762007 63343419 116261353 390166375 417011854 318954870 797085348 977693041 463998322 718172574 196828221 615984564 904700289 922704538 171970052 685664777 697015674 438772231 474821183 120169476 424409567 662189954 518677175 149503604 473442605 162037407 213395269 875609377 754059641 752367360 647016631 904380782 336742338 587027915 781411705 473438016 814199881 926351310 161379613 315299284 902948815 544258553 941425337 374762598 67139941 621978561 334778541 357222758 80156903 114279098 356967146 799227729 13667543 806704243 252558932 644836990 741325515 890809351 178552580 636041850 460287268 914377959 107708980 748190859 781277250 306215143 640695016 137340115 560375520 169490936 513858622 878949206 233247648 141843675 897165889 350343631 846009198 943005306 663981721 789178555 271899266 91106136 980972372 301400102 613493248 479561143 970162790 397605472 172060921 526364514 255013538 587815390 15077730 335919649 814931361 653140595 746775325 670197636 88216851 548627088 699341424 639069288 792431702 386761382 382031325 4006525 945023339 462044153 346356319 459309696 989840042 847529993 478780055 500277777 763939517 709489178 746503863 743561076 350133987 911429001 829249147 550882905 62194757 628871726 9032177 524838020 222075950 127463424 449289381 620876647 790593622 829713900 501897612 855183614 469588675 392226964 935948008 210727828 161178101 760769954 534861098 139912620 869983994 529531449 995971141 855727317 31626893 200321844 607602949 515299518 708455559 425675110 264081328 170161995 598896231 878196785 479870088 745655537 499606130 508921107 728812009 83500391 471354613 663097798 742529795 721205383 855873628 703877866 439779006 914304868 561216216 454168677 259748852 494365817 633870373 617362375 785688895 535988040 981975925 642265174 51057008 210331405 627398890 58901205 832211881 413416874 940263892 545798966 77289869 877872694 726378350 99678700 527179612 578525647 718878860 855079992 255466683 651654073 52461571 23950132 755950097 480413639 587346718 165589916 976421963 681135732 664945568 78202201 831502388 453596191 343598769 849785364 160029925 614792243 347861532 492262450 402348430 498972604 760961501 961661410 444415556 124695991 68095275 580944038 998473832 559193351 805832870 23879268 290459717 587808404 874473559 40442813 312040151 774940515 51512506 11290190 916525795 121950061 733213314 670535898 571385342 797660621 222427025 17301454 896732196 912668001 398373215 628058356 372987828 908405605 622475047 917240203 42846285 347236456 821017800 31762594 467720086 370500443 501062373 954694088 622466444 81132710 726792628 969241035 86519205 935063094 621239249 351756167 295559943 211559669 234971932 356441874 792395538 690901761 901159311 229763117 597134452 188542412 43183788 823220935 601380990 695845997 462146895 203487013 269013306 406391687 648318616 323150480 288367689 607216992 103203977 22639527 135192671 205081006 399262938 278420995 562144710 456441142 634340445 699872417 811291664 475371521 702401504 858956895 74495596 337684402 504529575 10873186 610587000 556090920 274189399 679123082 397897056 457608755 346254671 163452713 171396009 597084346 169564879 905383492 701374337 946891535 437520615 683890592 98154967 650690772 540211845 154460243 6506230 637328254 647328677 659776117 472473800 206400011 672726901 604517702 747963791 462184712 579553751 190169698 302965090 203659736 584002900 949975735 166469747 532720226 648736386 983189178 792748664 22767019 971898728 355443089 887573611 610369444 310928542 234390172 43515310 296189517 242993877 960946521 502011683 743131754 92399501 864447208 455947584 702241176 80577790 693363622 964199790 423329176 642916557 343781275 636102621 18221707 41319890 524036672 969650067 681052119 301353165 17672971 161941985 360308081 461559738 752357915 717658894 677613074 152076625 773947253 124221764 56882648 517949408 768686712 930798316 844915909 753468973 154276116 843731217 218689681 117037853 583750452 700182304 687613237 761017458 921278454 828029856 469923416 82866031 601719649 517726623 768319829 756702666 217607234 967590640 5363076 875803386 534083904 685169130 418584564 677607206 277253229 611036551 221058744 962762562 719577164 303065370 618115247 278332201 942493653 805441785 988712737 568653885 996040514 153397926 39900845 731364360 666136511 353313456 507253090 299853710 873789074 378143408 132440830 77816210 24169587 27696928 133774535 253337671 182816381 716322800 123143853 567527767 206848173 39329670 921144058 458442146 773760327 694586775 291406512 410666816 383371532 634715647 114679351 492051039 693678404 526583792 735919657 547628683 276222828 657447739 502835616 260367395 744205128 785788825 443157316 95425612 975710257 505184340 394382174 985060731 518609372 87773813 563670331 514436947 597589229 906368906 70729756 131485404 475910775 259545064 862007401 369852779 489615867 771667391 717877121 975301776 402144173 722862475 912133734 660455545 722681811 765762715 915575550 705586949 174620371 442975853 20450175 178737506 130597248 620556030 2758925 289167924 51399173 15416951 580856488 647966367 935934953 418606182 845631337 777323267 382279477 497372957 397970721 549610885 288237378 226021628 678538642 94747326 524406694 245578516 786507359 899900111 178395035 799073761 903143528 314545101 367829956 247443203 837886991 196133446 892403968 339992357 386189173 731778213 400044677 467339580 671960044 222117614 990289595 756074806 126950538 631439656 932985474 36740847 121545729 797326693 635207433 610888008 928196267 897095090 577265137 440485715 316045913 392582285 864093480 111711855 337480175 833499164 433199980 435562000 548449124 446199307 653614701 563844718 891855414 737581518 360254099 916891713 264308085 560980741 832307287 118547009 363131231 159308766 275590101 561409127 798233847 813304966 79135097 226414820 118205329 962579270 674240902 204702547 289462846 243186047 749211329 924704417 980568265 229634719 140981131 632196209 930585002 701009133 104224650 7435797 569670136 627607358 938764962 846536910 326153136 40346708 166931757 708473291 714519477 295592333 679354688 602270159 288966781 507218805 845050800 878008213 884967708 794158827 734391293 809377553 460833130 770341408 343952044 693608542 102084663 551703281 446094544 101161 530887665 686100431 573233627 517652169 765545088 419742063 248369780 161675589 825720740 990567854 817366204 879264621 395489992 62094071 998318612 190653675 509535394 20192655 917673383 608990758 684303026 175214465 450336691 434484590 696233231 757427402 382765675 717069763 142000563 296193806 30330189 815884119 290903118 665760273 150823392 529077086 756500231 695246982 598023557 948809557 75733173 349037709 651232870 812888479 945081730 227643732 992912229 858836455 327337335 578698826 887633021 37437713 470482263 648264429 854819873 34865735 523922261 909346416 622639146 247498244 134962534 802820815 71604196 959520942 445527335 887921982 177300566 7118672 611630842 255677857 57207586 42596003 291579514 33351352 882944112 117161376 623215522 326637612 180726161 595112803 288585965 136632231 359573003 478466311 251653908 267974024 89429718 186266110 113408790 716249054 648318617 158193585 983610760 790971960 498750026 332619910 862818806 331806670 89206530 685769712 646501959 415174448 477045259 241370666 828032523 713792068 364994373 895333154 494003882 36821677 196744570 798962011 267034490 903365694 594262057 357453362 994447812 24179850 110250129 19598670 34258661 922247071 755578773 558635989 935383280 906215802 271303015 882416769 416612944 639685220 630995806 744604435 98493026 302926886 223677183 228930401 574245025 202210020 743982048 842137676 672784434 903758606 336593052 501893749 189287774 702424101 270892006 396051746 857305713 571069527 750158967 589977925 221244034 420226943 702829388 211689343 939291660 580641419 156395917 331925951 973177727 708548258 104893765 275419873 170415135 960429106 519340838 81707954 9843765 923969337 86567998 908756463 639274733 178188077 365649926 660418044 284604487 493769271 916276965 125562165 342675163 252553887 540318638 492746311 722601084 541146451 653097843 863637462 942245977 171670583 596783765 896914690 547781891 702464476 645619190 45239464 49567605 753821542 54258685 709792848 754453452 172261275 30024021 249519785 840398707 398655481 923043213 450224941 914460339 68218376 853596902 172130371 723752882 164957845 625932103 982495515 808273222 621514392 704649529 301393587 130130797 999571977 914787180 556574037 485138080 353650232 923896701 818670706 266447388 3339595 43039062 30328844 148824768 913426580 52103106 510111684 632027784 701868098 244216592 488237928 322711191 386745397 666027524 176893142 517046304 586862202 471977738 728923790 626636276 256762108 939386744 517827695 229206358 504388323 209234819 164306170 707374171 892556684 199962524 73843705 321638868 332394161 304752170 409254263 637446283 460220438 847835217 933746758 562399127 157677434 804489228 511327499 376812385 176438062 381376169 355875469 157129632 847436389 726585570 609325465 227985548 608810233 247981358 781281101 261693074 166957010 185123212 171138709 22497561 766552802 278031974 716590048 924910054 423937633 370409362 515850753 432367446 711745783 477240150 265177835 219759077 797223024 571704681 640578555 895546180 264843886 319705520 97882691 909687051 995620102 182672397 123465791 830139130 640031509 848416965 146626521 960082159 552237384 615657423 553385263 210896006 908989476 897894095 421106643 477044571 482043815 49160148 364710897 904245765 550470519 138254832 822001188 368374521 56640452 542886305 815325048 178242682 148656481 838556400 489042807 751116885 139601759 598220320 724751922 672760308 333812382 420633080 622725830 781551307 62106309 488329659 103632288 695544943 357324633 324528500 695064760 78066881 679002712 583388957 752339757 412202311 412233937 818547355 145757895 424850022 189626413 822026895 364003626 511887979 202651925 463782601 961922125 203816176 345257482 585104845 482289102 328282885 40201954 207625022 99307801 367388062 243837889 610264750 109370406 173143392 873071742 534195803 74545646 338386920 668716829 932133631 104741262 256377439 849220718 699276439 625570048 844374567 783069322 454935215 615339951 170782257 275382740 660383966 670409207 224068057 670257364 892379379 371232805 58948542 161878354 574223454 621693723 863700140 504384553 294108815 194491948 549382928 325229915 479584269 495147342 168789828 57557912 686121631 569282696 829718233 598054534 94253039 646629716 287866130 152716009 527760789 983999430 996369711 535845689 991484909 328344600 51290079 832429654 67747873 628180140 611353241 547719463 295771864 344091433 750130347 76727612 378573734 581757182 896352081 312298249 342647424 592778955 763609255 532187160 654732998 903677817 898016367 333558410 399297625 381923026 817304104 702846257 91313084 555961548 298921790 178998122 497884799 279525589 485813700 824303555 786575288 574526394 415886094 724977077 767205079 6507378 65491737 329390855 101500398 965220047 674793961 822190840 189674019 384445250 254014588 115873942 836615974 434075229 344538444 464818388 673755832 322149644 496945222 721678267 498642242 52128639 827336475 485691943 205063772 382724337 12342634 188645424 580298213 114769118 183927231 15558580 727497467 729448044 817505579 503499713 767600523 640563376 958001382 605327021 207222638 964124399 796380238 998840950 34562558 70303201 906568600 627152429 917276012 33548303 785186592 387048267 844225837 422832884 945587245 70049659 816630983 467852840 583551125 964782315 5358958 42545892 657908409 778349567 833472494 737212223 806165646 915836860 817140769 383773516 411648596 308421036 926885592 839552640 703274401 189283941 997570268 837300799 131440792 402196242 224947271 149070660 871130787 318077816 857466807 725672721 971134236 367962932 143930775 505346167 745567093 609278776 254551171 802773933 745484916 888922214 240239564 540817959 573084398 906010425 215939348 174327186 875709212 995275765 757106962 313078300 816421438 375287173 975634766 518130783 671508294 604842775 413454833 888364686 992606316 791958650 687727233 142815256 876660557 951080356 350997140 707296734 659278096 395064505 534824774 189348438 2157673 814151441 323196359 709304508 777021213 684942094 374421606 499536790 871364539 531564982 383130760 331531350 941873080 867527514 520473809 993728013 168609772 547674207 200280180 779997094 573227864 546245372 848692038 605279256 975048898 902826487 555337225 562686518 108114771 888502726 773740201 681346894 854447260 103706644 140337774 566965863 451291331 436489545 204663573 591999072 333206554 551285128 200271966 367876158 313976822 575753093 366486219 185732394 240965828 998369450 192404216 443484093 260973049 468853867 433226625 670685290 667363770 745036786 652925716 526109662 940647227 78693079 535274417 150284927 985112358 420187353 560999390 365087697 184456036 733682442 681927369 98966564 171124295 482475104 887661535 540294906 418377191 849522770 405735344 886782262 193175381 88754873 38735683 428248108 107120796 522880761 17454368 984520901 312641998 985581387 92300241 735006976 712149374 78286895 183968252 961108127 317932717 705701909 943505580 305067681 64250873 455042347 981154748 117414133 798170382 74241833 630743243 373392917 185932623 640583095 460364723 201001919 140751174 162378707 393244926 188425244 394387545 754266184 904339667 84392728 132282407 557856020 693997449 587583610 202725313 196281057 543704906 342581839 43925117 238252221 621208313 708698579 802780389 4405931 269898276 40126313 179080674 190558 571725490 925833972 88527384 760985090 83154417 217999213 940619787 641434226 181816975 826029988 856743846 14921808 965838490 367611164 185096354 921727464 826066349 462965923 288300476 749581840 278037686 954196928 775326863 217678222 462500299 364247636 240202292 39753512 60170436 242593316 939863961 562423000 252755393 325523373 250131767 25680538 108701282 113680178 393446010 108080156 469711376 707705289 665862508 742963826 816903332 805194278 663524678 445289624 555603363 805362802 688927417 122901529 83424964 103485058 480638013 147626749 702843321 764388261 115697079 963835517 127096798 24074178 536623822 947505144 934059577 737102281 912297956 660444962 569406894 130044404 602554138 85224275 821818460 491588032 876681391 259917610 362478836 725149173 139164400 979947103 428003723 961658269 405602512 999917738 818921926 353581301 760630011 363390313 167256170 923401358 860028746 394446900 295521007 557439106 65537905 44039454 183211668 561549720 632031706 690611760 735782986 690284514 948803514 4636802 916346417 44288342 583504157 927273937 502516237 424212271 418572253 331653864 821530203 459227700 500340397 620177109 560635381 838754187 548841770 926047234 595024989 43175594 276149552 10990921 368825119 750597754 749017397 73238638 104437221 795779152 413876438 896388379 579950829 619000165 543847234 151672649 188401691 304474276 42536218 563235139 896063887 601461002 411183982 999459290 333118520 132617386 231039216 184849493 477009294 278579603 173819477 64044354 871983032 993549846 619864637 266944731 995294481 256476378 586799306 949044834 977074101 340461591 653301489 40669866 351146204 725080450 679999072 506029030 926903057 189713248 225119920 996069713 365964592 803840024 962787231 781124157 310759707 657428991 254819503 997725165 652963563 475952201 795726496 782438408 682479015 170146236 491612075 658121603 164288987 159061320 969851405 721276171 1304352 149072214 831482924 624618295 385932756 577814171 920820308 986648235 539136197 393353758 98981585 634337615 288565312 16246769 723463835 573522693 173537417 119576187 319227282 910663602 867761302 735152125 241613190 336377928 973749679 244495267 317325979 828737806 45217986 823956675 898860827 169978909 547079253 807129487 956487366 729956773 705980890 51428475 471621779 57933439 597654957 399325987 758234884 74782128 98985068 217193799 19880515 406076224 168502084 110669560 314533876 769535825 676653319 502625250 26562432 821386151 171635120 238198367 478459839 736063732 146331203 865971317 855403010 106378697 126408905 945872341 70017250 707263758 407134331 511081016 522240296 956649362 206638908 136754126 225104343 584267161 3569748 368587805 37881583 216275643 750425515 714046179 867783301 234902330 822017242 925859249 528225321 379852376 198505291 428967476 564949448 103923965 242626830 236870510 865404725 510654532 552463417 960279945 92879626 376025653 225204220 958533348 370000577 776515929 184051635 884238278 694438192 587167339 331661328 622391644 855494422 47144520 500798685 273470583 799900400 104984501 586183758 827816590 461747162 763547359 611065443 63360435 497590611 405429763 993802554 959597909 451185337 456408080 91113968 80798963 258254761 823236205 573462199 653846510 701508063 913320242 454124468 794487882 230823357 730078060 424019510 740443633 991353374 950420365 285275088 545306696 240634841 99134071 485890500 935136292 118542618 715625290 282779202 751524728 344408671 115345793 259187028 820206319 504931068 835634433 251846117 498083145 331867050 320045195 128815721 966097039 722720171 340306353 449499964 750822173 452500259 630405563 864335804 789444220 439808739 867083511 757867118 665881027 241037839 47719602 662476333 120520854 747747547 869090577 93614195 124131760 346848806 78661343 689140988 226157692 629704239 688477111 185135659 664822879 690144644 933998308 405034256 57069726 312482823 596170111 761582395 850085393 529284523 388490981 574454346 321131812 904181981 890421351 694218379 682996389 247339745 225251874 72377757 682590138 485759864 46809986 254679032 867086935 841452429 182586045 404380103 55592730 257558397 819560016 729611203 104594127 931769685 354466126 660626224 366041748 949534196 46230089 83586415 317044280 639263814 133120165 487022029 111279350 948396328 284444205 428597450 249427674 446446261 447883466 37239361 213570150 38669279 169196248 336639329 472453175 835169444 61409684 313688257 606651097 307981080 219872929 186664141 23913679 95182149 224274437 384093335 219875717 879886441 390728806 219952772 437518369 77775588 801467598 387212058 30668601 304261936 489447181 594421429 739785974 450609066 608559714 865978318 448529573 258725380 761993427 50690198 804259311 526380806 213932854 979564693 259269175 909639903 423756463 892751456 355533635 848968552 537583953 624988320 905828439 926982053 182606594 474398923 478341380 698249165 994555159 144439571 497604526 697183270 310609334 711309028 409221570 193686257 500281271 903724460 793251975 583610108 569635819 641671070 540582908 357178329 41348855 500979501 944633890 584464556 484489159 924754904 616413560 390200758 687523573 435494492 591714882 110924644 425620174 122923635 194870012 37620050 463101288 882440516 629761564 373306826 815127429 991459948 336348598 151335246 358180110 204482913 707881522 335168002 475663968 611771017 985549602 185847401 823445954 447581634 600098904 355236448 260283338 434562404 211719263 778586835 258169078 19859552 862848992 908207348 541685641 992033967 140123575 924408821 718053309 521846371 110053264 68720487 610333681 612302961 945762362 663769332 810234911 651765153 826390730 418849764 993440548 173433701 215165220 720925276 952646242 194034973 766690496 295650944 180163359 445306281 359009118 116143858 123069741 599420214 793111063 688451728 925561264 565856196 877197385 449833107 597249131 574799054 234682610 279867091 107351166 343533877 730158373 36748059 264596672 403687808 431114997 419608558 743380878 116925600 995441330 365623317 254820527 138871821 282800881 749489568 637706531 929910276 265080587 639959292 510206072 377417803 938252560 461316 355457485 647181605 942409969 979516294 752660364 245371253 290852728 740235328 839153134 195872465 452151794 599999146 933330393 395028754 517887118 68083440 97950147 158921245 565433699 830053004 591162194 995491058 270976962 987085957 955327279 840538145 506228926 854339579 413634120 644191282 167189535 781030297 148653905 585117145 259331021 954355251 852137667 451002491 641068746 26623387 104094271 598298807 896940731 548401914 120774647 689765380 834854245 97586524 644049922 664727347 174452891 916797227 105355502 105003235 432273433 778980754 886714070 996603720 624952105 366686135 323791627 875385591 130830906 994926057 438911875 716427246 810152485 931447451 859305773 595668721 558115164 704806650 207878009 913941205 81824658 269232092 904573420 428582482 822041006 578549271 214520601 893027914 623835627 951671147 179669175 941900944 227196639 806311983 614804877 838643671 356678988 393938327 644367266 152652084 924324677 933130406 715310451 303144643 603859762 162533675 789280850 992450701 28423135 841063029 399146766 469244287 206666223 408906055 349839577 634141933 228690522 621330442 399103502 817729017 884538109 295934035 67568970 510963503 840308357 785873363 842055561 664794586 695220258 548532315 23054251 992989367 912536987 492305408 453575285 117795709 185503856 560486205 363705312 400301427 558896427 825638908 570077384 694808305 264629043 804787122 488760742 40883123 52313437 517428251 387791395 873446112 869649876 79902856 283480830 137499247 243507048 148986422 477211037 523237939 611884291 133816705 962354800 855462370 58417513 765915598 952189202 299187087 240170105 219144675 515681584 268994231 887229385 293209050 80740349 931014313 707734163 565171618 90934780 410601649 555185694 606867637 599889446 310568673 65521812 208668157 535126237 228015449 141793370 782625132 284978982 90350677 228328246 403565811 655800588 682514148 419769931 492015905 844508495 663110845 385172196 502908047 791555731 436042301 135711480 15952265 683066234 355012863 396621905 235254368 464804968 979401359 151737862 655516716 668746039 121448672 67072135 268428910 30779171 551094354 159077948 992895213 183716517 523974774 175060000 333333971 19060542 984675188 48682277 374032144 672068228 125183318 913320223 851283386 432919263 842872939 352760618 324441262 347510766 601360213 382596351 228353635 982972306 886471479 815137891 599505704 35177140 375267704 121633775 14432509 175715690 829704756 963884062 507730991 874638847 530484140 719484228 146978503 965338233 560136360 528594801 981856207 453494627 211523951 281714572 199058128 858593753 649521412 109633492 12387762 675257134 665943810 321245270 851946031 669864164 94644151 773400512 254703760 386523897 849804304 264085520 399616801 472654854 120308725 419583728 643254406 285285982 247085413 113736464 254373516 249456232 981918135 334336903 136223436 804812252 444317215 50159600 878978563 984096002 500270004 21664543 551096693 223234592 732925681 734238864 782076551 1193072 318870616 953176028 274705906 836858733 77114729 28590886 704974523 11204288 384827763 633865143 721468475 423635592 761639000 867281987 20018321 268245684 644406200 990975950 728041882 196142863 320778981 556776725 273859034 755189905 901219304 261383877 803025141 457422533 913077192 636898164 27891204 21040400 560727922 482839517 354176029 675054214 227720032 3189865 809575636 143224823 485968253 825919993 161931360 787950269 464263076 459032873 837170475 214072996 333806931 163826432 927609730 562436215 396811862 648344592 626732500 586337299 486283924 350893577 503053153 124172800 328929059 168456494 488849622 204766816 281042980 206252895 53111243 94004912 320253360 343003355 739872575 797621816 914302759 601506280 807166483 47653487 329439863 399413295 566406389 536624878 639084380 408652419 237814398 643409377 378794505 974177676 765524530 312922349 193623286 312789148 428399316 477267047 26944598 217220091 926237237 49864485 778551844 478283611 880883507 983113424 408283592 660261756 44442660 372694213 805307219 729281461 594460863 398666041 946614557 780490483 31125138 553449432 445477170 563204936 375985706 738060081 509558622 467265710 406060456 88918279 229192067 61761304 733552394 886835911 676209294 832469772 646644507 396028545 43875456 511728833 309884590 298974996 380408722 595122109 269049550 290529370 263220114 605348770 830247043 884184676 168567470 734696132 467906273 193354688 963605723 981355149 487710336 511015550 620062544 925330033 386381172 765667015 763248635 627931079 732558459 254501055 911250433 8436311 352663800 968041930 446628732 551045577 507759430 582795546 598497131 835836034 48341366 24071483 637863124 42653206 649928163 315512658 473471264 815100136 525792352 841102644 670002738 760059452 764900800 74560635 283411736 289773259 56432017 300353889 7326943 305991453 559324062 234773954 872602289 931060470 263067161 368699319 518141993 890059714 696180333 710008821 354145409 428499419 597343695 336907966 578981548 955566948 238786714 178343587 962454241 145982842 436388134 262308807 626414464 647887798 805939749 239223254 714092446 973327492 132735509 324392341 445008668 111484819 318336808 345598433 851582303 676268680 712430441 429652623 555077192 678446423 998042883 931917086 366488301 115476529 958569499 63421319 643807415 161719647 607385514 479389436 916069576 384561387 333936013 472688160 379497034 358374399 397709208 825121559 69477069 394720797 269984841 953366224 135464102 606277137 8507776 104102207 10296635 718443333 26480372 66156975 120198611 758580851 918589657 575582794 147055779 684377507 664933856 951542483 551820469 520735267 856930036 389179403 862158668 582414546 491288207 869034580 459233385 563040212 287007938 822322365 580279962 47774175 429313765 411274878 590890052 410413486 629831972 397309696 171284460 248894404 813872156 363208073 570137768 148281786 426520036 220732938 543701174 65724766 899876040 191518556 325501981 173815532 220369371 29764461 710024312 95379150 20280780 11644300 777723665 371967735 132922371 104660829 668109893 795058102 343312549 962896105 160555162 788228594 447536700 369533755 782204888 804075729 508320987 345053978 387124377 216680095 194672301 88824585 263721756 3829711 888014243 605317304 502585223 809990534 47625208 230560557 82520037 1173047 621881482 558282470 503950017 163576642 687260359 266051381 424565473 439305920 328926463 267489562 451299704 249836276 6767722 977358423 714829565 265202348 404089015 442579079 281311264 168310756 752970306 106857955 199962971 59357571 695722258 287347174 350407771 866164155 885806999 869424366 881313982 701674357 565721799 299994762 966425392 191997175 182808032 141695908 326236890 842426611 16712787 757951886 604130089 499858168 834998209 32800735 216622402 850393527 75980026 133517299 292792217 101906095 711594943 414069545 714203844 951541167 992863221 188288719 97142409 85553568 427826201 442140065 52793364 163282194 350807759 294668024 835570778 793315699 461515099 661540369 947074649 305058968 651916492 131447748 906422771 976324688 336320365 891281306 917048483 846319478 280291692 777859604 976978019 696430182 27830217 573322336 708926149 55801279 471327751 882819535 466075825 234202668 371859150 360791243 325055489 41934990 72745303 528771590 322295733 687254231 880393975 618709569 999946449 629499527 139837049 355431266 607059759 533381453 553791340 357791293 973098114 389930550 668893692 286090557 504201306 772670865 427883935 100079057 132621806 510347891 365660151 382346014 888854910 658777836 771444799 479924537 924767931 210205063 606901362 444331048 8524027 899054283 860476455 670993487 229988078 568347503 537757718 555719845 330919763 620977824 311128752 344882090 542791481 385168359 215118827 306551150 638774570 35513627 908172169 254380418 833670382 315926146 916883187 413349279 194631518 779291198 765812846 964954848 715801613 898464706 601914870 990425957 890197677 790329452 208648488 450059428 853712292 968552104 237360477 274023812 842847179 8189679 867360849 491518520 952997702 153044509 73788122 670498059 798720120 444277517 336318697 600406541 66713711 81236750 925347711 785687626 513997337 817794257 411845038 219949732 24722559 593914060 642349702 287206480 275535054 988518774 208714150 869335906 686204679 830864810 932805937 206938116 765049255 145441660 707123029 447700422 386261217 51968143 362116294 160878309 397889685 166059559 790462619 465995447 616327264 810054261 255067483 110193706 722363062 178003381 202396698 725903111 839235503 161706216 81521983 860029452 824545124 646958375 472437447 842674103 658171080 810566482 110550555 442143599 744754241 29331255 556682371 460631745 121042747 186523497 45550978 418071907 265092918 67481863 610471070 138095517 659975131 177804697 275349041 374495471 874297296 353582898 666945876 291312183 381164665 918195944 264314937 383478535 500087013 688552924 595579973 435538091 196481420 875112645 770384175 412707778 418443613 328628654 221381780 728476879 166399981 280257866 431953124 574329004 355176779 869995483 309594476 2522494 331036650 916598699 624095572 342598115 684467203 273780083 877013322 113134416 586964857 780899570 597033285 563998791 627156894 106350782 325579886 834099202 181536648 826935317 54605718 501524039 875670203 853076197 356391573 173008006 375214798 994620645 881961296 917200717 965878489 968686396 693956133 984192068 662097620 117805329 630459370 692005720 490026877 954118745 251815557 530917136 757891772 254878637 699521338 533731384 660979970 423157437 538809655 382142834 397491796 758810280 462105320 470762640 760673620 623821538 409259972 67303812 246007331 728647356 944156961 280551103 150310318 283910257 462827667 91464371 576032085 336024097 778947945 152513425 385229050 836319701 523936064 740627862 462121060 699722476 441480452 825321925 27397286 328775782 169020575 506259197 962463260 39080064 42385435 85456847 463845217 209904163 936809556 2400364 899461749 198996249 895670154 196474755 357423114 34446174 538005041 357839806 731770667 36976758 884872290 381664561 428140405 226474364 112371755 26966670 245096689 321489128 368491142 254377275 990158699 585147581 752327700 1973782 418244926 913498692 662573488 94245872 228250386 364434959 762420060 822648458 515414889 697394797 630617411 348437539 189552169 891032744 770473869 993221639 501870861 994910649 476799933 479433764 886416723 774328780 165425243 410435658 950371248 227880519 177745642 230648135 708311033 74823836 739336521 223238949 732742228 638080668 1443978 127697249 79152172 487847352 158916842 370508735 759665085 954309350 856918131 246594716 764296303 603449173 339241319 473838912 936979952 255579091 88777711 620391971 667523858 932720129 860352803 625154297 956556426 134654724 703166616 723839476 607643180 761902327 571298112 378005002 961149815 948662323 45082173 897775639 594350528 448707180 149228160 636490673 942740873 929592494 893820323 811555315 454859348 16189108 156198345 187974252 511545626 625735583 843082374 944271001 520707738 328036177 227216981 371683481 641102583 212559454 723972108 874414938 739148321 601955183 731020936 153725818 954008968 572331989 294314371 246656601 339573388 367864295 483694037 404132346 844556186 902871829 506481848 375625452 639985270 348036068 199668610 287827778 299633806 52873576 738557844 437039548 623585076 336758043 259005018 396350847 541851136 375807670 726904797 798926724 79498286 480017315 259655306 534000275 476239761 372753482 468094786 891116879 201944120 740834439 711713071 54612513 290054188 647023394 511118401 221637161 30391510 683670281 396824061 237228407 973689305 139659491 648518952 618322927 883400615 643644355 76466580 549015122 774567076 420316627 385094200 215397421 555811182 736693523 53399384 949569816 605898679 921281467 600282449 787851430 416453763 536509437 620948783 750154032 709805456 874566155 94678078 595110235 808709810 388700224 673036542 61078219 426384114 204244410 489385249 989922282 728749033 103016742 581787047 315556536 497511378 315373100 990365766 452466886 115510031 754438199 490354783 572557702 454646333 990469788 178213133 271563323 185284103 799700168 198293343 123956087 253289062 51799302 267401744 463982619 645960826 311026271 927145356 391145223 843464923 587419716 887842509 277341369 6292017 739239079 315031560 954624370 974259244 341298446 610879131 38626166 865155257 282793751 935930172 22773767 134473365 750729669 997181419 890389747 678153776 562868033 4907097 871072505 259520021 184701655 412971793 939592821 878440583 857404884 43664276 167721373 103825016 564890814 796284474 1026326 501297045 269676845 690970817 495469555 700241497 993732961 340215750 897591791 354848500 932317574 191344973 684470959 224408240 379648571 866126090 824946714 931276269 539562324 775119782 290300619 61603964 234527405 453616374 211392939 347648792 379046554 4471454 697658588 402276409 443614720 625569634 805263820 364848414 128104239 172253975 338454836 908820696 280097697 123622950 550829386 32965873 291490069 419721868 243572542 540515664 598850553 863949174 253369726 394262660 201341965 325244968 41885751 316889720 693544177 203577503 311557538 366119996 610517107 518153707 866380145 538454037 364981611 817531733 218043708 180186022 717926574 688989895 197400443 369984744 864720868 851874684 476476512 287729322 494878331 285495275 190582984 413455501 227952784 874895953 72871010 383601951 587211384 79695560 450063490 901890999 943256889 190432247 470780185 717325294 59561828 985033852 731918544 763671448 334886077 643116406 446013533 997924586 123807911 608790196 204065461 165565096 298906867 591821212 871933809 755030817 589673782 232302189 891008792 389391009 504636429 143228891 736615544 638727534 290461864 215217541 97397509 284652726 217303031 264802587 973680687 587264086 523410139 331904321 870568625 720548608 880038311 816080468 650410164 998126638 605157702 254755215 317726692 388801387 137780203 927237941 797422301 606213223 376417139 450186464 719145830 919879651 231130106 611039151 504272102 584986255 660887747 222110233 258944908 612135486 38977947 809559522 421347177 894743905 539443638 111504933 843464497 494521389 318677386 232072669 368944213 185309830 442515342 317122697 811855949 910985011 595447228 176861697 14367723 760803775 752211114 614442204 592783608 706710832 672821975 63749152 942085332 754687912 23648249 288619658 40826118 285930982 561395010 7717934 518793117 38992278 461926538 252832403 448774109 758438544 17093776 714710576 121841323 947371839 439291734 429982029 138775057 922039509 21695922 558356546 379628165 103997494 862654137 626166724 470513420 549026071 537243587 765711070 747053868 935034312 795994461 396123682 595057853 325303433 162610727 983587692 65234605 639495343 879571902 815507382 608889860 450714366 302627472 445276100 383042524 790045476 438890844 302230457 908418288 531376915 328203761 766094375 71103255 761809550 8162347 241659134 607564814 345226119 153485256 198059941 731532823 798859256 405214107 83344138 501912300 769730836 969887926 170215439 951277949 730718941 143391698 579600909 113750000 959894948 272081883 420368422 302290059 1433097 533944076 64374611 273407920 233549580 340758452 630873579 339384809 286174739 562836191 831385473 479960514 365972016 236903239 261969030 496934485 891662748 265394626 536694239 83439707 858599819 726828403 151591631 704466875 369458578 761907251 376647950 398961074 944242729 370198499 668877238 997863959 967717518 831289327 850377109 336187999 163224688 37009376 785316859 213445379 850704114 244101991 656743001 151691645 405611390 811441039 722447139 440665241 522391324 863289403 656572956 894384997 620995931 941998015 111292539 797091589 267728239 850888047 634085273 608408190 810670277 665352024 645878302 749321551 700748085 437228678 184465911 424619752 635573791 688284202 825961235 968287387 440658554 502931435 169116193 45130521 734392403 365722318 496643859 823261251 985281870 153563130 642183731 298151999 497754848 200536335 547687275 57120206 739082566 532256075 836881893 23169534 806537160 548990971 923499629 895782474 971002891 109868823 122146463 531605401 163640909 603273689 295491582 87939240 14110299 560080694 110843600 943564300 956964846 599045919 99152076 576804840 488428156 299445865 990935538 838862898 402035920 869623088 876338105 845027619 552502018 377201188 590282529 568422147 673569671 443443618 216267738 407496372 284268715 682730925 88633064 737361487 196712365 790414595 331800750 640564360 201602661 676859290 317763328 540011322 245138311 921709316 641762055 669826020 300838918 877528618 935533395 74040855 376624062 119041255 557763249 55030610 969955372 318231992 340772856 931903872 174004499 897127511 917549299 369328870 224278690 840045592 245081539 824250037 233028797 358352789 676207677 324875373 2801610 2385916 669463079 169107056 39707943 717329812 461279025 356643443 344226157 628237478 867905947 480834226 520658749 209946426 738727742 275176599 279053264 80552213 900022373 527121644 622824271 229729085 543399535 154238563 263816570 403288906 948018757 877447459 556915954 741235256 911556434 948376876 812305572 291260654 356261975 456297278 605046951 775332391 921420518 844491524 271166265 7509276 946748581 643577658 884063355 921146832 971487046 479945956 451384975 338547507 47575412 551131657 552190677 474234647 924281385 88052823 873767741 180993029 458848875 648086280 533157370 771790510 268900465 666163815 224205267 977593385 789559536 465946122 378720302 799723430 3977421 448442712 13608858 462992596 857240682 604647629 925647887 182315885 355688299 565800102 671924048 113107769 927194261 122533553 611641154 279293986 272960572 123841871 395330629 690435746 962417596 126410885 851145865 419770107 256853881 624834413 3468663 601146000 341812193 666906033 542308096 396618349 542327014 867754206 745614796 547173467 571674773 212199932 121229367 602764149 11939680 217749090 680642496 695860351 865334524 506950761 835887706 235482898 231878290 612549166 526382683 556973221 221926889 569779978 952457604 962289545 6626279 784055284 413352313 538370410 993841584 718673656 894461849 987629771 845597145 638951956 873553683 384700784 881465572 385444263 110258307 455487985 521553712 179492096 44138556 131780925 899981727 125812856 547945445 161954740 799885325 103453146 708144920 804311558 989618512 63526032 880180738 286546342 144011042 562714666 647988164 61302042 454023824 303390666 441934351 848322838 728017525 232849292 311006811 256363766 579519176 620712400 518949781 261267258 931850074 876332798 953932601 663044564 430665035 857474812 864332206 692175268 304730183 97833895 535432151 174459850 865737128 72055501 951057082 384551844 259305668 33106157 431423272 740965785 127720152 105764537 276875759 675365943 657286239 152998031 701451973 913925143 916385961 566130175 484079772 123432353 507242245 337285603 972886340 915563434 58913959 979925364 310343311 915851034 673579232 982170113 732226286 210640951 348987406 647146457 885401646 353741525 218091350 404359791 972752202 388339072 725974557 906609717 650458279 455457647 636009106 825284861 872661797 176616136 967710426 847493663 681476476 265461335 802976777 218197622 722793696 419668604 834485151 796976361 215612091 443799374 945291941 966208101 481818323 525133260 24970194 348237081 996419849 116939989 778290794 471431193 961413078 642618756 633009623 844813239 74293216 198268326 806750855 608691896 154426587 732391952 794038345 53785845 623166348 79275297 42550489 139125746 725210065 807369109 900062321 511278397 374710603 37675758 29616433 794734425 348794719 891447386 659082728 898455441 338425222 19874300 470375340 399081089 634491890 384138573 402429761 65584283 575333100 330089611 571596027 497011794 529694616 846093835 669046123 911958419 557206531 781829057 883545577 430724882 387872031 483915289 631396042 956628117 336866509 388694568 118692901 158078153 539755971 253008869 858748198 794231639 287999878 403500222 361524700 39643402 121145481 93990403 794323490 499350300 308298254 495641080 170857413 185151089 865395311 842485265 839659280 873000053 319300278 674704701 860346940 402779532 264954545 55809731 306616014 442860991 612762002 172575575 366928273 406535613 535289004 37005574 824343420 406697655 445767503 914064720 909205854 115643932 86989464 765425714 445599867 4835653 924109471 907838988 394457939 628110739 535158136 832664159 470148849 297758311 115747109 561927327 401129167 809888057 826328049 714365596 29536339 797170724 281902362 239689101 933569658 463826278 700007888 684319337 701528146 908254060 809818387 607503755 448593398 649169839 114516628 997497113 991918965 337385822 503429771 658224551 498953530 838291121 383471870 583016925 336094575 228483020 271953787 942483617 141308464 571615683 59660035 987168680 846336026 166566785 776086019 613224376 854492947 48086856 573165574 9207126 271058948 117034613 715751724 897683444 366095005 731284214 233727484 430772498 26797195 197844900 790601603 728608169 953254972 12698233 344204555 412087261 669960182 251295849 384398136 535075506 291472225 617223564 912242198 795634900 649945160 961247961 660272512 627217910 604921883 324270826 748270354 386475320 483443891 98905681 925602419 699386602 205886283 644075024 364767993 670807331 653252803 985242469 174328103 97190214 663934648 542977129 488606530 87222815 776849365 955552312 664365761 443269010 537582955 712955372 310693907 523741077 202014689 696878240 719524443 619638738 382996057 331720055 877029227 902814452 689765940 685008120 379763820 585927428 850126484 929743825 68931722 735259395 72072621 37399136 358896211 837962865 826008758 409378289 829010611 651739851 836934666 722922380 747881257 946226186 594179436 853993124 35621130 970595054 854525568 457198958 412860073 112551188 471218088 921671246 937926847 717838396 991352570 757216651 416748831 601996022 553937568 386907942 823107269 785470869 564007980 158141316 238708333 857852050 610983313 118810300 493328951 373465335 103905401 858449336 929598120 365495182 313024532 706175011 980118815 210462968 34753035 281012914 761197779 104824676 727290875 118802566 206730598 572657858 316196588 168293372 739781355 717855124 800998641 550524642 769423012 579566061 473586373 927736287 373641987 5953061 457149902 249446751 815135058 156741021 798125287 162456075 795251985 699108574 273773144 931342518 505817238 650490845 799630406 381250827 469893007 885487830 596652607 987150999 110865891 946029155 929491122 995635398 155539112 214466207 664896722 905203256 571089417 333402795 613391184 478571632 881532309 927572541 977813591 404369386 291358040 988658100 703090197 22395094 374530369 952025363 1536338 893482596 521407359 267188922 588803259 983093335 834248486 609160465 157877793 925929629 294675224 749468033 160554371 283064147 11989670 243016857 261740435 809466598 872420661 993971796 404655357 150595503 229479722 941910547 114862018 401209499 197750155 617172075 233944371 684571614 994866806 40336403 342310356 498575260 331964870 394661558 133215524 811246316 259310445 744001369 682648059 529284195 870427460 967063770 723948271 313219204 839347762 490376776 27049466 376144226 556497748 756203096 748394834 353256705 533772180 957373821 687569215 113151101 444269338 979906311 498136531 66776712 253420503 187086967 159122584 909865049 548164585 713876173 184677136 752377413 217162241 633813580 445171959 387232041 5160548 949369771 518886180 229993444 572563156 791843995 969293174 995615310 436003841 922384801 523050132 408404801 281219329 344191593 787507634 160077037 329848425 267769826 398357759 334294348 192535730 420312002 596177104 390209766 434642110 405890645 607800764 778018665 758758197 678953294 649092191 330840006 138311821 245725085 841163866 621815690 180864414 676800786 53161393 113640941 974495052 663689333 721245115 291826445 722277958 317363060 744232742 223242961 761926853 690969064 116771459 844167427 79228240 543005783 249648067 771661514 685373906 115530591 735935784 477535144 85743598 370490847 12910007 682190403 102945914 185453690 646805761 485631439 635135924 114434215 545090243 134338033 307002345 495907610 389459020 890309103 552429264 856236899 131532678 321076845 587220081 788235762 443668896 333545981 743817126 609664042 587927919 449297457 267668390 886493617 495332451 503244266 864399933 49385882 332851815 655616551 49265098 497169236 346557184 577657642 24275151 163946667 884489777 758340072 498674284 719563306 496904994 365044688 907171628 430011326 642964445 680769020 213948583 438334878 222979951 343597086 762360706 552274722 125130306 429466790 486298929 912697791 355670660 678706585 154682835 178066170 229721652 399115415 946340297 20613268 857223201 830988648 292376885 391036399 291548557 263368024 507887473 510478754 650223433 893024091 327249485 718274366 958157799 16867725 157525342 94474342 304122254 710159632 647355433 472719819 171062515 144962790 26774057 512063906 604743338 463075285 579642001 168568196 711680447 890458247 407822589 875395211 364496282 901382819 276677595 977384123 848345439 758437927 184433353 133804050 395799302 431502000 558722873 228804804 432914312 60570649 427931744 561524251 173316700 508279791 495766393 450815659 995428467 58097078 421124923 493215004 631189954 3431357 280333063 745813598 99909920 822083142 475213239 466431764 534367236 45160376 696032493 811914038 525591009 230186075 99986173 77536521 832642025 406537994 678676673 394944241 515944912 261668281 817371233 413599642 538536921 629007021 268973541 984828940 543398996 224221269 999587315 237458227 431702353 276125262 18726678 493800699 269006530 939138797 703230143 756847388 466744004 321128006 361296683 794608114 861839696 137049024 646122802 206298292 830631434 953064122 59876961 670215647 955425122 501129473 53872135 838806099 201734735 833547598 268590975 751031975 983041542 298655429 838989582 107190655 462668117 955238163 463017659 371313085 387100617 945261148 868243654 334109625 359781051 487068595 524551456 816379573 821429783 713296935 706157797 274441104 195248372 758829699 365590300 285122752 352017739 881462084 251989756 426285293 288583871 719192062 353889929 732605509 209589748 773720446 177350962 436761034 339695351 176803261 90286262 34883502 565017303 649076092 967337852 189770184 858588284 639986427 426894636 960579079 430093341 588364113 713206055 888974516 384213075 998964924 32631715 966796075 74996596 12001591 931491949 359078863 829326087 121522731 692802105 336574140 74635722 796804821 676239665 387212306 745418334 648342677 756983420 344536792 977848199 816843705 282747264 872178893 701654786 616299752 44255557 282662437 862005008 446318374 571015876 420890366 39242602 818288509 32272065 309751413 122400173 306962761 409916262 803477912 585511410 900805535 370617008 841501888 625032172 467534180 749259046 133628219 239863753 111127666 275735549 546785046 84016939 498063812 74462957 652558901 549031462 849376218 970262467 185711118 167865740 629113377 418982811 116563 571023824 689474694 219616853 456432087 791540559 463602871 849584334 541365461 268655439 392881348 259201188 46804801 417250418 815666978 386781046 609418473 500387121 554199757 188321745 354905546 20993615 924742199 888230285 620319681 323916670 435956034 343151970 554033214 778833773 272284350 82336097 703630212 574004076 938963300 675696132 286946382 513359381 616563020 974866411 332830723 657006467 17045572 632883547 938138699 711954149 790478232 600487523 5157906 246171781 107591833 620703482 137342964 784581890 387892038 873652232 282187282 216563426 666257983 418409978 537368514 541347223 306587116 201033693 21280330 714903480 303935616 681684053 847504586 744810714 794992859 573264168 615781114 996003403 649271768 262959005 582167035 719105524 161401761 53784978 223105552 22717478 424871499 99188590 106668112 365664148 717936131 156924855 915043844 236546204 376765845 579321578 7488486 854666250 647757971 597085015 9062456 313084368 871289999 407724333 9466695 453937477 89709542 316529199 517565371 276924941 351909140 32321310 496786832 406692645 985379317 746983336 473996500 322039088 884316789 314681268 879188682 433260774 790392460 493920795 51791046 20862453 932828742 701271338 454942724 925086372 142328539 864085511 469596544 331944619 327319080 926318880 694286697 752662400 630958005 390481700 316873983 517705906 530883721 287017633 5018116 220503558 237326994 505658550 265130690 932404529 156317770 541284551 914064955 971910002 347737403 363686463 701451529 374061563 859473099 327330155 879363456 643253216 963250504 862325693 37410129 932644541 757252187 972150495 100422880 873525276 102514042 291155336 876406366 858583171 750013095 232430275 139669673 168477538 124703020 676606519 136544994 396489465 546315040 672552245 829531051 408026566 858997926 356121980 283133077 789755961 936266073 339874232 553216552 918625695 874889198 305548973 40644171 211495662 396610127 665767781 207847784 678054147 944292403 562251345 164369190 921763076 53269845 2668467 754756796 187716024 911096684 215112265 940469013 171221721 374619469 11464754 152602792 367473119 169754713 747325451 76862042 65368232 365123024 389598636 559909348 92340994 779678852 643036318 562711274 664121031 74145642 477587274 805720054 64768416 479207038 116063869 398910739 788728098 412874727 274020203 524952062 872374212 597630810 547854431 750642480 588194305 926727144 118641415 456278098 288018903 321650489 205032261 392784704 705071165 236910016 55516236 362506794 784057886 460893034 419753327 913852685 393193098 896903871 639122172 384898095 834687110 169445861 228426005 762934870 477596631 862191288 648422458 77509296 844400030 55247403 914013455 652930448 515561662 465405046 371992112 64369145 859023787 427807423 408870931 350740240 856327784 88479155 350465325 618945796 253101555 405308455 454200497 688396456 47779114 176846812 611718578 920271911 897072458 232420812 583542081 58726734 133101205 831216910 362882767 641873130 500845723 315889758 527431309 664642362 889700932 442576048 286309571 566877030 351876643 275560300 658038133 387385278 122217783 333867704 100844029 318819869 122216062 697310577 468280117 169107200 727304705 172369881 315081127 691204859 632116560 876860191 335348229 277978947 67378530 697063919 667808794 887934359 165871179 186305983 602902195 92963359 966287885 582458396 270573939 998537068 516618715 605896834 443107879 288291579 113776803 443003385 616878752 183134075 657772460 295676308 421097266 731600791 786423232 245987548 352848988 665497923 481916129 925456085 362984667 784024074 532110931 50718235 365774577 926948026 605803326 726490130 159041877 184727400 157982533 185287618 977092824 839737561 294553797 805907433 658884758 807592149 878027238 213712735 423269186 930487272 106278765 864236799 585883274 292044099 153074713 697919284 673505584 977634678 244088768 856581160 661768987 127337962 892069813 743868392 675567759 318937350 776931752 312514267 376916059 602856300 587962348 841608306 305995290 432581299 841839330 278118565 705997728 520348845 494410830 985258616 802519014 574255230 701953091 120218836 81648898 688916185 913669202 721277307 578552185 484313569 4779152 243812956 999600652 194187629 104891920 611336590 406525878 67115011 58162596 366864721 77966651 450279548 97955136 644246814 489454155 978987455 71208104 735802643 733449811 698288749 641145173 594535267 377933172 293906870 353407608 538587545 893856205 333223171 197658901 651801054 199106577 47031478 170702683 80968295 45868841 718660705 563322800 191195094 17079358 155274316 529793885 294237046 986279310 959921892 84138499 800817313 372808663 745688777 223055532 694393448 193037589 263076395 252140235 80325107 622834574 383527447 329198495 198811002 21809539 621633829 98594353 529487833 798976010 197448013 58556602 649508261 607397769 350405966 182861826 516660857 645887912 141395452 717784004 585069847 373470348 48763431 274085008 681866512 901171643 284909310 822236040 188361345 53320331 807155685 844132242 130601364 464956177 197653099 423369666 440407426 132767074 444687894 456038781 190199368 456212478 795904769 373210252 33452987 317511522 278259769 386173059 579289462 203359814 338423465 118225717 657645136 4385174 738238142 580733555 758970305 704008313 435591731 852661069 170952359 123662900 174940329 404916005 356516621 15604392 81658234 448604385 905168868 537184415 744880709 443202398 867014776 214906752 672992627 756869821 412297603 144076137 473663386 184348451 828913242 600088693 615791785 79669328 556368163 96024070 147109713 465533047 775691779 43393887 585607341 630830790 942637733 120959316 181172465 956826847 499679764 39973624 55030831 736022653 583463228 225170220 99561213 355700712 421950299 812004388 406958661 498004393 410636006 250603098 769794130 959392811 51556373 958238496 687958589 871132902 326922441 598328976 375280068 167291904 27937728 962568799 50555252 103964947 256861122 741614117 607304126 647916528 427798514 329823498 468722893 910807252 293072041 411726890 413559389 15227296 928051457 127386940 904782384 585391049 680149938 462053430 355306685 839063113 269048037 15136392 223657647 73315818 935641298 49804356 999482043 190742058 93558430 361952533 129323680 869935070 601944230 997743232 470995071 152525591 474573340 746621244 76837799 599483856 160510249 47930109 561212131 304327038 477926955 256862868 114862070 991088869 453204419 401197795 129300069 38238666 370058318 49491238 277895437 537234083 226568883 524664105 31074927 916925647 285647631 24931263 344952851 840155669 489234729 524307684 877084146 782950725 468400282 782718932 675796477 551865473 270962299 980228332 804258536 779457637 518789240 625911653 135520093 151249792 937322925 707076411 851238888 206900791 206154893 951657702 153227468 281021207 769370544 798972561 531726004 745019617 370131221 240888744 883198623 877593706 977151046 822347502 527077819 379554899 175063885 158308955 835930866 536033693 572097416 370995835 521124002 5618470 640139820 294310346 899671904 451669874 201892065 383840306 604200909 142631924 143463893 574658842 432080550 54287706 109079440 109496215 978531342 892777224 672174272 958866099 130074040 190450040 215454812 87827156 206930694 196637589 990352769 823805182 274435251 316385210 54285066 309057322 697557722 711710524 58522896 248917102 898687382 995726451 414314889 45629173 456518918 965940946 205311586 937662086 327838553 506300489 368522109 611077249 321891963 82050039 34795797 359579514 912716898 9325489 60255157 398371157 803983443 906972319 783432787 91374895 566702638 833286568 727559969 212208415 336248436 279002275 87854846 250800207 437961531 433507372 922023704 69724998 136457548 670331493 974988779 305776792 196238739 754905970 664757936 774152526 889756314 436064895 942222574 790524389 185122651 153765170 133503224 231880590 581029635 949356360 420873332 468407107 257302521 326835930 204351579 28772740 565854165 739715351 119590890 558514153 636474504 53251340 797011888 534549331 480740725 369813137 51424457 401259630 346310770 667636248 526398817 230378761 557508421 743080789 737939127 289273397 583444764 442271249 87301779 871798854 675241108 510952250 991210275 191647749 649080166 358441286 183209497 648952141 158081146 82630533 825447097 803545676 505758558 385285654 941869325 314057551 441392160 242359389 368591867 445166121 215841768 69560141 658368304 285129429 226570948 29769358 310360521 946943392 957785808 723023513 42355610 275692327 36194445 325650716 533176599 685720846 360035313 252651611 801504357 570620894 798114668 940496440 559805223 444692225 3602741 223305166 406562374 372884716 832941280 599159127 45701535 363670922 149163320 344360110 464035816 740930727 667227647 505292082 501851986 650356801 493144053 917023374 645580853 126493731 191323118 230900068 122562837 245875389 893945066 889383478 176997599 116264451 509558019 458578864 588951858 429580786 234243091 129846357 169561251 364918285 394903943 149568153 279009595 550832837 844771923 164327127 385270650 482824253 218602501 706881826 897385792 82049135 702811890 874005975 325665206 769930942 862307130 427221340 796053118 722894511 449192822 664255204 705021443 251662986 509032460 972297712 248814683 570383272 793677147 12640178 832602344 838383874 628540142 133217701 679920656 904006616 552454019 658263757 970569912 492602560 972643892 220803996 528516601 454903036 458876848 198475996 10876881 303291120 246632704 755272614 788831525 129511376 397357716 22838040 817011372 981517363 305204785 182435611 105953712 30209779 932169835 829827275 790751820 285992203 601963320 485777472 192515464 723222807 406755635 222012235 860660724 491303615 498922850 48451120 919972432 596812652 206051300 773467444 499518395 515172331 703654375 967294779 385521861 866659404 919755450 555800395 121803593 618472301 574300123 890310251 344526593 51052565 772045001 113486588 382760335 679245719 721238333 705073379 958009354 62782712 643127021 44863006 85202685 920613700 531346114 230602866 36280197 404336157 831722068 687041224 57787109 651564663 104899934 394545233 190393352 697549548 923206171 883625417 862883475 186532697 182923374 341047447 163137835 7331488 826120954 286933384 350412067 186149747 238598851 710348150 206060998 211881048 62264613 230863926 144525871 185626409 490340040 480711873 504173007 819541793 571875052 850393010 254160066 973417488 602603399 690540712 812644630 630464110 670998332 320881099 248049406 350922289 884451348 30526216 126758760 235232158 335097830 289216726 653516244 846053841 423528724 468306788 611620738 27936011 131322790 769270475 652562523 903356737 43669876 462829121 40159177 370695191 821904480 664566138 905451985 950987370 26252269 308305156 965255239 486726321 446165795 141763578 735221756 476888459 133436576 435433616 581414313 877114003 530579307 777444201 393847044 876390947 443109086 487723998 273155653 783877366 558081056 922537180 13421633 315094340 190183293 199873314 247829508 487227217 32161982 224556787 974994606 96017345 872956395 827375715 583294856 495487236 477872785 56256156 766356448 680216397 920886458 761304624 919400903 447553864 135004317 389231167 198327670 282526044 863879387 938822176 981694942 321135369 169827580 520170577 382112694 531484914 537020734 442047118 352070485 461315550 402073583 83401611 261773305 658381766 570613230 90571865 320846595 435037517 89716569 492018240 287084596 58557603 954488372 540890876 865989667 346231209 668616462 9519721 894893927 498828574 170352225 872131066 263733804 953673492 318274572 284965146 366104774 145808681 4256771 957928490 526204756 596420207 356279340 79336594 560461297 809009900 733004089 633113606 699838074 499916527 363237397 452433958 197520050 376252655 673003779 965646396 720429977 970905995 43218377 643782963 305505624 631457873 573793582 214332251 554926326 264656505 19002957 693980775 443794962 268062239 589217044 188784106 772432222 313257531 273888114 125235204 856769231 721739251 741695536 774788785 461328847 269778997 869125497 172956039 888765971 968808918 705059880 960086277 336847677 768065849 376612224 55966721 420380341 179228702 640846008 60687990 163863751 657955318 45385212 590575772 54895268 123481007 438294944 94965014 519004903 865933081 424323236 191331980 307529820 266979612 779149554 610322191 377516932 644353995 961031318 609556674 928071508 900242857 994444977 840637762 47891238 813096251 805269 709272940 829156170 732477480 271575213 335989075 525618192 505809189 244790261 839992090 210655056 112651295 104993279 640425754 923827651 520542492 568268413 315681140 604456490 278824976 755661186 996495833 465570709 273950890 971062639 722986219 843182735 826469689 376106172 440413668 223901557 328507226 522970605 528497243 909988781 417927322 959785483 576511132 408823547 823194531 353624638 109633457 64747725 362472987 497380458 228789035 859973816 552772729 582561050 105965059 461556322 559950998 623130765 535615620 21513208 835481304 599747950 995519103 763908522 970098808 766265146 739808722 892336510 31100966 513223938 407731781 927944791 78314753 838856399 263045282 863490450 304279322 168219875 556514298 298872358 301342695 671731451 971589779 927897875 465751690 301514529 342871543 335197773 351981647 943943000 904319134 569172209 878554433 402854098 814879029 746343820 74491367 388438509 175438458 654093601 589728076 992227734 932880420 721767723 125104915 180409867 228988470 984253752 687038150 438703474 394020924 978097409 42238603 70418039 814271832 278105521 273007980 231028415 911821628 774441380 372141089 62023506 516889477 646007871 130437334 428579283 86142160 405457089 404360924 119219198 861080108 127360553 719839842 277787241 949867328 526016895 631468260 25192984 714308398 117809876 922563852 16821073 59470728 27561620 784040071 69775845 611144520 440157207 882669565 546317040 757400279 779449180 606888309 376037893 900183589 123421666 307288171 610323851 378722346 818767769 378799937 554574280 453781250 302783237 498027342 754709310 917551014 877133329 38498994 438837690 134183431 464816276 139170483 682710015 755274822 718554970 356619216 147355225 915808460 597696927 852392927 914959387 346813994 252437238 753919219 916737830 733157011 274875316 442693628 407541244 365320445 255015352 619426977 403411830 519018313 256099240 985002957 948033036 98540477 848014879 211617701 751850776 826217804 157562062 756740796 712872370 423358142 645390555 511420218 528636060 525528940 916445283 612238719 91696830 557993561 354316144 962041343 613075682 657767509 175953790 333442252 331799978 486999919 930086279 404798352 484522994 807396457 319748088 130010726 170930890 711387277 735613832 724000168 40729470 252038585 289516954 714164772 43287783 835101798 889706739 83774562 13219125 931449980 640182497 230929549 812013988 850191564 385447780 139165871 374306180 299564636 912883767 670997969 301310443 92098366 34559256 898887406 717055271 482591832 958211783 516167218 367052625 178697321 755922779 122606976 683054565 244928205 371320850 925255627 777288721 681677001 576449205 438068304 351922916 146813188 544198868 682429981 21055088 432216907 470835133 430629939 591707366 252281327 415694951 174872908 677531679 260877345 407501987 620694799 768071084 947335073 812798809 471453818 509966162 438844243 583238372 855007796 525821769 132399162 786251266 926380510 205312616 782417028 370432321 35196920 402568999 988980421 202534737 996439757 323588357 314837138 408754415 525532338 813535000 842406260 720484373 297347503 575008282 651577727 518432075 499120056 354210506 329016010 725987882 267195531 310474981 807611985 809684174 35746273 706041403 356424420 587049592 260377565 865302711 806900088 125992863 534066064 84475314 952436119 290868296 854579110 743250286 35325463 431680867 238588346 602810900 987861565 708992628 97076467 43946401 257145872 439540736 737759642 167209034 960270737 452018486 121613907 104784424 732306251 527607307 194824225 956944024 281296222 883062342 976011099 21250908 529991516 110988481 324041667 693055884 598184014 13131172 833856462 380364420 693870003 411940411 220907445 218924811 801754384 471928977 414226396 743723855 186150472 801201198 307658374 432104932 176311807 248310697 651842 359414030 166525899 862707177 640834960 993146280 497839297 785658190 284105541 239591956 898364212 488575702 846434299 183738876 379415733 774030328 213574211 76177453 331838673 819169330 356084228 72196595 25164578 402085805 183163239 960852974 213093418 16217599 876443420 293139715 300551795 391321386 30626130 472596244 655555774 538862111 571745917 672526371 673665432 670051339 322729638 470713496 814525033 471576904 214730931 728742718 969869257 412352403 280289852 564448724 613934197 489278292 901703311 374730772 759543607 55755502 285597765 930284093 694227513 845758604 729322605 373151032 452171512 378768465 595646392 961366818 12419307 363554097 466285041 334497266 912774779 644066934 784276470 981950918 955143282 696685892 615745416 249190342 128065078 127344732 182654305 161422815 904958439 917325220 868661652 773764497 141668249 108014590 43434797 103015821 630527602 836299289 743949526 425370191 463212543 267272528 643061096 395865207 608444949 779753809 593075886 278090325 471348064 444406735 426183624 701802762 257322096 976374034 122207060 659710554 682424988 765361950 510022602 589378193 546821564 96728317 502954287 532789373 78694779 937308584 275077388 991202255 174301538 876491636 678090469 236070540 293214003 812897106 154921200 605564833 43805294 270625233 701460179 874613937 66893866 568941626 749874126 679907436 352328403 462861076 820599525 587584675 23498418 22686752 682053883 188542248 370178722 799361973 459477237 94611187 518602918 929573533 982118503 846169578 354699304 922229795 668197677 624246890 954927779 99915956 526444414 881511939 166559498 26827053 75176375 111985237 877349679 349209537 768448671 808643574 373101300 773740505 637296225 740958067 762136356 458042677 318836466 46135783 179755348 906905406 479384022 950409527 913225189 386426217 691605957 368314624 644339288 317981097 183085110 603531841 732198669 794740933 513276961 890895120 402221391 705552678 905289399 980809297 598244289 212514785 855184103 394741509 621469006 137893882 302543763 526320557 738071474 830216263 706225540 727222757 378440136 718667296 78495464 677217228 528504967 544051759 916210077 597465276 940591173 880719937 325291657 298066335 675501809 128309034 415963896 533807337 316260833 225885376 122345708 79676879 833007146 706688037 393647269 4089109 777619130 396982223 508745503 827925032 214493625 5387034 332127640 184859811 30715058 987587000 857961677 152582748 164952157 480645033 369597906 640254632 153600731 19454360 99576424 480407603 426831275 674305943 811579936 436324909 545736386 915265238 804305961 92821885 306621385 392470015 117916480 961392539 574977488 927785482 221313698 205303742 324908470 835513835 507558071 402535414 869104973 750775748 860671080 578334450 266083526 781517838 75033514 10878254 572712370 308054253 268490424 388555146 869033667 73823239 501926694 535565368 249277741 105157322 324288126 532691830 337698668 57062430 772240744 326179562 394304820 771083096 170463341 279689 312744609 104684917 282821124 289533495 92077337 42355857 273572339 510707089 948325345 108677612 513271259 131816970 932337031 395831096 893814535 525547909 925509215 873351487 950000401 336830795 894587399 527942099 994963964 199363733 807843326 165014291 484039280 822658807 961614807 731231504 597169478 185103372 297358621 801204789 698603836 830726157 67314561 370424359 803013508 237335646 702871202 873889701 266264566 436037553 212876674 922587767 906096913 635736032 799964324 359209255 486333380 77871792 239568767 824933564 629951892 264549071 477775432 997851817 530622607 941094896 492380059 769394522 780510536 371170718 374517281 345847696 638509576 181363742 56262663 587885115 22837573 75943669 703565335 72689358 307268727 88444548 869534090 36300136 301853098 955236414 692303902 438192210 672915751 253871490 448706942 206326847 321485331 999456845 210194515 719554156 999660816 243725326 73990214 554112953 975750935 270986387 594591792 618621210 400101806 202876799 177262356 520710498 73846846 405542437 961459214 838994479 312423583 333302399 484456440 380035101 307548813 459801643 819499765 234965483 421104829 850072031 618584252 832561830 641896847 376527114 176199560 12556528 775400730 620656933 496701385 310973852 633795418 714525746 449963420 188052816 43006127 632165691 233088844 198993487 270509397 772041914 335301087 271073102 286597533 834285765 390780865 569242630 179049572 983146143 697776857 351245418 809790316 757595809 20919165 545589105 427646817 172688532 787565431 920746876 579461105 515770802 649512011 414672897 264188739 879056481 925345389 611792218 632413489 233358680 343160230 923464453 122671211 574200848 757066445 657773460 940534385 856473951 237823850 969635704 973823593 36101462 559283107 769716563 525176198 794363734 93784080 28292555 325658904 282118217 741215516 579869574 792925145 491537924 281430136 264655980 650206721 180952322 930263783 370796832 52247111 685732916 89530204 538590416 493135705 749825725 600503968 175059630 628781511 692412546 819396837 593332607 519053942 991806818 18499840 372757146 470613875 522300622 873866679 13732293 148980841 930449131 475490175 767941416 535321682 696904405 920575386 607846128 884486707 391187822 374930229 889333220 362879700 115149007 227597132 743369851 786214868 993269897 790873551 273591025 844865990 932827159 158115594 104464209 333536088 757602822 333052214 753231098 412778483 773655013 543244489 371080587 16138858 615666763 313154263 616185260 864744132 27422468 592596294 188382680 931201506 779717981 704126994 987242655 781562258 244871616 146508402 731134024 842442949 909749120 935344128 154431089 914098157 568718880 664313552 26699772 49599917 344382236 580268509 245694888 212761805 89873447 264002330 812617935 720327319 242457814 740999380 677633353 663459760 349501417 830862058 669334401 810990345 333720700 259087632 323660079 663292597 999732335 929357396 299104574 530937966 796777354 945978167 921307962 653299286 82576979 458211449 103150021 503196588 332673025 166373374 350300752 94256441 850183391 190314080 161634412 300206200 342172599 538657741 643290246 671604815 346727678 214741646 851717571 796486124 383288962 606387087 790578980 389382625 358611739 639513819 927563966 521252208 678627440 755584073 258578221 43167392 142980673 239032870 72987211 344752486 385306321 615873802 206233759 980362484 646353284 158973287 555417173 205457926 345270640 892154371 327333858 381305255 928875922 910757362 51162447 315189283 525833127 32890196 929654449 62180019 691163372 957494197 934153795 336674734 332731222 548808978 88130176 827216604 286840234 221246091 453642504 360400296 162258638 649426091 87624758 840180977 792599968 617927561 870740565 945545927 125307453 458961494 434795322 812871426 329055935 44572531 503700645 819098527 314348571 744891299 382419801 381139960 590308665 159095287 999716092 519423470 561441352 948437643 609691535 636955884 520504593 162494370 148628888 839802632 309950205 621585351 374410167 796622572 492966330 715437810 443599631 289345187 491693064 171379714 171227331 667094861 628811598 832253315 662496099 298264608 994714753 462513075 928065573 644167898 532087017 771308675 59313862 698930444 917398445 15926006 202547947 736984331 694103153 193921222 541413148 855165527 779720742 846848024 982536967 921813036 376972188 161614532 876487559 579299050 555374082 41788927 940450935 611964851 264937183 846990415 735267058 826734113 819508972 500509809 503169750 2841655 868771640 858571991 642196114 33888844 622926932 653393357 504327261 192548436 293665555 540422274 284948171 208430446 651581425 749613779 155837518 11502819 851092093 134768388 432159635 449632145 690287126 543354944 467572810 676508840 58674647 789611029 496207327 952633933 874409444 810018227 423329492 712255985 787610216 145131656 713094143 695233243 963380939 793491814 12413117 688610721 371164448 42362765 910190829 118717094 955577209 508176518 921291243 932402890 101073644 277124758 475579078 247132358 826460938 742621144 909510735 929121345 415129664 572828397 424582462 797369736 400413556 599504203 463584301 801345350 216989370 645860445 693669669 548245904 773728137 77341329 680974904 344741510 985117954 228700917 646986475 363364188 220386533 365230401 537159780 638349924 69682572 529694549 706216121 47726373 464507467 410586396 378064627 499281411 148783072 303950765 371885946 843696372 294785421 190285074 942056114 266294958 971218844 623306522 518723197 509824540 923966144 871893626 910252466 956639276 359830964 552316771 98840044 496621415 537320585 73576791 309384147 811081187 706844258 386038544 135845192 913464749 813778988 329944052 489437896 521051324 446114568 767972580 115463244 736853215 968386082 264070441 466651816 664423353 666533379 492152031 704290521 426556869 787449168 806135922 161744452 157558635 646919322 721391263 630408239 408792762 953958530 153844815 738540615 971946213 720193801 847429811 338501570 763022405 75010972 286227679 155789891 507462201 249727229 766664593 386799236 222412136 159873747 820904618 93687826 538833356 192999568 92256234 477122494 468375465 74351119 683302321 421256843 125968998 740393891 419762057 951147984 890767207 336230852 111065137 680434662 21740926 243672879 370323481 133436012 610333298 991538623 918271661 341453817 243404580 433191885 232291039 72795081 998567925 571293849 520304098 126237297 803281709 807809487 597971413 491348534 951418030 330093877 544878156 224705057 963524177 344845111 116388314 702921488 789466782 103195356 466871838 334357502 802176883 969205144 210507162 114483932 550405899 735357341 845758673 500521628 586071776 279801899 644973995 613789445 850517495 591473877 958968138 465177207 516769835 295378448 529624823 708374832 262384399 369560057 47184350 60140220 762124395 459986790 246505019 556692077 158443956 391064915 571661706 852324416 517083047 752616163 569473233 62862453 736226659 61365459 714467420 942563168 966776205 138520057 245050422 9882409 108749379 858978420 578011327 167887032 807208711 400779409 215805557 454412756 733107989 965443620 735578769 719207038 690100499 248156183 812377434 26333300 411104081 89211975 159450909 44210883 82849668 526457946 720947688 673493100 236455186 135084506 370726271 368304224 168498173 956883812 419062290 523199586 690906586 610245279 618848003 892139663 536868272 187197078 833189771 448148865 415891835 798427020 917824717 780857235 936464468 413442335 831930302 394111563 499766428 792111041 128052597 412992405 861241770 264621227 793422505 162254688 215170913 687065373 36418456 830375967 773143351 277237154 515234980 723960632 334378748 248936622 741453617 935232234 112630763 377741580 22758321 180335808 158716292 833141837 929784654 488959426 552965004 965222546 121492859 336350057 401841338 515770351 242330180 724765675 880154406 803364024 953614179 87116538 804761624 680461549 398316800 228702655 719506664 162338038 105982534 616351567 909181928 234964099 988508478 82479368 69838428 700034026 870218932 855296086 363054188 237296847 866630281 811455801 222516245 267317382 48287218 11864237 360403857 301670012 886931323 913688834 331110106 592367321 388602882 839282613 317385947 942403788 73111911 597997467 603064996 591942675 50904075 147413488 90337810 435884562 226451345 378368472 561841440 663799430 542607356 483179180 196447946 612851169 836630331 317122670 244691996 298083163 993223286 123083053 941878803 517748865 378456753 467396747 679478707 980536499 796951541 297002559 283089911 667806299 895159324 314937408 409194352 453352012 977605983 732889523 9713892 414610227 683666441 24021074 601006720 946208324 308023549 856350063 222108262 589394387 867348023 224608811 599510476 103953 874839831 446995425 194860245 749272565 31926337 915041646 334348454 872820557 785552530 263975688 411506554 72931127 967738574 334449453 557581801 898879124 315730392 45232335 24829312 155744655 819222433 746180464 469979642 820364960 625063467 430802342 573467432 276370806 95093815 508462417 900189292 854430763 608470368 675354190 366523015 235425213 66483859 454309319 350710000 829372445 966249351 179277686 476264516 176931984 769225720 646932872 460156632 396368442 108117068 747593758 239089389 17786752 580995740 997834494 541954048 124522798 271577982 590431422 373341947 790869959 968712281 157324554 512967560 395621864 450152713 392451622 949436549 567023789 434993954 623633495 592809892 306973390 608330352 213378281 537768093 553317598 187382012 593156088 103881449 582461689 23638801 13923670 71513206 560927008 373187062 486227932 555303113 961290059 501690986 452907360 889125237 327171250 745338347 76234446 786772418 150729814 710602892 571016572 184191818 124213527 346160635 696320580 322905498 610489200 810033346 84799099 303673790 694461548 315509508 641489850 692135812 595703522 521798628 581742282 912339003 851083910 408725156 929781261 371354929 666047436 441572620 94866795 208383559 63443499 252535939 621789317 775820054 448263254 11386323 585780542 800832474 5615816 400083127 545825200 311124097 612821161 231933898 109666818 465067290 103136969 244386667 82477517 779805981 984957731 163368328 8681252 775772675 238858206 92037147 98336997 247377913 163739923 547139687 120111430 395251995 886275064 817428244 890221634 12004722 839951048 41915203 146837460 135678043 706163303 588651747 940866737 828443523 459500972 178410783 335730099 708528597 344361095 929055719 108149104 704447690 785515674 298345265 32765368 182607244 472786257 422267439 39702662 100175560 279145533 525768977 265554034 998439740 701275411 206168886 238032158 602658853 873959753 165209830 544739839 788468826 711126822 652284446 523852012 192249639 74123157 489592092 91763169 432026760 70835410 291449586 736641415 476346824 18313563 740052448 138560265 235739673 907055123 228886479 435594660 648559427 307985300 672191356 641736332 167940524 139146256 423470751 489603155 768980900 466061382 62228560 812072767 178805675 32613856 754066854 645521350 790613144 134898888 537642877 177332628 405753121 351939682 637413770 491500346 691841655 94330230 591506747 84474248 646272132 981103261 395602582 587883652 528256803 290024614 838626611 10840758 89196829 399888868 754819826 86214449 104537832 2607194 576420358 917379176 264597881 883419530 434202565 573492891 484184510 828130187 479423193 638195251 954173089 319752085 818222640 274256979 508475504 893717178 550115146 956044580 194434702 855053077 663954007 812921751 651950191 118067432 471690179 182299087 981981467 408795119 807254465 62934542 986244702 65089137 393251846 453632942 896124854 748168594 192176629 27645002 370805543 390466338 830258183 653808480 58447311 936972997 125117634 288937799 816032084 448362835 335800557 61647598 946390701 675509578 952710355 917513987 671147351 677900137 315513005 635743212 268550303 956416408 597262400 378712046 439643929 610050078 586646022 113802366 250194313 630819364 621228687 994150400 438712117 104680384 318425634 487145353 491753674 725718325 254940233 169098467 959126932 649400761 414286898 966049724 762174271 771542624 121394379 754286195 411741409 415911009 836379028 297167352 659122867 755784279 302943179 82995600 633415470 940764715 29366670 166513808 601405433 425845297 231746225 841688071 103559031 441180415 897137410 89633574 739964701 455022279 171854055 169567152 857607059 465890012 752126182 118914953 514194227 123819832 209358908 581460231 604387381 846749863 93112791 594838621 810776482 654045291 117073904 181441197 810265414 916840372 397647725 206823057 305918690 736321678 964917551 100923119 616738416 646075896 119659368 120791655 195415073 969918612 554359505 670923463 238877916 238346787 512640868 573015571 911336420 610657403 618528023 909168176 624126568 872255933 453374957 103957866 398532260 977435747 806014822 651580950 158320737 537604410 107920621 891618052 75993153 847632814 248052227 110586366 593692800 454656523 440577246 499796562 497148015 377688213 61606639 986412416 602971649 865521228 696243103 208880238 184156305 819087837 8554561 291378684 5189265 305816934 929257686 598877452 739542942 123748141 403922907 948018502 926826755 761311531 954885030 446203816 173068119 53908302 405428240 843149900 907821931 134299577 976547166 7940246 624936359 64475287 938022610 733211772 651314266 751445536 151512062 926428304 709172832 169335022 545002412 255099855 354241342 751138269 905259900 166723668 292403701 293462019 757210752 237209148 700042316 72060102 927066029 961664897 201732971 499202166 824602428 99482089 72790715 39819317 756935931 3053510 388275392 746019721 135562759 776874636 309795867 594595796 120253389 468179373 713875099 959789590 139719647 842791144 160061813 449651842 427553325 896996836 161290832 744736540 462671769 60410546 699120265 65117696 509163142 927163471 924124453 216295929 534445334 518312361 638402924 609895339 145786795 905022736 672674799 82753850 318007059 235858024 771707199 675850957 881073033 501549086 389359052 752532362 542086724 681507455 871643345 493840272 425513351 242415732 274325577 980457468 60816446 462864628 404079417 458742186 839967862 514426434 547509193 412041595 208485722 759219802 851029316 983957063 879930128 723012576 635348043 193877408 918239970 59987278 247036212 576622433 279503745 741913985 296332722 95485625 690199263 328918198 42097791 165601886 323096516 967437877 130879679 210159045 461015618 833907444 994866152 50272379 847550625 279215389 489549996 890570497 796440565 343024321 915072764 950171408 816114182 200014223 310527354 706597117 20499776 543691793 533227327 987180601 667084473 785128352 553730847 479125960 787729946 536613390 63894075 420717355 318303043 21427620 544720648 43983284 439013610 51110222 134862333 967259798 356443210 278314933 953807406 174187578 534550623 373692878 897555366 146143368 671743718 853476377 523205092 224673836 451382371 157839415 841064693 320990236 125491870 928958090 302331362 315450661 500590467 525685837 289778560 752763402 437976019 535412473 901494270 209103522 255861207 172158968 10894518 513255593 574391646 366222914 275071955 503969568 595527302 863364281 247132053 205760023 271153908 297586630 5098684 203650894 708711181 144717824 217405400 982883776 853620613 906748632 158272047 134601388 683057221 779651749 699148997 343147972 277473558 881865199 150337378 799383528 697850787 450584884 687199443 547827882 55224239 469161540 155461482 272752985 697854053 597456178 280483849 782947734 204226882 51396481 231741510 812452535 573039474 13317422 30654354 679373469 576506339 535042103 717362723 386965481 901623680 4781232 516442012 154217674 521617821 91611354 70277695 195552866 312657853 743236029 670768672 866396935 678040285 233994646 414143739 669572358 896030656 355028305 382651478 442174680 177059501 393746003 196118077 896715590 993562049 399473898 560699359 879717026 710951961 419338182 427494380 658201498 136158870 734365805 931280198 518395052 424907476 543822008 315302388 750078166 490108190 78430171 760462850 370594086 966627838 200901014 909765728 358413665 857698496 427572031 121636984 126244901 556918533 493873315 297692116 637860023 501914385 27070468 777535545 569762780 973805191 964813860 619092234 475696348 592582303 685371635 251019563 696198290 843395100 665469826 941116627 324439837 871166786 82541003 985939160 667606038 132480593 879608884 395103777 100963127 119234040 564342016 642284723 585861126 593031510 331950838 116999669 13317680 175403 323168710 25899048 553295961 322358377 310398676 627082544 481651662 37796508 623850865 372479818 651906853 921516637 770367933 616037313 241777179 270304335 819853482 309462678 675305251 45995399 364154181 537002884 89613252 833669357 139416718 148883635 774522012 668459655 30283458 723612707 930757969 759376928 170222636 370013418 40221757 298461687 386021610 379911106 965708876 634314852 44135862 774370591 440052918 729588007 874709999 22163703 193010993 781072224 133052527 304200125 255673314 906588282 342175625 878993037 681379580 291199583 153514364 453744494 338945114 774054742 516586257 355794244 947820551 799507463 7314087 177987835 627266745 155532476 956466010 377070005 249499874 794255660 954832466 388512602 828880647 243288462 756197967 669673252 979517536 227550682 219154705 279336767 42011379 470069428 971002599 182935543 565902589 751551146 864474746 42111404 753802597 231611039 520367291 777523546 225060312 472797537 536445306 76132327 582075594 926235826 846153674 858032867 60728374 461734071 589298115 505440131 903497215 47034947 868976729 531387153 236699354 464027803 640405373 430168671 418003308 129496290 566771267 220762474 460095232 502437801 219014968 845656624 948210626 658710554 602399095 74688777 394926115 907038272 726249865 352892321 501819731 430918493 252247987 403316783 782127121 450565801 216178834 606308412 820249540 922803580 628194841 741447143 665084480 423456285 749767763 835697734 96672812 669316786 74535860 187411567 730682124 240282674 931952693 290557506 919328772 216263769 459015809 95739607 519533193 463028151 125967646 516540964 744218428 508146786 465781982 910347826 230030461 824075647 828569609 520834190 12618005 574204380 962824722 770045995 348374329 453966772 944418659 345595930 817528351 814577707 177602468 136487289 304510925 989021319 508291978 914281270 824943070 735376721 942230193 464500103 275633893 282057520 140047627 142569595 922867463 330005317 441628980 770939948 470880302 675667568 228805874 791366761 155198681 438486268 415419421 342584312 879067061 77128458 518055004 614964179 761223827 477451152 926344938 944493472 122375340 686802767 937797644 991433969 306646940 657655081 11576253 639944505 852979652 991465671 160384076 797779293 626844241 834036166 442447848 253658390 487778463 740838600 302089014 641968122 263543650 709688156 101884905 450465257 360674636 680617120 26673110 257061246 945450892 123935651 760510688 284716139 718278306 389383697 992884547 380279236 202019801 639568593 118563935 338413249 977810423 346348498 586875515 832185055 278233312 534102152 589262063 287220615 725633969 752698985 795177365 943042199 742548851 783422974 574482110 95762613 718222829 893655786 660791395 285488577 557530719 451469806 306622217 817772689 695321 773249110 50697503 674272399 371362406 336184733 123836144 975353716 11343045 339611595 849358319 949530617 734283520 540057243 94641892 153976048 624628253 56835610 1505744 142479600 404492457 504958247 998276896 129160370 925321833 304753141 545463750 823170161 884913084 937277411 416864423 830048329 104024471 267120743 750358493 861624874 475138382 163778358 673078038 431081178 266589987 138801412 717728457 591723586 4277876 766171304 826595560 537152729 379281346 151424597 350167534 290258390 170263976 862905748 698584766 226077819 485239831 546940403 306243524 142556610 664285108 160953343 210256048 145209447 167737762 885564066 591899853 55726079 974598666 460886245 909812194 437941275 128580160 532893125 35081873 727076460 432725864 130917458 381316821 248817858 523425164 963833254 798264423 906485678 528712121 702676291 63416452 184667539 18763484 627484870 732653289 155218198 96681608 520319696 602017157 861512957 623350234 95488972 79650207 119007256 735260190 892320517 304313686 194388377 221691976 73360557 513188188 391061473 984491925 550358152 621920232 838241671 225103653 391370767 629301694 834824998 126508253 236995429 657375819 476751912 381349950 768163747 848066408 638139762 232302230 979691410 767815875 423461220 356126667 143827459 305175223 908956841 226486195 957027294 910455878 25787955 257294838 948289803 688306973 38297334 44966447 661097731 113106748 833825942 300609253 743345660 353326889 379470136 844360483 195708491 909494665 189732009 42656617 519654147 901211542 872105997 43685905 167136576 14337546 952730948 46339326 725489144 917325373 989585560 286942218 931632642 986577535 976223626 121084610 494383729 505019073 734470813 291782054 843989161 607814408 148570133 820247324 678521952 339865795 351667404 988848101 377961617 599860150 900521415 519333092 103862687 492483812 16414234 219213987 849001065 993548583 780920059 543449462 659044587 968402979 115682813 110184923 66303777 705276116 636457063 789472433 35150914 737475156 811468210 341770406 135163102 811356827 595258047 388105309 273027793 657923275 675348580 386252838 659536456 461336210 183681313 981481801 402594136 850073793 556723525 751873804 341517220 650654071 453253721 774149311 266300721 336040934 712289867 254952228 955483281 899997652 555716298 489923233 970320842 846008154 508214210 300322094 212969248 191022086 662172271 681228529 931827821 39358103 190802196 515881613 255883793 804964304 307309279 836075487 644202497 560414646 951947621 834663613 773600034 89340036 353468326 462002973 952524150 421997372 45701069 666769531 26800637 409606150 462390437 132142459 523997151 22121212 261173462 434020588 53284982 805266814 858893671 170216660 530212116 875218212 853495797 973792712 366278895 487028328 399060792 269096734 950076442 95131893 721889265 1471072 523033900 735491272 445781904 305831062 795130255 303736856 676780201 792349164 509160748 227347294 328875693 512604206 634625282 209966431 143268347 522815634 653414790 538968235 540981909 958727901 63637278 591071088 954211703 336593755 643729144 315141585 998656665 345834664 41636560 136598864 444618128 780574939 964739470 262915973 116934059 362549198 661258706 743961919 788308905 897872495 841774652 17363516 582533801 58678074 90978866 43581823 82550574 278611318 113225150 544773040 609789638 235492496 790452597 257022523 798334322 342281129 346767987 609560951 77508183 13999239 515638704 722710568 366299198 167504746 837715475 65560602 100632148 972682937 91257829 338659932 427270097 395925797 665138011 795906666 328758803 521398035 882169427 976662961 282392500 525551937 990164114 35266885 362220245 198204605 17479076 344291610 512126833 437552793 72491975 648320971 244108494 154725495 299327243 398993281 959196936 468965011 756591473 188117880 936611856 832318373 756934766 259426157 270348558 547731068 711508324 43255267 609145479 30777518 124039761 157284991 280847657 958792443 949057074 310928384 519852551 991045218 241495660 877070431 686317357 289568303 953567898 741985974 155267920 17310052 754063657 405904327 455199421 590281732 108435078 181615200 520300213 506046846 985081090 914358901 288126982 67043555 256135306 842342716 155606569 224858259 387697918 325539592 591284936 74491317 668144229 790800369 856328806 730317139 393495197 858666916 878223820 137592111 636055898 509934801 279986481 679055766 377922202 402044185 271412807 443275970 524425001 6881763 862395425 878045333 122768548 679671063 921711998 829797687 474416986 932879308 421402875 797558256 372350923 785216913 977405125 535436483 495575026 982323798 332196438 194941396 55450566 245891223 420123381 828708911 532298476 64500621 839379806 55577457 894054519 749504498 644596686 902173646 361734926 337176159 125370599 950394459 885696530 626314261 12391179 863384669 910757610 146303560 610776005 171287418 235878222 143189916 484040453 445254514 552261338 616081246 255369073 436123009 400386344 850920632 337608804 70141284 879061837 471575832 634883481 733284971 940427530 12044384 314158739 306920155 310498565 863517623 244535804 35677465 922687848 413990146 455003797 919517643 885924093 393137356 566168890 408590563 818744636 120077522 429349474 10024234 962994306 177902112 309182595 213322202 100824511 299142881 344781153 289794543 831705769 420382573 804368645 497257503 516951360 936627434 314002870 148633324 697565917 335659747 969644947 919903386 975577829 974278960 942015101 957975493 233511335 501528962 87716387 58793976 370483634 907833866 610592512 744028792 816920686 976575379 251115958 274038875 869059642 318788683 116805793 944681102 751461192 671454381 98453670 507316772 403630500 530930613 297666082 431205751 27629374 321996337 43988299 500866772 784919916 621916894 720569534 269772077 890446425 226415159 132161023 405738722 700238466 455222742 477029154 269398706 697182336 839659795 827494597 91476770 472769278 790997691 165676772 998016377 267632546 423426954 881747565 742072209 650967228 288483319 887354018 866540788 262473685 546092508 193395216 738071135 694517864 649233111 149381844 954024095 795538785 350993092 475382656 627095165 150702899 93525043 853232179 209091804 711323912 360451661 81538210 147702088 167062216 916272500 399397384 606930765 77324851 761758314 618132945 935072374 560955039 574245389 788885214 196289759 713355190 770216697 433918865 820894160 787117291 68931481 313569330 850109019 448261580 447709199 682013511 750369494 839560393 64885995 789751039 702383385 112514608 629640262 407708099 831079846 956792450 379643763 146882853 623040420 682883786 584571080 112226386 716409235 607647604 735686611 313323021 809856122 261374120 458962010 291495386 271921089 518745848 68554505 26993501 982414411 82425457 17996790 641951513 899831402 238233965 127225973 386930685 42841143 27294933 929282991 695921848 465837787 750219111 177460763 352227734 605278498 423095807 10698108 984898669 986359258 430937874 115125560 67607617 856021393 66790749 259973123 946751996 667068094 229642488 574278053 757198572 203692491 52303125 796363200 671584168 461014790 919852993 754405706 429145260 5912086 258689036 54160583 389241984 598948515 727376114 512229484 280345881 920380881 422247404 891300490 759377206 967267910 340725253 637657048 463585300 152165966 685024469 115963473 481366364 711603417 913624466 912033429 922616862 41881164 371468197 143523903 97951959 78110938 2575130 822688713 236080696 260945885 702066133 357848336 916368268 372520690 138198362 449368933 513603845 47130961 832901782 613220673 430467734 480945655 166648640 439421613 700502337 832868053 410677824 666225174 147170471 63753825 166873392 176987746 440785800 562476684 246328889 320626347 305269483 936631470 24590818 663722726 583113362 361168361 943704074 848119997 990615726 508938926 740430051 396780244 189959857 801625603 680575618 153532565 35783642 97540085 735446511 386640204 348376130 810230710 880664550 430605274 678309782 853246038 944108727 490845733 464468740 462931193 925462516 364636407 958295470 241687588 696685524 169282754 941110485 219189635 976306543 846265781 141464916 84917764 848561416 750667035 555656275 406005739 75032033 9113272 645002126 71658619 28325062 447504627 727211937 239283392 781830094 656202263 326045485 707464376 726542519 94496738 904090456 334181339 202227138 385843577 78353808 679858759 141427808 82694211 441643082 672015081 447935171 828745902 998801590 880185616 706016281 3835386 551861031 938400384 525497797 208187055 604384891 122049803 683569746 880823396 808818609 90733882 415515321 572541799 802403496 615996733 722298898 82988639 152969121 341428139 816463134 953266570 987316936 797688927 800795918 168879532 400962907 783571562 424436928 164774880 649606297 112957100 173145220 739622005 353130039 661720879 385610445 394622865 124368871 843859614 849883356 667808369 934305587 511009154 668459218 79923429 68879050 210090900 297238513 993543129 491303553 664373604 830656673 9891315 219955159 837030747 663839162 542940212 980635190 1325909 885579669 944372801 368320691 330550890 35885233 923911113 196443759 795830759 876199438 308386886 17430749 610362965 188329442 732474587 360960865 266563104 944096985 587955746 445026659 209743702 131635241 222624737 666109120 183827055 426208199 134242196 194712319 957299013 227476808 138535765 27595522 74128165 996863726 739105620 881113397 682474884 805975664 454520098 21485970 833255940 535677328 153652050 717272458 353792185 937734904 220393230 317106224 646578782 508360853 598951374 964127446 603767679 640484140 888638458 898991924 174947292 755428355 448076029 870692777 705671460 60658946 512643477 369309060 720072313 501820808 783003890 16694327 527587897 32842681 966649015 267390813 545477352 68558336 437766750 892466971 932749638 682523771 955421709 801326707 381583627 530801994 98746345 861262613 352846354 420644344 197763000 224974076 933463452 865137535 532576670 59468166 619559491 742828763 401864178 79039689 766008991 920093070 847025025 260234514 484522423 696778621 243057573 541013089 56192986 15510892 972464060 709617664 26150364 658495790 425653083 39040061 456622031 836051294 869460220 828711123 408450992 907638327 845776043 670680094 978178540 172704061 77138836 832383964 869025705 705824254 132118172 379027222 239990745 866431265 789981462 562051259 229942144 179681703 446195606 109160126 370827189 138424545 668546353 526244287 874854108 95279455 301092726 961748797 596379696 993000102 21287963 130430006 624175708 167734186 629749561 886716084 391819874 742705406 343075724 992506679 233347330 96440076 269277966 910735775 238075745 454317913 635601344 938204882 746421184 94340455 987848651 642649925 858537981 344683384 699520753 802858931 569884882 347540083 909275775 687352988 109084955 386513253 118006178 680379108 463081989 939861621 211620379 178974862 855640948 490353979 84358268 733803349 673486445 754644711 762491505 870568886 416474501 821596804 850409762 359181847 996698718 458326212 641690303 500089167 50352704 701302277 722395741 973823845 167323520 787891380 399839460 317107634 40556403 471915089 849906684 302475491 35125754 105397415 196191554 30311063 889050253 341876167 899324004 46499872 677115146 565775940 661873591 492765171 993049559 319333648 925334463 959570601 573908882 52835551 186035038 754228507 516870841 916601979 639242824 584930712 690050546 182962282 903006097 826387272 420077318 4806723 293573358 141284496 521825983 507223230 807184485 679745512 586722793 162345172 746968183 441373766 419020293 304854656 694478230 397908767 416307388 892526936 634045658 519281511 93685097 840105751 68091600 448206562 262297810 657002114 207832016 319282744 724912529 622491170 224352173 673938350 131833701 864031809 105255710 387020857 714375424 570106982 262360930 143945179 926367657 220519074 710396736 819363263 756472282 904146696 563025374 889964175 253545390 504552661 338038395 408571437 359704513 17318114 411037423 398150312 611784158 79196272 559254764 263510215 672614201 134777857 447804057 621131416 741749387 136081992 808631979 672551974 435572943 383592315 642016160 637927940 47801115 286866114 386781669 291767571 692114082 306150483 346592355 63910819 566269886 460071983 69843634 646350592 83328914 660434386 848441770 210828076 282218467 790706480 574920275 791087316 827222737 836587363 681848373 277799158 931974078 341197420 25787989 440026875 229600078 281558547 463502369 249315590 682825911 937943463 435088293 151533082 177376253 868155484 326002899 704472578 140701285 534163818 902580742 613954815 11966276 382157154 110193278 430157957 351238386 125404119 148632319 851861271 342214620 94239112 689411181 216721420 752564331 555394617 108287843 197632290 866499412 850240791 9832482 729840491 786360031 340020083 567574283 390374733 244485352 8104038 658141267 151233606 12153129 101318318 267287156 883886749 125825507 922513215 708488375 192045309 506599681 609063261 635342638 455741823 423562471 210610187 160683409 887266197 847638117 732505619 608278655 22807910 69494131 866342379 327281067 743319765 405791853 907157691 48766445 438799644 235023325 267806128 240783150 261845158 860112179 179485298 124134793 302295605 696966302 75558851 552738625 689117297 405295553 188577087 918320722 565337689 614337071 530201827 673348725 642927856 35303673 37428397 988930775 304519871 89797737 557697918 304709277 217581264 193722145 380792464 424965465 113565795 337197406 182094707 828254371 290528564 478343157 990770539 68666632 529451372 747382326 422705557 848604761 833203908 978120409 835404606 180703658 307377971 30030586 545154628 432257864 469567539 811138706 874436404 11261344 245420841 289629335 179063763 712624840 72992003 752946702 113785071 472868041 256215133 405076466 597183753 642249283 525136592 713770379 740551960 590667620 619973121 280179898 320302523 153621042 630097798 611663063 757333641 798458013 786416849 126202176 800543413 977947746 262024780 666174409 788743025 815314528 10445029 984925660 859687550 881180056 154050755 552526366 139022191 218148188 495579321 34820882 660813339 110603775 649149440 51804574 285104123 166394838 712873297 658265830 900237 643413998 171726371 604556942 623373782 609415124 413130144 894364993 497072354 376692191 341576547 942595024 80539590 488207536 853891430 683813556 873311716 624163748 310043546 161321027 829744686 951851582 286745451 995755824 647216810 364349617 242336431 406140850 854986909 502918464 413548997 537401115 196439162 633316744 924051734 310091057 405870077 821644329 889177335 683644726 37847868 525922977 3462846 951987721 76957913 500371390 434131539 96654106 791973645 46739950 362360562 352214915 59815659 14788006 978957767 449832018 231909640 232054308 637437573 489976748 372115669 630446636 278410176 929139782 326704698 316992671 332036133 86450673 297479150 520285766 301501319 8815959 818458340 45687243 689261544 791814117 914889390 491755266 443520734 676904478 765815596 982247253 668524480 872002449 205899914 679687012 521115678 14873626 865416933 180807783 895322896 96243991 77017213 835990545 9942 133269826 923387255 558283879 469008122 595250311 244472480 723314382 699148775 847395134 913307958 671587457 960296700 927806545 863909934 482034187 586496043 541763433 378799691 437746240 173477415 718412036 717460332 302144460 826323366 24080615 245911325 608272303 917907873 418942134 390944736 364043891 33735922 76872408 522420646 993110064 545676026 25435991 303328330 463688004 848470980 660931230 1882955 505534470 166841198 686547299 50779937 501447384 582275080 489696347 720084337 18840922 326900100 357214601 489227664 598852936 536924998 466222554 237095545 970273817 980241965 10395028 283479752 321645151 161797160 452707983 471134716 663727275 349830270 407784113 294801509 316847423 42276971 293085096 978250808 818528794 763377447 346588114 659292672 608918755 348184012 255321268 923143811 527061323 281251643 270860728 102840341 991033608 243261040 612257144 377768912 242384789 130762503 648213047 890401548 9604178 914690990 6393233 678262606 851525133 370550237 103734962 326604939 280108510 862976599 936134181 439275153 227482526 139010081 984855712 391939595 819445996 328137880 820860616 989063119 135853472 673351197 683188673 655355407 363284643 175388933 194110102 976928821 542863967 668398952 214275679 523638362 320870419 352330929 762595237 242275735 486896548 731354295 781643660 199918364 802831325 456735017 227403616 136678158 277007403 43280846 497255191 372346689 699114297 998114242 705579812 906291358 734395237 566604734 218219245 490444212 58907638 158373982 439994969 980976357 370800290 457709192 129673111 749306480 936895352 827277791 199314917 833351505 539411473 178217988 304996013 795598161 541917484 846256132 51515594 145003700 537990836 239244902 693367945 692121500 149863184 374997583 874225479 717358109 932789142 925794461 814852066 806238944 513335645 737502539 45547796 20199507 342164410 105283875 895502707 688351217 561092503 580870258 396079428 589953164 380276548 8254180 91120783 210784963 887747999 981237452 204855114 262425280 616112826 825800203 745878220 652717258 45902466 102096058 172211994 63321619 834153423 605973478 50358151 182929478 886402007 257497943 474031230 492203592 520476829 240356185 511030316 884994439 578534616 949601917 54908503 421713799 87094789 911203732 332067763 486537687 448896837 360666449 36882484 296111195 408624815 537910751 454125309 924537262 399307213 731635277 269670142 729779772 567637949 75665620 727016309 962361279 570834123 185543330 350788158 178875896 28601376 840290469 172633815 328021908 27308694 777073370 870918141 192195723 899422472 819598133 257766003 110639760 522712693 64108532 398817818 334029090 997475514 309847352 823833934 544106934 797793860 750174792 825120778 531775462 653815125 789754053 843354242 266589608 888155519 716090847 417123805 124800793 480228152 56963494 767189376 105467271 368329829 950816331 259682409 29225166 693127007 248696575 879124758 57471794 752592793 943734985 274307 37189582 470529789 782438319 552317252 559895336 305111754 938014577 165867849 882311478 195579666 277309300 283475154 502944281 510144369 304267768 2199580 280852854 914448727 455742260 989913776 11435142 782240468 790038276 291178251 700764432 475432817 623016015 815436027 564044957 611435394 324734500 449125461 792495262 974977566 796347618 964921082 422209415 681879423 919324368 571130183 29983202 6433081 423824949 943193138 80346619 795780981 568070150 10148871 820724892 395924770 400613717 593558787 529240159 760993890 250922791 764603355 305791540 622489650 490281820 967299477 836847523 725792614 641345293 689550506 383884096 450019027 43648332 718601626 190739594 408442852 271461115 765472007 742713913 905581901 231241272 214760741 671128658 518785121 493720292 340719297 409175521 208339615 861628002 906035370 547646378 577817108 116075467 491071910 441468500 568978366 188259549 911672176 51074994 629979790 652588572 664784386 490120691 959033952 413737953 160917274 726965126 294003832 778360825 6340683 639202089 751072297 257540627 661170504 913387670 623745057 519473056 421238111 641051797 558309993 544596860 153584914 309596199 258168707 83776900 662777134 131739395 884795542 809325307 228204191 801669881 664868981 312612882 629894218 656911718 554747926 278581662 772233369 480082489 704230431 972325288 508901588 267407151 136417253 779611175 686322387 872233850 16573276 799736216 570849244 738363048 220547885 331041192 793372776 638607521 699874248 958499434 172486028 79711101 80883848 205550932 819760250 3363928 2953651 30004261 446204286 124647017 752684872 927624794 887912182 383586674 398200799 238017914 509451149 777223012 869153702 474523814 318966991 739725933 648351662 548187564 721302164 788979024 26040379 987505759 886081094 507152811 456574569 513423242 54526763 798597718 939969104 879208097 538371238 618257074 293298323 362479999 804409106 207635263 275267295 218119622 532248713 895129658 83838219 137223800 139092084 459357100 356392103 88006480 907505680 688659803 98189999 837079059 515225385 84615209 601089528 57697555 264020128 911899036 801542451 134611277 479401906 830426624 406032341 689746313 514327598 273950560 56074879 2959045 617169658 834396278 284804131 413962928 251353438 351908415 171278722 26871754 881146974 980552571 816505804 353630517 985482533 812243522 133017007 998060527 377536026 81653349 328535327 367437780 525309757 224560676 76679978 32227222 78536700 75998369 150213312 72370260 587551037 101376976 538986018 345374891 819292056 367694413 885003234 26704490 75946542 944755117 128565673 779630139 958889845 753479920 914752430 289110324 252642802 48464903 490672046 984144549 694032953 118175970 757033601 373668679 520235035 30148730 569841853 674350541 679417176 305296479 125101896 329607793 657816775 409002409 591664028 156182944 341560196 569296495 714865101 965623916 366605984 716566953 589238478 864695557 302133301 203963518 618558196 701188245 951278492 265895431 157355896 940383974 988206108 236394989 552450573 985522918 972510915 901281935 721906749 2827205 427612727 20273402 201962460 540072504 12412875 274229257 408037504 109433598 312035252 807688500 982247841 69691907 917644917 384659325 962738791 545181885 790813887 399878802 506417770 388137406 994858044 783987477 334064195 211356494 254364136 341968952 74575637 595541780 4207807 922762451 46106992 996740171 409603882 503200322 349753299 213041126 53250374 941505200 327957406 34196615 737025569 945801140 927846515 963422566 781073309 966187904 433254741 812124653 633742658 735909850 514813666 585359033 646634511 928666969 961153603 513377314 31930077 498840491 110054225 828989394 392514519 898231885 564193237 594977257 753494316 366720158 480911345 594577481 594307146 467038975 645306545 504903352 407294136 776829073 192602427 645269227 486797881 324206735 452259213 354307558 374497034 151178411 576709791 339615365 430585033 276589077 111006866 883417543 162917489 199894297 634998028 619716731 925796918 272302973 832556558 446733395 489812878 187522720 317511172 550113112 161384975 407109254 975295511 773827461 597028358 322073526 30578371 899891545 859141952 427461591 438225540 957710361 822783981 195897351 941566123 868918239 374304466 639365716 312556380 692113469 642990079 502801539 484352810 583437817 982116197 71896497 165081611 382752844 828575937 280734578 362610410 48765211 230340477 361026091 365769896 123745485 21622334 84721637 922706804 198073807 994236927 115052861 940732670 459298297 417012308 366480495 486261134 908384696 782391330 69881404 930451953 12567895 782895711 390997718 28893732 104799585 603565893 833655891 419935834 428328431 880874782 579899221 303101452 209711110 955673630 55397013 24988100 960337749 289269140 893717263 360053808 760353089 869745214 31089672 170041762 402410934 689996723 923300208 914655584 726964142 215461141 711391610 903668162 351780751 465629638 55170201 136138562 59056138 770857265 206838320 230194999 93245679 391209234 235661588 685044081 398161050 492749580 69327204 117941030 533654073 437329783 309337354 598291311 294227411 4933055 922090560 243673298 986580235 973425062 38961099 263310437 530672221 424089177 249403837 773102022 201693569 540367679 224206098 385986448 470071607 929144279 318226036 208284034 977272544 456156175 36171990 493558122 202048174 429048917 528238924 372194269 653847240 200835416 649092407 74656095 137238878 252438296 61503048 777279960 689152896 265425829 871958350 530008581 123431551 7125368 365604697 553206019 227495348 130018128 288039736 476752829 594913643 134744887 339357573 456581920 912083601 582894854 558189123 180931039 765668860 371650182 209191530 676598779 450262399 338542318 892741568 292965019 302013463 894012358 838084911 565281545 933287493 87967333 495855928 794750118 322729091 344079031 139194283 51999309 880467562 279118640 575103824 406403187 265738851 803474940 8971847 598927990 754896394 945593889 691125885 455640379 185939702 89389050 324053521 851728895 930100586 905135059 95881129 306330696 261384072 267835399 238580427 595172851 108528638 63008622 43132593 881145135 796288304 977639946 1575729 524351940 297808607 831573739 276195403 931638842 625985241 990528066 267562922 231717450 206549768 171991455 529353988 585378436 204785090 744856634 474601948 867090713 689141557 972508229 561347101 105066466 965559397 477444399 264713627 215674170 908470915 589187176 180506411 426026921 415137305 125472672 642530815 393363493 666990489 734986206 240207513 236804795 939049610 381261687 677153553 967268069 452491068 231349954 302389494 255723931 650500898 195342985 721194583 442987756 66635301 218403266 275195921 123826470 65943470 267576396 667749630 911845834 391599421 981632060 157256210 992467739 590048240 471550797 91707010 623865663 160751788 298704072 491679101 112633080 343415101 652521545 924203428 771467261 362088462 910310785 958364457 30286314 50858931 744022925 134245653 825789060 696868822 659719282 239043408 226500318 17636479 831019517 96310259 299249854 261734383 284276811 74915929 834342125 330239687 726714814 203135832 502063772 456002969 908535218 182589996 385782067 108052446 612814754 770587674 454401730 761616431 597218688 48801913 53813844 912709803 710039040 84733218 547134194 848802367 238989780 278545731 533473432 90201838 909205945 418351973 99421465 671485714 863694070 803093261 654564326 224957725 489445930 159371789 259663755 907549551 239390355 154959785 958267948 247558236 265722363 297491730 980016529 250864019 125068269 134286070 59074871 826913490 285947278 145182024 599225931 172413013 215451476 220814437 895177632 140883501 935750730 760900215 805050686 518027134 628525856 902415126 274818275 863136127 748574453 668025372 769206921 651614432 36119491 410183898 348757031 806981883 548779635 389837427 499189866 288708536 673506497 4531300 867354550 18764318 650507040 277328067 797298840 425404651 685267912 186132704 885937516 960801648 621896070 627379645 732348003 817051825 40312552 878775021 297694206 910099453 936978693 48589522 768436746 33069135 98421473 980714935 587557323 924844821 571139189 815452229 200651355 67741253 651086273 618310574 593363729 372022582 439027354 330208297 179104353 791684835 829229077 746137578 605066711 589106106 369635160 524044557 625348990 45554810 648463894 733135214 496710630 161971137 24684110 942724108 869628139 217608514 504266821 520123597 717825293 142188118 828784178 941943819 148365402 95222896 392543827 413069179 241789911 830989351 767603374 950297734 184737346 497234537 174725500 520712036 798592299 972357613 945579307 564034350 325617859 619801033 851467833 303021590 474188425 440584488 320826766 763296891 911773943 160149275 497832065 203118520 330145784 132643149 609769472 717946840 293997204 863967665 761942531 603821978 772596207 940221266 761887814 13221913 312301601 79624555 526002714 162169494 541492414 845395068 259221964 444320002 413556532 25919958 444372221 144403440 52725003 814043872 343906948 762056666 537037706 791547313 519144048 104294643 989397713 193563567 411235314 513828407 413760391 314359513 49136473 156513975 332965969 943635562 706861143 261992714 425373542 8034760 184903891 387403980 307065460 388287041 968438085 890988893 806063803 307296011 143185623 92501329 113548411 711748910 255462047 711265054 393372778 621954208 783686088 163924756 953753984 340557183 975028888 812582422 210212091 592788042 965046075 584747948 263644540 306921722 464303738 933128628 319766521 598351063 786484092 397768260 200314650 211955862 9382378 4089107 691136410 111911220 35251592 698010101 460189757 803174539 365827010 603055728 201685695 118479027 145830837 643840852 747094353 741777544 919027228 32614853 39050542 573211266 426065575 993559807 439009707 420832243 969183792 143287328 795925751 688749239 832090689 144856340 741024280 891870423 231667030 462234096 548203751 45433187 220847811 191217155 92977074 727086642 956155598 273807485 444988893 68093705 779782517 30195976 390959742 827174887 807832953 881601766 911146373 732912494 440214386 852460737 403489193 380793599 637145526 917880464 244036567 98802415 772748419 482450078 424674331 733869505 198239550 759715735 399762484 511245327 192241065 215266352 393400984 42612458 553464630 929175216 2047384 544344716 861520194 875222808 369216861 430871826 504276150 223939731 611042752 399789575 268666685 358779426 95741757 206796257 66784586 816299508 162593852 264545406 814317538 514300912 388048663 256815147 955780935 911084058 137460985 904235188 599966863 303609629 105487043 817048816 277231086 5795904 197637734 497315525 769440283 616010748 746078135 77003982 991021801 705422886 76024226 902114923 125947155 758628372 255287722 125805749 950222119 849901007 99051219 445732126 249135471 702864327 286649803 975985314 638134391 894689265 715325246 641338157 972195496 946640995 187630225 719485140 481411787 898412631 380500140 446834036 306563664 310877399 487609252 793683547 674542129 255143190 996303584 202318823 421214106 689597581 155760664 261726684 6585103 806022069 397889787 985377714 382004627 352305761 977382226 527327584 753681958 539674446 442023176 108690604 434849084 120282318 99429483 168835973 278908145 96823052 421162315 186927751 933971777 690742251 301553886 473635954 131341405 559546291 653213849 991048363 906813510 824600139 958556131 34895834 82937481 627611455 231416167 743292119 85259450 478217406 679483132 44326158 265516982 928764991 318110877 570513447 866207078 590091693 155243398 553884801 664303222 927324491 362152152 666229417 243945697 10447885 608823874 76616568 761413066 428350940 15422302 864416625 423749225 289641158 749694800 494072617 540585914 837881236 830477898 789309118 64320233 676393596 911052220 947983053 522313787 613177770 325603172 914443229 582825082 411074478 800748627 410868334 433729813 348790708 705435296 640683169 352114049 671352518 665807250 34334649 182528091 82814161 131233914 39109982 820916889 899848388 771694765 611752436 241479264 717523457 105562119 718171983 817654408 771411293 861134966 375457946 326680094 73357031 530712390 333430052 473904061 383991977 558045169 150796057 273317610 106374225 107560826 735468251 684597802 519914248 301208065 711584434 442651856 376586313 364138274 922593989 37846626 59042089 90268073 93417169 822602900 944512941 889358539 566230977 338490140 979004036 343222601 628511986 584578284 92861291 94447375 810435843 96255020 413006676 890480780 334007157 199784884 880915562 603587984 466912214 33008835 798680814 352080033 302938868 844711275 184050717 455402774 988965921 639255036 586843292 864635283 755619190 940779097 24187968 985024359 176049513 629415449 167822023 32350694 311868415 951543641 967847238 817081562 636356753 19439460 644364722 78710132 107584066 422137172 265375274 709892781 524070198 684449767 817607449 990787957 654998411 571557945 902892269 933043983 342767094 652878959 939406178 74618744 234055241 980660511 720613274 833462969 135399425 666623628 272850305 268890951 398856044 18085791 667946723 913918371 694414055 178197251 385982561 394317872 768772373 564080984 853543023 952807744 817184917 287235701 382836750 79477856 815703153 565455430 799650257 1925385 86759297 46552433 973804513 496049075 573834716 231806539 52777928 283494753 411508795 656973804 834853011 540925215 404028021 734812368 881047717 492340943 119725703 986195637 211844554 186020308 599322033 430195232 275575786 343460602 332130878 46372726 296436724 608599444 660814693 621727207 605109189 882900963 728074812 933702204 527645135 259949629 297492297 597023051 578729399 793007264 232778820 613845358 88527151 529801040 446605529 345676381 381887020 810231809 810241333 20883657 58554626 637010877 834198773 895148269 848598480 113288384 962568094 331707058 682761079 31876002 505344557 214314698 478011895 309677648 57174893 624762908 609493851 433358423 184920642 225915143 135210493 109728466 71950846 378641171 556324567 609171712 171718702 289270232 273166064 98967137 361116759 352438387 44171086 996581383 576347262 971854318 283180352 915816332 612765622 812086638 791074766 449582839 725098381 702937974 548101263 759653822 384015337 441719708 778875462 527404201 300631103 92706557 965173117 347436065 39172959 498937615 684241803 425327920 426309668 122569601 682872693 852120131 530428715 269189202 638776988 870781350 308271863 762684283 862360819 647394660 803284143 101606003 31933235 258098041 312941392 792564322 628882804 170030615 239993128 876419824 350981824 984600288 670077884 773797609 927351992 629785516 943034366 704606683 843095268 857516945 408819323 306623887 237322823 385884449 845328429 665823745 583880548 338894850 528744451 758019563 674446853 621008716 115400133 909938746 630404261 518188203 124745386 722396932 890181062 305871031 836445378 242944872 547684007 595603988 278239412 566420237 680327788 848399050 401592724 372745639 282610154 653253659 98183390 780188587 936426997 848605776 300077909 156099110 15471298 785011923 591190916 322041016 828236562 306913071 988911557 670855186 230705475 494660800 918359010 720723639 255889277 92284352 435866583 930590792 368984704 220731477 491819587 586687226 789906821 28243274 738039643 117318360 396784296 129230896 606145521 81803345 830429398 267937131 96412362 95289720 870562543 89770835 125693976 146244204 106829055 479041381 855601146 561180087 974243055 761234512 929546522 164112459 563564991 232032923 428341177 450940868 39721651 571507449 411641899 501881103 224706681 449264348 260280566 293940772 856991698 173806215 614484201 792452878 215843779 41045227 899614341 234159892 704983010 827067361 118554490 567976134 774683701 59693360 876123473 198562135 802511777 961139272 246771303 909844980 746449645 375321356 296966079 147783507 192267875 790422716 853971515 804567533 541604633 269275097 983714986 700691586 548639325 645624693 144387908 720637396 820684266 913013389 903159129 973576487 782407859 406876281 535803547 466676967 618235998 24903127 731563979 946767310 643912165 674045341 900761874 176993713 980762587 396118732 121131564 107293648 4390687 389312656 265864072 419899057 64969865 787885985 49923611 302119832 662757017 96234945 978594705 441786545 635157963 688821998 600316683 680552861 789299688 585306947 758924791 819581153 793341333 866699721 334690370 625083777 955976242 880084703 526628223 628636203 851818297 680063614 434358898 876943838 82894575 84760171 185158288 911618510 720784369 525794418 336809978 433625389 105720091 74870984 538259619 69543058 122768209 239757407 427574983 907701443 771563633 314016134 826475281 514497274 510450309 52896223 706090357 31587704 915950060 517753794 926008503 382769164 156699412 941487419 54067154 429615942 422183862 929552417 657532375 361525115 189642519 977362603 87382495 927786603 33821648 493878807 947737380 699225143 192987018 308943366 236937999 308697238 84022465 460106597 225696770 565127293 433744047 602387141 651733202 461239368 787963159 449932515 448029877 969505901 453394695 730447496 444004799 781482990 585695364 807838354 384184459 191183131 152888504 931296265 362019645 690199505 776658553 48962626 713951344 149877953 917383957 112590920 528480462 763144949 782089580 918834803 199914683 664232967 963159496 173910388 658367578 932064052 578766728 145005232 45122342 122009071 902301102 829171831 424245107 531663081 506271097 966685181 77923830 114415469 929154839 343758286 59149137 633020936 655884183 407815100 443016011 982379392 897553921 219501858 506695043 97733504 327863037 678050760 867755154 335234402 190731759 976379544 520322663 628325639 849816331 859028628 602278319 964298048 196896380 861816502 775716685 810249699 162089607 260168200 776937013 579920988 562784020 149618183 802421916 327820611 403895601 761779280 145101856 99213408 334957635 31773491 30632781 575941315 66842095 288548962 555568604 638269514 194143185 51319103 326339796 692966709 86263894 452406677 471038774 349786263 206850728 80409805 899849993 327629385 212218310 428007232 776485720 887906845 452118128 312582030 33120656 266411859 571285485 585660362 152635198 798849165 524495688 772647735 5356989 344541643 65570461 639736691 425843698 465708956 654448141 337978851 484392601 87752823 975590425 745839199 160988304 849994989 333408557 637898870 961668001 222798754 999876620 419074431 235435474 650223832 895325171 708259904 108938971 89638606 432127833 961074187 388561598 535418526 920568100 593268773 214956772 639219890 393322383 128739868 373872238 108558631 216326810 112077355 261811478 913869736 698700067 365656393 915762754 780943176 97047829 348413794 135198141 304270546 240227555 729163562 441553265 977825342 320438717 450150821 924296305 990752841 998759480 927392714 474978355 162654670 231810043 748765711 735159190 915108831 243057506 601702300 738716964 424848595 132300984 330480009 696522942 927492024 129661736 46631017 579894018 355332446 785741126 688457917 16255689 417351439 181492556 19029234 629639928 709346962 991782948 671918253 817984405 570938447 594216072 338839012 353856147 13161091 442807989 731608865 131378757 996843488 743807113 423536232 25147832 155804195 420767668 766294490 242645726 195219790 496923956 132485662 611101970 247170059 844317956 692164131 970660798 771610070 207512435 924285140 336052376 426914007 140281638 443301113 333318837 262180041 329532772 562585200 321675350 773570743 798704128 196287373 805902732 678257826 179518325 185688543 574968125 563462240 71230371 777223544 376327156 112357817 427387792 63595572 969575713 434399305 563610121 517041952 830417646 722025921 338156800 207340198 111752974 653979797 19436403 528289362 844444398 667244232 608271432 325007478 485540824 117785778 594607843 155934533 106382692 182270181 397282807 377390215 154146058 453199033 466737965 520500453 618035765 401023616 297189468 756891215 157736495 227984750 351814086 714452282 721514089 152452917 558422749 157232015 290392131 770501194 438555418 973857975 290859653 153379559 672294338 206191723 850658793 866090671 790860925 966590326 22432731 881216681 951837138 227792000 80592240 639328092 635490759 160600594 883380440 851447134 693984557 331760131 320950165 956206321 411075935 739072692 996045210 813334186 887345282 357506248 312972804 324991131 549416759 774873287 987608108 481060841 685665381 826948952 523091894 839776242 833520606 108542596 955493708 368450252 857534727 435693480 446362415 415708910 145816123 290682027 219965749 838316016 840731840 376298616 287599828 299520639 204520541 264161880 449210329 275446385 641533505 61023075 795603769 451909698 196641712 666094715 157821225 617485948 21453597 863917766 841363392 714095989 930762216 211720436 685822514 728504230 854491546 821345197 491751140 211458926 456598901 363247662 890796457 513896913 65378708 520641814 712905694 555285587 663909055 691984626 322953810 391606378 549340791 611752999 993773685 756494882 562957724 64696372 98544847 699119162 808555802 549312983 308822793 689531331 370084884 496476274 435487491 191541307 355302835 528623082 743154179 722043383 89032604 608638029 160191827 887482002 52890200 360767883 352362196 232578652 50098331 969625778 879885847 280242079 471790897 461453260 80264598 894679425 703103897 374004794 189345649 792515799 653887911 525425040 793365214 523055243 772006716 181030424 977657286 120145070 583676825 259942339 679626640 402256618 181115294 187847670 452622413 551314699 804679904 456653421 151921709 288877638 81977096 188495627 884093514 667337723 293069802 868294879 401896726 247137969 83846134 148819880 76880400 332930628 177421894 909383970 83421733 392255662 924608381 26996209 929063269 196865672 75888630 709190374 42726070 215063826 982022976 793838205 339353896 482445175 269022055 735819100 739165661 349710142 335857080 324867817 354082664 408473930 619119839 294168312 364611330 855034614 321857005 290120300 692518895 640563734 484728068 811566044 618763069 900070026 359450775 484970691 868111461 362563944 877293815 12957813 694521727 143062737 81904793 147970473 916370715 108496182 514306408 433665977 801379612 8602671 201992681 79738252 365023302 769894050 280549860 748957499 210305099 239543954 89146490 6884251 244513312 605045362 975669138 720896564 547689555 642897412 473772234 991565874 89705257 871592019 392187769 681090136 678858776 975132640 912899717 191202363 567187429 832969141 155299109 175814853 102917748 115271904 624364044 303846080 964119082 701947682 712706455 25754393 334495621 957024014 465706207 128922600 8788203 672549604 487185655 333665477 70148796 112403345 412942785 65980165 451118844 780753589 501498149 859958834 215929489 173997093 304318601 848331613 779182764 200285729 674879174 604134532 34063288 982708488 426025369 486078856 933591131 522817866 222386327 800589013 462486434 368507900 617786444 652942408 904340114 709856474 831221086 310753911 254475994 164658701 350982932 875689347 556478054 882598143 846826717 66849505 449944770 590164485 807756404 907907514 314871529 510101755 896545103 318017315 619660323 88503145 549138556 180326009 626230676 85858295 68068660 864518999 749331148 792817341 241272941 223212403 449953476 400210866 981936271 113097891 780664959 824774378 274681019 763866059 121724978 610364868 376877449 31157736 458081418 369693567 456077626 265748803 74972548 1994131 885511603 335100860 259404882 204450569 242997933 722973029 717309722 451962091 570305939 201056081 177118818 815201933 433519245 562350712 30230683 738894211 823884980 770609741 861109003 478576336 673076512 887055161 292642996 818037987 709581667 452703036 269136850 94274684 866980786 32883063 802653467 680523367 939796824 245279371 570925727 295157799 158369109 311538148 377311344 5602368 289661555 149178973 15478015 886286741 663660162 39282144 653763468 357122218 963270906 566399515 187590667 635940465 701321369 889648384 892716740 647700510 127149527 102375801 854910020 226817716 627012715 251704687 237262351 860723123 434780334 75507057 754062640 559488752 275206677 713377570 814575471 397343428 611174330 775487848 580736366 674340186 95909776 171195274 902504794 412456064 336735380 100474421 847713686 756550850 802334528 223731552 847170111 113370151 64736702 224032128 699208106 648419886 468875612 772827246 292194165 682233232 162795318 986761869 308319080 914771600 20731445 26407192 555083426 918477079 643109894 617108754 500881772 414311833 657566043 18184720 242801363 185060810 108627163 981999803 90886783 585930786 908931757 52704286 2043840 521875378 593793042 679256886 228138626 856865416 247260128 89891199 457966650 381007121 395048610 647879061 781651417 158196740 962591045 427429412 368927968 646826876 91465261 989659382 136761221 600238646 987279451 569254669 271889016 996236968 854322695 752206945 884405827 573944891 722494403 91940629 370837585 164174287 139058435 414179735 245032910 355269553 483441361 683258170 336744691 719623163 11017634 267382217 409816677 46121021 856760749 957603255 689690886 273230180 677093919 204104700 483416887 220003438 195337136 471732877 92542499 331383102 481362878 75209961 187177369 279493119 832947840 627331819 30187692 988002037 803554011 918501210 925618228 690446891 133333518 298606007 807724750 27664904 976501098 128123966 910507356 109717477 543426835 746054257 423719768 57561391 862906422 176671670 573687772 467506313 859645024 127599814 706220606 598428835 883036286 203458710 318329736 358027783 678140310 292081491 193055523 3466899 586566413 640364596 15204462 607189961 844861690 973755427 5909609 191094312 771778508 232307268 581361924 853239561 582642899 618370943 60000063 686632399 151247270 773236423 578511125 83007427 350957954 736903653 931940635 242251828 540034846 777054818 696901650 32276241 664602719 338668975 818938348 16506034 644047742 839989669 993200251 640364422 366517087 912637735 474098718 837335836 209490419 437854664 415443901 345477818 973588190 184059964 578778075 999232897 116905313 318813895 352766671 231721708 22090186 890478191 527889449 713613110 507174299 207245918 970925966 13954189 979020751 233349089 306696469 484346403 770158060 164725249 231756405 856539799 235296044 8303154 41645049 453915101 447590990 853651196 772640000 341269007 307049026 585380650 769166582 795697498 572324908 678467787 932653514 263990421 180405696 174175980 693665682 18392724 518770809 390959361 132470407 552221510 392740169 804244727 978436328 10178619 688684692 985893916 417205320 838229950 354830086 860911487 172907435 627317140 263859563 846077934 259250776 985323655 177071574 432021706 526460493 224232878 222368426 428207221 238453524 615705844 902201830 338744032 286448824 340700804 15527275 957428536 591316838 286146520 391340917 355099141 363767127 134638604 858979739 112511880 541248052 708337707 523922938 283190280 466481414 375262948 507998494 357862546 951394496 562236710 834744729 130995662 166690710 391894851 428448485 316133125 297176373 857719660 745922857 692730347 44529917 549024206 310543142 598087409 341939297 516755128 595422070 191104735 60046316 943914936 965238206 843887933 788754782 224728921 458204692 15630441 866181444 927530768 84486537 254060470 932824422 788692828 661631313 810650765 77216741 147401392 208922729 927248628 13296117 814127130 31487225 341245415 146970073 113557311 770345181 926384469 745163993 148415829 88667565 433192752 219594114 256229639 931179404 462432479 212985160 858417734 319367971 14494553 190799656 75027476 349682353 8923963 768189467 72382464 617856148 242235795 492450331 483161678 949785290 468488193 607369277 654677957 862491083 41802387 476151591 246352357 556369528 94654620 393734178 570114128 488434622 16075752 380590439 458731796 655507682 567406031 543279890 412465250 352591306 900110285 947506453 709144635 70534224 11664863 821108557 711353072 661466973 851944648 318339153 607663962 776514483 723964663 358484716 692659369 750137635 141714651 484127389 484721944 619491900 115780302 292502678 37123004 392426378 219548598 358365970 117455805 813749056 742595823 195439822 852853328 921957554 154837493 214796442 324697189 936670668 235638175 920788603 451111288 576989860 455176369 446773147 380191656 199033479 866722201 274966772 809073177 457202611 521980994 344541189 496504366 96168044 71196552 225842386 407179714 239881385 658116003 650058268 868809442 319097603 481488601 134499040 188721542 766407843 699077186 812169200 30912433 937138129 125109408 62952870 732152831 814610203 365527310 568998991 911987834 265991916 484104786 477291043 518541191 932900827 871247167 124204999 115163611 96557937 891460820 510956322 395033658 548707891 314332365 206585272 455170479 91198076 140086173 64722351 514055994 365829022 180704291 361649354 805204432 339560260 988351563 547055395 776895062 846286314 114328218 846598330 650571661 355170518 906417956 267941375 184847629 657576412 198522136 686633480 260362437 933301201 528537624 744177583 579702410 779792789 436086289 536969913 262812949 103248838 688341255 328376177 736274292 860472930 275041393 983216606 820288188 255192886 733728533 550260075 66671726 557987353 136094436 785787317 564719636 995031224 153986501 936104150 33286142 32654914 449899893 715582121 616513754 196448245 168649132 214617326 121778245 889793313 36061202 647174490 56176272 107877579 537336377 922294100 328263741 187167993 313866643 441097521 35272072 757646133 790612296 850864247 476679377 546577483 578515087 259872043 980145184 779252552 169674801 701404813 837625122 666793371 780919518 418891270 229098509 909543093 11392440 533823901 808781746 236618071 469730346 636281462 836918923 41128602 804595053 344016004 57500450 776657226 626590832 561036089 792090673 865119864 269813837 208540806 593193231 604523343 781007374 142889495 944080169 45155226 579366548 329713779 112056986 297624716 503485014 820321007 377517165 475239826 117365356 207444314 64712994 533077559 944657880 770338855 963563295 235493914 75339234 352088240 135528397 632010006 270956767 63796381 675712893 69427020 999919991 640041778 252961207 754485053 683265696 689844073 201614129 680314602 892726977 265491641 729465719 631644995 150670537 541112524 946111709 866339493 249215621 164808543 299194016 563531812 799375518 928945497 138370791 338111594 632201836 343371073 173077483 322216492 660572115 257807794 543211327 531139952 312563875 329041238 708500380 485434866 448817096 56325655 21656429 393107841 877077633 550246440 596766712 532388647 835865270 272727590 826701386 450715912 558563833 459042530 402065599 586417008 88172993 41996951 969684273 506258479 161360077 590198717 779240215 417242740 816005039 313034188 631846569 409959068 881924541 583583476 135573109 448149106 347865060 900362383 113144676 672784922 709041572 98182874 121720807 251934162 302611080 39273758 336817044 683208022 493436550 645881684 368801130 164968261 555722813 222531759 205838567 271333951 152187403 704883920 935537375 771130199 612846520 629366973 10600132 258625164 952055108 153925255 413723470 689510094 771430685 76859695 892459721 95168543 219756693 437581915 942250840 791150184 39459312 230949194 848432301 255604556 875584710 553825090 984970225 332995983 237512969 706541321 545841718 627395190 199790274 376288428 64005490 602651955 462582180 402532503 707978389 536220782 169092553 492881374 594288220 847457701 34116109 786902834 863804579 983008581 381273224 163071784 832277883 21341052 938052595 104496712 976783345 907509427 587905207 150939592 734610214 925733756 109443065 895069218 668886077 279754010 516159016 403019062 489229104 309941520 154370793 63675762 932153905 792607788 586170896 684345783 366491244 377567326 473884815 423501457 204850712 189814141 412738922 118650443 383129395 49019426 104243336 975561454 258599777 17966353 341682265 807141396 261325876 885510081 997755461 996636730 584897143 848563217 805049455 829552873 879812585 153104966 555491021 588280264 592059322 904782327 325535118 594869695 631113742 729115243 955042470 179542843 44175252 719394797 134242063 84622433 559238570 845499823 902207934 451939914 814833086 964595545 546616963 298863306 770291837 189011404 119958556 825929972 279873357 78079460 478375528 566909224 496849511 540635650 771118589 26793907 950971986 781062213 842149564 129159601 398980259 90938122 398709810 218394220 856136778 89927806 247632541 873827432 460342208 601773578 735741780 621005669 140137295 612609051 119666730 559086112 349264659 97837562 80501066 459942246 644276619 603641195 239639269 152370568 418884246 922319219 254747140 413496322 456098312 995458629 975375299 737141927 810755004 674737123 473977248 520547595 984082419 574020092 262642984 272679769 899369113 861370853 108844923 112643619 215768028 877604591 892133950 353612781 14947634 928442862 783688673 733450718 522734812 775119723 708093975 970472650 658571242 976648865 542734064 185291439 621583291 376920373 557354343 424883713 475792251 8385557 383500574 511982872 383489832 32749510 306597826 483240322 108984686 1167764 130858880 869427109 772556207 335326239 218258971 990821474 168048119 835168769 990172923 494091855 74475621 33852439 207402800 464991606 704470555 166767684 598721581 781992725 910266133 28155981 491708157 847284902 733957568 455324691 85144416 37182906 861722432 40968962 872172850 884532449 53143185 202714203 78591320 168581179 872234067 498934996 202250799 386016497 276875280 989604159 647525595 818013420 137872916 112948595 630234891 269454489 560608738 676136612 808718777 244790531 858703469 947807946 575092017 690986499 25413880 247238472 685584399 805413 895968139 167234325 4075352 634298608 754648873 322344868 426317793 173107242 626883953 395015862 703773481 166988883 7291381 65803795 418273846 258985268 877222324 189966971 722809299 481285029 911248293 950589835 40062326 171450392 227387650 334724587 132436781 159785959 691679880 613179318 436093893 221197699 234016073 379821622 525963154 162050179 620822439 48530246 983365812 620308058 429639560 421521664 681722664 629668383 486662461 555712439 686115998 85645128 537749414 336149172 37113960 844125245 680226869 967234624 534913790 495655743 49162251 625213092 488618500 271228221 980810633 673283188 495724079 193668984 46761552 121300990 435829670 290463445 44823887 141943841 821051733 515892414 496784021 465887591 902138117 518983153 459175535 418450465 268263130 350263486 173180798 616390675 955196102 54388098 777661136 36942910 797037665 718708513 474350006 849128647 876357911 873801003 934772222 395004242 795100811 690805469 418822892 433095240 772768168 94807927 867299725 773418419 523467267 103617404 720086575 911685869 562728445 76531837 501767009 326036645 565249339 45862718 803807184 932281951 959382547 17711267 291202329 940532030 522119664 283330739 643228608 501557224 766194330 177554222 878257074 572443622 925650214 879721754 155081735 438195224 842646922 507263543 182903260 850266779 75256189 88977451 59935601 101399981 34341942 768674795 183509536 536356203 389582592 205434472 81485886 617529064 507686299 10669413 760527064 85486771 199689602 798802779 69047243 827664036 858996133 827360463 418335996 687243130 188628393 142007393 630963105 293843847 553378667 833546781 867559881 667327218 551398695 995282231 251499731 752163581 810639053 522031981 221740257 490208804 483303983 799691273 896930267 644094245 959256144 345212947 730834728 306729616 449279426 731217154 786119882 831834576 770924772 298709877 875962710 154160321 701968665 888952942 180746030 160781399 377886678 284552404 441821446 519987641 171689312 508481698 381367569 682265202 566085186 254792997 883248550 709082912 21569755 344960510 373056113 244339258 17771098 771062523 37973026 791266332 939086824 962993650 939594121 732672413 942083275 558624929 400109428 501318209 489169423 117951262 355223494 284559798 395356072 49200715 508473834 446510016 854051842 757688718 118169385 755462795 76108146 593623647 627072731 316688201 170759460 445849471 9069736 593017642 567028733 659390886 756368748 847709613 869370445 278796153 67844328 558451253 560653279 919776747 541634857 317418053 637499681 398219506 730744657 149214829 886697223 810214014 348729678 623581911 728323681 845488642 452469454 688239161 223365007 81737144 604308514 541045560 456752537 707359465 590568751 204791858 316111892 426774592 598401603 267497248 607819713 363875765 381914246 90904083 824878937 26617189 585585216 786639523 620709043 608676663 593210414 152248640 283022007 320638671 252333350 425875919 827577769 601712315 541811505 74566439 823880291 96726303 236535423 369474488 370430427 235778186 344797556 612359700 482914385 614376096 72717068 38479344 514705470 372945612 397139344 717146374 15062947 933210841 915469845 42191610 302348763 797913210 347105574 849195445 159945875 351699552 204364338 518580104 509167324 539549070 230196252 212612021 637992874 645991204 228191370 509053267 660522770 133074887 594605033 915369852 943381624 274310859 328563422 861591260 473025360 660644853 170435011 439328080 990437037 567993085 539686521 767884818 328288341 646833334 641313725 379361880 697918770 308431152 568933814 706785673 108397034 149055447 941009273 589472716 728661820 838457614 238778070 891737006 890269612 729834694 290157033 770486676 370982747 950697412 104868617 281575023 769182934 873065352 916219677 591609325 334334027 709576143 615895750 388997827 958251501 568346686 704399313 920308728 403729967 923316916 210369923 652428059 512094318 366525531 478990021 920681230 79016506 166538453 487889137 22422690 264878862 547744229 637013418 4091019 512807631 799805195 744898074 496953424 360783281 477045568 467902161 978420482 891984691 393621061 377614847 322895220 410238500 320556109 374388877 219234684 826767553 92897278 732058893 96512796 8782164 733370452 165248995 843178628 397066184 597448661 209852601 999379178 817009247 875408179 877365272 553886438 680568120 311807472 435658026 721418382 154507596 356799022 529962022 49742793 590858425 84550031 430624960 563158012 111099829 922056762 983071273 282296912 439857932 142500630 233322530 762028753 543412921 360365555 31494786 419343672 221046811 848985021 138712422 14966786 590560350 704536485 43286290 125559425 261789870 544620515 823410895 951149430 788900795 556925609 985568853 893878203 124731700 521893224 803690007 509456870 670369277 164730474 666282046 7852236 177646678 959857551 426779653 127843185 676137857 272879472 93688726 110580495 768336166 822613542 903517369 550151212 566495792 510321519 695793397 805883236 930927903 372714400 903498003 190056552 257378878 469915350 850047424 250453316 184990175 291595487 446390069 646904384 277689209 777688355 865272741 136020055 468051937 92984559 657758602 541060956 125718221 471962608 19897374 883461789 506323359 696749549 974226715 104691534 957327448 86889076 115546828 358715762 526008784 867983466 988297396 429095790 989296317 29944423 252646881 833484767 49217218 180717331 348266658 898361161 174076806 982271432 371914839 372083403 417064875 367878613 274018784 941457676 856651898 259074137 768580598 634955658 794788485 230927024 359303216 431805705 161077443 359663433 487584624 406113104 640927194 556870343 383226576 328749887 835126452 628125695 49270934 664143806 443020724 513310023 693960742 709199220 616467527 366410682 711882039 380391044 766587920 404483329 909770168 513446066 984528180 421755795 618365310 113301528 295856284 751878297 390039701 522131787 374160267 35828142 405625423 905329006 264448631 807654785 423553706 205490757 415447288 132513123 582532947 855391155 201188351 841377856 404726836 531949930 312334946 752056122 276545858 288840060 930615256 219177152 742047571 612118818 987860052 20816539 531626817 575356260 52802464 441000721 392749582 206857367 190465277 516180837 219654264 447503674 210392572 578574561 575662978 398206753 965193899 850067758 373490262 128657183 319919948 90745863 984335825 44323337 531810692 778003144 536663099 196308979 125925929 243680487 641045344 565191014 504532664 312729668 971566207 757035115 189602540 758828620 728999598 826051001 184509753 528743964 605860988 998500675 840616799 932207966 817127008 542729486 124704165 386325120 806676470 29594804 288813095 442130545 889111302 67979744 766649566 541438979 793230465 574220580 605166135 198120001 984810355 727662766 337736015 73957146 651771049 4795690 490799467 178207254 650474558 933191396 826303791 237573417 926738325 857729685 731336488 642689551 116453248 961532310 146905898 185392017 575161870 597690917 750783009 248301172 450733601 51224937 624965794 210102572 906629121 657065915 283853686 382842129 7002510 827844284 418215613 89235376 141332754 618749488 79685152 894129253 732368559 480458106 39089415 366601563 713657942 278114541 785452691 204440288 34056693 923656968 755669273 736698144 675863011 460445339 686970464 155843011 621851309 14094725 780871481 422890726 40343828 157408122 303645208 54651113 475651969 655693441 45010603 494964523 73696968 227461564 159251014 403834402 347044483 316973761 259025549 552159189 80257752 421540367 764294891 664910414 673205601 541192511 44735923 85390031 96767993 324232797 577474921 631835587 931126982 280776690 527228388 324964643 717623150 63037975 616756906 588096953 537974588 566344623 337182215 361633080 780376896 975295160 881645367 45426970 294591931 771934980 589277250 150151308 649846044 448451180 444110005 770488626 771489308 249417739 21346339 151141105 119481777 259215625 462090858 529190152 732000406 52314068 300834828 323349920 513504533 764211185 400673874 436614743 673217448 882439298 990182917 838831127 211010977 668510591 853576291 749034196 170154276 17457417 885169065 476309324 60480197 819010680 400289968 266841914 554751976 399539416 861853531 180243974 654530220 99811331 386065035 218725676 724638915 673221193 767164612 71617091 141971822 141870851 456795031 253176776 791980300 859316607 407216662 698534753 181381160 44932049 389284305 652679257 315746515 327772971 904311791 994779411 437696820 610030548 853358741 517639941 223441756 534372646 601157864 194530587 935981557 34109198 319787918 946805239 150437393 444179390 15922342 334307627 975553385 310273090 870578120 950341479 641482617 899447535 856768345 242069446 100218988 913482213 972653640 226631112 342809472 850752108 332328037 397212361 147106456 392910830 616874822 865049794 695280878 115984445 942546039 568213998 239627470 144834410 871707185 666451420 18094833 85873933 519711246 880296330 172851379 933292254 237659993 635725358 466391980 984147961 368854843 526368207 544195982 713135928 348966352 689921349 564963236 290785278 988621386 299195990 611820918 595017701 453759809 116034301 803323343 568538620 117506860 455754924 858670037 354233414 832734111 241499987 943507569 84562785 426055904 851532637 753364625 726736370 511360947 150069615 237844872 955153643 897830871 844083845 520480051 260546025 668460746 833733423 75182686 350631138 23671161 755122365 158425890 613659207 587564541 778292001 237190327 963698230 410000502 754810458 649955413 20920966 733244924 914967251 798385643 278653853 869511527 639200006 22767065 339464563 27265550 232359751 795985689 769481996 361546891 659238788 92670627 135568219 913634145 141942227 650329310 77181416 323618655 96144593 48578780 666197108 157748185 638593978 259209551 398631722 954200977 543830924 617751951 166140881 914741454 264156014 36674525 137969392 864771365 742076991 111943941 349144979 962365606 88184013 713033309 874565789 27217575 991061402 144487883 425214216 794129016 931638615 991335378 767815013 886034035 72719947 122980880 191500637 9366686 326385001 546321532 429346639 742810056 310087653 407101881 405140418 442026583 330524399 112463749 372201516 776770588 949313215 81378457 96757445 685279091 436126780 943277848 375299632 152408972 619408220 884836792 418957463 613816625 768982293 740932606 860806291 99044227 818918153 355849812 87249425 997423879 205129652 263088922 498012559 775103766 852900076 235806604 763572626 126758213 524821028 246235199 680976009 565949350 125473060 576507511 664372626 279297461 397111387 690698239 311771231 562536375 791943894 102494288 606619036 28679595 293630183 568554177 964685927 656529253 786693916 273809393 179338658 549798252 517778132 71185354 274858399 87179282 651145626 408298632 848739373 114926854 311152395 57684238 725952657 110156418 457308529 543362579 312296298 662511568 64263375 109790178 741382201 877558192 40361624 919445421 597269370 760597566 20378414 195606424 480048258 226046454 251585782 538545174 206888922 119989529 657222132 998280621 409280976 47573195 851800109 167238284 599874394 277610561 211123944 220237182 289504734 67848362 10913260 3547483 828445053 925084968 190961303 81559686 933699539 645113186 691042589 247227919 560332118 946127925 606240186 148479407 519084234 858803420 201067676 451179359 297850326 452162919 240495581 180243923 548824834 751775857 248156351 951729955 455272781 329805223 455728273 742224423 423841118 310042218 825412288 501490286 796308741 213333213 972994404 123272482 996093774 41721270 371151080 281962558 259055659 331556331 152401450 232468444 137479007 319217736 175902860 290832314 15920699 780346502 151930372 687136490 610646335 976861937 190421658 86020844 542132863 797887149 376073925 420698747 127053076 1466980 949725152 440890141 416563147 238428372 187663751 115607509 375211807 673983020 540226947 835433722 95272080 712424956 105547825 736126310 55918360 526257937 372334398 837586661 100674620 843553490 263574902 50356960 999915993 398374221 189401257 255315151 326671012 783008838 438608907 152777539 48717675 312872764 999999857 985420546 497339836 1709590 782920209 754636502 979669483 275148387 576034285 384023249 647437818 471022093 499670206 373421609 828471431 735994491 116764074 598008102 165710761 201892581 497827694 652403006 34998489 84581345 696980852 74601579 827299738 421738900 831291076 251842729 622182097 636785021 298793048 261311744 23570333 844949020 808282013 680937234 937551300 189848880 905571914 960047478 760952480 519940205 363939438 235180421 647704553 922309167 328919328 543417815 2378135 238172427 873947809 284913431 575779318 652477006 116867423 397622923 858985531 341106502 265734167 504224059 896675471 305616127 558711131 52174000 549980903 948930885 544431959 140512822 245443597 821569552 752905247 293724187 160333315 8380412 276005760 984515569 285926498 966002475 977436950 755069053 84241789 871275081 671640390 392322496 90337997 146387786 432725751 641420164 477618818 894023773 840047434 346512281 5726239 294040609 954688636 595051765 245887547 732775166 26698333 759003358 974977020 175147538 595278619 2497868 130992150 517072214 926654367 786488044 17572929 771406616 68120244 247455617 698251199 887709080 51522039 136579427 741757798 259629684 734356617 787265413 111290178 889209488 777243038 331081605 147302964 211214565 627340091 465417878 923490332 408496430 829388929 129237012 351222474 412255609 56767039 980203391 687586202 817138757 56961722 191347830 86874589 163496789 137360781 69635133 596000401 490572494 749525710 625240684 899753569 746851616 160485087 822064216 616923937 378522533 643000559 765919757 912059451 193002210 962524368 808269830 355266644 371723895 111593163 489292116 721047603 842878600 702221390 93225180 106991420 458509720 663333375 184797135 238965342 457159934 396923818 197804375 50787374 76735399 146031368 754445129 452477222 98476268 463708427 360110409 349824186 669259633 768346632 745379395 853774461 719975256 18261115 524466256 777680165 74176959 688513737 899031944 405820126 86045608 538967326 67430177 283128478 667239067 281348880 24657864 911157204 264660541 794559245 810647121 92287883 279443404 51084976 365004262 334214367 184485877 822897111 654516979 749992030 890666711 861290367 523417488 623789122 590043651 441395513 246409973 526275981 844848995 20005313 528804116 633122815 357803183 835626941 329171074 386877840 965748375 996781608 490038471 929280137 974808525 956113090 486971146 373037078 165699051 559164486 106752670 889091506 353768751 532291908 237267806 209192275 78297379 89478176 980176050 72266825 191279878 405316363 912349374 672743770 423925829 264426497 943787485 504738443 676014288 734747337 609170283 706055981 739863466 756235950 592314083 760875353 176157622 292387787 582918556 663662939 970503391 502116062 949080024 384284526 370072041 279441640 385170493 715985199 713095277 405278968 641749804 614157868 544753662 149686738 590374232 683360431 836016616 828401895 362552538 607748646 845554232 817924699 35570212 42983985 29210694 91538923 892400440 140114591 334961072 140998299 538218014 531156979 842734006 524822048 882519867 571200779 375463830 544278365 49138524 119878943 222870589 147339351 179874820 702408209 442955303 560743686 982946069 998972984 289769087 716892727 667635224 725280787 532984961 357765112 849823943 562518656 716297470 168286462 149058249 241416171 839152145 786576729 102439802 588310781 209355151 750909753 937690749 794338497 950203732 534644789 497591658 100389276 437133672 884197423 580858020 168288884 102140919 641047867 674639755 300911199 982313178 914450135 292476903 726801774 397976389 808527058 346072939 934008624 745917766 239183944 270485987 731690593 638210922 831181059 949495309 71328286 393860339 534906005 445623377 171609121 862978102 146370730 820293767 841402761 642773404 840706030 162275558 657418597 282332502 480688736 864009938 409812686 614965680 861006806 755486838 681108358 30286677 693813741 444587874 635654619 77773723 858359765 947499423 142966217 44838191 309482725 739648440 211538800 6968986 111389556 387795016 97266340 40771401 968962522 411499865 514902504 260462336 947349766 826971542 661292407 374070969 389282589 966293976 201443419 823046854 982596886 883026318 206407624 531607559 846774837 689889558 27142395 126600675 519393991 268602359 35881060 453778737 164817698 57342482 893662172 47262189 866659331 379306053 823933926 496609238 869040522 923343531 67947498 741651661 46194785 220863833 812208175 969003047 284866939 546206890 211701012 843518791 72243120 347327932 134029348 985317908 242785808 767649181 637917193 917189367 200199002 791028893 944272370 147389254 152437939 615811383 195490667 921758577 469830076 634220865 720667114 515492443 31474930 817747481 256597534 9056636 855160251 894863046 637514293 744499938 289413690 770609501 269575948 932247545 573893026 337493760 131452306 581667037 963027317 410505214 535988027 720313767 478488014 104287131 516510461 419532338 543217312 389927356 545498100 445224659 157957134 706614749 434104831 194663050 709568052 587922695 641481182 321782380 12184211 187585750 747219197 84537156 248597424 854379126 706401054 158515239 822180704 126169057 691800774 737752541 605278797 623850003 928470250 4943876 249293604 492963345 77841521 674155602 402627524 812682642 592711300 158818592 867294746 129515867 471877285 226665695 862113816 722149097 697436440 636354967 833515310 813544029 390252628 960456468 564789932 458987610 876105262 337253967 723857916 949478838 680129185 378523021 288446897 899920533 973990116 324693430 481336357 933676521 413094417 751245098 801790166 194082083 290629552 26529418 873739222 476803054 672255574 117605353 986870315 579582187 900850075 823161011 533872726 471528992 791002810 943623059 442033250 670351882 14748737 515455235 509350348 988038955 183566128 15845903 183743304 209114601 161120080 82768650 938240129 908930293 276262304 225049283 256700888 59393396 271834200 188760732 573687467 599770659 44944019 36078646 131907336 94322405 590315855 882492796 10589494 211276573 455583363 743206200 472680887 788784178 483422605 710898042 863080635 233352109 657235 62090541 288438566 339848979 2757531 534023101 586545801 444490527 639249332 827882345 646856282 970228008 723758688 616034125 197137037 296172780 902283112 729665911 572710920 518100365 926713463 590434844 931254704 91999708 510316254 86068022 346173917 130630086 873969448 644604595 599828619 319340232 8593814 58314124 348847245 488481854 425209502 615873096 640818051 806678723 788371833 284251607 397085057 978564420 262312219 231538616 484100376 280405524 44954827 311358744 39064136 913059210 332067800 102320329 422703994 236327998 973183937 42256419 806839361 82974396 341408229 823321038 356242575 428963152 354508679 163169870 101418197 222878857 864911497 319141238 155270909 630075534 179922558 187879291 479083408 313998594 850841433 109327334 274481094 850367553 633758569 277879869 194717404 939709755 976321687 51912262 81905827 889286130 159857708 243788934 306457280 746798781 587152105 285506655 353567277 65333429 931329597 511247547 757522875 582999519 736645012 161111549 224020237 869995609 721972472 935350130 976729826 805993299 366078680 889873016 271159414 918145818 238860738 906573201 266603250 79126064 511201711 366719397 485141352 749053427 49143600 803906057 253240971 124453934 14082448 12501195 444535963 410621172 825923390 932042938 855081594 517583069 42913040 678660729 647260470 866849502 600363790 286560178 680238439 504530531 234357719 34937403 521709369 347938295 378803680 222002841 800167183 637261318 649579346 452023712 910314410 892358334 139303539 536876881 49161668 397516275 811834031 624164100 239177885 929183751 600070451 21321488 401575513 541205449 670427853 164311402 876105847 955491368 337019280 494369994 975271805 869867520 619656666 147165003 29236369 44268265 225181511 440949104 928880609 670265902 956786069 586631416 24251380 224637288 605882149 773841987 176806074 645019151 80533379 457933793 892397971 513545577 353831545 24707214 746456035 539635803 128634220 817231207 575716830 260804801 534213347 54955946 264950779 472810137 995679763 181754531 70647938 53449841 597686439 573686128 988141998 650672695 213961088 518030579 123798655 303023174 924454207 918715120 595885074 652521802 240121456 625947030 10814325 346542012 680062572 374133595 21187639 297331280 108286990 146418541 220661796 271002081 364845912 476895608 133432261 811737319 398464450 799580187 560930959 52577595 747121214 412543821 152615624 967347690 367353682 671263907 177242200 471819597 834559452 979236815 26011562 774248924 369970764 713528099 499432700 965897210 225274964 35643367 187866554 502818012 900330909 305846569 336348221 168977247 934133726 422352029 342340148 66105760 920072505 599316633 761389253 874542699 369641989 145676207 186629970 430851918 882375417 318085766 768853388 802536436 388439893 703353017 661006142 133173045 329580975 376544548 839187326 652200290 960813822 514399345 601481170 75254061 873814103 939117757 546843892 885007239 909071205 922438585 865829919 523233164 901166114 802903593 437608807 99389907 871350469 125105971 559628164 860572881 561645951 289482737 318307855 670669964 116973162 628984308 104460380 934602172 959376547 530386613 698095090 718606284 487438282 333564550 521122255 453817794 293226121 415505340 661583323 572913228 521377110 867460876 539615493 524123558 191480472 4000298 310707800 114969883 601240543 943437711 925433593 951045140 412155831 213161041 512275427 618895623 707496220 619981035 661218733 68745270 590287152 174725916 687516418 70484023 944009566 458318715 785258738 280146727 804340400 465992431 903379550 288589071 336069356 457780909 56744186 133122640 720161259 739255384 948429797 730202375 23232120 17831856 527065813 370063166 691351106 131533686 768768146 918486209 877839660 13638848 71385882 35253507 245144313 767087867 374886456 379134811 733760617 609563554 393043171 574486181 855724528 622017970 597163069 435342641 703408562 859477525 700892958 452314771 884612073 399238396 504217780 928207802 745881361 145609071 66408921 237455651 768408802 754115506 710316455 332497861 491623330 648936923 352545138 725141532 366213378 296787853 620048768 916953858 908499225 961749627 720934600 443865319 481005795 187082926 865881325 961586143 85037099 868001571 470267047 116330010 331893021 749684417 37049825 674713513 127804319 664481967 625756914 699530189 253944441 228803369 664903938 775727393 370645642 744428525 264652967 321438433 502405159 63199183 534222803 697188084 89523895 757035294 928837725 999731064 739474847 383915428 677474595 749058410 794117720 109289004 36942126 135759046 659200413 331935175 17893444 268360893 744810017 193635225 297356365 639286610 442358831 655541858 484709842 426466904 949656576 123129299 388155214 371506128 576782834 350096198 384267034 464053549 204339078 731498195 444853124 522326250 438388195 690836979 487502070 366175242 930482448 644305691 194056428 651613021 465519569 41693139 864307933 273080514 575115860 769042438 387035286 632000832 335752156 769346300 956322068 344963203 982023554 389659548 468860916 843985772 425921593 662494660 584437364 564519420 913859016 131999574 933463813 160312773 321192857 866859910 574120670 306260257 592337364 893021853 849265548 354226910 492886531 336421648 417190854 839177379 904835118 900408500 681815611 933315416 796787451 93486962 861063651 871088720 457993336 975217873 944598703 125560558 856291394 273910152 653453299 163885059 876702867 722300399 470901736 705223000 886583050 145613181 220971617 449942208 261391391 91628602 284402277 270954114 165788806 19898856 261800116 974186040 199912834 686903334 649593479 262737241 369618605 209482022 27836713 441804138 429738479 383352520 603832990 459851961 650646421 603909294 329742974 246044225 892133179 648123848 773222706 975763749 897602042 288751723 373496136 551770774 21175429 950707711 95220677 826161811 443459272 870333784 384049555 763889009 444819852 936607283 784478434 589564510 998460466 976927445 152383651 144588010 218732950 732155306 194402463 742166712 295231201 932416702 697042515 318729753 482378227 2456054 846463844 441859476 606549433 13366256 493402851 806471585 562022090 881731984 239852728 507656806 217479099 557929776 444348588 428904066 664908830 228148124 114886143 412425812 730400335 49688386 747938595 585809734 8222808 44920168 685561592 100819442 196175142 752561310 979421042 39271624 831597640 352889247 428373270 164338517 144143200 158087590 117948093 44789261 264508415 259644884 560454044 235380634 188936309 220399098 620461417 403096359 43503592 55919147 501285152 227726743 773619614 744196107 590196759 636818043 175594698 30748385 684467406 26008793 522336376 220878624 657343690 857382505 718583409 636309690 743988889 150656154 238888946 106703960 703400471 9765887 131329841 915338324 491923248 249400451 882509039 503875849 615006715 621281555 824320140 942201043 438102733 524657469 441792170 853156087 216349663 476367389 391476126 191816828 442387611 478980110 135135129 337579793 792293859 439443559 812898774 883516239 143301744 66284454 72167099 711922880 386790183 947608120 368467298 996966239 8345547 748642750 374274473 976662655 294627785 455071406 501062599 535584120 859013810 639319062 389538973 490086699 786997829 149888794 437438178 164153192 260544013 158116147 713374718 2505254 851547336 156101444 460503343 993746072 137011564 543593843 202230660 383733 536934618 672996120 897833603 178782699 922996600 199881766 236727406 887993165 52312678 646884576 935007705 339205588 404985633 627591899 635490327 673939765 437128607 50190061 738056378 696629798 528940225 123021305 954192042 785927513 240288623 846312027 281558391 332691717 12094941 595472584 71994798 108045803 92448866 431504750 398190811 840977011 104041955 271412677 78804368 320284559 263343541 195808815 249712644 950790669 688329660 798599518 957070501 82970798 223569905 77222155 160589217 217903660 797012353 154799032 357560531 412365372 692791398 125822538 608150973 162949699 276482628 434520016 972521686 802370983 299136487 840346170 232563808 991577621 844581089 419385952 589265627 335921411 477250746 707258362 370398240 817385861 19005553 139452685 714076264 267127949 955214232 565762467 411918324 543512903 498271545 402018655 302544728 85855992 758352507 559854564 120789761 684085279 456541299 64395122 258187782 921882333 507680111 405198081 576557395 631929447 180549604 500818899 10034929 780751990 21083998 489179226 12880251 119885626 115029736 27495964 506584372 162641686 76441063 773276271 415988420 26517427 697195132 846405722 402541328 209517620 493085561 2797388 401032300 548687865 537378976 383932809 929474110 497103118 747998119 14901149 563766191 217228128 807413910 533714771 384620517 932527834 88872159 682516748 686807037 268109183 243009624 58996456 525280692 237179528 574266870 295823073 982893676 260256440 302963655 618021666 461653566 538377976 459640389 153844948 388788121 38690842 726275221 223038061 571664821 607795640 71253959 570146076 140803694 874095632 717763517 34850315 803574654 73755943 524425462 999626463 656454681 545316907 386259498 403599767 459995371 836169920 312804897 584761769 34874748 608791949 48396619 908561199 565432535 357359187 894960085 799062630 739820908 733568446 757464271 270297110 110623226 51642438 899865647 186259969 931396182 163499799 786650189 202180360 684952520 85586201 804730946 613484150 240711253 574020497 969475325 912202040 833827633 497187816 842155130 66469704 847587067 476818485 251242637 122133079 665402592 833134216 21408755 509437493 516199823 909991393 618931078 897221416 79263498 512244769 876384827 193880800 866766632 532993221 544647565 898082358 61962273 761849594 493274409 342134816 739998876 250157164 686522682 590227451 357926499 169153609 11317424 791725007 130311219 546665483 210475440 944189747 574552524 381154997 366629728 999575186 138880691 451598059 320546347 766830433 110019577 277977247 776536853 516411422 993297335 278212859 323613102 64329314 329023810 384051054 844112920 402175005 528079823 82706488 309124711 374304528 24817970 557330976 50368293 890427172 876270047 451582523 740944955 68355109 768968427 961500974 298732872 573185775 622609958 530679204 417689350 313724208 899552511 324640848 60629706 371612939 877498756 107744596 696037191 60796527 318456535 615990409 677803361 94480262 317408118 793610995 102466016 512928963 844321423 259293606 261984680 890139783 796937243 732297314 118750381 489199478 629495687 686331187 14246440 578075283 200962133 772411124 398488691 174070199 357073473 188422645 747744644 771768544 790172439 471076565 311608047 776354436 38604093 315174492 975595261 968237217 582967228 594569167 262903609 630497508 786953730 250144379 351583753 82333130 405862306 909303695 220030045 542293729 56759194 862033759 551150253 577908000 336035210 954692318 315372221 168502647 893282018 285742167 526044334 504009113 824375056 491444272 211868312 56190646 758865676 461113122 969366091 36098827 746138030 841986284 222730963 528996695 807425052 987979168 761148197 89963110 803610354 299553383 2519631 631289567 518887463 54634031 728833900 720916268 75577886 553415600 617831790 690041842 364440535 833694334 92978188 94999450 616744755 217715029 854282872 995587417 130986846 5246596 282574870 91794048 660431963 878096198 52344039 692531561 283224817 627353424 342649617 666909311 990690618 247099609 529449010 88736637 327347917 554018016 933766756 69605290 134238686 344355139 116903659 435590187 886412019 856664283 747842710 714141977 647608741 245707289 844369043 885093764 661100689 788282552 84845507 19837078 581105661 87007575 136196440 921678922 897326621 456253910 330521881 309275130 657559909 949057944 135217768 201662373 294603745 484259187 568394375 54266389 748180521 584749450 340210674 30809927 904921556 154194602 729073981 560631827 122039499 104521761 176908497 728953445 612112630 693045064 104375904 751565250 377035291 630654725 990747354 362746380 756360739 53729193 899435244 54109979 729484596 514210464 333269 834767075 807344061 16277996 838387933 453139236 776937773 724627698 686380590 885202497 9660429 83373603 521581947 632246377 270219061 254517473 288065973 937839326 398525917 734562806 745167780 768603043 429967667 742788519 582658636 677223857 928152226 375800920 794824235 765321768 735902697 14399164 767011167 658972017 476684683 642636137 933909414 638034714 687011634 707995805 165495799 457869477 873277642 396749161 183016529 507821890 456723631 779229899 266445123 926421856 236944298 662061093 215020570 749311973 161212642 813349408 648380132 31812352 915287319 103673105 679020770 626949129 141172343 121517024 401117078 812750488 356096337 694705371 568560843 260153897 855747058 647395375 865597543 373108428 759752517 65925893 30197975 282063903 889879443 210987817 921214853 404761625 241589768 708069310 973617097 888457449 141266221 125554996 243734120 453678196 27807255 876134124 959535884 54101140 800985888 837438560 885820146 926446773 704523248 69921560 161276022 605865098 459350945 847746831 399041757 318427069 28273275 499664092 87659345 296736758 581631193 981863160 870285847 875250820 734823555 104660689 189715209 641969297 284856656 376556028 123153179 561883741 319899565 410381598 551227886 528870297 795208848 692254816 393601195 924854907 91565297 965884917 180188124 974927508 628721029 44490614 887056489 147737860 283469173 152122425 202056495 690076284 372860327 271153767 693296161 470766369 15720277 389119537 599193851 574845989 289340495 674806784 565139568 279926698 588323987 173774661 319774345 268867650 689200945 738485971 9150467 818868785 640179936 556232910 511271757 412142129 763049962 943479888 995472686 106710322 131582058 951051142 427816005 792058493 507214144 896737066 44984623 125053125 145734183 330453761 457014708 945050908 540316697 424954767 576901836 262133923 321505142 820191219 906132901 384020821 165591059 45339089 320438178 837863394 219638183 772528125 624347147 677842275 152639786 178303847 735431302 93178139 177965117 797654256 925905808 769044443 677155113 816071376 205476919 537631951 896556992 439551138 580910381 784734325 768229928 450255974 788695336 42363730 438640624 468788423 138100114 754192238 202277049 696175308 467056572 707034526 7236294 235291529 302058355 739502401 221109231 55264341 23550320 704643794 597055328 132834232 521298416 935547107 150555621 785080817 78607161 474987364 272131720 165434314 386944682 859983956 719213620 849467933 983544788 237735804 670068533 235420545 566475405 749009801 471820359 362568602 980186354 44860643 239347243 38056698 612759007 697387852 975349016 431205723 825494543 824850015 173007177 961556435 987997565 683868394 190119255 438367517 330603482 122907478 703878387 984403491 32743478 320407466 914065547 480886998 539347084 537823088 298602575 64839015 559099748 339363644 825553276 362856156 685625278 259696011 547187726 339856139 609190431 824708581 179818185 601905351 421936719 580418161 433268657 497479601 421412992 148542908 297988857 321807996 965467875 981990376 683372109 614672024 235408386 725528222 985830968 20701016 624682623 63341303 61588971 670107160 43979863 54625390 58264903 346991425 264791523 443927726 359908668 961718108 991342868 302945284 287501023 513708686 254460716 410654 601577294 240589126 837383278 835954978 403650694 832791152 252431312 791231245 960619337 276453875 137514572 917805124 765030285 650612145 146727962 44083607 906763075 387992229 375035220 706172742 377218332 203775652 838345191 637070475 587513772 738060084 225625204 547057142 592106645 947605610 938819818 356388698 266224733 385452940 459697410 842217300 84551283 19336779 628399395 201862390 948242537 549030714 598181508 283660591 854985029 718056259 943267790 120363136 451793339 112569018 861824411 246238396 371720238 647560061 267514231 265981308 54379426 983503821 995564128 902404766 103167874 743293548 15432451 980117419 442864781 374704885 556079309 971033448 137216914 794070064 705940729 377065418 175979948 748703474 774898082 64367063 43391512 384732355 916754547 660577981 170138804 966103752 465209057 608716349 751313210 347859759 485048551 713570851 625739008 817669587 140231467 715409674 207631137 929623306 358182935 136807923 706425921 496047007 277614976 983936282 197778882 378060031 730132171 182865965 850952343 533100735 37278949 159513611 390515276 758347241 561033290 76917338 603907652 696257336 81821012 416006662 362740077 538480333 361747867 477784787 714266422 377163869 126648535 799016444 633473034 560866749 281714533 317299560 876501919 570316700 327895040 838842303 531368256 684100899 150153663 929970998 131451703 132968325 656501851 870464205 844256765 595641339 166033501 312141730 82565885 816440764 92287593 711454152 690634308 709433147 287369131 512409549 929371067 273240418 175789365 654612890 239488440 216240144 624026934 352290826 102641394 203530375 987806153 40836931 655851317 815146731 430752959 136446828 847838787 76611603 588086656 252756019 933635147 327597890 144503649 296312814 244550923 527299836 362108666 659247586 454809962 132127035 358848382 541499965 494481260 155960270 331031917 788090143 234722723 889280368 538143785 990324089 314555726 512195382 257177832 946759318 310803246 724854842 395939326 537753836 109004814 461074960 118112370 689707300 459000248 547155646 935203044 230930843 822202746 851373132 53716169 625460641 887418162 168650393 171286122 345488541 432951648 586236953 923933766 702779648 738681934 574073639 479856344 453895634 977338817 574691024 343895424 822543440 986571812 596656893 360121136 191597378 813172967 983327064 432911429 134389600 367400261 942640806 64915878 477452598 900980068 981067522 341409940 995566160 449933665 561596798 713856372 471518555 208971567 452718803 711295634 422025690 748418409 774298290 396867903 541432867 266752385 761551081 487160842 433209932 87123571 50068018 260141024 175289759 625809319 641903807 360442992 351050589 504864446 227803982 556605649 583241988 243418721 579611522 369789026 273019251 472339003 186964510 499833819 472226383 186235798 538010307 398891904 17517318 184517403 999461340 54583181 143701847 825906828 671679267 42435609 654485323 569177268 713310033 782823748 167047726 651897421 817719010 457698985 655642339 635581890 478953728 25236070 608164817 384727245 6315666 224331252 410762522 978782941 528761754 140525287 69462525 626255186 704568496 287186323 263782435 754085970 422091743 100866265 210517358 550402547 663106776 727189893 218089766 919584200 855745740 137608519 5730492 207903255 403263514 239531150 793721280 281338816 244753139 220070987 96952482 68759176 194384917 947910583 736987378 369845835 341101284 625771999 353898215 250207241 100450286 377771533 651468695 158335308 507863148 60840276 225098052 233173941 506173367 719759017 27430091 682674538 21614430 31911032 104458019 631655107 109140241 192735999 795232174 885720835 562972133 108054175 600246023 786023732 400798327 492824696 266451581 156339260 29998966 40244077 313402624 374749768 709158297 160270609 601519778 848437677 173182864 453275007 253362396 22989561 656284250 798762655 189752176 215883980 452844755 451051331 487466237 373762005 231336041 451093896 2417847 363656530 732587038 215707705 798847903 388842323 587682602 460865241 189455465 468075621 893928631 233579664 981451084 676086984 476139015 862319654 943129013 336246787 987331872 166748330 902234582 940947715 411047085 896112796 913905960 632305012 821278862 717983813 80968815 65129659 794893198 736271281 642744118 103524781 752930864 632758597 520566479 827885861 427405147 866234316 903313442 107328922 167347571 908032283 866115056 761818479 258674524 653628974 442210907 12840815 251643383 185693111 172948561 108776520 146960441 31671746 802863313 495404060 195538802 88717651 880630062 410124864 109209614 139968474 53290534 363810990 633766845 635165628 144408565 997061362 858703301 61946638 599324030 141188884 371042199 951368754 256416217 142245929 173085691 37121018 10510279 388623984 375747372 30318149 381016343 502628262 514746948 980895524 38976885 232109058 73618741 237917517 897233616 214432464 654480000 227127384 902248716 77180893 101151953 32426124 39699039 249196596 374058187 34571494 227374083 871501008 605708907 558516028 45907367 403385033 439304843 828436350 377691532 838608011 931601967 860368874 113786415 538437219 532792788 350559779 462272750 433458757 759925160 405770994 165732231 313625031 59658920 283268998 326736253 712629224 32501919 413088347 934655199 650818711 166006022 561217582 180123941 930449162 757854305 205977131 847666935 269069407 848150260 375039851 561566410 124337965 11850150 268188778 845182862 511201913 592826412 920826402 598514533 657317405 349031540 206547703 177007655 228208337 350106826 880267281 625198289 938602047 532943187 713671800 735966347 844129229 786220853 963352377 860674618 741519019 452651458 207117086 34753038 628230671 211956564 437028811 775778375 188164810 465661963 372703228 312474181 801123517 895780963 741407832 653261077 489297347 454407224 114864141 991313096 982545549 927266220 142676224 676354780 196584765 581810376 575625071 220537876 515478413 156611100 243082699 574086440 910505879 912860957 219535835 852157893 678619829 842808117 86675588 521135741 257452698 659098724 579093923 735768572 930327988 437281699 860522380 82012548 810915957 175561120 280662204 487143517 710286227 973764612 223223474 724685734 942898655 632757461 702656942 321592717 196888896 630626752 429285373 768999660 640089099 197218594 570728655 792602802 629804570 682846642 76829620 107215975 483441131 417578298 138442583 292224530 893718590 904454199 934284804 597498145 481858675 283965417 770658875 316276280 681508566 21723460 666722688 323602437 187467567 338469095 605811555 351641546 397056108 443619343 92064723 508913419 916183332 575702145 75024732 822849260 506552377 227245910 52561493 185451874 950474529 938797902 798808852 844066922 812659201 758245771 101239499 678183625 432843178 956504208 819921401 264854774 40125408 954525798 931398428 417018012 297920766 772502641 585277174 897773774 206900171 36516956 33898852 788689280 341870850 619378530 735524379 763798459 599408243 672351923 975926936 1894499 467254945 289644868 633461711 175813699 65462910 116545193 36694392 950410128 836624074 22676786 637872526 382583015 504851488 929900243 835200459 994526060 517517522 549200408 291152345 598496993 923646177 337504646 197825932 228722832 9579071 352315564 773758610 519534969 42783942 300898802 885268556 806635711 711174456 155811706 734298579 809894283 40415960 925690087 740999346 438146216 852494627 674861263 460373603 922357945 397877539 879008492 978410262 14165267 845953713 468981570 164079871 417187320 886807232 777977664 328208838 808375916 361577238 554674647 570081289 348901188 387698996 86703398 861618711 639974884 195139133 589187855 217920020 813538981 804665509 353798644 537702964 571693672 890911809 867007957 783479464 927575012 234704353 8463489 176477251 588443774 441482005 661194353 450820616 131068535 52946754 524883905 358800451 489461643 966154342 49337594 705248424 861943776 509607522 34174554 682789490 803740426 690631035 59192889 880564391 914780901 468717679 699746113 545410815 219261334 223005204 667754981 446459677 75807251 585071758 677868848 493933523 321771811 983196791 927869989 852581859 232790208 271849833 297721547 88210692 786271807 50078360 880789089 82207517 386461670 966537440 969865124 379639939 497291507 613594451 144260535 603275903 988171987 831923496 29485188 820213074 587603489 811947544 299362476 430515006 978053623 95042273 645459312 694155907 545517963 200092063 971643179 704109512 231388623 376757729 10721770 157419431 605733466 533293154 235255646 864259947 783256281 642675777 676813625 111927960 318058080 802839186 278993337 454646913 913020300 880504346 165672634 42556628 281161267 570874049 251187112 679869377 134322592 504298755 758718708 255044855 685495970 104152316 543708262 125323881 59547190 316774406 816122849 845271490 208489434 95478147 902657123 791918665 966376939 795407678 729070327 336702068 955556330 326905892 739991471 807706434 974009930 220329292 529205882 711539536 265560034 541069625 151441118 854370517 77111613 706381777 382845245 651663335 539841797 515221076 67441005 399839097 484939837 118999772 70056551 574049119 967342321 206183709 992750176 307325508 81105586 427522862 381791157 568393929 46838307 594619077 710992456 644409484 598878411 498649272 668112664 145932752 272988201 970245978 909713844 62382271 314310766 43889985 270655563 949159226 141244973 674090979 1691853 956417906 29583530 579509872 669685795 241800195 590017980 359366 908293382 62430802 639329673 666338494 833940734 585615396 975567549 221378770 551580032 482365746 692725585 734605146 171091638 814149738 330686798 395679507 231627344 253340252 153042220 852806896 761399217 575487163 493384475 438924807 814116692 738321682 933302654 509659129 106709779 178174728 980539230 889263722 864292113 243579494 86001833 334644843 310379705 946490307 869995557 756035113 421409543 557044102 974374412 689459512 248394273 974639023 327062423 419508773 708555252 793321543 647068095 685478794 896375813 64703350 587044671 229912419 725761086 842732847 966788642 484776276 197546454 915416436 315283574 241704307 306089676 316670384 536795353 356111979 171177915 519495978 41236720 913131231 768284243 383220732 396058961 529792146 943079877 547708727 380861586 355922519 695176057 984849329 352654363 766751450 806574461 250756579 255056227 773336842 565432733 218250065 593943033 535168771 565260640 807161946 484036294 588459750 587261403 475445558 477996835 968284935 915749997 195581514 660780035 237715534 15665967 125182951 358471860 127363581 297129508 566724470 892872387 939048290 118487212 233496796 998631769 388368589 379310811 136236738 202022145 229404572 29760476 131396740 885022448 84304466 915437570 532023594 92849485 232303707 486924284 401889874 130387219 133217452 383057953 431813347 280296762 153013099 555370687 858057173 574390917 720184771 203355124 667978020 717341001 261380366 533183494 230771671 65242312 240611966 759275570 749344440 182668121 578448313 741485293 343987104 186948143 284656123 204659054 572894409 265616693 103226319 377086882 227995376 593700816 408265829 113190812 956453811 199409434 727234875 348159586 19953127 994200388 532702437 632979274 872822822 826977729 102420912 444849183 924044849 89881269 292649387 274666554 601197397 34594451 350838550 342111322 23892819 991098679 12587534 387470243 773689765 599077373 556098676 279270370 26600730 446049499 850058655 290357577 445223262 185576236 523635191 361457720 633624315 664114527 217093089 428276817 206883214 645241869 680704751 290157907 24213942 969372099 110299510 167823058 719038148 128042368 741039786 477445809 7991875 797589028 616831904 914127839 550443674 761857934 972469444 57206078 312528199 800217462 760021749 473787129 351923005 267215138 944632626 699137212 428413219 433107574 358050021 466640636 730919498 8007355 222790183 130144520 667607942 894220658 847599756 716315207 958140409 644183053 260859244 325641442 647992500 47001760 62396863 383903467 998439587 628145528 589825089 706550159 556368399 257845004 130895811 352977844 609286333 13053265 843906841 929196183 672270040 738774792 904701683 669543032 152304899 749135413 868525477 780761286 756243204 190799307 901905523 745112427 718475794 491936567 177129123 111668669 627424377 723032020 597022583 595068792 760927264 765537803 476417300 737515111 979532738 638617647 972691696 607869251 808640007 622609840 521347468 551246057 677513080 896917969 465058185 945493610 907284750 4026404 782458471 9818074 936936004 316847838 382428634 924278403 740583742 181550667 745399892 833446189 860315640 790443539 297988519 35088826 432039188 619731651 852445923 863890948 439947260 999400265 132605770 355367941 556588828 10661934 34104989 862953142 21960692 430311205 593327912 76267014 551168984 676910990 78509649 696710431 884281808 381198481 226305491 174918636 216999130 559199929 51458928 82735008 335577552 581368915 80726775 565906283 590896271 270678140 734676566 27203462 193050568 950555096 233328354 846517881 291639156 41960198 222769101 498714317 603598883 473507193 639698233 825161624 464344672 943955079 305636374 23443474 129322961 357934516 805527246 725541711 931401531 968255562 65257395 948698832 559302362 929039307 750188395 811732283 609012424 358915049 815682172 894539942 68530238 827162826 30731737 483077465 129117917 164520908 546908056 699753749 575781843 288477949 596186351 222353930 834658525 419336152 965651517 944304063 550135372 395628945 626067911 270044499 210988383 327213071 552226178 643208211 410269599 718958688 741984427 314439476 431310664 919597823 544269947 207408503 424510675 687680490 462916799 730018371 604177169 190670412 378075949 557883474 997209333 643502507 68952109 808334337 16520010 886030428 965612619 250022759 114164872 853273632 388584569 812654860 754905041 63430022 461092714 558799255 614188132 242698447 433167366 564097179 681575111 335066453 298412147 431751024 490927216 305655345 489621120 476694773 523380767 520637514 435849562 736788334 34045534 511688897 131699807 679154584 620939857 727489960 568147895 621752778 659140063 883648325 999965112 798681677 752284976 449237763 104332165 692623486 648041201 55848904 613953316 260468821 693008674 229693775 602289591 295439077 45602662 911825501 657966632 445584604 895787884 121329694 140236904 900121383 29433464 133689787 460857197 846282220 36415047 224628615 163103716 457186762 270875779 818025479 211528593 708208163 840332707 70259851 110414604 687692878 477575749 14098066 26411662 91861748 446010848 759590923 446496463 664881031 411744228 589706982 219686043 231757577 126663099 517092895 274659477 764983139 220458091 411466315 574238602 685251406 575542955 870845061 196188499 149989166 128706153 60684421 934847765 437192289 996618924 894546039 618673571 827282659 425744894 56349919 613350684 322944106 223754928 456297171 350737078 26896720 371206054 531934442 701795998 926943329 195288242 900078136 560982026 568488524 727437588 693389547 277916563 113993782 697411372 95037435 993851546 241101914 953548276 982837457 908799029 36826725 559625612 567828668 87444667 528076485 53553607 945283070 995533223 62283691 221175911 445453483 542645890 820704641 603709432 951559798 685181375 960044454 778965090 251260157 403317332 205199710 892601288 565473390 454370208 872228669 641503126 512044104 996078837 376760420 44218474 335605145 472355952 471715829 381264642 167151447 948888634 900910733 252518769 844848433 949319379 726360832 295822078 227384703 507287752 119414618 113548273 363192940 489725373 972288824 963444425 947712421 367665324 869218116 410052188 932472382 390138606 300571713 351739418 534136524 12156768 679154951 308516842 327880210 776970006 741164658 819801977 922016202 794434678 864914615 309221009 874042404 253490520 361558473 740784570 690925365 195299536 916248191 978110605 674785230 842957181 566254490 316424460 506812071 88537241 991097229 694904371 93442198 510168137 945351896 707400121 866450774 554854420 370711899 115290342 847588580 280426439 2011508 299331248 546222642 172167 618327270 157365072 459604531 622300994 555032920 427843174 517307440 255287717 387272068 300696334 915388382 302090989 468083739 362312426 588837885 787014283 547506204 137800517 169323117 260176507 50236545 916771322 98782294 700892984 480810688 265736591 212805916 237489134 339899860 461123328 25127994 950873544 332184998 111020383 841533752 779532137 192407223 745146777 789871980 873761455 667806888 954636767 13967852 683358775 365199905 285138430 489072510 194373911 94396818 858890222 521758703 244052812 547182538 993651437 218841533 654101931 472861604 201822431 42755000 581225355 290388004 807876815 151137407 593318155 933363810 274912963 294672615 139748803 455600553 829207089 950865841 617543435 279966530 174551240 820989289 445945901 629470038 439764613 933622363 544444213 367163340 842647113 472475498 439669738 928150936 12965248 435807512 638133454 15012959 947556117 192734116 458836345 883865813 999535643 377635281 731175555 293695529 402702439 664550194 773657585 422405228 474534872 537435108 149021265 983123437 700937767 348055246 578189195 837502929 65119080 653801471 706507728 120929785 295777115 786267987 974704336 60883959 496454228 717173016 416720157 780995210 575131655 135131004 42079126 870286557 577930253 890541767 967534843 399204371 889094024 101394905 988814769 58845844 644750092 123002038 571362210 769915340 251161443 196081138 47407546 451119267 725121257 567234439 738860472 990277064 708811586 361557877 719656986 459439065 69420513 320669328 439800104 279238435 73251585 586526869 858134971 618840487 553499318 263921319 168755250 465802783 517757010 586852896 398456202 489055287 613862053 164981083 619307032 109573120 726188366 779837638 656549268 448617875 424174566 907667014 949947389 457531568 174473934 803147862 543791418 830968695 45146278 86140192 465160579 866383708 592624377 720949463 889123648 409461453 90385363 685072861 826613635 938924284 382985548 60872273 843005765 636602132 693108211 944122840 44487451 883799856 217703961 8051148 131723 191455125 635944201 892941962 109139525 760115454 343128699 643380596 636368147 737633543 43894448 535685331 423656705 762253799 158648645 11829414 432856428 205014136 733525052 265684067 873549476 815836419 728317991 355294324 579282033 844719239 424270124 221243064 199822353 756890937 542405204 708924519 143382764 712446563 363935370 656831243 468496412 352468912 700299489 1594839 792071573 786092296 36865838 266779569 958523780 860130288 976658943 369920358 591241660 155782014 247142810 811102642 390395190 823140770 692215844 199342492 999267474 483956229 304811728 954886847 327270794 974126981 159019808 52926106 590265468 706942140 820779828 450017145 657109589 644512097 98398243 154861337 256489890 232621499 454308629 385048037 666199370 877598203 492001368 71507683 822077344 244869842 359397710 728219989 375801437 8113970 418958854 595051832 501285315 168104458 281068022 500645499 32021521 815126601 84976323 824730617 336473951 968062474 674404316 291999389 742275566 693124894 984677158 195717169 350817967 201653637 641606213 977542632 946463725 119098601 442179386 99423602 287066956 766237485 565649926 179028857 419206356 898045307 856953302 105648716 46097594 125463011 196598834 372733713 688465253 748342456 170219681 244526130 882878760 109191758 845469630 176467795 959455700 186226794 345319857 388375391 908751684 897000535 253116535 674563743 273026 750493416 495174485 766547957 709306017 368906013 888831451 418803708 177333398 697431643 427112575 422035936 391539369 712196406 417146154 546956970 833806796 616546283 904673887 437402641 339472678 847019423 870956615 320163310 529869483 47363109 422054872 512896206 181263835 813922710 824487492 11886819 780255684 309741196 302489463 713322898 555478188 507178021 25696382 927270572 104633707 475054296 174484070 521508732 135891622 620309732 272729020 217428756 624795074 190232507 95370776 260650248 64547869 55327800 535541073 447002200 327868402 908368182 907158674 511713070 936625980 734624161 327896626 941708975 249418506 472270260 76009935 461009489 886795148 542618336 663600993 599491017 617806369 947370713 482691729 372963674 693660914 458349193 48421923 78457147 923026510 840733270 678776446 177909642 497679254 686201029 782801035 587035331 672433583 365490588 177860920 818430559 40899485 365707623 322745457 400160409 185896210 712433852 257068664 644281493 455272375 898363789 931869753 666624877 288982145 671786531 780394787 667945263 33379347 779726226 535355435 215749031 686754435 527176746 759475399 985438278 795100374 312068768 2661829 495908864 332645018 473366889 869739498 710771513 165730358 78301103 704705626 319142745 39757958 320347828 308127417 261958525 354317598 554382194 661152618 190013486 493782815 476110110 571182916 172085906 930689606 705138116 769224132 754571546 909111253 687427990 562635846 205661774 519665632 538091511 450370564 622465398 267413465 956709668 701638150 247203944 526480658 533388427 124043742 375186798 229402333 809426928 223438870 194784138 906921656 798304311 806742327 590977590 547459299 177788964 153712702 734558598 371375328 633963442 644619999 326936130 900889357 508205010 722249514 210972042 119680264 150848294 451356251 780125263 664765719 889898965 544322950 512114449 888811050 453567569 446712576 928675385 652273104 308516208 247529920 914464700 734140048 580520742 958496794 418253194 360435442 659367678 846144251 641847312 895505506 772110124 167105486 84144892 536063636 351265318 774284206 78920410 234126038 199388660 303343485 25740025 321090670 778499131 992846610 53558942 584322537 823216323 621714360 280193704 502389235 353723266 918991605 634740218 871437146 77409606 17054907 36123250 444959845 441370013 46895256 398714248 472930768 787070064 326770698 568457963 172356101 241765555 477367817 477698014 368728867 923571191 600063401 97214261 500418737 522598782 355555947 209639516 331699979 639569497 812957139 701922927 889826249 226175338 134857661 323820384 95101793 313950304 947898606 324998718 477808480 495544819 183524116 985785979 817563768 819745716 472475849 595432874 206778494 276724312 602569738 381984503 607685327 184525628 82645091 726208960 251591904 903788356 583841877 4285821 567324224 979079898 668558920 343250836 287375433 677514424 918192237 780061051 107571094 85548672 16009015 253407054 358428731 448773393 21477806 177651220 369443156 362274917 32193550 578422263 479871909 170154036 451669564 13073536 927632595 844744583 468822271 31297294 840222946 961035802 693328720 747036154 497634632 103475917 388680733 272916849 752304534 957530126 30372617 753337245 287707157 392202921 271614258 413299608 353347616 653815971 861887252 538499110 318966990 960185098 68580946 150482951 79941519 283316828 546218719 342837590 424706251 448424421 360575560 546596274 975243181 204507670 236090050 983896421 208027129 119015636 353170250 495515266 914151938 316531817 686032586 283180741 952406220 659497457 901525475 298889538 836166103 37292987 21822004 207771365 125954731 727284880 971263620 801760025 763229005 131274925 904899347 982125667 436649899 162371853 98978506 310709214 93653745 42273192 158077847 995079698 506222869 835412970 607811114 245159958 419818630 148223587 754021425 787626457 858666497 900827850 781366761 70906995 138450916 53097923 748056792 437515273 396108440 653852072 373739493 68468973 211074254 917513461 289425224 408086763 95399973 44585344 552813908 755494602 425741802 502710189 485589660 32849841 939527342 828418212 844838093 290433599 455559259 39536038 154381991 250008720 875207824 748079217 585129564 454088028 641034593 712653023 9796052 717019979 327905766 855240819 258139815 192060129 438052535 93568931 237528454 43454012 684932023 815525165 279560766 352882074 316525577 864871359 724460948 439950520 629421342 620824817 180688764 528417483 995416512 781239881 526717314 269554970 150678258 483195983 662005054 68920612 554375977 494531988 254930793 377224189 722421182 686678733 711876582 868007772 23626399 6544664 933054830 537608616 627527762 285627041 844266485 643883965 578691472 743612816 431766649 879804088 419131354 581584060 991592330 896954109 405498770 547009634 136984316 936663825 105082280 839825775 866868618 335620883 427711971 42010709 426921031 317425886 572653298 956311653 151840371 359016857 600634593 914988690 286374769 638859696 529655106 637669758 502162060 153717643 908726595 192547608 268108223 593846247 535652217 657032669 108740979 855466176 10434301 127216501 61020611 728854002 722710268 932512482 156812728 535823755 474332289 904803552 300964967 745233197 58863386 23987335 101467091 87590647 797409170 872458161 440307253 709181203 519390776 139332321 244622847 648940153 541400722 170512674 895505573 99914528 557181151 724832965 519103788 578915141 618335194 410317583 342938523 219792292 160734374 486201259 276988313 458448335 387988673 107328929 386647130 25889045 74227841 202899214 582570691 559061194 980263682 884990447 918568393 93009729 452022427 766815912 882620200 75137144 980631751 995692532 637805614 298126010 477723647 360358796 147751694 522038140 643613441 772468510 27237941 756492589 330937908 334180469 272028988 853235577 40526834 517832853 406363305 420535481 52413194 986395194 254291174 365568087 354178662 94361292 3913459 934740807 130880103 421833425 833067932 768213974 357650399 93120761 380721182 411112320 670603416 501680635 734803756 57454583 771896892 148536669 142743053 303754411 442497388 269086383 472769795 586273151 275009672 608559043 655135400 925093159 306259663 457690509 212264246 172713577 915121016 228387660 681803377 377433956 999179946 721574000 172334422 281740366 149863503 84597279 104327062 132768255 247100782 292208842 919380607 290379882 395891192 727696545 364817897 804088664 331194300 724305772 591858742 60659189 878195901 35998827 182653904 395875268 427822779 236195757 179205879 963061363 518419462 897591859 639659773 218581510 920879610 896555321 354303555 586053966 848781136 446341791 342507766 587295760 693754151 735710079 594228765 525497077 567214280 676969253 787079669 898077762 291672092 968264828 614235985 928034363 726943977 934328336 605788621 373328184 588043711 820628728 895765407 338356108 848004608 830390877 338212419 231848085 273765013 841156421 850241167 304410668 586384595 894572516 442877893 146269499 958541602 160257886 857833358 682434887 115421125 963613578 45051280 401686142 233390267 368466362 878502695 646460191 968065996 57949117 59946290 717360993 885426619 975186903 218692241 542860731 404073217 466147558 129821604 625150819 450408284 874371072 550888640 185957062 554952782 847327581 169299644 221713830 889114659 986594221 244633655 68572833 749830545 877606756 50474291 594275733 723325655 115735683 213144806 577898006 234599808 563336245 503218800 557037634 213371311 463600508 887448367 861151239 929314184 995009615 527995857 94403110 643081163 714359335 617667029 976375063 745439830 11914032 42141419 774069141 434612574 776710568 629706970 725550908 534073162 708644230 529534519 544396909 790510975 63137232 354084505 182551618 370988641 465713839 539583125 779215897 726942558 791356039 446994962 933761092 270928997 854782243 997980540 819392601 430930259 991768833 75878715 945597775 296010400 367723396 387752718 297452447 541852813 765812602 409952561 650328908 57800408 877836875 429299167 680596879 644674951 430003129 295445565 174377354 21035153 154274886 437828719 940052170 750373002 384671349 486437348 590975950 608895207 944738742 986592003 839399728 126620816 974422428 562877976 556398482 884327825 93982151 450911486 600252075 776799801 390356506 762058226 936784930 411512316 590167260 983450058 167719245 167303961 78997850 732942914 846671702 687886688 179848886 951453383 126589421 145257536 774485347 24016752 541144858 945736072 604522678 260546685 579000439 448079433 836342930 889162242 234444093 446975653 391941029 932460033 198638591 30728819 663577237 506934659 522475562 537933572 844713479 140338734 812017122 967776761 159591379 11983741 292693148 62034878 90339977 529438894 37399177 11360607 166501299 556909870 195867006 491463349 246659332 708755201 521905730 293792210 17915178 55075393 959445756 667199207 22887115 824379741 728078738 24548331 908166411 839715997 433631520 253600709 972836576 195007846 547424734 968228215 242635290 234811445 224350180 809945111 567417487 353020940 451570952 113903234 795266269 101681415 942039791 83802211 506723732 528399693 768208562 202944171 881217698 860707658 55842415 869619559 693646322 403511348 326891847 444669491 806245598 864822705 562268842 196538970 785189686 928395309 902548042 737141167 332295221 882438817 342883238 378764709 720465647 966031154 584899610 675752941 699119689 3088750 649164292 460933540 737580314 889954337 706797732 404215177 695422341 409468667 250807372 545299041 38387335 811663643 639601840 606293686 718319044 329182364 532582189 86020252 79489502 625950329 378586006 205813441 247356959 573938669 336843499 691086824 365458353 556502535 925610887 713235802 812961314 642795707 389695878 378649710 303421662 874121183 267846479 238043058 27387669 168420876 664483049 24916001 10905581 697160010 615007558 448785930 493835066 238344073 393943164 443343855 453577816 521190044 443001066 870189243 127238513 861154644 153933077 903935120 72256441 601573208 776128739 278710859 426372999 938767199 164679803 372073142 641318143 9940740 102795593 9641492 669710015 798455372 897649566 796466530 481804704 977132533 184858716 514645624 413225095 808832269 484523850 942191551 485050396 627684167 591089577 574554137 81366059 718345885 886536815 497995698 958231226 39244110 44258871 660055414 313138110 768526621 988048954 287470100 827513188 366014896 124904007 450656783 899891252 852059423 165143617 587480946 963729335 190838537 476035790 445855373 646494870 51650394 391130763 499489531 90046126 395193663 782245282 337599155 359948649 656341739 35058521 286325332 872667494 153105849 950985272 359023134 745866500 488984175 14986233 663149079 344348816 149317563 61705762 413784679 617979046 859770347 905986923 194601820 916184887 363766802 940469115 789414523 552150705 435599125 814428893 430569056 362976302 249909437 697795488 980547121 213656000 97643186 30119189 44272484 330235185 560303821 663691799 252485679 906576392 605633060 279513489 481911859 910398870 236389480 511039549 285508553 263322395 973412921 568673915 2304321 2694409 764027819 472353138 441791 303529854 263897555 934762256 586007342 304740058 40305277 970543223 592072151 647497928 394021413 539293051 378559052 19532456 502114451 43611263 539528128 916533408 351432934 490031888 395133844 21660835 712754464 585934552 444113092 728546827 957697531 126976419 111245904 692875655 431773691 585851174 225865934 882963068 520144738 159320645 259809251 763658010 975167921 484279206 437853640 712216656 638893171 894306953 758627079 252615841 772636228 922241347 888424432 830621595 525482500 486711767 909653626 270742231 135169610 752526369 595636900 287896728 173837202 882545836 139603430 160066394 429748818 224946744 455512300 785720770 993561668 396518833 14123802 458481596 656183698 736018712 395240794 344411896 93153781 234498131 703664896 886693101 727472526 955508700 821886741 12444093 852976429 365734835 464026885 548350771 85093277 283538188 603300844 400014450 168215879 668472533 70043842 377231947 942426540 455283036 731914858 908219626 83831512 160484920 29521125 63722147 998766480 532359274 22161983 934942040 930382954 601441081 836945846 714589718 912920038 580125301 986553989 326659593 58298061 178706650 59344069 720974571 561888886 667066107 949784724 53138146 396354316 177066323 389112078 798870463 784718965 319095611 621817001 261567428 684357804 875253388 732728182 414039283 95129424 15807570 154883587 899823587 790115434 735602475 796134347 885966192 997832076 193820410 771304127 637948500 80859871 397101574 533393290 148677940 429887263 977822121 709694453 985201748 339449761 707467697 195301420 88768293 979096145 929891081 857624259 889559396 435964732 871403003 965894248 257297179 617040603 592762270 954475016 848280796 167674368 955082602 984087760 385414263 503369 896079184 419585696 282307367 78269198 296370978 548689476 999794224 915925605 79266550 526430749 284770483 591158079 206809089 472527919 492167328 527007506 834448112 149955788 698229336 335719074 692356566 993886746 642332791 3839790 333357825 822057818 340038742 377715474 700688255 112664929 230898113 658426928 427142446 409725407 710827684 577629493 177998233 72134201 428799890 87214726 942963333 860267045 70776277 675951309 319598041 727186170 611528558 404965541 771707066 711527242 495443088 219046361 656500702 230463299 493610494 208088982 38821605 842574184 246031620 648049080 13404555 361711622 349375842 446373281 50416747 893857955 129243671 379354805 322506423 702889656 248382247 213055993 247237186 127241858 418567054 239235662 50337353 770410128 27752770 763721562 349973769 324643368 416185623 589210167 909148397 598568712 338317998 655837299 555017272 920598284 275111087 553629155 982080169 34980035 557741138 564874882 690955046 802774314 87911325 272401221 946654848 78297903 57497323 953156506 52720372 160636139 474779433 436330919 127998593 167138124 636648632 774401624 597071105 359034045 582766537 476575973 809480501 860772722 591761174 190043571 556497234 987895254 648159978 891957441 74347841 549537137 406707264 195942518 44304819 865561384 879465368 192309606 187505938 676822752 346530845 728444330 4793529 91040771 910391818 251372593 916166463 145684733 134491300 388078429 421898488 778989087 190757017 581259245 227020383 748104014 102233509 856523089 684887796 946883535 319035564 842151367 604822919 416237609 998712641 738924763 524547307 669610434 791240516 702761439 893341277 507542681 95539164 72620627 638552486 90186467 577249015 553165492 641263732 386450000 809012361 403026279 7792391 747265735 866666842 174610968 756275134 855773600 19575897 746077015 869626703 192985599 898007500 992837374 307492744 727387914 738718685 816209566 93742919 19876386 641188881 217088201 121205901 540192328 64925407 870504944 564196702 583160757 385347781 589473557 364998038 317088818 367657642 620994213 639267685 702937827 451862850 948179374 593459096 606745964 540694222 495126946 339728372 132794753 518274291 703034976 999664337 735887203 960322688 305058784 594071196 513815731 858808127 778894786 310125611 732751067 556503836 884058029 832613538 593761706 914947724 196366836 884521574 961264685 336902590 894006247 953101692 862343758 801123345 74814717 110503755 337931705 151491681 38558755 271694669 499586176 301339242 788167998 663699163 944206275 793214427 192172026 61087562 198770393 914894663 310735814 248249449 935538178 37099413 752556152 986088729 92165866 467309243 515613416 824356970 621270240 343283973 892081776 574296712 981147746 370491111 460393383 812492458 483949617 555116632 760181889 287820722 278632611 884208534 499982267 65284535 664147601 499115105 883866453 774984528 333605981 778021901 330440996 257955433 65873917 9430652 124071399 199076291 377815230 208239998 539344191 888646724 848281302 107431848 306878373 431361160 474114250 834386334 104488259 457604690 815388630 705206147 779393683 369098489 776217074 999795293 137568607 968345035 280009299 236098757 554350169 395966825 840634227 910367628 105333154 5214158 138864215 57462432 831842544 155665173 131290742 604334491 454937834 36963069 868455976 404060373 640473281 848370979 736301291 168201380 997046657 192651754 281551804 105096942 76444921 423043699 839493916 357498755 788284223 639805923 189191509 536831598 990908177 687283810 347952305 168908486 585617683 772576927 179101772 137707394 926331550 304258428 465829445 199275041 17836501 706684040 540306239 794961588 529281174 596427862 174119639 333004588 422184825 176880877 371885222 570924946 956614871 320005169 345723316 941862739 799499076 21176884 796029381 323838165 976361860 338755954 263646221 214953617 147480675 184052475 291444736 905354129 311394545 863530033 451125572 92424812 257615024 75103389 934981512 151533498 836285102 282525054 515769558 367016629 735172178 33778514 872876440 385374279 387892891 826361672 764981518 815043313 375437416 876824965 734449573 282448151 757305482 451124281 728903055 887711968 744534 904618308 619591517 449568867 919866497 715596007 896414548 485522381 161147090 672401047 110793328 48083157 69605791 959569282 220297513 444299794 81000972 756720672 447139354 924931725 252295908 263621730 222913572 528504319 764778031 952202883 440398408 306676767 931709339 119244142 17867245 386480097 93380316 320901563 775255015 417481353 905031688 975054264 925471606 163743700 72398129 455060069 22808412 241479609 381616505 552507427 449214985 550037193 177996389 516804240 217673790 190381118 199896041 906598109 514059922 187963155 811688092 260350404 535321268 862729618 168173649 12671674 312096247 950987190 38594385 802693180 997322576 818074085 932962915 531517046 165376713 174427662 456004040 842188006 169513989 896213782 522995981 316992709 722992698 604717528 70475562 628782522 528522459 982282184 119369064 360799596 8957447 769749740 203356755 787690423 449585602 918598833 778191755 903040155 763998669 671131852 676065084 745056103 684601535 946307528 904379328 734259012 270008996 673520370 554187863 162039767 167684502 160981541 450895465 399812147 210023992 554752993 346924392 45389071 672890647 907761662 989099161 208496313 315561231 976184760 153826412 493096573 190891502 202557527 429926523 607942353 211557085 767683181 896871627 813646734 386477558 465384986 628749388 259218783 792211037 701984128 678746438 451352984 475868661 712596775 958883583 482895749 574394117 142433930 587896831 153407588 700426908 650418527 433158525 707931900 207550255 590246225 262803981 604024281 311525229 900575427 405181508 84711556 910142885 909857500 500352179 998675878 580746662 90448978 483281073 776563009 415716080 169243977 1016676 946178053 513870581 896431193 481853695 802016538 30080259 702859362 907396444 866551332 526218029 120464843 229223067 102191721 702566841 153877148 536322632 5142037 884144132 180802393 742452294 404300221 251658984 288393400 728586618 677130445 769859751 345210592 464443431 239800039 262709245 112511010 581869320 274652757 162071133 619110908 255841038 817515445 837736858 948914871 799099426 703702545 574185173 21521726 412591270 40771065 511251442 925700210 404533666 418886692 747892833 942551062 322299097 819553501 965792113 608656726 153251189 416592756 107070064 711796091 503264839 937253529 612395417 98810089 397060655 356694160 681966344 187878216 735724817 218348263 215080564 235674199 991988553 856696512 150289336 832037916 193412843 351920038 677831539 194416533 263484442 526892769 487742244 933386329 242976937 480014129 861418116 478653271 536281647 518695559 297611739 783458076 844242925 565086202 863454064 611166359 215472711 72882941 391744283 862867185 302124284 779929077 93880282 805564098 895907963 610367056 897228418 975938151 178440394 452299743 700368468 322428834 950702097 828470634 392413652 723639216 959271827 507321102 609877819 341593320 27872896 370956184 799122661 321839311 112447411 808544912 597837433 3108600 590066752 298590641 314728970 273977412 146927122 708560075 976655612 527610007 306619172 881097006 100691307 823972827 238415390 518699970 532008785 267432838 320410989 943561986 571822913 281847086 922886053 213829517 710746994 463234961 857746033 194628546 100502655 87587427 719172888 593672245 739260356 711713560 42882925 249989559 327242947 208632312 612666114 497843907 349190657 403000726 217264519 881527749 164342401 979523470 268318308 133173436 675924038 405121683 968844335 193279883 970312362 808009012 46145541 394698590 491870147 532576338 151142062 766527359 231633596 278932188 213384179 503427787 271250175 305149008 989761804 459849330 629415660 462903614 712907381 689334817 166159938 784398152 605683112 33389240 539253329 72136655 121014345 466789873 884539360 638783188 811924409 727544021 814639914 402172015 707286868 909377664 990443041 74131399 103742784 906078084 183533232 320297998 134910769 184405715 264679959 23541841 534714579 892369448 101830690 572968113 574269221 468911499 93474725 151107795 960105584 362445973 330178063 373809343 347412838 673730815 70648481 863949688 861241786 12831188 286542195 342755591 970562900 22625643 705811875 950866062 782986891 176582713 762591331 744924670 836449385 779129532 579333205 575304619 469671877 454780397 559484905 196973088 434322087 190585666 856255023 949291291 229672543 210067378 922491598 199161689 392251023 19318274 573167491 32008834 885756782 217757233 228470860 292163109 285027391 457092450 773624271 584556237 23054311 430535524 705846628 533770966 765908262 653633114 818621627 611925985 932420846 191962931 710588245 630051480 732636469 473546446 732866124 843368091 43077953 264413071 237469794 173680880 510001746 700884537 406508481 936649063 402062431 654375564 957158023 406677879 161478682 624690517 234872368 619781439 634794880 842611400 595448692 139751236 27652008 650617638 147971806 961770786 29587397 930784447 394211808 375125687 814036235 477079722 385447903 439684305 483144353 452872514 259793880 195834289 952923462 791410971 994258943 332141345 689985936 627476680 182943801 985703367 805307022 680813376 154286996 471576750 522686973 925957726 319305247 451785975 390010235 249304595 383360892 704828071 149910932 907397347 557631676 416611983 318161484 78195469 200632258 981508529 204846226 290154965 219484732 49229048 445378331 30457674 947197891 195805187 822294731 794219663 879882517 335655476 61198930 969394889 986971907 393016410 310616997 67357611 112085592 926098982 266939363 366802289 375406611 238078634 920571788 803148229 440433699 653784488 106988910 953377917 575053461 987343208 868438187 276388205 428012514 16816068 684436529 630973220 259267664 920424741 122343017 894717205 780165789 592223207 448299807 105490130 404154614 748808195 992768284 714579732 999547287 625460893 194375053 224294794 803856112 680652862 79918341 220377142 731985923 408681472 308289680 153478309 854514808 163833422 868359215 793108846 399576891 913284180 717732649 894251670 443091003 804451553 89579088 264403150 958793813 19328443 273908095 27836723 845563174 835706563 912912928 282113132 261009626 855900989 589254716 689419210 729659752 587001590 93909356 606488279 801147808 269412227 423448298 901909064 577030511 723190612 8623755 574252270 107512043 360232969 688527493 143030302 260541149 104600783 528324863 889480353 605357391 945872791 604203790 496222160 197071000 690196577 332213098 124882292 603032175 756246739 919695839 35578972 71258102 140118679 851430704 423647938 109550957 422093457 10545253 342247816 673114783 985290072 173083109 955626332 744423887 75329177 521069181 259884777 106491395 89424669 172180068 134903551 590038021 283637316 35510525 786395461 14943691 266292946 942797370 22987108 839500607 575776178 44695144 602139362 507765216 666770307 286882126 561355342 620963381 474666024 41438167 404276255 320292933 371473289 796259263 23399931 922100415 152717695 35097007 899549970 610352220 719304030 812359287 768639849 887966939 344739461 478892354 915950918 6523577 431547017 164002632 111187212 620593655 272115081 48509248 320629709 929976156 228165022 361656035 930119380 12128493 982711626 272826566 541017134 384772878 855625028 255449546 397877906 20347798 697631807 616722586 78696156 314881619 235169630 595014706 726094448 401767531 674973238 977537517 643737774 467584042 821111801 758187847 233064384 711997435 558277197 711114026 32495593 781478439 159088436 536328017 356299062 694786592 600484866 299031628 137844450 131748691 757110221 256120487 380291228 131098589 962302023 890348417 843540807 4387295 569670011 954208636 578105596 565509037 95114482 567664199 207780850 251579199 665679912 725480701 460291915 813271598 635373745 417253054 232379752 404702328 290897683 80522788 328902021 76205413 360682150 752227931 194657365 488346490 822172191 351729846 97989844 104185346 781994763 406041335 491826136 957433617 305330942 563029100 426801186 908603926 177267296 793482792 70620982 5676969 890430501 534612245 137552609 789576671 144649590 972844279 425728343 921334201 777241790 218896834 752362022 181685888 826782034 717639020 402306825 521500474 841050709 766251049 343106783 37436949 60170298 125699837 694657757 485286340 966204330 953499042 844551071 628161278 548948381 743904660 388859951 911929053 203263995 635602281 563481240 71789368 880179002 387564271 51208792 249882774 421918670 339077303 745138974 531138414 101538718 770230747 666264452 355072210 83068792 315008057 388716428 506920282 156066231 782521393 925876557 860454092 900039861 437878704 735599932 389851121 418832223 440899896 373020069 369439407 839339739 730042657 234560258 36265087 36790431 333505854 673632216 16560487 963442580 128325082 64577797 421949525 483194529 14626380 611534252 994113860 563814729 831882452 544361770 508275722 154438186 777314632 466573161 89675827 307699792 193403467 344271000 905419513 739161088 227785474 303885495 590508917 582283287 985633494 686876960 922084623 449591523 479996801 177296666 631404070 397408396 855428410 405468278 884953429 195928021 134751987 870370831 796433976 413637667 570759161 926174021 526263549 5564922 479831621 606043197 649975204 636970741 7167617 653858809 71290680 716867010 314728246 362446541 850745557 315895756 311965048 221754160 36614449 461507075 433329714 401405108 702914289 778453863 391506563 493184498 474259238 207552111 268280016 935863228 875518079 362328023 704586159 144809794 304543532 113113270 173611034 586166252 59522358 666269954 144209286 631925015 206411517 516390751 527058968 425374288 541716498 200961952 822174714 584512341 176678311 631960216 647170955 600446892 928488704 509312222 298363286 967136256 663967294 244201962 325515804 390090891 729813555 623838942 899046850 498364743 222022087 699167785 920413085 275624592 637910588 389048403 541678441 346755242 794225454 638103704 596202398 680511056 28565070 790576725 493909188 587207516 388497110 539799533 412319244 595897043 719479820 480999029 979632995 812771644 871157373 321606496 68281679 97283890 675449664 904154413 483420436 792058586 60075411 123230082 195277883 133717182 530266432 171424704 760794662 433645157 798928681 120466280 781385938 983622355 852678239 222036055 621751053 198299742 437708326 872235642 801274180 442990805 53753912 502761228 599517312 938283386 985444029 676872091 412344508 106226964 630020775 281340706 987660232 71216346 134417351 521685322 687254487 85603345 99103280 365987942 409798893 485483381 996912115 924012275 664586374 326897425 520531792 28629671 584088921 541753303 519999333 201283524 928000489 509072829 653105092 656908406 817550314 200858432 569809522 961831233 34245221 924255713 103682642 689324534 806907528 33801064 966148887 805122326 297965077 184120996 603604271 112370476 866955826 365678313 736902325 947116499 603188658 284014248 696114606 203529068 454332263 107456975 300178180 935863042 266097578 818308904 793842594 509337735 663122552 61015386 824802271 324347698 928637883 927518388 547729842 224079474 401142980 643323736 957267140 441202815 116146465 981681334 541176196 863666527 521065541 157423951 328454639 761271792 187049425 390389114 768717297 899060989 323191612 646489834 848706150 974632054 644639240 333192298 247163400 72045323 187075491 919550977 903307033 541691446 247208342 661940750 854581595 605142346 973036142 320580884 654348372 638400231 426989323 124835964 976569746 416576666 428233160 957782757 230285199 224571470 519846538 684227324 179790711 831215377 244924615 739181985 717627212 779492341 822409756 103583983 203892518 422345146 782533590 750202015 763269223 850113340 811569816 715915870 655525473 563577687 725205817 441924882 537912806 961453019 678724018 773115910 41578971 220918535 595445740 601120112 662676504 380051607 495959708 918790300 834741355 10758337 128589457 146811173 727857131 11165652 402837001 605667984 511608694 282625852 658775914 419686294 383232640 355043637 777850728 841262761 900916983 353770191 441445687 919253336 140247146 232305944 184663661 550198969 547833856 381209920 993648953 318480547 537370682 417835798 165195628 715913764 301603636 920596338 99860668 787502383 81625176 399367055 259439846 584242575 576671639 463064088 542304309 195909590 110764921 543729662 648709557 448640071 948763486 471044233 366726034 408516051 631833581 679282020 298569551 434224795 28213325 290343149 960462281 921216162 271185893 673812238 411434008 251021930 180385197 598694814 108046810 660374810 780772309 607905695 606543244 345423178 619055608 318080761 954531248 726806506 486579248 131482072 699669995 172381834 493592763 893485529 323580646 90783349 435218148 585728045 11536011 234597379 50941902 256519932 379398724 780522036 748153229 231100217 784946188 321274208 858419577 605056526 505410411 630545241 361523114 376145338 567642604 513294848 625363737 568888731 753511590 708786485 222258478 615232621 124890002 791355272 759621501 580517528 30990012 923430624 544891393 411392235 454993685 536957044 734874185 603348678 669303716 860670119 265151747 993432942 811114444 191273480 739493822 568404574 301568967 689143405 369312176 744955248 218088262 587250858 496087465 681931675 789409469 751522343 351829333 280947340 351834814 667320332 823394798 672442904 820201037 74641027 76561808 878989681 58579441 641491283 249204530 483150658 412535686 906817017 446844572 16305822 244865971 684405755 451786435 551169318 527893535 167646768 762888800 403633346 220530216 343657081 791091794 372119059 595539370 374627936 260670915 40482069 484522600 441497752 627849579 379348148 196875311 113398376 679337951 689152419 502292218 695982128 119043602 448060095 630390108 137705779 582843087 806481836 996479188 290097301 926628919 783435219 595861368 283495468 387518329 169095167 500529407 633424556 121368528 449149168 798046099 48840465 461069093 528229202 94293640 448772324 401601373 22992625 868009133 482459297 729074201 910762613 157036954 827598226 198138706 909374952 727666172 582262831 951862306 124808602 364805252 655515564 395689825 230588591 355281149 191960804 631921323 379617962 824925408 480498359 928453528 211456372 376653371 717982231 976473235 284527315 688699744 10472980 251667874 519171090 549985470 742892436 851832927 994066532 328018309 462718535 658819198 165992260 837273603 10242032 347598123 124618099 664197591 841616638 1767273 500823052 245131515 85331106 882693878 170777087 404844841 837069235 121143288 402001682 828217469 573612248 743983471 440229793 319546490 537044816 160362679 422634155 402995186 874644067 957961980 590484976 322682227 37078332 941631476 85504564 54110276 798649462 240995618 381606553 978388168 789613005 654704166 51101806 655403512 205802459 730957147 110758058 114754988 421414435 866434435 670185960 924201682 507407291 352415534 723729884 461754467 37051667 254954021 243537799 395882999 549726709 792678677 817716595 969592271 835496510 385713011 577277005 505400024 78530877 622725833 766118011 707648697 427498389 304555695 65390556 436480067 390139426 269166237 448046674 580631965 726200644 973740238 484292618 115394694 633374867 606764158 967265300 668153502 56530176 457324080 345357165 840911352 651407785 183521833 155844805 357112448 194337750 506894719 579738646 10245840 487496989 274214943 636449813 32789620 886174862 830928178 4033177 521934931 17961691 784095490 450474667 467726927 627546176 506285186 200489197 795383880 545671417 550504703 116364712 891758663 20954190 840874462 216031211 60508820 208339641 662961873 867151766 239128223 234493235 663903136 718917083 777135597 707814816 486181170 347297860 970618601 548894853 753049989 477356047 739833826 921124509 563368381 84264658 797068333 640556826 968936431 251861468 293477841 887539452 216811436 997115587 282372027 451461213 732366438 906441879 377416150 179172201 807440386 749742181 914274640 101389600 916345391 55847927 974357808 355639568 805228645 949978281 168985381 242328636 681698647 304556103 626864330 201296577 940347158 684879540 627366166 393808468 800807111 545493098 709437148 435345169 476258918 235527965 298993190 542942406 543279650 960310516 792300172 775133114 495817712 658916195 954590538 246110568 290000208 280576871 562417862 523568017 900140633 87001581 791503388 969429125 678671831 335664766 108364790 927925558 55513463 260919120 684299584 895325829 337824138 914057688 356177119 958819405 220628354 175539605 681591943 752188484 105429269 390652860 407100491 523026673 371879097 732822396 197288129 255865538 913086246 372975001 517592442 88764201 18883864 161139043 426715420 56833993 441841319 246171962 881846835 248497069 707067204 845183130 748232371 176340078 195746938 934920154 18930112 607328830 503367599 171166942 510319661 29763182 179111628 115558455 964285283 521518866 166319359 42643204 530007901 673589048 571346876 309807773 707918403 774995465 201167580 532471835 596615491 828697958 166003988 625466713 776356310 673369275 805460395 372219230 635864794 798221926 596065209 307114465 90383105 156492326 897290500 128809789 293777596 840543379 167296008 377682601 969424520 933821999 998205796 515393345 132467158 517615685 132051152 35213993 486032241 833050080 985932543 372865358 435853210 507312546 811804136 816791654 87676102 264311168 493281791 787611877 389909925 727634266 452029239 692869912 94418649 827923425 613410713 581060071 609185209 619075507 50652662 338791003 89575909 572324405 723947833 25965651 121042099 114526168 637093734 265025075 28242785 543922130 333828626 239152530 708949714 508593768 806127546 680257570 227274249 953603344 764312735 774673967 431973771 873546860 615914152 313541584 732384401 994591108 940181177 975528706 441772206 827422206 486695009 61454334 438419669 420258293 689366230 911783590 72012585 700085156 826517120 166175882 196822402 793127530 363304088 478630200 848267375 824642854 635764382 233373623 987000286 936557737 757669769 491292679 192073768 260089189 130484782 546135413 293982834 282204860 540512815 114705979 193326321 220195446 634489292 87777425 750641848 700654307 129072396 455156668 433915550 706156687 763343482 280612510 278362855 546129733 496440746 546381350 462839427 499666076 376981046 590877774 316352216 47883110 688830473 417681677 941450848 743291796 229066072 886176406 147044486 452912766 685793707 603175725 183012389 106065609 917278365 407639682 173448137 952042511 858246494 885284708 389432709 102954209 558642529 268044463 981350471 859104347 693367506 549735560 931283383 838276336 92785517 956983324 868520210 121013256 82829518 425446347 491835387 910630569 183303816 989358254 736870229 634917419 690662999 55719604 434073027 157563493 384056732 231671067 334604196 247742380 688161063 317776766 911621803 901091984 745613256 96900941 841993852 20637288 931410211 872009480 331181298 724030165 98812582 774971471 859730362 179809020 720567631 809487298 570525476 782397241 996993368 106017864 744660672 185311314 541437947 19688371 89048023 533111120 945548035 575928021 210336789 323444854 666676624 381616762 583257065 790333894 737652256 33054700 561727822 494476445 254196479 537512314 157189167 275914672 984184018 188387733 807948678 554204728 613243455 296395373 660036352 253851031 574016293 988456844 587190188 623411197 971263838 485921535 480010796 246725486 946316236 92281730 712692164 760478443 261828245 763781855 763077841 161563568 982086087 415459735 370472712 542934965 508024924 288492265 498924217 518116060 212644478 729907057 847066173 238100265 283710706 144158903 838868908 727414025 108855421 619971348 605202895 944211330 247993532 948744711 655357836 997057376 669463889 659203715 250403379 941941591 898645865 56409258 85196237 213794072 390786729 672844787 312639754 955541574 272199966 13327578 173211818 157870989 888130160 764686204 704842146 924162688 569867525 937730409 897707347 994569216 880780789 561007456 675745829 413337914 601362847 291319717 153620801 608257080 522371309 805366658 546056413 702380703 450785208 657527660 84236246 44046594 96797983 609469234 168271930 473506295 818764829 127172228 306860469 911809473 368148461 143290472 738125206 556404405 26234106 624479253 563389886 695138905 639297259 221751839 678452665 419831394 449425955 400810174 375921448 33407425 910902666 992060884 410533826 422977956 503939601 97315008 586828456 552041061 809468121 476600934 454394948 275017754 389752611 174772247 234246789 189471292 196688700 246168763 211586002 308078680 370851164 750950784 846626845 485743569 543642901 908767309 315084828 7435744 162298169 307507005 167298425 297817020 669729174 87679707 379370910 117083078 206262627 556700059 402778152 873054375 629703180 622736765 654035264 794248335 648521022 898416608 175054465 363000609 522440969 999801383 137901914 288373827 215398821 859145037 673537743 320250515 283026118 936237109 610083029 250746839 478692705 876186605 101649560 863188866 174206243 778295955 886064518 277985179 470388504 544035299 737867857 617181942 451362428 650514726 753496019 48004779 965964810 690787857 421237215 987966619 794300179 347476051 57581006 925771066 633348394 770351069 322929969 359182274 809735578 177243472 461009277 411393130 850152231 381135364 991096974 262283346 109202576 344004263 939539597 503095635 719270318 627843985 496729809 553320126 238979881 900936455 179330544 758616233 872748525 58637089 442930409 164818359 776576321 604059273 279005693 541126160 293165427 869970122 30090791 918561153 991777979 200943852 260161271 473066945 875745027 741511775 283118331 619127709 35858662 962381555 177593395 748641631 466666402 833772430 380212174 635415169 163806887 133765848 600357153 896605148 267957148 218438453 561298110 112767183 87628802 77519734 791828490 559859668 547676678 772169400 802149248 108871278 999700390 904405163 9231333 740188402 928930350 798746654 423636235 937281373 641294743 490586936 618125019 651751322 927375055 463517302 316715724 416736705 740895351 916644969 193628005 367584917 304196862 63468518 253240599 347558227 926288894 836438431 613925103 744694234 533408697 638984982 201943282 342710856 847612150 470819150 933447703 372635437 93264139 612155747 811998044 552033912 572353322 294733067 964321406 686441446 993513565 401125231 931765773 215431821 461998888 435319498 619393803 478137101 662756915 965698983 812913055 294914893 783519270 153246595 449318390 111131779 152600527 879976410 832808192 822574898 227290010 464994007 573782809 701630063 314827208 769692518 555814531 576767357 563559414 164824349 375995697 925804786 934093411 677744895 8210153 887197341 800361494 181419432 706358092 299879758 80026982 457441359 333559278 994547510 614418676 327577574 614888474 928436674 693004516 607585107 907860319 979297396 852295001 729453452 674386704 121620978 523763664 923940826 116290319 20328353 990688438 470442657 882880852 57104571 603593402 834912219 968871170 524268139 365209423 848432153 896597343 649932763 825031377 115059128 927466164 369021329 548712420 731574624 586221688 767388634 100883625 502114508 169603466 441787954 340937822 119689457 416895226 16007090 768129925 21435806 680849307 547915567 409761243 420208243 613415374 133013345 703965101 906122393 836223947 483168637 471900812 299592265 888449930 729682933 718282523 265444937 727658005 427810710 473458495 949712901 20061858 334590804 726629378 905722379 249778358 961416389 850007672 265100931 931621560 332754574 9492846 518185811 666348223 637378561 224787713 541609801 657669866 103956732 702939911 532329852 939810646 854896558 422670377 150235220 443096174 176553136 247583040 718837738 70774180 781068035 614918243 153387776 127120882 439388872 215596719 285191553 96727107 210739063 745157061 391375812 47185188 673197656 507261351 566822408 620460974 578444012 580602961 462526993 791151565 263763058 638045172 396832208 745424400 473398545 532813567 510586721 632853351 639432074 114231567 930618245 318849033 449306774 43226509 791405330 264075975 168694179 89378791 609911869 732805801 571062927 157469962 352931710 736119749 94998343 710876070 962127523 262739876 928602816 560868920 133489730 204362776 66866017 134486663 181170263 485582484 626700260 335369692 879266888 946139640 398879482 814326715 122949021 887847228 44319587 665108349 195809174 610617013 626436942 169977427 76912076 934904837 699602808 269034459 609164997 83243156 591535188 450888005 23068701 851071976 805861358 69241135 649690 581249161 525929185 120883183 893202951 998154499 222975528 70488621 768021915 513832408 156390692 768090341 91222349 807214873 769473878 691924389 86404236 200157308 724932170 293415975 280066854 185126734 273241975 489178550 245003902 802962058 665624968 602785758 900987445 859993233 463598207 597244975 929707030 791395133 543791871 312798580 647775498 891622199 287994172 584467020 697025934 625034620 320449193 176063820 214992624 844672032 640898235 104745177 177379130 4451017 662803260 779396507 636930730 107254911 961943369 19857396 627462255 86899334 418968934 561745216 146645151 398708561 165224662 551126183 717821528 930991399 748122571 873174267 297203085 452103874 338558302 577653247 578480807 153719057 798813198 226021381 751186063 420492569 965578461 258464990 641574636 835761386 618509402 684574373 714951846 344420405 822295040 497426659 731938672 508057117 310601936 355094581 55821752 207872400 858330255 57630348 627161547 378529338 104400569 27121231 400057548 521345219 786307285 21929651 339395853 589582942 336230977 309902380 320945615 815933086 854784675 100183694 293827373 216874116 13340264 991746581 61230948 457709309 565437153 381956469 596768919 795787201 915662157 849004199 314412811 615203560 642504689 636507731 773771462 650539885 186403570 885289977 670540188 562714961 646607809 393400948 434355163 593057683 352739268 106376304 665145594 394446905 248384166 500553617 644471133 163493562 301007824 34077473 819145359 954619149 348271124 668073105 468658818 312765319 121142050 280383454 301799964 508778668 146976584 928070354 146641627 657445681 255303257 550593967 141697680 20569047 121240947 178034796 367065467 657643691 77189269 263572104 209677220 254025146 666181660 818537407 589273632 241998182 100828104 398408460 948339305 452233711 12327305 640811305 866362766 221757651 320367082 214289749 118357258 357274697 127175350 911773464 194032019 132710950 608685605 850721361 13638438 584586110 890173412 667808886 586214353 963555724 355056324 60190040 23601958 149730668 229508531 283627720 58624128 289078914 631108349 961356278 948326998 106362992 366225256 891302386 175106800 466856109 92068844 365038620 959533887 25894331 282430242 878782495 534219213 223449665 224937999 948840052 866808791 882086052 205940853 142563595 444853106 47486977 32115966 531159167 285516502 688745770 997029351 750168636 245188912 121014908 400824253 933050300 628373559 26678486 541701987 791080005 513435207 107820877 672119020 473932671 287773149 641678545 419319531 411088156 84601907 253334710 218915785 451848928 360282939 511257887 198819 517430087 319062296 791118767 551202882 301460200 839704608 667464048 473253341 403076843 806967753 983429992 748336397 466957292 713158140 259495326 429308835 768822570 598817916 319659768 894656643 513816199 577537314 265942084 993435143 150186839 956563807 747289459 923490805 811108244 422674732 278419761 701554479 925314832 524236147 885751136 974477099 82626099 678385309 269604108 66565543 59525400 425957907 952969657 410381851 894203722 783986448 594164861 703471313 698831421 221430801 391954727 927994879 282553302 976642509 944035784 949794465 638212597 731536451 788814444 869012303 872662153 466225107 250512758 821309210 791192820 64875828 164886038 433975112 421133950 2004684 783431910 662049942 749938494 225143025 545275497 651535399 6804060 499258515 126454245 594209167 333978514 478024168 954986289 310823778 864912287 710168971 624665240 332834293 205930581 836831993 222456393 883892631 432289501 795023168 179170340 946559679 546255446 945683339 309468087 62880394 231383344 671997041 374539873 582271373 748936 610880249 99268027 675959464 20390349 550834967 5455458 757177277 499579675 680838646 454730317 769777350 722405458 58388143 814500459 87733770 417784404 884861090 647632059 735670000 282778833 446002730 705129997 378918190 535307342 155302004 583290370 265477083 548897175 550319698 667700523 975542317 834982404 641300111 623891050 611900337 222752936 64838721 281498114 380497961 898025968 513560978 456019131 906164206 419780932 313513757 706803181 539676335 193477259 501299612 45216809 574548666 476089188 266446366 326143316 461378796 833720444 284476158 816406890 318384582 321473322 725572312 699072301 461344402 334527775 214134230 782185136 248900037 771876409 32445041 940164404 268821862 807213959 321713903 396209641 240899481 337073413 299548642 938479569 342024517 289984131 818750949 520479150 832203996 479821990 238261496 778652189 463098616 549360444 813973530 637507502 452509008 952993126 822113494 790413236 507120802 728001325 527191516 247896541 681747076 653164880 261256134 145489510 332753305 139749121 817090220 465947080 583015313 960464836 705438697 796970991 583488340 498209062 336010954 90714438 640987982 175616614 162477289 444388583 27567879 523697810 732880548 534606794 307463659 406921405 916273602 730159630 205001544 803717323 950217853 300403901 813941555 691635886 262307796 173582853 291573955 14215110 722727674 775770306 857008984 7409898 272267740 941200437 895383313 938796510 287152517 481894281 749225177 369359522 68713709 154902638 469871789 994241431 821030235 761424003 781232548 104795998 487868566 37422529 717670724 680845131 340672321 610816703 572171309 227969023 270335776 417271979 201753773 836805847 322160009 56791750 182048893 965946389 361536498 163106989 769078502 728944147 861812613 172950666 834285639 320035207 608492285 270322381 111346813 272049459 596058093 859348190 513336240 712652821 569097956 671116765 578157100 600607867 708198895 623457314 76267318 593876019 759959168 159495768 362746957 748097400 636020912 346323350 277067955 470946025 697456151 876452323 752303669 343550374 467971607 833610523 607577378 301006958 410962048 103607427 48244471 681488643 120822956 404599263 865854243 912458695 672049209 523308514 732093768 769208712 963666280 271754226 15932278 180144287 564946840 500900572 755856232 185288032 915526757 912599515 3085526 943948289 679861744 663240582 829604731 869092774 482138061 453170873 456910730 774384892 695814321 149859024 435895375 544590806 45883646 894139568 928118985 294133668 575651802 843739867 866354021 932393046 652512284 458842442 491330110 847908872 850670556 335596643 486606462 34023674 479861356 768700325 543554067 25255637 130045754 694063232 249139246 634925152 60408386 604442250 102009421 373549673 35540521 961757162 333722633 877437614 304101392 529459447 610058061 41217131 162363874 474624668 588498064 632165571 422020366 675968802 461721943 768179749 364478516 823802091 653325167 315458866 237243321 703655212 392830794 644467398 433579271 449350236 277419263 910479855 470429203 790122077 358500332 820995033 158725106 205835512 760232391 782334672 817432672 463334563 231110120 281931204 903229623 413532386 264782303 997104588 568173052 702262309 991712961 336567352 502618076 793150556 491784693 712572574 278277503 500243428 723783074 632770072 187243588 133334506 279371855 481714317 858916387 257897454 356432116 930521074 620416571 646559519 728969273 107198144 780778304 505430327 187454689 658528205 434121599 651476564 477917643 923154181 462734097 168127252 531834102 533994886 189765372 944623600 129684609 958526047 806719929 356541243 433034915 569110114 634753572 274215413 839087101 981936797 199197062 883797206 464036241 253241343 681322226 847751774 60761241 550985974 860195905 246104050 990520736 783382172 278548057 534407387 964941330 510978890 906148077 847655936 980367181 719261589 107183692 384328200 477569506 418238416 206687138 810587313 741169420 682411052 446871450 667179664 728016303 274570325 139422906 354200018 676949383 302518395 237445386 443008871 169965807 18791436 416203922 301514679 984621392 360119578 47904753 547771672 926745418 819672864 655362778 452697690 790283449 746039076 825862199 350202378 44497261 507000872 396414409 803647723 128808490 401549663 91131278 380718960 813135273 445222827 495568722 228663865 142437247 360539518 665118283 45892720 369965156 924373896 368819922 805403848 481216909 72504713 631168093 774997415 377930030 763289125 833445947 488565695 698488460 1044094 764597180 899977176 235230421 965641633 754343066 438666068 342632164 559856066 742393954 261034279 204550392 11578764 21638476 938138729 300314016 606809917 437000657 609930897 584821061 361357872 568056628 292297478 923359849 562202818 104212421 666396254 376392178 544127307 97907092 583003429 795193600 170292548 880898949 559295529 860326701 527202937 869192141 861444462 259331204 309255429 486168306 845559266 887383290 341149144 426317025 931490704 320268770 718452398 666573516 963000713 242610103 751358292 93975704 166369987 848512065 959857636 557770581 207724031 260429565 863404803 178697505 831683842 633406711 686128053 765220577 642081199 838019609 313665493 383786496 836641454 258603692 64648548 392027266 226624986 764068448 894693220 230724510 551970825 140186263 780199007 615371319 968579632 470232844 751058716 443439786 107981000 499380674 35295497 747162793 501957170 2898367 291621106 962542322 70625415 537123440 286104299 502749431 573948118 294772382 490778480 212570232 874782824 56959487 471895004 971280927 389964695 407557324 680799257 594411542 879374159 327110978 100299837 646762564 782984433 351480898 474448377 565357229 289753660 101562592 349626948 214035330 224044136 606434043 118250211 989880431 811338067 768284749 885973054 193072074 631110672 952944120 305424691 139962899 223129516 387230598 427509650 938567870 331654563 280804874 642369323 927638234 981961795 825320516 688437439 117443993 105189104 631172245 487913670 640856114 915458371 257928244 148625428 587631918 692580768 91247888 702692269 986821514 906828177 986019198 42068467 63252387 393684076 724509916 157696024 985156882 855017890 787762455 808315042 434721753 358248176 175497647 922247529 446316364 654138538 622958668 574647893 990389536 452710291 491133050 502721068 150274380 399819408 3567967 293778197 668758269 230963955 343117592 77038924 252218284 962228187 329492002 560114300 347651468 242792911 479873950 105869915 528420558 599406108 251258035 909675492 634992578 232667716 50887736 31885361 982699659 880820557 691869420 557901291 527025013 71324143 61731022 874941307 229678364 545880681 694618226 570310549 553424586 640148657 187455174 823998046 692118447 240405381 998475434 47725753 162748070 585058874 427461229 431026777 955385064 687032009 940947843 744299149 842305490 802518434 28852540 869243012 251499507 436519779 890638268 981658378 87594119 450873105 732655190 702707347 596646221 713446336 159235032 720577276 30149140 918569695 73604084 132710784 767048379 311737800 658787506 902879613 981641859 152952136 317248642 15524460 527457822 736775082 374933588 46426797 266844795 22260111 888123309 587921005 67155599 812400650 391183969 103585275 483927994 723170452 343327736 236834659 80923564 560105707 476253639 543381823 586190865 177375435 75936856 901516269 299342822 212763212 918924303 289101650 449171939 987075133 804181694 105540879 611780205 441948387 287631474 853899539 273797592 898395171 86474006 514607860 936545314 161587163 397302448 99343550 159421679 628457821 797065421 669368596 725586957 681198193 202999674 588855356 187609911 959631950 682613202 254517458 166917844 689864347 711491177 614335411 646612522 271842807 346359991 526800808 529131073 871659162 447392716 648189587 289157020 528349394 166311077 543823105 12849243 953390337 734992167 961588031 754281606 58906872 699064258 694954396 788303288 72370696 975306481 611736635 752003336 491284575 769904171 515987883 741705893 434088326 744864660 225542349 644948884 855834332 647900471 901143599 262962761 158361324 90356373 723415006 218080877 723810786 20148329 980649244 63793907 380706953 762561979 468213999 13794782 183153281 842308325 200636143 768437752 545268688 120931205 68772205 162959439 184292119 882014434 290819911 538026855 14590493 258623086 757073755 553860559 273261047 627709266 369880077 836185263 111108737 422340352 109415123 589241596 625668587 888759727 497245864 939864306 651995000 948809713 100481527 104385017 740775975 97180716 768037934 219236388 876614710 931121635 876914138 230539790 882111470 173309893 897728272 780018357 407871352 885506033 196745560 869814802 231195503 185878103 701412126 214594159 327549263 153387978 674357388 71936796 938337567 304210802 700102590 182860329 923479476 315568461 930016509 713428357 100981307 454946518 144376591 758489138 943866932 325162793 836399474 563044682 720620157 987707615 938042278 296792371 826098496 799336704 452186172 116400950 565112754 534433005 93448096 517824491 448815603 953242370 493089220 162165302 359558207 685504153 416430013 835219685 762695402 418221094 976657850 515920801 874613353 576322709 961126375 514369025 954131483 980759226 74596958 213583915 496608840 954356793 871960608 875947943 362358991 3524505 564406240 709785220 31016531 375300937 721802623 61087198 40201686 884769450 889258164 412418334 698953691 382800708 589952325 380573340 631053009 585298123 253878731 611341551 505969636 321328807 690280306 780460325 638539392 245625676 262721500 54220153 827160141 133689208 330062440 589532941 307026171 836998417 107108060 321502513 738711287 120121584 448144495 295326483 925415839 388288338 117434159 60656677 685974111 28735863 816730181 335341074 394626410 35070636 941464294 225747786 98727334 420254951 685508972 395596637 728130324 335761668 430027673 508890932 562092170 913487828 927822209 293825767 198512490 961153986 627023762 734348470 74165281 20758554 773840992 662649963 963070833 275233085 50766470 145253869 359634610 56353910 778194324 446273236 512828465 485800392 108903340 29312783 917835468 396184890 450337454 759761086 163781305 610635277 264963510 955605134 664011940 451487019 545977540 15174453 705911718 590673872 869385436 545932635 765339520 131747773 146184949 353486627 333717854 897863889 37049388 254513122 375634918 303466578 155093756 815268797 539494896 868124833 582606156 15579895 863797022 19061298 911319710 8889879 904737029 445788120 72381061 771922862 884145448 514627373 961287006 724094738 943919885 73418859 403102431 495584208 790215717 765370399 864529967 840313305 818433845 405316952 297100787 613100525 985944907 73426314 389364619 619841225 620150074 712774478 478040891 308695815 411182388 831640060 527949562 659228427 628571520 869906042 280576459 605242490 50150067 176799737 545093906 210987550 845805396 755241036 648104183 131728572 688439349 151088708 568323126 401138191 300909809 350430254 726626656 413620239 413124335 572370339 563731481 691740590 780178982 633081811 858657383 367860958 143924772 467492883 582651773 831719262 918936176 675417442 523406295 908659820 783715619 211259060 469151853 135435161 570506004 411266907 44124060 316595119 595151983 191249178 251336366 208865769 647635148 182726085 838869667 201237349 326774473 87608356 811485235 38510292 3532355 775812853 990919652 758261386 295679581 870729743 671946793 997516917 305645879 443548788 371612471 104649446 200011393 210632807 621454174 181925319 740686391 305319655 48584870 34280160 963464629 108910202 138978310 82291938 777523760 210777235 759846270 193164645 247878834 930977306 949442751 316095010 693008532 973571164 712659183 66291141 159896347 950659005 253263010 422798925 700707736 337480257 737920996 719289444 23586748 338072883 694470301 672631571 835689973 168630781 886862517 52577367 955866322 591158731 760660906 705170923 640681112 569912922 422180956 978354295 215092023 96797860 210639937 664637612 243872033 266332636 59534993 737730715 489716667 425051587 452527187 867497007 57359495 918327441 357896189 336028158 270803124 640656795 996179122 284187132 96853769 862243756 396451275 854197368 470456417 589489851 122975934 116235352 636139189 925026012 464087080 645728654 402869424 770694202 521958206 347822262 37423954 350900890 17287317 730794443 666264508 967969675 999678619 719691731 799357613 949432223 530442203 416348347 129614409 209445256 307233113 366206050 351762758 675277786 641310747 642438789 522409724 608832245 38465289 237355069 729763777 713207795 711891927 98020705 697640257 663150033 464261144 43607661 269221615 597682779 258446826 936618533 166539570 344473264 700776835 744542931 397984456 947996846 533155052 26251350 331946102 322438380 420679467 815619994 186416684 815764578 557767965 510976492 83311406 370182744 529197886 984392577 60410338 290084425 438043318 567011752 112207950 997255010 283868597 841613164 272682787 752664300 827162722 1630272 735004364 553693154 547817029 539208097 776122989 731681051 116463329 191360765 904803041 605310829 426978120 560773830 270503168 862943570 471470703 650811122 752982839 679779345 577841451 950344486 357016873 149503070 952189067 352679337 75994119 759422154 117737244 787128743 259976585 174431264 946618052 898179975 550129187 721793813 92677411 746450748 883977730 606042394 495394684 66377756 289017381 438717886 30275323 257610244 981773383 256768162 59735440 867566677 272196883 421579098 306679219 864370964 235313060 145313466 791102658 455700290 420506594 420005007 421236892 567999259 685028294 338503719 464606745 898136488 896011659 223687990 60341519 41956114 828236339 666379894 646074346 442801986 448295267 620721488 974547350 200744940 658811769 801669767 674745178 987387144 238887258 848574361 947055863 82353508 304696986 203644360 400879947 123424082 328121481 735503239 566476994 908857577 667854041 57350124 626507328 282433195 95829702 494686447 228427919 737088676 72306075 145584632 958935162 886258727 407646500 733251322 525347876 666808529 670438238 935348126 948938305 950224031 43848797 902414240 402880243 570129519 421779856 222364105 996892139 480467656 113158373 97792701 177463583 111257269 984346740 405157148 672873407 91439594 571695674 306708071 81548310 470267213 809621368 617782449 684700370 655872882 274723278 29232364 510769651 607165493 53679676 29835342 849300623 206009133 888851563 72341455 191110179 120969852 605244361 7163503 50848026 328402824 614055905 310461763 972428208 738607784 396477993 415301549 581903413 850675439 957322918 428438824 573402097 245975692 375807544 482600825 527391811 94327550 602639340 354206927 13115731 622631240 948194524 26934964 20931130 78286533 611304143 180837828 541047428 827873301 488182070 336260562 509867496 660695206 657981080 620386245 238584797 895913096 287023213 62991746 855406139 762211139 516124538 98728376 615278876 217660734 892723097 281994361 469004804 997195172 210824504 747369875 729460643 833040644 231746341 897633210 826103299 70697907 415717012 700667083 865349911 188036505 821545469 722484645 625526820 249426305 512001272 466523948 611286381 628596884 133884140 794013590 301689231 409137278 84837551 979904377 187872086 759796160 571062981 35160060 493402503 141370012 324242280 443764614 798234283 97374625 51615671 919295945 134472632 938578290 960511386 502321509 502495214 726998721 219165005 296467290 719935580 946424739 801029457 246451443 110849967 75055363 283003947 599252783 569306557 928008155 557997278 946964748 727726606 236512684 294824250 829045202 987084869 883191671 816268934 582920657 3077032 108914221 957599719 59671372 749135238 945138871 505442156 744527267 773246005 376552103 831964681 352725991 319676644 995308415 529066048 922101678 340421446 356174282 296181472 610818177 686391413 349205995 347341903 136992574 47526700 703241537 554611586 161152423 574172505 1951532 100915779 170248136 377626074 99472287 318286334 45324780 965650281 861590131 212175586 420520320 803446425 972576400 40484582 116262143 587960923 432892836 772777837 550439936 130130160 832310634 875595136 548548870 447942004 360357764 468350013 442125689 370713649 160652520 700387705 176030234 296021383 821989834 246826915 935755208 951503993 417269463 407121053 952351789 885861070 349671739 232615215 668654035 48810073 257431182 688680690 70666438 293717897 133287187 841069763 239475879 422153451 565962063 873830019 975452719 583159955 616160221 518053962 992872264 87558688 945286137 413933343 436489953 25715219 894181405 517037459 469188136 47855572 784026446 720088254 366764236 199987081 735231224 667880619 445516339 6845657 199404631 413104449 348287093 517404569 592312130 213206596 808665660 102728084 471314257 934986886 436987834 744485133 532693550 374477877 209004544 584750411 536178342 163472279 102055275 488505921 526072440 908941394 129114788 226585126 814050731 193803611 377097490 487189739 451224219 316445501 69558837 954563018 727240200 294424831 161665971 201256109 74568884 738017571 872480231 217989354 418471916 579700553 354467942 307211281 379175132 713676626 885536723 150900933 142169985 265929666 702544061 811243652 150585755 445166304 944907049 22239539 14785651 245151511 140565582 366742586 951344423 527090074 46994990 314698453 708800851 740266042 623961882 892569172 436355592 104035808 913313577 959639648 129968709 992687458 217578914 191181771 321733527 281999617 520944394 575114753 11782798 519527768 396281065 152656571 461006647 951932876 756898995 116173542 73538663 274243254 413796138 678387892 592043981 452228366 412200431 643877303 681379886 842099875 338464900 664876191 655597919 298460540 532444225 294647702 221024557 314142058 18405611 440522229 958371751 398503475 279056897 559997188 443122562 709622017 717051182 798212868 18441140 753688366 509562330 377140127 105948460 215210170 407072156 583769312 512480107 278394592 950300888 40555650 371868581 528250753 803594263 169467262 190808461 338897180 731685693 35926489 661040401 896446285 814365449 655914491 868289038 155032799 531936090 137247639 335724228 963081004 608530864 165391910 524521147 937012605 913172596 75133593 85008871 940842302 126939854 219524567 564874524 100040958 832560477 287823390 977259513 180393504 333671416 476037716 909562560 985751694 405857124 932037367 184923208 720826771 153530401 669536053 159207635 908661691 787095255 980980249 19312836 898346210 61556940 554444822 320482910 707591405 185337946 708492042 367254287 947942546 586298149 771361043 830485980 874867381 532056887 492180643 327646354 22745099 112577710 120623457 461927277 861257544 633780774 202762036 70127706 946100431 862057217 76697770 656906795 103983711 261643044 168974978 397399070 756293438 424565160 926095229 151441258 103931571 925100511 532205711 8754614 2146625 146443172 331503129 411588514 547153385 794743834 871284910 895696534 544560971 444634889 416125037 738872122 979808942 248709723 277680793 425699348 168017635 275975255 124534675 809383859 100042833 778938718 835979266 743136726 531360603 998473527 84540836 782002536 381981479 827263085 607112373 781812042 313491311 813162606 335112999 156050228 455719528 788803688 591298314 349664994 354590491 16692325 620593350 198488950 712777532 637529860 826242140 522036582 278412268 173598375 7515469 579291875 862289646 732283673 715093603 510785674 917498926 534579600 628417051 297239244 942440685 411317329 497666175 256812740 91124629 920854955 437119407 256339434 954855747 642191442 841797511 931369331 784674856 664177761 154786122 244929276 940218744 87853940 967050017 868951004 219347132 350830076 521964126 464362285 94189728 869765761 70268158 901431081 907033330 345871703 747959403 353158103 428415617 943464559 543375410 800469900 819000837 766279041 370812535 802922789 411241629 827198413 105443460 90440935 431002871 557326917 915294261 463790038 270910052 499262519 676893110 932031768 301731506 401858773 460046054 575228357 952247862 605859143 762785773 324339741 177498252 511944126 993313739 408836555 529623876 22088534 402805734 724989668 726045028 577132978 277004856 963973919 859846761 640156917 874849276 357286428 137361581 166934407 556971860 653421473 590321445 551161458 179647720 579048913 634938757 930288196 219477772 126640350 604519760 934151668 570122126 802652245 170097197 124093781 702281360 757881111 488375370 346458121 258981078 360625590 937477933 659579715 502226449 221278138 964876897 88924678 957577857 741188548 948277713 53169785 746209751 673654373 762623935 648783498 795444865 761991206 726656912 996177456 708486178 642693004 487659726 836922636 97398260 282081767 335446648 18244949 986478706 541462409 340350031 302579597 592133690 937907254 936561410 781540016 757633809 337868412 998517413 104046604 803427904 101276397 330132621 14946407 972742548 19715924 704558027 95293370 490711897 304863596 413461684 715466552 417028193 601637239 662831363 108448936 624671235 111001120 139306311 142279770 728444622 367507484 70041924 465294353 358280945 654379500 37486867 185740441 801007247 150031033 299920847 43308012 851692573 704879717 471206140 889364211 386783608 946488965 484500896 682108946 594109342 36092438 929066994 780546749 731805275 120462198 935565900 689616716 439489162 963550187 330891318 354064475 796378508 204344225 537071816 47257546 708494944 496320610 39088183 79083073 543110707 399145538 763430353 488308730 378692837 21236576 199733821 296653426 433424687 951089184 171503653 757499564 463072049 355697759 110107140 143631783 445621508 889949035 411335485 8784174 669512495 588098800 170163145 145935116 596808083 242810533 418751947 272300788 162047945 609919720 356859304 49887098 14038294 181986255 823638451 125779860 71483107 852048161 617836422 115988506 706885438 104616315 411786343 67354224 5596012 41881566 304665748 725572652 109116550 421447549 522625443 74486905 66512216 141298288 242310391 787616125 355406649 708526936 567722605 540588831 861915219 922347445 669638484 425907434 272417555 86513725 173814731 759115869 248531851 936416415 342930420 727789806 958317035 917917147 627542635 234024744 150049955 52336827 595918277 86979037 376356985 954145112 302195234 886624888 412860359 601823365 984577745 117536825 113494372 115649206 891144904 690344011 281281258 566624649 148015438 415171658 312510947 991206099 801536010 655737300 451275813 193564384 577133236 155396381 414966277 554063264 507516848 746175909 999318849 267046289 824695941 843770448 974405628 829460269 150351900 106290901 19426648 767760690 853880372 229402225 327268520 205329970 716621715 242179222 235840439 424671649 525255460 575820101 947317747 109583120 443520286 640275649 474080795 254367051 147873012 535136794 377706288 733234607 463511588 476976707 168786020 899279895 162383849 999086850 236210140 182319920 415996043 25054277 46037555 286620469 96237822 138986005 986544648 661368328 772249871 13817210 866845293 942850510 39627131 138241947 643884023 132971711 918376561 931887533 700996788 479908579 929977184 778115649 458429174 173029401 514516192 775824313 693697006 799045335 646890274 889732502 877811805 998256264 584537469 73693732 487230202 357733394 409753947 299140948 882042434 23944287 134260859 341028357 571332156 698624960 740294957 393979207 104866456 211240479 123280902 756237256 782002448 315101444 887778793 997147205 626585129 812990801 774325672 411178403 738553163 792015225 155860081 649366360 184485446 507677947 259219553 316168517 139060802 575883254 289874770 231110236 564679997 164457164 249592151 127629785 432472714 81949234 352509250 334895888 707236120 834923361 915163775 739492455 462579447 709513874 992463857 819997973 696875182 275026659 867614155 516119023 825600954 336664797 704929141 380779618 111757519 934585574 240248878 266474016 688123542 40136156 121284679 233081656 324686204 807340028 403704327 252081115 932128835 202508776 403979606 426392392 595990038 308649827 525479366 639626038 585259196 458315225 122845029 646470203 681661023 330365590 244203411 912412682 42445130 533868054 405861675 773554202 641499075 146821954 202015667 928238158 84791316 257548950 267851975 397639046 565844375 389965525 291303041 561094545 229312086 866830842 677291334 267033664 442994551 167619677 950224210 132021594 660281272 156777021 181813241 140370343 195355509 773257777 778197470 334484467 802372980 787339571 809183309 887968706 86555081 199442425 161164308 882299349 662186022 78058646 55199576 827187569 637313803 501883463 927706690 659975056 133264594 376087249 33222727 306585053 643495193 52338398 490926052 575934764 829431704 289456214 59504091 906224042 166826203 974117640 297324805 545834053 42769127 32050700 988931447 896620332 594170573 124416073 946934942 270345600 991792261 946300555 76161107 387001855 251051501 993957726 79650489 79515398 642018065 500611042 407138922 984469546 921764969 125447551 868731250 963243281 998338904 737161001 48904446 138985352 71080577 184455841 556997527 267260062 206194963 804379619 124652730 464451605 406660495 286138474 245848133 885264580 129522351 563712459 861532544 802246808 498960538 943270462 200831280 551942316 809874226 325851862 131017413 617666973 654380165 963636768 996997605 525994165 382065037 923996036 407677559 167071642 17675701 791741156 830726929 595920761 778889778 752562631 6460760 789873325 772293373 473950117 36002052 497349493 418038741 87452518 156522947 983424642 253609052 128404398 671717468 280503240 170443264 685859777 897053273 678801394 338533526 343546166 397370392 286359063 464010615 623488198 245189956 628517833 901113794 388394698 841050129 697023885 959214807 986820742 190791758 813022417 462802942 522522540 79922419 564958687 237211824 117687981 907387448 567151482 302959549 50299631 578033090 180212185 576317408 852487356 80564798 491446888 812358991 437827198 214972329 157826262 710275441 451245290 16679201 213598084 540928924 238351195 178249276 885473077 140892054 464945337 62950597 833393797 736134795 371035179 677025824 283119230 64656777 278505321 4657235 638762431 518365932 508741066 545903770 759083406 905179115 354414179 468209183 512202987 251693818 94014654 630509458 284453839 498324861 934069963 934066699 602116992 747085311 225824509 612749302 127066484 975248483 888229489 695758236 964283520 550798641 620242449 829976954 533698799 674472014 346261794 564868014 427059509 97878978 195075609 46624568 574654874 346183106 938883593 892919075 248130808 784813520 509257080 491091707 985381098 317969582 499187218 251033579 593073916 179051872 242938259 74045851 92044799 110490607 769110568 793898307 977605604 628108237 384591516 521218777 253217277 141955426 542180691 660182844 589516297 1835853 530514538 990467211 450879643 77714093 679574034 217769739 275296723 465083575 872460097 718208291 329230729 486589316 367906543 153235723 883930814 405105109 749136451 291534172 564400943 447743779 289950617 209525299 663663900 577491135 332577386 37913444 733344264 619494047 655299402 574514389 546369856 56348621 121017056 800610013 464817979 963873720 358950260 582400427 833896982 929620310 885952154 582371822 91624709 237530530 483391878 582753652 868736612 410486805 151400957 423706717 648629370 768035999 561086679 778836055 289955643 303282248 804730729 891516538 881687005 46829643 900624550 861725530 548999422 993179145 136936340 970776201 371926581 70067331 701986006 278193956 847323318 887328352 443058133 277749716 898123461 209617004 432009297 57465403 543422286 65329909 485892688 920128266 551883019 932081901 648186452 181388252 672006801 984027938 476985466 167955677 706443649 298705859 540413405 72045586 102526270 814502194 462004902 820661682 838068184 782021150 385177641 119607357 15252540 636425037 395006114 409505412 231288491 187683787 14347485 260759530 530292172 910437785 134543974 302241048 803901537 381720312 26942155 855836909 380684869 674397257 58925787 818826521 169731580 193582895 164657669 160898195 93918267 294988713 699517031 704148778 612429642 109075248 938876682 676209015 707598418 258698715 441518026 372724376 454233686 106927407 352291094 783603644 325433318 105329220 705331819 370059165 529000640 384655573 505284817 691859586 8606542 719006753 275566181 242237291 840543750 543758424 340941794 850274399 767563650 997736182 621517431 329859295 816468305 647023236 6450252 589335429 184330369 384851169 614574857 917813303 4688961 454856675 550707022 60184238 327813279 593353224 224051895 536270662 629423473 612041129 504857345 155122598 940878314 794418628 129887199 492276530 219473500 715721722 144998679 849084915 596990390 404593918 766226773 882014901 309604923 262512165 260464169 403168800 294030362 999481111 385721665 660769346 551183334 972322910 843009137 825751464 234206975 696446767 948478600 599311128 12200984 166534388 193582213 965682392 8572403 391346112 288244871 972548430 482868560 488514753 81770313 688916516 682185753 912425676 121721137 158928078 406472238 437201421 46914967 303980561 614424088 661240667 574965277 548255069 315915437 117401318 724440287 911544145 935468633 649471395 241164049 409569829 95117540 385608215 547441420 97767608 323372362 22327211 291742226 484525217 428627920 702140243 67200887 404216948 953761414 997257186 406703264 817916657 70481576 588320889 913232515 708477930 780401742 630538546 431403855 986361205 70797533 480880366 397826294 58110165 14101946 938479788 976324964 792871158 38349973 666514864 401107788 315764355 717420268 106162871 508928287 897054140 713259180 386748468 630164521 745522628 863595344 611421619 155487134 572125414 233948788 463628250 497808366 664213680 424131443 349234422 813894072 405581432 630891367 928075511 126283167 967746592 38537137 414160334 213282737 780183990 336969288 883540920 322606746 547660321 220820749 317742468 567588958 398155342 824520806 509527497 771164375 774814139 907450638 644249677 26232912 414029698 89624824 357052906 849305698 311395006 140530081 584416182 697567310 472677322 107766097 274117974 819873485 783942448 410119541 454220322 447312971 490474024 985985282 786913457 519515591 783137864 503385882 19169438 111685344 768911761 68766710 577371201 229445150 284373617 810083779 360759858 849178813 131167158 953524316 979350356 163185014 456730578 648650871 724162723 773536550 386357103 695201174 361049464 765500520 207011292 683606180 455125583 861772608 536908046 785392648 162502977 212829979 330913733 657073715 29185303 546348739 97934804 203273993 72056638 33245541 358644640 212100418 766616527 714016536 342917465 499776890 813845878 824928031 150332611 31529963 924369932 920858564 256107024 440419849 723993951 423476272 744080918 340503949 303842028 499735009 426907797 912628290 54533984 615100540 727418381 987443605 827283838 362349241 278634989 835898773 226883970 75245863 178091114 31614875 815391198 55324802 798549454 270015657 841950438 424613091 548010349 720420737 182419369 655325498 35821615 15366594 485825884 301336215 95691898 383776211 375002533 887474293 666673987 869618784 484359928 715366909 220423069 931986624 758675911 16408422 948897212 762026866 229864596 778311086 729604862 630869394 161024401 375743959 763099852 25789162 668740601 103668416 79792159 819732858 182762488 818832043 198449102 77353512 628751663 88432388 937632198 596689139 998942247 210641583 633669231 254408295 984018911 156592392 500005270 142299864 205293914 653793389 75178963 346932403 334037937 426230418 627803135 97978956 654279142 664065550 557608490 350102134 297351544 971125489 659241910 643542228 764191532 670571805 909987558 673120272 534152095 870063216 291512234 446382486 71039818 963391978 839265554 812933131 393128977 411566665 724808151 614973906 681059153 850843846 315076518 719147600 910603760 354354913 611032083 233574669 706215849 67293746 796895886 269834704 600230838 176270386 547275890 556728156 200032748 581158162 945434022 22824531 395556360 493816908 633721332 306193862 206853386 707825137 918346213 131072681 408237141 378225669 954259248 368389534 289538966 73626783 113441316 403829789 492590697 977731734 33111575 490224896 109249768 525720492 919523656 549753961 268159356 365808657 447283337 649986625 21353282 372663189 584840661 124414997 812280281 816195910 928479204 186268869 581652016 831892574 399912547 985035546 645873543 487231769 475252188 693005801 298563341 545258646 813244293 708250717 588434477 432971522 71573251 341729920 422273865 585902714 634477856 381400741 940706148 665198976 298383198 555655628 310650676 345400457 740628472 159919845 175588932 935327997 505002854 700212384 908772103 703696535 148802792 806089278 80311578 466694008 126965250 395047814 879509078 848845483 612233123 30035 593429465 120868492 961164219 401326581 101909593 182099090 398919688 845815170 55878730 31758562 222102898 147808201 23071918 299751546 14257113 283153482 586612337 331523276 361166872 332195459 698545068 22862949 705054355 301927289 638032266 227318386 594807592 7554549 554956456 132445898 60067529 798348530 936680549 786767671 430941698 312539093 20818085 642312922 519572099 634527971 756131107 60368574 621383454 821698568 487011743 92506300 558442938 189340483 545305801 522845196 349475194 465397139 812683397 158364323 98864099 78101726 772787132 851299446 651845111 606848416 742807566 433795281 853610802 505220861 781359476 216888907 966518347 478127145 880533946 961040767 162306817 629475540 936463697 1864229 138740164 179829920 569472009 628324311 756508828 826608417 381374757 461470726 449137848 95871732 600265215 652589686 388813257 258356924 241046498 261856986 345261939 282715590 554296102 21260632 994505841 146540928 712513417 156490083 11518838 197876936 56829872 625421348 274615140 897512317 677190187 847440769 518057482 48801119 422741307 929880508 418431332 24849335 487754939 279729534 120207984 327581081 586742228 672157143 843442522 881441713 902819177 57971135 662397964 44197140 716053240 724301255 358452654 182862784 754514889 474141373 536518859 122076183 977627374 87141723 752426112 213871396 387110228 921572590 684474526 900443469 827913844 677265364 11205318 783855064 638062555 816246477 528637030 464418975 197508134 525214775 986067192 725423579 914101430 938887930 654117318 827834628 582146196 459253761 932826916 97130082 667773891 651974788 282003514 63564578 571369768 549503722 856379764 957497666 23079204 137894040 838540002 90155976 61632067 502624906 261473649 569300029 493823416 234357645 814905234 13846693 229061320 659927783 750700299 176804008 88821277 345829915 706659030 881428268 438722880 460128859 599712241 250919459 128028122 706844514 940844734 120994826 466146328 190233431 834475944 412941139 125598494 357409692 772235514 970991824 68360147 937095070 597398125 475125771 245269694 868080794 121748445 514484552 376490215 786507315 334626309 481616517 300253292 901378826 708332018 335994111 960134945 814294009 615909977 982988085 947919567 52797121 300173727 859947860 375377041 442074224 857224691 129887865 455166989 456975521 634496250 517821731 405272309 535922571 891799273 909936329 832097364 689817643 480650835 911405654 632064579 734482363 939590394 547171385 353915377 907717079 110157010 36552016 594243102 393777025 542255736 2235912 228511282 5743630 27845855 143513111 570899807 570090559 352946271 503127544 280777722 977824073 239688693 885040233 219294496 618512492 396344496 421506829 17717673 648297335 952804568 336238557 899410277 656576872 612115726 79187998 543042453 964442962 691062688 340228170 213910859 114745310 315315810 492787861 592500294 992675528 64560818 904582920 732326645 973152650 475026314 650075811 337746777 403468062 362274781 284448476 622080094 639042318 396256897 552408744 569348202 468374425 260045236 235480613 947848513 168799449 734648986 919135510 225331767 826199559 397573495 257731875 748765073 752865325 828095990 90144890 227539766 342594284 284896718 660561976 121253556 591589951 926384017 697459466 526996596 394504443 95483234 235389635 551185009 508047039 5349090 525903328 454493701 659141499 389299496 555820297 644825842 120835505 289820385 61456996 462443032 780272803 38603616 221058443 566037377 408100632 896316740 166265097 930990777 631870840 250341198 9359065 636532917 442195185 987890953 996985196 979480673 578375801 454004739 580534747 984971619 121930197 306577935 34148037 297784476 469938452 279477605 661832017 716246606 333580421 383428064 893951744 601810178 18776266 398397969 123292125 157994660 271194559 896645443 229064720 649147275 649529773 859172712 591711915 772652036 538960741 282656141 665464845 648087791 940125674 49211573 885373540 935636588 684185534 709085307 207251220 407530744 907811395 900377064 38632168 728886457 12545295 695676556 875964786 110750215 317798252 533772737 40955587 199616485 232538487 498903014 136129938 359819595 868929569 94394808 466216381 652128724 723996207 351736569 858799179 57096571 179803921 518203559 991948919 829703137 461910896 870689294 768049906 169309067 90680262 524080014 162220155 907691362 42218362 271650808 982615524 612345234 742987384 922702520 623028975 13556412 839957107 886448127 463352001 238086398 777245238 393713081 496812390 621987140 610235893 743832549 22060203 512563715 312034382 587259441 687192300 736260834 515658538 128488040 993907934 470542536 256830353 428290327 435454310 918335454 757356517 45530841 828125704 566079609 778300926 345129134 650986199 220225322 247431097 511774856 155837168 100721875 326248478 600553972 908678594 718951359 802573485 706136342 735155423 786915279 526586784 891802306 852432914 188974953 93589266 522091728 574003469 691662072 690569673 389477695 992156620 209964613 903564719 936165013 385997337 833125755 907287969 201473586 455138483 697975545 579442141 987444621 93438051 874758723 905508980 388076944 19044525 676731198 16275969 213781681 505958096 792764017 38631592 10370809 957967986 19403018 824421185 501052943 695538330 180772237 632031946 817898182 908969192 47210032 495449360 26495764 323955931 128363193 96675038 364272204 761069862 492683657 424729379 379993551 152598638 584870927 557607988 873996575 795266203 269226923 30375852 137384246 343557534 605014781 667776785 94603678 11751221 197238355 541047002 554566560 225064086 646645176 783289397 558010775 304561196 654502348 227882262 195422019 78743832 867612383 715626142 565700603 572285734 128263941 630602991 478813374 184220869 445757131 338749210 731526092 166051106 597062380 510769542 980336136 232820215 541166617 801395478 532600332 358116098 377200475 709282474 300420795 444757274 533136252 178251869 445988130 120189018 804234891 497850426 302116677 10740567 361821125 64709375 664604605 709162041 808319393 67001121 490985820 143055400 349792093 124348328 177558674 598999496 201835580 871629977 917057019 178138151 857047724 338085608 926261133 263918024 98926100 833428259 475072257 114760537 808982896 874769720 620566273 890681079 938793301 793949229 532437496 298253887 6662575 872773599 719609551 578779424 764004170 361482427 373139024 803399853 552500521 856076559 932589893 997873733 755993918 756259255 305320956 636806945 956915526 148309506 537289526 618976302 314560538 249193702 373820534 888955561 172355769 669199450 556274412 511279499 342134696 115215717 340439923 112299378 141411361 857309653 70000155 89481027 525283839 992170399 553282324 257722676 499059781 898069416 887128853 815283573 35079610 656935864 939893492 861541996 112775721 502952915 941662712 649873325 935620483 405431297 600490587 278983227 88090592 149979228 652783927 549169997 328909600 439524399 69001735 520194842 29038575 764810377 501796092 933677593 908238980 722779714 306691114 199121994 795459335 428592880 347151074 959456774 92690605 157174958 370423054 461886593 711580453 744459561 314324112 848160832 684186658 714143233 189090869 924837773 925307654 871379673 481969263 558621797 504465807 70232947 705246884 132477249 794564747 888120874 695357413 62981867 646646316 119099648 649282285 856943861 32947474 258969077 857840436 658793198 283183833 769475643 343779899 839472095 213334541 350766320 164602022 864698905 412326138 100821610 169971101 354728443 334617865 488102326 971268073 837601547 845849828 70622152 14690897 846097117 96904425 836046404 79409014 202870134 212617370 840971998 962673455 295072445 756412174 526276217 645600329 585236987 739948689 769217231 714632123 674058239 414701653 609053951 476544898 341895008 606495315 265936049 739908850 165167267 484690111 407614007 753189855 331266042 56821987 652030986 946635576 958162506 858041529 136073548 154800671 736421502 155859141 721434865 469282482 439294281 477969 998941452 445150537 259086217 275386438 311488611 83982325 326241360 788897685 822494720 8302669 312310487 106046427 62302330 654187673 454405751 307386046 684512296 817129756 823029924 162516323 69315562 591559121 681279228 641970281 939789786 880802172 211710784 227345672 129645097 431498890 671374439 508788182 991789859 193800910 481401830 572391666 709109844 537032489 479533109 583632291 919731867 305335577 736991418 129221506 203394074 861220951 747562065 125099835 944465679 132977855 299556173 198465115 277991868 283493575 808698828 738383398 998658173 773694697 594339516 568341581 892731224 772841144 21233779 775968310 690337380 994325014 945362977 687489641 688375372 520160045 638078166 334312061 668762279 575901679 765122897 455515662 187531654 96543799 14061611 886243014 43314967 683061303 820754410 412098793 22107482 952485061 65490327 633617770 444555767 8454280 811378850 796774257 925770565 445614507 639026386 218154673 551324583 267270048 659867869 263242558 893016250 981022174 541827236 752327194 692695750 796737414 804588547 788259411 353669242 50014219 678372351 54956524 875225619 580385104 605815920 605570546 282422929 220843635 425452401 264120928 813508693 343780099 856512637 772630933 106281330 982388608 97239246 424173471 497979280 778887801 911254495 933966506 559967325 227373237 194306472 264712357 120526486 313000146 621579569 729097791 844286019 186133590 401136897 746323249 510758990 866641640 270422240 899795408 996983160 582047995 151305267 62305196 942065848 14642812 933671634 719642054 449283087 198461382 26020950 718085301 625862217 223399995 576747577 570368439 601373220 51521077 799494597 494833783 399103793 159760509 411442366 780785215 964067495 40914294 220466387 110012756 973575582 725752292 201982608 912114246 723999116 795383578 390278080 75887409 637341365 672411998 399913085 172266755 933954131 438752994 799014873 851793593 100500472 176583564 699729921 678026658 53836970 371110397 845254669 676212381 389543685 841747406 457162498 108614418 506402033 198902273 501837206 857527820 694932979 970580034 397778836 905523431 140367692 617035735 857247124 934625825 845955690 841014137 798411284 950712383 518977139 701719872 525022511 64039885 394739822 873301918 109135354 731825014 908050528 732811257 361406341 599749809 184915745 765107953 921452072 183311912 170306662 37239277 99018955 508417406 266193223 634940586 865509319 330601731 487384569 248189957 490043819 857393618 325900488 400309445 271259168 262105976 507803056 764863846 260776767 721333488 615415279 919540838 40614256 696502388 627695828 919294338 379240953 705608075 736660451 208333328 482081265 770592944 627415558 460170385 556313095 607599841 392182052 983242354 257208966 411039223 409842581 844761563 621823310 667636514 79013905 52832752 74901637 120114983 406774466 693009384 492518815 175482561 844432513 53760842 936236909 829096372 834872145 253134947 813708890 951243953 906248742 770536146 195813095 503277705 597900081 544486720 198760182 169547812 763377900 873051277 482663787 508314253 968573489 121881161 132397724 156350379 980543090 594969162 214676228 994671467 695538773 21291323 158540289 561190680 650483173 440566070 412372738 572123925 382312225 523354915 854249897 333544670 489580120 512176307 371797556 608053637 748650701 25633312 24602783 728037840 132389920 448266622 304527779 904279051 154515313 233325877 123239087 83017185 669366223 57123396 32407480 681162579 222925077 571616303 535954296 922836045 828309477 616735437 197412565 513923537 868252764 290409344 509524735 837659020 317562965 454404162 915652985 129107760 939837735 679398193 374679265 425366109 771601107 51966871 708360391 270862968 112501687 478218887 39954705 508360882 709129000 783109509 831930434 902571410 612821871 399878295 557389045 183112271 56028414 645859215 377548837 659344151 756930920 650280963 790433048 86905741 342672228 583340021 768472188 830377419 498824048 911803395 75029724 914378434 215661306 48854636 932876915 194688931 195205092 90717892 618187969 899735602 299995342 797751033 878852677 356300007 122288757 657128757 352033439 404243641 652182759 469901772 594407689 941943302 877261245 169314602 162157760 810152527 391500939 373299856 607392738 660880378 596651113 238901854 316370528 300203947 187618870 838833496 759890203 10248763 436972629 436259096 186568122 324215429 481920340 499596159 9132649 132738107 374526259 277038984 183598361 258010856 206130051 284522200 871469490 719583174 508958152 594098589 50797478 687898037 857503406 236566050 628619700 869003941 563057861 213757160 519611497 218401530 397735491 15988908 144321865 420799980 493316212 919855661 4256564 382831568 408529773 691272768 67567167 222592332 285959678 642538078 135825464 95791679 114306049 463332542 308523916 980442743 524461483 802081582 336938039 174958252 933296475 689317133 683030658 342416913 339445177 137926544 549396481 453027291 580579612 764055199 325594733 756674071 78361822 734309100 868450072 370829601 241339377 693789198 314826232 208525971 883990998 908150534 665845049 568665526 988809139 90323175 221019274 159268045 948697034 116080872 460360662 188214731 841239958 812270736 349279360 709245281 466949229 515577040 221223776 550316728 613674998 120514690 51133819 186677149 247208183 14620772 131615789 393787686 206345952 560861988 498104360 808202277 831961604 402873045 980084545 556555481 534529020 528514359 273420914 485413911 49844337 701955081 191700177 622636012 790161023 140349814 521501261 150401654 114689953 169998893 619752529 115894758 481632385 455043224 53866535 278991492 432422113 996135447 719818849 320571037 476040491 822440493 172344632 962230650 871405577 175888853 687601505 230942610 428896420 775373805 419737919 867501238 245261978 719334703 224476732 612522258 625847443 55956443 732914471 993796915 81302933 585795242 866977506 871274597 845116357 128677766 937980542 750497086 881392504 701662295 604316204 826373509 837910271 697416442 809579959 577616399 853056323 647411341 286322607 231251935 407839611 267601932 58155337 729614181 558379856 56319340 493457146 68613396 991320424 162556541 845784508 279994549 76579576 312719846 803786997 917779863 526458795 871337337 540070916 632658067 196041036 84297887 947420616 276398309 716509770 65699346 197483265 916867228 395518832 108029728 445436399 611547694 394052229 943879649 588640471 649188514 36209409 661298797 809251489 546362443 42712445 756065606 366515918 625780498 347632640 453456092 680919884 785728564 76380517 297575349 795537133 129713892 856467440 673648454 732126516 57940291 367041050 243061389 292437084 881169518 123181704 88065177 669806672 747508662 277157738 113263252 890331402 532336866 993346805 592130125 364971965 72413895 999282085 143721625 480547865 360869557 131402464 433502223 319403430 283993673 623805490 976687658 299562451 633469774 634510968 212222595 354674998 784727947 214447832 614441820 19493380 517326354 127467255 714575158 704333457 788386851 533570424 170155725 180980451 189931133 664540591 591086013 537710720 663033461 924665847 417629165 60115653 299244178 939039075 708782901 474902765 890666284 146555921 480730186 992925279 554062082 961737970 354022247 766666628 144663496 479909801 363543711 297379127 353512098 620200669 620010138 965624846 542154859 782065913 759161042 614226855 509093484 215429416 140506667 937985502 152033327 343531851 484087745 144266850 883311934 570158920 450987585 158790647 368786873 683242149 8596519 338737124 448018366 288124761 215670426 690762993 150808088 293229384 396212775 251799439 440642630 15822396 342031924 607644480 31089566 616175352 465561017 914015799 102365663 752213071 141979205 469702185 832780887 464829548 571604202 780323772 98767762 569246683 393306332 568532845 105169504 248242082 440570934 479297750 34681951 396027774 97074504 592477196 471456608 284976800 672947226 984231305 830301614 288408188 686014464 499180399 607421557 539062564 607337643 227966271 41535597 910359212 807774946 27375848 857494096 678164863 418722976 283839319 68642913 233793835 883142357 918753886 642240450 919631454 73217295 676238574 778788263 294543836 935839595 395925269 156232365 469951612 438294736 334719404 744286283 203892926 297918772 316999127 588206801 177141254 220499310 882755643 288331541 269144244 154828573 19199376 257015872 188509241 366980314 415706508 427065724 607047292 55890180 82785393 978285611 180808274 969207565 65213908 579736672 323948146 956783013 950207194 256106348 786058066 461913159 179170020 421531442 348780596 762850991 199881066 315403428 525616304 45923148 458094356 759418260 369022659 805569437 937917135 57402709 249025023 252606563 9761652 846838189 25650560 846470480 238533246 291425529 279384278 124456046 592922176 426818236 395274177 631956224 966349710 860097927 462680326 984375433 327326415 719559258 152361069 661987648 369458878 799524474 779020010 170524580 287164457 859042319 475374635 968950876 266536117 816409317 983093719 962721736 211678555 19535474 203494913 629080900 237168773 853365979 552620151 321093524 444331113 312860975 70294542 723386397 686708790 423317428 523685631 630041846 423117844 874799817 333845951 634595303 115411176 218167596 448543653 480030926 240162765 387035739 379933432 92650113 592494265 408763280 473569529 56271531 175138810 486676103 859259858 288029900 408599854 178504373 217358897 630059347 504701325 939792066 849600735 185827540 678779778 267747012 425255686 201218441 794694141 323592093 676334192 312843256 961616553 257743613 197552832 204125559 738884393 344899160 859243797 387585862 773878698 953972287 486285527 790165555 332607317 324179074 356717605 193621656 260283724 257149637 407804909 153489963 785770307 449438232 648481845 97626783 937950926 51043789 866487572 23211077 979460318 914849941 682564015 605458945 727758232 324309851 14747284 88983806 356977910 690401270 677950850 918524652 197929419 35843583 996380557 436170387 50840071 89311985 515044580 515766412 593410873 652928972 788492714 955746806 258880851 232122630 689450912 339560507 786823014 926128733 354431102 681719682 975442025 330422904 959910572 983964774 774281385 692171482 700834716 627359308 28328392 130866348 459445980 496953805 655681610 85620244 176524018 497396501 331245540 408597087 28637845 836551099 96763154 669992688 26595640 571295896 658970452 35816813 24467682 611387262 978264472 595083838 292088936 328876110 559896551 29959254 651878277 968821964 726221211 781720950 401431785 353182690 924990727 68423796 221454379 260481016 819546595 879142003 180074600 506775727 577184630 326920745 736270192 27762690 474238150 945786264 551139095 460534932 901030850 501970759 69639269 691234507 756884798 543872130 154285616 754979435 24256131 414500443 289170455 742076439 908042462 387278849 153606916 735034374 22383472 266970888 858465042 136045791 1282229 621269535 685049000 234622250 82393271 771098279 328941349 73920171 265542657 235080143 57801873 182906846 373753364 282838729 290392815 807502337 280466262 788697674 441155082 156307604 90991068 26214469 846529429 947548753 346050154 503804814 760337296 179652354 981821541 360889710 663550431 84735484 939051733 325105555 564423366 336874065 392585777 505139520 418801181 370029333 44478205 141792651 272828518 174143007 737411707 135370819 72603507 370771074 602437040 685787493 194922738 432578859 929250022 119317776 624443927 517428776 357831056 632816909 798843708 468648017 838917363 45330406 693541113 593195117 849933842 770513171 251520816 609267752 963641450 167842413 913656153 867684002 839592175 901224411 121253486 814493598 15854989 417218243 84023978 883487454 158602052 570875756 506742858 705887247 387701886 896678442 911096020 747571010 981278782 528390796 121402532 489909274 826196865 464141605 631231646 793449039 516407436 895499277 547656479 266307802 80565665 434121523 324011437 484109595 604001934 785434136 470785146 329910879 569698946 423149602 752244641 914628297 707413533 466803408 644010011 339962982 299062960 884637059 897448599 304366909 343340167 893747990 110062394 190722905 709814484 441158075 606905901 762434689 538936734 736740404 728043233 255856569 773797470 742512386 606411442 216778107 160929073 874210320 533417667 295019026 606681135 658819711 158759588 659241572 432269464 569953284 315977949 253379812 953275461 64008200 769888495 363022310 637150446 498347090 705622961 876573363 939813849 365539510 501684737 589334954 127886222 223323159 505368715 886874619 243924266 457916503 354806099 878247825 987429801 573844579 370141630 110934750 199807513 63857244 437973969 646639689 82419701 248206982 816480381 323387554 455430561 436597746 285926269 743370392 254153681 955887987 907365569 934496084 930055825 894913627 689956698 97712906 516541511 700345832 140668650 198460514 532040528 717586018 431283494 247413503 533278418 664693796 709565866 551331764 209801164 778470686 935224184 388059374 134569615 999506595 663288583 46170049 612770126 292905898 313226814 299252953 600718921 23456428 370998496 326736352 317779841 946050314 279606724 983738117 847418406 720243210 144100261 887872619 219988030 451449293 531439933 78388119 640703033 231556688 474709516 327821973 184918522 337055809 837705590 396110598 351267912 343308320 518651121 113517133 807385088 440370146 262419903 924979190 463421788 591154910 328688058 600238405 403189136 447528932 428505666 581421677 795908719 893518867 822596547 941681033 970961521 378263134 507443728 321285321 789107352 53255916 109590534 560313729 185504672 53774625 522151491 924464002 78002168 752164559 238344155 236308102 834346238 284546598 995081621 240156309 618131535 216380004 28521693 105034311 326225406 996359097 225722394 382780044 468632174 773812296 444003940 832025201 201934517 858923179 427836214 721708341 393657988 38349398 870115297 265804953 295250165 447449927 689359808 941140857 400991464 662081879 805754648 760017575 544438784 791643722 804234130 63096239 706869987 174060691 751549647 934622074 129645308 409945742 48645339 747937330 305496372 946892364 631491246 325780694 129768400 411723387 714218378 165203598 822379357 17496893 598197654 883272810 765694184 391228693 455923945 45520500 418199207 721702568 415771243 551068446 962345917 327069670 509124446 297609877 349210314 818857915 28861228 196328664 786362974 592838901 458928650 192911178 378593128 329696610 957004126 592103701 942424100 678288225 922663193 903023954 931970085 417707375 234372083 478570656 417602317 326961553 394483852 886272818 145642735 146824673 527098344 508702008 928049394 781922806 389915637 11290746 495576250 957106758 831124950 104125961 202711203 473901358 131377798 304635993 207171186 256794889 928918211 985899476 788962072 539952617 557050924 760049484 307717814 296342599 124432365 598144048 796983536 45793537 41396585 908025986 713640719 122050889 941132791 37759997 721475980 548941403 614115141 622434370 481830473 127845871 780935052 841511146 39565765 721171892 532762728 544379406 170334424 187253648 812665917 552783585 349110981 735408214 233286555 146214315 440133399 23438364 319972811 28683098 272527099 551694386 629387952 452179885 171360777 504578639 298107094 235839609 717063719 207734964 522106622 252489250 766237140 520924688 482932283 69646060 933013118 10178916 47990901 222071305 140612386 941414957 100379746 807567271 562823548 448643557 942808004 639843435 501601244 887058113 49702483 350900799 616721923 629707324 107946162 277433678 475166025 133275794 946103296 340839159 794959781 65663838 696770840 516083190 778444849 143687124 937566998 304960067 794743391 54547061 215022880 624283714 749776874 142245574 734055634 335741861 910569199 305806794 236963856 563391416 474559593 401305280 480190859 130756295 220299873 327609468 422913082 559511810 836301553 614585938 631623462 704127361 143874021 791063565 152962063 896918961 667346249 624875458 826627756 322079423 279848962 448022051 833489654 482329452 829309501 700652081 102018895 848784006 483603633 940735365 964144952 427988059 148548972 912869070 722137704 741133897 944107741 248051170 568808648 283920250 808428570 116248985 669910821 832799312 639093294 349861604 17834141 606659397 139937279 769598220 390489334 546041006 94741949 453809148 115762063 387127492 580119792 90753937 998081846 757270078 636015748 995006453 583997009 668121267 803461147 171446881 416121592 829406625 789389566 17992949 566873473 311002062 334108831 581415748 966985828 881728227 519944295 81281533 687644038 807237135 251904058 377942993 399223897 581321624 757306615 507669273 253874478 556516503 827616381 609785653 424103880 132136137 488855800 742064250 438542948 305545600 101098459 608716569 813836971 270176427 831558868 666610886 462885821 856978777 607167714 798533055 283690628 684619596 735955401 225178352 89355749 954561963 941554343 844173879 595095621 243429165 108863887 434862445 917202011 850925990 218724281 273841397 552969229 40880102 171849018 230039910 733422503 92448615 124851346 897569119 539323331 42260091 914251157 604195705 556808022 821216805 462846270 860444863 222633268 397918359 51685017 728114485 36067210 536885838 17133906 570904787 876087398 288004672 785956129 605089195 621040915 155923181 419484674 406720226 456815331 535737797 723408499 456476821 993617588 316249064 598120812 568363189 711362125 793659647 58864440 331834177 767752108 115316398 739170192 861404599 826154213 140576851 77030369 911139593 789255992 312909570 992307122 144961131 239382219 367273772 970244921 471389013 820651710 994289709 881313675 796647485 798179877 23831315 9248482 233340349 766609153 839329466 899008471 387072604 590767988 461380636 247396959 814958773 538867957 451704914 260822820 112194761 224740969 399210035 742555204 180303451 56855265 155960334 426888232 838560131 923489785 273689885 637105056 200469904 817189958 240345603 311626587 464085863 4198023 794483517 320155465 342427620 839258087 513302094 608552148 903850334 339568524 768630144 506123556 254273143 693560422 937453992 466430379 370114492 423401421 819808649 366929527 271672111 816212083 802659587 904361607 516054919 868184375 887250644 635167294 80049721 622495154 880303239 658871785 76755063 176959420 421798148 16705738 189580049 853905029 752022204 306434091 154791622 564099931 354238127 545678748 569900179 292012389 423619993 989699477 236262195 817601287 613496463 589692727 50503821 81131362 612556995 545647028 655913640 927180667 830465354 39102669 448939927 944128155 400691163 749669484 215763414 508169575 845812343 240632605 501416414 383326853 12425197 409880397 520040706 357207800 461659764 650603634 381919595 604063765 28244751 623206095 725067214 290032857 376628239 342824288 935079960 693677934 710879949 4712099 297162291 373203120 543490018 49650434 556804918 795444109 637805888 577630692 548144996 280095846 341465119 347969125 179668020 967342367 756208787 893439699 459987610 476867057 954518504 473725966 178526374 175784764 868646145 79343901 96558630 230068795 909816941 549212836 792126148 900866123 631593179 440283926 568784723 948103185 28642186 723805152 741914813 392594537 242155125 258852232 15672418 668880461 951339772 969679231 471565965 29290297 51966441 99099372 767023719 736186710 710422018 942342796 586138649 705426319 812852377 174402669 685588832 286088327 532745150 918616499 608917691 516554345 322308586 99995523 99101654 641534127 307001075 160821307 523216951 936417676 301030935 775022400 15454642 312024538 18787256 697310836 101710412 574823471 949860775 401125477 313476486 39141019 82543348 649449279 449344768 565345115 598420656 445716479 983986318 735230407 985690390 492670001 210926427 393925211 776245425 662246609 385889988 909630942 294600697 905338491 315014619 118236014 578564389 248834260 220178104 978310165 751752521 427358961 509070320 75723318 219858072 441845365 998068778 747538658 228487525 270615942 871356499 885644492 33113380 869478417 587681321 208582556 589092173 646405868 859356287 229476939 244753691 469156252 473709855 840650428 327395752 482841647 847975863 160068202 267932439 946366362 929119187 51834720 968628471 24647799 295401913 367056431 419387277 841839357 62396819 78690310 651146566 203593216 138531256 936480620 966578634 488864148 775369819 45136741 540054989 987799948 392837075 299254135 607891179 112497995 576751009 165855592 780698164 452682401 762093316 563075784 136037224 742149140 405051404 651558688 859742935 49451257 338468649 155892395 105651088 793421543 263362416 900316659 769918148 816450239 223999299 779263347 189726488 353800443 765991595 671886637 70107187 619204902 282826203 772280305 945743788 601259451 934815606 434321394 290651416 602333861 132454936 836232805 912022547 110518113 870555831 661997449 512584354 701609107 315913341 70956334 425356551 666164170 227336622 319947323 3482196 110173486 409818168 382681049 280356949 205989800 365028180 391183179 405296835 378265674 609049718 823740646 104234229 350425437 800488222 404487582 509102528 505641655 313744270 780919773 125577607 869346045 305855942 622004510 742911513 629460992 342957130 815437959 620785346 966630161 330161396 169786388 851162786 839401371 633901095 510451971 191837144 13953966 212852342 247018127 559335914 682978447 250705897 821889007 976912624 530208317 210206441 532728304 665850471 91156951 727976582 993250484 379579379 127414973 979228743 161809770 600403170 847795449 717396451 496766263 955363580 29949077 121426888 124973256 898653294 208962169 63540645 101701301 947054538 703469591 931898710 393950801 450238349 597083253 10828464 436854432 892854669 895735324 306277315 46665133 922386174 55749853 891139668 557692069 817748487 174313356 428037031 253089675 390707578 383337525 632208415 984738220 288072611 799816941 962698251 129081729 954239535 120843331 253558174 20225235 99098050 207081555 352768991 71009066 567125145 834553687 318065508 314811376 667415418 456709624 723679495 816191196 278704033 745331489 654210314 136496789 991548355 799964690 802657274 859760835 581658238 265912994 771077442 24434464 753727090 233228740 125698014 100259780 40991896 163525524 992935192 865136455 458412720 402775873 871223491 639965885 649408164 726835595 607027495 767116606 33515685 737423056 396485331 399909653 778154181 836849318 169457253 613872319 788763044 113902717 672183998 615253919 296165861 835116127 348090646 866737699 341884503 269274160 768417208 809197502 138542378 535966807 714380157 800218336 904886734 470700570 35669655 556140090 868047843 794472868 801957267 836322439 763820221 819562289 531845144 709745544 33127069 143252308 616734016 658240926 966790725 911911552 213938665 987812903 595433025 743856413 290412883 214313430 912162034 658902294 711979631 74387525 908524809 156955232 757715406 986776351 982858563 347315435 981678101 767411260 631094906 537432289 285187171 598643737 900473030 953712623 626245993 66141046 323412536 809685748 703648472 490218713 762261378 481192260 880420876 138697756 893578107 415133361 477856159 664823194 538225266 893511684 137768424 523661409 767520324 798814601 896195376 765106186 338868748 635796910 908534274 88610430 427906384 523192405 990728286 607638209 994374462 175805874 671469549 130661684 492691982 206180457 507733912 308919 584348553 776111998 561579451 468196814 731070912 191502239 137232450 214628798 162799108 493129313 170491568 150616712 131575820 496046555 955280983 970287634 864976540 364240723 742170194 931525739 36064136 179194051 140986320 785731681 465174858 299643599 150440912 806329479 205421999 938085348 391545822 698327375 599813198 905383917 487605661 913218978 561328938 471740177 952385471 973833743 137895784 988144292 429284131 760942767 578905503 659438921 192443003 427560215 193970583 811095645 476416293 641580575 806801638 331352849 134256873 826716313 785802152 252848478 896137774 790114338 817622460 875202890 240592011 336841300 558562817 816361421 126781373 455992377 26702051 227010521 318857254 90681597 415475944 645404552 126643829 808329944 247656598 735341247 242288295 975943794 669016214 694510131 142007779 726389338 886257055 284945518 391501439 488414034 179480083 990451243 443303584 113378756 520932335 777470838 534683279 890835216 379099044 5688175 238333687 898192356 901809127 999612390 294977607 719859930 727399113 24027479 982644229 35325215 693451086 572777548 560483853 905713928 411380020 623596663 74697872 182772107 79003643 246077908 936162673 230016144 667600573 564065158 687367401 680056534 574082235 502369314 347409977 882378313 871695370 905492824 186709817 948560492 502192129 426537687 711417809 103454319 578898588 584443054 31610035 637408605 548829331 838412844 409167684 162321362 44743710 762903289 420889535 414370264 608372479 127699661 691552212 331916472 9695725 324237999 84903347 494124259 7253100 394093125 118254826 987907844 543932249 662911794 245043022 79969563 402436144 580148064 805817579 852462489 447828069 852823196 154201933 228914545 988504089 935550243 851856698 84476362 602020561 562427637 549837551 439658675 76506586 108922805 608693024 216511186 909836545 443860142 120572057 766711665 468510244 377460761 937655887 9509287 280941720 369055343 843883964 75464485 555965836 569569077 504998530 211939166 879720604 692908620 110967430 130686971 955719750 129654740 740583792 54218830 355932095 604957958 136075117 264520500 758801043 33959948 705155788 987979778 565361114 23753612 458610247 912629570 584104707 983235664 673961683 959331540 295181188 574204810 294369053 736696908 757134878 562867171 292774160 109534469 857605151 565880596 949008599 422343824 551821843 689336965 240966681 689049303 430718173 286561565 640618520 810407805 155116192 7000631 33624404 303897636 498689277 107513332 548455196 85878247 365647924 653861669 459209639 68335335 303726042 168822898 337596159 764615407 871305131 748729389 103979803 481629201 372184195 622264694 176304934 821361150 656232463 447900669 187394130 406730633 896316659 407604782 996758543 227638719 276285601 402355209 792239066 976185533 439600620 754891917 644444141 232673871 384480669 597059519 198286871 107274821 476260025 578462473 686603522 443967522 409615401 434081086 633148047 655826176 950138634 796466501 634345040 699710744 4235461 928306146 636470705 725611963 342200018 349701193 524302083 903423977 730110267 444558 829797463 926938481 558241136 306742232 752629128 217703819 737039594 142817737 679580951 884219880 28272320 282158234 627479454 207661357 979346661 69309309 687681907 516429793 469149469 121009377 610379885 845404143 29321059 506811994 174635074 766993540 660843579 239707893 768902942 345761326 342481497 716211577 564001199 377954617 83784907 360991174 649960573 17941718 553145870 78104890 721088371 438141882 390164112 721254176 508990797 545144867 617291929 991645865 647362872 880950779 450749590 775618699 292131464 617765785 573463630 887975267 512277507 22377699 865936738 912222649 37722227 767227839 158134093 417848649 625126430 921194391 982704931 954270445 306118306 785507469 963521759 733775793 352992430 292692899 194108455 743162999 362000417 554115440 569181241 619879998 489707359 929469201 530426644 939301613 958287821 404276684 717901501 176274348 691145747 648483781 52196880 564917493 262081104 675259804 458947916 313643346 555960685 133562041 552405294 308154525 660098404 339646382 299697674 941003882 19685120 218210658 239680022 794036175 657829264 637834496 54559164 365266740 318091120 15951714 975195080 756291394 144164846 594144277 215070696 237784298 484306720 937334308 568547013 249022537 971638737 521452177 473349448 290507322 643117623 854532499 550876034 126303756 106112414 469803066 447938719 83971950 236059981 484184538 655579186 791685745 434267742 759690917 624176818 608081096 641074651 480471064 945881487 514716498 317414837 535574015 935467641 627320585 548600956 277745102 956897652 220655471 381853755 234489116 856295052 678870027 573855259 219813495 991863057 991153740 596563314 653994378 359482188 249147313 103157234 850897657 688347503 100152951 416738191 862836032 921943561 661409597 549590339 656732922 664837026 242725865 928432626 704990399 684455773 383280411 650385238 245217699 86854953 608992598 489750562 358235983 443112924 922466392 209173567 699343386 687934298 121762197 252875070 188390981 438574865 266915374 873388029 749771246 857684232 407818695 402313777 842758508 879504364 376137233 513151279 417040263 960158215 792666488 250251234 988992943 82621067 907348898 627255914 297398611 985055824 955214469 94325401 553155336 694280746 701676812 979578418 824540256 758812389 190904859 986948136 567176330 623954429 687834769 12273737 981138563 941150172 812804077 821737794 35828738 729872424 696585456 36197888 568591492 738090128 678779213 379691853 206447911 928310351 360939769 325607015 464421536 840969346 853693966 278836071 262955784 483282566 582428676 794897280 886240617 624271073 936441623 570535027 789809372 354757207 702857217 231038206 31317528 648190595 253178508 929937367 505841280 264030811 298288323 917671636 164973420 266422089 585844419 121521103 536738237 173300687 487078769 93179343 660917255 744701732 896464759 110058586 780636594 225655551 626476897 397582120 47016042 80863356 556087766 131724336 735018841 652380272 36358330 975817601 545039494 792189324 778401798 690483440 626060812 611580199 325575844 985146392 275005304 303239441 494319366 340141704 38331118 508467615 94773113 495565952 443026257 734275840 65858815 38943511 81347858 83509584 519399571 781956597 481956182 601540343 118963 912667787 765569819 151338632 54677406 496822629 3917940 645956501 311713602 663440472 254102257 654634373 758505859 864714268 550940438 856427919 647822707 513945171 193426092 808729473 487059825 805499712 982559530 729487806 914225685 484559073 975848955 125299027 712001190 714314809 560219893 355371526 831135891 200437002 280147819 157460504 886316015 380860768 591359908 878129307 806938813 753619651 98861027 913076364 460287358 903029937 573347978 597265709 348023619 639081830 244388430 750317462 607208009 53874575 132653090 251330352 359416537 130614445 136132085 869387013 764616896 81400704 563614318 18679604 788249421 793973452 447961655 51301373 978571466 412881590 638776417 137251107 403717274 722167848 218132320 97323746 600897225 221191627 849794751 109459889 344549756 486119218 842043260 839251688 835308360 941923290 855623401 236623128 105114333 608590412 55559514 957232164 999520485 155053895 994874030 197237600 331490325 940984185 881175971 623271600 308595295 585703782 497896348 12931716 599221713 440927044 141173841 762671697 522982289 698599202 816100754 224475611 757963325 829714801 428238553 987486976 431275701 877691188 84534860 664112640 366712796 606412714 76565160 737651518 221032224 685603087 53346603 294000759 502431543 203559659 816123496 772787308 168070726 774450645 483486698 143112932 681019867 339021489 649071283 775875280 688837262 351406022 102909303 255217454 759075782 201683451 677284412 977595293 265832356 58080860 564650164 252154438 357522258 709268704 378083838 296812161 61091396 450868038 710048249 264929411 103622715 554722603 15636882 214133303 504943124 841636114 95095389 163537868 519245380 562941933 427566575 258123007 833654819 595073104 295196668 144838097 276675772 166338949 203984019 895359162 572224908 682930860 321507912 245273622 886856909 595158513 569740916 970827365 860288724 299933614 686207247 44858799 200027671 881608749 178548568 762392336 53370868 570228184 742808258 400497694 698067675 417909531 713591624 599013518 989733098 910671371 569104274 456655514 381180946 97769448 232514675 919518574 223896264 31393327 2083159 48862612 464191925 491583615 738765886 167903573 550238197 863450025 302678925 679291675 326921041 134799805 623234227 956221680 804614698 577592569 180665553 32398808 231629238 116246174 7643344 698955381 397450773 639001369 957982373 130859978 883092838 274898011 380693697 529139413 45908157 13314383 512951811 704717659 717501038 642167793 4899032 67242095 137616509 62991250 719480089 460862872 297306098 274158040 301068840 175295529 174960779 908786784 684872061 590245464 590257875 470732491 369780077 223146849 531012760 355450089 992457550 214388969 145230323 155019732 675117164 883485274 957978938 778165289 80426695 727732112 396222371 921187461 304918646 22437352 605684194 651590294 367534740 203499115 210964006 874939357 334849602 795004864 27148304 14226333 850759306 945501490 794875171 83242912 828661454 131406296 225187278 951699589 230541868 635859226 925507270 181290163 464570355 596727427 681663063 896413035 188057619 1269308 404086181 362476723 256006278 468935961 246091447 784762006 371993794 665771875 138345278 370799203 72653237 845906039 240874972 363953702 670113047 224841995 144683909 92076469 65047793 102059001 408531963 724947650 565988410 755569033 638950644 833811304 269977676 660091804 875776215 289774730 174470809 999881876 182002078 427699947 800276422 814947526 218430104 435831725 398379344 480619653 225261994 491141140 962913165 555990302 470737139 558684163 272295702 273077038 36730055 902927848 209149854 665780416 386943940 642533883 277931086 754041738 631687850 682269766 105872781 846628460 386016621 704057704 516434607 44075041 794513738 868030463 979950020 420554616 349097267 757786308 987800816 14372664 937750790 340962777 837698649 225614603 913314915 460843922 785912413 619988838 386244252 368223572 807955267 194975051 746242926 44812203 771465192 869164914 61520479 164394701 251255658 896062669 803106692 738204399 928690157 285780199 869504905 27989822 374929217 20397266 757087617 939639053 517944196 151204008 142919848 513848453 971330877 104548078 538024267 205758546 390940883 525831988 874296009 127703728 742143943 422104039 116665466 884540107 254633890 700693504 733488296 289463514 615865334 554404824 138314853 594190578 10018490 715955143 651465442 978402291 354134626 842638394 870248821 547938710 328838252 60556288 28296477 143100337 153959564 893419830 284963538 250097442 368139123 560242187 780181088 636335764 154538044 501826241 565208972 778329742 706303481 129379461 639042254 996518282 427347166 691562831 801454108 976698167 878106844 800744809 268422831 300418117 198310621 297262701 83051281 551647038 283420152 178581646 877268048 427807268 946592363 596318034 752006042 16445841 528643530 614275894 512299312 590524155 196986264 8734808 120007708 850932686 833381666 825815574 680351536 310942823 387224847 33097867 112538018 80518284 114141622 740189831 721476101 75216347 572235184 652037317 5559156 741138276 814727287 2342315 890479686 676715566 775483805 693832870 828627190 360034361 321780554 297918800 475297203 198418144 964408335 290552141 2614738 296913245 76877266 347857853 655190157 703551347 717360610 833240336 767362973 150989218 456361554 145622172 544904705 632203488 55073715 361469984 990536533 613058322 841887562 679919702 749788492 717732994 209081270 593929529 175842983 736893764 574593040 628625694 456024624 911772163 888198056 329700438 537839864 218993426 978556216 983401263 243378142 576301115 429126555 232578628 908029228 167054884 901121333 176815307 619689159 210977599 306848378 463345250 115438478 320847493 574011952 519686819 831635804 956630848 708061023 26165909 907088870 193544092 785364421 959653288 427065412 676692072 217221448 461760350 408928960 369909367 365587637 4089411 981335334 638579508 248972663 223272614 696927137 154091249 339263069 258830548 103513606 397602248 106694955 880262803 134020270 698113862 198565025 728519996 291039192 616006972 79568687 240030703 364487775 842984612 295986336 917970519 573473453 465919768 615398912 536506654 328053820 207461699 66536341 703591716 16929916 672374170 778591636 405921172 849177566 379667750 133767628 849372991 647479852 460396543 72399109 260917551 442893659 472031206 118054494 847728369 258116899 755361448 5050031 505301593 710965731 577991402 181636839 902644179 665892134 619207629 923135723 53686576 60600729 585245984 804275061 921967264 351704206 492300743 585523835 707913265 432009170 321019545 794818168 62494860 670895174 91510818 329617346 408914943 680651142 388617389 539649339 571621392 300694769 927904071 714275598 497582408 553426497 569830411 192637539 511743177 838860843 679584905 317287403 200726211 829211820 506576519 615322495 449776850 856376849 743798562 645453555 142148370 617001421 29048508 711191294 685334354 44259689 95639462 75980561 120875370 90523225 61918165 582510189 517802958 956064147 350687004 782461037 818105319 100567030 673917 636938813 691063085 552660261 649001081 736950298 52236835 956810028 802950527 648217710 335138156 801709762 453682436 544287799 730405773 159546885 950250023 255695188 993178017 118005616 695935696 862532908 395196650 987697345 824272747 441528321 677988634 492945633 948576317 925075612 128941386 83299945 670401787 568395316 326509275 850770767 894123317 800258005 322443688 344198059 937796310 908108586 864679565 991608648 226502156 701770855 573721465 998822011 778093024 274578560 624415553 504841365 872528225 203385195 369061466 302683486 842777761 997114041 311479808 274811540 826098460 163161314 678980677 551975351 955420473 763436991 309452026 966525935 827741020 221509393 774971987 233464537 599676233 962913856 470074559 547748852 404461490 337389732 998643838 663645020 566472954 100808585 148669818 74697564 613025914 713025917 327340773 485172176 948287431 389716639 868494731 768052437 710812335 477171276 715900809 117409525 446608378 553760221 525467367 237990379 774149337 232298246 872941340 800243620 412109242 132735663 564766509 662649617 114220220 425071414 114480374 707234817 377257373 500614248 320247540 977547697 950153596 978768401 700484538 919089598 605240203 216995563 666566729 816755576 564430681 718480013 724864149 231342249 529880689 242197862 78108771 129822229 672042083 690103982 517406538 592798070 695029344 372365144 817019172 704509604 581300169 812422843 419549110 370611515 913727775 376871641 698246682 345162166 228637357 557995224 623119317 572969002 51401622 158003521 42845233 718634483 791448081 580475196 79762038 469164460 274003000 719586363 148625570 187954544 305999859 856217173 934354659 239246114 534169572 153613337 781391143 329266255 17899786 462512924 7217640 587035485 191313257 814525220 940332676 38536271 241692420 371302963 211779347 494802509 991615221 333981031 919135958 260689400 793415985 854418386 675691519 327203631 282868119 751054466 625538922 959392911 612181219 827559632 664867961 743191997 191133132 680636484 445092276 984690828 324385479 595682028 614309805 559402300 511501772 433789876 438828922 961286425 402944921 51789062 908031210 780957012 29422414 968391653 110832521 327488034 845091573 837951958 210929153 784939013 458033268 647076656 858937782 298253960 522854699 709391149 711130077 663201178 940230996 486097600 511030258 746885879 957944545 250946519 900710049 368879769 967336605 427199003 179672980 379043053 524785340 845755624 662186974 835532890 512976258 744783417 687474804 889688490 871566243 733069446 142696597 387186673 405288635 274084821 148140255 195822336 678623178 896728835 976572720 487415991 452146204 957454211 584654326 840990035 755060893 946062114 973369618 572212723 723382133 131992616 709540238 9166699 289104591 424963094 553954598 625600014 601769903 201215444 909711108 604130503 58188314 17004758 737346144 850034872 262848744 792082021 100883785 698086502 953084512 278077723 514324193 28118034 14118366 866347726 271864445 607765649 263554470 513201620 128231675 258840032 930291674 56590976 497367735 294234745 842361752 859160259 658075030 674700502 559670377 217569209 636030657 843228785 328705307 374958244 212125444 441890387 161201990 674954842 420594433 574332025 864772018 615505081 751364884 585786140 723425231 350857824 755256905 565654414 309420594 466069239 356411472 55973121 117080439 269339002 987920672 31994548 417360988 739142147 522802964 419671797 631620639 184334191 79402225 833030028 793147737 124375982 894795073 5306357 595273219 838567586 963371102 140362880 159640113 45195812 98732957 591986973 912632586 907843920 763487496 346641616 978449025 913635303 335282555 868292268 464519681 330564572 591178391 477375975 445124449 735215624 591525928 10887930 585124154 319414405 707128427 668201788 299322556 297368547 249157936 210190764 956648010 304744500 460077362 80749004 419448864 344809570 120614619 80238060 37315599 143423359 94298281 296974034 616488744 866973144 365247541 956660431 979735507 844550529 307181470 327596811 171914107 649587306 266925171 605947411 151073884 896250148 852596023 382460204 53151888 327971649 894313062 9081034 391567333 757041953 703310874 58710066 536303416 448459817 367985461 608588227 143758753 847616914 994312370 210027332 951662562 327406029 671267810 968177868 977407153 919077904 241765949 63101136 445654834 603236670 213772374 910195165 839211584 624281876 559599794 145238678 321361120 502454266 818345291 18646028 468396193 73748672 568173889 917318392 975807749 246308470 269820952 610108823 573738922 380991050 501680533 632492812 767763208 721230125 620985224 221804854 946477427 549639820 529908928 94712262 256631500 88040792 840441843 518040917 897638412 825519098 388776166 412207435 277981637 202664378 519153557 865924877 802569386 614472233 887623488 852805811 831544365 34653289 777846894 115237831 179335830 159035273 325548707 946104169 242071422 938015299 41150986 855652344 361059566 203877637 132877823 78052823 462712395 445679419 381750320 364662528 346054333 321143489 167440791 364111796 996705228 833848704 52123303 47019722 68999862 698558594 273481072 731532597 36076835 794399187 49458960 169328797 562518735 698749549 604009511 216919653 371656367 873137601 130528686 217788437 382517343 492671489 142070422 5548 300687537 602251274 331302458 448681755 901459081 228308217 952257094 993835439 842708097 86578885 684636325 442254742 976632024 249394257 138206442 422140588 453092514 824802734 121676010 933766027 510294926 801190134 52411208 475831945 151476674 446324270 702627765 494896812 985161788 176910605 615822473 193248846 894162340 643342091 542922113 667562949 472722269 837455306 454954099 7152228 418709024 124358510 733035736 184870877 161238850 153653378 541750029 981297285 17053402 631499813 793033984 897225722 819808772 415191966 668179306 29050192 587901781 93399623 784533262 797779442 945607144 330132135 268374800 486715843 736050997 30946143 531051852 424453837 172119745 635721785 969291764 80994201 559880514 823934919 575466625 134796310 504312479 942625065 954597441 38541828 480181590 187508997 215529515 29864484 406881182 512199786 693504989 444006871 970362047 666792723 112783119 436474542 696216884 211347006 645732130 838790388 338836862 467296948 290687546 113474282 517983662 216025233 165513848 938444926 410199636 857464212 522440579 395755715 929825259 372580746 856562009 679367065 130293047 273531031 200327334 19802500 374014052 420008630 32361481 380249452 359072181 605816778 605255702 396102288 398773928 130224082 138500067 355109757 991310720 72121191 472184599 470776524 650914532 855058889 273270959 138884381 473892322 179300812 381290859 96816020 610066744 610597914 132993385 703215646 159484234 417279868 598156084 96290429 465471569 613541369 705217862 226177393 941201260 25422489 743130801 295892233 183739674 916961203 503510392 96178477 80692477 268918388 54512614 343906965 21372978 769677349 276066364 384302585 151248381 630307253 235985563 421821583 655708260 436220348 955237267 928587392 550844836 199371559 212136905 652320691 517970599 197039551 452645219 698434036 906801787 596325024 246963633 398899798 943527403 184372771 304259874 570295355 935990608 678426227 210146108 403100393 442070686 696040478 418965511 168553861 188329239 801423307 377925479 278642581 27268999 144052624 916103821 450658718 705541881 328509795 249817632 808387015 247392751 594988452 291762674 395440276 63104111 502663874 925949259 236158852 774108105 708701091 683447863 364446438 874256019 695102053 22365283 216580902 818070353 70228163 270144562 880657313 56046265 740280794 163321513 134361426 305614558 203961023 637315491 405267523 237663484 751034677 718574248 943866787 242232922 855830241 578283531 31387848 159955555 228624736 7489416 875484396 841542551 9316572 651164915 915233976 527044457 153892298 419698413 265866597 580955014 555494564 455347179 521503701 365779775 888410708 145428430 458222554 335238859 898206378 314021185 387833079 763436767 648874523 346639788 355049446 566672057 543009616 806492392 930078156 57893010 32892033 536899170 112423417 761552346 161331032 66230161 96217043 433442457 872582257 857703421 214546908 279529527 415265671 541007524 532287520 250369756 341144922 77726362 671107222 968539367 97674201 773995236 275937029 898939640 820658910 498423729 351843012 952015137 525931613 393436533 630051077 201365154 745339936 713238603 879533086 569756643 249891858 103711057 567462736 663316400 725706038 539049637 749653068 32090814 470916935 809430076 613174192 601238635 748122058 56340006 982611541 525081719 141304052 94834221 246557055 211047961 661756172 280634460 920689858 610921788 623088404 139696756 207542332 321603117 112609025 523978024 714143456 973286047 786685379 674302638 557480738 87223595 209666294 349299305 439628140 480835047 263225781 196001236 886351586 976838350 554932707 457264000 217775225 321871631 705566455 671164161 921057211 835220216 703316981 952374773 983792759 930470858 919866738 97556056 298369200 611809608 445423886 761826252 316148906 961933326 872738603 539502796 322887608 210861632 319655013 768830389 596949544 681507711 743482871 198782524 551346779 173339483 462702749 644048347 537198590 726681554 927531360 394063899 536114571 455525666 71589137 426034464 881346008 793727262 564175152 324547135 1868554 895525328 392698233 140139777 461219787 197744157 788127433 862108441 479883237 632834379 302302964 882045955 886576116 359866885 233249667 30168762 177873296 976519523 70476759 237949018 877792690 715824808 716416903 282791802 331414239 166134974 585684634 773953672 303693696 796141825 658584666 189041269 750331509 772588143 926805839 403952111 988321675 326666738 708443824 549660014 780774893 596598354 609845417 644531057 645343045 766459456 455638320 526035894 922910677 462662363 790644943 614020961 85887285 645492690 369940315 289927788 590343536 153948603 796306691 25983430 604527422 600664401 964959060 793987823 72635101 241654284 131645934 719071404 554663731 458136375 940267176 873789778 207900033 16486567 243017080 102899515 293568642 155140728 628378975 108648976 292931799 92300956 704734411 56027307 815987610 972939865 663414182 599837084 131719110 408608294 174531215 80436184 581086449 805214364 756723841 564124783 690451748 28554303 112300449 27425972 775439569 160591579 825833645 75373765 293115673 89549640 694725691 440746680 950378926 747150672 655945116 725122275 593189782 69420490 447850441 23299217 423676376 337624504 319191585 867237599 971489314 600184630 58480042 936579570 492285159 780496544 716215681 846434373 451962918 542099741 18334834 78406448 195178201 162013587 331476925 334617664 76749780 399072573 825399077 556604911 941271527 762561448 439517670 640241754 411343966 469238338 306498235 906906758 250348279 897619002 289836011 232937108 380658560 938670176 356394173 626378832 461407404 641347855 794177328 459816626 686829823 127267587 810945741 610490280 377230448 73750986 664783352 441569748 781303883 62485176 953860240 86591692 257337746 347019919 483780159 661170685 28315406 271752812 214688808 791043844 890575323 260125649 294400488 351954584 94725501 744963948 480446560 106946460 392189739 650587076 487480447 524089320 140660221 771866834 455471413 353006564 781033760 300323916 592508357 48701037 343778610 494229340 365162665 129333287 19573893 645130062 324787197 925469275 944686755 288231641 591425460 175145805 869372371 234366746 503876017 557745164 828547825 790402919 410060406 393998011 349366991 417892445 145925936 808906448 743343080 430655605 667529744 332313738 866573167 912735661 48048451 167978390 47448592 774166552 806554423 150327461 618781072 721830699 104159064 864319692 84208681 593376787 345668216 750053315 430590740 717767499 577980955 988411714 729235065 642709993 620033138 937377984 142630742 503981067 103530569 147252671 874544559 68843336 234082131 597805653 735273131 753474301 542117434 673133136 911141067 593308213 912475125 486692724 599771315 609986605 281532144 525805243 386282892 713716306 261318807 963784277 124395160 390096819 332352531 16246192 468896152 927281795 81393758 509508618 316131536 363741858 112106745 874750162 464609656 730044130 596541883 426049676 247796369 832899440 376979679 276909768 605280833 147242641 5264278 337640836 911417115 369204989 617648010 511838960 18308120 938591529 864870414 376950989 552309941 328773641 162417306 903656135 108206091 964447813 661489481 485672474 202638287 668371658 718750489 414231646 679278626 337952722 467530551 792611624 451922429 974495273 591295311 690322034 115268847 441986526 108764427 516793618 678028459 701778337 419280958 274807867 622128279 179461835 458729211 748478772 792557794 383498737 232854712 680990102 34365639 292324048 324419543 51536214 572903316 471534978 281742758 648136672 88139602 697230320 683053590 34576978 881546720 529539032 586302815 160220931 760987757 967977125 745346709 70988042 217142611 361152651 444244561 947094580 370474839 505586556 387091351 677641814 952259785 307794207 764415487 273039230 749885573 540591269 377208773 294008955 644062657 919216275 999903037 65236055 904168906 658230671 552464267 517919059 979455115 849297574 170036222 58548949 722164953 671954776 573251261 157131125 988451342 654594981 338442673 199968579 391104846 776205800 711491871 13685144 939142061 302435167 88659011 722574004 470948146 870958758 610881091 530886079 415842250 468895562 315740024 119455876 135127755 727582703 68957071 303498221 628176004 925785215 548653895 857556034 555195261 827729252 923413274 944058765 862684735 807978627 627558211 264479073 205667481 312943382 26369138 288952406 255180496 754189159 88332187 935961999 919927511 334812607 302139465 843747986 388277461 825064555 839350422 834682745 341626795 589048549 473330406 873424320 551715252 430756354 134938320 86959876 208229115 290694626 679765510 424695668 390160836 577964709 308567398 301406374 304046425 786493466 901054243 551237469 614113420 858474742 149981972 941920823 427053418 723342582 628497955 214641270 86494707 265785704 316742641 626814184 991814244 668831581 952790452 384340938 289248197 215962858 259896847 627701709 762028785 953713075 34427588 785289356 376184741 301502502 640533743 284700664 17495411 113527250 61387876 513276860 369171910 405056095 128841001 314438981 631976216 398483719 222946659 962678265 854266600 642306202 472885805 377459655 345709256 115637141 170412597 490266918 46517521 383523425 689832703 75850810 415030341 504405160 474607129 649296981 956890092 208491580 12029997 426665865 458315519 61722686 523854577 390871293 513898750 514135734 374131867 905434021 826992120 381826546 295915037 210094579 395796001 19077465 619699882 334191302 599716089 392139680 550228353 950426754 978315100 131614975 24871074 177813735 934335669 707684900 4665732 384118884 115439767 349248455 130154327 513088117 818554311 739553755 972006814 712921450 415857669 295421166 978223352 807650135 453358764 835044526 457740913 358934369 326524343 451657430 682532018 8848678 800735310 579429949 428141644 942570309 672707428 979967915 899920758 913341247 738976137 167296524 969418491 124600825 518270338 268926160 183341491 707604375 277365877 853535784 80656350 105525380 693966099 427749212 256619090 14448056 157200508 918966906 213693201 666006010 561504895 869898264 229305796 170638002 90134596 669146318 306634336 16924598 299627515 739988559 11647067 200816253 800938617 622805915 983936054 620561739 843966174 638692657 526242686 755296647 587116489 447437758 939971450 105105847 853184309 920654370 674007760 85525235 306347559 251414932 75456671 10534753 318276927 734337860 606185386 369669660 949275686 488782955 462674825 946993382 337122829 48287167 702837084 660328618 839746365 473608506 63566018 327570275 110558914 716476989 366289144 184023547 551522476 582001966 9633534 836809518 483979647 468131717 733266252 53030840 360532812 504511916 895064644 83530454 911194778 390568225 204018575 185638341 648514086 256319948 346764596 147374167 717816012 978011808 48867170 780348590 786113435 159762106 470625857 502711531 377822284 730461679 980645264 139510988 24581499 127172393 776121588 576377285 724691414 94291646 280714282 343315959 310841443 863913797 63863109 812376319 772052652 515097149 27738061 315449886 3390422 694701574 972118266 792587640 570357337 56016175 167246947 35571387 795729305 237900095 174990209 764440022 337478032 207182706 582825420 222291047 223934137 215804859 498466312 89910916 971675971 669658934 698314895 480434446 524926923 446708399 1611361 391177848 187225250 882479603 241515409 15522864 302831193 255720339 844173473 126328773 102411637 987614141 723728675 598848489 797480985 237402516 99754051 858024606 976159282 442853841 626062035 85170776 163599106 539407611 291995455 175888609 621134890 141033657 363102656 158068939 816465789 987977684 321007461 860119105 300388091 681220375 383298163 370525168 791669337 204394602 445742883 700305918 537909985 864874900 922304693 414446563 594953035 27416279 108704787 315108098 262597558 560519735 565832653 119968385 295998925 92699986 209340840 287437465 569769585 657884840 374827083 737235729 579270326 669232875 445609956 993397729 477435625 211275084 613476793 194229278 929595569 974703602 479664043 484060333 166471947 55140148 67666389 225918058 505926982 932072061 37596741 359175989 577023551 704989643 541180945 19979171 870045220 114180047 618715553 308903565 592817588 625251667 284303685 567131020 153696588 79054995 427891777 67690550 822503555 535454777 268204735 626154839 544982691 521596959 95601983 790744370 901513285 319068994 295954596 845270882 771140202 489334375 466478046 54624559 116097277 502118032 210138689 714126350 374471067 371044653 783930670 99493868 701722930 670254621 52173349 320736975 528888640 726151752 655307322 137556794 663528890 256952869 695522963 188868099 125781481 533561318 725395571 875758772 296252333 797289215 58679170 328875414 909928240 657285577 131441007 299635392 719238573 822828857 910043538 48819079 764390074 668648096 147439396 95511580 17644141 594187549 873089515 614419251 796755597 543222649 983205786 712938544 621926755 931417358 20353332 488603452 178881598 658503186 711938138 511155809 931312139 139760866 5652685 218307012 989713603 147439405 40360839 8746169 311855552 924668045 588095835 954903533 331119505 170333621 218947751 208826515 21240858 838152404 230402432 418782002 419642551 114265026 694233603 268516261 252187746 433072406 387618456 749447782 261922372 935696510 742246739 278590006 698041320 923657841 662736436 327574769 254785343 156899580 523005578 312650283 202320424 476225 657715022 101903167 624531490 671908573 24543869 123162263 721432861 454299045 190783094 123558622 346582798 164113660 961745322 239292090 327651095 371625748 276733141 325844999 173969556 337295763 224533214 12834499 917778822 136128714 816715795 374517122 274910806 912838472 228958329 47316459 598402484 425735576 539226149 247631679 387141148 455290180 950665541 806956913 843491602 735587341 866900534 2271781 39653182 713642571 592416698 433135553 815171893 867339917 485630289 938028451 129135058 9908371 86252744 598229443 797508743 769005761 942584389 562483207 622218799 210917826 690441814 392910444 749050405 808218322 31289787 530713683 12687130 669912169 360458405 594625943 36573339 32479672 306437878 482644039 517787790 842840023 350749559 334734004 349087525 480497745 79136314 228471768 889676873 678053566 368313907 565169752 891247872 281816083 490956347 911884490 589908323 973217534 687802121 707685897 460127833 601672811 522903838 586025837 983716837 987130220 248269358 123417224 294294133 286434742 596388985 521945274 822277046 903713096 150440531 407978513 145847140 816024492 248863968 550120615 637777981 770051641 906855026 523775551 841301439 62835646 88100103 96844827 902102122 792003157 867540733 722006088 335966554 996203363 114304747 772909472 827830893 198855004 251555926 748889422 573532164 180016288 244669376 277529847 745426374 431304178 515484211 296369843 77709399 637801975 484496425 107865916 762346729 360674499 987664117 259174484 796935789 920516019 958251322 298706404 960556618 104771420 613603938 266446779 92568994 871140022 930337790 555630607 563514552 864030852 206485963 960748376 984442358 438280916 475525035 72619955 903080638 436355108 21027684 766588692 41837724 558913370 190822075 940671283 976654319 966831480 238806765 128688814 531827245 307803409 843618576 643336086 1344972 217735116 623940137 20305357 239085590 983953867 808228875 792837993 299582364 332049811 160600637 326699399 8362490 934834605 801617991 571068832 993222369 563426707 517092464 229570308 950245282 486477595 423241651 183596184 625437833 59294797 994181964 212334365 476408839 146549074 836172602 712762909 977673014 46835563 289390325 492895526 647464228 772249020 445478396 239688711 621854625 441694293 143141974 283842863 757693341 942221836 255511402 548486048 1190417 217198878 559911677 118230319 246836104 784883541 35379757 920623205 604594254 842578195 454702632 913452174 139813014 455333525 507563852 969231398 521902540 706966450 618397940 901614782 438974686 38819522 907245904 993580098 947519372 351342991 619508203 799070137 44827965 837480994 415527501 849774859 145637467 789941630 252877305 5729544 907197988 682795891 180355437 560559321 984679074 232292260 533457469 776923319 546869925 538360406 971204937 687450674 17677601 190098171 775507573 447751764 690478865 933726462 420973951 9212904 703284355 253638016 256272898 355720101 624984219 104687631 915904645 615245407 918248769 886541150 898202065 7977439 330242783 33297362 360665337 901850934 597773488 309358438 764332609 657259216 481468633 107444297 868086621 871898650 979783654 826364953 630513747 575231911 165531911 512480461 76801349 483026923 854971826 550279746 15524887 855191594 421422134 634287122 238719766 35599803 714937966 699508569 853994748 226561264 373671630 532755798 750918204 11781863 116013307 242490210 656754415 280700965 203654374 318551133 457588404 484973263 618235413 154850981 918410093 363935289 166249126 57942190 642547657 844726117 873073886 172267783 692138984 910913874 595619001 378342158 878235242 824691388 652543680 109512507 5016399 568492536 294558370 400211292 167497540 731864157 608904455 300722846 28679537 973150603 385357438 251901262 461127885 82970919 62682523 340977557 732168048 431104764 886829282 440129443 721902272 544372721 286882983 965167187 647767085 145452339 24994627 689291954 259197505 976624165 554814558 216305207 457169188 973822323 416725427 827515971 23996573 871165703 626455438 153343116 805660174 928154932 187389914 817569327 328718797 30965991 342497917 663307243 737824129 574987553 351314050 450686891 144621008 598616621 793799145 545647824 207258492 16264115 933071904 254749584 156330354 864934808 364436486 933358166 278191548 750211854 392337268 968906910 102439767 637217146 140577757 149849614 224271272 399249115 263406239 970115523 47114578 594088085 80351312 709885193 999190562 617363395 374168644 434052645 953581998 902936284 164176463 374674575 775588727 148294896 550145944 782619796 17920203 926099978 638432971 368372400 983730696 215694204 75941532 885358011 261685769 18668328 837685053 511611666 892816705 925613251 809253054 953470011 724875117 705143642 326443786 673243267 86004132 639211194 355351373 709882472 470703621 698948106 20005403 394406670 159048933 404027449 724900664 424514565 442909098 249791642 465144171 919084436 14837161 338444861 517599151 791897819 514769093 283140762 732429264 13935309 674697819 563426218 382784654 862847390 868594287 454660635 774402405 97212334 710419796 471242703 558862488 56930949 19812751 328398331 339000436 370349309 801198366 271290321 724758177 393254953 297605224 792685297 858735918 286074170 102266271 334897348 637282608 483988915 597051035 880084714 806145681 284383786 717618644 243875194 814662954 817128446 600708773 947828226 465810465 152865704 560149080 750090696 987728051 781107846 960388114 239329246 948286857 366389720 854533067 796931099 129581697 458043518 669835026 735754496 707735849 286829398 343635116 574044886 234124951 225673016 27646517 248567827 256784808 320964028 374692505 612610121 287777446 942396296 158578929 949042383 433762969 726735075 111530411 893907145 246431402 237222490 415271213 695465774 359698102 784054257 527229123 582021534 676228737 407459840 74500889 734529791 759077348 234052405 635935172 80978425 145418805 167917273 496707417 493971268 994438257 888381228 151622207 585054595 816894024 429037100 219378141 71812383 771326062 765217489 711257468 198319039 631965483 777990030 91748311 230575495 816267335 154096490 544136580 950226222 748113921 814725992 32500644 614743695 277391735 964809455 203530796 380067365 265313116 195395033 184557164 750243239 434809538 118898710 805620337 969953425 541679417 332982430 695409877 916670979 345433891 11141941 422208211 491079103 258521750 780247953 561831993 215805080 331473851 33315727 751448891 506255351 90878859 19204808 259631904 198145375 531712739 731902887 677759847 808774929 41294181 604922392 163973251 293989418 241170348 423613841 997677328 830535404 826229822 341986655 584007167 509946478 79663079 124336819 631048643 551822838 845007907 915375410 219075179 949409311 318721451 181920254 398383128 677458746 605848026 898782922 536689554 543347791 356835226 599152184 918761652 146034298 873613661 22209616 978769922 35826562 77040212 981275839 860607627 645777096 133125532 437422814 239030916 148405154 952846573 102297916 723821112 693868268 473153553 602699828 847127972 25086304 639577403 858742577 770721486 616554439 428408846 891012051 692765643 851775219 829001026 771480532 899262406 418140961 849188457 262441505 296991415 869914182 227548247 534222435 954933243 720243662 675841552 491118938 148891651 579332418 278748417 171628924 38032162 962213584 952710323 174982659 354108627 607656121 491112163 35500017 734767508 917890955 483314476 946433004 18700963 757348958 183318184 517396785 307483295 200912465 338169498 847520512 910412922 153193882 658815378 447092105 228643420 6739172 119598598 330749612 724610259 604758895 738879161 541055190 996501939 688231606 449275791 270729036 447931326 125583902 431701277 962201167 818569548 417707366 246037213 630452129 737484753 84956606 631669221 970051865 400898476 136926137 63575975 138403376 82085949 842369140 416213608 652269544 744082525 536084514 399757761 297188384 757778245 920082513 833727836 466311948 601010179 904483494 346373531 204862371 669394805 155052289 903747761 451037320 52571084 902511829 447817421 31325138 398686344 95413307 235838686 115551298 965206905 469897390 507152271 645611034 733030758 146364788 526507887 587619619 115150234 568687434 265658765 35051786 519192048 189798104 631483898 140595278 478793220 929088157 5249340 675230536 399020630 914131550 898439835 706246618 126919648 845075147 227206853 520288306 468544239 335998292 795143898 60239775 894793725 739611370 575428691 398788773 557174440 446301132 655895183 215638658 546455014 616543455 248352512 953871759 223923973 905647156 75639429 451209996 279319391 313711633 877019078 338549279 843383630 944393595 567742546 613882387 795450445 789937086 987963268 740246003 81346909 839656050 243413839 811167227 461722746 803636216 892261344 516330885 553466375 677049295 81712651 160506334 779036456 293506981 659053674 778775800 167738511 458275630 422718154 760249112 705027315 672975978 986809636 443130117 85495335 261891803 760304496 190593359 56933060 846041380 981187283 105065072 36419884 726952557 27492614 671118766 584101849 321528203 478471523 381897905 808000350 485885886 535273407 463177537 901412441 322638602 300818549 442160366 243687774 1769844 812479630 48747812 211119881 158907695 947797767 892566318 464279272 26830153 589688166 290602036 526700140 406294756 789400751 655231134 936179358 711838517 580903691 423382532 320178845 466238430 226027519 855106767 617535757 360212695 949457469 938461029 304994989 928516259 367192665 340897524 511901347 244861021 346473058 293725815 810228404 512188825 723684056 182593841 786086207 689043132 252096376 901474450 680455251 133185294 248574862 792082723 679640363 645336627 482884053 233718132 357251652 126305091 463353769 824176563 553868635 133224921 701579964 907152342 738984492 206501911 342621838 777483316 520926334 338923304 99753337 71712037 868465092 279295139 762745185 777855290 363057556 883130767 831489044 163138091 447996035 142674156 364176157 577930728 615634653 242188340 68730323 118262935 279618862 627001172 312110753 142872016 394555991 839071119 206403977 757177685 326763532 510833880 712779247 159659486 863315429 297116124 249096652 439568856 93001733 678374704 84432058 877265596 374989181 608179744 185035385 157594760 523806154 622071068 453360122 379534431 588239041 432154476 107594817 521439845 571005239 869368960 337618775 818589244 292055325 556369824 331072445 20106730 209477507 823141602 186319666 832681742 709308650 693203943 380945917 211330308 250766589 367224922 190333333 9404356 45647022 44918118 64423263 781184387 453832138 275494523 732624745 705837956 951982527 346377521 796540165 645000351 664195415 563540157 488532105 904169829 487908865 828509989 236499119 487106247 908657785 671734684 840138953 922643633 535826106 612585372 471966846 590521622 440445737 212606761 23486402 9383018 112519844 808088889 327771218 144116660 154225570 319862939 244865740 82987092 378824168 621522109 619625792 911796274 760013664 173850290 776184246 725154672 468169500 76569089 725480029 180576582 510389209 850757693 313296859 472737400 606007866 978487958 474081537 363165395 716570815 255669145 21822682 511352042 286942594 197436763 482384663 805684277 515781040 8133127 941643966 654314404 104425743 681192704 469082776 613298370 187767517 497844571 751520514 689976144 545926304 559328055 339577848 491270097 383425629 268622379 350323079 349405397 242629298 18116787 926954127 24472206 26711174 527626358 569226874 956537064 258121071 788233751 514428435 118356460 629383791 327926207 350602336 790602541 186843129 87086300 858282043 81509908 605407448 150547916 339056145 658154192 536945497 732049802 333182420 918958589 456214890 613767209 965936497 504661047 274480552 892851930 715691388 255208029 154505271 448325379 202240400 166033009 139100342 913958363 558471750 972385722 445592510 11693358 571618570 963910827 52363828 745333482 66319618 655926307 618618728 304012989 161447412 794376735 213579957 595277821 297398411 212201456 802657874 14785584 701206939 417659753 115492791 886866522 878433540 379768432 423637501 987946944 617924881 656586532 219098262 215409119 872160516 172225405 167092515 407456593 316936011 457991446 598423160 210654105 764312760 810723732 64391497 495816304 456956049 939347845 493789365 665490549 798653152 752592326 887742792 547515969 607300383 406709157 466862629 313512118 850133806 892371300 485510060 571193466 987525338 151930533 804301693 292911642 670982620 269598512 605749602 318824033 298556836 877549371 469937009 306434682 323725854 463308384 479248018 667226314 962364302 872831181 481324124 697488191 432826608 249799820 354402950 31161353 163037608 442990764 491471870 128463615 178494831 242850230 154362453 797154453 199112422 624319205 692053242 592252555 467130120 893925001 201433357 148629583 358480782 307285541 223910109 926949420 165904504 356859207 667612916 833805331 453198107 711646218 689815028 4588869 329041726 470193670 64150246 92049100 395888138 535936052 896015101 90245124 684992102 430525047 874358707 877859390 211045173 916754216 726576997 723094235 825430175 471935788 521325547 469889221 465726232 69210494 220438916 379905472 86472684 85440566 872582620 818388889 149432050 304604703 227293352 634499062 598602288 991025371 508060356 573681875 858226221 749238407 982192050 457525021 556458469 108390752 452327088 394261176 196275165 485969329 748805662 363813208 261951896 534418642 988235564 988257319 164011677 941321320 829210907 108542727 801436151 609446191 175846388 936214176 69357681 469418524 304494455 797431529 103917378 512727936 674372914 312651362 288934851 575619214 771999143 220772782 302836326 996316092 517794559 156525400 816708086 518753976 157706061 185701419 134702246 339267816 255452768 179172682 777124749 252899892 835125731 517066449 614995420 888260751 622504764 162150252 42284111 323570834 477409702 515255888 173329572 895560894 256154303 471695292 800725271 98472508 629652651 436822992 611843147 766306079 257240267 860728676 676057737 918252829 377300537 508861059 996628221 184401264 412351657 203626272 442156648 201062086 548656667 150103490 919425929 846934844 825022916 463560987 148700059 276897786 940228993 393681476 232054250 194842369 563411896 338503778 356968549 394251094 486705264 543871726 813155053 435156500 721946194 421351016 753049918 27761519 381465033 992966763 196256552 87277887 37837364 299114148 929858267 320758366 122726773 140233692 160569545 36334422 690437301 347346685 60299559 228176898 637107445 292260830 125484769 944485772 248246907 122266873 467748761 779761024 859267113 28340780 676438565 174879044 257124642 439141129 646622137 679501624 819790561 192634158 881953541 44808820 529973068 563614413 467069517 447668860 774963402 987988089 211564984 204711549 276782472 827945837 549046870 65013327 367656243 861385067 264318060 76079687 534651182 844635765 421719572 729947194 290483915 712199111 356263631 904491537 22362899 754793580 975312607 344559349 790884736 508561142 174604520 459459210 789729298 498466935 458894128 663028831 74258809 200859999 839217755 666581486 190645228 739103772 250067689 685817842 19667832 500818222 664625245 761061171 572280786 485034016 983443532 244122101 483471125 796481935 84500771 500846734 994970622 480889577 186031672 144618686 565454371 511566160 264581857 986474697 747524375 999486604 883336548 541739804 780999813 441806361 154052419 142678568 817038435 984178360 621288617 309585360 668443991 548555901 206963920 614036066 763888337 881553260 945435551 244553304 561127663 150993463 565479890 592155988 22047775 320793306 533821429 602649220 905151274 41135404 3817645 891132398 90652905 669123883 125057880 601393206 55473247 327172000 40060638 902114563 406587297 26620582 532138227 200105399 964736148 277293025 69567003 535039385 30423779 32125805 311589491 280281448 264948149 836222674 557102903 666187771 325993953 819220831 51265253 505672230 403565194 429197186 282719727 281278301 330438080 225852315 42380063 870983291 225608948 454004985 256209913 585038442 652761545 223097352 804647134 261363638 281169388 265243585 925242400 716399620 678742274 741719316 6253601 713893088 616957757 256067548 265297624 94492206 803788290 830309078 973172425 205963456 584431985 257901911 126213746 536760234 389143502 438190356 272363373 792214036 423937644 108837592 109838076 5362265 869725810 840674626 505378467 919273935 386058931 322806066 872098096 992294883 339640614 230280991 840970359 482518303 205933270 899805088 759203153 246656784 551875908 553560427 415572763 389289556 195164074 989267317 664077454 747457797 62194879 685084943 891040855 219989054 416002957 468326030 846696624 524415317 421051891 570436942 557691543 30114448 674407234 744076062 119952779 209432010 882890737 18045233 717651861 162491890 405629466 871230006 622970625 354415406 299099639 708618120 200195840 848736351 406198294 420885359 277086307 452081622 176391810 283361791 821533128 51437445 228523316 114834087 122146074 396172382 159408694 997546803 504931570 163563788 788431179 514325102 675496378 730516440 769882992 565032051 319352059 306440439 172089447 47675276 292031117 290538144 248444998 309872497 156801501 324301151 789408426 801734343 752775469 260672233 746756959 884028282 237438376 183603133 915416761 337872370 600924880 31895965 128832612 40066071 811701685 558418645 479308863 714392116 975077898 571494901 309933671 854664264 839695671 988226405 219656442 609414774 439858592 439681075 541806800 765050149 131381987 121517418 513833457 739683054 925914372 373536768 981739913 648085777 887212276 393701748 570159837 853879135 402801772 800751325 385500104 443853654 580037223 625507290 90922554 420493960 153910735 820262400 949272674 269976877 445654215 653385218 749244518 47579936 342331259 79285130 121739156 813804218 829600553 889499947 234287115 595260768 847418000 674297037 558992539 232365764 466930468 314808113 183137072 644042238 183228795 226437305 920739835 98529872 978441519 764893561 961259781 969044540 173266432 257178327 2152915 627557714 352493421 33854506 464806732 942246950 467985336 804520405 90566418 484402784 727040518 131067218 88818751 93167493 901679889 795353424 936674863 892362066 739164491 844350826 852475842 775856307 714315619 113097623 691085824 546331083 759444684 927566796 893208493 650974414 741443393 224046626 522329343 643112202 607721651 74889631 837794178 360381393 143982687 974770854 261392416 867565739 894822377 168987672 608317612 39236918 30302187 767857101 540955146 511090280 385978935 676016832 395605523 33703732 176477350 818867938 836860473 84208014 27880743 902856697 609554907 276471050 78796523 322533994 245881357 591887724 637737042 351082489 948740845 992493654 45322837 625072489 513350362 410397191 349028136 269330161 377071170 899704931 28111239 295976331 892541596 460097453 156779726 738252402 814483550 930371669 238646688 176425350 980988602 282509418 768374720 56569591 975418007 427964613 580563608 716626449 727507042 541805006 501979256 559479497 691380268 409856270 99395862 36418689 976961938 32377976 78609415 954984475 557856301 421174135 425344549 289910498 244908052 383872990 385053001 500364527 118926679 831095265 490513262 534827497 610412415 22913199 573483131 926506730 190746650 76529330 968402482 58489000 849449296 825556681 485771213 544674051 139063043 162652331 977797622 256835382 269327566 326227140 645481675 327185196 640530109 912162670 617048709 841959644 764509938 796757248 74383894 271708469 525222848 456786011 63409441 588188314 214461178 46539763 733853319 320899302 177494029 913765692 762022112 513850564 171983129 188950132 894244233 778663809 949476449 147064909 289664249 26163428 814742061 395798373 570839848 998136289 243217518 266776700 92380484 228257349 491793237 200611174 218965535 396641743 572834467 625594839 588470015 855580816 108346786 772447385 655870725 803321078 492678416 797990503 660742150 900521604 781574172 127628577 780269715 327536098 747388642 238375288 476358300 116803821 365900620 937520362 720773340 658288123 712329604 560939964 800345245 238925715 721068567 378435680 870800626 979276519 12384997 612819692 779415545 876954157 850760171 376668359 703702279 937354638 974106820 619032416 172126047 681939989 158663516 393291185 464793638 459683638 114520317 298265975 703300051 632771143 641943223 280567913 294257594 623619717 335232448 441372815 428404640 84822865 867963705 85858522 989144640 614152439 153001057 458779944 633475335 72919700 207128431 420250109 662991440 9099313 762396349 123889775 441724318 423125546 305032076 101301425 655439401 697460389 914211845 750158071 403277577 144850221 947712961 470241460 925378928 550849391 226300833 734823023 359760145 514650737 514292135 658940852 530529018 950189110 70510078 108150251 695059199 762549733 80893567 527750108 602125525 995877026 148882818 112296145 502962884 277192519 481937550 972338891 707867592 119115139 884857606 421805538 494718903 234673541 800982543 598449255 849897119 958080083 66418796 78404943 455149943 754829888 609262512 7796705 271592375 356065916 709272392 698073300 770756197 88392459 853872930 661412254 970804181 317959778 938474468 788796505 214662263 730491962 500068852 159769699 833168835 734144130 522207500 182373257 15279348 922749092 639151257 381619549 482746912 743004471 624715356 914149260 128590665 882818948 505352326 359018245 603869151 300261100 717179419 318290822 701904016 647126672 626471316 958721654 656700531 930283033 174896730 789295162 510592128 402360413 681623524 336153526 507286244 814247288 325397461 749900213 369480014 923181721 297231934 103917031 512487493 235301062 782516834 588749722 611346350 234652736 213419726 89562856 416736032 194053270 957158703 489194304 477302663 67098515 681696807 139113306 756402155 992880939 230025212 558956294 765450426 657080021 868822877 574664990 112744032 902543631 343402567 185473352 144910380 619932290 322627782 746215013 277190968 796629363 924139732 797454690 46247923 190362929 750855354 541203838 414190561 407285116 790274522 64649213 71850610 914481128 751467558 449496536 68269003 240390852 549656739 980138278 816356339 716666263 130256179 734072033 174030713 341372612 931455341 738034848 445805548 886432037 192280473 41080021 302442223 455221618 454260907 494568731 758428206 693511313 429755766 272222883 773701995 416229148 486610712 192521414 796424568 249601137 326082538 138538230 654125139 251378294 147973508 979971107 919731162 572868127 95093955 707097890 976241501 423101583 510355166 64673891 969891525 945409597 502964954 934091446 196246586 512457392 876322508 815030173 735169012 154840760 564256536 634426668 479404861 799255938 127085608 386438900 655622750 331858378 243995955 477985432 690790814 775390672 295332251 533956146 118624656 348629126 199346688 416247315 637095608 381839190 694032362 150811738 903698317 180383792 161101538 276335481 38856409 448979132 562874892 773894609 906122950 526101510 529611800 574605546 641985332 1345638 544723901 598375237 48131475 698246857 170646284 282737559 587969475 674253590 886304353 75681041 756541949 957464031 451068269 880088174 876937755 248339006 899397420 619281997 865495422 122959056 132496618 861199742 922921871 642366863 552606119 550835170 71023060 321435873 645679790 90298799 607056663 517350537 90957374 939511988 419412805 506150272 92886427 339477795 521523028 414687455 763749234 78715078 418588636 912169247 694896910 871275259 34249098 458323556 676685972 567246405 571317099 237172657 504499895 869964451 29512830 16856809 173156547 646422054 889187308 893406465 987934140 581373920 922028342 970952849 795265488 101013458 796706213 836323119 558214515 686299407 342120083 10246289 909698980 358401792 207196656 964966139 348122803 228869750 951232285 720404903 136007135 795023643 367600795 849007019 68915147 978214254 130758238 581002850 153438691 586285609 56947921 377468854 421028763 684117192 366448075 598107496 36881310 257086910 590165596 316094497 885053440 465855442 33548687 714507632 528420181 389034255 325270461 60508657 498729428 738529738 625621136 21991656 955192238 505647117 231885858 2071801 971076867 754551057 87054828 185665735 971672139 225946578 455205727 466598311 450260186 530060102 510188424 389013134 870992949 435880308 685641058 216529005 516939312 990140918 509248421 970945067 537695114 458174592 72553510 193529689 310956229 681919032 604449390 754662492 468272766 75955562 232185866 479862972 254049870 763544415 466909581 773468759 248927330 585659219 879219979 680459785 464152201 616245102 192238999 858011011 848647131 384104034 338886722 774333150 281556910 571585929 767445190 906557403 405241769 683327737 886118438 230716841 216157812 815603829 590087369 164916416 119857170 768678141 931715084 94524902 198381097 107764933 153405748 517487696 960370716 970409498 687450045 645302915 661477846 412267178 267898604 64731559 809610476 899951936 147802207 589861846 963043118 215875253 661959982 852555340 275657302 333592437 691636998 424815297 23071837 903662088 796227777 922013219 686426981 693671471 191612179 408354230 13757705 561887003 21892793 533906732 553791833 357287244 376590737 759461553 972482337 462612232 953873427 144989943 238804183 354385326 813015305 305232837 744765634 163480688 110005475 667519377 795052117 356149843 404816042 575081243 351721596 109848851 988469312 354034464 89438729 800872024 582129132 782525427 755027045 475261743 431942244 178673767 629907399 480386137 957703065 555348631 471637796 894317360 35961425 900915464 684954913 357727297 955959126 773067384 228344275 701845598 61478623 537627995 12230888 597662417 409587143 314841472 711241830 162372235 544189456 718976 248744798 531758411 667728216 550735351 105287413 815527575 262341092 136807864 297891595 777850093 99846343 193867258 859643571 746375497 480650792 383845533 197143885 185157124 971331937 824052672 994841528 917793514 868623439 895319595 157360756 22148901 401050983 986700966 461753849 35813146 756317830 416908620 2081220 128072933 319552844 859409383 661777897 254746326 813526538 957620144 447528498 644807775 29794617 831204487 381219602 337180074 64250725 959765543 239054575 268768028 26927208 292807018 515261065 674814971 214824521 862933603 474003562 77451241 433364194 488605637 591733217 635452991 551061187 253791811 801783299 772341272 130514587 246074671 787789688 963968763 757378605 705447395 923058491 926049196 625839292 189190998 915630669 769935650 516903220 633104853 962519161 44810970 76847310 2553677 217513019 411410241 465448936 935588586 295346702 626955265 537208675 929020189 796593744 63881692 976883971 99029646 68122639 323471832 919964897 356569728 621259139 880240229 618151953 284329257 718698248 104089267 351689292 455470018 668332209 923995570 396573941 23643134 620459635 888342058 368623002 803256858 937700288 631007287 569984958 168407803 871509026 928523250 294905824 789982627 923425836 644942497 240340230 719479705 989217852 656692477 386071167 980060000 675542925 314280161 861087720 153591041 928432877 336463392 980564125 855265458 776229471 678982079 389229719 773746268 438168764 953759472 558719989 135809744 259605563 648037609 785570568 872821703 539074212 524826353 913511385 309997855 356861638 918391705 621596036 329581502 663163467 422482837 159261878 433525124 807747092 808807392 683423779 124806359 816746015 622665461 456686749 621070990 589495085 425979657 805126216 97954437 897267272 565924224 606311929 619184798 377674228 600143870 497376819 211004329 474615928 367707305 203738811 984675797 345215662 241231486 239321773 935000598 721113443 747309662 349448521 706535288 956762075 450668679 882320139 817745563 211853262 418186276 517990036 478478010 82158811 213752650 385025913 798397294 377174007 619830235 283547386 260557589 379741453 525581256 384304478 766203248 366165344 44640855 214947069 158117934 809422768 534694380 639597942 341772483 328946226 829667974 534061136 694786204 359576941 502022913 184197848 104883729 644837812 6877832 499566885 325072216 776581511 618475012 192616655 366247138 979179101 32217361 500647878 490496283 552443948 397589209 594396946 670238062 887781649 301275093 308241173 296605262 200909802 120424770 409101781 770738616 775210400 444151214 431828365 614108061 2465458 903589442 796175362 530698288 818530863 921062421 566217795 956281776 382892298 805218738 848753805 884563463 835229250 613562872 122043386 235769392 365387960 192341 592104962 346048321 174283388 397227918 681502108 175245838 808954728 521261620 209745305 555484944 130692669 604556277 392373228 626727783 651058086 701582975 510984651 209408709 479095972 87211882 306956663 786643627 412129051 912765725 434236018 310289060 271555129 494703634 834441284 481540228 382967886 235901736 424849155 101333350 782238210 612794424 831994534 221328140 354524327 143755731 645445084 702847495 129917971 690983407 754769662 712825110 414325410 644401029 86858560 962986273 566558353 987408923 575379765 779703962 195755446 198657264 157241582 305181914 693679833 637241191 635404861 461952286 922476352 770368562 59031617 815307161 109372566 907527555 347069449 362613889 115825009 763748023 94273265 36019256 638273401 256080191 847500207 173224469 596072689 848635462 874095381 887287374 709160926 934967714 317620302 253951311 623537550 337922767 133587722 852897436 230522423 418260612 52015095 993879678 500056959 245749864 513577162 383163246 596254479 910282443 650310569 90192400 416993812 913084466 437088447 802899639 428071494 803087996 6285397 542212799 863387052 453449254 266389354 484841168 988406070 847492379 774401149 209574280 733949580 792970957 20606446 338949468 836555480 656308009 256559123 430911976 610070073 301429493 247803192 777984643 529574463 414050711 432915933 565929534 989529941 779870712 820319949 443147262 693739990 66505511 197134719 291670334 109933008 543315385 331164719 602429176 745874030 978137020 449013770 856962484 277458609 745775237 954942785 364386651 432811597 191446076 468293810 985486223 455560828 268989108 13445559 826482661 179089977 559959464 695325267 193137966 168206492 235887831 304346210 5013894 82562763 702475581 67230607 756842741 167262409 637430641 655105904 609169734 90775032 221300642 280170312 400044551 256600787 571152459 907260320 309545748 574914841 53359666 961610780 978996788 50189973 521171987 914735130 970924689 367585466 999389163 343526050 560649035 796118082 222637771 579078779 773437901 463013671 311878645 706099371 435174822 748425924 355941880 763951558 296262973 818429281 319433794 642358556 988949872 163739039 269495227 994625492 757405400 840442521 390850835 758687577 77964213 682679365 395900612 592874910 942365087 64015756 833265928 56908819 104141311 816984113 220675511 465170695 564226847 482956633 847278234 294398176 134852490 566520088 127225105 380742645 590854930 997758624 4588435 34548232 916909427 488438895 49016831 455268382 670440901 209980502 665617418 705550320 51561905 943927047 114072547 780700235 133985963 91451900 122354843 201623594 756950015 750212006 272285523 301019755 568080953 521618780 29341456 762133435 34617445 746603748 352333556 978839651 673700741 50168848 723218786 306633756 110942348 318775322 443660449 88683695 473427411 853597795 93498073 346346400 874184508 839541001 1883814 703013023 74927572 393958283 332821028 988895965 322103646 910335421 77166105 577140287 156170108 381843681 774454512 244323658 288607134 99132887 914507271 791593634 526150467 924358761 795619466 783217000 547549762 177241861 891334788 873913257 357686314 983526959 638521659 445781708 110200130 217786754 619167922 330849946 452315745 157510559 452707268 886983952 827001122 164602846 398615733 841394685 446005463 860698385 750921760 612452878 97673730 516093655 744273558 604825240 886657289 323310630 262477808 383812062 760569778 99421220 377951706 561629748 534195101 394934405 31366779 206942521 489686374 651414006 76444991 837237654 577406160 369228775 410063639 848027463 19951036 871784784 31297878 56881017 975999362 20006776 834954870 756755340 985837483 160909802 835869261 525191771 885819221 398334993 875503658 228613749 450153162 116432027 593658759 666894636 502016343 364779929 703284512 892547580 294068980 719738095 135843023 410730583 813332721 770682557 367417642 909316698 68663594 203194828 142736400 919870552 78504967 723737727 953239640 259304408 944196963 148353440 517436682 475579654 418992403 541456006 655085324 48239777 852479307 987284199 59672801 829766663 24277993 829643603 243930470 34408424 60796432 651645462 310560397 803022578 351968124 204329208 350607676 240024065 554631421 893045181 639633116 673036106 557929697 478069094 902334177 267017479 937467480 257987592 344252755 735838166 181958710 971861552 446986902 114524433 838202354 841673166 455153947 296680437 886678892 72360391 651961662 879670808 169841257 569936324 118220700 30982499 827598719 72650265 164356192 411909338 572239341 241603971 500996865 392260846 69755624 112570390 328837297 482954136 170230263 598088413 184171351 330972171 315303382 338710046 931406537 116545513 574496320 153071833 367188068 252867747 444067645 465708236 460951079 922218422 620109450 458905277 128451969 684826681 189046450 557479088 765351481 715961876 466507755 348808884 581350245 309188209 88866855 560889102 217941834 295574365 612754768 467503826 810804851 427831119 437921150 288456824 737730150 570118373 720045876 245747392 520992050 963760174 467515414 523586175 840387968 257466057 789175251 606324005 682186656 269946518 263321307 770714792 170248136 269228437 148391559 607009296 600502236 84830874 37899686 831914291 823803679 708925510 22446790 297846165 457242704 845325677 443888244 498303504 497065648 997853569 727446023 151469195 75415135 123204092 358927190 181421723 736921254 741016821 286078523 158091266 350047536 15409299 145198438 253187208 572709120 344165651 837324979 901306304 985112499 677028959 380355551 143328409 356768680 916918995 768932519 384614136 981567320 106718201 912283318 861416574 302151005 26259622 497121117 328520010 236896068 176707016 567283800 663139696 832009627 293436488 472349983 337030003 93600085 287237430 46877628 503159326 249868842 291734804 385183583 776124596 536794502 188654758 79196179 364369944 423543295 925699438 729750931 323634134 386733818 436083056 714942230 335278781 201289480 483001978 67810564 167507681 932822550 827748877 285909549 893400213 246525862 358159688 772647617 584638089 816512166 103626011 731075122 659380907 655972311 114559910 349936394 477838191 797453692 32344757 486199604 15153293 545425357 587100037 309444218 584243613 121780938 95634133 871525849 420198727 177468835 29698083 377041827 184869580 252855766 791931874 940565965 158523321 389579577 852749065 927747262 201762586 393863521 314106410 548900538 110914169 128601983 851964429 239601533 709196300 487487798 54124587 283312970 431630723 907935591 132444036 898250987 398747140 350941372 882678629 186764961 633790594 573248101 647509581 446360289 439351463 2596872 800207759 514038109 195247199 83552179 979648922 525084666 962808846 912710268 845159648 525292099 620858161 824013738 124721758 973708852 510586263 891033000 181014503 801722162 207826360 72070935 796691772 48900520 280361133 681070734 951510553 577760703 356848499 868252377 680068874 997636285 460867526 735835386 4920229 6928408 194766131 876804008 629707585 50416493 437029093 427082939 294622510 202233363 866468566 165041044 501294478 330099642 136761642 844989902 299327317 758413958 35237088 918799006 698210691 685119977 574873186 657144448 446192581 211884922 248426843 683497895 944867750 46194102 998522315 406224268 392604349 209523024 766763144 119199855 475136861 218507587 281669808 445049831 228003081 136518769 273599611 680988103 448930483 380360743 274156782 24568655 952820573 653171801 597408594 882429675 441311321 22867803 690151111 101405727 885192883 898368950 579185931 339490395 24570414 772469756 443708608 407687040 815540297 860695103 71765303 581468385 293736774 733643713 367192413 142859325 251976936 624251091 947277441 711416764 416373503 324800412 215239122 610990004 527248571 576753530 648036747 994776009 905036699 684425137 854708786 568830206 346383829 707511193 300988289 941145030 198733765 549134496 72522163 449381722 234520028 433159223 508319500 410893699 220439258 182499950 633993480 178836032 747209196 965476980 53942679 775528915 168884284 263763367 361658110 66836170 53231046 70060045 994612022 43898496 381147081 847064307 283151315 905356545 917254070 65852810 464522445 437778748 846816148 232872642 220946109 114035869 147881140 915590285 763582572 85181105 199489526 835548390 697030772 732489893 56452312 525785606 402029987 440682601 58064270 755314720 509433482 708953375 241175789 296166888 724529721 971882807 53530820 719741050 647863203 629585668 777885468 820754163 909212406 42111551 155453196 285417129 691959338 181632793 534943723 643820414 177442193 894292523 948796115 92366715 637131127 855861757 194289609 178820631 341730445 522684106 214431505 237256433 154736521 303128577 462170946 854013353 875494453 593702754 876363306 287901284 277461784 687581058 806848419 378581511 981906472 213077134 916155959 688410356 407857393 907131375 578671906 92180574 459190340 290529313 590848169 453728341 269001072 292880318 17329863 342613943 950421725 74591418 417856537 184580232 563165271 339632488 107566933 819396381 452443899 181462137 932766444 190436263 316115082 664685188 735224921 683871411 735973276 973139782 159610380 805495484 242871279 920044849 453638705 372464899 721347267 749024706 523430100 906227597 609669967 365383680 686970746 513129390 855879282 432298606 818484934 70543457 707340718 326952092 981893447 404559128 740632028 665778740 138955009 31160488 136482963 597606463 741191440 73713538 147017860 233384976 777578465 102139292 104466714 502617328 420549032 967259116 750909388 105077396 595640432 193824354 309045255 406540043 228350581 235735909 975636818 150537003 604103698 645083931 226408881 686365364 830548524 249670809 26989716 967674972 386895926 76186356 317742634 181250215 715096735 870379896 709958022 628173948 785216319 921977961 798774935 911882135 862306499 42766150 278342999 553969028 467666493 755923964 217236852 435962290 855399584 188581093 460221188 520046363 740142343 718791909 238064401 978326335 765028753 418137463 625465101 346299039 856798272 445756566 593815724 132565854 395559847 642058526 136463986 622576483 406439206 760037577 830799033 772371041 984994619 951105648 243213618 958827608 538291594 135290245 243014498 322817001 915076909 419359916 328358475 734833966 129395926 720300995 717460685 40072882 723592309 426458103 565904486 553423763 486120546 871310330 740672529 662923113 141177191 150117229 779519688 471218873 522800694 469930289 943154049 190954303 812392477 331529497 525954754 789489990 411796182 841537321 376386075 112936747 444323361 72052532 759522546 665463651 747919026 260936416 553158718 116494858 823251293 78445278 811301080 63289600 863366167 679060068 591529087 661679064 951889823 292333047 553518189 135462992 774335522 964968709 468512503 147113906 59438935 325649232 399970644 462086223 658858339 209692255 928296466 131614208 870110730 728561472 633486254 455100285 61323345 919940887 360205682 230748988 797777440 184990669 106466287 701754589 274589338 557979253 188751976 106041275 609415933 507302393 42794906 568366196 629265826 972836263 352762760 451501124 309353240 307007111 294331382 768460264 280068748 777651955 563786143 873267456 215603603 688123740 224490300 750903663 766241017 68960108 360977068 563500433 397745781 903971400 55246463 620613160 685825611 975599582 33960650 67463444 174399606 745731873 660132102 797005054 513577454 979967713 811536224 488549073 540029733 859383906 7587876 816331267 748778489 887425612 61545952 29315841 807460791 540094348 343412114 926577158 276722158 935618294 831326081 981179937 975385082 492947447 94809031 121413515 844676848 670052564 988129694 592063533 783449432 34699128 945026739 412557348 252311869 57392640 250820378 343407299 894506183 583053938 281969674 737093393 490179590 207866126 286394729 864634968 134006697 256236261 819670236 828555878 328595295 385907645 792660864 936361425 724944362 57499526 821146673 19391986 240945278 351615847 462458270 459013456 506928706 116255136 301423828 968641626 258060607 387621523 326049121 974852550 339801209 850592999 465759379 387348911 617760319 217812232 601713483 986114262 225684384 976910962 200882771 657123254 158084138 109014033 236897201 522097885 857898784 186622891 751960528 198056740 922929436 931144244 253277105 797668034 723935970 401878382 223146135 738454739 880484418 804476993 532804314 448750020 485935520 100809095 991185499 251031898 55242841 701235182 42174793 286905765 187748215 520268891 273482849 51624906 415827353 23164788 297497191 96936829 362902928 295674442 159726422 274770157 369685429 225561652 344125251 689292358 473810793 227612076 85341585 214953955 120400978 625961900 719026023 951893895 86861368 566748145 747958815 36004029 97002008 220072390 234229365 229346521 408930401 530428593 276347451 476675426 725440543 952606978 800161709 779153624 683148083 249515551 684014606 308595739 112750045 60549572 896109798 711980535 147733531 393608238 43923868 430795837 747549547 148790366 485671689 218834196 573415474 336901118 283475910 980057618 68385628 907128036 434730518 92659321 302302236 798341546 413702433 714865220 511729071 442301160 115923579 837145952 305360278 966779346 616188677 132663525 524880439 242099241 522135308 91080491 738612516 737320986 123790539 209797319 696367504 840014239 456557071 757450801 704316483 883094688 41763811 169285050 22401323 262977818 900731921 990749474 263296264 77919699 873234465 371539892 280881945 258132528 897383137 929951940 386967631 208494418 901300265 722882852 355331198 642237695 386480623 154476259 809533666 74707577 488379224 806310621 320860619 876170991 207340375 630572512 106005725 626060672 456266438 886229335 361540047 813547787 661026500 86646444 855959676 77081655 471058045 95174906 755133852 671355316 349298821 200367607 230486407 943014107 882417843 754497695 922046806 685134061 905500739 609908227 681283324 41455067 868306850 314507870 191419656 776236355 24355241 150044790 987895687 709917806 392949937 399533420 169870582 841752050 663131446 29393023 389620891 244924584 448665698 486418088 356582781 176824010 536522183 445674713 358455478 141588787 651450183 524740449 2105419 400601295 561053762 719047942 121714158 107529388 862002280 8113112 16873792 486788528 968720651 305242320 469862972 766136177 681802530 673330218 345383081 412990753 883156805 75331011 299922939 187731511 443717228 400864856 202154125 722021826 415123315 455582095 785670516 877542975 811823906 607305173 887446808 503183030 285279396 386584467 586274339 592362497 472168017 47877566 25162401 573962175 148294110 451217120 574713096 609366263 286123863 555309802 601065864 770930893 504910818 451798133 702043554 350929817 817149645 956055157 25451356 10269459 105618728 288222993 606494646 293853832 751954847 582677800 310915933 207082309 634829709 884303397 665047233 798622455 217477749 937310101 766705981 213025649 253069968 549387784 120092080 214613635 85980888 893386312 8037167 239941798 86492027 333615460 844752920 989871587 221143953 625472786 941273167 859871001 402943793 136073350 62902091 232374483 965987442 671129278 572819282 285944638 453980573 847615469 762531581 45638785 561277744 17540569 653110576 595073742 934091763 543667758 543957812 27735720 996306234 51759349 719458957 783773474 528937171 553329416 17764195 126772357 172436028 408857228 451160508 33148546 992938674 344957723 931343495 850278211 490344335 616470323 264099870 617005463 389853621 20761820 641640147 95393325 711427970 81223727 837966994 790771748 808117358 903266908 918767503 65577257 549969161 303363204 787585642 957139490 385902830 121914248 213355234 66553436 386263973 454455650 931678261 748818599 603306003 733021299 559544181 41949531 707801869 156912445 835137087 846947757 696281223 548475663 544992244 53488678 656555021 452955263 327943239 33044392 674804634 875231283 970941245 497322203 506700407 226414981 360039598 702860212 92087592 283826658 373012984 293688346 249654847 266996004 338599980 794693655 16160293 133964518 959851420 283265468 471637150 545424117 526920369 737079404 968594856 943404850 918893879 366141068 87530528 774153466 423240109 40076127 163391709 608343979 320529295 658105433 805571507 173098033 962449380 647360094 842451540 661661679 356250365 322106627 647731626 399960173 46951550 132393597 632257529 72065437 445110430 417592027 684456679 990568549 300496354 11414722 762871148 513971117 812980167 297251832 719856243 668274108 26581897 669537079 538771073 444536083 718441518 87626740 18457954 744392333 33020441 487980200 917440480 344711015 426759475 748044345 825509206 886970517 895352049 875950462 926463764 417302824 879770290 128337109 128913359 155089163 692587104 172235900 75763254 369722746 958194717 687889970 864418401 2847144 227765684 928908304 812719032 476307398 417264186 666880599 930639695 863049573 484911024 957762157 943735193 754838665 283870397 543895698 526391019 617619199 711217900 515026765 478714158 461880735 24467528 659950204 939404773 225864177 932630213 730651512 168774779 858136141 564290881 906981041 202878003 970361184 154223709 880423542 116861821 821733856 561582280 10878675 435570914 981658633 238685812 977248891 58555240 8219834 183155024 868624348 490121424 622805342 996836767 610726488 236836555 13227463 589645100 709122564 759639816 7875629 898776608 69775234 328196101 450906996 650059278 134455416 705290063 891771916 334020587 392969526 8330739 221690210 743621504 789413936 60926683 78739096 765042482 73307357 762240199 911355799 48674137 137584391 495350690 835188977 141798156 534385749 623734487 864224737 712251301 211204486 929500215 79643763 636376633 60175747 128964575 454144593 536864093 899083767 141549445 532866297 499708320 137669187 644114044 539972953 988087361 856944991 172224894 70088930 708417976 514660837 283291537 753991412 194332865 628505513 904540748 76678923 962978191 780070137 676817089 631326934 3335344 47272985 39182453 963355314 854183833 217961346 107290226 327839412 303990987 917437068 366366970 263770581 944278113 136853104 302964227 127691067 451522788 669899449 820662243 195785760 87224494 257339290 506845637 853045162 84929107 627213341 554783474 183128150 209096090 307362543 357416987 877182252 545334748 628323312 914862591 737992819 610959437 501928532 210250175 768207764 368447702 280221145 412499636 413762621 637569558 836128623 635551253 561323222 739409549 536226595 715168338 959873804 425085751 90584752 99357462 115855687 362431070 230382863 871456229 248514331 651220473 280258816 552106639 713502428 897450671 625074359 410606783 368784451 69504199 332880945 464595230 404666618 843867001 220345742 67063214 481123574 858635202 923544742 210844721 359368972 620597442 311586243 278928971 325264504 802744577 544013889 921828973 42960547 992992449 967697407 304417116 647920672 243831030 697358312 640911633 828266357 50307710 82616613 86000968 135973849 665292972 287603659 408468199 599536169 15963397 855372085 353500113 194871942 799543065 844951519 238358981 792823066 105110606 684576796 609708807 6974616 767599509 537447375 3465378 584020645 117668779 720102120 727809522 469482298 297526107 156958785 350273075 293626804 907678414 987165277 621016471 47455462 335522456 615028745 469365086 317779533 105091744 589166512 139331585 969215247 418056934 3632744 664367795 990759520 898434915 24978359 880246726 162476647 823339018 444257597 502360621 975967811 359679053 133291403 932090314 902270576 198093155 386677107 247785314 374771530 90816223 340413648 242061704 852339976 88461777 425659284 917326527 401800301 210022205 584134425 392720243 865876105 188218236 819302393 757591710 377667931 33303583 205761070 235417967 304162996 193155354 354536118 629640301 261540415 942752828 452617958 780788506 498830138 847701914 938730547 938114697 832016838 91755604 9316489 494254899 446889265 499568921 490608427 501204697 181545024 553975188 413117092 249840335 359177422 263056764 413451325 409864978 719046678 321577876 938955730 158840383 944599236 893624971 816272564 528387480 159933493 430071214 903474072 770171143 410309373 647717319 122717529 110488202 173648870 330026401 953437565 931023359 183184264 453019974 662944016 493481947 815931335 162872863 807800198 785202641 900669798 860507045 572522516 717861887 137461456 646052862 970826109 10252990 444655463 215663421 438913287 364270344 930163744 450669952 360920331 557277823 428103681 389035336 945838830 666563671 74205814 229940739 692244907 705383490 550007178 409757913 756512 528959670 312771882 38300533 335468601 745018670 290271696 125311282 542753280 719335433 402786324 127146706 443160840 939229216 486864868 789311329 771936473 626968688 827216415 58407901 564290304 296441838 29062850 45755163 903265300 690317902 131024523 246017453 964882929 560148677 808234625 537635467 290678898 713262500 617825799 180034543 239595894 693423574 645574743 664034079 654023451 325320599 541166255 488245962 632624886 958694528 740262599 319225434 612350452 192475689 591113106 747390715 48201342 659092352 868775424 971911068 476719735 768700579 436908168 990712151 735249837 884223321 378427527 492360835 356385624 514406002 906425093 464384571 463305910 758404606 846857481 590349071 465887222 140828686 206356519 798083503 448023659 886039108 462003288 472693665 567312392 344084621 232954546 329490617 224949622 410234098 680954600 63555362 294307370 701257313 570245069 539557220 857964415 799303136 972786505 246982943 304089417 569007129 347582785 734463208 805988419 611139271 59617753 444807524 141306169 775253885 305369820 308879273 256072869 603166931 211322284 634650640 942075849 139981604 512796541 554150728 593209773 566202101 975218382 139172021 124693195 72378770 945240416 668973090 417635106 262142309 581999329 396076569 543858856 58114656 407450954 129762077 28398252 867333868 224564200 447942714 671909827 492687302 55204818 163087307 273820548 140053515 949323372 431630410 255121207 805600321 139007995 198965059 944889555 424258971 91313485 9300601 829997777 536346890 245284043 27060222 512081828 434182033 153744583 956799380 988918621 269431740 831178765 365053740 453440401 455704593 294406316 961328197 907317872 650899121 920739825 459477153 692963450 405429935 314155878 716609785 722313331 426043471 507349688 471342639 885852526 528359584 61309716 712596145 333802792 573661029 537688190 229510147 464169848 262610646 514553794 725542841 191914126 956926594 856401674 930957702 504793372 511231141 518373673 174741747 952887968 170237092 306458468 878355830 48931805 876127621 623577641 438000758 496251956 311261217 44190194 803388205 816368162 307501144 28038374 457497127 209288465 921713206 937893724 970395799 472553396 480077044 831659998 33209362 74923067 330278648 27512191 687444036 149587684 31164996 39489718 314151293 382769255 639416916 35029282 978098724 949167165 877687511 679721755 300562812 140971866 77781033 486207794 258474330 915651221 767254512 951085311 278459808 124228195 505404777 525141294 653704920 749907857 387483138 305690915 844089066 461490061 197550413 161810906 292333138 337885495 801290703 306294060 562615794 1394658 379626883 810483267 909577340 934231719 344176211 759822072 673986079 313790324 690666470 640621481 480230502 335715664 766858191 216851462 27922561 265307983 562659787 922962721 203232044 479321510 489843177 251463037 532786917 482329190 191991970 514597213 981641444 429687663 32540860 255296462 611303863 555281643 312755816 440236211 314025319 526996104 408999465 506549013 857839248 243804989 329327963 329043655 8538666 1330970 79176821 326893322 458488176 915306196 587771375 361014545 161461491 918925345 248322441 917272929 218209394 412025269 34890892 4706428 753749268 729515665 456345347 407457131 1860920 612825883 270781242 648284802 846739758 150747195 381491991 881556242 13629084 475492360 132740121 585622548 711640670 782444591 561760013 728137102 676128679 976573399 725089973 894423584 370112200 447072312 30976453 471277685 709980793 526027711 739550035 624576328 237363023 408683972 410138896 325618421 992813319 551243383 906885655 357146482 769990182 127089499 23254228 909101727 921452003 547534143 495742724 942650466 747584337 635299844 699130346 58672599 610040110 473993746 292264322 454920315 789222273 215594915 593865461 26670874 223664996 17716113 236431869 149568322 197440518 605022516 292864321 368658832 108507282 353263237 236367060 613754637 560192004 527934830 538056376 230682431 463726264 972030313 302930594 624523174 694945242 978411301 796405846 897650800 515477864 814555122 513051141 579678719 717611147 632325215 749997616 947726510 710770026 769669959 511080098 623443483 558971397 327298893 295726866 529952880 670107945 558068797 783378673 466278460 412682536 264392164 906884225 316789077 343245711 730149140 652768431 312285436 634401023 437354402 974870082 64813985 790325724 562771466 27701580 913616294 996736092 186613533 335447705 179419547 808496753 192769165 120132766 723260710 260201984 891263250 893223431 761663386 616281854 977329292 146327029 983480278 605923250 843181456 62924539 371902293 759816284 614935527 178243054 470563048 850491878 220430796 123533085 907369282 65098177 811480113 256470297 695091672 233155202 341126845 758583540 629465414 164030825 241998480 115066297 869493986 827304189 438646616 728719938 836917714 100529553 41488931 719146811 32651597 770302527 244599111 109777519 911764771 476959350 237344232 276582520 368615677 147938365 931370848 572782429 216050416 49763296 919156562 955309835 333358789 712677846 599896040 348978622 266887143 678185228 400223666 441451393 137930659 548766535 241909136 19553489 328211500 968676445 137067915 817166234 440350789 438292454 483309603 260349221 176515083 122759225 591116424 35909197 975868270 228526134 686104214 796337733 771311126 424335136 469367009 257311130 780576059 508337442 929253671 775457402 312922352 596618714 704119787 879454962 6096382 944098305 823601245 447483597 839899410 75780969 602280283 965464862 560514119 560853226 899629485 415219720 789731195 135927829 77565248 504293553 851545974 59132679 759531998 18153136 836318443 921668088 818879646 283594168 665134325 520947620 847508343 205715148 363803853 363439494 978302109 784957950 416634144 29244088 448926107 244325552 503713840 946403359 493128914 972842765 388694667 974607212 385869564 41331388 825077002 510525743 933618043 745382227 19205321 961221876 477556868 685531577 385913797 779497134 266070786 739490392 214941245 668373741 94268679 328164401 716111515 307124389 954134581 257735280 977055520 710518868 696289785 394124826 522677733 880576298 144560375 457831618 107822247 433562664 703173822 678740601 661288711 615956677 653809483 208137308 451813940 835767367 156580855 603831029 355160398 95374838 11993042 409026705 294613858 297873406 123158659 543502770 293867447 482801064 538838483 668177098 527740691 574541912 571235569 812480006 452378083 270892825 140060823 560129396 135246286 341542168 577839933 280105639 196189738 525002480 716248208 540362418 529976450 488871588 755821123 638401428 267144593 84306945 902576405 859388700 126224577 322244750 874492641 474457047 17870208 648595495 243294421 320167711 308100839 119695665 703540294 802313935 840656979 42709828 403675114 78988455 881441118 270157986 312416545 598904887 874226269 830702548 595867157 454106749 23661547 864590801 857695620 281440097 547471042 197524282 873496019 305490599 14729026 565098311 316920846 118165867 675141795 55751394 880763328 395331563 242612590 870326904 72432254 643083178 245773707 569136889 647345714 375266645 46833894 679306815 228165387 168491074 790204732 514863964 181552917 317143954 393269449 295396669 552458348 71466041 598291514 876707691 640703107 492504228 822525294 388292207 352413853 857079465 482048963 181591428 733630094 742971539 288358482 546079162 979917957 729092032 919882381 261532998 995783921 679819908 788280304 518454162 305110364 312335873 871270407 695523251 130298718 415929563 3337434 410087139 748778011 921411605 418814926 80916279 680618216 883567968 461481957 287871693 847863619 46266981 136527868 47007848 461148448 304425141 178350852 609193697 275065479 580792004 326533204 947071219 652251198 620497814 976402205 617142238 313034301 271271837 704172299 923268242 552404977 279113665 469135018 998992420 533426196 30695917 131320683 742590541 839513426 187757758 446645695 356946885 571238243 937158102 481678127 187557801 962388371 407535002 480322276 21109061 227340936 495503532 551111101 57844234 969483477 847633076 321473026 490995005 982568723 749453239 121399454 500119679 37457885 868594214 407688114 448369641 893146310 51041810 636458282 219185340 484805148 232519824 408326968 67661879 920022679 123414857 859075157 789123940 123140060 548403871 434116105 423962292 661221065 107534237 830197285 927952834 633773158 19936326 774729455 656328529 127048746 160089117 139857001 285000990 142311240 720269785 431847452 242396093 439323700 820368216 22522848 29389012 903253092 813745195 601289675 590188131 670786330 635894554 616072920 596573864 468741846 967976318 250968350 288495190 389800159 16962368 764345047 957268791 635720725 889801620 728722289 880110092 395868866 792574384 669298102 228836815 272731232 1214870 700419002 490097945 367773380 828237363 314309013 767460193 119347868 971816121 973565361 147293615 364401980 188497404 427226003 708003992 627385251 240412222 449864603 114225533 667903245 54236531 482752640 704127599 107537966 830433881 656494972 109299156 904078156 520400362 613192178 24545288 867062384 54757069 640889071 843154172 378720265 164812553 102470261 847420585 320643273 123300574 410119095 750091859 793033829 855009514 318616957 563861837 785992127 697225854 57919933 365809777 188910054 63209433 238426006 425118204 835846361 540008315 159128770 294354358 875902192 581372534 432848020 160458944 358908620 6665391 712141538 820202612 860171899 879826058 472056063 486448910 618904137 338867078 701478442 269181832 70149332 476270028 575758381 680905025 61918306 644273343 59390717 338255723 640094817 368690021 627980164 910372713 966344889 28764409 99150167 314786389 325219665 585479833 132848937 120947483 393453966 799110430 862351139 969728519 929051017 268347954 789701275 876454642 89879605 738846960 59542455 301938010 489738069 678341203 194120748 261014902 749137894 994340277 84391367 750643653 385205891 199017755 10885104 707870155 718618272 266150098 167712489 846437408 424390941 561538863 355123376 737222237 596219908 937930738 69054073 25361728 768987284 200590671 145013523 628592259 672550373 554598117 691514799 675101034 979093214 723956850 267756559 82308591 313873849 989207776 364452171 273410473 136858133 12156283 421545107 235389794 206287696 306740481 244241466 641952854 943246276 528601000 655909201 388458230 271542987 128446467 596953186 985819265 752416616 116604814 234280601 152404501 140066476 892838217 395349892 422379113 698494641 880798422 822552689 984884621 749336598 444754352 309988412 539805679 277884263 337167199 623486558 222062566 802190151 182269030 269207414 328550287 423806360 198104918 350985673 23765956 319202614 233428836 524292110 53431150 347301064 385581190 995328269 723417108 459314680 486449732 323595630 40134180 265627879 655351180 485679651 386825833 947185717 965193103 907412474 797467999 40506957 622801919 144731720 773680032 626125035 608461778 712463522 401912275 862121044 405609544 183221779 380722746 247254662 886668739 254090860 717286478 223845553 204144712 752852977 522747096 621303980 968356798 192695973 563484690 328978697 855600700 97766135 171697218 934716644 868359755 752759019 788899387 77227656 682985970 324909520 297999455 835493741 408064511 500382220 189584323 200137543 469798975 203706156 762309151 856873913 885506777 258283416 897355456 884280139 914209414 245628977 284830550 826118726 600568748 672469842 176076433 188092212 367584978 442862054 449566150 40382276 441181861 488833169 157898386 552945764 925096933 272803487 104643245 64886593 311100567 789376753 311382565 540377199 922042455 929228153 676377960 761332976 190913157 77317544 110650932 69176695 300961426 949540723 776834080 704584635 701928431 775253549 737598840 68294945 660629474 573123506 311443419 255794209 984808559 364801318 430630328 433679473 79250313 116735498 199431132 913711113 12975892 730390055 265841283 387845601 114046912 907640459 141380345 772004507 894942104 912218101 431872823 103991610 150926762 491566073 717280706 940809253 36930307 693089190 517722166 845386278 904542763 859047050 267517645 484602771 227504468 456416571 357849546 43934183 959501132 452447344 283111022 935071361 108228204 237293333 846886068 691895290 573844395 526095443 410460009 537702634 608191175 277298846 799321758 81497060 317430533 517321353 387098632 235049085 213485594 97628420 889140286 743663911 957465686 128313425 106419907 351149621 145218521 687186949 319647444 737434123 10854483 219318895 100449746 580561968 873172337 146034515 611334960 42449896 331524409 25860941 788726778 209230977 241586314 365583321 34880022 314024779 958675380 190466849 365009267 249737890 256045196 584620893 780712861 187525745 672462544 508530040 2048382 677487542 742523582 434876857 484263079 252415291 337394672 128985179 384603800 289419743 82437582 871108731 312855994 543836808 755321806 153625053 406819629 646822360 430898022 315480374 907874485 575749256 587640361 699448905 205271743 453623260 186194316 541913643 166720577 780306888 33768792 517822314 260636546 877963720 933674455 501091596 111005890 724889247 930247751 821510115 184188142 422970762 206895600 262188613 687406161 867229116 934887818 50328381 766404804 801727883 625308271 130908284 287986925 441087031 407982887 416085018 967221007 115837669 630228522 723195717 47288719 73991955 801458648 722643524 143984321 550900960 979586514 258768400 6470441 427131697 54414167 52454986 39532755 979546517 627490982 344110617 66131785 597251531 835263190 814276899 832517202 23486779 896118288 868698032 984520241 33863127 939246231 955658136 184388595 130963467 838633254 442532980 558358688 911772982 461955870 978516776 121832461 163980744 754963765 49153167 674004569 672114168 300282651 70690257 713481647 88699518 561292456 228116027 639351283 266309170 560747699 868467282 778876193 852377924 379959881 50767191 22351076 622117305 687539272 635427804 859963607 683840237 528912625 892388414 840370195 571789780 939706095 878741108 991360189 914327610 668492117 691831521 596931189 2861112 688943457 411056629 817039878 125690087 46721273 805399762 384129254 34622836 808088239 61104225 66294598 303570641 374787356 627588945 251693294 195124523 58944991 704883609 244854632 979504541 737132623 968003102 566812525 546853650 51764556 966254787 923032403 751318580 912895639 583040744 358667351 340796071 814428468 458039147 563506203 39544382 295345924 894742638 464128252 518770567 590272328 853615037 165308626 243413880 634471391 624842490 108071095 638604025 626283689 141010837 804069638 335326080 420996358 572773173 806318527 72018353 129504607 697826176 243321321 685076277 336253244 965577874 313389269 158072888 95181470 152520320 323310133 284703026 179712073 114457365 868466780 711600267 993705350 997445902 724907905 136591505 681868491 871502549 790140163 466564657 333904820 618354578 162919317 138039431 290676382 38563671 673957313 613947650 828490573 563339551 546841678 549385316 784386279 470359175 136410371 144007269 284570752 593391190 834233178 847843830 855290713 252488185 769096625 318180424 215819588 758605930 163122372 785405059 664944805 420456639 394402521 417795831 978441363 987839222 111879527 229546314 758179149 227071358 551050592 164781006 66284052 342336457 726321060 89135558 157189131 568264227 675599322 824967133 666172570 513852288 77018672 172227058 374255346 96174188 345966952 386218001 444865447 488472619 108100487 772698227 80368193 171724254 254693716 745477997 774801850 184579983 339245902 498446794 629182499 857023845 636976245 669298414 456794057 334823797 611810064 479283933 532768240 260604228 542908204 951809363 655016251 865212513 620478274 140960599 914173656 557826989 60647892 378298968 813370298 357822301 486112385 172140706 330521532 265857358 306466029 472675820 371341929 688401676 439535116 378631549 940488801 534088719 711517837 248113121 919755096 496847307 245382984 343530216 44952147 319282667 596384425 208962190 847770074 351731050 619596015 949405676 760037387 785260580 231953914 347500001 961026987 516275003 859179549 404787072 52835974 118442006 144511831 449399702 618080229 12474804 655881397 696498464 277550522 897252111 238856973 75480714 629592572 478576190 599982480 467890976 321963150 301790619 244190830 736114222 778344827 466661545 38369176 743839644 229168380 188531806 429349092 96559001 711325449 958338942 425879318 198942815 697068156 945200699 254475180 577941434 14412136 70230040 679991042 868458902 119663118 974244066 551198897 580049952 715144534 846628085 580437258 717922438 813926094 620012653 375573054 633549010 4780317 353686622 886672217 571088256 76153935 103026723 704084652 443833135 950409234 742945366 809306434 435420129 674591616 617963049 150051766 9149276 779018399 642681084 833482748 914566263 599776026 957512324 785539713 762404516 888207448 791359351 47525422 421441429 156204870 8055949 153098469 631726462 483429435 873532135 140035324 121438028 121253848 136133239 842580938 474949069 282617661 582864373 187668326 117311691 337611910 216642001 571575671 85182146 218594293 560484653 46660278 23344894 65790508 354620119 264496126 62553561 193528410 806023914 462037796 921630024 509656630 504318013 770659526 493157776 828784038 923621579 912067153 65556994 363999818 571368519 924464921 174303679 53749933 980450236 5161886 130659995 603829637 678139952 452326371 998743448 635088249 878322193 126982552 740871357 282641581 973176614 607859695 202890827 23934640 5057286 189232132 551082408 449834330 623168806 230102924 238085759 708713826 359161171 655321356 965686644 243018140 427220654 759857802 109289761 661789943 282720682 824664462 333506536 656690486 465800521 816449488 390761063 369830050 656788723 221655347 99068851 756304975 433997167 841362852 314824523 228529327 553322614 800010232 627365853 354437734 302499951 357463948 18568625 795073794 506608566 96465934 102910453 544041641 94595484 93829568 35062791 151719147 616358858 918145321 733713734 969565074 851730324 605848241 583604975 527441230 753736235 866911312 897868940 32355017 590559678 903812112 644818375 753791422 840669623 779237017 633472334 517773273 784843411 514651612 285828133 315071978 478205519 158344556 88246261 86919875 979546990 578845640 720224079 16611251 729158765 677608914 959442783 940537252 256828002 514195028 126052866 760805062 656393231 29422967 627990559 73110067 606918401 300597198 459570299 879644426 708046619 646915435 657639964 434482156 456650756 78256961 594812310 501796158 358923135 868495150 259097663 409474905 915909638 542614275 254464074 917728846 292148649 685000296 934805118 37064779 176595377 520251535 644914535 141225296 749534185 969935238 144487895 756789734 990808375 711357295 992168463 355251945 146276557 321269603 392408936 649849750 642809415 224517147 632892378 842015210 347367757 213744489 823714923 606791587 268863419 609880462 665308411 939094389 968280270 787779118 641043870 276878615 297797664 265182234 552188624 973008786 65063303 975408616 990524095 577724934 902369755 467188993 876828181 261631048 191530792 753802044 427902454 935882580 642009243 978423762 797931816 429669328 513269306 36101386 112566299 727505979 337602501 882665159 521428472 397295275 570342444 517954792 394084568 510815920 820198429 756696126 657346371 284760379 646820447 710053512 561219227 554160649 859600517 718003976 527812960 684614791 933643257 753994511 568118782 578550440 142748234 726565134 186592546 703972057 815483778 700588690 298936567 579424710 753698526 885023043 109840884 976823704 157121983 597706299 670449720 285167246 180575000 298869076 711423076 249381021 284677780 109033215 158509617 644833404 334461103 934952131 550836062 270338084 403646937 509223493 466176225 212661845 592919290 669633667 538083279 520763970 138308357 327291379 663149451 688627976 191573647 108297597 447030945 310979045 637745165 870426873 921382180 233891616 804696769 425362030 196591412 422437171 559545221 765387787 228776478 378372937 192878556 533881773 492688508 982779728 734933482 628394946 506421879 379855765 294374946 186829756 753675869 484679997 176450550 147851967 542816184 973525427 693041205 415046242 466736021 270333402 763763835 553183862 351050608 326479730 441891931 142180190 652342691 798683622 361068176 473307319 497164698 658710334 18503461 561837227 993866710 49500693 904292209 699253769 800137565 59034705 523680265 346669561 811182677 158231531 450399502 766841145 977524531 578401639 218250802 372242172 616911367 537752562 580101006 720810347 994929781 715988136 416198509 155955100 176615719 83901133 408126077 35626413 885104352 877029024 954009170 714187525 247558296 856602334 984593403 127939235 468879084 653372041 666687790 678270665 528514535 422746323 710747671 498592207 595984753 380361154 325447916 408331486 344187029 353005562 353648847 82729586 551921644 80611808 547485023 246472900 80919317 902344755 48434331 991176686 486360 7615719 896526845 53022497 167485802 323872020 236768006 164822550 420023576 617581913 82835808 34464699 196845248 521634228 893897543 640245139 468179795 886658266 673124360 61920468 825333646 361702766 854467757 235432168 167058801 523604146 288050122 887396130 808838637 427144850 679036708 659605580 108465963 777140761 145325097 838010382 220588512 952260297 277022946 461030653 398944515 564984860 297958969 554599174 942157491 123195591 457985409 127545713 67005403 195610594 783105519 922715934 276457576 76973331 838775797 199605759 66857936 671016831 238296902 509619983 551192578 979915661 688939274 61228496 890647096 919810778 668361690 2239364 44064173 385687785 833483818 32757905 333995736 35267648 816333630 439810024 599805099 228635933 480410262 156388126 819041043 766807126 510054288 447850141 517102739 282501368 746203148 989807254 649042416 883572817 303066661 750705592 557019623 296747049 534484254 945568620 822215673 776015798 60149824 72399297 652472374 908819468 912742607 306992332 538182848 569892554 871905779 926991840 59066414 773780042 392952091 478457528 844205304 88780048 972197660 739844507 354140122 103890145 738817432 480691841 852427852 373223728 983520026 86013869 84057508 302023498 374908715 46160149 886527736 686023945 528507274 83725798 466684815 129150534 753118200 332789004 362350540 926850471 574526620 89100566 854924712 989581828 527795151 595216002 795617228 695269514 391875854 372936433 694604271 805188107 281168130 105875392 755473709 873682933 665875355 31569755 593242730 167779051 653825591 350207229 276741846 312228899 152175905 69472068 361128271 345247844 6148431 932620495 185883344 800185735 407283254 381104679 919784382 85528135 53276257 496658231 741674263 376922105 998630355 640356015 96944316 217793713 70812391 36718433 620013614 352240360 11928414 407291228 464432276 928781487 949174920 550979822 802577578 191694094 626917366 168076775 238153647 602494128 303139729 647711543 406920285 268798677 699021379 976706600 852868717 684587928 584454542 826800910 571237185 507245701 228876253 209966667 273682880 69386513 394850562 908595451 224523814 8065977 227896721 846065047 805881019 352864882 449834680 196931349 662477141 955490919 810262997 725917660 523975060 126110580 404864152 996035209 207177704 943578374 706196136 752314892 581333583 845766482 635968416 813522974 658756135 10550494 373041472 753495082 457485453 803626908 106746566 159533102 547983878 619144851 20516351 207167219 763416436 525031663 744682077 446917336 669005874 846481078 775399785 725756798 310814961 210870958 632914794 372822093 678935986 276340805 592128292 807299736 647577898 294238809 239707401 151601773 994774989 856363004 689453132 119501742 259823795 145736471 845424087 258141819 127792756 283589855 191071126 39065779 842857905 588732456 815452090 680084488 117645885 238346401 471466819 186859022 305974475 880111492 738830876 594869647 514767493 919705817 159236142 600996 506679634 12993269 181076697 72459987 284349027 342248119 122368174 392167270 568540967 349112609 604879134 369391070 103695493 826339976 257654360 353741949 407920441 618284 344509604 387479274 397466019 560725081 100773998 896966793 894167331 268658744 719909574 665652460 1000552 247559584 244438785 925898754 982700334 828724561 132850005 52202313 410927911 710051281 59465127 435099936 319485652 405127544 649114513 728417322 44640011 866321453 905940293 704178738 662364715 951415760 689372695 197221048 899124121 21173026 33367151 263286280 599913543 502095474 206575326 312637060 379333346 688629464 643489739 369898573 815748447 605192420 845826468 416741847 756633191 715259389 47190166 831186711 119240934 597211227 589508048 584691568 657325429 775648984 523980299 457702618 314826046 569345690 211491776 435945449 227836099 124304846 497140813 41379516 694720679 230297539 369515666 691806609 985069331 704949689 163391159 208269746 530332808 472519454 559535838 555168590 477858848 641905960 324313655 444284567 988848888 57049249 357033313 403268496 117912736 229437069 22029877 571961508 210216656 572115820 938486262 362160372 241623846 885710406 453863071 326549642 132983947 313316659 632181112 930308211 939134307 413766327 790744564 91984482 673599962 634907675 878416003 977803636 273250234 223111534 363150085 443332538 453275339 328268621 867008026 771476127 608334961 587228884 477411735 242427905 501658062 46143304 87523107 85963344 765694176 278023737 917219053 303876227 63217965 394072036 341295646 152013378 780577458 319626047 422602881 897848518 511352439 806908284 357320431 754850582 741680589 331448253 369224595 790112406 303402616 704732106 848018002 937272045 995760492 267181012 870028467 713831571 449760564 324869775 465665519 376765998 492512145 569066512 182339969 439855783 141819346 212238839 361600322 652925955 231696611 134438615 452402174 375036934 557989986 581985629 562459418 448806357 616403507 293503184 254886309 890208585 373628389 632333567 354827205 687237678 193450962 881884784 554428312 256237846 798097770 399684205 994297991 826939372 871354088 550192684 436675792 805552541 797107902 164781650 762166910 161520954 322854583 803229277 342536214 679400537 773232829 808451012 423705924 209469471 726186944 919468095 317986413 352074610 416132262 352975286 678272928 607842117 662933917 741922572 704812509 97339196 553112853 881920704 6140864 804990856 602524546 31767269 666932333 218663767 592086950 830368087 65007200 717920545 344033317 479249112 147782613 716427414 944052640 496266816 596774785 110732566 320179694 360616458 986294897 447352346 88577585 125316823 442858959 343332755 35227231 205505362 781553277 829478081 867102808 792688217 466631636 238532977 27202759 411283644 538758342 484762031 219112168 588898811 245242769 661835819 857819617 481882948 960548743 751573362 553035086 829485012 234194634 781642366 353503505 431613620 970586876 152431221 655540438 521210101 887117667 25901986 655205637 846613766 898896099 797375815 32561734 197388193 976861494 97789200 610286706 167408609 337472407 663195243 867946509 666329456 249954262 968908419 834122506 923978403 678083092 937669099 787139649 320332685 453315667 429074537 228344367 112950269 912555176 965435955 714782143 801583387 959170607 324337270 465300612 221295366 734175676 99991141 275253852 360450745 882852896 638310701 841576583 343616883 990314512 308933144 507689494 885878332 828140808 367532137 567745500 341259902 486596162 915936797 350689588 223987742 243599746 700333858 219438144 168096102 602366025 599406443 948295506 635426922 81438471 249207318 448966293 78308844 388367311 345247124 857410402 394725494 147863334 353181780 700438290 79737927 821801501 127610573 129504812 243723228 552888785 376250997 608989462 723555976 41621584 976897312 895030881 230100985 838799118 606137186 713535097 365137678 944337601 311779001 799916420 344123405 243358061 832336832 62147154 42828012 472141877 429038753 554946835 573583792 540207600 565604019 632978616 357488198 358678572 898840832 171751106 801594682 23083623 248835453 669823170 344329418 534126394 993839809 271154068 975627859 76144142 662074520 132879269 944729511 292382666 300533478 523973179 980069316 808928697 736945536 590330202 132060195 408457302 879571548 563860351 477911022 414540049 419540393 437781372 178136854 8328411 546140982 131844125 508969886 62582251 662255889 235123571 466256751 88635042 648756415 114239084 831433400 493690948 337218820 498604288 243769062 133813099 756651838 665993142 72574263 698913417 576856580 317780630 7002054 167726803 65768673 141610115 179299011 486388064 616475881 171469811 354757581 728093271 967513124 140578975 779721251 324715336 401834625 280850246 823209636 887424752 178820667 307809070 725518578 893841482 616324946 883267963 847630802 717242481 39300111 34927115 149946597 503899425 12523978 273756746 951866605 254643442 690952773 291087341 14436980 79758096 408268232 99112541 113590494 53245243 977576014 946454933 889866654 190714420 433970060 496415198 317261830 932741763 504647393 670187237 505583281 335395830 131728761 140868579 936385774 20184792 77024575 328963791 935288327 784977847 573766088 287312302 161939533 956508575 619066449 852844948 492981887 285519538 392681184 666333017 20469810 245043385 675450461 214888886 680151489 676844270 763143090 52648603 98617065 364036127 449862342 308930371 819419183 395720237 361946836 297168091 690131978 952268755 321217073 445173842 569844829 159531306 266862940 468966093 954688029 273689230 351928991 42026045 7617204 782110672 286947522 89920725 144094905 238883246 426745930 283473319 362347103 938539102 322531806 161493286 216328761 910505562 782483021 415801257 647052821 642879724 360805578 50448219 863982202 820120486 223937976 326003826 674577251 343572334 330319015 867682911 811354859 922324964 575177417 502167983 594460393 778420445 549015557 833643379 331859285 764334552 525790661 222381516 208276118 689772335 828639368 744790027 48913058 903967777 831302915 514912839 166374788 545385308 699907361 593576355 51053484 146563936 621524305 578638780 968152026 277752654 794337943 778040006 998003114 78396883 90652847 289728268 885509630 470049432 809547278 948607998 789018789 678132400 707721660 821331020 130943307 570823007 412743785 241846942 909426274 388158830 157863665 698777888 480314427 151180486 770120125 185514422 478509611 479870704 939014522 510729550 752084705 319028792 259301771 811063445 777220666 711822901 235870685 698616538 100798061 177407108 125521490 291114799 322542445 853342214 338673009 548122861 734941068 149071096 198671081 564203859 275597245 247603117 622224733 987255059 991401248 895332958 393241706 352095133 995827186 407789343 616321650 975340575 512330221 144633830 955735864 635496390 645907382 897681029 579555991 491885360 830413972 440925231 881113147 578731977 547100353 386303747 394040954 698300412 960028694 996277930 999144199 227658581 423118785 897522285 554347471 327002942 891864109 401150851 396754054 468314445 622860732 901311260 339405993 736028031 403303730 162494929 334843130 22584042 588847249 685260773 757947651 409714866 807006733 942995178 935220720 832936211 94038843 881480166 258574487 263331207 533517666 394056742 308828896 448808672 622170088 828092445 790105559 883955943 222517337 353723188 750918649 373455462 574037686 615743031 499127784 305719445 578282154 117679181 40899032 822320416 714045751 778408707 897551640 449153680 796996381 633411973 397751887 989463776 964469363 718770458 525946725 845100428 686797192 843362553 647314234 8551130 320909698 371839148 115810009 114562664 370514702 694679197 240898909 954443430 277730349 596019708 674703995 417393194 63881617 249459914 199686810 581113503 768002670 30045889 130094491 164824866 94441962 945917901 278280482 788026790 207619735 320447427 474552011 743531006 269856730 157662256 848584951 847648500 409107876 276042542 474985857 805724011 495200079 672277440 123381374 919686236 411402669 969133529 719972226 351139795 363488276 598572643 764222127 108104154 716975594 494240300 40207873 864272799 323970148 217422010 638796807 906600035 112581378 480343089 54290604 559471960 189850379 866819929 476348160 328226694 835108310 444870113 394329337 552928504 188718784 110867926 257501534 747341525 311090101 140391247 803494637 487991854 138915945 528171519 964428081 479612518 737132975 335486476 177924112 70595581 993228576 494853036 918612653 887698278 131488324 554362911 359330885 57481293 125702612 253812891 963085912 702577649 972586182 311586325 819601088 808619480 409105631 916868818 980414505 23557588 523592201 178428664 633212813 294774569 896044064 808649249 472339470 8705808 860358305 691380321 571514786 968622543 701798479 312748070 230838232 183708843 876009608 92702732 814692090 926524618 113644047 340385563 231196255 870458521 681219647 914455666 313968884 477866280 930290975 712683587 210250879 202176096 511891408 633393694 731210652 926844950 965406337 110420516 486264619 376534535 777632478 845488423 463599338 548423422 965197287 28268826 575624066 337128709 578777339 272141000 77314010 877187027 273994744 533550674 61089434 277803736 760905142 302588939 49003990 749792016 940719121 6476210 23659047 719124139 98981674 919133665 207640017 36416654 105705828 638517337 75436320 233552464 195677244 931825386 715104881 930530762 327132496 75687469 646027481 155301447 914438563 119996385 557717474 812422661 56935537 87792111 818827461 593744512 350002781 130814720 627566052 279835836 423347348 245245183 577994259 255019198 596431863 295316626 245177169 271297175 691716463 908700542 590761815 942126374 522490918 816990270 990030748 336707335 902416560 452416023 873288058 747021569 667853806 221148600 577457917 733323928 571690758 3041127 754814204 190273914 326998353 754000813 631167544 626871512 629771042 657507745 960317472 400063870 957154499 989945808 628110065 360153950 926433606 719002360 908944748 44177602 744433100 725909209 479079467 364795490 106892357 360363522 501046889 141922224 303314490 235045112 479444701 180727923 178132851 400338417 41892731 389524623 78994558 196737751 668430927 267171833 841225750 979852293 588530808 906053147 697800668 837677013 612903420 588867582 47248041 756295534 984082122 84426631 741602136 767165793 955473343 27580964 378751500 308125390 913573777 700086534 898477860 249944606 480547667 385763925 714103864 795630511 55807849 715503353 373269090 870022520 432917547 86051562 836617610 711491553 447119127 704319184 539168005 762854255 588494640 843387731 252589580 673974905 624274618 192276072 814848306 61447526 916359535 261388365 489722385 188640739 64840656 907644038 480668314 986482558 722412932 775992881 641875013 192293392 594570865 41365446 288649698 794577533 447456 554194345 143715617 372022189 558716335 806330514 747969323 510763041 730230525 90510866 718792063 878349417 949257328 911309778 803122807 229751974 73936165 141643307 357544185 447501518 621586804 926715737 6930282 707291816 8911444 852733373 191335245 344043490 615343608 990206438 768652008 733126603 859010170 132605640 130517474 385777650 245619193 681891128 943695799 791236404 838912961 19471788 644065736 468507847 202906765 269323325 878502792 314914418 674333865 545623147 891892129 255096828 718963203 553384978 841741294 147616427 264792980 778140436 359828547 840397326 816590552 589471534 204040088 916358462 683541326 591956776 202000688 727372787 978153646 379531346 712976716 915279309 255762322 953297068 545289478 788401854 195297936 857698281 555192434 766594009 66801145 810699084 335510059 574380532 268122180 496157265 747497688 536033917 604634739 206350367 157402794 786617949 237210979 112818598 272460286 968096854 192680320 991094128 559455007 870504638 945684568 548483167 205918117 656957019 944352902 129365286 603207552 866437849 357907446 874701088 900626280 482140560 350726884 938524528 321202988 121178589 549398150 820596743 657782223 698150724 884495038 228624386 834274232 932998455 535826192 399855402 331420442 827568117 782643396 798265226 904085946 487031039 685887115 284015110 84439304 221514900 880453817 203514037 73935564 724950893 757256685 852785756 869792625 163963074 585334591 649748875 834715262 931155090 983280042 353128195 127418303 355694942 225722433 416119728 196367705 243625228 509101107 146086138 813615120 136748316 608753374 954275854 16141413 85903894 178742173 607476231 834324187 249514748 221227406 893778800 84367001 269869635 611922829 652860948 821130256 324449651 353792647 716214712 970163025 348417505 597104945 705565673 456073790 219003073 954718861 272020248 380149575 121925272 330562050 696832932 859585085 59968843 45911981 225483235 583077802 706966690 501008246 628634871 904898949 280454437 232294892 739590681 666447375 416366447 209123415 716714578 380873039 130614960 885685676 103695964 981102096 617233990 284041676 726742135 756040806 984847987 387284783 489868642 55659014 410288710 64058287 68580884 894893926 244474220 527481351 201513790 628113963 407825408 198094039 707470594 490610692 367870706 787880628 536488022 165630150 960423304 598503778 423344928 414620640 496373639 294638852 216435945 222082560 35560594 907802776 377302488 537082440 563283336 320553349 490540981 497443685 383338063 597549074 778487620 140934092 186006690 140609315 564262103 595162442 143960107 760175734 401289044 871727680 910461354 295864268 494330616 972713854 79976717 864890931 616303667 527735360 962875372 38922996 511346334 610921276 605970028 211373961 251945594 37724089 899211944 41219440 588304817 902422312 822419712 810426529 18000600 75240691 474154176 611361281 106467314 289874983 498527507 506755148 966780208 336528094 539704592 583407246 171765310 721674895 723955698 959095129 484928507 964317309 21735275 558863219 148776880 316676356 131259909 559011163 58838053 384340166 663938148 376093521 803950357 67685447 319097896 470879701 880378035 681955544 361345008 836899019 590986309 832255371 973586711 867961005 610946754 876521825 863393663 620186142 161293707 519475571 569562660 486379846 858925749 714434785 721059482 703417329 30696545 688273540 194152963 429999369 841848137 370683185 154310660 151054486 646406146 396066207 846287481 45747427 643611709 291248076 724704322 815151578 793486477 47037980 872661895 945370895 56936198 652533337 93395568 481891470 615433445 442911442 884335943 219455670 362634457 605149568 139560802 224119865 912070633 2818552 215366100 149138433 195338512 554340540 897017764 290830678 145185235 273289462 868600423 456280002 81661103 548134159 254652040 988895255 41034378 205295222 294174811 952883928 365055537 939981541 14496155 124525969 24469739 771100890 986653816 8695596 13060558 422254938 655232358 891062837 104355865 636028087 510693705 494697526 964824608 183245256 500328974 591767973 984871742 545840841 594142452 518416617 17741639 122256764 577117436 381687600 242549392 698229414 483912610 313964071 248052032 76635085 336062408 330178066 841564870 762576362 435195269 140645242 132888795 653961613 52699827 170135502 91719355 701566159 968966012 984995626 797824457 680149855 251698301 223468049 740156981 809027398 798740858 816607070 69937362 966126314 603966691 958179553 554005407 878642165 68836303 200148666 54844557 995455428 266907185 891027882 255852561 79096923 600917197 424239793 992841659 235739384 940529102 936155521 931553987 417288279 655995127 722430518 73639061 974980277 185740644 493071255 738060792 354523760 387809351 827941033 587380579 697760495 689120565 668623469 734703610 709923641 455823973 138635943 124633169 386590522 791124576 106614634 264687611 230553059 820864533 518933977 177577972 544684320 450915028 508816960 487141994 13042265 214656857 622882043 637851928 154358510 201902609 686446373 307309861 522473613 197202647 844096300 236659622 436867525 536686908 735603624 895119731 290125420 767146038 744516474 7087591 778967674 238390372 859096516 342052089 85230814 791303037 348392467 783968966 201409253 168950579 904108953 903762304 866250940 763028220 653529237 281123620 26898079 860470645 717665406 41642900 970888367 993580578 416392755 509306915 366491566 933044352 477684219 446109316 115675096 708630032 992934402 98406244 845254890 41848542 816671078 268118021 323044944 340956695 89347437 417591604 197458390 592271257 773370872 824273799 969851509 575066544 430083296 669044903 979015420 782720907 116158714 103758967 331728494 905912124 240592526 924871598 248364436 444697923 645040985 251449522 26764851 811359215 807914005 924720410 142671467 254041175 380449657 322910760 17079303 183772724 694700583 956135191 96057908 507737244 468251258 430144355 726410979 98832888 206965740 78487366 130357544 696900427 128367687 256933861 29103660 297330226 436972916 978554421 779002274 177175360 873666730 240526997 560041385 915359666 942714260 959853216 365944166 62069320 287991355 652273177 803472873 93449959 719726596 310414825 913259640 435138157 119001325 918492201 58615666 922138157 897055739 372586998 140256240 70960054 796220549 477446798 957708468 127136138 843929306 711215798 691728287 390301564 280858476 369348695 393285414 872296636 228035202 580403012 534054860 179213482 36297915 202744603 278489809 167134273 651496760 708399433 901481217 844352159 507043773 42987221 937090445 220044822 691612534 229144126 912121670 719515932 173122676 393464817 957148629 606098026 481844429 760606201 612652702 335015788 289916024 493426025 363380271 551904432 634822941 843928122 980633153 18938002 680736154 70042035 514722087 862071324 696312188 860787078 839215296 371629326 771995064 799209214 128322695 492341975 726214732 226185496 464710512 989218391 304175049 476787928 628325057 284408047 819932330 614919685 226471815 242920937 729031117 371754250 622861985 170397055 672143410 59985546 846150387 136719413 134266506 104416003 128552009 616253996 489066734 554672145 676751995 256990854 487641061 511714382 693121902 239044732 826975296 7877440 235055698 390154281 5649407 785065136 825898066 586367350 310223361 47598406 146194202 94273413 316105790 337264814 227908188 503444431 684578817 583600397 611972829 242424686 323474379 172553002 780803694 265974212 748336176 473353524 921888240 630074381 209577927 178567225 503429108 138101230 330191158 714445038 396376711 664564200 530748982 200517835 584061353 57926280 424732645 91488341 309046336 689301023 29673694 701983145 328230376 829520743 824106768 652411462 735999942 758437398 355596133 1667737 206387033 318775138 435981522 676044844 589076498 499936643 459974573 315495689 940895531 2432407 383254904 390868083 123022686 364361789 366234693 226407040 752876642 609224084 487942529 87736250 402181316 831746696 364300077 740699965 513158391 585007444 679241183 47893187 659152386 385357097 789869264 577575548 852938764 452496291 195159687 397146653 50385716 963708116 296701614 985217004 801802065 189499300 900668351 647590766 988145354 201212394 982796192 581187303 749718807 333268639 745087160 818682350 561689511 551958311 571241448 15264996 506066796 683245440 111929092 624751612 361537410 336545724 432748550 577854120 863957987 993458119 413504675 28021653 598477072 6465006 383108916 25044336 866230697 562230015 832406403 332413972 964584915 203273355 410502481 116249246 503176082 821582400 297342151 611482729 976022051 874475673 733092904 508137019 437033242 385277518 963331239 734540454 812276074 885427981 177344439 652868512 736144866 656853377 439967793 333050083 657870108 122769019 537118778 154944162 254128919 173345178 56264015 308981880 870597392 16563188 708909424 787942817 282262475 568962350 494159411 987827313 457512951 560711712 786774662 153819759 197585670 978233100 901507631 655212284 565887638 773788063 820038133 629728984 952674969 979506929 523487246 797427079 211572159 659534190 277821906 401418139 883720689 20275274 280064155 341446530 331820034 339839743 170913039 164522421 94475239 86240364 479391336 604622661 750994235 279356664 237833576 987828428 902510402 724004118 384360501 494484034 817109764 333012441 620552400 737331826 492807727 469975833 399621787 422075661 819386940 568867195 589033669 809477806 957518218 133805753 722963747 70528302 354963827 275190888 149742909 171696671 605204150 130063647 879985471 553456026 796682590 963104096 647007752 60025170 247181844 276133942 219107140 845148307 201023808 466112227 672969751 907686681 799670871 440542714 436354710 905820841 429643949 139343058 522775896 340072863 340841397 780259102 470858301 66752054 87058007 852620152 836513556 631222780 761219147 656182911 460364078 697688139 589409685 677911907 620969909 475992533 648322666 194858597 940221603 560017459 526646079 901614535 359729128 131661409 44736915 696743493 455855347 953117386 163518062 899027243 730387860 416427573 609509844 912554862 136604790 348318263 915916758 107392729 279336149 384177832 545495049 174462885 177853657 496033847 208360417 256874546 23968761 992595266 728575858 360568382 958431373 398381817 145255888 354351365 914088264 738006236 448883559 151672727 62444524 475552285 270927457 474822462 526359426 786157420 946331085 838079561 745474207 528198079 209564140 318204366 18096003 68842362 353638177 884924504 704909210 733550118 791103962 186577368 875559033 617008134 306656763 758164068 899504641 808781013 795159742 210601971 494979360 743391601 445555208 543726897 827498988 376119157 57003725 402546023 955576579 832118123 164658107 582143608 60342736 30272361 830077311 62038585 501194784 982233960 464435415 930829310 732011407 206328954 694446695 819992957 505285739 92577280 662271363 962362833 296288838 680945133 387508181 98965335 519939169 38868909 829848223 161462153 609173539 596155970 377425944 773906790 178208600 371413364 398197354 263582436 485962129 732283624 843610514 907212464 911256760 764690847 723961027 183230149 197702757 361024084 88775949 493328842 574112265 26953271 974188788 538306414 249120176 51750995 904206488 923672638 543243233 911520565 202141575 186435720 92677856 768474551 649297231 185694340 539037538 479415682 315960027 36625687 763735505 864396296 498117364 36387651 226268420 997842174 638870140 77854483 666942762 118107919 595122807 440532646 869491860 850274389 666503516 487952088 349679555 576135994 903826452 764414169 827524909 3123107 806322316 733808417 753843121 393227008 898830223 9125280 687968589 864944483 646753219 898234229 74363588 737591800 150995585 182416129 473696030 681055048 826596346 547150742 567901370 983984984 947140305 30475774 250205045 508208635 412258970 739193580 354599466 18199953 749722974 278290126 62942094 138143134 516994883 22657676 508464538 431438293 952758974 820205865 345164918 510806343 342501280 376315655 872317855 559250722 686051390 182772538 541036203 908835823 421323774 296052126 529164349 691384188 512915510 548690338 772368599 99450482 797574990 426744174 387587252 300995350 196581941 892524544 136736957 367835531 903975206 831643592 102676702 297028475 37924476 751221283 864546538 39557958 326024485 169580925 932947061 558622404 859259152 837397813 396816375 274338965 452045066 501006448 994796188 822144004 854073881 995304345 223091942 485526998 790979810 867423680 356890683 710749511 646286419 610896216 210893726 839239821 599809966 642450093 717688829 668896385 554041839 347956084 930088388 471354066 581618768 483010095 117841014 862796350 363604574 493576979 209268102 682869219 97823392 778079897 735463795 326153703 602774919 319530397 455695293 292411082 422080591 400586446 579173583 514162697 952288647 173537105 137425151 29305188 809328912 550303363 358694219 674341988 280488167 578909877 338070908 975753238 283803459 708042853 257484017 474543584 666188418 954336762 974657513 763497344 233965132 773975009 304462525 428179754 154641496 656872154 6197696 308266118 312578520 646013018 781108996 267479916 185933774 147202523 687165834 190140971 584889059 546475484 592183874 845538650 725190847 833431720 453036114 755661633 603896438 964588720 740064406 230719662 555222282 891315072 103314360 995676198 965611135 597426249 439422233 888240516 899278986 75046855 20599722 23157974 38256943 769442174 545233562 226673699 852174232 870082977 59676223 561663416 704112961 15947725 411298783 610510140 39607317 185169973 279761769 428612749 686451895 781704700 765362040 716085857 962834510 132249186 119953627 238273193 84205506 762948425 768583958 763207063 111876190 308095514 128109930 680625699 518813392 740275702 510614092 139543467 685207003 613189002 802471882 842270296 385098416 520906079 64341091 978326723 464189370 366203647 479910269 811983188 572639780 814604712 625191678 360709230 242680957 544114575 475492373 538524902 10175593 496653100 794192323 732004522 736324517 728086589 598629780 683781512 706110634 804230226 411646627 257087471 75067718 407423269 657360471 737702690 67136511 116363927 916771433 363101225 389805682 433979598 21185029 353706907 765624580 62181541 442414149 413739090 258134148 220230560 656405655 679504736 977787547 700553393 632917825 219949963 97854111 694286295 260668331 713365461 96060526 724691753 266511201 768681480 512111485 63428914 15133615 305699213 651670114 988376093 876402326 928742795 113513447 516062769 80988602 381703115 887217602 513395595 153903612 333486005 871975968 255743704 890135555 716207010 416110086 926544682 86338944 574426295 971032316 962297851 156332335 74700669 577217408 233188837 873327606 609131109 63951062 703722505 514976119 197640794 719251814 354968988 611268518 557670534 660402885 266267965 271724089 318659403 905684241 135073593 198825078 969044492 144503163 652656126 365519655 778616543 78600252 80732090 255687445 367898485 900666782 914895289 793380809 411011150 91292108 65990451 745714957 816177938 797827364 9722402 53294005 817695967 174137125 223779568 215810982 981605484 3467975 781713334 897556779 449429051 799145167 321427105 808094618 50850899 489473119 488793162 92931388 75412621 466039013 849552738 171886669 836448923 547771615 307326106 380702799 768049867 395285237 301846024 742057588 441864729 261608307 27776250 695169032 191986680 882382721 643782732 425828555 753383609 823064645 467451965 364062031 245543421 304421225 372571336 10123405 380476183 93594527 883806180 724634648 362920754 140757055 854320386 694039987 329972393 2931516 510224110 487672436 831294569 954283757 956027530 492540421 991917855 100525701 599888932 525222656 717536782 497549749 78846256 681103674 251211634 535904482 354437209 272714734 126255780 481161940 717572901 299482973 338508167 592737896 351605520 613687604 49646216 338123001 161638484 913020078 190906264 768501709 194261922 71205564 91530059 503203060 536203990 928598277 411381947 377783653 858230872 293152826 103265101 690580908 713355500 115994092 401985872 616977807 166134105 61929469 630888038 122032136 218054312 942578304 990594472 550057815 485959591 165137707 187580095 996385438 766376268 598492786 565979626 308783744 393571016 148870476 849857066 699084346 873895812 584407361 358078853 169559389 39318120 668711849 340245990 820418356 76222836 594449982 6112547 98133192 623027475 713432360 540270016 306995256 314966405 947887921 859377326 830165007 49333395 429628514 749131258 752907715 468824686 60612404 417823645 95116991 609878291 665942224 26058703 556185759 332520444 263510829 242265912 523184130 434915744 965737210 707191607 163242476 578861900 253193675 571787320 769346652 459265766 179184797 18376287 695922532 42655964 116713706 622250950 267066883 664689730 325735590 712201070 394130281 586529443 544511281 328134239 227207287 499652110 156567778 578562365 968082959 569421611 498740855 79247663 258098941 980999429 38458138 209048219 408138073 954425296 800915720 876665214 449855521 723965422 954329130 504498595 183459012 767107433 996777311 308224844 192613733 381845157 731696481 526413622 480748868 643856390 299074449 952356922 243261382 444754950 678506191 535040340 401813313 550746231 655267938 348388009 848528684 59007038 490901135 675253572 414033352 686697703 986141094 166352677 971381440 413529153 841585304 449120959 286238906 248944134 284189357 554289810 365814573 258370617 965190316 224500402 651547949 764056963 87050122 999037336 607951087 188403321 587738280 466132807 497593345 322794654 352137068 420334236 859023185 838404952 423187230 388913387 328213393 637390493 694594750 447232894 439310224 37476837 679397331 976720759 511534253 644140580 72042878 513569587 280897735 119830865 691750778 393897221 962929958 837113110 273784072 910093098 185165670 284665653 568989588 280702099 406757233 893563175 492257817 998801263 654353333 518885635 359830329 613479257 550686888 145117791 958003277 624499237 909892135 882939780 524312295 337231174 617734582 204491286 781987185 594681302 393744873 793881406 2482441 503505855 946334497 824705413 564931589 595058595 867637850 928576137 467437249 646583110 621532731 328990169 346540270 868494978 100450095 119709372 271829186 613670414 26746192 521398952 547092640 519892142 67513840 59708786 211516536 883545637 797799187 761377900 881104229 441721136 409693111 585947333 975409812 935771621 498786892 196872855 853400485 579310636 275474537 154260610 766581142 611200663 889226915 591447310 117701223 983297517 854463992 184023051 371509510 477303681 885092749 242203961 866226245 858978055 983465804 42991757 82479788 213436440 620200550 668485811 30890043 24293269 747552913 488530228 504609128 332201712 546215367 177912439 662386464 481770124 783674974 762380286 965676573 749445058 467330759 362379032 589678373 793460410 607217117 962332893 94260968 393349280 50587407 290822608 668485141 859455646 289948228 757207907 42984327 46809910 491540226 741787451 543963931 973710581 134521577 350414962 71032893 15571364 982519252 176822273 826440537 934053317 712265038 234123739 997375220 106517574 290970008 339099072 554245107 978636274 117144216 85377782 324769332 361237715 697595486 403689202 692772692 507440380 719875984 73015997 716214534 408581928 581662849 667842310 267263348 648504711 834646613 886496176 894583373 192932300 478546996 116185661 639571467 458326854 96028585 522431310 792053957 895009394 421269608 49698518 385091101 351082519 420918591 108882589 285164880 819332044 324378698 673928160 586926128 751652417 877495536 355920591 94276895 373496579 763931952 941826378 935957134 364995233 913767019 929268722 704534692 490951747 354603588 99805810 926806737 943151141 863601564 596558751 113272032 669292917 396994378 372471992 751131022 88517427 541741184 716721987 908338292 420538331 958873496 933174722 385056747 735550650 174925371 497434315 19141259 552965455 449745895 10913628 637251782 434221901 753407515 712658300 888579607 609535006 139735310 312498445 880953946 653991031 67552018 918507313 856695016 744159602 776056333 764453315 788552683 854245126 717736023 383233559 476576781 609487192 477407120 431286331 191388229 690153955 303187490 73219289 73645000 321455153 43248087 350424208 947381493 208442025 946205175 553660526 979719385 297135315 434471729 57910635 209627317 737609182 835250433 518452240 233748574 968106821 682586158 348207187 569881769 528505776 997361279 344755567 521171727 253731559 198248168 18595494 695696848 991609020 761346772 86705593 88752923 782169232 491472056 735956741 562718539 363299040 857597042 607625908 980090535 812521699 141885730 835770620 176831287 828492335 25611478 313333899 644520241 835430869 318773029 729057832 585257110 558724520 775511650 693323322 900040596 473535363 345455969 495542436 215261531 133946487 445099288 847625735 648993278 686978215 267727840 94645540 795112306 246159463 138023274 427425150 517551980 448289573 148805323 993830405 213009739 541664455 360512412 265847716 857134016 629833166 859446222 266596653 100510390 470358442 686632309 758588588 449036529 753003881 831166401 466048172 602618744 478519601 380911686 338481825 799741054 826807464 844521920 840964112 898178749 933820178 876177823 650764192 885643172 948783909 948336896 239671408 727784512 928422532 932489550 548490154 850762229 164074253 164322639 517026389 330900251 616016162 538933154 570885588 671200222 54006499 833636115 193101533 761661029 197140681 983767941 845234663 208412198 932146476 717541406 922824357 389859389 381831562 311690566 994563532 829216310 250575999 771457275 595068524 984424233 415519072 586960551 173226874 110508325 842531258 839507257 905306773 426823086 435576754 157520098 210550691 359639912 969943158 185525702 210529964 859635425 382227930 775473663 691431587 135750435 50871723 151371053 408039200 107140269 393362648 489559401 646549662 344791147 663403382 516028129 866284849 119188499 668110574 490825823 507210748 624243638 294114151 241677535 994537858 791443161 982176574 243622793 997625410 872002235 26934393 971240437 562043515 235195564 97089812 585578175 172013696 489741375 661860079 749045970 415667962 577760531 595302701 142609771 264267769 637161999 325461239 61032860 860949925 121879378 36435076 349252622 249804767 162852027 694679664 460994397 51569618 154510182 21250839 990462390 810154896 689127523 70644110 932069533 395027041 649262522 163402141 226141154 873167032 807686806 338537691 665190924 230009465 878666827 723988941 872400562 433312888 940239933 442938794 551189021 60309784 14821025 335204382 352757955 413740159 847886853 917249138 906655701 34529388 21483272 926562794 342520078 281157485 243989666 542446225 93258650 621562458 887801261 974168607 52211724 589738675 812794993 752950006 735701898 207272685 40271216 676678279 367646789 918448075 204562485 183129170 195355176 176931766 908025448 609526927 785225032 525073691 499741206 391627438 647469362 509668656 405895827 697768486 221893305 159862639 423550944 833439068 254946230 45184231 792322881 159768092 697458217 418159478 67511733 463593270 625648906 184659983 440067528 519084928 174715697 642752159 542310714 479287291 866222909 463318048 957565006 526172705 865236795 644533495 978025855 428872543 273479810 578623246 756095508 858058345 31912121 866999933 579683188 404451385 817521194 762237806 369538950 811729604 784248652 24601892 793777814 601243575 553140338 968127960 155441339 802219633 711507919 844777343 448105277 207833396 382248025 173994253 30333030 325796817 122953737 6367965 428303680 187132463 407694585 993689615 663223249 319444863 10666894 690257408 528558663 499146357 239768726 308434628 397551864 908462539 472906134 9942697 753500410 156762635 841230831 610078194 902164950 229309301 752755369 699290928 697341851 848600876 792894957 311153080 431562969 654027232 763093750 484874774 368000888 599281992 332164711 338781925 947056375 851280527 120737078 223619587 106128827 282966034 654445708 638659194 718167354 560887734 97729293 970630421 539252907 7859842 930454571 794818047 837708856 25196049 3631169 702837687 451324935 587813671 403059859 288367795 3248521 877656520 639582768 294990054 759972930 565165559 371759794 426596308 331730597 671429403 901754713 627506662 549488566 613133337 43872063 411120044 276933112 903837155 902132126 61682164 731917982 344491996 161222471 562329098 176146108 973164531 142250658 621645814 250729747 784353808 239948568 73414558 187777625 105958967 919344329 134485158 427708184 501675531 254565933 356550119 916355306 930150391 978291269 737590245 92014115 953489173 693983695 701144491 453092009 398920701 434462306 843330454 704337762 958618906 315859957 596764107 674763410 750954958 848017745 930911618 291857362 295583787 221241638 846968595 71799523 547625718 362095321 339964286 776154244 85861412 905671221 313147505 164059464 693352804 531119906 791244062 717694977 50518413 157552937 409232130 104692362 216128404 273039603 183926339 295293197 139533457 195377554 410138894 551436089 250914172 436269948 868767384 814932363 748972270 963893800 399154240 717604348 337085831 880939863 273272196 205896657 759313374 908830819 316823340 176903189 405337589 912441956 414872724 50136443 921786823 960494531 63892317 391740444 254712985 614078324 833312088 361378458 951782307 606460650 996983693 769107931 242387166 512479537 653483934 847757899 85987688 553628819 307923374 942787722 908308949 560198648 675380800 953877995 597438532 459712008 354483507 626412666 419585701 165826053 380482058 810499213 672294112 46547088 808804578 540065017 721547629 147903104 664947049 411067461 363339861 224244547 336973890 965506807 68807762 519433226 873659148 152735653 639339630 910008239 78946094 275478652 845320340 664462165 941551996 770060500 983619404 32775298 4720577 668878553 545444783 432237069 105142981 660363665 514458787 513741570 168684972 399545607 637946238 519058050 302403488 713613688 383501930 412328868 422020842 600841755 433916331 866553487 43895946 754631925 483011409 472106114 298279245 580205215 260924534 705197647 443212913 651612884 861422931 630577115 111719526 575554158 205439497 855345691 54054903 74987620 384442393 4992678 715461992 541753736 336197116 346266677 723096153 166572261 121716595 4552680 442603500 312447081 828677982 599306611 760542790 179974902 839869078 354497123 301720897 318162675 149219238 675035175 807632949 60315689 629243299 387131177 581613278 710757741 433036178 365720195 214678098 459350254 508769519 991932101 507949296 962217248 730854590 184003032 14994348 208563612 133020125 285507155 76020899 252586780 941856324 228774159 557631865 696548451 217798360 390677416 217306104 625982518 596970467 805197943 152142971 260230397 494507764 224710659 473699979 605932027 858827484 337964549 674363007 905448260 659339100 451553088 353053724 618816915 63475143 596678025 573813974 294055579 4260223 537960614 584829011 641911964 961848021 850228391 413771454 15615514 12391498 224474011 659011245 76452374 331119621 14858451 479706643 809042111 998389050 993822234 254555092 742766541 975957436 76951833 500840720 948822468 930934115 730046546 394152907 356303986 924360427 628406608 828249036 588995378 884461005 295363501 250059202 870433984 835753610 740549275 972670751 346945961 416658309 297839834 828869463 896137307 760491676 402065719 514152593 541159074 168649434 615516333 867474969 995570692 954134870 270211010 454762940 778753869 341609632 728480248 277700244 725095671 870877644 668786887 367823708 994803175 612419003 21590235 125698921 244301577 965930837 176504066 355620373 281090884 11697018 577385672 767512908 445764535 270456466 147750479 752671832 917529683 569501934 3329231 875244480 798349640 83122726 207910751 7948743 418637862 720521407 838732499 925114862 171274740 10719846 389996067 537322246 164198715 38921039 806075403 379081268 30935745 366357923 704686906 559526397 972732767 819331770 21466395 511193996 163317202 153598846 327164633 530382188 964442461 595631693 35168611 745204838 599091203 288156156 909491391 542730696 710422998 971290863 605319708 535668031 16432279 693045637 690538166 216453245 745393099 256623630 773187826 406722405 792265455 249407829 239207038 567586560 246212682 596154886 217922776 253226306 219170775 537373087 830139743 801373449 237151594 698765290 54153510 758495964 145498899 537472110 715689047 346343586 79059147 520168598 203356129 61898921 412814855 200854653 477679490 190573355 190091907 544435165 680293351 771188611 566678987 115913075 783103947 540726323 910458830 376361087 921598614 84450294 899871754 880750832 995363253 244318485 449735076 313869704 831800002 259564304 502511878 307594128 139096592 680295952 849085590 423530905 645314320 763485117 272515171 264494953 940993329 463515733 109906638 482761691 852304453 432498598 593795574 246437380 376719701 524304740 584106845 982241432 258539772 175053120 764409042 795381893 51210507 373745325 673353024 730904705 476404923 863242673 677086129 146358386 698734728 972779130 930052292 163112374 589950083 234642059 272894360 761760676 505688952 78195540 982235628 992939706 71046621 30798814 884760625 296773068 983855375 157000623 908615050 105116695 851462735 598935964 775152035 369373034 726048753 702848160 67877010 763494533 419907128 602978900 660466049 679120354 308629742 741335838 452668853 447002433 367118247 537064356 973492416 80513193 236322625 134167667 906469454 867002730 2300465 259772214 881173687 591771818 712989747 191576773 150101613 699595768 400921774 131311102 213438392 609562713 61540561 845077040 910934266 485623055 799227028 778878369 631587163 26982189 571940673 149979612 433446227 220469091 678478575 994546305 896624257 194097485 476324631 569523780 145708359 293433627 976381052 612421343 297723407 723795566 468332761 697483286 714299434 670845025 615635345 730001050 69360326 559237492 756231542 180774031 287649804 553598606 965198230 303972507 954872444 559422346 329741064 861046648 26978590 729874305 688036581 217486611 930497061 775849024 608877417 866974074 814712967 605851063 875665230 408180078 170657653 262397649 864224397 692530965 139114370 72920675 151649545 402993660 974128522 904946360 644802462 71264827 381064369 432289478 849698074 930895082 87239295 427033790 587222925 168988026 190107966 593495250 36189948 38583832 685868868 984891715 719991712 170611841 339046170 975857141 704659106 545810791 964954572 122047838 154037337 959775577 836203839 218046919 483746796 799510122 492831916 130537118 495728491 708934305 929608841 329852605 248196853 78879817 336083648 413240370 673873189 716888685 140210290 706715116 427304496 43759017 413125853 322949480 428155011 997676938 391635407 636024337 974086425 442307906 128626569 620590585 417430219 665254404 612024345 201051203 722081818 491612807 220064467 834789171 811505309 453017371 531615395 172396703 833221150 939116295 483028683 805826700 630361690 254300991 317670173 830323698 505558694 24306226 121281459 995532513 768028053 445859725 122978812 973014451 222270596 183265510 415481531 865556500 779804560 673645867 156560872 215121638 786609867 583236445 762489366 254557800 716126337 172172849 761918385 711679761 380074436 65124263 109939040 248559950 243818437 841102759 128541794 371421443 133294831 6544404 498459002 316350564 761900136 342454807 881576670 629119813 569660752 130604344 908286145 267904186 302526958 618840149 977036178 485489110 74455740 250656306 722654858 987966952 70653516 462552445 480728270 331158666 612402565 688780067 690766910 937191980 221571206 365630979 197194403 614932421 734903569 399960017 430970821 870304848 374710868 354611675 135546053 16387389 796318698 948186777 538501576 617526755 971546578 747422512 592288477 595202036 850373178 712408301 978866779 676824199 623967945 74457613 330061101 102671985 903523114 638388408 592002324 179894414 581412633 877836300 97352722 429995831 721070463 38096925 118153616 620635741 117594162 990316462 198928896 445976596 49780992 89421158 807423713 468798992 79390148 484305272 225159138 422851929 331981412 552664609 24951449 594752006 703881638 197989349 750130464 466996103 238272146 194396089 559224821 962988967 17764436 386579640 394641275 258657577 968158252 844418167 91116773 131235370 13435384 44935936 354936305 540684148 663789617 335425423 68917058 424328623 563453282 676772712 73302169 382249664 932440764 425987854 34315615 454519197 776325854 247393657 46727336 678082446 105234329 284811204 40154714 49245245 782131771 713667479 858296360 725533309 927493803 385144088 562710297 497823445 695062888 622571155 433780408 52526788 30375274 326543287 138621394 194222657 828934230 955202131 760285334 409877069 890248122 153895318 417412632 453228963 335111375 396516279 77076622 939775874 163551094 145334290 225148024 79786315 760406347 244460916 270791049 618004152 645134512 563298446 42139880 326033448 85083744 165339768 868992317 674334192 784169702 927876549 440404175 222222673 57629528 255574384 200133936 906901661 548215481 680161040 184518661 625409630 140440616 316328921 720641407 748832685 469056974 196121053 191497329 502321121 573792855 403242403 307050659 379296945 197170234 280245839 818460386 47271165 468035393 467335003 132528956 514966883 251444195 131253400 249362420 546448702 378491323 491245443 416697942 763296651 523059539 351796975 7786045 52003278 703149075 968757998 314748030 668843089 521869959 407007439 208149217 330445444 623838962 134250244 629711871 714554982 355272974 985201514 604166690 355351453 663809944 494210048 657181170 912832483 817676750 320490452 864264611 974703767 321089165 417552288 103366049 521094545 552630911 170084155 322973009 648918207 273511868 581978486 346522951 442707261 600460073 337949120 286227997 368419704 647796515 505620414 995337071 157169336 224526581 895882980 878908284 367434436 205156705 82263551 289643594 617491902 445661149 825017768 2396003 719728212 714811017 490578660 938869172 321613737 448839168 375342040 576070341 487454442 817770691 121276176 552435234 716460130 364867953 285258822 148821105 507136620 750908416 9103889 996487605 981796974 916337051 290936922 397846944 614759891 796008849 127904411 126781046 247312795 710034916 677523600 107032130 583891652 966772036 766115488 933365164 589814452 948659281 462106080 920558421 548257746 616918351 197541636 106294482 406530363 815843551 355887372 164699818 250891550 886608670 120235989 149544858 784252182 365660586 385805255 121671725 836722264 995392977 703741885 91246990 165224557 827688489 441045783 580666486 133201853 806168225 527389327 133596115 694558831 319913098 667517780 142580096 186060147 601008392 334992344 115283123 499623198 547916727 509395294 141121884 436524289 48171453 524272793 951378654 69347255 823373042 721755605 599529512 582046771 288951647 851962759 14634128 687228833 434774452 713988846 993349021 501624791 760015158 926916966 859040629 500337106 210212011 648844941 679864494 774152419 851220463 401418499 632318300 34134179 86490453 414742974 874362604 360914348 503831581 204658021 654682962 928419514 739437734 115692890 560161214 948565521 154272566 30231433 107072602 829458440 177883121 208415981 98125969 429390042 974983112 559842805 127267157 141342799 173255761 338292478 845478034 38303249 341589109 183040013 967238546 842983095 468891760 814671118 765576160 623063259 538036501 210578107 405245108 591092792 105747638 186743001 189951419 436405831 331485665 620537051 384886065 12391719 610267174 151167864 972366959 711174171 366316632 901712703 650654329 358731544 934388686 15731802 299635430 270806372 234253253 239554594 979120718 615858832 838049502 914042824 668536091 277288200 738375456 687183887 195785733 183994352 21364931 180757819 265227676 375284662 315647183 34427005 692620182 170970310 173351755 20124063 785544611 717987142 726699803 509047594 650524691 234766655 359546047 172787954 228702836 451285894 676410579 211279070 27047955 625445594 189639058 501167822 180120967 966529624 693081375 346940057 253756080 866159693 756039577 94303720 794266074 99642979 9463911 817740442 850249601 815552542 159000043 515801428 7758963 258964947 329311650 744375233 554370853 682480250 542576605 419168027 810518357 95702602 721807057 592064207 104579361 783904629 88477868 988389358 225528678 80043807 270549347 431835149 945245365 761538332 627899803 275252375 513631459 389658942 753133385 509636179 645596250 260032186 836385446 452473916 501639402 905484479 659409194 485526310 58742564 867102931 44649006 599579776 295369356 864116085 283887981 221175317 52548799 684910421 851614663 556430667 314506200 354673962 765885702 553499956 942648002 558975099 90791880 415611754 948127244 810895191 722411403 699453879 544745898 509459009 74838525 571584876 413296562 19684588 585701094 96911074 145933850 30081804 206820996 131069093 934952045 190725220 708937218 32396149 198264361 54868060 560706390 783669701 588179221 428468015 414609410 937951720 972000688 208758047 226589100 370565918 785318734 972278869 399747227 608544712 895924403 926735643 37150187 778423300 147296253 481200779 474049767 552890746 59745884 58711698 674118443 174162156 634838161 354093090 52568913 558647823 480716479 249608068 730159041 737113338 724776476 259584249 249635925 327897006 254574218 493579356 10179747 879425292 448596190 420440111 713401838 427097139 920973540 706089866 367234884 591422738 126075761 275780493 15546854 83893095 378385917 545931401 531626586 834738939 855673700 716565793 67720713 154716749 943009456 759153447 807272876 215679599 82068480 713979528 486763971 922696304 720053607 973675616 559803148 209694124 563778053 432241170 95874292 83448637 122259856 612315806 738942139 906121674 162452287 607370228 837244175 85361681 848335249 449062142 393674772 662458654 366404113 179389082 873054184 222806280 227369624 221575801 853078354 101270553 395218492 713538685 689703575 561120914 567631969 555163182 720175290 764101258 350730908 862631978 984836033 961421197 186415952 395075906 577189342 94467151 368041334 833937868 24767438 170243042 879070692 972909757 62439349 880551789 312935435 604882274 774833022 46929314 669382586 515557749 253929991 855932102 712281050 358711116 817341361 222187189 269996776 409973834 120147886 307964869 275268051 671998467 996434463 618084892 520288859 266776587 778095491 120156311 376404444 93138135 131887109 695028720 707584491 798865334 130135595 590335632 689728204 477839097 119214046 216703773 121319663 59772205 421687055 32277529 544361529 503501958 432315206 726145159 28047521 415191336 338741158 810359396 54326590 468068369 971269243 297892629 464931569 57335641 740258341 472859497 289618138 744287954 381240211 162426630 351575405 233851555 806431116 233123130 24415176 687144856 515168527 703657932 629107590 970392436 970768282 811008282 340721480 83638938 190137664 108147655 696846145 364236879 554876633 967397036 781404558 182833058 548204794 978411904 352173462 116789950 377909369 857545405 553932573 194717737 115254212 483522031 651025042 738268114 349400604 438698036 86114283 485416952 191277337 456241601 261921480 714144314 703700120 790457476 896160636 715660231 721249132 770122006 385817134 653212000 562073949 836126758 612366894 983849887 112258393 676366488 883570655 205975233 692637160 580240039 22206420 46074826 107011088 125388461 985113984 48150122 163375087 9395269 664380091 166576031 432072589 17259152 277171365 626879543 179990110 364910565 471139781 789470850 572689002 688651219 935555624 769698360 56600229 978356510 89224739 547626696 99117581 144207845 106522969 698259265 173448080 536019812 561570080 840112505 695092950 892349440 709678879 105018345 290928318 791720230 163140089 90941756 966792455 526549062 155521068 482876278 838336372 137603628 480857339 314395830 434825370 18962580 864712899 634279927 441432754 255948464 892682615 581364896 756763681 167717222 409143524 661793890 908838414 636403516 739881566 970490097 307566049 105985900 673831850 586416149 282940585 508578230 709644814 471220833 231916691 321568041 435620292 258631563 13337732 746060709 16179673 811929189 335944920 708330273 831974027 120362464 331431441 321355341 44936923 46587164 160874536 538402462 295627889 352288099 71784307 685227084 60081308 625544769 951577887 276400141 851548698 201397886 972367885 718164706 383629252 350773579 339459485 724974169 559754611 81831262 790671071 470991855 124919223 428817156 780975923 221685099 925080123 39869638 906897069 560125403 681880253 408279279 18465420 355556772 844358417 754246497 898314179 438485114 444288188 476749417 423187584 118146245 91270776 216808398 361632048 7492254 141610473 414090222 604037201 459080967 578105994 192009025 376869053 178504415 623606154 164282159 670747032 214129227 216027159 980752537 222805837 145569735 679881240 572874731 328918993 471805375 417758029 258713925 876522582 63010747 582838919 8074512 107386593 221756881 16125470 14107010 779267167 442945181 822815313 74232599 478083010 117354681 342037605 300627503 281178146 742495858 562608025 269017878 716248808 296816905 953200441 643226270 57218758 762246171 312463641 71849490 338012277 899380749 855524068 257920440 225789142 536783299 698933745 509599745 336417906 557379423 759300695 27070009 818391754 988177168 822225293 570842563 974465766 42411644 678080618 7449667 874618730 766387421 27223218 820203907 634171102 86683644 764552687 104895232 248021581 128596440 912718153 974669734 84170080 839898435 65300868 238426139 627152933 300607302 202538963 596807947 393547689 382660365 50655905 148075277 481397219 487508046 952978627 745950536 523115251 255415147 979990914 55532634 648588015 503262583 871811147 214908778 982323486 217936372 220986258 225161018 788976201 344307369 452545057 277363319 972559250 565224345 117280957 850817214 264513259 569132947 163995255 752907769 731889813 858262207 94410796 456868424 396753866 809602245 448312541 525550729 944862559 681014685 434966893 681602583 45674104 287784394 22983425 259282661 750446367 701112473 842684917 677354800 28507766 398647575 727734442 93722431 901322197 976959804 735901729 10310709 822007433 472090207 815348365 629514137 317980884 280943203 228012511 416826353 494359627 381125279 920074302 370113883 407826682 379224421 50825707 148308254 402790203 858260181 619553007 137352978 735556970 869045390 624312858 949168296 970635081 896151209 665976011 119385773 597497472 423119188 244256850 110776871 664857140 623666614 435192469 74371583 783673469 205586058 925615759 761545490 627745610 778536363 397747733 735533213 248493916 864499425 869895041 576300364 709093400 40379262 425191131 36638453 118777862 352578400 33568152 244147895 764822626 927766153 498617909 384669184 662754693 607459246 54495766 830551647 51416160 656389767 60984337 165961391 366186172 926392667 586264866 453045779 474231089 317997630 215623386 123299019 695288307 228995525 105666191 919111138 524907086 159080279 4570978 220275474 668397704 195988137 272368660 795798411 214135743 305145344 258311123 927830098 290039511 514890944 847971975 727307179 233832978 198222007 756010674 102855690 529283535 389791341 793535602 468069957 395891244 504048598 749430056 535449494 594106668 550418022 566356606 631844492 56740977 645095046 199068668 515091391 523584272 999166248 774030253 708282871 311175575 583992535 801014427 218937592 587996132 256246257 184072631 717573841 466743273 557638012 682976140 312903469 20298744 953782879 629027160 246048096 29188520 112994964 760686706 543670224 762709114 822812678 330578397 656326500 365588873 263312518 427618588 699273210 240111526 833348639 513382242 383388581 93571738 447999274 964311469 110547696 912644910 937562069 483049005 446935846 756625678 896604755 74066522 166658601 162005274 41781863 316106550 861983729 697636523 405793080 527252108 59722033 33584896 297621 834595298 511704045 37393364 872640160 793489152 935562221 507512418 392042674 602297740 910114548 473159447 190477626 902073192 75334222 448641607 227039133 966007550 902174599 678291865 657711454 604595351 15411698 314307914 197142066 234322713 679910035 635253771 710851168 250017875 892103402 664878023 236859726 836706928 408035564 9727347 667217802 311009565 969230492 837216558 42116106 284712163 308521650 664760107 714414270 585899319 458500399 312104566 356742733 669820401 298544287 865104236 800618854 904526614 550576744 990632432 554685746 246302110 637119553 51587443 249136389 353633550 718707150 382821767 91627384 877129428 964934648 705701044 237555951 904834782 311432035 801973554 224355882 205081565 375798194 674481258 70908352 194096961 729502702 907608241 681065924 726714143 22497511 984098789 384837390 13923547 960516302 135688474 434182983 933466272 195249440 255760911 844692006 835330957 754731925 1181210 603763913 629756838 543481554 486987499 408999199 531293586 482605624 986811297 698156876 297004941 593069011 250045996 979733663 43155904 394350582 602685503 969002227 762225847 168380377 430500277 508110416 713661247 145320177 304833251 690005194 496313831 546255011 802711185 46100729 218109046 419997989 796951887 780852720 977892172 772267792 667861958 985446145 713451635 847520458 480185927 943888762 616981068 453137477 33891846 822912911 188976751 144231127 558203755 7951062 853674479 952710364 409442138 597397353 430425562 683074705 40428273 180283799 440517857 176392988 84246221 389819482 124679693 734913967 983627959 390736487 519353901 600597939 141269245 512483955 857023118 938334860 327014779 655073470 613142167 149927776 53578059 573360810 777868560 591619628 547415023 350513564 301872040 891467826 142838354 643354267 439595480 105413725 61316449 44230267 432291481 243118596 902471072 134498104 283371837 100879436 799653492 668138998 11820077 506145357 433254496 386096041 444606174 716782683 248520152 246241911 731845354 831183662 348430765 379969256 329216648 725274376 493362561 756979665 214362012 68472390 374630113 267869185 284664904 31510787 727254674 123355473 985894490 94133050 721294614 727801801 283345887 243343027 560719440 205367965 762561553 186070390 718623584 858195426 509946460 936102256 403185003 55684984 164326084 76205883 783398789 85200704 34083711 767028976 783321355 156374704 603032743 831260680 355188017 259546151 997185370 241257423 917169 968340750 525237485 398289090 28594514 85329685 392953543 803473191 25289090 215518010 28127928 876869726 888390131 495328800 528664397 325160685 164856912 514643770 601079891 554496573 36687736 135859255 987305104 731301343 168366501 276906419 792366208 460784796 377456397 361485699 638898376 208143828 372077506 933193987 390976985 213499988 659353359 478730161 303864471 258744235 280878079 306898340 426708728 938860292 299207311 359528121 862611371 503141103 858271104 293346017 231837208 804298359 358436559 506946457 811233289 705667777 128571079 736147360 688110471 232001804 515188604 346321537 684640226 385964162 855497887 297115104 88650582 470026260 99027982 798033687 939868844 623449260 178935248 245123514 326166582 152031572 939857058 308239883 271461925 981285317 42492608 435764356 723119740 865503991 540702318 489539457 269865551 797655808 930007483 765130893 168953723 176060165 414952085 21163460 235618085 898337507 675594994 709151546 884366790 125227001 301733708 610661907 375102064 377589743 825125746 450310484 826803814 150585078 5628913 304284725 858470956 828950773 134999321 146996663 868230601 586709119 268237118 124068296 433715352 377270768 881736643 913652477 642266255 587733453 443504647 674194913 245969768 648665866 567587604 93805435 509492332 876933992 771311100 11599044 154469008 617585471 334581404 382456845 521643125 103367328 960728289 925840331 740400991 165726894 73137361 861394265 597635014 797813617 683000196 848941203 481493602 209725029 470947581 26827866 779219594 850534415 129549363 646727815 704048481 652300381 183334576 41373630 676976004 111398101 580161537 499138546 123949233 27722821 797556181 103512305 608160709 296192569 117001629 348547325 370763566 488027110 433658002 961610161 410382388 804711732 350551420 785163452 909630813 336703361 407456076 618041712 837193301 75927194 139599505 733388389 915139635 717345209 60249957 916928051 923231592 141284276 306384581 810869670 799643534 318476550 121584582 695486760 796026359 295196560 699980291 465553233 678530045 300133205 610408230 639295896 268085916 871543314 931225312 564236360 688391130 881416866 210447891 191311084 974384374 142359383 802399531 539532380 111906392 758228908 449653756 606119720 899464087 175139319 410750993 904703488 313566020 323539582 226029282 859451954 811640968 370422824 103237666 172613050 19633378 556645415 466480311 78699076 383798635 205836659 918135296 430913117 593235732 521040707 521823127 927676905 114924320 520319248 480095527 173682834 490151252 453839013 468429920 623080950 448733746 786442650 511114455 456087832 802194847 883712156 82494314 934381036 804836913 423647503 391581700 650378813 1654510 352916382 976392740 710621776 483926921 728420199 349550291 209956070 450751407 530112865 636291694 168922227 800980520 242844065 364288866 28340706 616094279 433402146 627892138 66029759 874165637 818067098 871249259 395389797 642752990 681540875 330393543 30221130 14620518 59526717 985502562 89982299 89503999 768953371 414999567 524973372 638894543 727400330 230786937 804214867 42964476 197825546 119509745 978023183 603936626 719475599 563983376 302806190 856315569 841633158 463162846 492254815 563176958 739329594 597525094 893222356 185631438 394514713 639506000 658635266 183326883 824452717 219852006 156727670 193816019 958219321 585274837 38723821 763361703 90364460 216256617 417055097 239324511 523943739 113810305 501501954 344504866 19798961 32188377 253988035 230681572 61656326 381281022 313842643 555646225 663983118 96706466 905539614 774305845 819245233 529406557 815030460 869095494 95609722 211742500 604175302 697015872 931656819 892950787 709556126 303640496 213431004 838128428 17765211 223113204 22525498 442971745 161025813 802098012 985705411 268148674 279121793 988639311 685836301 478702138 604205618 497379843 114624022 193079915 652925261 995262581 603802407 964306128 345589696 509993944 782007333 235191811 341239710 538833827 490802442 319228354 8265269 850780566 955800328 114362521 776126335 252615093 21184648 34449255 168718483 904783074 691233376 381385479 287475445 26269381 772355211 150089553 148640416 611816205 128006622 873117071 712259576 622363812 662072282 821152240 176021208 132667769 349220710 201027124 873486968 420796511 515781968 519802110 953654431 275580644 79175748 312423412 447412199 595517054 730089888 448734265 802864554 639058556 964568108 268174744 904120101 112871543 749004513 931625005 787961612 382084648 29935485 101835310 799397510 819870508 282302581 54866130 819779518 879400717 249277698 639450985 901507542 478720232 360588242 612534412 330962264 810519348 659385912 731827985 45460284 928684141 8818294 527385333 861908589 852085176 206240179 590897201 898960676 101001765 623487822 552857966 30392544 611030301 687415043 511262084 108504100 263542481 664776711 727005104 84994848 524038032 919355507 518304637 617647499 813122431 826470787 34519865 306405330 689988996 811736523 79287719 33287410 870151079 345843498 201309016 932512663 637713975 730462196 150277909 483996316 178342786 635447949 588041192 870442904 54493733 749238002 320577602 315480136 249843092 354860524 616501240 358751126 447705040 263310617 458802557 569502373 662794977 350371332 380546926 737222302 519797078 661564884 341890139 467324249 28924402 401820082 993750518 115849956 51787451 122825716 77326509 961594244 17755921 197441444 579123345 5460221 287967964 374476989 404220634 285955940 625666950 157943057 233301029 953651819 652388396 959471321 174807313 898330799 109308518 496037135 490489995 834781095 72070425 693225763 320369845 536583631 444910221 812849237 72366823 606084751 523329714 245944906 278333170 796997983 840098201 530766286 879057176 226524139 4553498 633156661 112755939 459743146 449962157 460669866 802936691 214708235 425315810 876716831 329959919 361524584 702271382 483084387 648151050 381495560 916977803 928805844 50453 377897164 852799658 641296565 915343521 242206008 148141236 464903194 408923574 659514417 979409677 334307862 844335829 885223854 86660299 797527089 657195508 129915492 654212885 192871004 227266352 662488964 165858613 829522102 370626161 633666207 153941121 230736562 497597928 964211537 311459310 28097597 112674407 38642392 116351732 672547277 164290269 608566989 1967627 432088647 269677330 798508209 887605933 261821921 69797716 758363881 579588672 594607061 735045682 854073749 719384665 546169776 832684569 813675771 827223513 493606623 293365631 714272900 366358409 611290451 499086641 237037494 270777748 419583286 135286080 326024326 474080588 206786049 750596833 399398304 469492624 166359806 451226884 355990325 538556098 736605613 875276214 607268687 584933562 77528040 605119529 972752872 572465191 108469050 159752868 360398777 542736354 62106762 606796281 856031806 254669725 67918171 567959543 744573677 646866341 938787511 206003456 246846085 476690875 339898138 569699202 643929902 330623635 377712834 871327148 269332743 43487674 586398929 943771184 754619861 877319675 502234838 840060939 479422109 205208632 334345257 121954848 40736292 589025610 706206298 144995788 412246799 764938252 70147278 867987090 98860346 625843050 198250195 981210197 555548635 619507124 532959179 7543649 426346237 936660737 524018042 375767986 44908519 687676898 602224368 507175024 457303922 798598769 411311402 958893046 404241852 560155988 261040228 284406775 622741120 139516697 646539885 356914444 117498245 49600690 965475526 816065412 219685317 223219489 221733912 176429425 425553882 797861203 48384503 325793829 712194063 347149184 81465951 381101868 792625057 721314109 62294052 495375735 52509207 318287660 731687238 542088545 246245118 173188418 361771031 110139952 23871346 498959784 41498263 734524894 722517829 272668548 982723073 963071239 700839642 852751124 475512001 336769169 537464308 134545239 638944524 990301024 668917388 30587533 806220662 695180213 45796264 330248760 790520771 689532399 870324336 880752527 558031152 769711144 846511606 246030714 198070265 647248487 101818747 828576846 650464174 868159330 826114256 234815549 944124005 282757732 985935632 597091916 455100847 489286308 739680521 765349458 874411281 158274442 643265356 207639070 130178439 702519677 585813051 691903361 320036680 602774385 233600151 258189161 188750272 286704736 415766054 583544277 339801030 123876779 955916026 237258811 584698821 711204579 794087630 169860737 954582465 677960203 325339818 87861028 239370353 314545115 640790447 247307172 85365604 516733545 309332684 746460819 200988525 1525959 750966634 3794491 448437289 630543527 15552716 177454594 213948997 58773234 696930396 114815418 616667835 717798510 339746164 604228473 219929020 878392294 654317357 964138297 272503105 585598243 808585468 268304055 632634096 869919093 133762986 112893554 661004306 611669922 72345978 56875459 857351805 948751950 206481851 740597831 32463152 932404133 74784514 301848096 847936085 648796762 432635302 510247598 698872641 269012584 894543192 801689839 48758646 561595805 328040327 126336107 591562750 58630749 522317340 325029483 971067434 386683146 943019104 986710609 18994553 339495258 481269281 29842911 529873353 196901726 448371044 58688597 267200217 196829177 340013715 515771419 646491163 827022434 606649741 789054257 9767375 992170604 908902579 73252090 967982026 921195954 384011472 69453442 92408062 740738123 864947710 947258609 125504710 589902664 332721951 407476790 105299117 252289362 394839767 288146703 774358212 943180488 140416809 532058853 905293205 382079749 92676122 766221553 861872459 217748875 38146750 490331306 635915118 815829564 472656442 718989470 711134060 453201457 611112217 10797883 840975628 856208813 344461070 91106290 190212898 333406409 217652137 328607428 597626058 644516528 298018119 35764478 267264178 779810162 394830014 860681516 612499240 347889813 605082014 419665269 733674632 476755039 440187739 26134195 192821620 982408471 134916736 920269227 130747843 161189583 362498870 208185029 975615534 421020709 812552404 974794053 159592487 553768759 51050024 899864777 253662466 93672587 222855808 759654918 213333394 184844740 955946302 816257777 386548683 773831329 835037960 916412551 997405754 735875278 643097658 680892192 569599340 64307036 667281473 518242191 628527548 878674861 13060291 753834575 237614900 311588988 465830827 704113631 219463757 486923414 622971016 764709260 703311861 675074250 790648858 371786957 657697128 772587028 846283667 614378861 796607329 93031700 234537663 758150532 27376486 710631927 564900595 47064611 365793276 359925623 455938435 665935411 470575245 919018738 609188673 388283328 251761861 14668002 418895864 336614873 490577243 285175666 860142395 197264401 400028477 780229188 676119790 69350084 995401418 533022872 955956702 335546564 163909550 549971668 174259956 709664406 661601178 661626051 828364812 208821215 829226551 807439300 943537428 841575868 866634244 530130891 795937309 682779559 599833649 891553263 362201396 444881996 379133069 227708306 560510201 394374706 840181172 536069685 552506983 278228369 321699540 898995725 286438939 202503279 944757723 412273405 767766120 691795265 427983638 730138811 712879170 824564863 628311405 268793871 307467536 198607591 502563622 592009792 559242649 356659730 19856645 782833143 97924243 203870095 245329442 12599332 506616812 650297797 331157774 48681031 89719021 191786519 550626577 622697578 539821952 621688463 344210798 782920199 214626407 74861769 652793153 81076137 197626235 598901405 657580096 638905070 371533389 827167470 503046194 195901415 624711634 417585963 199366421 888972792 974507506 775808329 882794892 51217018 318903703 766825847 513325015 732343281 611028688 745347723 107895006 52330616 541307143 850474045 684635032 7605859 760011178 555588723 723396567 854524210 613145325 121342265 470979488 982354129 876007510 447621677 333123504 971258910 553003198 220373884 332990088 584793074 759778553 451026450 883062403 474134523 887504182 177452804 50170255 297925694 147223791 236450992 45494387 271859022 485680440 411539599 535878568 665968128 664129886 811033049 179530920 315378090 556436748 107167666 593521024 772647763 701265549 362721328 742507234 581409574 630148797 495363865 384554544 787840849 942412385 943911924 482975753 990127341 297201295 830424363 129472877 449494331 160774352 697795402 173709706 427403915 624624388 394775293 394454964 533661762 606054466 201763607 167579933 185395829 256161195 279947059 199455700 486964138 630453895 67404252 799735040 770645780 142288213 798471945 845103571 454567744 452394761 739432896 940412479 332296658 608593139 766667313 751373757 228169262 156781810 895790169 359877216 239909657 403649402 927065512 33728733 64687332 594930801 207981720 277474259 696780712 379015447 80492773 480832571 124144750 808861901 337210367 532455199 352646777 256592548 129753286 287260358 69219976 278222139 607875231 687244786 582812383 91736680 441882836 88437516 502919863 971989268 98660195 545846576 549782124 858662014 888479806 282161337 345446482 42234406 471247872 540876987 644834470 205253473 653188325 226468847 296363220 765942791 360351726 418493021 611437938 12111187 333745230 728340384 516582697 858287807 462841422 260895260 654140368 881353597 279652692 615230640 873929066 568590626 583329207 791876882 473328077 547246444 62286755 812698280 520507266 454375210 447771546 472262100 322697758 70944919 957772164 784460010 418906394 688749978 543298935 439614089 198810731 228476303 742393230 404007007 267052684 958146378 401769553 301183037 221142995 732883634 360448811 152625467 913158123 706495991 92982804 820811818 63239317 738924129 667815862 539240833 807284910 443979924 846324847 309279823 77278624 109410713 798831223 208490991 628923530 798603541 63694448 295603430 868030356 346234533 159309456 839070089 320896023 791479776 626169819 611001398 322562606 220199126 571464417 104715741 998911703 999256536 764925719 372386573 494604914 342425811 231348541 686117604 837572225 503558615 962136915 29834614 881479182 337873666 734548282 119019285 864955549 778496810 105212156 21341772 354820982 210838983 335983766 36019291 129857687 754233520 768449494 408109610 839045547 609755399 42052583 874370019 686445631 844582193 646991381 270527302 411079369 383311450 708500135 379511466 678044554 585338902 59183701 521357863 734848440 758654096 426977015 101833201 980751903 774770214 811902594 203095691 523466628 191417438 779351845 69331523 181720096 602492324 767232231 395013261 108373501 597221214 212991820 276685399 84328343 797119942 998216245 235124174 197789798 91900452 32721932 819701236 368000789 751133087 138618025 614246466 568404905 673772085 698605386 637261373 422282430 558657434 874991160 38993172 737075996 79983603 787331995 407509069 208293489 490249648 624518027 115879959 203969990 9316515 370818543 200884680 439338329 787736476 287502294 620626896 975871423 465750083 434301160 661113320 117841673 213379004 510701799 879733890 477699302 899453964 149689449 213544730 202873508 885046157 814840747 506386910 131983003 3639587 791492089 994864436 857167779 761433231 835781948 610232886 22632642 662213602 506409242 274931562 817191333 330903177 580575031 180976827 277174723 603115399 685714507 49812677 944400006 27114648 801161105 909146023 505730560 516807963 888089860 495992047 821435722 666426430 155794966 92642052 21941087 206860211 134917290 858911541 749572218 931252516 897530095 897372406 979291984 13887073 301020794 699060600 919178220 85979280 898878568 732403988 333958719 406726457 442061149 177573880 45153241 564358937 809706162 5555550 406732622 808489954 457452381 599184489 422027010 664858223 772228082 406899090 772569709 352097076 293416894 205226328 609729877 749362225 153623752 373273906 823073885 582668347 263070574 13067534 351606682 858019461 380524045 915881189 249827642 38623101 651475891 996657823 857566657 167120658 11846534 741506461 562770264 236735266 830528256 444081250 647725606 6408840 892951381 887337686 353215361 285053947 831903244 76004264 225947496 822817425 59655307 60649707 929164860 563108641 453737846 12059216 398581119 740165648 194356817 463818804 974437310 938362845 452922122 582558079 774752010 827039921 732927879 41665054 499040666 245682641 848499380 935077513 365098461 887617588 623704586 99358280 675096670 173081515 67827697 16263303 532392352 656080735 275206406 580783601 28267338 196960887 473641092 567739026 993543763 632345547 362105912 293460442 226642853 124185141 625605473 427678868 125076434 340486725 724760460 733043698 115349315 430744948 768040031 42715232 248319867 946299232 5582881 75231474 565397506 440840215 780693782 1685680 331071949 17583031 715724112 851115067 378764496 454627848 237961661 13174263 852896826 446999870 748519318 548616863 347167933 227494694 57518166 579066409 683605449 252210254 232270156 989805980 978585414 294980836 5059922 388300837 565128586 988811257 678967249 347439973 548905489 419550887 839430327 452465516 520908218 239918409 95877351 106529218 508483721 316247120 741077990 940758643 413859269 745919575 311653083 15348845 114693172 117045163 763850098 679634133 546326971 829743938 868825390 448393423 280889826 173128023 247011928 436535424 488685271 411165143 988275752 990845499 465675912 505476993 996879781 323508532 818098100 733900777 207294773 359704424 18421474 24104914 626027588 186336316 333547781 184779386 432672836 37678408 45184916 125049309 403261355 315074009 621396151 412334074 535152230 820125827 268669866 837104267 539906031 635000227 104687549 4955343 780345180 578692010 752699025 906132315 429251176 247715404 767355323 399395928 515731299 237076982 397161581 538899004 917519353 403318156 844542655 558348349 681858063 78427 405195712 896901323 816603330 571986588 458370359 674903360 674939451 816214432 244130566 90625224 182671131 738141761 510378301 301383005 848306120 541104330 588033563 332321076 969687346 80508016 245331093 481601874 377265506 226706020 224702818 53971077 200931286 753908266 298813360 652393573 544160948 649947678 292959693 786854748 53810601 613510186 938976287 146229197 57163739 67102763 34090835 366602999 460947490 521287346 280021986 937646182 732267092 72626342 27966330 451760374 331238066 382007043 38667279 110343714 97515214 43596455 34175731 378093681 6501867 386563262 479615090 948544849 732308345 30966333 920289490 122721571 637602326 761229962 706853330 477349065 634067972 175269452 449776404 304441016 575976879 874763199 52146583 218533074 525392647 443634504 681186097 955990620 268504213 187637903 47316116 876171711 552517241 331163520 590698801 898714642 983068153 117690355 43677611 846442549 549842414 565569919 519521285 734276270 314844892 435777190 860462848 553320127 982783364 743948783 344146694 514331328 143823276 366742608 130126192 426272259 212780890 139255707 673292187 324758705 96009647 524444407 876937846 101346759 840938866 213932361 260318565 840089338 557405057 733299731 51869751 362517985 767207125 37293695 675848450 242406863 257633421 170342357 866522114 582715256 843967295 253255757 863420771 285571561 925243785 486845724 142998256 78338828 889733810 620959180 804721693 498798105 561310098 146980173 417804491 144945463 270534681 335792264 773788229 847005448 872120705 859069021 578148828 499868041 540411316 935422608 203190191 171790484 1421424 278618818 403056748 476997002 426014628 715897751 236804679 923213329 542769796 705223383 875349645 722019059 666219018 107727339 636008842 798378325 530728197 625788026 241421320 159444364 697774323 820869015 529784441 977169965 8382580 160446652 269194810 893516312 277743902 634320342 3109772 520302945 179403564 400899660 554588121 950461381 103801710 698413253 906696014 883226477 325331661 848432728 122315408 79337505 964185511 369523953 935497515 507971251 15335647 282395930 309325125 906169755 596697366 381162942 636630782 658902387 672546933 469928693 528548262 996776826 989319482 344725375 799593727 606685771 862801992 80083341 285213723 116023815 141735152 396158778 784352135 681324543 856229353 98129191 730039135 481393335 388188008 491886395 597871876 856132440 483701051 286679165 481879120 515126096 598500508 155114405 299551723 747862866 346789951 446692675 281254877 758500121 63427941 359104896 594379921 756434014 7029431 854905026 649177550 289984089 747931395 852293650 826924187 711194688 841167732 589133088 336410664 267089818 536136059 926763716 25231177 499341491 366162372 723830074 598326977 220102739 387750888 442875367 640293832 992664009 384139381 759123603 165443872 161564122 584545221 887787454 337210487 941382483 684754351 345864242 462950690 628575484 390188694 919517127 229606931 907003416 396417175 990488033 314994338 726077462 786198205 252153748 641339727 52792608 100650641 292619422 754494372 869966710 547812989 33130560 618457411 6458368 178123623 466827552 412645936 531894688 121289395 305072623 181185885 468373938 289085447 792363403 28112398 326227165 214616255 553645226 80122140 706603291 816922111 514918232 810026145 233459882 242086502 631167080 508887524 682672985 737648212 596570405 565627540 70724354 808767550 224800261 506651926 795505765 776950538 235486123 673725562 453557636 728096209 309093051 466503070 628548216 13002052 238516867 10774101 244110082 272555123 906138775 834675361 393587225 10571782 796918998 756307532 533597117 584040186 589923770 162733330 681287265 350042111 742166534 769295821 433099224 127071553 948783458 658321988 252053026 90182434 943981983 630497484 949219845 548066365 786673610 421623052 752126573 502693546 666772547 938359418 863557968 100646459 789439849 525121821 542521870 986793312 270964119 612416730 883968518 292525392 123035256 422040640 446364751 765313001 175809484 778839803 351744470 901845791 231057556 20360263 275288826 584232881 146051544 829457567 77905850 246389644 745188934 513648355 486757261 907108964 750074828 809680393 717977340 505347934 816130147 664167458 167460725 268987466 257161759 442165615 691064509 955705154 697225383 709653414 220150597 791780254 81713519 614295612 853334304 728348232 3944921 707133224 500440125 716710430 765873417 993339693 678096836 233297713 601059380 264369853 547973607 771428469 785777607 6586534 950748181 987984705 734106126 704995982 542182720 436041116 887635685 674912132 449111288 615916280 612143897 512941014 468518769 760635222 333424634 42997788 177512060 2543188 322391330 447474437 436204085 380676368 861890159 580961330 743123243 223048003 959163803 913260141 93010377 34807029 31529975 377515447 501932333 418677047 288371671 459503222 803395874 542745927 378323493 311825676 250077842 993588641 398718335 436058294 667304806 56654776 435192157 420309397 673969641 879109159 652578828 858307747 649463156 728327119 329699 451003235 654547190 371988278 35656302 462287510 676598534 366302984 497693856 719242525 838840752 286036559 387481942 992544120 68583855 723816039 303133496 791207829 609188323 756889360 98701808 47396776 286068760 177296741 586101282 551116573 947757916 324668134 964487995 268029340 280683485 428203764 532423136 49665594 858064454 454122050 406098727 727295682 517403669 438834810 261809484 419915320 620719712 248870740 517666329 114892159 936676080 606393278 90029057 907911474 859595739 708541944 24793387 478572057 286453623 200244617 453428962 136920651 595535490 821279472 62769958 839333542 961454648 230603463 609502068 601518293 263394411 925814672 778873240 204958388 889177969 297818682 916905877 802760851 923802883 915288227 980586561 46522119 635969813 990127042 355465204 178015316 57284515 415059974 487380806 488131854 916035880 657583228 968826019 494713513 280330310 569799768 380483551 939901791 392083804 635215867 338473653 954709319 342481565 353098734 593638556 535318322 229359178 673623376 571780957 322543256 489755030 387335413 741651534 849471093 30695563 623027601 751500027 584614572 667612388 197446657 66761066 865047405 905431237 231033188 770010835 544282856 783274196 808713713 959301065 171811950 759290133 672188172 749597340 96487633 462299236 298593130 249863952 622448610 13032405 63365580 839069625 441924698 310221435 116137129 551542669 666080860 850285280 357403720 474781449 583487990 982934748 437436238 909220465 596362145 821808742 701041361 412514324 978616996 531750206 443353058 714648157 296253010 120252603 154199531 781943779 823990612 867386942 721839958 259544088 526407077 896607973 100511931 921855349 716267463 867411255 656056823 995651953 161429453 610036955 755063810 300671051 800708453 676746530 462335904 592042176 85649688 777490607 356418334 459369054 525987589 554695174 710157005 54524226 327351894 392746253 67916490 714492507 913182368 331619055 556293064 992039756 291926680 341617597 468850620 725956752 24414360 287632055 870047684 783216200 579447778 560514181 848383211 487198276 573755294 231964585 638379385 434118234 741545772 879184634 440177900 178317909 8616540 229394484 873032215 729447038 159035528 868965285 813853890 655686040 288358266 674118469 65854907 542063938 27084287 618336743 567499121 345200534 821690717 672917398 718647141 380603934 651160226 133967550 628416319 853449886 877269683 414855938 258298946 786719270 336362278 688445771 581288629 498107378 916001113 260924515 116467997 92359103 178394367 698929371 458999913 407934479 47057599 606810787 987174498 800078667 144637314 608097003 4728830 466488121 238076077 885383893 564008209 247277502 779440260 794578598 197795247 610387123 627732699 46848837 543047605 1561702 142025487 402905814 108881393 898173954 733663906 889870541 104553893 81043267 868270429 73862075 442452907 668090460 167671176 538336502 941561521 144422811 556288350 893523219 118231239 445845027 332534010 135277391 71453374 978755798 424786988 947176068 42248438 907733384 711776261 932648941 111795428 111289920 762396892 464388459 253157717 119397164 62356615 225508162 884066590 373303807 554094587 880525055 430230675 220733911 321275922 358172431 721744532 823495163 275966330 969085758 771242581 296354443 660204117 933944695 865340959 411432464 384698189 856380260 954153195 538981572 942744372 395207777 333726811 848150275 161593585 724188472 20114431 331813919 519667399 837860331 348175038 774046773 865962998 397482834 785532907 631423120 905542198 970133915 233914559 470029974 164669641 28052882 658810825 445951008 990913403 910888974 851769094 765127542 844707245 578036383 694468317 30624204 223456095 341848391 110098974 922831224 17588198 319164074 594708785 209518288 290123482 592755320 555034902 123305547 526141978 366598867 734972360 863540570 620526158 824814734 386118776 190725301 117291710 374441855 237961646 253625394 410458183 761456268 164478425 787806785 573939799 942164375 102205011 18078238 160518872 195029962 448538672 70003766 215988000 637813240 325814371 361453928 115768663 759932965 103942018 540416362 530581525 233458846 216899754 330390906 28342385 476258461 966439159 229992545 68426496 316148754 457781970 30618793 878220990 608032680 753003328 951448598 217240894 125780879 223306437 365681349 413787540 97559401 823974467 79018936 158022573 501143392 941134163 518181784 548035276 225657135 586103382 371981738 150995591 298252632 87861805 736282761 517312871 628533799 806140716 21740157 223550630 883353183 22584829 770982230 51297608 96387805 259282071 817622717 545635224 86593822 511485350 508977119 576643657 530951877 967165228 836161159 178548824 650043283 831073934 620996033 149028413 132402099 437244121 484702885 946460917 380055844 195990460 773508657 795338489 633135198 698171755 484084645 22693380 365003797 738601536 136198171 558661805 373865952 551722594 625517098 904053888 543331225 332743789 474941710 604228034 705051468 762655134 994790489 145977442 340313912 337362328 826671405 450063428 451456231 817298691 796539449 756656454 48985875 406802682 676629460 516608106 498514197 481588133 912913565 447276113 140371880 540296667 413233068 789370320 332169573 27510127 950977428 883285008 381639606 676720183 442143706 632247097 515563743 621500132 564572223 552282463 72585985 506415399 418422766 706608066 58249791 811459475 777043609 726338289 946856986 322645829 523101405 940438190 208069029 755052794 151891773 700822579 795101041 772724353 567002654 153113134 425617362 352333568 414871580 525624790 857061439 994868927 326690337 318947911 532882651 109862111 403390157 192459766 851440747 359130248 456541291 726442682 367515075 426135564 636585064 978570694 886348067 386023562 749265246 256634909 767261040 313048198 740251982 882961612 997132877 291619993 185459632 620125461 934149412 951217325 924503282 161186247 976266406 852600944 976138528 483916258 60959702 923302382 766521037 192105827 693671933 809626754 443156193 515459977 713451942 102507181 583169221 671205206 759659758 267542745 348938815 25174745 995618529 25416670 172361868 680423580 250304962 731151979 872258581 272901295 963928156 105351594 327238818 809219191 77962890 999280587 439744724 326355418 524682363 136747012 897061659 503803884 303241810 257239900 988002293 521048310 961406088 638312572 244471372 412719311 340161001 222046673 354209368 72417800 313424191 12470877 634511825 225864491 933997643 47856602 659760492 957161853 592886343 361602339 564162851 506359307 743634339 797682291 917612399 909154135 973386819 472659385 922827668 643542175 814553998 943066361 31880995 827460735 464944565 221110881 301790575 494982462 359059360 89884414 343642483 465168528 970107384 921080822 443213534 90119347 319253631 140100424 359688022 849863694 238636192 349614600 399870914 677725867 657455869 112942432 176362843 625441429 664496530 234948583 964365997 589362307 105931148 253669795 756259849 863855056 778198829 857404489 804792488 506084316 145464165 630448185 598219636 286202894 626347845 719563920 116609343 919382239 647179182 160226073 286642283 839575774 240795231 532701009 558936214 442342209 206309576 695358504 308530504 222864294 388339978 658280066 342732588 106826129 553586887 680627012 198260320 180877852 796380521 168352354 219896155 25943912 547448825 550012357 202447521 637742299 569998034 683559683 725750179 437115271 319295621 123913490 842413775 94773473 285371055 637321858 507550774 521903823 206874199 298542657 724052190 631794771 745121391 524354610 689991836 27088452 504999834 233921476 846330249 708589044 19709054 688267902 741542921 179501779 725857861 497297173 718195479 940925215 166033130 882544350 39788629 255396500 597863388 571012111 208497012 781277596 620812707 979266 580651889 877901903 566243477 148161675 764653181 39698058 292350892 650240148 480930152 325919192 61038240 457350214 863948418 597132209 426642507 565777461 925236397 639190636 614536846 806517517 997231974 448532157 754081442 382878226 344551741 434141729 214224618 117088886 534294793 16821695 140913065 588859723 339152827 323061870 470063890 155711843 572621680 911052233 733319012 151609105 587330703 492192099 987959336 342042095 673187531 18369011 888770264 737895644 538654397 928702094 608685668 679836238 40147467 881664752 899431227 918728023 269672874 338038554 323993719 573762883 83494299 452461244 136890574 916311777 973738993 54614420 225584716 823419903 784959852 609302873 882236566 374579714 7342481 387800877 157519875 550351883 929256944 305472218 514557661 272914995 173668248 348607635 180421069 426135348 8279158 501137054 10766948 611662218 328873665 221474289 613622335 122882173 794378463 612886812 170573135 412650435 808625233 198803009 602298895 40069372 618372703 465913634 123978408 454518061 368929999 457622455 528934063 691682904 245441587 708562065 718629967 963400238 556268083 16409556 810529891 434303825 846237292 800342771 514193012 861848059 569285539 346355894 757132281 949502587 991473418 319848319 281844493 710060729 854045477 317841807 313000372 615767234 642552448 328594237 897653888 940000531 426387014 733665738 36787545 774155527 332219340 607640765 589994429 139712380 322046207 392516578 653149270 849600144 796557195 617392090 650772258 56067088 673734489 850125478 639462815 380164441 45249391 833175688 786822489 399714268 833355141 789462489 260067032 24521107 128587640 98924829 786602483 419357062 495614371 256516704 859566611 380079506 932716238 882469364 627570484 462673725 566634719 922288392 660849468 912581918 484054142 939412235 611177866 881273153 821576832 562216607 801655799 913892431 623339641 55233698 574188609 868675116 388569883 906379139 629168459 274625184 747654351 874854447 561921656 760043684 996770452 72245872 849027228 809290309 112557778 593701250 102133955 293579544 703437532 975476379 777883321 714913930 617865071 65088509 843191645 751665100 906154498 746039613 373149884 317996792 36306972 420561183 495030564 639493625 465779567 540688229 826714298 389927427 95339401 830385534 394856460 792565139 461808655 932859152 743485896 59352857 286780060 202915314 659888990 831904725 257430392 438994132 134525563 363486456 503037046 935319902 276283048 765715284 441404823 658838325 360797871 921308609 798224945 856174768 138931003 276883540 805207411 578875405 558057242 49905229 731139793 915659749 4425135 205323098 223016126 629365998 852787296 730988070 820902311 915325809 583629661 860465856 971355449 811366886 75151205 537308380 127821972 93889407 296308628 450520257 788719988 877013538 991587562 740088142 44543288 400433317 410506917 686428914 400931200 862379713 856038090 822568984 716884318 857485193 150542445 32366894 661602419 153617313 639797628 778654344 548883607 883568710 894479025 802109412 26265757 892531486 360518099 382522726 320022438 239265980 594836038 977451711 989723041 894918345 968123272 919434550 537033963 491644497 436439071 105920885 742977006 518433634 165036080 121825806 54238379 962563060 70914714 21637662 290553137 862561154 79229147 463157059 572647790 401409509 264421739 240065171 418280849 902598781 220508671 435575582 811763967 977299032 959026789 192289690 35073448 572458116 660730082 810034163 551524771 405087319 748829797 527199586 143155732 673239167 709429220 785968232 666336610 884031703 703960785 650489237 274949551 426899367 26915691 329817076 818332653 242449223 119965329 329216716 156364521 170126695 78243229 989063027 731019731 900105955 386962768 570822951 526905275 19699346 861425542 98083553 370176595 84538333 832836746 475851005 316575816 449785851 512105770 258193091 912537655 599629542 780879063 646678311 713799073 241511233 945389913 303717897 713013713 475321525 271547346 939957402 111720773 975202247 776594669 210937155 822272350 636442888 578033909 427199464 507526635 520159963 407659699 295479070 188577475 150722916 134152817 776831130 556930343 414144623 689930738 683668673 804357309 28396624 518164551 288439732 412265291 497618799 740362465 22618455 409812656 597854654 94460861 3883475 683924697 940988403 954291658 326859405 198140129 715310639 37577452 291217361 614692568 271806836 655190479 545593595 700960979 583512768 977170034 702704804 328699059 790010110 60380212 153462805 858472535 314780685 104601224 496873735 499661686 891746039 525253194 817753669 89432860 561714612 449844119 777333954 182556522 794821650 442924213 619928752 946179705 999428727 970937727 257914130 731917495 155640002 692266228 714305450 424035062 22274053 34491347 211401867 802823149 268497577 249997582 433799549 194364541 577832529 123705925 912599088 298884142 680824707 426787690 781019844 994151692 450330982 539039563 829184320 198879606 23963329 473742746 121731766 774870460 98045580 713423517 926694636 509855671 675359217 349792222 899835362 460495712 57671131 736156476 708752050 359601389 335984622 175440470 251924500 575080954 43507720 280966546 681019318 532126460 347307044 136170121 969596257 862418345 568549169 575854211 226184006 272970183 692053640 281351930 887282108 661515242 272692921 878951255 248119198 430037746 186942884 100635331 851737791 408501330 767361995 642023956 675345922 650956744 610746256 5347069 116689886 263608921 105142148 147750772 411785347 731604778 598472842 696349661 623324159 421948033 844482549 453204281 651378274 309865323 769468095 45496042 440942600 209486255 110472385 650528280 159103786 601015765 791675031 527149859 322311859 134680474 922257561 79854675 588806203 117672680 193813365 175843015 524754967 227075523 984714354 637626486 228923067 640039168 409237080 446886153 529118348 566487391 561654074 305897607 676442004 462741304 676194784 397596996 464850609 959642993 617745049 499459507 600963509 874174217 63410909 35180586 26533155 913917261 242105868 154422521 663771365 502351908 338355101 729144754 23402540 972930998 591519312 967786984 302166970 82220406 216362123 983791368 567700307 79389354 798821150 26491766 199370621 979821624 954782602 590740000 809332215 437099923 904867670 217294574 694131969 122207827 61295969 296980587 483710349 382073233 310228260 861361868 339979988 598309515 372300175 352907558 853579189 137714395 492375014 268329419 952597875 761986263 786049548 693392051 553639436 270839706 22616144 225287890 502671808 134245818 676244262 489240692 114480621 119290633 576673758 709233942 953617595 708321019 226305513 104665082 916381602 223334906 119317634 111785404 514900373 383980587 960084794 46798031 106815240 952419206 958218914 77688277 541553183 282286875 991449665 590577614 987105793 624590107 547886239 655830151 876808263 832331396 322965421 832107711 761113694 397976971 845053548 565290642 201081425 802396585 850630252 172815794 356217416 426595127 25599932 361527980 393538383 831827027 853209553 905577288 32454543 229971487 922197847 243377706 719568204 615320292 253864511 216445101 344908826 571958170 99728528 265622748 590098454 766217233 820837132 710211100 271103184 764913286 671891794 71140297 985824142 598475088 833301044 479291246 995390364 293032042 546247939 963907678 461393394 712871759 57850277 586080820 865203887 117442718 845172268 438809578 387251998 731455929 655518671 23105323 680711763 818981872 486896346 370273122 858194110 288382274 612117101 867314990 409348118 272824646 752366984 411428218 489481200 210846574 426416045 858742256 971037284 637972693 349455706 455131962 259304936 136178959 500547397 825601099 855300420 968155825 727764891 800778711 983721750 811022231 720748223 209947364 847397419 84758484 628027753 156532216 141185237 30659000 505545878 676320427 175624620 209334324 274792134 880687717 656196058 15683643 902849668 953695774 835287037 438040634 389880650 556062546 809175524 689122145 969105906 46647910 563126309 807074944 364434623 599088520 57171611 770837922 115569116 2949017 988178267 645081192 714579099 737179940 823979300 152840094 367171930 194512073 16500216 811324988 869455947 121387323 859099641 250911558 89785583 921999051 762542463 711927394 315092199 543482003 40856860 671635176 895677596 744805355 967992342 727169880 89470712 292991696 694695514 322478607 479863839 645079637 736440712 819185110 440538389 923314498 889086308 921622803 908277266 704172308 552079325 258182164 987014919 275561866 553835386 553681595 948311111 576268029 417741548 63855952 941388114 477170432 227383822 31461773 371371292 598970756 803878276 900554388 978353771 676921587 936174835 511609966 923381231 270329024 194798776 417761203 499464178 5567561 757535449 374149560 446502391 369797229 435059459 795529896 311073778 628880477 571391988 264509794 787499691 449744359 453207818 676285264 102833454 312409131 752718030 278304814 549162476 776650639 284367112 157426926 376831943 752500882 309497388 923215540 606158065 884124937 706606967 667234888 341882135 202662917 260693298 597496728 580943747 12952895 893093134 625679501 88381488 62663673 4742847 722564442 444972899 880738525 644731597 58622191 58680985 957148239 426104259 394454059 629105862 282141084 955317847 44839094 951984107 503903784 607448345 770494902 511784989 863892719 119577181 565604367 371948993 810280622 200096178 330688329 611293740 274512264 721921514 320351437 997990516 371850947 85238161 512745817 879860874 716486407 448767915 175611945 533040446 940756268 968193077 800979539 39606127 408102612 625338196 917143919 562293146 398999740 807780886 679873915 729677629 864875741 479806932 629730359 282763708 938137609 788520672 57399653 878922139 1372234 11190163 526052349 120488678 269238447 915099685 145397931 301071634 240755937 239101820 751046371 692245841 831570958 347144541 566790415 253120912 64294131 315420820 355464441 202031986 314823516 523510345 366169809 424968799 19532864 668974821 760422207 93127715 842744300 254314186 224632307 192660290 645396919 429327958 415044252 942211291 690712985 65067093 527272019 892246839 179835502 610554814 292141881 434433830 939623769 195037377 303088368 911994739 665210848 725019780 388108237 525625087 256413826 556928730 306275416 238524803 608758093 366183923 696829517 281240439 673305078 990307703 189980950 973195806 872592468 133007351 680430540 698196968 485176455 109068943 204882737 109073519 728979482 935361441 764584808 215775582 990696590 634813451 685382862 878941259 280023341 518135572 882469067 952170490 858046881 536332787 15497566 81652628 151855632 221591497 34784462 203753626 9726272 900920804 51016827 371852378 508111441 254480466 64877814 278404138 706128003 757931311 541835244 494246661 107612964 254909108 343805869 989027030 297702643 553949525 89537622 957807437 447530206 24701787 71385745 440364623 507438064 347186770 116518539 901328546 487848357 189516903 526913079 687422336 410914652 470565278 263154512 185126017 209960408 327461465 749738572 546237362 950680956 224614418 447135332 396785301 94861189 66526288 278602922 781800026 11691940 553712496 618241956 576130676 497026163 442393024 436741460 366611238 612113280 455348331 648365964 870847751 266791592 483024340 525893939 466551620 410845122 728352936 725360574 853341571 208421408 644641282 274479418 641808730 477433080 108670424 269929671 218662728 245132109 200879034 268369640 719158899 518411887 979676396 404476720 852555887 924320758 33730415 42570701 264143467 788422394 330841866 138616760 794324542 875724266 527377595 719789816 267359169 483769439 945231793 592390417 706908457 507649635 431140340 500417934 342922860 870986744 124200992 315850840 386701917 618460342 314846802 537583763 626236138 149963980 605036308 668204923 47035926 989155603 893594870 406512708 947031466 225406630 37916325 945004870 30033626 694392766 848286640 303759413 99251120 827748830 778057139 427071710 248219193 742834912 325691097 164070345 900623367 622378138 639709054 274831350 878077443 4620227 763792957 118414146 181888077 176155691 86742642 470543630 716028393 253095194 902756500 174559191 799251122 801951955 991850838 164625926 169031022 221401583 166695870 828727074 676450748 808648531 280401563 645437876 567834800 361756267 996313173 587981818 703507489 95441551 74577898 803943811 383249144 83095464 612680964 89693883 874561660 520490167 7679890 105792960 377542060 938292096 254361347 697341684 272288622 973620263 997279881 474222226 813820624 808096236 989311411 665862223 321559929 659025413 56610760 309111604 749292415 170705341 687631156 616777608 718396374 632043131 82659018 904206389 274579469 684600112 645320149 656301537 965999273 877759845 373325734 115409459 401427116 864487512 794749610 756583606 599042372 930413199 200175114 163311797 662403593 330301677 189121648 260829894 148191672 648595638 320122061 316726376 684555294 530453104 793412126 969616385 470349708 694358347 717358717 165894366 112018365 715068644 688895535 953404606 794517148 660531183 832846134 831761310 964662503 704288572 258649261 756628176 769185517 759103773 3198818 975383451 757088075 198512735 746958932 949524963 615754822 966525434 973275923 374198297 415817692 483596456 522005728 989256858 236029938 685737210 514497328 78500281 891837998 722488713 996187058 775528053 686901001 792908083 672251551 54819496 60502750 943990557 541823002 777714096 797614835 631436833 107692145 541846233 720625599 662413959 203244365 289325086 59533965 910162976 842685628 565129066 44310985 507805141 60256137 546802178 521400940 337025948 888416439 343040932 743643011 307448958 292429812 701658147 300226342 598342944 670327967 524792429 780010320 665359920 652750831 458825487 349475524 534192558 259335252 848168867 685861562 304456233 168995305 316700929 125662922 363839028 856916445 32532144 27245144 363445765 57805456 134689078 519449768 281066054 411082634 770010404 760191209 888820682 121880206 598276253 133182356 84625782 512495029 790075865 773935433 180087053 261150262 870500684 988607878 336065216 707668335 881942011 240895379 370087982 299708100 386868416 47144131 726086063 653120589 483040525 487420917 749704614 223673692 608101339 316641846 65919165 421480302 944390418 109327106 262278158 129476688 321483016 757438431 262682243 488475810 9530732 431298429 590209814 790744704 382590478 357829462 632027865 308907640 555798753 738188568 22349324 653565354 80204702 627469219 832227030 904278206 26271649 168633815 91705783 566019000 253209342 908008066 467376425 144328765 709881209 83523803 605194069 491204536 864950804 274874456 839171787 253527828 679578956 55220712 706791808 990039169 642795131 665702155 432990358 834282315 908862554 128074837 943567841 386211956 272927955 853282733 769325343 33694722 361768270 528562521 67540725 692143409 618705687 8785482 343070887 134352188 656709401 676147192 586036297 992438459 139644500 77271650 584483181 675709064 761013522 875351216 923394314 764568643 818623890 639481846 473919504 79398576 192803849 290230326 852208802 348122660 213094267 425297283 219632244 699306772 767561098 233874559 959428604 70906595 266758387 832340986 214154876 648128294 54059504 561657654 502018405 108602322 184889354 482042359 50461793 220617908 309116729 419603202 619412827 153352715 985809805 129653812 921048903 740754359 485092952 732218177 473215708 825928444 275711292 351750813 60247090 469812768 567760148 809672858 806119164 345405434 561410808 408847508 174749875 24676596 139097398 196383098 187858770 964729631 930937242 447300176 270089278 920989279 54472004 781733245 500763969 580473266 305200020 10186156 118692252 65270076 855186740 485825012 853699467 979213162 497730068 127576014 553581040 124072722 611740916 181102015 346760289 528457288 816967042 109869452 702340633 384513473 851495528 617165641 658406942 512534654 609013392 626222645 525179578 519600131 868856124 780365378 410512111 437910245 875856049 612683320 94068366 461791904 244803939 632323920 370840970 838273614 677435939 795405751 581929583 77888795 710293466 602739239 715528231 330404800 918689145 133551199 710899151 42631629 809551812 375092984 979611907 704900917 910396821 973498385 585723487 536919325 949403982 383775512 198819611 16081892 94781711 891147890 18865534 463542029 130347173 674451294 44057390 28202024 819426069 829645526 694519464 330387393 856066516 689535131 602707665 187687297 828695662 199976813 705301485 130434501 887828677 8510311 703851922 861715279 183504869 772493565 882175450 73494739 154199805 921586767 132837009 343936515 218779722 383653314 935538641 932115735 44519633 309031473 174083926 537026193 772214919 127872111 270994124 969642411 131280779 613790951 681538454 949902556 46074772 984091597 759954103 720608592 466859036 41220124 676838019 257727387 409778926 959473224 108188718 235631218 310656311 983987063 658920725 146701789 583878144 943443773 725358414 754991321 749113623 611209121 44008918 771585883 348624516 561113274 539870613 420410018 485565983 242739127 658654387 408187218 729716292 779380683 369282294 143532446 652770389 461118833 138006555 652726586 460136236 191655026 372879541 479704761 875429862 397652806 225217293 533734675 184431583 868624229 530665962 668185579 805835994 454348858 896254358 805164247 487310390 284315350 844501599 780334557 943076726 94158334 695846320 320596476 958279703 529325826 765659131 101242733 237229413 284345102 476669271 749460870 67234972 509569783 699939610 737773588 399575020 471043086 704741257 238935407 990252972 827700804 345170150 205236366 139324465 368861489 819576117 739205355 259529235 460404971 587778475 399627056 126641856 990443715 206193081 782055701 938453383 621504398 47678883 609013922 683263390 937460833 988064259 630904818 973480321 446024202 97540675 782590657 973523339 205228953 398632532 57914085 317654947 547758568 474659569 608774503 645075111 84850907 582206113 144486319 19466889 168685985 882588599 828480680 219558139 87793598 118241180 144133913 935791988 278837233 336591608 128206200 664311424 400519586 942057610 479679564 451965569 164342560 895479457 517228338 407183005 298407212 83423446 427789988 625982609 698071180 529533639 767754539 211734316 702576202 439734389 803101441 281306301 219805629 200105073 658321942 92073832 866687229 677324254 451401107 660733485 139255415 494599468 94298101 661489057 59205938 968203525 658788382 94897325 279951437 401109496 161684890 284740645 729073126 315957642 180679835 230329423 549281702 181164772 847284286 629733603 388002485 877283208 222925812 623639116 173336856 428005863 261405325 937709529 846835510 243154798 185120815 98882532 225746852 480824266 719626825 657959018 237575675 35034869 664824368 391075139 891255148 206152896 735765819 809724645 907834852 841082604 28001112 623221470 551316359 113179008 270284506 682816260 224997921 394180197 807297497 986046409 504200196 291652119 191918233 530143300 935349057 222766342 762074792 298642477 319338427 496293398 840758236 673734144 994105475 194765846 985656805 802291473 152108242 970356738 119666656 610632172 959523565 769723472 719846599 42435916 563058141 629394207 102565859 141252863 28591212 918918219 396919830 440101388 688006714 254261942 135081656 500572410 632146421 948373645 306221333 786564020 148443694 3049693 237602175 780526341 365470628 59756178 791546854 759993762 47386435 57253093 966194884 496412644 367349068 769384620 538451436 425355009 790783571 55492950 540538887 877918763 126250904 103518728 226722857 192104574 421907224 277351446 221387397 728521113 347117178 713850896 210967514 77172756 544370171 376832338 326834642 65199208 873399081 82067245 559546816 912030025 165998084 852499966 959864242 786252466 535248350 359674588 235564854 633028725 68677053 736192081 906355169 554490287 877827271 291218178 738467638 515269718 324968685 315562529 910896347 452637964 573927981 479538276 460506560 643744006 699812259 707310483 856493978 744998924 591075997 162008652 294551273 268960292 515238294 17039623 912058587 180216236 85679856 721664201 147503196 818367805 92736829 638684227 728529465 850146449 673061850 959605523 452373949 186840660 78689037 23971463 751165827 636819827 7729871 730423207 645317182 819153500 575956355 195143973 267068807 224237220 488334103 48166874 84891144 614928563 191140154 415004858 903310864 856820440 407341607 278528421 142529050 241116603 344960345 249150970 72431913 449727628 321208385 123446105 131246446 372448969 132148794 838160198 452444596 492065574 501216764 725671956 984144121 510520033 547575698 625676483 686850969 505877191 79163051 490231725 614870107 362695395 925871465 135886184 909904451 23270457 728553625 485645467 348516823 920082733 832737691 516350742 577410943 370713570 120673447 349021474 721503751 161786907 675861028 302535055 640478323 911687483 263194335 640333456 354724918 748929251 682858479 598455970 670105086 163576263 458052357 828601821 61351729 632114488 192947079 874678475 112395157 380525974 824426446 129286801 410255357 458303688 417645513 916798606 325413595 340188966 108318122 681843210 608350285 979426351 127656008 776444919 84093799 169095287 685869580 521134641 719180921 338442846 521448208 175968172 794813314 941695291 965451853 536222620 173265041 542735271 978623539 240256144 301391801 919715521 92788462 843988989 475457340 215096977 966675826 212900129 350380172 235933260 616749838 389269282 798282204 168583723 527741688 424065011 670664166 642502384 542025780 405651424 401979275 174149148 99852599 554078760 600301889 346200850 130586819 625983806 259020067 318049662 887874869 263388622 555254965 221122467 673638005 546117588 546015282 185763371 897761295 187582850 977405363 325460583 925906187 841474522 385383654 276926686 103393706 865359753 163907654 788499516 956892413 90094717 913888412 721823258 413829218 466678751 877229091 812810679 165036172 891213096 585814486 529260623 613621850 51060619 946117964 208378448 512113972 639192099 773245820 50884862 43736166 891631996 540263834 471636260 11023098 552008069 333091055 370388106 776086445 284430164 355501170 671124719 740578002 588437206 423288768 829619029 897428357 353095577 49844528 490953893 617201568 640274719 879526034 956988427 179065785 454435087 799473791 926096231 210602102 909069314 728971311 549603882 206061927 964979918 724711361 690542732 621604625 991576522 976841855 518727477 623359625 811268493 438077543 654143363 328170568 647509101 751684432 28513353 222325759 186931631 361063095 655594252 734124244 796844706 332829855 665708822 178366216 573289609 452427823 893583101 591011749 104527841 798423993 402413022 603422710 770119947 836308787 434044918 251013417 273172986 470662099 742149470 625424655 617005014 969887158 799830550 221905430 581462888 745230944 818376364 571682773 44983549 818720608 841275985 636337071 734257851 499483819 545239167 385541198 287445006 752722723 538541678 315147420 707164773 335263087 700174756 832030167 311466539 876227828 981053906 956838848 982954352 907302350 265566334 684714860 683151076 689482040 833866245 431276771 163973228 148753100 506082804 902134120 181298711 879854462 643365577 591608719 971131800 141186459 381083815 252516502 481974872 97219963 20133234 374055894 842191130 210353681 870032176 973635448 810699666 538281273 549638077 33750832 413593972 908370553 947771848 272356673 828358290 46648284 394140831 340803344 88915988 858171452 284204638 846378656 173874733 875514597 973308435 551294234 597726861 684542409 677039711 908710413 705697203 60181531 699953360 351232339 320858935 313146406 83822615 168251680 968500104 630646998 848708645 178898214 51547738 837643504 19199828 36667869 571106125 540506498 975263478 10695139 494522574 720917233 135407993 887570643 174014545 904789242 105648308 723705678 977445817 841260528 679945840 425355245 473997895 175994464 600061333 891607517 24813029 600914960 173962220 514183133 188029798 91993100 765858160 190052878 204556680 193272068 905124554 123570639 33844969 31416303 50102220 10818398 557673066 795955344 196302210 371759906 363816347 195523838 740841601 797080177 580606919 332396701 761062602 651568113 751951887 195673999 354757965 303948967 732716024 21587476 473957711 739100031 998004148 893670585 530919553 132842530 326324785 779434776 383868337 889193194 33434683 48738095 541939030 246653830 518874505 271685262 434297814 175485288 148724226 266430260 130648747 179581003 611590230 541234094 889438048 579081321 268838088 10754519 360258971 199293560 434404240 89390811 643700278 460362753 223293756 784134111 775541178 140113313 819531697 768144623 437250917 765600160 954230198 272813735 963951424 125489404 108674826 503837216 149453719 910730692 690010687 737628727 242746262 728158996 615694038 294409310 778360860 796602578 36540225 74815630 898012067 342625509 541136517 756902298 136561400 645879756 203059858 280187465 225834529 857835753 527115764 72231578 424313597 741163294 205620527 576456199 790391731 392373007 832603123 995480113 912952967 500599510 830049426 379409826 277028287 894917363 517666507 86877194 273035717 329641532 566578656 438986683 259132124 133112906 259865080 695451885 995126160 692822150 265659937 661108015 877857626 263352261 995522169 542578904 633280391 252747778 955152440 931470078 502324612 823334500 458168948 890215932 390206895 227207852 268427107 191831212 182824904 2674357 180690130 347473433 183408280 293164918 214575476 50937887 591473128 124133638 910020377 378223037 313582244 99930799 528589016 519605580 540643156 326074382 214219411 215639416 971791669 5072426 365842415 684683507 331955541 581528667 536782586 17809717 252827013 434631526 373464131 377221805 157848351 79721026 256720809 170625544 988384470 155871810 147306464 427574181 848664383 247188223 355686457 6948141 574373447 487955138 652336068 143254864 43334568 578039009 635078419 313384929 411619634 388639794 585238039 83456753 581500706 83523620 12513109 788626324 602891785 920696051 72922191 802078491 631684419 662869104 932330369 676429862 208797030 749921289 996549656 278276104 431128802 468067535 701088627 228355886 496605466 542349300 644407666 50055779 379627724 174129552 442884711 841857431 322924907 126324314 683568024 172977853 235844555 171392590 9256282 447787185 843865779 756122751 584250966 348715483 992661555 494780282 351233397 631914930 48397771 352182346 318272430 956626540 781558652 968189218 878466992 529671425 67085905 818462305 972600411 295613549 580411667 250238972 931628430 361653593 840931901 617298640 627268775 999033859 970949399 312940022 111888489 289188023 164810931 815824326 393319610 979626751 890115561 934712709 239218926 53505180 785120010 836075156 541497105 329287961 983729883 751520316 837548640 699647246 123246805 561040759 968041134 461940539 188684899 292216468 899913548 966071976 724567433 270401139 49768713 632560378 68566588 830371305 139879382 708046770 820155183 827816040 996888138 22069989 818116069 853071657 320568752 111852861 807571617 537825231 672574273 357836783 903557935 347961558 870800726 79088594 192262595 10914843 859008312 314453682 638756520 467884171 381960634 469197563 486614081 224472365 854112906 565305932 911202965 215048398 887989786 970771173 435734338 906342083 971391612 702529237 47151979 757188942 46920330 971960474 983548229 40258727 340371494 389908713 755739849 859378539 695104812 685012349 939755298 5697617 710818153 406027554 591546060 648568093 448008133 915614959 289285895 196027549 348882746 353701957 538141778 406010579 391895949 780815265 385804337 217538816 267474236 499346449 265640827 4873045 306645623 230555144 684936529 436333925 183273844 578782724 430999705 366300301 763747051 448616480 547566665 157929516 538486107 732606622 726107820 308162131 304409812 460770540 17683832 499547599 869338533 534922136 704511283 368882392 97786504 736008393 97724435 370431203 826726091 819454507 760371819 200399837 764698934 461036209 473662134 443395903 518464487 72119155 988725900 115656863 338165851 317819862 769559809 233815510 785055785 553386749 183987503 925094769 832320706 504971927 859619011 692906829 89463069 591376062 206453253 9327470 404660816 796479286 970205327 478345857 36674727 116149881 288872542 298813895 409151314 200450860 110730857 890100435 200027912 868792168 913758387 740644179 302438671 716845397 989704273 136784928 289177573 359561206 379677264 315032468 560193661 217440175 266471347 459177657 385994272 939714279 447369844 674836446 192919082 655828696 345339967 446270662 89467839 492246184 607044928 907751935 464849298 322389482 77017098 408553113 347303791 241244854 120151442 367410788 118081701 436662643 974768835 287624204 889229541 203672791 989137534 716697563 685434005 33950783 557998527 945579488 912428834 131698213 996594618 879883607 71619477 500892048 829925065 781345482 792156696 772284887 860302483 909747657 962437643 305405779 660214290 555248567 214181299 88582199 155667901 52535618 835997116 902954323 84982666 997795730 865107659 683007112 114500027 108530454 762234934 488692065 940813118 398801607 85652532 17835699 955156080 556153974 813660203 949668646 4429806 840765622 987004537 999196250 456664547 327298012 737392397 196122960 727253128 198080465 896806417 513033458 461173817 130475998 159074075 943753181 959110206 612959701 482651680 69472327 527000428 921063951 929975485 684181632 333786281 366440798 62718738 756471053 488608112 815201994 436910233 670529498 818842062 588551702 54045072 656846147 998393424 885792179 640481278 858768131 347318405 595147383 993947792 691070587 336453225 896034290 557595357 56009725 917046854 131744692 839963956 982931163 487318862 810549571 468891743 485175274 192148355 527998357 845443008 147824621 778517313 244310491 132751263 184107147 130712790 713339716 115745368 346842431 644176312 882612478 383212227 856056440 479164562 305876391 435713456 20880969 271457504 801884132 810591623 555027259 245371580 80573053 372027510 888981528 841776950 755342349 150125296 542019108 734196567 902653489 297883624 92019672 726032694 325012596 389940531 54774506 952168837 361547334 147418285 620367599 707764918 978274494 630455944 787779747 192087188 457214008 420116925 343923460 410465805 785971055 969158064 527476524 403501378 571092464 506784646 771939434 661018334 907674412 570389724 902561242 161057857 57709942 973976053 554650181 773669436 682309760 624623275 573996946 971446816 911433924 644170909 627666122 20071575 860106047 696665004 630327677 714764790 277649173 54072050 303121475 370184743 294216889 774307787 883278642 723138160 319083424 910529666 585122310 951851624 518334294 119600755 11992502 345634902 260856212 542044932 117294739 254999163 858753892 860585581 750284034 491340093 716249389 848939998 814394687 879365109 804605168 868300841 553072566 164643756 130247463 903957593 912263146 818925425 861209380 275856975 522470629 389133447 470550393 517372622 169605087 955313597 829577042 79723820 789796153 837811375 96139121 322817022 81126675 83896326 491575292 644905546 657108606 528456143 520906331 778090326 988123059 513892456 766380061 379717339 679467039 674033359 558520880 431337160 289579226 621792086 24904229 733702051 841582162 96047014 927388395 378882130 342260588 723065120 311091757 661200807 839325603 759642533 796261773 734072304 514906516 748467805 576114357 723311522 723155975 577970563 30102327 765480288 721673856 301515045 751949253 761528607 827924544 769898787 247858927 194569763 60497885 280583617 361691195 89640357 480630427 202344691 464723141 603273630 169491747 799327768 285689499 935542402 387899022 510335417 207699886 426217802 795313074 909004984 938802834 125158184 748232281 539324105 735177284 266112231 668943248 166789531 130430268 294544770 25583308 727547469 948338788 897954114 191888427 206914568 780549601 854340535 723574299 561029762 188183356 634487329 764707904 842344861 232753047 330516052 764097268 923707062 464909184 730775803 350404968 533224261 375242950 647973690 98069173 811905747 761307201 390413592 687416148 857848465 630805110 325993019 698033109 322018745 97415939 601145209 128800358 799884112 764474740 210505470 578987 307684332 859786969 495631856 703023743 905079148 110941155 507750701 450341953 488943091 597833470 808032998 642891935 733639996 524373881 106501314 421889654 198967965 812175956 804795006 348979086 937629010 554265270 621351716 924788906 939303119 625564345 289571858 942682352 672059016 739861304 705477972 334799381 862665871 927754340 939390093 833077918 399229065 628745773 589358117 328737273 937660802 373787641 770995841 47715542 623766784 213627566 724263001 862499033 622854585 995881220 22748078 782432778 903789142 576570372 558122611 554687986 670345036 751152832 252111481 921031717 78710658 676665163 474008632 954454555 833530891 366920472 629340193 545913443 839647996 451357254 444077484 219981413 718147511 270376228 63049847 654926334 752611290 966241615 906528945 57322393 735345404 705913842 711603091 316171903 40655405 437454263 366726499 305619301 688767660 247646029 244440131 416666582 630549126 784944893 484686188 841306670 154465261 336977452 947878401 678274778 695693936 552729200 936603141 8899141 161888476 268671747 314923134 686470864 392934466 518047667 550519623 146182448 365950064 553266791 410193524 647942422 771090490 81687981 48307852 968531261 107123065 125549310 869847542 136256899 816016106 255370169 791141472 96689947 67673491 777805600 414972921 451548046 403559251 897109041 288687579 920047186 242461408 936648004 764053629 861656188 249990330 967796505 217867160 801999401 812207915 415760492 411544310 708277282 346617122 786739785 653294355 339023319 996169404 18028347 55938080 831393696 568320653 704230311 769169464 487676941 893699056 185898661 904553758 973418802 228725855 417568360 351289262 753808770 367268520 150660051 89172596 176349254 911467418 135058749 290009852 366853958 218911096 342430057 454518460 343216646 653044175 385007770 652818848 844474879 164986111 75550531 453531242 551664061 787357423 999213232 616240301 295173657 368379991 282821334 871901547 93195409 617109209 247006138 119882933 775345360 160523522 931308972 279111407 548074036 951055661 302871771 396971134 23998110 767504671 605969650 161219983 326142424 78694661 803393771 272615935 360293197 915306197 348566182 696121556 895295367 832391972 902182895 835327761 948723938 705803439 91942079 164749231 476141104 825622906 773981807 705575955 947112374 622345402 218096812 263363506 173172661 575047291 384682564 239998139 567193434 620218730 910309892 278994489 538139264 562107079 716241976 588739410 594705576 768079534 722151303 293106602 461221831 758770222 168899141 179447205 571171918 680025868 957589090 642391349 732894871 917963047 64192462 2847753 294998560 574776950 788366488 589372235 67129249 599301248 214758804 363436105 168486948 437990050 458713490 363852748 231442268 974391492 990556647 294205829 255854827 414093424 432524417 824665019 423900488 351982633 452004591 860535971 111525981 278411674 575115021 504998153 881652425 219917465 881432106 236508713 143411562 716681879 598508304 582060862 858209432 211268295 472141175 526538703 894703073 852332207 417186084 542116890 756015782 294299375 673174259 568442999 313965798 92516735 963119000 791189077 810761180 455591961 757814273 556381841 633943115 576786964 492348387 454950295 245219875 360751161 63422964 105868793 539098613 596239166 161809127 310925028 434901529 231789341 109242565 717662875 908047836 168429127 862305808 953482513 572335554 851968605 959492587 553610432 748969375 401136904 466423340 972700354 108109049 740248091 685388601 344801749 817877211 235930237 855542553 403688515 501565568 808391708 903067930 300182617 75496605 965959411 969891403 898895921 828604367 173466452 140959354 911698228 309426185 91030489 544764169 990195244 413130025 60622536 641760506 208037936 787257655 459722206 79051107 598377050 163546247 284353743 158344662 655584897 144355458 513948342 206866213 200458235 819712669 41086096 907832145 430715096 93349177 969899118 296758492 329240874 923683447 629139055 865743252 560551180 99662267 759494640 902731974 859012761 942211669 140410066 377442929 434444773 821663945 141550594 56732531 450252693 446540139 971029179 2770864 614001747 618913486 766134265 417548418 586376533 961980972 99539497 529166081 775507639 515372675 848372897 581994279 990789487 726552796 540835825 916921969 158491012 181028978 148298936 406005524 623631366 654782198 396998875 475624102 551782986 437761155 91538331 861886616 31707959 857866377 81952299 527843380 601444792 962641215 293686745 442283686 807316935 349116648 790490607 841359715 459585508 780563713 580054875 747805490 397384837 496622317 726831538 248451126 994860486 521344736 896940550 503359457 939545250 305830213 892130216 441369474 232313196 834665131 103939266 877104993 119866090 321216350 607559707 572405637 336584702 133108440 277278614 195618451 852793716 358215632 231829160 100632604 562354802 922625848 812346205 276966852 972225303 525260970 64080560 890184881 159106399 283882711 893464355 194863496 155742842 873332273 610808481 435777356 770815012 445074629 410500775 10703144 2370256 168604386 770945958 497497295 6728493 951451894 886403358 727667202 717407183 99315151 427028851 131632218 731962792 894607971 65837804 28870722 732989183 414179033 713372222 441059384 667450510 588685083 348378868 630159369 42061952 916507926 663646002 442741758 350078140 371160038 770861938 783368350 569988387 365409800 22514195 797483936 757025672 850774660 704931760 380793870 944031724 304146383 340032598 626846570 325242070 158007512 807281556 76632337 522383157 328538477 746313997 729662787 27740916 74138489 428939918 619259611 988644375 449674553 357684039 344638139 703568453 940975949 983765415 846284901 399572019 933942411 395384477 43031441 350731692 320328892 877995827 709288454 756165373 617287156 317722347 164386845 890551157 964583478 620397452 523013286 132258163 940759226 880558905 78876015 836399221 906153320 668967795 693957706 426990636 704634241 958860247 985423235 851019811 47060969 142582042 166674136 4660234 585492727 773035777 521613247 783576621 352108515 677014298 199732042 997870723 902723239 781227512 484480943 481995903 873744249 971845670 47254434 319730925 793321446 352756658 891754484 37565706 296266405 491890884 929764200 927511941 555958183 841580421 641583381 271347397 654937086 899558909 435526009 670514616 952041337 414383674 989031683 163587149 800835509 914129638 811506043 727736522 163878816 540368077 74078999 460682708 980769860 319724724 690876753 584721770 988047799 189153500 452497659 230999322 835976189 707740263 713739978 85289180 418636532 210108775 785909803 476715610 77985245 771537174 909978302 4608275 705500361 981608279 451316191 16284285 966139722 609910273 461356086 202731970 144119514 533545882 810575529 332942705 217568853 355515471 921301752 544015468 795211474 183426932 602254692 632338560 370367808 146188783 563141629 483360094 355578005 552288029 332898358 188052694 140292271 744569279 895498175 343783177 567873181 15862134 532332785 36047055 4239940 971524573 731362031 242860906 128089706 140309231 688584556 669445392 800130071 737703526 361101795 997207137 782485284 552127208 319152624 883800828 740325073 603253723 569665499 4062991 934335580 176901307 354344024 834534437 373431873 321786827 354880499 613086541 508803628 932453350 917898018 587354772 919181885 845828096 24590680 545987869 906535136 391557630 823467495 46051782 671771056 984934372 648633602 995036309 979208710 409313310 830649623 835410006 569334868 181578759 890647385 29457969 591980413 989334050 535884644 424564048 550728619 193123684 290712950 617768267 362714433 832153968 756399283 381380924 638676617 706921896 955755126 998793909 619079347 765176799 987112914 909199150 966782367 14405899 137908223 440699084 76526820 152854156 845462008 671477295 325463640 672216907 672154120 566804336 831075201 754573635 767697663 174859988 185710940 483500020 466865078 754906441 796474853 903375733 624103564 217564293 111400778 610229895 78460712 720505885 935828810 140802970 982678975 444811216 875666402 601870180 185761374 18242577 297684458 795074554 126477953 964793770 983118259 163690756 874809494 936528148 52066529 553149279 361209561 867407863 106570503 212950075 333442729 684269748 515496444 909427305 24630480 49742174 847123694 204146606 669701144 940505281 790505983 786007165 156558938 713591183 317803126 875956648 863172584 80989223 538145198 920019825 154316368 201256767 845852624 77142786 531764922 515327558 740144232 126389691 92569909 410286460 963466282 248613437 975812942 345948606 444761179 564284106 638376050 838007107 295808423 720575689 158199935 91894322 999436490 766375687 899579244 444920591 619474333 643865624 208785528 101779526 322273457 742731486 394711202 870019296 592149456 397364175 819941620 201154474 778585623 368383128 623822971 269209687 251646606 743081462 631159528 482812662 771212062 683947430 688331291 291260472 894089330 941623916 335743687 616991300 892739070 239192140 982480117 669890329 516341436 731734271 501922001 286562736 359458152 206404327 446874243 337250464 252804674 19408579 731961953 474489769 180652576 323803024 471529137 317889685 880878404 858892217 506303101 94815229 745314165 90364872 35441216 545124664 230160418 591876990 960941316 408087428 445562443 880266331 251944359 993721287 500589806 343161425 578277935 485223177 965224834 322353965 192129938 875271156 615722588 332997971 521601188 238123028 146543208 265359584 773490139 675231788 322235027 578852208 411805794 912480370 392613753 798019665 552699002 736184184 617184927 215136884 606529394 158661704 75997640 404525735 992964975 386023822 658708007 591012041 135112239 95699789 38907775 971911507 673990637 645117401 896959396 162202468 84702522 743747459 568024099 29596385 851749320 577734203 591035812 491238530 258926500 467150736 790303195 569820287 116415256 806149817 586788798 294756437 521230195 221464468 379812069 388416436 66702854 406220305 665992043 573231597 560789779 323715474 425699722 821255482 640824960 879787310 200429708 715087714 345728993 829901638 947170831 16555367 90437299 969629810 379229742 913149985 769228235 498502004 406043266 957356372 616447800 285200146 146540573 45040401 988544776 628082977 747330035 241189119 596032402 286123763 288700066 939295020 585632097 577810236 330643035 521355519 468412569 935691286 660723581 335160173 989537400 23457898 886434406 580569278 46904928 605573383 574499523 202493065 114253937 934136420 887431848 556488918 668592704 976676030 697592835 243087319 407730067 63323298 220219872 660163128 420111011 676266151 482902503 944945691 332632380 76390818 411424048 969279281 179607209 890127100 13972181 205464426 858580798 435448186 592850519 854253710 998681722 707904698 130052748 523112069 99372623 715461302 235619036 623725732 213516615 174849837 275418174 460254649 788779243 900117754 34225750 355428463 750245858 724118288 508157937 461037568 990893629 99626304 514985362 138607843 970459708 179681852 213281661 126485754 225781853 326149030 896161098 371134207 321879864 63311192 53388918 517097640 564546522 340212490 274005951 363830987 67241131 623727067 324522295 338293200 343527838 790250990 262942888 97864255 712993912 906645022 532121133 569046514 641261601 11163608 140081480 505475728 83012022 42329502 151106023 5077030 707051000 369740088 706313792 525767806 503981341 372919984 950543083 826624241 114074541 936651417 813116265 718728456 499063903 967687604 759014469 43768622 478287922 308376359 837491233 687310918 441610196 450407781 148920618 788379003 951908479 751649831 147238628 837659278 411314326 851267200 793049112 363506905 892838057 382270384 294969541 254488939 844525983 554133431 138773641 590741472 280343981 402195683 187264396 31693335 743776717 79705938 233250887 154946567 80487621 724176658 76315593 130254339 623187769 73796379 739320549 586904582 156130061 562372406 140865904 458762427 906873880 83836314 258977188 732082089 832771064 455617819 706644949 112679062 947478022 637090305 977336253 627047311 221238793 283141303 53402539 898686204 860251734 727464173 897445284 160758046 326162851 429412293 643278329 831121007 147572251 791594456 886698772 590394998 421800289 545593788 172812853 261427747 423002110 35059911 348913962 494336539 911340225 241339610 163246279 325237132 172110094 34535151 637018480 48089717 777883230 860438776 237085369 423234452 711076667 484835470 729177294 379030148 658690865 296812478 840632732 10191652 812923727 140566324 785571425 983544064 456467425 662249193 877707840 753062009 557342105 467546186 103699701 737196117 679513096 584939534 725313525 515748242 674067894 377298991 237339283 850180330 300455845 147074799 689451126 700333149 590050573 706670879 623615851 606129363 483792538 398077212 221901514 822533225 275346404 596907142 611145989 216376885 389472568 837734756 425109299 499905387 169321666 497797978 336000535 265682367 622819608 27635945 685762337 714011487 715447865 342274133 508801822 417039361 798548762 806122367 360578443 190948380 709367996 703259886 491335554 51973211 360713695 410399365 696374779 676923780 914451652 780467306 974267768 679260386 76099064 374115759 155200641 929228247 257185094 521118285 830898973 916224835 448026867 947818685 918516604 549472700 241452366 161409782 723394777 559860966 256243258 828730558 351717311 326876412 574243043 3351728 493469804 822481929 843275113 198778526 389719200 143100780 989269892 108486110 435218650 176569388 303668803 991001045 191408398 659554346 399379712 692802195 650923356 531179924 514105636 578936226 517140406 128359786 540134878 535919116 770135733 700461272 497656448 842671617 407779699 217100628 586428880 839426058 675554496 899122424 57274637 54218768 376726427 347646504 93761785 964591013 41569458 118449882 544851041 790418802 938597398 700006653 616105421 463205857 499706215 117364450 601095510 748548941 531473363 839235852 704732656 932302718 578547876 480163017 799256481 451807420 404247563 952970771 730910093 379351640 896520934 117113413 903718046 934076239 35740587 263104794 782327194 776513658 970243193 314255236 526586824 199264287 335109437 212072233 716560855 869514248 618458633 523476826 713045765 280321493 34951443 738923197 164635617 663798644 479440964 936539881 959192822 211075481 813837752 45823463 352789387 627590757 584071120 702828238 145753450 708536848 430502253 311185978 134374502 110799059 551171721 257286249 680603696 10042069 297167257 638160860 319207911 344136910 973545639 899512698 223809973 459426703 255905827 338226104 714403896 817416985 454018138 703412802 353960837 919376581 955402154 154741242 477071592 392972144 410587617 458986643 290812475 388223108 818525435 244895566 440449296 338177338 888009395 217873423 507286967 595124748 576191186 439653128 638404973 414322725 708784185 599846030 383166649 113573574 443423264 853169368 256350639 124889893 458626405 962926543 670839870 529731533 372772093 443941460 995621783 69405714 730171158 707631234 113966524 968206173 232725459 540385930 490432013 423796187 473683219 29148128 647863171 913128579 677111683 954126735 799600561 856145188 854363264 266641261 209877171 696344075 268776753 53891932 860444164 576398562 289761054 320502748 241782024 81624725 893211973 629714457 90256568 44930656 165804972 295970969 352371574 495823775 601889767 678478044 311391551 738738759 848608734 291582112 972379979 389324387 594540831 868623774 394984930 738937401 141463313 704979692 921909513 582996426 770133988 273289211 727826486 42146813 345902282 48038769 864879880 279487813 842906857 429743802 474346680 977796828 452585231 817814210 917284456 725932899 955926989 627365976 130740827 299097063 368450795 104122052 840135384 982855875 96730689 568098044 36443033 388766640 44835804 472319302 440530909 429064582 416324875 269546962 82870644 719182842 920121891 188584585 687044951 840106425 954435289 540226153 293814186 229871959 217129961 63141682 673462139 851928919 242519913 331695970 878762751 576538512 53367439 36404149 598650162 708879107 379449922 139085752 326484313 67890213 391636743 120533133 354033367 277885046 452409807 774405002 12547150 182629591 781085058 182661441 841487667 861269805 749575034 912481476 325750912 715212779 293495394 115865359 481943345 548446426 890998512 390443575 189329424 589434671 647814606 521917286 135877687 669434662 580377830 218079694 103863012 612049099 541674868 249290801 104921106 599214985 612132409 700607095 95131503 631512086 871151680 16256917 308863215 844176116 914748818 850888043 440184836 320830777 174669962 259021777 718162721 21430502 834296151 362330841 582689288 21436511 667951428 433423052 446180946 786580840 134008484 596796019 350537175 568718032 485835675 94761674 455797698 205837926 786551188 291611812 354133204 814062521 987684713 358608735 527875424 812045760 759941512 787552021 175371904 276037719 836860717 554144345 708771370 730136209 922460725 286802851 571910617 622393664 197552766 216709356 255397708 347817927 329899181 735445137 928230179 605411494 165177636 973944285 502302828 510573912 385262277 228593807 968754776 12866524 583659017 930903609 288257285 92845066 169168574 234459369 705474726 623068861 119864588 305306899 773603722 620117416 974415579 814517357 398784893 595351051 409458225 698885123 466453176 794066935 520923403 254790896 347069200 946608243 842548445 35924220 627872138 789042508 144788671 32086202 756632177 864866350 632173722 625016798 438247122 157779863 43312068 925186141 667350643 299339187 999119507 498522138 929943457 865798888 384550832 425235907 567907647 591132411 418784836 617253440 534487472 618785931 74824608 561783504 825472477 261175154 277352180 46861840 982304968 725105953 122356843 290119279 317074934 728605408 288350499 211870976 746898847 421811164 333146344 71359010 269898082 100890687 599541166 515771694 414454906 949149957 68452435 330729895 11615708 638804727 547118638 89666452 896347511 368867498 780223147 305523282 337037238 629475713 778739756 644595627 658571258 723817266 691070847 186848592 785563619 8178317 695926565 694793760 440117695 646792400 489097495 704591893 756026040 629393753 918872745 414782213 87619379 581307111 909768067 235689025 159000499 731094504 606960888 383928353 951391147 868528712 22718618 832670776 181408965 360033847 661843510 991995677 832318942 983534288 962814747 49024752 450969515 177481647 484514390 760514428 173305487 188078027 34716662 265829443 285425475 476621511 609861785 200794675 927853717 177874133 498016814 335590670 62677366 281653732 768647355 355375017 183746498 894452892 801515781 481144344 191976616 692280515 482540576 268339855 620103008 589899929 603636876 590857194 308408782 292891101 264131229 633348307 752843885 212010814 888050363 216663476 807478244 113193589 599199400 330879028 619061481 249832911 781798089 52843208 966547934 420195106 708782654 364190387 576235860 847571512 248708087 779722150 711718591 619945190 170698253 248628619 523349565 472933167 637417600 355704401 181108291 288167529 104153554 717298679 460867330 929745242 477468385 601086436 695170467 113377468 623633418 985090280 424435359 746929004 305757693 600284006 341818957 157411195 846867535 571333766 56169246 401147454 923527707 108197407 336349593 914993365 437858249 671970101 596365014 791131999 143261758 649789029 833969993 911735297 940565595 624047397 217615309 295939762 859236736 186072122 719050642 585264456 1262721 715421977 707087841 958853477 596793567 792851718 354208360 481064555 445867301 300081508 898168106 813529848 65982431 460155966 746467353 996560534 756896380 791642769 749534010 405498329 479885848 541806275 150337503 269654021 586430634 983717882 249699989 437137886 216797257 781844440 877918823 598741978 644113558 648440466 25199618 928456295 700885483 17546901 599861872 607905189 856539721 878234270 472636507 349405485 532378384 203674706 79800944 171888720 878973 536337570 412026076 757441587 563948797 184004614 44851349 818531064 933885149 338968433 925619445 633321768 548589920 485156802 774076649 923914635 386488692 488269627 940463865 39446845 288882157 415087246 174638501 597703456 861464607 240765985 978963471 632937462 878883178 958765545 853213112 547160619 390157325 941728677 146058549 31859473 60558508 291013088 815744690 657127388 362288584 891336056 571319068 504226937 626735913 222623706 140935950 410849280 827777782 979193544 439369899 676568836 662229473 599195644 889265271 421978066 99952742 158052294 553276314 77873676 748023692 50480281 907991859 203295506 769917130 40487016 854637140 666088628 739002558 660694950 990452912 352000621 162947320 69190779 982785599 62449285 220464581 391780162 575923220 267383313 742631133 150867096 407052209 746390210 755995797 489478446 108859077 569926270 447357849 824586143 105090577 231669949 190050561 573794573 829896489 714068987 879354456 573505128 417874208 220791618 292527051 103668162 366860432 293321687 69696975 812044474 166118894 770097852 424764693 983191082 354359743 849661697 661942352 590431648 338836537 785025738 598056212 74604162 262457206 447423065 686816874 943122352 348375299 100030671 114087004 772370105 30564207 229474221 447215635 694948056 872195386 284591390 263991532 556658492 220057574 929528672 52716551 470769973 246968705 763264398 826798616 817355116 479010431 477940941 421234821 592149767 392309450 322077474 901051551 417368501 694657205 388202028 886196532 814796245 203540317 280463097 289009440 148246290 980394890 726079450 597531967 359119410 502471267 667459706 431012084 907442620 401452815 41036776 126800308 980849002 146221910 408034102 195560464 954527964 752058674 572236690 141300059 448448199 361908582 543063968 432836883 423843210 985071413 284001951 769602758 305572242 61652784 650549810 673243316 411237481 685823172 845360900 948834946 370452848 52805984 742715393 772408931 44902387 887576024 19182871 511369308 126218872 508512590 141214112 503015121 870858541 49645706 664396112 684155621 204671267 626154070 23880358 195612857 666796041 753531517 959603597 303297268 786355224 408363406 68607939 995099868 332974343 845977328 888589155 13202112 734412493 241855876 164458065 467404499 778326449 764559109 484558712 739967449 312443372 920819730 674088942 324443011 967583819 826364237 173232305 191638525 624498786 327422007 508524525 345387800 619219373 390254572 159683646 402498688 680950009 936274523 893548563 263219659 856046582 776094997 522753390 594626351 381302100 229631327 709894008 34003254 87616098 640779096 164437669 209862731 90517798 395523432 149381948 595285562 619631523 832665025 274112449 763590223 651289846 900635968 458857408 314965873 36119851 992257556 751417901 953495509 141451642 744529454 492525658 716487906 106995556 618353182 203910373 457330904 212473059 377268614 632751401 698418768 592171739 770738096 841329553 862257711 648092268 519052296 315218603 596762433 949480844 863645628 104256678 252855799 949254843 71099474 932225730 439506988 376780991 197588909 118775291 594059946 19576037 951810082 549738022 203711620 757489348 555107509 704887556 893191595 142060311 512616347 854347431 289876139 164229879 486237434 255164687 105225590 595681722 270882599 810045738 403014501 497195186 896893802 498279015 632566039 501836457 960219158 229039125 416661213 668657861 333216684 391445356 143131101 484215779 213329506 460854025 624426342 434328081 549853449 627129794 675620148 614697074 381443301 985404804 860830942 735425965 743344692 710266390 821627599 268452452 144133662 547321865 113670763 683493720 658893171 744099618 81695404 283562737 584158488 305210821 165787102 52656563 30435464 273271861 33787032 611230672 778093531 486218146 966598952 708846016 768223585 145580596 206512262 842287517 485582705 428997129 47592009 498154049 750409151 702519696 275819427 55291218 791325865 555145607 410329531 570195588 55407288 625908040 317606730 15324511 763314646 777247375 324642402 359309982 818702839 95810575 312124865 318514175 438691296 904379798 292802556 903972581 678674335 486653557 150114432 745913685 270754841 297180042 558696952 553271515 132976646 52688089 564479814 940180871 253365848 916385793 201406354 310357358 976673345 110463411 384724588 977853769 32005024 734204233 290066571 531923893 716019972 167087203 560754354 698184268 684306991 228679640 6443706 454074533 136717981 466353496 982758689 522640487 91535563 8995261 136318359 571019432 45234824 528046369 178163323 351711245 381364307 362280436 657813760 828391743 97865387 31608492 675355486 276474445 318849898 114602377 133817935 430230744 365017132 183656452 504468941 253291424 79735774 728308257 40921912 210737258 372484987 259491382 851370184 994040782 722787923 407365065 142605526 622295201 912509779 680346890 927850205 902630038 930782350 323099747 188094696 5914923 688465166 431405562 463883141 996879623 522731530 828922864 158319189 72785350 466256340 185271306 245608666 413160358 71692376 671557944 431474701 202193183 165987819 349270049 543614124 58047722 874659996 88095215 524367301 907886288 276798684 207681118 225693316 713535976 505325075 570083650 381648166 525748651 816763653 486011526 295467991 639581824 572778714 484253012 495420855 322496380 362831982 111931132 387353095 725811706 172951605 944446332 681243511 443155235 459217708 281133394 566970792 105242237 462433874 584982165 108529957 309158974 538988028 102909250 778550726 811499131 422440956 41754345 842867388 752147353 972885532 567028926 864283716 447714876 509289246 547930672 777894800 603160159 274361044 850676071 512771841 813096763 389205126 966076939 494682912 963336977 513095420 311816008 920891179 977478312 296996692 872561636 152543536 178244283 859467466 904272240 605844959 442559391 107066494 650382239 503013527 207448305 756918841 401640480 592046494 666197454 845361124 655998366 424517572 682186841 955345600 564393884 602413552 221403676 707249816 735859655 182296890 179941164 291589645 598513543 826606856 125905500 890677751 792506055 456128169 630664619 815586198 576469988 706627833 791082237 473803941 63797589 402043689 120843161 501559439 866999646 361120300 317380486 309896060 683602701 557108463 868702031 238538242 25422672 654213160 679664988 661576280 193641934 731548090 490867009 780087752 214382616 140844181 750317981 841582034 921137971 887845709 448877663 965892295 315912250 673165566 394790184 464967283 331023066 733497972 651719549 763545570 456532473 920433240 406855176 837840018 340195638 793027057 529588271 771190160 341449032 706064453 790641479 903146393 167263289 552946009 416477423 787253602 999566069 91731167 578334760 996441344 964721442 25258432 463672841 229041109 327603568 237705694 130058898 799195808 869232967 404958584 693548623 671082876 84363605 815776905 534258241 234037158 612292930 959330004 598317872 987060362 815150747 936277388 111889922 449486786 709682134 487517182 163285470 730035766 136013087 919258163 623475828 231670828 208885749 318817999 721853054 253875522 778378296 602676284 495218403 307362303 378418451 622097963 39560461 913461858 38346073 510166879 890021274 41118102 559921184 529325370 442412822 632369985 811081197 537333873 282183420 464164754 538858341 426777419 535176785 16004481 106889782 467291628 341280201 729855109 777791779 991822228 957491127 147107204 678243212 426218140 942767702 654325202 737667162 704952476 540158385 61535138 681965521 119792174 949744525 436166847 182050066 266897055 639380901 513935274 712910008 217174255 208611502 767719459 738551742 326255890 247004987 225186397 484276680 332626506 310559654 725637451 58156325 679284787 214479407 130709782 209373128 673894980 34802036 996980817 895416016 615881470 637158448 983180363 423754173 247839888 165294251 893325136 300840802 783695210 614862460 72062816 292826116 435520970 828167865 154489222 387594146 458255891 163895657 129020552 258377858 854568119 156566640 171434844 825425963 985678250 737530081 461886524 231929266 413224276 692644880 115528648 25443526 542172028 241689851 25137281 355943298 275288058 888419074 46344084 414956621 557754976 698086118 867379395 276812318 788495220 202046372 860697059 17554519 768206886 384296084 123321937 736726469 900277347 588385017 926295515 739804241 543805009 792375444 520951071 589321531 220277566 574453964 789471692 806454264 326251695 738151737 955689933 936495193 915027590 448227805 687113690 276441005 411075869 366691589 23149844 698633394 953927514 676924203 526231996 63262608 924774879 785540658 470462255 976556987 55019217 491350281 687077178 844959273 444434422 951076421 923400884 363773756 688420564 891878564 504613100 752347012 555992070 993197645 282772691 278015816 176121647 984933024 392519911 445737105 529671743 713757715 351206519 574866476 811869629 41338891 800744938 636161079 399681384 989139227 908459705 487743056 919684852 709060639 453882722 784570149 260521945 557282323 260200734 43807791 431756381 665166388 885691207 269197081 193295764 149474096 916685861 217029988 92663318 358194149 199356495 607142091 312350583 385541228 402404184 961559416 417105670 676113863 141693949 266953972 694064659 990551522 584473620 745825617 229675895 791792993 582795750 972118532 743191914 599519121 180576859 557364432 803110799 790870510 824286641 928202589 618125851 96636225 518270516 861019605 126602172 880110162 231038564 17028605 736500162 168279859 848903670 482339992 986182894 632723771 632958787 755431311 547067630 908976739 108131631 155129092 541022878 733162610 800857375 823265891 1207552 612582466 248097445 958400158 902219474 404806582 116862194 175781741 480906417 611390669 400485681 485503355 866173774 486958669 317420503 371605775 877103132 828195505 935850123 487189170 952708510 118365615 251398407 680355371 635240046 279398091 228170528 815357296 702728662 508275983 509336215 529348010 523602808 763599082 807227118 476854307 134771332 16029179 881857518 451912406 549175232 322320056 886010344 286839391 804752617 686757921 842502471 409164257 938325651 919012692 846198409 180999910 575309188 899515305 430470124 523852792 115183616 843262979 467153489 744790791 374749057 757205925 709603217 381668709 432401649 212985690 54368972 780696126 84971515 421335152 500767115 953695162 625498782 239396191 963131817 876441134 911782863 684208247 313307800 618282120 682377836 755439268 730350289 706462581 905753880 541935891 524492694 500369612 124388594 511288580 227888868 775203295 759185133 132835709 897345437 697168643 196543255 996255082 358746271 834544760 802455964 508441061 430864152 1275005 902877476 94503136 13808341 397208882 96998052 446982017 126527191 285848859 941992900 878796733 579324958 340089513 616332433 425760015 251044909 831254924 272403794 763618445 379869050 880927106 522235990 649686232 88096856 770089711 199049752 2268484 835708842 256195381 375454065 958670020 311973722 780146267 730362595 715161031 192456592 752158864 535433431 791349994 852152331 803913364 570944761 50272164 842313920 69761438 822255747 727360169 245725553 632616017 168883375 331621421 389730726 882789816 665239762 320055162 422216402 858762517 912336681 969750672 224268244 746404009 808486607 619760978 584051194 990081793 856723470 196516513 598674651 737833667 877906150 124447189 874956561 344852025 316168623 888517094 117619822 132542353 268559606 554388537 172929079 744005558 430869163 782412045 37769989 757327061 596991608 575266843 275446328 441416943 974135727 663053277 939198609 837828379 609125186 121570846 342071770 230332565 407483015 111285592 181118370 692352799 350762729 25944340 834097649 568056577 933178303 186428482 151239118 157312645 69363337 462060312 889977727 40165954 874702387 286260170 509307255 689287041 442658618 249831358 483974753 219674888 791788883 255880451 958583981 224466529 855255353 918387106 658486675 344478463 258626537 376313151 924699779 459082420 328631655 704379091 345529368 597995020 305406314 734699800 969018572 799118358 726859769 339239517 522564030 98067101 270359925 546680028 554515781 196710585 310778432 264417394 929985910 653928158 228408666 601049010 460034324 452600559 586052201 421066396 303840242 88604689 984508744 783469991 22613656 321576808 376704672 113072211 686392944 871212020 162602163 738878200 222869795 763026247 468248675 175310228 492611976 901029508 435308724 296037604 527201528 334023382 182068211 329130138 758509151 433069150 135474532 985240760 27197826 398146921 72991529 612297828 256183140 978935724 106767671 807263758 87723904 374021346 313769463 902169180 185700200 730447405 245347199 432485128 675651182 322646634 36302871 726028491 973818618 34082948 870296716 852798800 443143977 16061445 566577169 121627911 355178591 613651446 628936610 733337162 362349518 720915411 505673040 481077187 235274642 917844800 228968453 349424960 769615204 126965983 956144426 27017997 807780935 44520644 799120785 261065461 108806811 466686455 987903566 230150271 441381338 893097646 293908021 256527413 703846310 158023981 299426913 854466679 534945585 68632029 977017044 601633927 28867615 427252114 370542178 274282282 939032044 767636192 997747265 589508159 827603892 58455038 927502401 157901327 86297559 712516306 148131791 504277265 99067520 644695173 183540757 229417620 796789359 175174804 527324098 985081248 678298416 112450322 494291334 274829649 918290574 564316501 52204137 416340249 526760935 569938904 957152829 311641715 488085244 784910663 701919835 412586763 852361876 466055866 84324374 126720034 452103421 954463861 50619664 503687527 784794223 975717303 779400421 532043195 348421162 368867047 833418749 647762818 459281697 345973219 917568224 905339599 678433261 869732706 876260890 903938334 63769847 358250449 828519825 996246376 679836125 343889952 914398059 524757892 626975734 403984223 896854034 68027475 766149779 35251265 414107644 790217453 65544952 987079352 112178283 905253238 812427376 30429260 476701210 132883153 257676330 145307091 51297069 635918821 980307068 843420592 339936800 624127054 889946113 264576314 693530870 552325613 423648697 887305144 364737602 685259690 813306812 671724289 76372909 816736707 874110022 454767136 365371237 597885984 746413795 443264920 106773837 169371921 470974839 496103440 678296254 440351502 677939901 711192521 992363964 356383993 285160738 624769225 908599110 504488595 338517431 46405633 903037507 734797149 213770181 624272461 897590768 924949605 167762180 484655509 479469496 131655103 783787602 77293894 679898076 469145052 871486773 988338503 31605677 285181123 441316445 725145124 866716414 953235198 399083817 781943806 198916639 798602094 871179907 367019593 552859949 180065557 63094608 228627641 620658801 684365597 110319107 274347913 923721645 911440685 130300789 311954803 607077287 752747699 433674752 386965124 797964031 83976707 771001556 160230564 105172678 761131939 584150290 719608893 388953760 612523397 709678731 108369591 154971453 119753429 885979659 453258716 251519716 711444172 92953110 586500643 416743728 327624904 161488213 3638532 734488301 54756948 563393472 310284097 801775914 484912036 19883291 35772806 771637689 952520360 603647603 584071472 548404922 996920962 67933924 765102964 483985939 705137861 338836668 476112912 665114392 685250475 15830806 754380396 54146780 211657232 688702489 825983877 853072190 691824874 570986828 259625736 38882727 490021276 747782571 453214840 272597719 924175904 164410270 864178731 841055127 740066638 711464972 876849267 992771894 936227112 169519053 960940947 1189490 404277206 893933298 404063738 404543444 68044664 485616119 765781594 239303018 340711826 953950174 803914985 175179683 683946318 970180298 516952008 479853778 550927615 132821052 945986549 343553912 148870014 360505823 511321016 256478815 547648107 776786500 554582108 250281374 574954433 888075623 307249252 693308449 738357861 10988349 638904799 392306538 684805073 215341127 1060679 339700622 801826927 63768122 423083818 305679441 792193283 492304192 341287689 469350475 922914590 372020870 10147224 913016676 783259056 84274274 385264190 240876852 994324905 367319549 220778207 927413849 713176556 848461101 800952412 276231471 797477546 27789162 3297511 222388040 834631790 453518310 184583689 403656327 584274911 837746908 165331314 48872059 755567676 600533725 121832715 345275098 418134398 18201242 436511786 637958187 248407704 861682311 81637104 38125531 608042317 841122612 947604998 10781707 122367133 946022550 627979359 777861786 762580827 231905954 69151805 194052074 973806326 268813178 637923129 495170781 848809630 118738481 476306151 707703693 687491223 106339127 189477948 808167843 229772983 192019479 757311562 906836362 93592953 245178810 193772201 624481675 471921229 954250525 415970091 139498382 260618045 147409917 758386431 391634141 896163251 645876244 741286425 488499160 112642832 538108009 70330932 301393276 726082052 803390355 408747547 747056690 242528432 905605878 92139189 767058396 524905057 270659390 187563547 547454315 636366496 82501273 121217411 216709654 527614844 111684598 127825634 183530566 225030775 577101029 354834194 396596996 725700517 718507455 532931710 688703273 58386905 112731860 132615438 462643773 601205676 421467809 11798533 183718477 641971364 543233398 577923878 128483720 965451980 148957921 847343138 435569654 211687147 221043123 622063965 394662535 876692963 85047116 48263899 739214075 703055845 446563563 386993134 948471495 235321854 944128475 527979467 911891931 526309474 729779029 971331833 462197792 946258353 474674553 332858319 770225827 800146582 416657428 658148987 252804379 778807195 759530270 411309785 136248771 481195433 51794403 425167894 539648285 366643341 842158849 92596871 673317106 196116077 790770924 149456723 49323369 175330860 878318690 734914236 594311754 305668193 884574716 956038516 95545540 890828621 618786975 404473752 118467387 472284948 140908889 436224487 83089149 166232444 21996509 277669567 998367963 142451486 227621565 839370298 250838157 635221672 455667309 405996241 517384590 773045819 55597653 863243152 881969454 716121234 581935683 946721866 527143577 441207961 597426081 191574072 369780790 919829896 480586843 304532826 522222936 548384164 423421603 663511787 632268979 210365032 524067329 853930688 17265550 696008171 402268528 379108683 724979684 119185229 526708851 863040682 227624589 866794383 539114676 767821245 862076700 264273493 390470529 625247796 282569724 628367420 767239053 960111113 29331724 11031499 792121201 715613397 527906631 592410864 343526682 269855422 729273673 651773915 403690995 236139168 891337419 295050470 849487286 432739138 233821828 922249799 881351961 967292063 398109308 936141778 424838731 95587634 527648388 975135992 545877394 697653483 398328608 484883007 57625068 196505036 686298174 315835633 600912219 44272030 278079031 858593621 245263882 707936154 940901977 579710971 607271185 138066986 942787776 394904770 783422037 98216066 600396635 104656390 622921322 507065530 920114771 501267124 670191983 660063761 762314639 148102691 434512986 238562016 802563160 643756841 230417463 449729222 207506517 141078005 551323184 690778889 716799809 696492495 31198380 577487482 170123346 804132306 742693085 139157165 344937841 390041391 751864184 624339973 590577003 140545431 920609982 134552857 320602608 586454159 449531891 625943375 281082794 855348569 407000202 816370868 709167822 115027391 906325577 254769337 701974446 128220882 207616002 872056156 587243807 591093993 513104684 38223061 955074675 138850377 692165112 22239510 736246291 728494468 920197834 525150380 509111122 939611240 686617105 722583992 126027455 445160807 812626401 240430657 286851679 541406066 468619599 668128183 241591394 498068737 631372564 993642205 487734721 658227452 330225102 760212035 782319271 112195751 231172110 286373025 986847036 652718619 555188595 87362940 950211287 846265694 325705037 31080601 65511917 982982671 291799233 144585522 305936702 325775151 587487201 720659976 463268571 422937672 297270345 513873103 365676770 614333837 876762621 918867323 150317244 990987281 515600544 586117587 671329548 79992668 697974959 428444329 755037351 217642620 684837066 926192802 504139498 384006676 686423523 901453784 667357336 471011478 521780849 439568031 473484074 908205209 737952905 473556538 447565759 81969815 914329760 905946763 85424489 851701586 918316911 584186164 872717433 724983768 370542870 705324230 324458957 351377296 263775442 437502276 689285400 913628670 290244000 148102880 71999244 293543752 180160926 241170882 80953896 696688836 542779982 5541492 227425905 516488573 435664707 213179677 795638020 352040893 723021441 677059403 732592847 232610129 981544045 399529170 449804669 811564168 260018618 962036880 265743036 191372834 49488709 317273924 274764068 887709067 58835469 360882222 584658830 498421230 307433122 339792037 237551172 702702146 233542193 153001312 975672666 678403179 761034981 721999721 718351984 568052304 436386523 162543527 890859842 604600532 361209279 128003442 603778226 787616080 389291994 542621562 679525861 124525591 608456190 420161109 618747380 289070607 337744136 305124828 379025473 209977974 297876582 264595598 137749494 667036357 47250671 31359701 456439908 495771993 916420245 156693130 869657726 975577437 151135124 391079590 95503233 868280031 977232487 68118258 744500430 939843561 24302126 890266853 514363216 946906294 172794897 393492888 520957140 230583511 201749949 867898164 223943127 51560643 775242249 573126558 404356813 80693423 868694366 540926948 763436964 804958440 412921229 154338457 918592017 839340709 137081379 323407425 648910750 548749596 708747431 367689736 164043521 452330901 244252473 118775603 249791709 885989023 184068362 779597643 514677751 656063019 853176534 838399452 319615265 164233054 61517727 160310058 91862519 655797298 944770064 366364706 102167204 547916698 774837982 139782877 447220071 185224761 805077063 241656143 830027072 94653029 653736335 491060306 130131437 513217608 893784691 561659023 825037956 41739574 227239253 186240238 792234598 549791163 387858977 99140576 997737523 644505247 751439939 25368912 871419421 528011424 215064411 847367300 462655201 522785105 396191894 476049335 488404279 314928104 677679505 795246339 833375674 980897639 162538046 539660850 986418759 297444600 803951114 77138033 445738934 63492198 244919226 298558612 801004933 932512785 356355323 946123551 243049053 579648621 876113533 189184628 888642637 954858193 354851144 186319422 546227016 421337084 963196292 365903491 508568526 656117851 631621806 34483646 326226215 350103618 981756810 738124602 180149238 263867754 408988160 921317770 895534171 691475152 303613475 379222738 799959625 820945943 891114991 785624160 385434293 2872529 81367853 625510660 935148181 300960291 20183897 952592791 169175164 735874987 931277554 636436744 625614060 635768474 940014734 548792827 146877430 61999496 917583066 284791015 894753361 426749971 176716925 368691824 45769937 954649330 785992950 398918138 9200158 755932446 121814219 761527789 527811458 631669955 828601579 867176836 857639405 943683268 580247894 710240917 88774546 987852092 547782391 645602841 612387347 691494003 871197138 587003069 366531487 299442500 967817927 540781938 596910384 781237673 891880440 920036936 547273120 559270622 948388199 152900584 946393775 799296943 106360579 112113270 523964691 62088909 985838601 492810435 628031499 24682327 353169664 887066429 802348372 414187593 368852116 19702770 655456472 665160156 601844958 402360250 769706981 710915858 351435328 737055391 510215002 980223360 66885853 407077296 543159750 668199065 189941982 820664914 925628113 274330748 588306432 584096753 159289967 384408924 320771232 421206769 338644742 64887442 186376742 141960371 942201693 307265156 251193438 362941090 18602923 699694279 278971170 552393744 827652289 466913871 400008015 588852698 19549150 319340664 977824127 202900294 789577003 934102385 411078717 512955343 115279548 715197810 788022757 623569012 284194220 651344445 507890359 464696981 402180244 408375593 306068386 8699625 336497009 336374779 585558733 493982178 719855169 827423650 249579278 143031281 213672142 990839321 742168521 860045422 492256547 554546523 36316221 463851294 347793049 138237903 799737146 327770541 193934167 25565304 662517626 613355341 210670996 562433491 400097381 505419044 953880372 65458362 738076150 698516479 465827279 599910539 264748941 850433780 831576175 329896838 462793084 262271487 376091346 552854503 845531686 150476084 950169059 603241353 600502260 542734477 510788791 144762201 545524937 392632613 407475655 360664610 346792324 282823184 888690663 982034086 112878763 183469522 652038108 197499218 63257671 509374736 895486470 974046479 621076238 738706882 233559763 489775922 592938934 705751179 581312489 413417807 796134764 649361160 85177498 612567421 958112372 369767575 398308377 754261358 724596586 478348319 224004325 488812204 433975356 854846183 566573259 765612432 376051784 881338784 757140794 914943465 527383328 954928548 528517772 472869909 700988296 470523779 227964183 82376993 691805760 909745011 9793796 95006958 344365893 341075479 515299401 333572710 478268679 420389471 196301267 230738746 227019026 647128767 282319896 801823197 260246562 786699151 171203398 883626284 623112128 638478725 496240175 316052986 842513374 36289174 253649008 647766068 557619847 443045315 679603675 709922290 698124309 355227724 521340398 501255028 203470649 148730019 78486141 328015253 661288739 198649296 657938798 400592859 892376297 301879498 422800303 177710148 425212237 989998698 892897700 617363940 560756802 646591875 379733157 648156059 855483783 272655144 411224936 969576946 359570164 444208314 25013950 863392589 678530816 486665322 461563672 183666470 229008924 716437188 470278301 319570375 524286117 547955635 926243550 795082447 453543008 505013452 597020875 994012209 175458016 73990088 996413168 841791076 238763605 670685875 877101402 360198632 625072676 646886416 825181362 783138900 337768616 294556194 74949439 648575716 494221861 439682831 331232339 949281460 270820340 418393533 821195739 350096585 638043835 823797076 891048783 432727530 231590721 816827558 780868708 404189889 398669382 697539883 724858327 675179877 195068741 69792439 746931523 623701475 754743105 256728302 104823845 99800128 244058044 264472642 6137571 302843411 371236154 560342218 563841179 663361293 280729484 494143103 782331575 228214454 400110682 436195735 140973437 340107567 529102074 133563968 238478814 123956346 782035750 478606313 575016757 969476513 539691457 708992029 735870096 98511456 85531433 139746564 942325124 939645788 995463384 608541486 479512236 150289298 191236367 591626491 703467279 897464197 96885850 725233502 764003931 619126747 570602766 531388018 230597116 232168013 424204538 608060766 511390355 601365935 500915550 112549604 242111705 641762518 938953669 495919958 679668277 660434403 739193004 762109919 634337917 12315684 692684679 163083355 600868943 319432814 264760642 61899071 584586821 467052503 432198604 118251268 233862856 512987916 889495187 131923532 544786892 157451912 655816786 205315086 867545270 853613393 749262073 49760618 159608882 446482372 57234560 170406168 336082238 720682868 831953134 525043467 827160777 167160887 350825123 63682890 211434039 636006308 452005859 183670586 120078433 587895522 826343900 798473224 829954564 112302562 454484972 319012801 403213759 375934333 933652255 763105963 152889487 832204317 755949031 447947313 519882324 80671364 686744200 843033646 537895316 870206521 882895997 626963197 865332329 879930762 786646523 400027265 38041242 332733888 934370129 434008854 183869135 493432052 777975648 416282496 958553122 632234775 797200973 435471253 126986411 450355324 236690948 407431442 157435685 949550074 125377895 601420413 492330886 302333573 292743471 109090467 148782502 468127521 876559663 609155427 60238322 634682302 514171823 439519734 141388991 999050858 591733455 801174530 896655284 29652901 827790223 591414851 951271129 844057756 671474661 631912253 270674893 775460460 125015835 607101433 473860896 480461908 992793892 190346798 978157867 679844665 610184142 815336677 31356008 629674059 983162458 486883176 198652015 341123316 447066242 312537165 777444634 645617262 413985166 405813740 453667523 136028541 340576079 291682921 485507235 356227439 175221352 337502122 690137561 552340473 714977146 974492326 248045114 752585186 227227548 269998257 850981196 719277805 380567998 275016133 17928180 533679159 729644302 365979289 561706438 186563894 526358683 350895515 737553910 414631880 111421164 928727299 704273219 609253387 26052779 259061014 908662921 626717765 442463204 274241422 480712506 20201650 204359931 594331432 684737924 235107472 494238225 594550245 743861062 319881191 719049714 843513446 459911251 953761690 471716875 480711319 597571104 905406685 439375132 482830799 754097973 871762481 524080212 201068963 606930638 412662419 233783399 721116033 940718071 453476558 336895993 169330265 47656921 721971321 523314264 327734172 943126956 217773025 183720225 165557011 339769280 831999791 647002406 504273488 286321609 23837953 547436962 990533274 761184420 486963337 553994705 854635922 683387138 681654630 54490162 219489296 880402759 120598827 455094914 874099773 997855941 219480916 242729903 969767311 381933910 902295481 484338559 252090379 66032375 590166885 576922182 639341617 534132539 339816600 983978552 945688979 438882998 9089001 47075435 883796306 146891210 855334451 743287276 624987981 886090417 40918205 773674342 669835985 132745977 953884871 984286089 956615884 616096077 238772245 44593498 683497050 622744106 681671572 853427360 991280962 843632714 264847589 535640111 65479226 70164579 97993084 882749961 61971511 931508816 30442181 362056474 996535838 150796413 554969172 960808916 528795501 46168293 643261479 116533326 802614997 99466143 123162622 677626483 595769120 251012043 946205440 159290875 808911758 532520068 312271359 310004529 790258556 178174676 333610257 657569294 334875632 201188351 169566945 664063307 810955873 362044923 397126127 944371497 494198266 304038056 789485135 984336552 95685081 293114261 730731141 805975038 237116050 293224401 418732500 455116916 630629663 580771959 887118595 459586842 117210537 776349517 102846192 629249738 193320770 450047195 800310776 726992616 267618757 670620665 780014450 215204097 877469709 113917808 193393164 177784394 978766580 496360653 440846789 459818228 191887571 894590883 176798194 140751389 559812148 37404959 305525942 11127924 196752869 25863948 273179157 964282838 522176013 642076257 302754889 983259295 59437896 930729659 352795938 111337776 52778260 762739971 40901468 916944108 858129129 14182830 623721305 198951093 139291984 637332980 961883233 92047218 147498181 497508521 260459969 212137573 938495137 383844008 716781521 966698859 687306336 654967313 860090644 207477424 200865940 936263679 147097363 632354355 588859478 703011292 564708066 784598273 897619398 64298093 963674000 376113431 144208008 726892463 81901133 176216168 996230506 333522124 657058402 652738823 56573004 668899815 347048419 369501812 254192849 902342886 692387496 134721120 155296291 299003733 98624379 641016810 532802392 204012407 463787081 860525954 45395895 433219010 718070947 978496201 74919744 361771960 491328693 623459820 917708695 462483406 334570195 517205428 926659778 280774933 116146823 121623825 329402026 163437756 893696901 560999978 874310543 907740314 200256658 908180838 44328828 428498982 690949951 783090627 260808337 701216930 839380919 339726207 788810668 99556959 618497402 310851225 93904103 594340657 337199605 837145408 715923279 278474882 55891675 400767531 882244445 524800519 87281594 998954144 338191256 862603168 502015595 939043586 708944626 860465166 707839860 416030319 829139600 265498063 374795162 503068979 719243512 953025619 852370289 945503686 340208169 142322479 781044533 963369044 61470881 784550068 223618223 150070252 123090296 885778636 753411347 839475174 507944828 224046578 719747591 414981873 808555872 712961738 46009240 657957758 550195487 957622267 496731554 726941689 958106571 897386472 53137075 238343139 991229564 799802885 466091543 357667348 709888657 168861666 501537957 17191209 57922691 465924469 40810939 714448691 336574456 290710702 567825682 412865953 890579577 836644824 434111843 434132052 315198521 310410378 907180428 352247201 855233140 866616860 600246314 648273360 897597241 782769672 150714331 4307095 33089337 138104239 618290384 854144937 238778602 249438928 850914854 590191727 87410323 944437214 885197575 807604829 223552153 727159383 486204019 990363380 985471600 665371916 782963820 667182307 947255965 151848939 946736389 666487287 705107710 546977654 952280569 982052114 528654690 859699465 233049567 714323354 322693909 472429979 136472715 196497442 191588072 446965946 616874879 959654144 478661611 779382790 656164115 109711691 218385352 137987316 959466932 957981442 743288597 495569154 554530687 374839108 801974001 976582233 574098054 410856929 546511107 581361161 878797678 509072329 463394336 648961754 854672354 828760368 646923434 780155155 551760773 523024797 804801445 301059489 896974934 344411718 52684283 500752007 740505895 609370440 162840054 238556421 33780191 718000540 916907011 809850681 203127061 967330020 736877861 944314578 254742190 254180641 48603026 82124286 665287185 567910460 944038326 163928227 750025242 525339416 203463054 637119785 651708390 735089994 573059938 198728159 499292500 573697484 356364649 359246720 760903010 300928379 387901897 507279995 472872140 385135682 786402610 875504553 439879953 637938529 462850523 820584369 94430548 244971399 67609357 104129048 129622557 819635806 471860159 709471672 384934369 605534779 569648436 500418337 978979133 578871549 973587447 885849340 115730475 484194132 690248496 234495813 731554157 87976657 710272444 524096265 30822869 763141755 34485917 664071430 947566862 926397451 761440004 288779886 883352447 244521908 803109848 694629396 957254736 388771906 772738463 485200580 452251680 471714787 786394552 496556595 118612840 540299930 471860825 532566740 516201871 767836376 345426811 116862729 14582072 338816156 528324761 476028326 281675657 867706318 368365465 992471804 790396820 547179200 348401256 303728919 449243661 875993660 850796167 879982692 749213666 8102399 66175418 305591254 73558498 359444311 605628003 968039990 319801916 565267358 356164498 516107659 303917882 463745975 292295113 688514468 226918951 227153364 801192162 964896960 101270066 512683415 379223802 873841452 898866340 665754896 462209288 35343485 141437258 37510629 100803719 388440226 699006810 93765873 237204069 367432105 524070165 717463955 81487085 673336015 90089860 154340671 430143797 580014098 653505022 500746695 594920487 859899320 749626015 459738468 554572033 454160709 560303746 942852110 991230696 579810438 863301375 608958378 135608612 435332075 48998021 260097278 486340473 612670624 712227692 453010488 362638077 254103788 847021111 344771454 11181711 4126579 78061862 952197066 232276954 647306626 989786232 912691687 164252237 469560385 259161825 287443638 152388066 662500104 29542384 293676513 813535838 732144273 770874143 824918258 631461500 878990140 917818000 941149421 521589984 739786529 446031497 397060403 107983346 558083693 762666340 726030728 526798409 924084830 124581141 118890189 524118343 528443129 937471277 870065315 150018968 725229745 558520995 493387073 576846437 950715537 577972305 944576006 945704567 241164370 627416756 570166562 812912647 685788548 1237449 935893915 842118056 96025405 344383353 167716632 371641338 723791357 38830225 506856942 717382554 801473980 950239172 956159377 851221967 546755942 190356918 603331618 579274599 351357304 334676995 248367 892342752 488826744 696335481 34398732 322175807 440504199 890150550 695790299 519311299 850832262 542533786 792944086 136252630 308214911 345888082 993624733 615705139 385674107 887348359 629529860 548924315 665810799 210564117 898357407 575593602 149506346 252863658 847627923 161144601 912327231 860561333 342430307 55445754 132245478 824917323 613245519 595335484 94541563 238414944 647164959 32421321 343516195 262180315 13004859 636528977 708467850 740370727 96573991 346689339 997958816 31523023 644195342 194600203 394816395 113098681 853061190 552277199 41733482 850102651 36063876 572960955 131721269 780598647 268928497 727880542 295904928 326144794 237789124 239562488 677011597 265124745 889247038 508227401 315423922 989917534 33214783 866816547 798220176 596086324 642793934 716083458 45667226 559741352 730836277 853518507 940686380 417517713 340648141 549741804 681802390 767510029 482488121 489624385 171788635 927118487 581310306 494242485 32344392 517831635 581987159 495893421 231332577 287822765 527601417 766487478 935856688 549894525 319917261 175010804 930209270 625688949 448492600 566239998 228178671 170413359 235420614 509033646 638211813 33395127 613601573 686731390 183852546 275284873 496972996 596210214 809233882 634955375 771758738 290854243 832029036 224826005 282151427 617885478 196061910 585973055 187350459 383241091 740072026 145911150 116338388 98636179 31824956 473682749 779403134 861017911 501343739 294010159 62507131 310344704 309626115 17157063 310796962 734012965 38294964 166344715 885271361 580795605 356269281 56131537 645707759 395395749 894965386 345033193 741125246 801235269 176434936 516310847 198619061 380530119 541787728 632946917 661853493 817713342 440599828 551185337 210817434 252322757 231560708 49897413 595522173 976609468 189436930 775402712 661136653 763994008 29865067 609156372 711746936 752156610 382603118 496445353 471526685 277016210 23698395 841307987 828550867 230655795 851128768 272848662 57642759 333575708 897043948 579768077 282493415 936128490 575037904 702483629 525070423 159478084 97126995 754756400 133760638 189212611 242311298 582355129 768159030 109769448 257819994 348954122 574094260 92107385 261437371 399954462 34181936 130956209 732543014 137589410 760153845 681594251 915169178 163569030 554517539 869640748 331029217 146241418 963630932 157910689 295886945 365894270 795146059 525444392 931051574 501285559 193102027 480743051 930012667 542888473 415395174 746236977 857731811 43215526 346167121 618926619 222173038 146436288 99001187 384554920 466588701 472720771 377332853 467201832 682267241 577445013 923475736 679580309 668462544 197176671 33526820 563323516 710696981 59621947 908379235 247576870 992845257 269253767 250890719 161912332 798461678 608118435 954184636 413314888 325661271 115578564 30508874 542211020 924193903 803416845 24639886 389314574 200473262 150993604 56453055 14006503 668214198 876651331 270679315 899509034 93768788 67905978 292828058 572772758 119997075 201578252 422934731 497985595 858107814 806310652 752302439 769070018 60538874 195187764 227529191 164905350 907607560 170095670 408026690 267820265 903169173 969164673 772551420 614068177 662664914 689216055 269002500 354474456 602002031 683784516 242683206 138912016 872119791 389430773 215878635 388272615 118987006 337186147 327685606 913463318 63621048 743045732 656743902 71828127 208161433 301949627 270007045 935016024 58037698 836592940 208476430 951187260 58494750 524833260 167414089 848855694 166544596 77243476 926712505 493787839 199306018 757340247 579301274 523336672 428120694 292615289 859770609 552523612 750821564 565100680 119701033 964928224 250906659 333456008 485702386 698995546 8181342 498335341 859703290 194935832 49296083 133605489 657366832 148705736 164376589 926424017 406650056 891618558 495591186 186036074 189548460 117284908 62480568 495573706 265383570 176815003 267589338 591713284 250233863 953317248 423464158 700977920 587924677 621627907 859991240 804369228 221566288 953105535 571304289 144760880 887153468 324529187 658434849 284219020 304601169 935017630 448427269 770713774 931135606 166875080 180505510 232655265 702692616 417711858 783532884 101605489 253014432 982527532 447363863 394719647 62056725 585177600 241037656 264122268 509842168 216530975 328730118 73277734 189521966 716947236 401488914 309013962 716105227 6934313 896686996 346655340 863397157 644310669 75177063 180451264 223170283 491525847 607406907 206597303 63442093 825466969 304882419 232827478 7338281 203267868 537542192 719454221 66229136 4976881 76293921 659735402 72919802 584324808 497454771 719342828 83978893 87261373 231493976 96215085 848543892 353109819 271649428 404730146 999039542 347569451 439750165 137437634 218538363 865023507 21744308 570277604 442368126 405957838 435468756 871691321 383255914 173306675 291163045 793225241 775581402 793255775 13146925 860158611 844964495 517284166 635909687 645262385 843292140 600206546 549062423 143958421 757129604 944772506 485111001 199279256 833542448 143952424 916628259 521985166 552272451 29998533 988869062 258260524 712903660 275512954 243319634 554223711 699715692 267466115 127695688 961652343 159694913 582725296 450486688 642192617 248928772 439882352 693899698 485492665 33808053 73398193 213776534 918476619 9231032 848442804 375456957 165875933 104870591 380206629 379904027 942473413 805112812 695203634 419164099 210583042 327373077 372856078 933872538 754674430 438790702 498923991 828671893 354511830 76083261 78496363 864703437 440346802 61029546 678077785 712709449 222324115 234082442 774287449 388435045 177776230 4452802 81688175 648303614 453341060 216680871 263922816 204418450 181545443 457407517 596506245 25792730 739582528 758330441 948887060 406162831 964425763 586878478 897020737 372761215 118601187 948457442 944258239 558940687 7741691 458700816 418820053 734834500 889874420 768107823 624179688 85786442 334313617 782906818 977039437 85446521 339035059 97854507 604149538 950036521 625411927 86609778 876999118 894041455 933356263 113465390 605563753 97452737 624302024 642220286 788033106 125869597 226675228 296508789 872149874 637508452 833470751 980402915 173727767 543193363 843627131 144746599 977870333 85152283 817618532 950979652 955334383 898554919 221079970 597635255 504570565 480096141 139413072 426602805 265904456 281237566 522901251 364227352 297543934 709608224 911131878 495566265 749170751 313303781 821649197 856111081 229651800 382468280 925974353 783754210 706821355 700102714 321932194 898527528 470074612 725345175 36978649 455783096 717703828 85008432 605626821 908360752 595968961 638329346 187845519 978406192 74703 572906057 28907040 308040966 12981565 477577233 912901412 153354176 375811747 606842906 254691452 358827586 283597116 419484802 427555486 755866915 276110474 775468339 880734193 67609156 104554642 146370810 905070593 819520906 274046704 814003665 183311109 321746472 425031893 783847551 701311179 362015498 762088125 913118655 912771579 374961322 265503472 988111652 272203278 433356718 669483778 546835111 489957563 568556600 765750238 579179611 288643810 42006774 447902537 320025921 768388094 56284416 612714392 197194823 740345736 572769311 716744566 56233172 254794710 836841167 575385528 872417331 413473658 557255683 398499452 590251666 150223423 929089002 76888215 284236874 335623415 877852830 122756104 556605209 40560869 76746934 719815360 736540561 465574943 608322488 875836434 991469933 391375070 745422372 482556102 485354374 885374709 732946132 564739481 662023823 686639510 1089071 906303723 85262302 40846717 77399952 606278080 793938879 208859436 342557211 600459296 249741125 620823005 466679329 83396115 936901047 822888678 9976870 448055687 494468577 974947746 310739950 360883711 638761730 421508768 951048481 741545163 600133251 871614995 230327248 255823862 643992368 516180811 940755961 547150987 596305954 6974332 571894003 652745585 86780913 150702592 381846510 185629912 774932147 615714159 618212539 839405570 262544147 87427735 424487728 530826679 345967211 509171820 758083657 998424556 975508417 373710263 250067751 321460987 917383279 672789854 100769965 54135409 553325159 348189845 350710386 465955528 656392519 861866188 619889059 246090322 778830400 533461688 999735959 641057449 453278622 412426844 365560342 336576440 423464325 672007766 880132707 127130886 98698027 899226621 39546042 983484116 879391645 109124276 181162366 269501969 191260341 92142101 228571217 275638806 589741562 813350851 404461496 96630605 757829201 325805607 180089973 389388301 424639693 363070358 764002240 696787787 320665941 760996844 569800720 436797696 276392113 518697247 164061642 214373561 28633345 422756929 130938178 557363417 505280254 417080769 680544255 549981692 449757988 879938797 136826111 263786112 483011799 982759479 180790643 820058055 323740747 453204490 977250190 42563726 126426168 501931253 625323672 794950517 723807808 332307765 596700755 125296465 310091404 77557262 659831153 446364204 673672659 582067405 931701132 740409068 1854799 383482689 737567695 585875597 406867303 345461511 421717053 755994450 227288401 653400887 939998142 294795291 740540743 550929598 559007270 793101600 185106668 940536176 105927252 307715685 292593780 997009774 65686973 514059506 478452354 374587516 55057252 939396270 791845467 649669165 240831904 434702368 690022932 188117411 243901726 615115968 605156406 204339126 646597532 246472978 242423739 198426068 31605073 594934889 338419606 990117866 18561807 25517021 867313849 338292873 403445509 326113604 981606624 177073636 436564669 394715480 596701753 104529037 206849085 738292198 669172312 264254205 827497694 386896225 49412317 598736714 824290650 591826092 105585803 881022592 557655141 150582091 262752376 891358322 586942035 629869341 943742951 96104349 681787158 310311743 924463484 840231198 564369329 181739822 606364110 276674923 156789113 898706176 241312333 525080016 57070377 309867291 525529236 371569775 108954132 187992397 224008276 211069164 71355626 544143566 426084632 799209726 560328093 287752034 614017056 340979631 599993924 1535186 643933752 628645734 901094229 722542531 289280996 509677265 59974432 75076115 680297730 104594237 797890513 259403004 125163420 224707635 671972651 336539628 35451836 302961941 662613931 570182415 840543810 568435366 476748048 117779721 843979949 713325925 772268116 817528954 275943567 502206292 214439758 207441252 180997017 890368722 463535507 741347610 16447958 388930547 758815756 621213746 332365843 850414805 205230709 942090529 817577297 681514855 286452972 614496390 576112704 918549157 31830127 772370571 758730758 572337011 892740887 279184101 265026936 753716520 638642281 417041534 715810375 463040825 192915733 72982087 699242515 291919203 238617663 373127840 901175524 374442321 409593027 463656111 20618938 943043182 152164230 447664395 635026118 919945797 384659179 525156087 209795773 559709684 157692743 123445645 853739567 461496685 151806820 99676401 515948580 616463635 46848645 43884057 21514423 964827102 182863060 870846789 684695952 232784893 255674785 905125126 10683879 535051129 121851425 383961505 176658176 813276929 219799260 895192467 938365529 490664211 67855571 794802601 311242689 550293522 398571466 138517053 150076054 553467164 417184030 200603041 806528309 737759461 271577046 447179401 800407453 8452161 828535256 760835124 778888650 904749261 667101921 918540190 67842130 133335224 86876121 840071709 827834759 811215517 87231869 678239380 617335010 110077490 408202942 210884795 266054273 720081186 910331389 946858460 479642101 366016524 669879429 869650407 92465942 33952554 472539254 867416038 46582723 554315086 4275114 910919933 673873205 957216387 309686608 214434943 911691139 892805912 681148905 608315814 333418439 871686734 357347071 240870398 201836721 251644217 887979796 405972821 768964549 679157964 626187760 113182752 525552488 998153835 235912993 558966591 139538092 633504363 411909481 657462700 748365977 320621788 335230951 896797490 745340742 715028120 759489811 520513207 56916115 420679690 769104001 967324136 185873335 514049526 309614078 338678341 986017391 318814661 176598687 424008173 435729918 220584171 414538788 177517414 162032461 388930640 315357894 237300853 368648621 259437529 314354157 690261960 736738337 55693705 916536838 36001543 545742757 562394781 215438780 452889542 569815075 549503656 599897788 703393479 115086143 478875312 876049641 631251557 228448864 43881575 873740456 491704922 735461577 474547655 351400280 591761076 830420917 152438229 821786978 438267569 640754125 995738509 991980946 73044352 804191182 849424667 579676387 176256471 882809590 910822503 2522600 760746336 279574346 468089022 219729045 104512957 533700591 386476762 897590583 744398081 808849947 477748680 467602966 60434985 319225493 783265091 335422021 679254367 931617741 99056311 411103219 653980500 832854361 410537655 502546468 738301673 124430113 977254940 57491923 141510098 439739088 639774479 942030034 775236725 442131938 806879054 352732458 138089357 527573494 160140202 328397469 603734509 753946445 585609581 159362798 547823162 990552872 79276910 677033489 309266780 345538538 661865851 468593901 341078049 909847500 83613682 220109014 129884716 109754679 604625837 616993224 197985823 957185972 327037720 540615747 357361227 713052547 800118396 215567281 632138001 148532010 315931540 470045384 992627734 889692657 451089176 680447723 2613407 649778785 91451697 831354521 475663157 78414331 428997484 630786065 596821488 905710 990266070 341817594 41811232 393092814 29781302 823163531 339129008 950863145 52069718 164180056 790468668 716131596 588722310 192656764 657470586 993464715 189845996 650210241 871211334 689298352 198313273 941512452 408704249 834076370 5574792 674064951 597344942 341136423 12154401 793352305 20239261 355592502 525412885 173546104 100617276 979187179 110953284 980773196 685195618 951822896 285842537 95723463 573976239 332784037 691292528 485483137 792094130 69623432 379666363 579594090 220307918 504974617 781649670 147523439 420203789 311294674 446491892 100392729 345653961 757259323 308797074 193946745 664260627 880585912 262271811 752280813 842398142 312988952 211662952 740709445 530781689 749564410 870323371 781760327 343040632 258001335 346059026 72460367 10444081 962404736 450599202 370811009 188358686 899904574 931646250 86858729 218925440 518868412 992682489 394378945 817220087 551828318 996598763 306602952 618240838 230387905 861064274 79593689 549718552 259948531 634882455 913873116 371508043 80957366 80445090 303844768 557435157 446261417 526138831 90874670 146390275 46918321 414479598 952859718 158571280 346560873 166594503 16204598 847550519 293589486 546911217 497616493 606421858 554678991 417572066 35037243 770484483 816843073 72840707 298533345 962861145 896559645 426142534 952373949 907905843 979684431 131025125 355082435 689058842 697305562 670862525 770249371 279591323 763061518 70051417 446495227 277598665 689850533 168283849 436324098 853062512 885201721 544335218 879183992 755168278 373348238 103557512 555363166 80698439 981098263 710204669 519978917 967104765 882525039 854600308 97146726 993285914 676984813 359697858 280955440 752335987 519777488 969338693 265899949 38951120 461200664 956077427 372972044 185257503 651877508 553259279 969472174 29980027 941773090 282343351 953545651 523588599 367509363 97817732 196867733 37969241 486511339 286476424 110743957 35362497 649912016 542542291 188048664 399022287 744830975 794856349 651816643 254307850 302323935 75055153 98627020 104421236 905467947 72356675 767275422 647411306 551832942 768266550 445488700 962830869 333666501 705218627 182929848 897091185 169997634 897969785 856673472 761218041 717254010 629022688 476246684 193973135 571370075 50848820 725304756 214437388 626284230 588294199 302340652 780732527 90604211 656844155 856341916 302120319 699441350 674123440 845859250 195754219 786945397 550650272 569966548 593314819 377386530 835454347 935969799 676811796 817093196 673354026 189312509 714380825 192913133 904292330 822700513 230147135 661130500 339757462 670810682 607129951 139347831 786476622 278624668 940877740 716133875 524377396 942410844 202083948 188489764 772971008 900961216 975357581 823854703 978547204 479736760 874275170 270121042 39704732 680146436 518830592 118077246 347775961 43426787 822659362 132228632 789265167 398084820 788672674 409210428 554254794 300900686 815305722 373975303 23300373 144232301 35927657 559024115 63710432 429789667 967296083 567238809 167146493 946937979 547552102 678911793 212311170 675204472 480583064 626708507 670250049 506052401 835747975 248467017 938192161 217721534 261450189 105309061 107652054 647695943 902132938 804165507 304131110 175970962 377882536 408600499 523336697 335410285 385576902 852781627 140750580 122476721 124025961 77860531 111526675 81903327 644388325 184944792 832935761 143958334 986263290 718004172 482578594 707546068 567690180 809502146 118343714 495083973 835963227 118870805 781118887 575156651 969112828 514059717 685321988 820698918 57620267 797096095 350052871 710378910 312993431 472265832 286240493 229618615 765653042 330552886 572262360 656056042 254347451 766112139 188430321 912319087 148742202 313917334 314007961 55723398 486792905 226612264 72974048 929391450 277374667 812860155 656408775 264408094 229706484 528088830 998412663 665257933 73081716 773818450 962034625 803080692 572756449 392185382 13899267 458795785 395767511 561600913 50466148 533456610 973345472 632762256 577857476 831944711 354860162 958258122 563898737 175463689 447367512 960315492 169727839 926207986 825292228 721636770 502400144 378903599 774354668 714515322 360191654 9482269 265107906 618891376 635012455 706001211 502193890 409362983 89140823 988529575 158476058 92869894 523176626 737946656 242980476 402343381 632779036 228687474 412210370 558554252 565981709 768525508 505764245 227308877 714441666 652265264 105817425 107034238 523304020 825096995 954938608 539293461 982358739 718492119 713695389 153915695 374166342 223917184 260947315 912175859 769755270 770251272 575041364 94473194 355786057 917574257 39995171 618503015 220565564 54343598 113710403 82938926 895041472 462150144 29144982 159627784 448902570 304817380 991471919 148443599 529149627 314389918 461147041 348729937 59090680 629587455 438242329 797169022 124882045 865951329 800048333 287909155 358831607 100249665 79295010 315246476 756054722 841125273 138366500 822575 671779877 964643384 275619970 762482399 881550421 58295489 961129951 331034507 397802634 95694910 71082674 459267786 875710142 511508833 117405873 68006880 242983796 895800648 59771222 219481667 170672394 255898687 382076655 726207760 479217457 112994806 2151094 142076716 954415816 250933759 589506480 126024513 49435950 385431304 209607787 368264112 71105962 150301019 291185479 921356676 379335859 693455274 984895444 710754461 48434211 861817673 597311145 393037159 763238444 225003319 868857317 66367987 57263437 591571075 726432664 103762116 682302315 561357668 225020140 51707557 385346803 537948640 559827434 535020191 887530187 550574394 149793013 329657613 825712941 705380193 389465239 628113992 596954928 961444102 108144568 98255274 55127178 912808572 429758528 56308273 596706665 791603357 271630465 201853200 496008323 38292712 343153865 480048610 400718265 578385812 82393291 571959792 177241801 592443904 223592385 148611100 58486166 569095775 726521385 729628295 102667467 832731321 136362154 744313039 751426132 675466443 431746187 297161850 891948613 555587384 410459374 573577069 188683264 782335060 819004644 656273420 507929445 916360324 947873394 565890585 643796591 486625627 444683359 715551594 484288764 390964232 804246484 369231127 601153271 525622762 264478189 877918432 131715343 225951361 578192725 983738517 332576184 709211574 909626759 11608917 339967732 763133939 980626237 302909213 313300674 965288858 587519120 513989362 85485909 447352071 523637828 971883739 506115893 755132268 812903881 519423547 17250368 584608045 264686081 431057529 156279253 879752102 509288601 144635396 661798604 843808084 511856874 453545125 122605034 332847471 184593722 234889236 826317511 260705652 775546268 924788524 150353035 545673852 887836885 167663821 972006484 511114952 94000574 434695104 94992657 260397562 878643555 450988965 993171866 630514224 733167728 842764214 169530370 334202480 40999428 140167677 277914030 948871136 187444567 506628692 409858663 932847345 437645982 400285599 180252761 33417400 42024494 878772110 468949327 348469461 71859258 288212006 559500584 311099824 433991186 128851441 363464602 391249128 295833327 5725848 565241717 226774885 274713062 634124869 609958971 737037372 306791577 119871291 225659834 232548656 296987226 422265701 233759390 122216463 768352039 248004869 872599733 736530854 296208829 567535627 388182408 750713224 157494252 870291547 646371884 753790314 357584844 710466781 803038789 575982092 851293997 815560812 619240231 169167610 775818478 577253055 926589703 241476490 376521839 315420010 883862591 470896804 478097163 622193245 620302055 632028012 43808661 422171282 272322614 924649016 356049066 662298447 51411276 950597675 978352400 640211825 349708443 228932559 694698480 967237640 739421747 150101917 608550286 447721969 154054359 315057508 137389884 279913000 598663463 612119176 183665726 971401321 908975370 24687452 979703982 125893974 612620749 45849508 723035392 47371138 53125867 689330781 714533734 969115457 954850231 370808431 111871114 10133920 485967349 382783397 830682145 809688885 397370524 464260986 667195847 533936756 215665230 699886054 321924803 271018636 660357100 5509757 575325204 742129008 593748959 670704066 756553771 349428926 45832718 484577405 363292909 430091176 664830634 611766623 563822992 406651905 411861080 669671495 650301542 645192836 632787979 583773146 983806684 969449792 945452650 499409933 971604327 907331429 486386611 300181180 259895865 639743552 325262259 490503264 580419510 737593537 94900842 922966551 402868907 593000682 690885831 815160162 454881573 888236530 543822162 879591817 737525804 368210180 122324959 516131335 195710785 516574645 66113569 327866730 44717460 541086294 68427104 636944578 460395928 948577204 500373015 501445015 69277645 683703050 910200269 827696421 657168675 150969298 994822416 105495675 855774722 286951004 734707640 320021272 588865475 30560123 442757729 545917881 78173243 65613049 520584043 153588931 242277152 138245340 263145245 185107468 985689692 826728755 398061048 224790364 483630101 780869126 796859337 974917522 224776049 34570153 641578245 170397107 854643926 444746891 466118416 559929587 839254077 161348935 800814878 771779314 302054498 132358696 970471047 832797843 166432408 100309645 276484627 650623025 353294893 378030866 498305857 254917472 639802375 179473306 203410005 411658106 599961154 37323394 433454097 282104399 323458697 854727087 560909020 310976004 53350216 53156065 946321823 929442783 538100046 50173585 578904023 550537311 682385548 361273459 710773777 10925203 321714896 459366797 595785335 888852231 54111530 301645681 192084446 635815604 922348015 867733726 331294362 163620916 316778437 654758012 35384651 333644995 145097895 805971312 299996334 757456869 241571226 203013718 109207006 859744384 680403283 513283492 552011614 844984970 397290276 142206433 436402362 744611119 573143782 640074563 521943485 976202123 459739465 917036372 114194355 218551483 334868553 20273844 832844018 843135051 548474656 537841541 325886126 961103462 408903705 588352013 543622031 141268529 898838440 997677275 771171361 3135950 210158052 398049212 852074088 431434315 682923133 139132566 465232427 15522963 570844966 12043841 226274227 446194296 694693257 960381824 593149518 278324563 136217155 786443860 898921985 222555133 953209851 743214182 836908851 612841132 855092203 764281813 981466097 105692945 477679523 274266327 785689041 116744466 724908564 529002549 280375357 575433652 46191382 448104863 38991899 57607874 960031926 623195455 392149511 254201400 917237456 163510140 216129358 764651486 981980376 22823090 282295072 63637519 622898041 181317148 283956735 490584991 495672950 153360616 888968311 779022947 334380968 820089212 115995783 852673920 82623707 258175377 867558318 44923631 770484027 705475144 53063228 313915146 958957094 723030967 869650245 314507477 805442000 194356758 206557942 477831530 325540446 706144763 458095738 497128391 838326520 427750763 899649403 221598903 160167383 226663015 832896153 241729875 244622763 645199064 11253409 377747016 954782272 111700577 374125629 866734096 281671725 109584537 330507541 607199087 674325712 720648428 496354157 215925147 435824351 220416338 496903929 430556742 568792026 113176210 951035577 386540707 48767092 56399570 913307805 749726009 180663626 30774181 611809946 79809918 586927014 269467258 76749120 282527632 108987178 182853595 771862638 181191842 290140535 984140884 258157648 634521452 827058396 450299029 979474048 1845022 995896080 326490019 563594903 982349179 232196767 609100463 95152643 877540159 914109576 45268322 759124994 561481172 927743165 889368287 198049503 567132513 128898432 18000015 235814064 6204067 574269803 281752882 201368828 315040261 373625576 193393854 141280284 738596939 299437078 480748377 683748988 845381807 204650276 137883585 983597555 811974706 398110831 533285272 656737114 65576385 371147369 422014067 451408889 325045703 491221325 453442910 208622465 683813497 566590194 836969569 370470697 231852306 359348260 475327232 758676738 124965972 812062070 448102641 825763714 161050961 981516521 289335067 786457593 193293607 382373246 702807810 580323968 49466400 987554353 54614629 552024019 376431697 826401651 391948866 189376399 233331172 272791758 326857597 279239087 45836212 716678861 87058675 728566110 302891149 25973923 481135997 135495066 740089717 168795701 416756426 467482374 58213411 473473380 895124742 264759969 142809487 282215430 331723047 221275316 528120929 179482855 168943375 313253697 500697545 861580169 915247275 888498639 629530818 924598098 375060664 466228536 685494444 31941926 804482412 884567608 857468443 919597035 306011451 734093489 488497297 707893810 46917088 274752397 647010695 915273550 674633506 132881096 232737023 874431518 658774332 12989019 398814814 963480006 268503718 467874892 374575388 71644711 201172658 253175414 843295930 158416328 901059685 17552829 968300445 223297779 21629355 233535103 20786073 886032674 170740565 419538191 321395200 975844684 114870678 582176860 886326757 668200760 83348522 728890470 439836956 790930763 180213098 443150985 816544591 207810802 415406448 880676883 285789471 87515865 57803272 594587844 15899646 987264257 604062297 832748168 691471588 714544258 947940470 567882149 380499690 693148188 149661312 501338941 566357834 392218729 306180940 161135538 970920636 167879178 991009989 220072725 572876597 732093811 776897580 107521542 9574614 283767254 681771809 971418879 157923010 154843363 685684864 480514967 790811138 842686267 26518262 786278787 40960408 759773162 601955102 784206099 991422563 290758597 346970640 598624090 670652713 296135012 814783249 273154463 288936402 37849409 116210404 922527274 274260139 331012827 306991385 36550190 650134018 403754420 903342714 789185121 135393655 875446562 902033701 874502636 566554405 252038435 704228718 679909356 160121754 858165604 33104699 160048482 601492629 798301398 804575382 518945562 427734487 51238870 485456730 733569792 568269139 876330357 705028256 714453613 169177111 883009189 601851737 705568416 814689869 841879906 757613420 157139412 111374221 769385964 672784587 245782890 103629231 775030173 836318727 631364840 98246270 865559966 650235655 541990407 645119115 890861552 483872266 823768999 270450356 775581573 592779956 795874179 156509939 283862080 464544278 767901889 233083194 547302317 562990686 770730620 166890447 763917020 2321953 565564054 299845647 620045076 268507057 893576500 737711244 377451866 229637608 169845488 24144142 758834261 921317370 320731784 224284846 832858446 444596591 830154227 471108547 453168133 751101216 965896093 125815892 503258340 840178065 490178301 431223796 301092021 318500600 385042598 638421019 691454161 259893251 267957058 454217631 499821034 861803542 257392634 335609928 894524873 966900675 219887632 957411858 105027050 789466894 903495991 18705384 129207386 869345150 695864208 393265508 277675957 272964011 479433358 753345290 886563553 116994660 462033032 23685238 471759521 47363108 883891611 411924911 643890877 181797163 424115018 732306541 411981716 794233849 845271749 321543944 338957898 743000939 411295827 750032487 799990256 663066961 526372423 59823449 273855972 293434099 720458805 816476104 33987824 690230217 69472541 303008220 853681821 241526862 373238725 675768532 849476054 634644530 566088174 964635013 967832655 163456823 207470501 59947439 499668916 730443254 297405102 555197595 26580536 482105661 937226518 782349724 74119207 337078813 380613878 82339805 524623239 108590119 197217605 65759403 136537297 626748827 259447191 989315678 560407399 925053009 304611674 545901281 672560293 499829249 415272604 143884961 99193914 742727720 821799880 116013818 209294037 640697698 601923596 161344638 502284546 65084678 344237167 25422526 795241025 718035546 243368740 383584080 653688937 21085082 825817716 987018756 244257415 964863314 604921583 508664626 644906926 877703019 766135232 540430657 633546536 114219948 958683266 788871877 602691391 838132118 621807562 789857909 812653954 635678381 292168129 578505484 142072556 59749005 968067257 856570598 310486427 159681951 761495956 526235968 487061794 829509525 631924493 797870717 326982925 680015921 789899689 826534542 673689424 801395122 943262702 35385306 13518689 356449184 753939002 49838003 763151601 838690110 538323606 209385217 360545526 526743893 995528552 195597224 343051649 674089386 919360274 299382907 70613352 99863967 607654038 40196953 166993189 93301586 4289838 799008566 640570416 290893606 738971474 113572672 713810359 884820418 401436258 629930555 207443590 285810497 967452449 878819356 771793413 487213743 716310070 519795896 611845098 146029066 587522746 448370913 887254212 784581778 766594556 467581047 980270842 503017327 614629327 461954518 465688604 974540393 649333940 51651652 472610424 506565569 441297486 3665219 985707641 764008458 958210844 583675484 942147095 327459917 596561315 830955492 964652316 646645298 852323460 505423602 651537893 631416241 502092830 209072258 6596274 359844939 900350400 190006955 869325417 954314272 437087500 329210868 99543150 322980371 81433281 353684963 566882325 391425695 201648819 797730344 877850804 893773176 46552759 698884087 481363911 318585089 821619817 219496984 607752853 794566492 51185158 875490351 389029552 442930985 317303841 995496260 950376311 27016568 43376097 956899017 332970843 175274123 625161582 912707355 476672494 69681784 993249666 314479216 885855024 100432021 696458723 142689566 779931971 158294046 115030309 819911830 698977092 509027421 646730125 242445468 651406933 861555870 938910944 357113625 548051748 788854604 604841070 349939193 476012805 877889156 382461809 144672640 603196059 367147186 345230814 620627371 557235272 837627816 734460621 183450710 26617862 452881861 358808629 85616236 926996051 368756639 172951172 713440769 780388006 361938949 390490941 382485388 266937680 23052878 109049087 927359433 493820424 485157543 667324605 872847044 113925111 8776845 527375692 70714556 627084352 471871019 999736433 725839553 422858670 177680976 48612861 63044579 548212508 897864093 101922956 372374599 40004622 319937466 442785442 497543360 324432645 935543893 27762547 947888393 633399200 531790851 386742257 529350675 84242268 399942400 102862230 835540956 351944986 913184251 430187362 654179203 412246183 493038850 220716648 40168451 377979880 197562340 744327932 349645066 202575210 249424824 525992337 650856189 518961014 230929074 386474227 403415910 900391303 637273012 642991734 57681396 939143586 608196451 238956524 416917275 736462332 359696521 779768924 982598673 240114973 55584882 793222155 191175389 905879722 368631964 200221534 975517265 721947854 639248023 134287104 715364042 768758178 687236208 715824451 553156328 552607726 219137574 434492490 882849168 708172104 375636649 707647226 357995244 406044819 54992607 41490123 719032192 134697224 379999976 306752125 240152906 191014534 809235892 796974703 769581845 571066679 601735539 190352562 792030535 756907787 578595800 690056726 876865315 327091229 178940980 632022599 957804157 373158471 58115197 99068645 581683226 160598493 921380815 725843092 559297317 542094034 528583694 523373270 599282964 625748646 766849572 814216682 816739684 324091792 966475292 531460291 32372775 266050875 521558834 851844331 82853540 996768203 145523593 204930482 821279026 583899741 226757277 878790674 248683083 56079051 866516670 510927804 112632511 4877535 42808516 748477539 323943661 495060375 263150649 358612578 451959360 885659920 571089439 632546328 34534074 669615311 12030311 766392866 428493513 751954980 384851128 868895614 912601038 854571138 186924496 94568445 254739494 76994981 96006245 141062069 272777071 727567350 71812456 227498597 994904118 792056399 843388801 788779032 362044260 881998003 174283348 703645488 988547936 340912775 230184285 599528022 664676874 767190990 249247266 332053543 884199802 620487037 368462699 309301278 553916004 557215442 286516089 34674724 991328502 558438386 143564541 33753708 955633051 512877968 362154363 428041326 794889387 684137734 909995125 940576267 563509254 92117140 139070950 800616016 667610557 378842322 398781735 102075084 929065364 749193210 11584040 457632369 923879123 928018114 36022878 740153073 326694273 891680625 260999838 939916417 280933811 189951652 340452091 750451987 648867494 11466477 46930175 545696794 67797530 539062008 370361015 838035495 919394444 305673210 584739169 908908336 521217926 387287570 847905505 977922906 455770728 331879824 988502297 807837778 54980661 788759024 315124780 445090530 369142001 132677043 581310494 85207872 765601483 139641108 238380028 449194468 627353128 900147105 639676468 886653970 938221978 682865531 319234600 867181209 81746974 374010091 750013630 765817223 744270095 667602504 209905684 130519603 758152266 436837818 737700447 468290869 222141058 577973626 402523705 897141718 961827092 824437932 822814749 958112745 648218742 710514962 594907827 368729743 309865177 355876605 59308688 820240233 319033777 863439719 824752161 818720316 58213065 611617707 351784430 560969039 380245423 545545444 20456517 318342931 659021415 602117853 602474660 943563220 890127878 272831892 535675704 66112922 37124288 694746883 743497906 504919880 633904120 95505529 142088647 22676670 8793120 573350513 999141809 7248633 69485017 180440153 38129870 471466472 692596814 701586269 592371572 792811798 231215268 408575144 491513029 251321455 529779409 948962996 859056370 843440739 290705489 894314382 387424621 539116916 202407188 398869417 699026150 457055032 158598351 657722214 248861591 978111149 546744211 837880404 614877323 893955235 842266068 872590879 230963132 944917755 559660882 365609956 112292526 909130282 569323628 64721702 413485209 166178336 132633275 279062931 975337985 428348502 229713972 26041476 203367830 212898846 136198082 474451782 238588794 727742007 580828794 922981973 972356245 460639761 575543449 416611789 428878945 789522793 292132973 674998842 103977656 22365422 244525396 805755051 835188667 454060619 581258924 151974228 995481587 990558362 112331967 890535634 610071152 792493025 438510639 50465659 66917503 857524717 663053425 695249100 910889371 951368485 236788186 72538467 101023866 952775203 987104157 295326728 96961008 568834166 465612523 50846930 186315589 229396049 751124285 810959277 862551863 460480926 944627576 836826706 126227974 89146335 112341878 150722174 463888277 467541793 442897487 204157174 759790613 305637144 302118532 487318776 776688134 288230698 659122601 299057709 490579794 648057906 435868441 542405658 534139994 891611935 576310205 396120468 812365849 213980868 73179287 860687716 427022059 524998717 331627752 786243687 700786742 787862604 362407135 852590050 105324652 233055955 388185383 549398358 302635809 531631849 226877098 169304666 199297788 968275719 713813473 414155888 905214778 402886126 999219163 14202448 550217849 339452797 80331719 426818921 761569916 300893430 919214849 969406231 961613353 7155634 959608059 901595911 347684518 966056210 829850373 105898955 316746570 535161443 254826496 896397149 346031592 459739616 336938029 661259392 491576300 794129465 959442057 617888200 773923685 82336606 778907105 518089823 282258109 204711518 815120790 460421044 866513749 578341026 461045909 840668559 820156790 342591418 662347753 235875554 678143507 272343118 531923206 258010237 670709349 639361408 128231734 21916483 542476215 652661252 496879209 658943719 99246539 889648091 854966094 795295192 219226316 125492580 835587458 536986660 106086029 793210029 112644359 44980075 39261786 663073977 6098242 813455610 211982062 193444689 925015164 81864833 872727396 175674387 840457580 709061034 617015355 465937566 985795765 55391853 882365767 278488490 967403696 368328313 768997679 481709739 247259717 593903385 187766813 361129293 821603995 379733188 926630372 293014478 741931410 435080686 954356051 18873710 917915739 537953034 717901136 592224010 811552034 910922115 22770797 515606620 993143122 999786539 188649607 874801040 801604989 276117215 183078444 670346664 768071885 970879909 92280616 990099391 982235559 991036247 667774791 354303954 398515233 670684777 355094624 99344634 855441664 557516855 842938231 876734790 89509269 953277042 682621840 123262229 402406343 514442690 475659484 40060942 179276380 815389356 421178362 206666358 135734830 724600302 409890183 122511215 396620409 376090127 424340682 516209576 83847593 248730621 485775285 939857508 823063180 221409172 212032725 65572865 412302595 724516718 946013516 592477954 715668287 224687500 913940159 513422759 949230873 436169618 148156175 510713798 894937294 877060165 43184620 404194143 619846661 817776977 992673560 396177984 944354947 904096249 704298087 421031612 41233839 14881190 259681672 663976700 248302630 454170200 99601282 514898653 933458017 544451925 931884352 493129833 881244713 643001960 173160295 348843462 185327971 913477950 421778802 930368770 564237081 827718046 818950882 849805219 35045897 793030314 438764399 287781699 82086641 806709690 56523756 547729471 569271192 175509058 202463218 937707226 941927247 695283186 880235539 971137647 987269216 914139383 8015879 598546026 580830836 839689078 296485052 9706730 400972397 849530921 833959830 885758685 895552862 291882585 428676664 259747833 120809736 576490684 721482890 440971858 845206288 926876944 60824298 249828106 813441610 434040241 61058463 498326431 335695460 907553637 164660102 117714908 53537130 370505285 495612712 107903160 645320855 897936714 833546169 634576924 551109085 652504176 825934863 970933409 590812861 534670308 413778291 367732026 348949116 941436227 274797048 632410486 753640998 455735493 426158378 89114378 903046773 679059848 545315592 760835754 387571524 416769057 447991624 8071060 925586912 753263454 99637951 210183454 364551623 927855940 618568580 79313528 893525888 979909793 299617339 97130253 128408506 214937559 143590014 150353421 944641452 544220046 112513622 887108116 737883358 765976964 680771125 415756782 436900044 787138394 585039947 268922185 902658001 333402520 951907369 536727245 551079296 371898473 419701113 811565755 669237466 974669952 330745943 242051620 712146015 197027792 135315885 745007863 687564568 507162039 432780414 539427676 393047146 648627312 549247713 401473825 644200163 498906115 888926697 677946699 690544225 465987144 291566669 684351035 539677082 430031796 81265662 697954683 858351946 609993061 649219254 987100941 968059524 74974316 521166311 51309846 86534665 341839223 90483621 96815246 47612307 931008369 227400699 687519806 999049467 68567034 982489013 610666838 902776251 420082886 355236328 972444956 192479930 546638791 421946711 656948146 261329385 59093499 575648017 835340703 37146523 944058194 279166232 752280203 632634982 928518500 329715083 416058359 914825113 55431163 700037786 839585558 534074759 827890311 784849778 832874895 973617652 271196958 359133185 364867565 39129775 705059809 754495549 492236275 435709772 538056406 845539732 510765179 775949077 522335719 854156539 244635737 511744362 653611449 131735495 714465787 743807057 363380343 985197781 843402835 366665919 585642380 419615603 822343101 83300980 322208511 266391303 834765233 656314640 156772523 65634845 676856996 958813736 911454984 703156914 994443894 805881344 603774478 690237882 357406219 627470032 277906147 10335374 623336148 325009822 87830355 756795248 61232681 334691250 845178363 115661465 149755162 974948986 361454839 366795013 165589811 183583152 806622229 705551108 871560052 220734002 292289661 792420900 111672986 555428993 21167125 141254442 366275814 349682517 20940301 80861741 909661348 474117191 620685570 145373355 992458231 352774746 606316664 336730817 339556089 670724224 927536586 197087616 165868232 842340302 832941026 896317362 239718866 94637296 506677177 220324137 467969359 583375808 523414259 139850371 405562774 714761792 588157315 180770501 413293262 771647514 949339351 734881553 473538754 761433279 163134491 709270662 4011204 476384465 947831387 452942176 539314686 3594825 265027531 901078678 296656928 960683871 671238820 216303513 904406858 682034529 687739745 318991366 613407374 120879955 807790696 152811899 805434604 612693817 43297949 630671204 484020036 740073718 730441004 19029194 208005110 423937866 933441411 211890935 445111815 973904385 419704582 266282556 547187855 362495839 441575270 651202110 970759434 615034301 609643212 710421030 622665657 717632461 206304314 229008373 586430282 39575245 900006358 887427395 244071531 111385574 188900023 406504296 76027832 747527398 977347862 568127971 20700775 778035151 858736766 613727289 875390460 932388882 921228134 501632922 679695582 19455931 143093283 281417354 363412731 388386274 972458301 194809395 48307859 50557523 803017968 870035211 293076938 490996348 289485462 777488909 617448864 198721911 731829473 921419745 817054798 205543202 871342233 527538755 864878014 234627890 240279508 832010513 16283596 604455877 397892226 15727193 273048022 697393467 224224218 249658234 34833492 309322629 266699679 903540785 126172182 676510005 843783849 671177474 733898464 386280156 680735942 260554198 742645906 113874144 193734514 4905474 907441101 732540536 782257260 786429500 88689445 377692078 354464330 651886523 973908618 13401322 107618149 159479175 363454353 353886466 65372118 655106407 414209623 86110319 158142188 335434126 469993385 22810211 509316562 886132528 698028832 887157780 928312360 36794017 246706783 655859372 940807659 795749524 554205058 885510341 607272460 541549840 365804705 116215052 178744090 110156881 735797317 759252768 253133063 836755196 779115694 342895827 654591282 255039631 948974510 142810370 406536602 666878275 168194494 446129534 492417065 145435331 362443379 587806821 520639187 238033037 869238630 995212427 787667630 658987705 536576935 294262093 141224560 769418722 306398477 14015492 340502954 357866660 532440364 413002991 948753491 611869070 294644640 853652087 899001033 105826912 220713185 624066499 524443872 557732458 247718395 649222392 966566139 395767409 166447731 259281377 577566665 228028016 469652708 591585699 812935843 906333143 233234206 962488852 989082220 77146965 56383519 354797008 123546827 545272190 973881136 141132059 449291650 75993787 327802845 449233968 597693234 730208213 546350517 69828521 122425944 892363556 51159794 622493672 439735457 719258606 66675738 477701874 365607922 662719963 384886174 253913398 871675870 660468361 388424557 269573192 617657121 716567833 880938614 313459224 551672456 319721329 739048355 649079195 756609347 873643292 427653647 628111951 585547353 792055353 383474054 639342171 606417131 384591543 762843576 414717810 835115283 112330281 462776646 197843567 705985355 651156087 678051953 51749158 84695160 134478923 535605027 619484812 875363830 332973288 136258701 96442266 350190838 16871723 686494366 692935849 789513271 873859749 667269247 548987090 714834561 171742192 851761879 116404566 683868797 173147449 741333111 699219115 796123557 942919844 830011159 727269180 925246102 746550506 557152813 139579282 580611429 611975821 573756954 995390101 634719300 479383441 700672346 921012257 13160402 205611540 611792188 109377972 239554461 206635467 875931533 854352612 491645667 662920108 697465248 628036229 216580350 837170009 192103113 902605121 675710524 180506619 393161899 338626069 277009297 296362548 440237188 808712438 904829906 504049969 931189931 286123117 922555330 947905304 946916280 572079471 161106206 895135329 674615727 220253971 890139700 322502996 749299735 758622343 420617219 358187945 48611151 584973654 332050105 824620437 342649813 823254187 625042799 906506054 442116043 875471567 427679514 235255375 445048572 106943424 471952037 435960753 817359864 201081440 522870146 738833981 426870222 759810318 758736456 667142740 137021831 549689239 111407569 998905847 118895538 292828553 275795579 850846924 969853740 190741947 618299202 214555436 757736381 739979756 15919358 152769647 273019432 465122141 33229943 114093495 756815013 909004083 902508816 176455798 830127683 694131977 938814927 133199960 241268412 745290609 241900785 370472677 39690302 432546958 108368776 265167140 960964263 864608266 191335931 226189546 663853586 969306307 219269774 703677496 115759913 483552034 667263816 470883005 700537722 172668403 808355267 644889648 890687387 778797050 63446953 597832232 640091686 356134533 642477373 733262324 109913886 6012591 551915368 346474221 202896749 920762471 187804092 639510790 332986646 611051345 961804590 632113145 453431024 497091671 612741992 182648757 556058479 479943892 331883537 136596765 342410694 712529255 424862345 106614107 760155801 229347562 926102343 452188406 582532629 794190973 869558689 145341388 50804290 486938825 825086964 266436729 684835021 100112559 576260778 655112480 183651443 583151311 280464920 519997930 298340211 802972375 332029999 985092182 618872508 324908146 309686283 900198752 554942501 260755383 215875087 44710642 602172711 379761148 861093228 94978554 390224911 132906423 689147669 241805248 835366260 172649516 891936765 405668340 673893719 706607171 728360902 266766141 171093392 313092644 736142247 754610135 173544654 989362462 983883887 130733273 217675176 59351589 397799482 533436349 150657310 756279082 318106263 740859658 339793258 981506813 112765615 65698060 294353811 836217299 904167677 166848846 579159128 907235548 55556514 842358343 775259015 5004268 248550343 852951116 930318074 985695712 181135869 769067705 71726275 107195589 770640452 316537150 154014231 807083015 731209296 226943202 344170897 723439666 951139721 570965135 327610357 385533130 222878338 836591759 51486052 326076021 940368204 541333013 608632332 250588212 966946149 949349948 939835332 171283165 556403380 80989385 910683453 325445541 177229186 855398865 717284573 422815479 317763898 83502841 191674734 700431300 353631557 963916240 347331209 848446512 481068505 457866434 405738656 961360112 813493365 550221527 343521063 998994829 913366845 232399165 337935429 723709185 706478898 275487273 807983134 307378982 508411906 92289012 791627383 845381779 118829029 175393732 292796896 17416743 932033318 409886830 108842846 479655144 726374404 143194718 841423212 425409252 773576844 712169007 395453992 361195727 576765754 95011898 788297904 742312149 900935188 447637141 791655303 537305374 613029687 702175407 196666481 68111645 893588771 788934706 421532141 932569838 121392182 364789430 923642223 196985727 905565640 808046774 894300931 552384768 235077939 91783930 377742198 814098004 486476327 575083635 7510863 597497009 892280079 630328350 100576365 192548630 739678213 25492239 857614149 595246690 518370842 619246229 565698388 46014322 224307839 334723051 162264432 455866384 595170465 757002488 359783194 805845587 839415419 555560642 647040267 605077596 393767390 317187745 949958937 885065641 227408118 260646313 507983686 628800183 255984151 346683924 220849618 350468921 413061040 130132179 171950792 907841991 234937430 853344983 883254196 728797663 888830872 282843742 405925633 873720617 403795656 878730293 662509527 151669711 41074653 566597370 641307401 721954257 139154872 182656611 467004124 450369161 452235162 586823273 678844318 571306311 582075763 204018103 68898148 647741379 466888930 671217692 291187022 610076936 318150924 167954872 606530362 316773848 150209994 29622242 445874330 949019159 759137671 198709996 488300221 822451945 637878875 106602089 517183774 92642236 519665028 838281102 636149237 869807781 41360185 501627325 734435461 994232685 296210685 471758839 249131587 452657831 83102572 150400288 215520491 600284906 368048782 226482839 747107595 129532517 802788003 737614982 741838518 555403374 789979078 145272307 453015818 124809647 340735565 112869328 893515168 520665942 187855510 72971359 467211432 594986904 602371461 507207860 65974276 314379906 929648 208483107 61667890 42438566 332955210 987466646 985787733 523196 470426338 85952686 383802772 604683793 895215480 339155561 564895426 743760120 554087662 659967142 394100839 996192251 357986470 598270365 680034943 782417397 796188539 480818311 539261109 252970167 506284483 913787923 499087947 252882859 436456091 802544283 518733111 608519823 130910967 226940736 132711457 674013768 515269556 836223346 262585244 783995505 275910629 873625062 60446459 803135437 379097953 604484263 457960660 590750708 463506561 35122096 806684166 613599491 995887865 914755552 820949046 679249199 739824523 642336532 175421654 87826994 243623303 430478136 785558673 444644026 277176879 168184306 705299544 477821045 438011908 181751035 649036713 120776869 208322745 650797451 822312577 594819857 251394034 234615599 156044317 70639815 592163399 334723348 204936539 118392857 734491231 711985051 95429068 119849083 540809501 257809311 738596521 65961621 339526331 570224820 256248537 991112752 164426568 526275500 769480132 473367777 370403477 321975819 882828891 424748477 299346396 591986849 784145057 83346780 492316859 524163633 418778980 609335375 101338245 242472880 717542755 293674855 820351905 880138311 55976501 341059627 859622875 377634461 733314675 460949674 634109384 360643690 396642479 86762855 930634133 661495380 938146805 242989518 670755941 34411031 417981432 588267240 501689509 917784143 266588436 661646019 581313698 142246714 465751523 791049626 168196533 702469814 946571282 419709341 378108739 262909294 639523748 314824940 44140822 497054665 387692583 825758331 499665771 6968287 545505355 553707614 290979757 157834654 485494805 435617397 67872527 300771535 236101648 101870216 330472390 107599804 146076182 435306670 301625764 656321224 247774729 457517846 200043048 571710701 306173608 875287446 84234375 576042251 862823611 692779560 638267299 509795658 412336157 123898142 400861540 832422882 702564379 542144952 250547165 199515622 428231652 172364832 674091612 658910280 498276901 634167822 764142597 643414473 463757858 88744872 99233199 961016263 270550163 35607609 747949669 279564737 921992805 823953428 294123618 319586161 985798801 39338953 163905170 475759940 384621648 680765434 663417320 920723034 488624788 49651432 55356636 279630842 592437449 12599419 398436502 917495665 735761383 268975462 894971906 755975323 429146399 81900304 919084867 438211157 97655262 313020274 294696224 922884576 896324057 941129463 407277391 117874942 53321538 975377763 248522247 18029916 657138444 205506940 217745037 957692201 333657800 119718308 803611843 502069297 626744197 334168220 445820245 597953335 612135900 804297847 222570847 77109014 124753621 139006348 231084430 991705704 323835267 656199036 17936331 92220704 463174508 557802205 370876661 609560370 315647425 241385933 672223241 130011869 975668567 810518194 702833037 217023869 574646658 691611728 54509780 722296814 700221662 656388086 303007454 510244714 727787065 917786548 933533051 631459050 892193905 796515184 667451772 974144371 39397787 709017576 232589292 10908062 590792000 809330841 297103751 397511180 635265219 238016140 460246758 136961107 388472038 19319102 450240164 190508905 637781260 229105670 430998046 221563073 31122821 51641597 828260433 290168061 803235851 364047385 265607692 515531586 285560503 108936233 405069427 835222746 963586829 238840977 62281849 205718563 658308327 848857735 862689015 199070483 571426935 486764284 178505842 883116300 871321151 623063798 691393915 934827660 198046895 241487711 551287365 290321191 904758569 726048496 816305551 776575431 132988945 549844666 26608537 343926105 913497738 510035605 74500328 379714201 544201738 422220682 398168263 504329366 65814342 331660296 772967545 19442492 991188805 267334305 464762694 491900619 780927448 240185661 145886985 122115388 670369389 943175676 778351248 941910303 219961407 942114031 913732555 672857028 163287550 629683872 746063904 971758159 699648956 477513310 738402206 120166285 277289258 302255398 230591819 849575529 524127312 969264582 228611844 718379565 729288810 328355854 802434541 658484776 333998231 905381108 728700720 385737606 371998892 541544566 525131848 264359426 406409210 478842345 681127442 908861963 359938662 752217164 672833641 975620278 44366259 154693781 155264748 924449642 745966145 273950011 993165973 379525097 879669361 138880214 878045606 170763980 998193206 35525869 524180264 866849725 543307783 779998571 269772906 195345930 221860137 508967937 149172485 401162084 835024908 908062769 320002053 859012750 240793890 307524967 578880923 62813756 142979064 8474297 551957805 402142473 262882100 327807976 592065045 241408291 530027745 700827623 254013824 907502624 523690854 62081899 835472382 911191202 854831865 802573840 975560507 461650109 709116540 965780186 152587472 535762862 23336039 534114041 477465788 313351209 537581349 882274559 578000071 661961632 518126004 276538780 277936528 583370801 522259200 546681539 468377340 226580212 894028128 508234032 399573652 386716756 630132547 154655881 587406008 276327283 261210189 689210832 445629649 591453286 643647405 850284512 787321518 309059823 770557098 188137355 447341964 43527693 571777532 207211294 389647997 691851496 301762229 256007771 676849917 861684076 917283095 192190826 291055261 835736670 368561408 729487745 60473235 43362277 196952454 622565262 938929683 568772317 498536180 677499363 982887369 715291474 971007910 518687754 119441790 545469789 837687498 347097504 824751499 821614824 297078883 221155269 217428252 574729284 303927438 853979884 500034787 604197132 691918223 1705600 863769130 436342536 979628820 996647759 373983819 498168501 276388098 738108865 637039255 89056021 573449145 846251614 991374166 713691092 666567104 214666062 27633528 783133451 862383710 695680257 913452734 549374410 225687686 957284243 145456113 811893339 330822117 117550065 633238055 744483163 146404488 541068095 300604401 4275525 732235020 244851472 487074122 965295150 480280252 225646928 342632795 170106043 838697796 342833062 973725759 756070888 188030868 805527053 339449326 620428330 262310997 286470829 235923308 402699415 254861030 528125625 274488620 929053996 11135241 444466243 220401071 969873508 463781254 849489102 179496548 523804043 919804450 513889925 553905020 296794223 669014528 874507281 168246285 91445882 823102587 947581090 368885619 752802979 346494404 115009698 938623827 921418905 576716997 149977648 715734262 612848751 226616847 829083615 172787847 190334520 466736208 820112287 194659143 408639913 418413959 966482462 54216180 29018996 275541800 596343967 760219085 264620031 805511680 831224114 200802225 98740126 322180482 782883073 168414319 949138506 353328064 651006067 899014363 988799434 891422917 777342478 294004438 194641044 768187631 92879552 69010153 217304718 105055217 370447701 736016028 545334379 441482078 515061300 939898042 738600859 86242173 102168698 895919082 460033648 214484789 171575960 967371960 467066902 105016757 303874560 249837337 815163528 589908062 116519603 593965512 483571554 762112654 467806819 933665004 417314654 96687546 460859328 237194485 472414677 617534302 135925882 203545521 675096902 746567907 836795960 328629091 87773439 826216418 633723293 58960955 138421279 948149739 807202793 162524008 554196884 534741125 467769931 409063467 232310045 961683329 48117259 688384820 120748374 411429002 4015570 957670989 834578886 673581118 898596432 828227314 115853501 562363749 867345554 465568176 56917844 978046271 948168004 90265898 864104186 523025564 608428986 53021642 749098387 395668916 349441195 400311270 669074714 624344834 4968986 799162184 550390075 593701809 600464001 613581015 810216112 784950073 343752890 372244543 8780551 988964156 612926006 538280943 389660291 129381552 875478952 195567265 842344947 730699930 702081314 439702690 218748293 919273758 227710477 801763761 181003945 653646822 414614183 297954065 228481781 526746587 577036781 661836200 517038134 860173262 993085981 882612517 730040167 39570683 114777976 835334616 680270935 83509838 948768791 615155848 427213283 820300340 537735381 748940255 324866452 214850838 419958957 90057062 781979672 556812800 372500013 234907761 742970173 161044740 825207692 913075499 336403195 925104577 776181544 995520752 61721299 736076633 986204540 28174362 714408406 270907593 965498032 119439128 989555434 383947662 377871900 873705458 526132759 633537078 19608109 630571776 80807351 501201328 264124040 614729913 471767590 752770106 973230225 18517660 308945574 540411413 707739701 773379524 253679518 206146022 181833348 987955024 879884964 733661517 505377280 896134245 205534087 750615568 421512958 57731980 570670536 926716749 558875697 775992870 19195293 158230568 878234352 965608281 887822940 703811462 542294570 692378942 210815873 364741579 977475135 404864550 605068797 269053322 861001391 567411011 7138993 372144944 885279320 875263121 305161148 734743563 454410420 584095665 950342462 595524338 591988897 619639768 433984338 105291677 163963818 563252875 484641488 623090246 106031882 836782416 141636287 30304695 18185371 283306821 990246303 679328422 930379026 239811942 362360748 690929712 732769336 69280930 128216216 975169782 863346741 137769810 949324782 863697443 954553421 433098849 178890716 36443097 259576476 500547043 644434676 528061338 554001708 765732725 35603094 728830774 848005590 800222120 580064901 460635336 373987002 992796159 30023190 947495897 551619996 181459107 406084028 497354249 108980778 386288235 260646444 387000821 400187520 403952813 80312365 579654602 258877191 382604581 569543493 100326095 495595413 105392322 506520126 352102461 202828263 668741545 653741152 705273330 599072041 756553253 309733922 421113545 734600074 706094774 55573332 867476598 892748320 532998547 939339564 260494337 188087091 2008169 179700363 320259924 73308929 783065062 898904126 450344071 378341493 971751487 486866699 725471234 526902355 624970056 679717807 220997178 294048377 987480632 143971555 190034885 409705720 454706559 285835822 794672084 543953729 510570775 778537605 693653373 746542212 550731963 512184498 976671067 866981764 843415143 241313968 101979085 220493008 514937507 913584364 655860631 679320488 690010821 869921741 337211179 173915439 134058932 771832018 925766949 388055037 707443281 682460938 229003561 910090423 497769131 45878499 182698416 954626117 52732084 249361254 351868297 863703274 974133693 703735436 272700871 675219436 508481030 697863618 6726837 374591115 506101813 48761050 812177271 711757944 700731186 860951142 106153395 984969628 743613560 800571060 540967899 20038706 317852856 90056095 580255327 359654276 588746006 495842279 364912601 101254109 590056724 685778257 130134441 834553066 817461621 318601323 412016989 236982371 179830297 543272688 458077690 959919197 465433639 176262165 211491334 651590503 539365359 585875357 607800392 826611867 174031524 393308667 267721913 862637555 99701599 510339457 608392890 472720987 375594124 139816920 254952748 162212496 707430294 754253258 677630663 333818421 325680764 120537757 880618635 154976940 710712516 851653789 236355787 219860236 465236981 939304581 224330762 61188082 437997228 266715721 1910260 442796328 166594595 550736276 726667451 218573074 784586747 63527213 502387208 652348363 916429671 487391474 228756589 310512784 133752875 255272152 159266405 533212438 132889355 354905291 44974959 258455161 915254030 410823245 537960342 982088631 681799890 143453017 535010515 520812333 440799070 270126394 280202911 273419530 636204113 538977354 184117246 702082381 693693288 929535815 351472802 536593048 166484279 375688808 149695249 293080496 947069601 855679766 751048180 784774868 160523404 650755554 41703449 157349246 58332972 426041266 703321985 906255980 126787 595731742 866179114 167967749 35949208 327732612 345246312 570866999 57922608 258703505 153116894 267718128 285018533 786814547 388224263 941224952 251162010 57902082 737301071 849594983 210871176 97078359 99568417 846581464 663434466 299486598 239986671 540696006 915456374 232567725 232124699 998937805 949220367 241853941 435664684 844062522 393664054 852768580 383744859 460597061 577525556 633153145 905142225 686170373 146932463 329642402 979672476 540733947 542771883 486834223 71153020 209528805 146388590 495753838 840110514 452441562 327158698 630261615 43979839 722927356 295504513 744359391 678484472 551672283 814079506 130511353 368113004 770077793 946612224 980384746 698769776 542092539 425511410 370461188 247239137 102688354 389887099 96584419 929030542 424418484 151363017 825486494 420811466 816885853 679390987 831304685 785116243 556705041 194439141 971525066 576261917 601880374 60230467 399385377 943689193 435011281 508486382 96731387 85358116 996636965 902929689 633026830 786584262 364360222 289807448 802953008 800605072 811003678 729666761 375499756 789215942 621783515 871541082 85022378 751642003 142219315 181410952 268715843 155096712 703695020 871736704 861351739 917858869 180808672 386502265 993893842 690797981 257362194 251887232 866246904 370562712 983622666 393243495 491637188 692412625 721829657 239360115 922397638 432432209 260590522 167145838 932481368 788950285 373574971 177650849 868891672 898958284 76313068 696200903 347259520 259655430 294652386 997067059 370687323 769063266 37364002 224314678 799138934 687123020 5803190 271423396 947685633 405083776 88796852 879239528 35643151 369910238 895140628 649125506 305921500 537756509 976490922 121416068 710735645 64568725 338768793 934742021 383608849 831646277 440894546 659395419 42250681 180394199 393336022 638445518 771087114 510463856 106570377 358023971 349208818 89782257 361041650 859651671 352530224 95844240 296899088 606997962 350038949 424999223 281620333 2544457 874989057 166142712 861752828 837112617 558918543 537294049 107410385 471551963 873345655 850957691 9145528 383831280 552767038 792540450 132358324 103348737 100253620 852110033 472811267 725514629 160643824 707318880 507585945 350042630 218050577 13641793 219059600 500616673 922961251 644475813 488999720 397219922 961579613 483933044 961154015 167516132 536084300 171079751 953676408 774319927 795456864 280426710 961577181 503818474 241336668 666221434 656257818 698786712 158278016 776167491 546800139 855814266 97418304 381702490 905080266 230641013 862401095 551832636 783001387 494039664 544459121 146833095 468062208 657869740 449560692 700084370 224896005 293992904 287375971 198358866 532551236 273136142 842272569 705075456 507189914 373512189 965481883 241538559 277526396 649188876 106780714 583742986 260688117 297233550 190570813 306610159 805916655 266085764 887120991 557866035 467312896 421018594 427237181 711822401 814959944 645777792 171799371 20576811 732660300 202253814 488768632 262003772 216732494 262505515 700145850 440855429 634617042 298160985 312570615 553262713 345677471 642154877 26115660 949444915 758896979 438067724 101529410 969069434 794125877 225388695 945947874 77872700 229810239 701412727 453566219 220341723 240624913 410860339 825871421 726270964 110527616 836904064 959480341 871872944 450989181 319956224 614140646 684569386 811682255 690516072 624545535 469258147 179011154 157382393 104877893 38323285 992644889 365283895 574022243 543062518 538508101 918683332 727485884 105078794 700926418 233244509 815770459 854956199 569350965 994955657 428456185 767930078 184334168 506106696 792432362 293173472 716045957 963938289 792528379 525908826 218260997 906746649 383138050 391250845 853557170 549040513 729996471 131231866 560897634 170037511 477234297 468470715 405067919 37224108 120872038 343302882 863842338 902113457 637911653 138260029 255361200 892458481 281264142 351104437 296053482 847738161 36016513 421540729 932081988 374691603 319835701 88840743 251770454 908982839 10696642 959275665 173279380 711110562 602034901 746417570 156047342 554446191 626213936 625224034 414830465 609318625 721401973 919027582 468922862 630476596 415343806 104995407 253701115 676032813 685481990 478114893 710298745 534636979 285690024 927272753 896340377 474671316 880142250 190542876 107439881 662347472 256077136 501899865 888317555 642521259 837305081 178254081 841908487 493180058 855379356 440189734 839167203 857039509 981536612 389842548 936822833 992971590 964998306 110242646 115308859 140722744 904568299 967656305 122092089 369594806 21581303 719114257 93974944 769879038 529696146 687902882 561893629 566966853 885405842 921831601 75671307 449785708 309979236 1079581 986337343 907237643 166711404 562820696 288259205 154232031 35971603 931458982 197021216 716230354 146930999 515927161 395847859 395127727 274234465 113448572 511682010 705290231 698348197 210987265 255042188 704168596 279811982 259784611 439713621 902064890 915387240 308864673 278374214 381024175 881635704 226041782 722699709 539880324 792561475 744750980 86984752 470815443 864709198 157347010 642013801 111498451 554084893 873890596 807241106 628800273 604071085 834046038 38121003 321783453 382837958 678091888 42581694 156957144 462973430 391453571 117679019 664546525 91965346 777551038 390413948 305038086 484510877 295103121 31412109 573723660 350253947 892691335 848032553 812382159 824366458 490833457 305829101 394146637 754837823 204551630 458933555 110100221 151014837 217578334 448112272 104688539 258247371 950736978 860883651 836876098 109762993 77857021 691360000 897081230 719481147 834392155 873355500 205916386 671111817 924084786 198332153 696810878 685589373 185527360 312095884 300873029 642121900 238429029 713219303 814459739 12421507 283149136 389760993 3753627 576106685 748971641 377329134 580673470 296672388 871158497 628021600 129047071 337125489 847886059 23372249 389922608 652651492 340121641 981195236 261683446 244438511 53265896 198060830 190798909 488537858 274968209 354844383 731488023 84534788 454283563 314508628 48517240 315667852 12562025 332303661 6676393 422221322 832606703 848660054 391020915 263437992 397411221 655746227 935441484 165505766 122247930 707965500 374752562 221069605 636896587 895274948 165750014 586813975 444490878 864546275 198995851 442635450 538860277 355585695 275539854 382971062 929351754 880590435 172475182 440076192 138365411 966839930 875675840 146225358 414136510 427411357 135797147 51632659 547143775 350308320 535283693 545716217 868829975 259249354 508675234 964709462 559131409 38340246 586346668 949666143 814664817 425486410 641914774 354784187 540496682 477034819 498702748 794287168 486318420 680022035 807911451 454833780 536798274 577467434 270359471 300239694 146497765 92472241 365317914 814478621 456673075 83074005 402367109 371635265 530267131 721322621 600037224 334450358 880949075 198755439 673977109 514459302 766164233 304523614 377674617 220392415 698361372 790409867 687122194 476365280 222886787 908695202 283152195 300354721 84108107 217102322 890850512 485611911 164335253 652203801 346822476 821754473 442356432 590899895 41544529 852739785 277311947 519038762 773825082 983235183 62297328 958101800 356586902 863102413 774852451 204040916 508789337 373509615 577843955 585079503 833807558 433744963 100359152 815603168 272082806 598720454 163034674 613186504 505692992 867671303 341693242 304952962 798312318 14784765 271129427 992692222 956093323 104208985 742955294 315176148 854694438 96658770 528592320 350922797 729493478 667085127 746652233 926158978 440062784 814917801 812156078 929152002 788941298 2777862 335045058 524266905 921085132 837179720 708165725 187479202 174544166 870091985 802928757 949696710 560754220 57076871 570783336 654209054 398020511 459076433 125936722 183053428 486259922 435180450 839894687 909074757 295178631 910247271 941351962 712881408 275135511 760881183 183119680 884726497 852212909 898600715 701743441 868613442 750203911 705797572 752569364 204208275 688114454 667585988 270414823 282809181 836884337 426536389 378881866 993646015 60348322 326071554 637419448 74044736 634029030 535755113 635399217 727660003 723960109 665845596 892641382 597166849 821114497 24956838 317632962 811582522 748687652 535821185 455848290 451960403 754604871 695243269 511984178 910460099 868776378 247082411 903725078 756770538 45370376 163527250 576656301 700482653 770993181 889613513 917513784 811148255 697955705 627974689 191084025 450371712 483109919 456648610 716754925 56900138 604927880 509259748 670311889 855828983 467395314 111960259 869354179 91676073 135348306 659637903 219052594 627629724 839164546 58328726 495656410 519531293 887725073 356902581 30110231 297256746 37867122 747616630 796308574 775352914 880213514 410420202 322981674 304009576 614840800 880005754 107958067 353794413 134885117 230529083 148424402 125751529 150121856 384622436 282654035 867959457 955228698 122665004 817262191 921527261 669861280 191522407 850092635 45781939 597222898 664780459 202215887 924879842 674679063 734664766 99286904 61166484 250887188 370481538 109741886 258102806 696008124 256324259 182210423 950947817 139025073 637014155 517006964 85090702 599686674 494599378 303685859 342577804 925070484 543522308 468804960 518515627 281576711 276148003 238076832 144733667 835378401 232934729 675760192 850891777 958572287 551226637 438629348 42148430 978227203 195169879 183561843 955045530 58480763 859551005 546059736 428303760 61217181 23959554 233078407 602140068 626326471 546679320 100684529 204361463 123101390 673470734 346751298 60638372 998326726 402487956 137711935 300005118 940175907 158177931 94014493 139426187 223741515 110280527 476583486 509193662 798448728 905188966 324454859 597128123 246669845 136846853 917814672 21800527 208190101 558465704 220413956 61847383 267121672 739830824 712041895 337454327 386034351 199705742 799975940 910293719 366231857 32174323 552329905 50931765 975541551 858045981 391275262 793869014 3813388 138055186 388399850 789253041 685338015 498936880 316043993 408196229 378415384 259611127 834167337 218417056 70972829 577090559 984304523 381946951 265332561 354470962 945167720 211878913 124278360 733517147 33465456 10254017 784859522 542839616 920286377 381401916 164514982 852985353 360718141 576957311 497168861 229272606 899588744 971065662 100532627 849207804 788504582 737629713 185656286 498609131 191140705 150887996 721250020 598708183 250123386 40183011 199371370 742518946 56095666 767281872 775065138 571162467 806984332 534619233 802413484 698198870 702366219 500125487 21125969 309252777 406770099 858858846 651746513 34060095 372775748 689887007 962492281 582270383 644747455 393619005 765765903 782065235 40274559 675494718 368147615 783580437 114560330 103220022 394651438 55329297 711533772 369026906 626851697 932038377 622112401 28222418 235767447 509555518 356125495 385446532 682158889 797730426 3754394 211381180 522450413 282807138 683614750 366745955 177386136 870296260 787593198 53424018 988672899 132667081 366944435 776689675 190881195 287402718 497149551 226138372 717215734 290950499 430330074 973624642 721012850 815241641 738815034 44322651 176365388 845080588 284031821 869394127 372923509 129311119 743004801 935356860 438251300 361753269 990142339 300032531 484416839 903094939 790004852 200132989 80455134 219528365 144358673 426189817 103086161 525727750 775872699 91145636 630513140 579903920 105747995 929093839 590116588 719245174 584366352 998862431 703757211 235113938 675965691 726536490 800038011 850272381 902347133 313521830 16112076 77071994 89843680 368752150 714005145 459328991 604682175 296061904 607351912 956134261 708794190 50119794 181583041 722146564 833212710 873376331 74153460 85280793 310419611 142851578 216236182 971930157 356954221 783159695 907958120 325273345 753939480 721392594 668799508 828051755 63772625 526521240 330425026 599477651 210283741 830756878 109123204 88196677 612495371 482313179 264463115 796853764 539063089 692670511 118837 455330902 47169795 824474869 557413625 179733055 488406063 388531305 223419112 75566125 431307783 928170316 227763509 264964446 339060874 92659928 91212070 723299819 697897305 523132778 756504303 675461526 807797801 504913002 33284360 23659438 565715768 736266927 423465971 428573087 978313302 43281149 629310624 621247644 79356408 377440882 975941850 912045106 839317029 585819219 140897616 833008567 460219555 287198651 640345303 755604015 787610297 518616572 761031432 639056154 591756096 842138774 138421639 478136105 838383194 8107005 890678255 671742834 452624781 148217958 967963724 509488978 246902184 928061892 535231389 857141669 591256621 531575265 311664380 569408354 696243788 753344813 154096733 206457444 831103924 4526336 791579789 11669466 508755493 948661692 658408353 925966220 111808657 418424190 641469241 539443142 719170451 757145818 325618804 703584700 118948514 926826913 558976257 214118262 188973987 561813928 830069965 542105008 117720818 513939054 586036430 600153428 837905743 179106674 475443370 631573275 111315574 569535460 684598169 74929217 791610556 584943008 266436087 636834662 500415013 621870387 595829238 636731640 796166367 485531142 666425424 248037564 434504233 926794809 388463420 394530133 691478684 504368906 671956199 365500008 90910453 301139460 403733077 598226314 851125876 627235116 467887008 813561270 490419399 613628265 204734728 711413210 778709775 305514130 810604302 835251569 520840458 708148125 262183610 272762513 516471151 596132778 90848231 896764082 915303341 428759334 310368705 728639560 473120835 599999889 677576141 397102081 11681560 438265588 714316588 154811759 154843619 350439108 451527578 478069054 434049463 593997211 649325307 580711028 683747683 360829989 315912921 212921545 293600009 288003670 121428553 275490739 933469943 492713521 533659309 551641436 92412269 337158543 83721441 376651503 58584770 631601629 344499961 567911490 958446247 100436228 964136537 180491951 564145752 966112066 926830502 482610702 320045404 512281794 311934644 79321826 839969130 410079076 756626767 182011236 749932183 279369328 542479375 938092017 403806598 268425122 187386517 22554285 529547087 209970315 898558401 136131928 764021450 28320281 557693465 906793675 902212619 296890766 907328626 745548086 420783649 564434126 233287688 504017070 846463827 61761278 219606383 123005999 852209996 1491913 868027889 394595217 795840465 190350827 979571141 605747356 121437339 102528137 569604552 558370412 441288719 138070403 510684591 476849275 855016923 595292265 874977496 552036666 863556205 426487135 750231791 936136811 689538101 888385388 542465118 568493226 865065658 479479081 695540357 397217264 973431282 631822074 236008270 35224185 774450584 705556760 78305666 61007521 570587048 586123123 133662471 662464729 881355102 59682540 869898309 788183193 395912609 585508977 790004949 961337361 994326720 125449198 723458194 325537061 866528840 733490951 939172752 325278695 535433364 223739856 232941528 264179932 190316372 659943113 228942055 730828075 55117981 86924080 26337180 526324331 389448287 622143943 863455251 575439608 622429639 333739024 609308215 989116833 341452523 59861922 800408981 146495434 627464769 180319380 878012532 713327405 874516977 940922747 136013260 280102746 389808380 626143220 678621989 72801965 551321176 748171900 556932467 511877440 84128864 663757144 902683898 302770292 32379058 285442955 714237104 841068952 710732739 755239732 360528013 18751815 848103204 402331033 514608048 132838762 953075103 882322483 928369888 208302196 572249657 2251824 829677835 996937456 109564049 186319665 256081109 79703241 630509229 690748616 812419878 434526893 234846099 785325483 177487382 743721365 225356225 38861011 724799060 770556071 632943363 305395860 792487831 359501449 934934365 665820207 193014906 481252860 430270625 140058910 406707632 276876124 247316894 907852133 380387393 220922933 715934244 911047509 748224418 868594506 741800220 345497784 808561637 998824657 989349567 343481266 427293308 783052390 264608115 899532716 219617353 722383536 732282074 360862374 476920234 260403178 531297948 492804956 232157342 392765605 515500161 340651622 990144974 227548321 549200899 163754108 39428276 402886951 178721968 755013028 930980497 583966152 616634028 419096649 371578736 184025173 446213780 258266580 215086757 472499444 236835818 9694764 919958754 424259416 360210108 826369541 572039170 567758786 105672972 4665361 348851211 52253544 917311097 866514017 19877701 416103461 91210325 789421244 209184666 923846054 82302160 723894154 686993079 277509886 989239744 356917616 198501382 595886732 679984451 632898843 3084244 736125202 948671777 16788820 171257140 450572952 708941970 437820709 449490778 408998747 304668062 430485069 665180936 262423086 387420730 365313304 154239855 355071079 11517159 599836944 611360053 43696256 366657095 794778431 369524444 399430783 879897655 894608755 250121505 173381899 367353579 524459762 527845778 938099809 169795024 760769438 370817289 490025991 913372177 519203116 996226863 867658579 445634712 808801506 227140389 117271622 66546893 385015428 715839874 728045530 732598341 374515573 255702779 645336895 405005118 626607753 986641739 942927386 452538467 147628409 264271912 195941952 545808051 62513807 249550660 975897727 282202485 507497741 949587618 367774171 997889462 977036070 165424344 869704875 865887869 657521332 46919094 15362668 368216949 471538741 534235729 782959958 149245681 282940519 952795652 505324881 808990230 535701054 142479922 65687173 850579455 907941403 92363690 304484529 596665107 788976143 260001334 984794789 444134575 650098767 711704234 186204208 511431731 653199066 287071182 494341448 233213495 44355845 793346040 838727551 205720031 427572807 639577277 507233044 492078331 717186348 457651478 437537226 511770736 295136031 839881137 929626472 2361727 295482374 550975115 713130451 88635423 478139335 705719591 187545935 719176298 108960867 450840398 598513850 266108901 180490279 675154272 352768457 495583880 41497778 67595295 970357939 846773182 136269831 319679016 645108168 823280548 166073538 114504795 64199557 703313882 562340480 500265589 318239556 185221613 327786900 942694031 29835792 727021879 483453235 729785899 602581970 744467682 140094833 965914845 422074551 340132364 431702354 878935426 554194214 654725205 361610578 734365994 873559864 347918132 282825587 909452537 435503715 715258268 129984625 740809881 733540334 262579078 973635689 142585539 162837680 306483894 356321072 934817685 448532778 776212328 966689130 827097804 732642454 922171385 680659854 608708602 897331577 489042947 940152587 441656738 896958622 508514669 232809396 995657251 249426606 592992526 948834477 649049766 930660439 76895757 874130367 640444539 992008478 577923592 480831795 362996668 355591530 704018548 560715795 792612923 511322524 2169482 56561274 931433339 556694396 265380219 800995676 242344775 753763073 184404099 103735843 402151130 245366867 660808396 559244594 878772051 811207799 519098664 910142038 166471448 589931987 316494022 463856364 389425257 869437845 755870739 743209656 969043729 460580 318928812 989209226 11149650 952782277 401235305 758456435 429613389 688129823 452683857 146128233 691717528 100071689 119033830 732309293 23480052 185870095 65502762 307175083 418945827 235527131 194482040 571119875 597445392 707205453 877114225 860280658 349857957 549522654 645225495 890818596 889504122 874644272 341175920 686874377 598246189 228065852 746042695 63361970 516503191 181940541 220673574 82744966 931660569 878654438 648890952 996124499 452344239 164178649 855146564 521335068 797108735 888560225 576627578 898989442 889822851 686817120 934158089 469659943 571155280 882174629 743287814 138845571 983904376 933333267 697601827 65526696 923645941 244580319 867997392 284219235 252319211 925307364 228221060 940587510 412579759 173456436 70792883 728807279 398786710 510381064 380213574 239601722 52173213 324799932 935560992 814869597 436604341 882785657 358351999 430462694 786781566 510182712 928458398 559453964 858052906 810643641 902930347 674214728 964028040 148565755 581305249 265994147 555758560 628954780 261646872 718045396 32189398 482235011 418526196 248825802 307458453 889587993 292800641 867570480 10235586 327089933 767916576 508220982 186912761 611957348 85143637 607496282 64470002 257496114 913349609 96874895 646176918 225050958 475760601 696976719 292645012 419848358 14557642 728491674 827980130 783157877 285331180 701903196 962292271 309817914 64977925 552223820 718504400 664469757 432618765 582941095 891790045 239851937 357612408 190541320 153587346 605876427 412415166 624521560 547692085 139439217 224602527 121961463 908014994 25580588 204253120 202577484 405890946 406330758 443492981 672990593 789089721 473228801 190659315 9765044 435132306 536702312 852348931 468471417 407679817 69279433 793987041 73110948 322527335 926211211 493742831 542422580 308903252 225360397 342960981 603921558 1076470 306917849 735229538 161424355 480265495 454406342 337295547 105778673 637787131 589251042 75374290 795455745 93603814 868880521 202431180 836976198 541660429 242140692 669713733 437552286 917916457 830488065 880902117 671683841 568498957 143610106 798912697 700437597 781006323 578891476 575897732 316679614 948879702 426226504 364809103 207106476 44531104 740070731 95328575 881069743 503196984 606541771 252349394 386100000 515275673 807720569 881627905 642295530 852376715 572651758 502825400 10391611 992292278 918264510 489485903 670262428 638132729 421186780 495027088 98685068 504101060 954631967 728160585 667768031 872049511 354010150 334288289 956539966 703903636 594339912 516693559 843817752 964245850 52636318 403390417 143012870 99979945 543981754 920589736 688310902 407002140 139995811 997112964 100669408 190830425 16219416 181461240 43479331 25552886 318626024 481473385 401313692 471524611 165460561 368649177 478674144 839817934 835774610 934365489 486667129 13458485 269887070 596035254 347669752 977264556 8082435 461765825 414897155 993262395 766834172 199915200 910055451 724510407 233049299 917505029 965836802 411079844 936971666 407406237 778811941 9727366 715377106 941971980 522059395 817658219 529036261 189893557 210303355 464698905 464542099 851172398 282446343 351305077 809985916 401391237 35850048 430142353 226318666 801367663 257457488 181229032 771736889 126062114 370542 649746704 638640148 83628810 132744229 267221978 60538497 415823390 611171728 253143182 990182606 357092526 775039934 508199685 441981895 224571552 62447473 206420178 749251991 471874462 918252966 707085116 765944713 888250778 474920763 806993363 523232050 311915816 636346654 982647317 127380711 507478193 706214476 226651700 925905523 700003053 844628040 144159308 445940759 537065891 834535054 67509094 403270466 674944747 188596062 25825695 447837763 514145258 129564180 667419221 140016114 439752292 548489283 565106618 163867968 976276419 773187935 100924633 949178659 135382353 762154842 200870002 414882127 681882991 813207676 844425075 354935972 365393269 123696380 826066850 252318628 339010657 7801590 815316106 820313419 229832834 120241449 350998406 129156215 591179782 168116008 155538186 978101562 871694204 202901134 67033295 80757712 967606421 793553144 328612117 554742034 259913288 873824694 991899818 303887975 940729746 812477695 36868623 854618161 191314317 118628134 644682913 325577604 247465459 946865564 977691510 313482302 772064555 567832395 868882973 353230440 778890863 408968097 14301261 723351034 403873547 924933293 50394679 259875966 146183562 116931194 656025126 590928165 419203885 633008577 534455513 534182881 271873958 792094797 204481940 513969006 758522625 492950866 821817104 515947663 379973472 82342803 847183360 968172202 950055686 631959513 867296292 269992532 635880639 901353457 746590300 568366542 819006904 43939068 364980927 231060263 830076077 166586516 801760841 652821539 286135871 371513319 617388897 469894669 951371083 664281328 413487481 748868028 457103044 470253627 75378628 682322880 432447131 430784330 77119105 174226966 118794215 319605492 26346093 274416635 862802976 121237036 195469105 844486028 188845495 691342041 912333269 568158719 336110848 727611980 952544437 393130386 171616202 534991760 318111956 930755678 627325795 751600225 316840877 522367186 433688457 461068258 795691541 158604256 10293265 902025409 308376664 382106476 595367090 524586002 966249054 154424453 668695109 285065696 696152171 968571120 226863820 202828979 406826622 328778897 660079303 638486929 826275374 425376580 855910639 994910709 500981942 39788490 437248058 596251429 264581019 437229476 531053998 692167456 92535242 320904556 260021223 766350221 33754100 870975924 860313135 837095219 152415330 167702614 515717530 856530467 609261575 34334578 134894802 527596055 382124512 450085516 300768223 916192977 205644572 914463590 603937249 645671549 554051151 727067420 82540087 158920752 147901408 842704797 825626089 94828146 44744962 177904593 335695311 626581326 527926620 612529725 771425579 270965866 358192138 605686710 583287863 166453518 731962699 375854052 915303237 478822872 395612114 596511473 990918637 883897491 557639458 720945533 873715949 801798341 928015429 132103053 849907445 216687115 658351544 349443755 842853403 741073934 710942143 916030915 888149189 885780446 348713849 833318502 171241481 566994163 909187350 933556647 179797470 861316585 654697947 956409391 503634239 935856988 441393549 307643157 635624224 218648163 390051725 841056420 976206820 581458267 728866575 266899955 780775320 703705909 733295511 126464928 908322352 569339131 172399504 685912740 61549403 271978810 553291044 77095959 610107279 277117846 916146760 216429356 577794934 619258017 923130515 134678425 87854014 963390944 706414833 488879093 251168524 480981353 667440953 920559546 540469066 324288072 692849164 848887809 359796441 893508296 768782950 312163027 75474559 488974651 788506838 381739866 493332368 682817904 742168122 795501299 649657732 316811381 24770894 569791598 834112177 925687053 671537118 919518537 106357609 613306508 979822843 782235257 370263506 566934353 891389213 229581145 66719820 190578986 96897476 309073736 366309034 56562697 40949193 552468682 207105120 787882502 852001533 716653384 91646430 928592471 518778248 195175535 559759196 744988905 280499986 533844183 93361225 741079635 447082398 410176280 710648603 783167000 46588268 874747427 122730839 255285256 446053899 980069269 356226554 346187219 250680207 8981639 863475705 50856612 99678918 385749793 638668479 765647732 632614860 133236795 323229955 489667740 413377877 906886528 850446203 902173903 520785925 797906634 435618856 758954229 175719570 434825552 112588017 847588582 310882461 133279442 356946237 681293367 701163278 307861601 312476894 948012293 811886671 259331016 694845207 494619678 321514723 7248225 613280698 131457862 693345161 572160660 764496283 868573101 228179691 610418814 253827964 221185660 918810154 796259899 654916581 623473718 645428023 512289807 324357807 995317702 463827181 292542863 160170837 46070817 337789658 814528349 778789481 320672271 186778834 579845256 145819666 791948548 23464145 313406431 476547115 215822113 546252227 403601855 696457228 843979809 422041992 844007739 462181464 22350206 827579429 686715948 415992855 313444283 311656655 774416353 930599002 930437987 912146874 615945565 499167273 522212949 86668359 647451088 58771615 329497384 181047045 66086792 78621176 564332533 863460056 63307671 722533296 622983698 31131969 170702193 269282505 493143122 135846072 311770166 639039154 906301813 4950864 564477525 485959247 421435102 226836988 716814681 724643532 492284903 840521481 935876568 745270880 818119976 344384112 538200341 813955093 400468858 956638636 862017729 942201201 490231888 865746247 358606619 563024414 322172788 475759819 339572198 293750674 497962197 31458361 845990033 412954979 185229986 796497255 710868202 314709394 920037511 878808724 655722429 243780809 36988751 917747160 716910910 916160648 548689692 931468228 996913953 243363479 309265048 377356066 398704955 905432348 417425952 641655827 622211546 581652691 555262906 99631497 22167579 920166796 267436737 387612034 312608948 373218881 549697295 934162171 41149199 387939644 316412935 343829579 225368819 727814282 113232067 59372122 910658941 382704381 734981017 315331811 384345637 706152126 838624064 837778470 35633087 369774492 620632149 819101971 485359964 709281490 705361167 151106423 87393873 537887357 226074400 808647636 858600446 527768185 586499975 331064594 923718738 710216240 194879305 834778596 750436230 396250678 898550678 101910552 115581234 723185449 908856361 949169081 787196580 778886347 501528061 987345748 336991680 696843515 753796185 733952306 407440378 274903517 763831273 869152876 731920680 811746470 139123710 864232793 561097489 246233677 887560835 117369553 886045382 923859387 23525144 357762242 265113811 462807401 933853753 691530011 665982719 921147174 648813268 966506234 18407760 510055046 393599576 651499497 592547908 683877825 877390364 341721531 39212180 192055393 976260527 787505858 241879512 617397918 334153601 832577644 498896019 217596331 203292607 111269122 854316583 15417162 214770348 595298343 226624927 129896025 500342282 819929564 429046309 854299100 528577257 226292867 227857894 851499154 755773318 18652393 202073169 26628934 461440168 424385342 125746959 986584215 284557185 407118769 216838961 520976429 225124049 322925687 926404127 231147362 262616504 712462256 197250330 766774503 700891387 578744276 478453 560376255 917287501 49596204 251521335 421927618 469736144 342126846 397406864 724069166 266845255 100875692 607680731 666029312 590843688 396881423 634537678 982519710 302455293 742339142 295956483 110023388 349523529 373484394 177532043 540783611 708145906 898934178 259410920 500384448 705817946 557148415 619209612 362845858 170916455 765534039 127670070 488618754 263461063 138874361 709140933 438360811 804414950 48221727 99118784 97566657 672673812 344700725 976231640 201550628 157821459 852541327 305483227 557991152 99290170 143975970 779178035 813929441 532079317 7942897 472978531 503049389 449904187 915627300 73990685 961865305 652079246 217207561 800221275 793301605 47451262 653833533 125402439 690082554 425913689 85522841 309045227 569418629 771980397 122258838 605941682 144474546 123430639 737884527 779411263 504055179 423591452 932039384 424116131 243765763 422234606 412308059 775884996 726970316 168383099 683584151 261865341 748182375 27415176 380526130 188210330 240478309 631694351 466448852 535846777 951053932 879726334 26024103 137100258 80002291 418357465 295162603 46358260 137869752 37880497 298767711 40342355 653320827 292940296 748732696 638735174 530990305 582565881 209098244 537140966 290347028 986463888 974482440 668218230 979456165 168413287 191693424 580124477 625413039 241213293 872931818 772707514 759342736 16716739 274881346 178984167 114520420 88310426 444416592 689401220 576145517 919277221 262295771 743328461 932530736 834009376 785964396 729488944 913532768 61499840 781852630 420440134 706710297 346069676 395134805 802505656 921708006 28816798 631789230 472305818 962953749 854929710 392772860 594405775 859755634 871983311 500779635 174413163 764625000 812368323 818357293 471047548 617649343 219290847 635158497 646403254 852551574 2586816 611349507 212094586 8148578 281557710 317072812 788920438 279061257 53399431 425556746 829237868 69457828 541861320 889376518 537421813 91918185 984639938 68881257 411877776 394199967 395282784 918446056 409178497 20027729 629574667 947521634 120011542 697137869 685218590 875089197 92574422 710308337 818238238 955167754 217863678 696355292 435221219 137117617 117714465 700220674 55379145 254626416 911693549 980180281 447038665 993750413 352275501 172901049 701876113 396335317 739223089 864236649 658836538 188870755 707244325 710992662 922039344 988172116 440781443 385836039 584890296 856948097 97634508 519945962 385903832 706800720 314998414 18014404 58953339 482807463 10593650 36673478 511648221 896581637 750972204 261069365 555874752 192047886 806455969 707987548 413868270 328259570 887903954 711417672 900297035 614488205 652077946 280568528 415369174 406786597 444044135 802919326 378000566 526632065 866776910 666359509 332170320 67992773 934991008 102568496 884644830 464309563 830402153 472800144 9285004 24899236 88816502 601127452 680035142 267907888 128097105 2264170 505649772 657566971 846056279 257385179 821928348 766502019 373028884 229720321 414689607 817836687 364006141 397627710 662000974 175794278 253112762 991487249 288479704 723862258 945194126 156090877 471624140 533383332 301149192 187985102 114843218 316513592 540724326 879367594 472415031 110478979 319295489 408180438 630853247 913144993 407517165 808609407 213445920 592021500 465171538 521238658 928919088 316091095 736647258 155399405 139852781 233183510 32201322 225249145 233100571 34234050 60403944 290463344 627068472 164413821 519503504 939162278 470304995 572717711 622049263 856303659 22068870 638494239 850392638 621432724 155717680 882833089 397514040 951872562 956645842 502800968 893229645 300593886 318273324 709377864 828242880 226768583 420760071 843900261 422054901 759902171 30457516 576469521 99959202 175137995 947291245 205212954 179890838 32732024 808394041 314383656 531440128 59616317 221744925 17522576 278457084 174658974 928662116 125305036 761821429 176824010 199060435 363290688 800739460 466236729 556416851 856649650 569667691 140480737 118361106 488954656 36670066 240506178 186966890 300014749 798051615 214377805 473730910 113640939 509900051 544026215 706003988 477505215 829068752 220700151 635918356 790939986 647747167 986573313 197563658 981480837 31673939 745935978 437663012 311184598 626382174 602393487 191560650 984946866 668606310 153881925 755700191 152888584 38124279 260829578 519628694 802169043 697920210 578953909 466997588 326614655 75230005 652550347 164575141 579240359 388668744 352097194 646616611 676411070 745749810 841629665 526991590 237285862 854616936 104103658 620764083 93099594 462788224 715427816 432438687 855111700 984114669 601563917 714123349 309278344 487888990 589535200 281768057 535530764 965916249 59626362 222418183 139344913 471995210 20822632 741852121 979033963 913850798 311767547 831139037 994669489 186345677 508678967 189789308 763398946 773565438 57019928 343819731 316512413 187836348 349489715 787649014 489031318 207922589 472949401 859164136 452205341 649769023 712928278 152618448 906755442 951833855 543023157 207986099 60808645 195368382 629910720 427003788 402252854 208969325 958319629 5076337 504638416 624957854 295307797 344648938 399373274 835283143 743849621 669358998 782455230 599165313 170966951 461647067 808051718 484630497 572641945 150844134 16885336 513499226 806023646 145419955 20583678 198427297 78297768 240325551 150460360 828766032 800850113 708609561 293067820 96526346 798028860 791697927 643429867 589577146 268552591 714943708 644410161 481866192 991142343 343456093 763827715 905902118 219772571 287812328 763941720 422322912 579357136 558185822 892408041 422059942 956232515 701698996 668239497 952961453 768805594 864881205 833713981 735766149 299529340 361949970 270701172 106834452 832404528 359846246 338672375 436780304 435375055 443621725 594134257 379092586 800609934 62800898 653537213 384993974 642902084 325495782 24639387 95868818 71798245 857162839 5814593 440641992 501092370 111633249 67213647 676551843 50535410 214108713 40714810 242194065 558683174 669000135 843502019 930838563 461973293 507716330 166940928 391077775 205198986 122323878 862966315 120679331 215670004 204707750 743844010 439851308 155424893 646833561 414967950 529426911 730431317 755714127 99950924 177125981 742575357 251918856 45697324 837469203 112368002 666752051 376740125 237923608 560027175 686850494 597143241 269612253 844090981 385898235 590149925 357166915 156937531 835994573 84918900 671218261 564762724 999860063 728121516 117675298 356964688 877306090 166871622 726934297 235425756 127405906 553221874 92360318 584540596 446625864 385033543 580536199 41807125 964522754 167877721 627775687 759578438 769788704 211629969 337629673 510537831 2765706 360730575 268128134 120050123 565682734 382453384 71009940 786096831 277372944 85915547 742354597 994987393 420475697 901938727 735991015 430471456 84415635 968221755 582402314 224869913 976040534 609391484 802617734 708486557 141286689 141338464 670034964 180812512 399398889 184048004 62602870 243374248 310977519 240630288 273103996 938945940 117102822 61358471 178252890 782993505 69816255 908659659 495443510 748126896 613461061 230287927 43618765 363736622 968877493 675113363 487034702 324499502 763615807 709805440 768603267 124155104 231757180 293074735 452901035 163535469 984709279 980994158 51356511 174227642 263101673 689975795 349603651 311240451 948172130 606731942 81959996 3497464 695351942 425371014 248135635 533595437 967953615 187601014 916667954 272231831 299832747 309385706 416909442 499501132 547636696 32994284 302633650 270145334 369389906 540784025 105971818 884759375 293661865 156888186 563074344 730610097 563923806 973079758 296863039 502615231 761348207 32641858 120916217 714730277 492277141 647458983 49828277 190344556 536428208 521883890 886980448 99983822 949378175 624961735 950673582 990098192 120559030 869861504 935168841 452477747 106974780 71567926 610077290 894671335 317370351 172691487 873321484 482971847 437753382 826815708 153796230 605600910 364071048 177765496 83847498 823341256 754553232 275410843 562383348 110876073 438907741 317994617 259314043 49583375 592834573 554272043 687559164 924217015 501782780 648024775 192443218 785630623 407018128 785230146 488827438 800669542 232199985 669732639 851082043 422817131 539959880 552688745 593348044 74712701 179025256 305505638 121915067 87218399 222305767 877877251 839797647 434688200 329648671 851854733 865341283 348617848 86551056 722073114 766603383 25732856 209285947 343192445 780352700 762539590 167639700 745815723 358852221 188579113 782991881 127000532 406919262 436186255 265479369 326423979 85079724 32756458 787846817 960475539 856649325 534134573 661367771 629275359 316658472 220837195 18230152 710792707 954942607 554539880 583687333 410864626 413059370 143891841 561100041 995303131 561903921 937071455 168919040 237867360 416155329 974030653 281576015 90121769 713758571 536458604 232757520 123602668 963180246 60654263 866310415 821879367 360620841 596825236 255191553 755404992 504088365 668716134 172272360 301400949 231388600 959562106 909486553 542114924 975214101 751455292 101461913 162360355 324900493 351823809 14104654 509304534 4377829 855999832 989257206 183084297 908241344 132550071 252220897 27861241 99895165 265963169 438824934 458736725 826231809 814076563 323474233 493061135 484240382 25622004 11111034 835831726 382003797 76200317 933186710 495209254 534675585 202026002 632823488 321097322 467387813 393605132 23103061 887390692 341699237 587410510 564130246 200700392 374975180 74960862 968216372 704415353 930111752 971207228 768655680 949116356 688361078 954731528 666815396 585337604 126977269 695784777 467503095 246062866 177406107 429451862 485423203 510456238 868325249 284228724 833856700 835478409 815242312 937628388 709399636 252942722 525841746 837373218 322336485 23766605 765654575 630199440 245069733 215819928 469488625 804859387 782438370 696112354 795890938 255145770 778069232 822233195 199590990 718197327 844179625 552364877 579570696 430647534 557460959 97381316 998383599 277018868 873750743 651510171 357558452 180701994 195029531 81284883 489099387 605833198 329965128 910114642 62673776 403810214 818995205 987609019 316113784 160027779 905361532 556614498 257170855 127110105 952817454 572773443 545509141 766051080 817582428 651242669 198944861 929182551 585422647 154066371 498439672 873115922 818387281 232755977 894789511 376817167 882438800 966822259 114778908 386897333 171528611 498097845 190273642 22246551 239458505 32414518 519464694 953270706 954685264 102931524 747520625 71845000 746137571 825013876 571234949 881336196 760657898 485043276 626755109 699720999 619952197 277934643 93727623 616421648 430518513 632921741 933464839 733015130 131331270 979059611 260694978 279992425 577907750 456713996 480287485 169424951 745910694 697844858 7534067 917476778 946555295 784193138 212562874 767716220 746896858 529400439 813463997 761963453 593482815 769064876 654385184 361146354 276122253 550885554 410956533 658583277 470821004 652790313 591549849 395549435 691302817 349530613 927422246 33382282 676667884 497572906 142552675 733818209 831215478 390756033 942403347 158419027 965387247 695983991 358675889 303739392 430801162 510795991 650168223 120021083 330843324 524278704 534149537 720464230 265055545 794229832 822825817 897327853 175794725 92595409 864205013 903134231 317512481 18335184 337847580 589388365 304516714 542886729 946691325 143457712 121228151 478537088 109621348 711664094 749302470 127741516 340825464 931470445 917749788 243799495 214562006 746740472 209751212 693287354 880507046 76667045 155210708 268193745 166511259 830390231 38405462 115181690 543706932 981849879 293665165 760280554 313990755 768669658 233289926 845171738 974946272 809600583 472334308 165327594 986184057 648652556 134832311 695458369 104699025 13117162 700477341 156621316 541431089 539479084 92791426 201255998 601405939 944131190 411001991 818161856 953324291 638231034 752501320 426484325 787044495 968420411 324568380 75619288 666162180 479634306 182683165 129954876 128991612 147215633 372866193 261372139 812494974 358822571 131042271 545801524 21219988 374366831 202943254 863857863 914363748 719025520 539840739 517741868 772312544 853707356 834612803 645638672 365264489 485240836 895453680 774392467 79781987 641120936 983883351 710325276 394606415 359975391 722387437 457959687 845556500 623360348 922429316 626756530 507749625 352124271 710156830 309777398 402248200 6298485 850058747 84526686 168676445 615237486 557154661 203106939 237716261 856819864 386977410 274729944 470608216 312695052 167132694 847491572 792690029 567155169 55397305 44537154 43228742 782822441 406059680 705245116 822948548 106690072 714916109 285320611 389794173 608515605 120558469 204340457 829025195 769557696 568560767 263635239 802612451 118122343 390896174 791859520 890308624 495706759 782736798 153689061 517335316 104942758 272215700 623652916 655933556 459467113 958640187 233297255 217539275 294778086 472069184 229770323 996640035 472207465 146269451 987095022 440904728 953576991 67816521 979872012 182766167 817364626 182810991 673328801 895365459 536550240 188856690 309190791 581217830 32236833 173841926 226284298 353950780 855061115 661565995 49582793 612893828 718777296 679434578 387091052 233563985 775754067 664516332 422233319 710499469 856749975 377586160 55367282 621715008 96649673 989242110 36492875 414258326 364262816 678241346 271548597 42865490 818632126 484271468 12245421 303033680 548798874 33624300 7758560 460959262 696342496 796119948 836996546 164025711 368475083 805931045 146871397 422470239 102207011 570751729 239707891 394182623 317776130 256953705 338793137 26765795 885518627 149454088 840755746 650188908 470621112 502738299 69692314 886763529 525540576 566866891 492205412 21081806 644701993 736237332 228513569 901071307 22687624 904065894 940006516 937162018 318270501 541742798 158926664 267862932 689245289 806464940 55745459 403584979 892149880 974011900 264025523 822898978 468186125 642464802 936629977 551201368 654269764 879928249 556336355 816167013 502693747 530621868 415783945 741000549 129789653 209682931 230200005 235630814 721119793 77093398 568703558 829415081 289932426 134570644 505172547 730394341 673059871 617559881 832337992 493659029 793886940 914104524 267308570 787806553 42585305 718844046 489439360 208278840 429344522 348048654 637320007 606233758 677283158 383225204 828031632 392195818 542027717 465253627 767340330 212472169 634029656 523359137 591906396 610278679 700869410 216256535 609726727 631780052 511326686 173226693 253073404 140015719 888481185 2877168 395155028 473683209 263303755 153332017 778363740 227525086 682614019 813614580 15572056 635913801 120866164 395241202 918516711 935295265 50654645 665943697 925419281 158574031 873756313 646964494 239163275 956543587 265752646 235395421 679995074 407171748 620633164 179567925 489142977 768860061 515893204 331391749 625923011 427752555 226104765 435964489 904672577 121354754 537638497 87263184 754912875 535450978 654403778 391483589 334338526 34781915 779462851 865575174 576574918 849268648 429933123 390408487 62893551 902246324 668509089 702082756 364311582 371331254 141173533 930948386 989804621 578455938 385944501 851960588 779382457 44051223 196779132 752017917 301379442 464549467 179581923 399756069 903659626 993956631 528237328 471085548 61529273 804987971 501677823 271302224 882990125 370058354 356662560 335862642 714420575 391876702 294434006 825840437 18901260 568838702 577577895 202848910 962224824 918109140 35205780 240233313 583257927 708885098 871749829 677305479 888552793 316232116 18223103 618362010 647301092 710667415 144125483 614448732 635778659 740785239 715823827 477250356 113031750 323397496 622170371 378887317 384831064 757585683 342099926 766648549 562352559 754766734 676328281 597364605 530568986 46293573 782701511 275819620 491000263 407151330 697278117 667514260 239278468 685881200 292002860 886481004 834167414 224253897 948921395 909589042 865945130 718378497 556393473 588939291 881947316 617226324 920900067 86468670 285251038 393969858 62072071 816519411 554923767 250044952 553692551 671732516 923521091 25285090 833016515 732823641 534266526 933802041 413728742 777577391 402787338 394622267 426559088 633118644 293835410 260446221 642672246 984235871 584640592 482755530 960226034 745208713 516933502 635266463 339112014 237349787 730554492 450452525 856172154 207921430 181777205 951185079 760109704 950782825 926983974 648400099 668825660 370089841 990994637 21141438 705660894 669063770 799858348 349619939 17536293 714869326 665937340 271370758 772022822 906656259 745289126 260977845 637670861 494332614 556134145 945620451 508804383 148974744 136219870 921905631 918615602 809736241 948975924 767659996 348807817 587588761 933610769 892204860 102389543 734526855 649751943 532859422 963520075 163573330 962391790 83450826 28262902 155459206 214121127 152371128 390860706 452277229 780292070 354136948 337410548 282500289 120108793 158368324 654672742 51100442 289370993 600889131 442066389 10243829 67000635 734285115 271113432 198388429 192366392 851230698 292539075 521996285 734231011 922998669 392939255 602566292 402724448 738862517 548988941 600208842 956066570 321148985 700876658 188302954 922042824 849850060 413505745 861783816 113444445 363352394 976073051 471152836 327800090 802408984 204930066 287853197 196961572 406157030 839151604 958160381 482974774 421733054 675920460 762427356 289001890 45197704 542009874 105431538 544001353 979195094 767654420 963785532 75964714 242347915 8479336 489376115 784086075 826793232 605685774 469823260 421436940 851632691 161237970 19467554 80902772 29883587 195627357 796320069 597871906 408955099 292748822 982049002 141837288 276870356 97171971 45115072 246710614 85161026 443291255 297710955 527874421 732265665 565740419 657731846 893416738 795361926 567786958 763650912 282569295 707179165 955804577 830731813 701191123 130474068 661280290 771338969 350959047 492849998 198990271 243818743 968392809 240201643 499677651 29591184 263114792 509854732 599049766 765048108 475057197 708970827 588233745 113702763 175155533 15272556 213132997 561172898 971734136 70502365 868158180 770550909 556186693 231656453 800273113 840406735 356507723 809859023 712250839 366643973 641382577 115694659 107559134 263191836 512055822 590411969 856655432 237543677 488233054 769946181 47529118 206381982 813526803 365955860 493408998 998780894 414140564 87144204 900020434 391707825 457709659 224908172 493849088 14296910 102268005 402410496 632417019 199522513 173833460 5028505 968088219 50187218 94339623 536615549 139394180 178095693 811721661 58041479 958731433 57782863 855600354 324812735 559760241 200473399 686391183 88528621 932716152 530803148 124700380 336141019 968107801 820687023 812960059 523870131 682649251 897576555 522700974 79052996 370945069 427493591 711349005 715965992 104110449 740025923 391458633 312892236 710347206 606024167 903015077 573801585 204729641 452079133 328150154 587810588 749873985 55895400 218888540 440567059 122637925 652314682 643698624 632590994 820365672 569501723 12128313 689099880 62483774 275894322 718711801 3258369 849038373 804372025 41458554 669608127 895192540 646091327 830247011 262759581 399470707 437060925 426219679 22973233 401657189 566287243 688153102 616013267 625342398 359216910 700776046 128559160 470710141 51519347 778886491 41837135 422164758 322665720 775739129 159432254 57214444 17379402 838346062 4768475 773977875 118921842 896238205 658999376 382185883 8373871 962199472 932212687 923244030 523311237 900811499 585960172 11899454 941862636 296425570 137947486 555506278 589057390 670525657 964476713 671651199 668067665 801203699 166234288 517024207 222285351 835006009 762744613 449010274 128076961 488952805 214197934 773420310 601272702 487598647 182410685 632864721 127057559 602025284 601991107 687863170 131742481 563031210 196199888 499931583 798538157 78402083 754406843 560523328 739926753 506697497 675233498 601333621 52258894 501045650 239416835 470125561 477637804 848289872 955557514 841444076 496920183 223520473 972065899 428037778 93766756 440919050 129943313 407376423 926531740 406856994 486183094 47030371 777893976 965679122 268532982 51935670 558359219 116705827 271445785 486629912 345538133 439239508 917256342 489755407 5054991 355951385 748842003 164355632 625845301 926713140 353414547 924514509 551390074 274631364 400397390 291287145 636630122 608501971 225580668 153739971 588650986 57670943 389978659 552311769 938133037 492375621 553978663 707800600 167732569 825018497 240751107 655785745 326678191 55348240 511808155 514872335 19671420 595199301 145401018 293283971 134081745 395137274 59308941 847046661 990176789 141434701 363180849 547196285 987110234 801384015 436665169 735497777 771196315 565721972 672706153 820465725 582689565 176318304 227638520 703108381 596149718 346836296 932320898 322613722 865083197 457939030 642745156 194304324 810725473 575206974 670760387 805941100 394768456 570488963 686580725 324313250 709731508 24801270 8614440 89858329 363529269 128088413 7354101 268233398 377728643 302983916 43827736 930750249 269720403 494090055 486058338 421993875 905330565 150384441 705872800 279257546 707434277 403536635 899170318 720398828 708002141 413689547 385673848 787523899 560800065 156079087 317003021 772772951 614562094 13946853 653345000 972384922 329874739 957568363 247137412 673092372 872407949 328396621 958273910 152994689 296024979 23492888 105185890 477939031 120713680 59436086 337322109 84318794 854253096 799949828 61606339 618715158 261193596 246030578 341785902 617265351 892923562 435815722 972094548 838499267 894593366 30850635 158551924 555897722 836701722 126689739 520086547 591074945 699553752 613395581 193008219 131460374 934866155 315405105 602635719 627811097 349997694 380989145 565068173 848206052 20025641 122180405 14051432 116423823 879712563 820219883 774618209 801331226 650854296 383850081 463629349 276040811 900945997 414508506 363089248 372443215 157773589 317143038 300937446 744652276 251745604 619434037 672861858 680938205 563911643 331632753 367531483 425616083 788821121 831174755 722783101 485398003 4124677 298647071 189742345 861119313 845668950 869550619 523261878 520680485 478748368 492775600 875348482 913895250 457537270 304686731 216077158 163135709 682520176 219136340 129272958 281099100 983359436 634914206 877584397 122829339 987024072 151234279 746030408 281126843 448656738 197759434 345949760 128693244 6481069 107832125 635565248 103020007 544859143 979870468 320647206 598288562 594539349 521614014 14415581 218526965 742585022 492204564 607890402 753975665 558222911 914830329 822751343 54664593 644004243 365441467 310330909 296215117 132910011 182452289 246104102 6701982 845568856 500459604 109325634 515959302 744451323 531779615 406976974 921722045 38437688 97935642 131548439 370439784 660489608 969258689 538045610 709622664 632933738 19657154 336176625 7263710 954510102 622428819 616032529 928952465 670714747 798402542 154259469 568130038 570357714 141512277 562526417 965951515 87312769 902719468 880196685 112034521 730978049 54499664 688419092 891350513 606792951 872150010 929718185 738284879 873941497 169164824 401359820 471556995 523953552 559734834 509135386 542027509 266810423 553026747 665593500 542220283 828769090 531828006 727591104 440715129 937191997 138827791 85766289 313450205 534715372 182985053 227046323 580621748 818955068 605293883 854649251 992007959 98684282 750501783 436975714 736050234 595579800 123159896 58741128 686963297 733600583 24667359 954428398 76572018 607832847 937975701 937925414 186915363 479402730 458045173 266843410 979240162 725325872 347186222 465703996 303919308 972447197 695507279 201975404 60279375 830752363 457010146 55456317 256006447 266851166 787673230 222215722 350166392 891711255 540288379 535267187 804536197 543219287 770677396 808841556 603768639 8212265 132626241 206034985 545294642 787152450 623241011 377370688 497924894 438177986 456179012 124177753 655627805 302652433 196188665 769923833 62142813 908629159 539075496 797615324 110436685 900617667 572943531 348736285 604004458 591486854 389350156 373417810 328152493 44219581 174781160 886931776 476284616 340458069 607289832 597911927 392019184 432103484 356867242 158247924 682396964 678418541 227770465 671269880 669407502 964975473 328197394 578278654 59948732 813737633 349929766 464333730 550373924 850663266 197003347 882246853 260814530 43055851 722666672 349185951 707747288 432411636 169420741 989713045 743731189 519246224 362792492 314930952 413267140 859476421 353305402 603807053 669356880 241887007 2980975 135811875 9040179 816449870 900863897 693744639 213805072 936381918 560329660 275090976 810495180 69124915 315285485 471065716 530348230 421238441 650199235 653714242 755659004 294698883 778384130 973587285 639020965 26152347 40615768 219468211 382741093 494683104 707233615 308457509 53797437 341966246 19324957 972552418 769672423 589225446 277670374 30811811 591196550 140464057 18108293 695817428 155108681 506011342 340886813 582449059 82280319 579136777 453510195 297313225 653391886 739887789 937942690 522059221 847889381 505743952 859361668 319157191 75709055 473256547 29780607 622588661 267924676 289718703 523212094 207085728 908974219 522773392 630073725 585953173 792158753 32103940 526214038 103689647 361646789 836152909 233556780 173184282 773167015 857601684 297745750 893158806 556638425 336862104 525720624 354919363 610448346 18439030 470330723 867505530 102951221 641760752 153415040 615425773 53086674 546854955 592721797 987076878 808343124 981926114 270986767 463917485 529914500 866642423 377667256 741308726 618021847 874439582 178168841 695379438 70462267 915448067 734128394 621787653 776545200 646393562 84214390 526907792 419360938 932910079 235180507 468880504 435264027 183156488 734730218 332111280 426419772 174240484 786088994 468590223 215763383 51531763 437268691 481823456 235082553 145740956 446336975 723223879 178748079 419638358 632992545 967580819 526163548 551366771 136035614 357116898 82842267 534670810 920517805 602162984 738326357 368768258 369593915 939978474 44778549 26618478 521800234 311471508 737417159 795701452 745308411 271161059 305037618 563210121 495962459 990704818 379358001 71138394 782368551 70725271 29713366 246838724 456209190 596084492 599135389 287613308 428379008 137768428 538142669 871850962 161754851 900408719 134578136 193316137 377028314 250115462 888789145 413022849 569598115 73112809 380393844 696191688 557781613 213800331 417978316 59185828 559433082 968519770 660845273 564438025 26787245 147967020 324939797 780766875 159738339 632728419 97708695 242404857 138403912 326237075 168091205 547466953 896839233 315288560 283848187 685409706 753448938 196576943 598263625 423076480 42490551 413915631 170485984 843732730 654973124 105150199 190881238 449892615 231303953 607075712 571642575 740535118 744985306 408222504 388698724 593959929 216172865 710197984 524369361 764879546 969979717 402756575 247041077 422788585 658904244 997236636 739513608 550136348 410183940 742763539 905171257 713380119 859287516 699510499 75673568 511854657 709700686 196370452 750355046 969387131 232237716 950269382 880127964 434103475 732854028 334484359 140381755 181740569 537433251 840009639 272424701 784053212 743046443 211277021 760981312 388066329 854397824 869767154 585303479 677331673 362120418 580435406 662835050 274886565 404204310 373532176 16117438 546736615 170324530 867149834 375076741 47322910 692027962 383212820 270176127 591204066 931240922 674221946 511985994 883641689 517652839 143190950 449086834 33162951 47138654 909885425 26255070 523749354 159468395 365162346 17233397 474969308 963921946 918042113 383510090 151335087 442429787 97366750 648966197 34864531 777017267 147165386 871066716 956709561 4589109 432728128 830239222 687739752 670196747 625660401 676305757 590512578 579699706 938575641 906322278 464038805 287881730 172869152 992865158 218555780 498198406 640473403 919202949 175500335 979885697 203761180 440168040 25982103 871107413 840397335 123303843 184764467 240306324 274018967 255402739 103438365 256660982 740318008 593805502 790810507 453205048 857418570 724949058 810404355 605519495 261556092 534666956 324351795 674542016 70996043 425098574 969721614 406204074 360583469 337914084 92018531 815527502 882144635 390170518 434295858 330115673 875287517 391976543 374673512 987351551 864793446 64097455 204625588 959143611 114434930 203492009 89479120 899708746 347368685 614590536 863551061 962846043 180598760 215802748 390971332 464441694 200523573 214464647 665619378 732032584 630812819 263678743 81199725 914685073 921066651 214783724 221920177 594117398 512398611 921525074 484672867 429232078 350409208 554527853 86594440 610442150 771465593 544876806 47615962 517383570 384010936 959058074 986403404 759440326 38382408 458791045 417729082 977596344 481897427 287899783 195198665 392813615 697704665 854069927 857533425 518174904 719451589 747931505 368541982 72352897 146668791 386490940 716170654 62280661 721290646 978506857 641984716 560512509 997295846 399631256 276223001 533035089 250742770 835780418 797866670 883729296 842839814 822961010 384292734 856911147 900806408 629881770 848016329 539301524 140567806 468289690 49273719 334066295 173427771 641199353 844298883 572552212 490536711 617137389 333456701 17966415 310370798 344538603 893518854 277080930 791531532 897357829 371830268 223539551 476658010 411464391 359354051 200976658 400888851 868184046 389341967 931130080 107612068 408219647 428647469 523169834 573054848 498797925 233999752 122002941 730873756 598745185 281512056 48179101 573230790 675463604 696305043 904534133 645026195 655877866 297768585 279642712 893229239 444368248 626544014 512095776 285695844 592304180 128016057 538611275 749493684 243480521 988144840 242451302 329606242 586105604 554394720 43022886 909552109 99824378 172646171 67931264 806281409 465405123 572633495 6848155 243408170 328115728 624533284 122504777 712556867 174521204 985817764 267314684 77239072 18960561 586399716 611610484 335735097 513871677 226867597 734213336 543537904 889496979 10892790 673168197 277884502 371917653 744357063 770683446 142179401 395462456 391416372 863007698 714860507 544423590 787736572 817925878 931776508 195023106 119951449 244667151 825229429 523426350 477139111 31524709 767979958 94345479 16268913 743127110 771456141 47478148 602144288 523444770 958851827 412749030 298933207 177423040 551210762 202687882 685922146 61570369 976598483 748366914 102670760 22321791 131740598 429748183 491107104 997076248 993843655 353109301 284533978 983476349 426539971 488038454 730214188 45279981 683706965 543304112 457714946 412406092 921271985 78211424 865258922 440043524 806713257 214787019 508831136 390792717 401927610 571783130 250273022 941341922 464896779 982722055 628501671 440767307 940701741 364435503 245422817 785668401 952836566 87641656 222157775 205632096 393245918 817863030 215094057 812677915 329846037 692286473 254805030 298461136 485028710 582555679 282465922 351622454 573654300 610866980 672885947 213508483 991832199 383585718 710118804 945603136 463960896 191280737 766293074 56420544 494414299 997335834 548435562 947143561 857510258 681221007 541210615 11329917 42361794 442475239 575425713 103697967 95546766 567692416 567638534 869082541 64733355 548188938 665698913 678786870 198429481 63654294 236315519 394000338 576355830 368247388 162730272 525754718 258976810 296400622 435936985 752161530 870852295 603556020 58351896 801216796 445087066 112998471 967089477 832758254 513286235 461417866 115941301 833270917 788857667 835130166 844340713 518236349 974857769 692982192 645505996 991808091 25543085 831050121 171912274 32522728 912133097 430314995 215473672 127273168 910710775 443572782 671312286 950812404 858604524 648217521 635110491 144853139 662691889 732506323 502241659 80510379 973154079 964946132 726130717 229839816 13111362 715627718 564492127 808037362 537856432 794167231 576405413 710608302 676475167 709975812 172332357 609140124 451383676 789091741 207666525 365131171 87927215 711470031 675849502 881567414 276662172 26418119 403357660 689635547 337553329 926150419 712046405 990294634 744615685 6105420 312647708 883017991 388319513 330937914 228268397 784989454 812428491 613920961 111881135 184586472 376139588 458903785 717699230 799639174 540379290 152482293 201452820 4490150 399306968 556027724 754102599 972492446 73892900 271611387 157174937 514768322 621742589 811009699 208163402 656487507 170503562 614027375 829709799 33749282 175914701 424906307 330230876 583182163 101240605 639987093 719426389 650913491 851661743 453048737 596691692 776840562 401348194 843277815 763150014 291749063 917103608 766795371 85104478 591838963 814290846 933054022 552523708 172723944 797437047 331846893 10190819 308754242 740917364 537025331 815243043 702159473 658961854 677228142 165936874 188159614 111823068 221334840 577121347 607125974 117545034 645177410 336230692 189877936 866854625 78927464 486265267 543521300 423357330 436680543 449008075 862288168 888036603 357532661 258486912 602524116 237166422 233814343 204362942 178030799 441011669 232036637 512627426 587999440 230483922 626570930 89753270 304645486 403760412 888087900 91296379 727842310 448070123 958615735 865542679 1975498 556453246 659033590 717053482 849065621 989273286 515222520 532245203 482601937 908662303 474017877 82494384 602080609 243315979 861945574 843355221 108244184 615806577 244523679 429907314 919161925 36377241 981016195 199646644 406940887 892523981 650689901 373795234 793296548 416696243 582001895 888018548 733469150 427979314 735339820 582997604 964926595 686809067 582448155 656818358 668228463 815568303 313611074 654059743 134511984 464158213 499270380 42939434 347200203 233374157 741123245 662065261 199543172 666218106 203696107 558206754 344573743 973461032 645712043 950756878 250303572 75985529 759239080 655152318 710395439 885443616 855975079 320005577 995907311 220982926 512789198 419899729 669639785 69805418 855458088 667453402 793938818 176670035 133107353 92738529 304775245 55204178 2359828 525020088 750597644 752600763 269580648 901273148 456189105 947600580 512343297 975785159 983825944 987144119 416763202 791407797 551522131 285121150 640840776 268068531 311739028 271413674 114101845 608981584 889533822 731950477 921359451 999437612 186829253 691709700 761533424 941521233 208029554 771056199 317961327 335879883 776946385 821634234 568265646 415433093 470877619 762587514 511557429 150674964 967092882 402773502 112038187 123794740 78649193 468398848 791090220 684132071 731361927 625842348 324735943 513870071 588354488 98339128 648226386 268091060 351685972 403773464 627739723 611850813 153354741 54661459 140374000 701587771 114552643 272603294 107609493 196248603 367307258 319420015 531265243 869711634 956584518 555736675 332498385 38326716 941395815 416461086 605503494 875108429 91715919 829692667 664356400 326753426 158631169 516773876 210987157 153861051 14547555 604809852 378132269 560013341 517037889 47840159 221181046 162428241 972141008 415966072 210767724 166866400 829059960 290013170 916141394 614263609 235591760 780937044 478186939 460281520 384916238 285000481 977489648 598040116 537740687 687879647 444626225 403103115 946967401 241517542 52237682 684855785 710237297 730951090 330183228 733381965 824341110 82829289 337678102 609235158 755097681 871513335 911743808 250354623 696874978 2068591 541435432 291973577 112341359 773785409 344105002 27409325 706754174 33640929 944547632 749827147 89870096 218235335 202647654 40021370 617094881 98588508 220660045 139897826 43404365 827128741 830317357 652717782 155338238 894695029 728050107 669438378 176764338 487329105 753521011 452060974 585683419 133303705 481813965 603746931 140754214 488723544 320290115 616469430 611423194 428374323 597203272 499999748 985316207 54756454 818905998 225653997 91816157 561322736 651944139 122882616 134162241 745829312 209932011 952451473 434895358 176100532 163567849 732827006 790182027 354675939 795320535 430192366 909052548 970806430 431308345 167140252 536831969 418223079 721920837 72132169 804665191 23333868 802357260 863347904 729932206 453104858 242050266 700952524 963492471 257317688 720977792 875545786 657871490 635183713 220338668 580678215 417335853 269492939 387533843 56754610 131811735 91024216 779993930 399527341 68467989 456515759 822166056 366654586 400857779 524478173 523869167 937985873 109644168 723451502 634459703 217513363 341232098 601374536 355060309 633323014 693010373 364633344 944249982 866192708 549279049 901154613 81974701 776338297 314383892 645624148 561960796 722123757 820985041 366749154 925048649 688178887 825441918 848028128 649959042 103668083 99358486 464470159 614534750 641949007 809080808 512460192 910387892 199917628 529030231 435120329 341233806 371926086 573276560 481082950 46308414 829785212 713087041 253967669 536922099 576895673 251855787 152746204 395492762 337444713 885751523 204924774 596350841 428609726 68320130 74918986 580378554 783170102 774849231 897614436 676974421 804692287 180062144 336672368 375674041 550003275 576075986 475688584 503710793 279103660 927795197 35379086 225091956 504157209 749918802 310746183 348861141 581682852 395430602 903771062 318242781 780183047 121080723 904538556 44897028 630725456 379990217 363460675 549063804 54190728 615818927 465568504 529457203 759338220 224854894 85300900 612149270 662345868 263758567 610402105 97859328 815277560 705818385 811073720 821012353 428028830 950921092 181277958 576128850 194551110 895906912 827525538 175937996 434109967 110792509 845794890 346561079 202486197 201433287 568436929 170615671 97513278 510228983 270504172 988690153 228543482 818923902 673552764 83656451 257952170 478004725 907162355 563974109 612901303 168001041 905097828 840567121 841533305 214408971 995989287 646160165 547060584 817681369 183143740 695036711 629921899 964965182 622178786 923710969 398102707 221682654 463847800 779094930 892905189 556615395 898324087 998487076 386987013 813194671 504918749 373222207 924760457 244036739 429341201 481217664 696586696 327966835 756579744 845912838 319604299 398018743 474564969 227639956 586407790 310326754 266342597 449953146 420540597 440898084 330091082 213618340 669227085 129467021 731431467 313679448 231096950 411696824 695459490 645761686 576215678 763489830 71467701 328449974 516429045 123397016 246197278 844043490 770374001 57522032 404234553 161320732 153719507 172262386 645350886 187149261 124034822 902991223 301896887 40611810 855588499 969444903 441451885 404250394 7803049 986029822 748133320 390186361 656230680 678001211 489512083 983489849 231093664 855693970 687358206 999675307 903259687 886698809 87742214 4247760 670136936 926279471 418885942 571777579 717031550 215603981 656685480 662199376 592459586 152771818 937453041 82157022 848752556 572335389 173326266 146794527 608302797 779725763 977098897 21765788 264189514 68072508 806647350 506952686 608017234 72467465 99421181 178521385 874307587 649223415 502870621 170133228 645451291 941493800 437650390 255006259 287153651 684604941 251754224 479837633 270841011 993057418 141523584 212667195 642489067 194186366 246890234 996930204 980590331 295477867 92514854 172813704 295347266 826412784 388411150 376991263 762241081 126128275 210216375 999482618 346634825 359535793 815220140 648973791 957450319 699845424 376992739 522393234 464256080 423864847 595090552 708411435 129816743 149961452 242195658 950815994 264962245 39355473 239718645 300027054 832793005 92391268 702208866 678566744 471868509 214701471 171177890 664129846 986038903 905386462 888422571 719543390 723855471 429956015 653463520 557842223 996369859 750048823 539332632 700811476 106268554 239619112 603352360 54601394 193676786 64776218 649359718 952234710 467713100 899449251 850359271 511975120 996073725 89518172 833228757 249750485 170097353 161216949 440424555 452476770 837911927 525132885 394629710 866370133 345811514 481909013 12137424 831167693 725350916 259767073 763849780 309771224 344219306 194929227 420657370 748927785 783890208 868165792 704124738 803871866 515896175 272286935 506701220 293064084 457244332 290607193 892162969 317442752 49600126 822833992 28297435 685357905 947004470 281753343 356663983 941005070 524991533 448311992 171063848 604028402 660032003 134952240 84720851 427873191 565231045 831087900 16571234 876190544 783229421 886668950 405966001 942571313 106001932 856870645 68481457 166121551 520007701 551366926 256665707 288870217 880375966 40058271 694213271 142039657 60318918 50058155 611938753 626610817 720704520 591850921 523244686 38086344 304227422 121500855 551735467 126006735 676705502 442307130 737753778 676626125 673619100 507282809 631189535 673473317 172811222 345223271 801907494 358284200 840594793 689257782 943664299 454823922 132408149 270403128 30967774 375023374 808874663 474268436 798661948 859025546 699617595 236568382 210677095 147750132 859712180 149073044 951128603 908211369 473745883 151378531 24468135 105874715 493359048 119380802 394496368 410722963 731899051 688278256 381143537 976809866 778306715 314165140 34488976 931907314 738734883 933186080 455021430 329900283 855612164 990094924 656732780 815381924 299808219 158878244 292865242 828512768 29441603 99079833 755486184 139650198 912340031 445656384 332105765 926549146 863704725 40326244 874958495 77810964 103033249 232463777 144426721 523854330 716049793 128976830 28720575 510309562 475950541 709362810 628225720 241393909 374230365 902546761 634435059 824032467 549552599 417908591 548037594 500942055 281181273 122627993 734582388 412035081 604894694 608324284 318889785 413816348 825524303 234063060 290587638 53463731 224299911 457751699 619042861 824962908 1944298 537513476 900853645 54440808 782391509 962609858 591246408 496454445 960024412 473313341 731254428 994820210 641131914 75654463 689606840 337950726 18696307 534965091 808223559 729781751 281615682 556367756 271355164 610037388 496593973 867251591 587270071 912545474 308061323 228567600 875102291 809779959 894772466 372378422 47535634 535934464 908803942 806363642 257144646 817857705 89841949 527898562 821834901 598845494 233247507 935499046 278989632 987344009 78680869 438736652 807613886 671388953 510482932 44167802 848860535 93356244 710303139 831782389 394404884 197595791 221661243 154008029 428976173 970003159 522555998 695306865 46723168 42930880 968464683 801200519 371510330 734633368 96207021 605629386 383765881 48190399 449420904 705964948 296075011 454103624 672647096 963165909 606299817 366244480 441476388 605310434 642965776 265476695 407677840 123540236 821519960 625786462 117584641 779392565 330420456 422320433 274897759 608750769 417719927 292145916 203721283 185220743 155517447 354051727 481812784 354269260 141401697 425379525 72249470 652261019 96028246 165252748 8628126 209167819 862028216 46068173 527698123 154424066 883413254 804164942 820920049 832828720 625840492 472092311 960690222 321298548 617751701 675429793 822798438 470532164 303629097 437444165 128010493 701815629 588139590 323248568 89358770 36922432 303094593 720641034 549849772 361658227 923585528 309478183 599612326 562561268 487034718 123739484 990512716 175216174 558439546 96851961 699062334 203996960 120453377 527402521 436029723 876175489 718192509 749852679 222540258 299719692 547805769 246787409 657537389 711475096 787680197 558760707 163700287 991613365 437736992 514527867 790971483 108797277 125894813 761573611 802965878 721816153 121552991 348217003 37182803 971840298 82323582 134889701 559443752 9745519 660191904 4933199 656236485 396008944 305909383 66153374 986560910 100746900 212768946 285157515 248073022 375510837 641885749 272675015 232753714 619831335 479771089 583270834 237320536 666806425 590737343 984107230 805086111 74375138 565427621 189010607 207099278 662494249 706254367 636938285 591633422 832174602 919632441 437740584 332537032 625399061 868158728 153335189 462435867 357831554 631539587 954707013 112381166 548823861 564145628 835144083 459477387 425443783 654045857 118863576 160902942 970742580 974365751 684309519 807296032 162969660 807570044 524724584 448484250 747506916 507011250 439159319 300466314 740207440 509793292 186449710 600085816 704261590 635059030 354181725 451659115 766671718 82740229 942163215 988993184 540430080 957009984 327494607 299134595 345880445 521031400 49085967 355755418 518209730 819820367 549998343 442104863 699641199 833034473 427857342 27422214 102335846 897323897 469720224 573914820 704476706 406712665 184282364 969259136 58819901 184914873 77001839 972523660 748282800 870853244 96511826 412028005 738838358 570567017 125292282 951511830 70674253 377757205 476596512 225589205 462626229 264800166 745656529 60534804 826855047 145752246 949661843 568098012 778353281 185551614 216261107 438185160 10230986 13112606 137081533 241043301 821960710 858644092 879286711 334341474 358942737 353509016 920952589 688833581 286226151 917259522 712517489 445547727 42608652 683069996 810800660 639061098 163027792 192542590 355821343 894983846 694732948 290581177 604999789 209005936 470025039 410838532 416702964 355330968 604628383 352865606 132695822 659192264 640615743 48753544 674574583 347333778 783084991 851482744 14768331 143445912 701896112 747284035 926226085 228255894 276878268 403798553 278954110 904298541 934874949 690837553 15133994 631159712 47566772 809715709 455464073 681825894 217814405 748911493 4866466 282046026 368681099 703394394 5447740 454562101 423505833 928786755 391492989 162803693 332896791 329219018 611912744 383968748 933926522 642811372 892056592 102071391 573138033 711495781 163226144 71058604 675533511 925929547 648232532 279886357 611987149 582146999 44406271 392486664 845981250 477058729 454952888 472236126 537880307 244291705 24875293 921158791 893780885 426269680 505650792 94347495 52594146 470981131 982854912 492669725 168568674 602383410 63317833 195810831 165514147 402100000 106568828 519644965 104854918 13528232 770943205 36285236 630740651 594835019 309668736 212926240 99623237 517339931 960534415 97703218 325413396 101592375 499994242 733534495 364593361 145409976 160593399 65308906 897983599 493183928 309260096 839922769 174449352 611696891 660178414 429474538 594921576 600030788 537454465 461617851 746614632 911941697 336714405 674684081 506115547 945804449 602174966 61389184 977157118 442566554 493173516 589103084 581654650 209101583 694011838 802356887 895884162 722272018 56792736 751502813 55557454 764712811 710202213 261862933 406939442 56445329 980235231 636565995 793698519 611077943 436237439 103203573 198084466 178714789 16480085 423152395 71476981 174707733 98469491 918510055 8395557 265161128 795088694 657603520 949872414 512205705 690871573 584619902 948597083 642091417 885174127 144490534 861183051 840198578 186208554 605874550 616896811 948295472 528574117 505353927 18038604 693767795 378189106 160115491 838962701 691402739 976209740 358046564 801727454 333569749 402089000 549002179 395768707 211776224 798336948 851210792 17092736 880968864 43332546 13270395 810291117 354986621 521645635 351071996 151176857 552323117 808963602 908605321 699286544 791321604 315133535 663987200 988955138 345702024 283010059 422794555 524074877 68114733 178965523 725769838 828971443 759136824 139693033 640877375 778202357 643684524 415073282 647807654 853846360 919837676 564328340 738849864 558637117 284581523 764221696 851911280 611983177 979249921 539878954 978854074 934095221 609482007 821031121 810938801 438812745 320193498 404381497 967385204 78978678 168845368 677445266 634469749 638551085 117406840 458749891 281335639 61204300 144975340 789965402 473928816 96791744 326204275 197797363 38746454 310087902 403178544 249352175 347402324 555559859 781115852 613337906 536786797 53023791 781345222 917233284 384792891 35101796 366816893 263126657 822118791 533535683 828378503 402640343 235416170 457907801 985979007 907517415 53134787 37897254 177828087 322632856 358140681 951616868 700846626 698865017 175420469 418169350 673910094 883561860 345760684 289112750 336192239 855360334 178583654 829507923 793706782 314373721 556705234 618384540 12779224 304717664 705169442 755253923 732661700 500876346 248281596 869510958 230668653 42755320 517166505 184733386 954823233 225723149 766572054 618238860 152012368 933346690 961061400 71508343 946290265 812363268 738292332 857870391 395980524 399065196 331626708 423484841 719779168 466895875 166827823 238919770 179410047 839051323 997424185 778797879 977334909 678420336 534614951 253982559 308304942 627842329 431262711 424782887 781409647 862440564 691811805 983395643 123424688 498249738 406474991 208047175 379743231 896837789 91822783 548892583 980394147 342778152 143451686 918546537 970570286 872616242 847857592 718149639 698191918 696697924 935159705 894040780 710133588 416951117 4872579 399577067 237379479 795106716 528251140 446844476 860853471 965677957 214915790 292397975 723646524 91473954 617224045 162057298 802109722 123889879 729457921 262664674 605170406 296819320 511366267 336642905 843284578 790313953 566285775 342975114 624862769 739887013 970882036 838959948 380394004 299624384 138719344 163155699 133737978 495884887 476088770 941067311 727809136 154024137 276866508 312349978 885876425 563292937 564691434 377849134 201930796 3052726 519736404 881845848 97614442 507792061 471460448 718037547 131078412 589791154 459206285 750516991 533767009 236077812 763784991 614080470 168783158 43764778 262235537 423274817 178262487 968798617 647499061 260663973 636219476 788173011 241132715 928499755 27411767 124484628 33630720 680505125 160788514 913103480 419771849 714654781 21651900 306861095 689283886 241513398 544158175 777171862 989803856 295766034 292696261 741768174 214966097 475612593 321478844 638107545 112431718 158109602 873775325 448084363 675130396 292278647 152610850 149981502 945850020 396360973 879613234 405394086 612650095 332494877 971083897 835101099 437783768 419297860 720988511 518167792 387850820 665820694 415088183 607054344 611782106 781341758 959380341 714419440 979394230 209975125 763100074 437645195 217369682 857681303 405530196 541848798 562621146 207844307 117694565 319573799 260068894 131048862 936821322 351136474 302810263 656331632 625834496 908641732 603316868 518612978 229657940 234897724 993677269 380681570 476839178 327797008 921137953 430050432 867566637 656769990 90705820 10984204 32585800 301506508 293816322 56255103 538577306 656603419 410140546 983753738 152739475 665635447 785359303 298976212 864560731 622110195 818665977 576801631 519407696 261157306 302265582 397063431 393960509 753413930 819666568 724450302 601127364 249292200 853480972 152848543 247928947 585908744 589545778 158770764 430353470 860938059 910602084 969133269 941471274 678894849 739017557 753871873 110888897 733058477 425678345 87003665 435427313 64444915 16363539 500804026 52691288 756859962 501339161 717092408 806224759 549177823 187328364 348756239 187455221 592415043 720313153 267128077 478940711 326557767 834960200 354931017 430045881 982272299 374763644 299766766 880488083 365103740 724621633 728325313 639513435 725340759 93014149 92385778 134681154 505331022 107198855 487021677 48538164 236662077 941970620 542480649 19464340 27288186 399820109 641867109 124686661 116542036 881240026 644884379 68248355 644672812 800032572 964260413 429137538 996481271 373558177 995744982 578612250 97816155 794290454 233888061 494685881 565595560 231226405 130387978 908899120 64223389 671805813 502272791 883214774 133681582 105021623 886632865 134942989 911336433 651572898 229699223 104277364 231789884 496339430 76940753 807545859 124946423 917314866 413777432 856237800 939046925 303702935 991615168 109831053 86254528 473847992 410610634 589999462 905717001 887349927 828715258 270680907 17617202 670127976 92043377 673894606 936783452 596324838 539034651 937153450 36357031 699309344 800126345 759358026 488365928 676337767 523528660 69187968 443821039 598515387 81524573 765097331 984619865 103612294 778676600 173323280 629541934 539683423 663985736 548903082 128837616 926233918 43420254 870170121 123066798 225568215 223222722 471163905 646831956 695791231 892029288 463978170 874082413 850317770 109442135 280825042 974674854 907188668 523021298 543742534 974085899 158944819 514939015 790295727 953403336 114603747 650643768 610857410 171137119 840024507 972352200 783802972 95806472 446431079 270081491 20187809 293232179 113858666 307466705 577574688 947705122 436864176 678157644 474622849 487271692 120842480 709279704 169312094 237683885 976777701 873731118 128027182 619638154 420288389 350284697 282730760 583831523 364673404 43944009 842332817 24002169 353294510 470965751 257022594 340259669 809560213 278314047 969742442 571233780 992480655 713344146 808321636 269139791 371619833 769402891 317588106 552404483 860381171 803826082 577122743 590587567 936179317 46275169 984740944 925624576 352544828 808247914 918050063 468107253 286339218 109426623 437671262 275141919 881958177 674956145 802351516 63044194 365439404 754195652 844318222 376005267 762230852 735912912 192795015 928999991 31799684 811444171 864211036 395341447 763380157 300539760 704343084 807087804 777370702 523338835 595936097 997411555 685848016 259809506 676841243 235708522 736126928 853811894 464516053 620948068 19402267 760817727 282358984 439873009 282310962 24418712 507710143 988064603 402108087 137326872 296779020 902455189 372454155 632752259 495124061 592431498 6820574 74301512 652716753 815404662 58853826 532104777 40786968 310462705 210053697 310957332 374268706 617603079 635560519 277674416 659805114 198626175 827722807 147087024 209790366 971541855 128421559 836338446 719976026 635042314 995524022 886624422 451871710 356607115 830795485 102680784 243654616 114327024 640104024 352994329 745289883 329299601 716869551 370849852 922907203 900426661 924776679 601786931 213114265 251880356 218209337 538470477 222593211 388408802 992460539 452615412 58557115 145702196 401247357 194744709 289828105 620516445 107705144 991949941 276408320 856014511 756631922 979342178 753314571 37490155 730391880 945003774 961366473 300442231 981297445 189186339 304405964 226232223 34141926 910384193 290205750 162725547 890576768 183519119 135394367 915081087 424814530 570059311 330570032 209414925 906233626 434375061 761912574 99903640 662618261 464324020 646268375 125772968 934682446 203756330 1076729 371635556 701667704 22362004 921304988 129158972 191222429 257520051 198110862 486868894 457339807 381082358 874819200 682894636 915976766 906605062 160999701 672314946 838108148 121372922 495620388 155597360 390249554 202736949 649454565 726159847 780454562 896478872 35367627 715481828 868760138 400291375 17058180 304719018 17339558 191604495 532832346 413132968 584321069 370510523 655697585 999024990 854378877 458183890 574310163 130904572 234597586 640960369 73865098 791065495 767152497 732090746 846554081 52145407 229056744 888887187 209880434 3624949 19269601 288725390 218099520 203680684 249696410 478025975 620913344 794427656 506331602 360104987 507874022 417184666 80058280 5716931 646742365 621127715 792541036 983097528 346468240 357225244 26334705 274756222 969753013 360264840 17719655 793330342 906823706 388932663 637678733 133102624 601361460 529029620 24254619 256671771 144828998 285095096 579769299 561407463 953969950 483269234 253551246 739291430 879324479 349842945 861872344 77010144 167117262 464477415 237535687 265438694 800142436 60923697 835686638 715152030 725392580 759926856 853228195 873771474 705565485 926599636 181800141 978053925 792039820 8131004 998480952 60882988 756501557 933884657 632043549 838414884 563398303 273630396 148622520 40663866 92726212 917919047 544977147 879501946 311827973 138501677 517821309 634909364 847469898 447945464 493422991 474974222 532764093 753744180 434684443 844526084 72841057 216675227 895689877 306816719 748188027 758602994 15912477 347222177 108711578 589780794 80855551 661800023 604950816 182724952 628830702 457228773 850556330 616769904 379921008 273742218 7810610 549509384 480541216 350539479 222678393 989552098 753813336 602803069 781102947 413427477 391783349 557437383 574522451 228145292 164730565 638730807 280050319 547962647 524498431 948944827 437037535 253243038 990902539 707689225 787772075 527957212 370519705 693417737 82510049 584458480 84309272 44559961 452670279 32407096 804508842 81217012 429999918 460929513 241301968 213245468 698681017 447850944 847356332 222019426 140615169 702435224 906514340 531318507 120046542 499017546 165598055 222913577 679876840 250455799 15473472 132225765 420813830 677406869 534869202 41815040 48352275 582158450 560234768 417057186 922948296 253564585 84376587 57415686 475952900 664622960 796019648 249419144 445367527 292120180 275945329 344751144 858653455 166500873 798360758 60161872 308240502 925478734 794534240 66802569 824247871 273387976 611473301 166103980 747054056 515103692 805542224 33563729 648782336 432221488 67470356 250779489 977720841 896281215 697761703 389033762 351563326 602283424 839492875 867991440 918901634 31886745 499744786 919393291 195613815 580957105 531891770 213387433 842167258 211487538 174303315 17450754 622582817 419695156 395058255 393136550 594745923 362582494 222201206 560835554 782464304 199739947 109550278 396317641 838313699 339551670 86052651 606982587 36431423 176445998 625049469 270094374 630786859 911083363 281166964 89488134 415223516 937147443 145718740 569133885 998122363 927391828 644494869 567911944 613636301 922430316 563087559 784994567 999605740 209076124 58800265 385349781 342718742 436071683 534137422 725124691 351460444 27434917 318432801 477416134 76653809 30530525 960981461 110434098 768694293 39483654 8503145 271382444 667388231 253469479 710197817 606577811 610558198 307950715 559868630 67686651 871929809 290648767 990609448 423513650 416818338 447552215 207378228 397640427 360256993 894012719 954360037 990023306 168453541 142290753 93067003 720178562 880163010 84338837 924072461 374431134 826922986 315986147 430798074 84970653 4948001 601789687 293819667 712077470 365978298 266800696 946509116 397586398 451716525 974432518 208195928 161811908 934162614 680895175 73483679 848822260 448694902 193487476 135169913 376029006 322526085 626467540 863164528 427200850 724822999 733958027 367224864 57298284 146356835 800201490 143264963 444890074 142481723 702365494 506920588 218301986 839093234 914750742 887804474 633289704 781069754 861820207 200051042 43376194 856414614 15876072 593232742 544107815 249453128 791255996 151843860 609374716 670571213 442605743 715816784 562827871 583299292 189176327 785909741 310213164 567545160 309063390 94103304 22462324 653623700 855463627 997797521 282005428 97980483 530895727 453661026 575201748 485883281 763666099 814676852 508969205 818527640 373908182 600244565 332695091 257678496 434867765 568722142 953940527 804290504 594074792 302540786 420907333 516026472 941399597 595685459 382390147 358594498 901402306 396573603 436897344 898306358 121235589 930097577 546622101 597431425 305071553 153068559 54377527 997140836 775043756 385971724 332164086 374414465 301603345 829561796 760489894 829233299 198213941 693795388 24210053 57165092 209958675 802809475 991526051 925426229 29931358 762662972 674138870 385881932 625113858 446729363 682107684 830959838 545616030 210181962 724345219 55126565 290370792 449324929 945401260 85313361 624362514 441968638 945170564 772857610 444582142 131698598 337885631 153649941 867097951 163971612 416597046 674687765 504227106 613868463 669185054 973157485 488358733 381406299 129286840 793653261 844006909 628188639 473862907 241433395 585994261 400896331 394020209 717077861 114359465 557962666 962475392 50570179 733152850 73611329 873753142 667960326 305363504 153942510 907655131 15809300 433089655 85351517 591528156 969106592 300911238 61638617 406521533 284109162 38392063 794876416 666313287 20700040 463739152 142558333 934954006 160849962 892357741 115898814 392524557 914754322 679981818 715470672 324174780 159745679 742825331 351052422 26150162 402953994 122098184 619383216 485786388 111445846 182891854 159840372 814437211 21557916 640754947 575191513 972894440 664858225 15219757 291110038 580247268 714170635 181982975 354614206 820472486 472204480 147479800 186569555 71555243 583791982 534331321 556450609 609287545 616311539 438574230 883207979 794293233 316064875 244362053 903411623 319399443 107678629 498372212 685952453 220000634 521708600 363480078 337827703 729959511 453400860 985645588 665118775 139750588 124294071 999062040 727111241 287146146 792962103 951204066 396864724 715114157 853711683 251133843 661338178 283962055 447597152 532217559 348395291 489625950 277462255 139819550 826816320 943273470 253902086 64741387 398416519 320679011 687406083 609990157 267302 77954554 288073084 983693673 755038444 387580550 503179141 108578025 376827462 65178759 922968032 951795010 387784253 863911484 635985435 666948932 316173043 145716290 390319857 954574767 346035703 244924413 614423886 403048847 685853513 366680122 321056053 724981550 885988679 317112411 661851580 454825925 83745008 131783656 376191397 852760388 599926892 713158754 893603710 743990820 326333072 867653864 917798676 498068954 314144234 337713535 41740663 431290551 483789378 281987973 635023829 952707164 16018676 914406560 564193837 709069965 55606178 715603426 490267348 206599033 93345919 507484850 582375978 96370212 8795422 505877606 195552989 799356210 237808615 452334154 984046190 993129197 2066461 429888730 830089283 476572777 896335370 677830422 686983051 740183782 611624824 85156100 211805441 226211656 115099898 485551990 364593890 12867996 870878144 724722346 384648228 812195291 306551340 10373234 993978270 881683958 833362413 774911942 534793925 166686480 404232208 265335584 65219336 192786755 814874545 111912408 705502375 773532772 272035949 85671171 325246553 224874147 875164241 8871123 397622603 687126739 598409413 12602517 848356360 683797075 872539688 833189952 111501294 822779021 684592793 629868385 385274502 878031277 210452915 963183109 386401283 234723599 359340100 188032251 290717791 856027130 93793520 122271917 699428027 921209285 309274753 101751545 666069770 228410634 391939728 946325690 180808812 738073164 773911571 578061618 800070628 532684757 909405403 875827195 302390295 267067722 321096134 720136978 608601096 457890451 634081836 806046721 944536333 568021958 858669309 470833942 896456232 87887580 222781976 14064229 471152724 416023469 293849640 830886477 503393944 115644898 848357330 334605267 348725506 374390402 132142844 641371103 876978513 165724557 405306331 613834122 323149781 819147618 600580178 575259914 769880627 439836123 969138223 333498862 959168227 73834631 351835640 917500310 921668955 280157019 636975546 204062433 560048001 664682589 653622596 271533188 96542759 188831612 932550348 805171634 234665035 168044945 586404431 781892457 191696403 564088586 476869646 689203039 417185785 721160675 492460228 673903095 544789205 185541894 262242270 26917847 949676047 884914680 448064114 144968217 991676280 986293167 465051552 895530543 444788836 176111622 936596885 100492340 474062005 218298920 392010025 831983009 102907092 52254018 769577031 258551832 522371677 881506973 561278766 947896501 692251530 791509377 904850941 253272994 802284168 912174785 569334906 752412227 221871104 311590110 767009784 134319429 501119497 929056013 2869378 861581752 579837860 367335877 207932409 286643960 875269859 71710646 796785151 324233598 368371460 371821660 754912455 428575409 16502389 239450185 899238606 970766102 873903586 456705930 431895910 688028870 455912877 295191968 804151444 338912520 332216585 526066778 357902298 315418437 623457379 8336082 157685407 339035454 717627417 797836546 581028287 485427887 52871980 750316017 189714985 651059294 10058936 146361962 273002862 512789314 541405257 904219733 404652064 354863154 766447328 791097196 393664442 753096943 976687792 159947830 786111869 547658000 524400667 428106233 335449434 787525739 821676291 675264203 496361509 77109517 263876628 139627246 622390100 897213353 110395876 195259945 932632927 470304728 165032033 271302059 926882078 717715659 195208375 648244007 232537588 749304853 255375515 476798507 310487164 788607776 86104029 773936514 712011464 230440577 90721811 327892397 206678210 56066314 52193895 651233517 211900335 497110428 241546805 395046407 530379105 845458477 57379247 335256008 720670201 30167541 409030238 637296355 511100471 262691376 778845094 594876012 472050423 120052093 436868189 610078396 754835049 31438574 83762538 622743190 741726691 997846423 985934390 183474294 166717264 947069499 325703862 968613704 490369956 212434844 420203000 813510937 629366057 913008439 790337407 955804940 999660688 997015570 835359357 475935014 649480945 745762966 929532993 371534711 772671177 208147022 654162097 214060130 867562336 329758865 390072000 260636393 861403943 439405683 10822993 28027844 84928665 689715860 250909074 343861238 94504876 978823590 445996070 990870815 765913373 630255916 279479285 269173987 272418941 427959355 36737162 84424934 103624886 455398260 240578537 110400933 749138657 948511375 816157184 279608895 760312653 577078446 365731999 30136800 154422755 714751751 183085009 90759992 67552439 754072647 479668761 80262625 963279790 597377397 818422930 82719615 472219359 96576626 857000549 811832099 644154168 199693716 670760306 357483756 218457445 975143129 199961776 667985851 293987601 879840997 88245475 493058660 519515014 396112374 769676979 208529518 199170764 276493488 661680083 924484705 739893095 631180806 268153738 113566958 502749873 154607019 467245702 699266967 747582055 400971295 274677105 782375760 981005268 985875178 325864922 900716863 186078376 334708203 125049437 758817772 7067170 319977681 742582110 326621074 485402984 424294718 325104460 415663719 593131824 502779454 537958831 501629447 346948644 341285079 118561269 631134936 892642174 175216566 486243455 753166666 469370636 220716581 408015485 737200501 423384141 724232441 544359666 246980334 236906087 86811349 414912431 66054399 170881471 101404528 53489558 812357275 754731212 962121061 182555363 872174587 62591762 204956450 648517132 447074978 918065461 437429548 88340151 910347146 763066518 579918490 901505036 459044641 599735184 4775696 422586260 722708177 929529977 715142939 623553974 712227417 325732170 489656424 441043117 825150277 571105121 537637539 295571493 304651039 931351675 342099626 715681976 744580072 439963440 90124005 618362422 19304577 870422566 484309350 734327881 596738116 39747601 46710247 814778936 302517592 43399377 964560921 486139671 686191093 399944619 698123045 859583255 428101855 429852891 211041391 869472815 717114818 340672285 182407047 529834909 543204677 599745848 363158550 919475851 998284275 500713418 541387989 458741014 460330992 672815973 885633949 193803164 893216504 862307914 630792422 835167034 92776193 961272115 308948066 895323030 692575237 674359575 23786982 542243795 797143624 866417676 539390533 358734514 514485410 841774175 832731824 889258931 624149099 173604311 733144294 415192780 125975208 149503526 77878095 69975246 401992007 715435022 569567994 674398814 428783784 706188525 412959632 120114233 534563403 588759511 802125735 400004514 958346272 838296492 84421532 914628433 52665491 239375304 336491725 300871074 883314541 615233587 493790612 787041718 481382490 987344773 760917764 918341387 483265550 503507598 808861314 796131150 151435908 355570554 952751833 354505328 81755851 548754003 408619406 288373802 800889938 414489102 782883732 516955549 294914664 754643555 570407912 593131911 822560399 697801676 797736574 374111757 151877164 959892312 840108724 868388442 365796438 636606572 949849956 202545357 443435652 50136783 695759815 609193730 964798221 843302527 790842015 368788018 180063678 34801788 982250695 539635250 204173254 15669647 955331175 748982326 947296246 736734966 526716092 662465730 451639251 844759479 838713917 656477995 654435306 962144961 774798685 622695522 942063579 954269391 415385138 665240331 384743331 546975634 496884967 454596551 261035841 671408010 822061985 620140934 592050419 308686785 534092714 527884420 852896356 317235987 795711601 935315926 348449571 879709084 422478013 71876467 552146552 182866603 140465174 683823663 779046093 230786728 465968559 438217133 428223794 324403586 429037162 39703489 291805230 617929247 921986674 993079346 208360396 309110003 584190104 848750455 984392615 996850799 946722311 693536067 321288007 289520447 699554444 325596461 498122119 878261304 798331103 806149172 637326351 964485669 753567915 204220954 139785455 452459453 501349107 545797361 850284269 415040682 392156658 93450470 480627724 284169419 228889725 682471362 741487453 835881925 328929813 916234517 661675902 870427453 37149036 819610425 9571039 706347917 727038815 888598517 641200666 647644772 138730367 239791832 875282489 131204114 167353179 48866650 790071227 229813434 367114103 87715954 505139365 108175343 827936316 53736693 505665998 218291232 875146205 781216525 864704273 418469310 41709713 618804315 604273930 815757016 115331074 592610261 590610479 858391606 990874643 621431594 207978130 453840555 127692232 453050262 507720478 315942321 424822190 471413226 771451155 107505248 591705399 370258373 216852481 588215202 56577394 316452115 285224897 726357411 481298234 308492166 389317645 973733383 20854098 249670577 203159609 621111916 80991999 33079431 930124992 507704621 880619462 280238317 830119351 212241211 24551790 187666294 591760590 488890622 242825772 193476434 449618265 486251945 205078805 333942149 561922758 671237853 431537835 951989867 333719401 790107226 834355965 657128709 833014175 306053143 981920145 683844009 575195462 170553666 824452440 625485632 496121720 798757534 840919871 190086608 393301459 760855672 415005768 546166940 210972174 122380118 464587906 723376573 142666380 179713829 730514756 357720748 358522740 93439757 307057545 658226778 279787690 584457204 901354374 831809626 497249411 973584461 409009306 914765002 542451338 866658731 526764375 259945000 607992834 726390664 221751154 170228850 264182703 763129318 657169245 296720111 501026124 126869646 26751819 460780281 34688624 684831218 539998639 436218720 945554580 53968092 707478507 772397787 697292685 510375924 731291103 623443752 153331343 430094413 934023000 924352739 28119139 817577420 358143379 331774285 319040303 145987918 329250811 524629226 720453029 904295706 659955084 361231389 844094248 771889709 26628100 56085302 817776764 719173493 790897968 510290802 351175360 41574833 287840727 698758826 507722867 825360153 481650555 371023233 713323135 290708311 420644210 57177810 47847930 222630019 775029827 14818040 327524341 234906260 71683554 324811944 510839396 649500859 335587218 298079127 219873294 995617036 854563584 421447090 234138299 711765091 992126483 948873675 378473322 634645318 487303822 943163077 974799772 29525568 933975643 212778382 134668228 362065066 727318809 902197801 50564126 764263107 287901702 294453020 134782926 65630180 140585380 593419156 286103507 579812255 294267621 793609658 574347995 919196224 917504251 26470915 104946922 414585155 858806781 749101074 228723686 454841570 966516940 557780347 353762752 450364409 509266516 265097851 100252111 747057082 518331758 593492654 969379598 670393725 557373292 618784471 92460617 718917505 727621850 448432417 385797843 928700881 385766161 390747238 955446374 179818524 971627479 430543943 185080668 303662969 64335245 351373336 759304585 616297821 385388652 892160198 833535813 295511083 17705260 610215515 589212486 882579664 445101183 1384177 234273461 392393452 118347016 212412995 948021518 230369677 595596349 242164678 485232057 863272311 388806630 377739189 396762672 114168785 688688392 382875488 489964310 571143240 383784705 43467250 500065134 822010266 86801338 78236852 78591778 778310770 191614247 265912716 454597901 369856575 368905464 656234596 608515926 643260637 995813929 935527955 136927531 488822129 658453975 999624453 159735426 514090507 804854154 98224818 580576596 761445839 378893423 364682517 117530462 122557474 662131868 579033575 443270486 156299636 9994995 409621269 214705241 114304880 93003514 831713823 868307462 964640119 123693936 187474254 790958664 966085901 628432568 523497711 443370492 412946043 36691036 686356202 257597892 789282230 372168777 894054589 289567062 989343356 470620410 141682113 749095371 413421604 874993928 204363362 853855616 110488833 233560355 670200308 537628273 646469778 690217657 471328258 279528936 535236662 491947769 880358352 795879676 897110230 445899902 194848550 375474381 526425939 427713988 189754487 743662253 713632028 832199332 45637885 784523922 198608882 247817348 184359015 660998827 83882326 872124683 130183914 176673490 479971275 847753363 920387421 740432303 753114495 327803458 620518594 966231561 60424924 63673595 180799314 712666665 352625348 964793922 796167584 14727909 79512931 589451448 659530712 645576067 895077780 888478676 594306458 313704826 195161871 204451103 656057393 660893924 269221879 205340678 280167140 829560394 600767932 188832634 304707299 258184013 133057023 676442100 102136109 9788323 104379739 118408326 882365410 329827496 83062092 240384506 969419755 304425347 804149069 559736680 368052543 655492891 836127805 541010401 790940315 628240197 938207612 735862415 573233719 719965693 478742590 595438760 566927482 257824969 306680443 54979012 306945021 464111673 335586724 372322341 499460280 731422949 856502958 745132650 972729840 977498892 225177596 627779900 524789114 349479521 904915354 632389734 946602473 655154371 315321027 550188092 976807137 970825741 436378058 356340222 292340211 943579998 203725980 886695129 465738355 165976520 268423856 206155081 508977685 520523236 823789220 39909369 509647824 402252450 173176175 980136271 721949131 530997896 484492579 683222248 852703325 592775564 308769743 611913098 887020831 936191838 915215268 48729810 54355928 168500018 507010850 763226790 371096137 435936914 763743456 60452930 655684731 610683359 69742155 665030836 377785093 562597617 326299965 770266433 95362719 360650870 8778876 589179014 247428209 209066978 876611276 480299396 893951518 222380389 698567231 698467123 180402393 891753713 938197299 764427078 92974552 455929011 705731721 887463332 839817229 776266664 472245256 957027933 424453266 313866047 863587283 177137039 466567270 786580003 514167127 923382851 126215153 259795355 852478892 561120270 378999023 693163819 172745930 70884947 424893587 656788643 830928903 20771701 36209625 860925517 475525788 972752413 991558352 632897459 604593572 254299388 507533298 466461857 753625336 831832569 2432608 727907238 615167757 147670125 759502803 897578154 256958087 447204477 214729882 872529482 107608424 751508741 164289034 652340006 576200406 227074226 874412889 954618224 220423076 371849025 433184764 849257061 786904674 653568720 833375093 925799902 997182059 396228972 895695653 490887876 174151330 75162132 327383981 755305377 688843268 850730213 705206982 554363993 41151230 567017151 527638718 708617819 316547096 528653008 593237703 951107293 603394888 94254280 468320480 444854372 190042997 612459697 275153085 388266487 89055106 925842394 299507266 518636493 74853350 606361437 177968382 22091999 215515546 225163591 918829290 732870563 307255786 266606615 368761812 883009677 251268281 934654587 160170405 453097818 855470060 269533195 625153685 290852760 348857824 969234995 202005563 981991836 281253757 469017531 918347240 5743020 387743505 170001675 385024062 225739610 783921685 939772438 952881899 364799202 923151461 955779967 4570295 504284169 435225456 667986732 944632113 835339417 555944569 235444322 236572278 453966105 375361877 837830992 387461001 657359393 853557675 140961783 276516471 851632053 70519984 831008938 26500327 248018365 577587367 315172005 651419622 663222549 100095902 698368990 262044778 105225372 448270804 206072013 915148782 177642230 455057897 91633131 451864522 512869963 354436572 905624695 521791016 603295157 496247452 507808613 525846080 985584061 642923685 562979168 919868215 611798097 558539496 850550830 196953104 550098736 770474386 449229926 541646604 428166084 122155396 196752160 746746408 228351411 581251382 306915486 873768200 752761197 748044429 184159611 977985362 456233033 65931125 159699549 843806999 499642990 556773209 806568198 129472668 294389259 176070066 340491575 430867754 275377425 128596506 465911239 436451681 93963966 241156685 404367344 78350020 313569787 727002302 97546172 177114525 935070656 192642799 798806610 49740387 285384332 301438656 451091710 378516434 376218114 541452528 258280295 909817727 420797449 701741018 394937961 964182129 135946192 55034318 674783065 346126677 536217988 969374145 423664825 662465479 546491374 156104611 438498454 993256048 268425540 848368415 249326052 893662289 411801523 531069029 484948015 354856189 214871454 5288276 311558895 466246362 358740750 688990396 959706793 826996098 153795463 45397929 657896832 321728915 840120256 333881555 436054275 396367354 664715151 880563895 925149333 463057672 527487148 324943287 387602398 972642396 241266768 995522909 942693750 43614753 765445067 274223008 647647376 864305319 518116009 233516081 141214473 836778287 182726979 54830671 800178227 656828578 906430957 995292159 226754843 226289408 657798699 695419242 75530474 396453152 606998523 932125475 568699284 712119055 917348213 461861512 935192058 265420726 702418057 96704470 290891710 48227739 202833431 48581279 987818016 197212986 930168599 824615053 625386058 421608919 427041614 136206696 521878632 179208703 554559315 448672462 297444718 200281444 310648153 287480002 963045046 623450313 924436004 798967940 9472235 412755229 655113707 604508363 730441270 161585918 665258683 759405758 796579770 808162914 916494889 463501792 884889312 828212064 291625002 246648638 34758436 919146789 153944129 964850685 506183253 391864119 923607601 423256752 858181295 851627187 236716842 1088757 726230250 953255192 290388432 897227666 20318047 736644171 612299537 369996500 99691339 44653167 977133967 305269054 54569502 58076958 786279012 916616478 574859090 693625284 845748298 466192582 668737894 540917775 905348222 341823268 654919287 304298691 979044716 855337711 845644711 672702703 612718851 946707396 896320232 54230807 255203570 189660130 984339245 310050553 617846572 872695570 905596713 262538556 946579245 336937704 708071660 973578459 43981872 440996590 396103493 275113665 650988697 640625137 274181154 448652920 27087909 873825792 543219129 726937970 196342223 572585162 208190357 763642988 204347223 386466435 41659573 727831122 869732628 189130058 335031353 828884243 747845135 52862009 455163399 405575731 169215800 688564377 362567602 559985199 781364739 355704183 856964946 613814814 692616144 859233502 21708227 486829762 842511529 964418356 163353525 542705836 703767982 790183322 685952654 349331264 653191234 300065684 470498324 19494316 20946831 323785793 82421901 728139867 228574797 992882538 80054118 748650117 16750333 806706235 479450926 171795362 680065986 100756105 795543092 763133818 791187471 998165566 249462567 574456963 509543460 912960126 230893419 64551787 945420145 972261703 149618709 571718601 828517729 197758783 932903120 41771279 96363688 29116167 80509204 270218427 470883195 993661374 531053429 696445448 57795271 551603931 990097082 672276718 110077372 300996744 101005497 222946013 27182792 521256315 446511280 822702673 965020840 93326908 729273420 728734998 809083577 803592075 760646675 463283126 522104145 373892876 727287508 14868351 99163156 587436762 684104092 787041548 968701770 898700001 234213502 902494528 180208128 834056815 297847006 65531745 98329652 535807183 507622544 598381455 529619055 32545047 938947502 800009801 314960238 814753804 277577507 811596286 63047050 231773696 838570441 993561312 356201772 813885845 609225378 914880180 664254684 13933342 402705466 682392843 465558215 497532071 951948169 365398087 384071028 133035706 905101836 235585643 304425446 950757534 83986637 447900133 45230995 876771481 987145247 12664947 293463890 521397626 882109085 427220328 737015041 159374130 852509742 385878874 398947921 63729785 187116549 919991275 857782050 880403773 437426329 946828756 147852810 757594462 946132525 637877772 560456161 453860316 272844150 248212756 36123803 481014204 256062368 300687870 778475889 481224562 651474331 135373897 377541199 352884546 336258234 753762943 189692473 562836046 499025934 2234312 789029957 798627804 179270605 256140618 68789879 45322192 707194355 802469984 718096143 956987394 437714372 944463955 811315932 366653299 262564243 984615335 912190175 571982183 359726692 748444421 88408439 733908666 801972149 765059951 851074771 950765226 803888645 509191994 188957084 324861865 797581089 228984971 963752858 786176474 989389007 785236318 828887310 474307103 11755503 230145492 41162793 626185204 462760223 363708828 657921319 741709675 89279944 188486322 863294283 553705716 743542860 228740569 697019014 258350017 800864395 115148896 936884899 428240211 488578053 514894543 446827613 13650125 332739589 538927436 625981007 233481572 346512072 234689118 509355603 148112494 699944583 294828347 45179073 450557019 148303295 856981739 78974075 363785615 927590646 43125701 814984137 895062393 700537076 265896039 194874613 411158750 432978232 249513115 891132511 204820741 761798516 930223980 20861528 836709193 135032840 560401189 229219408 222888019 286565110 336299338 866893089 303111913 933988129 694322541 193799803 376437428 756577017 831540930 377825629 166907398 205521461 892728501 70232697 490558837 941301641 534327854 492450869 553666604 92242603 161323658 69250439 366732761 474308161 368374548 486943801 848926578 621578577 569160841 329462099 848700440 885593512 432810971 778227347 882095391 5528141 104969902 138100765 91131602 952069331 198447262 252619731 834056030 22089754 566667922 614118963 73370822 114614295 182875777 703408356 597201439 21357498 973878233 961343876 871449240 811674705 389863264 687592514 929928960 655881702 346136759 828878288 281649092 798090971 556585415 146254026 382901700 970715420 898956677 312416899 870275232 664487038 283525761 472048205 426483878 191201770 607437578 765194030 342174233 565210337 455040345 465623888 725884414 596803641 972147971 986117649 815428690 628881421 230878799 835851273 577186243 821296257 409114046 501226643 294919480 624661494 296748004 689390998 77846958 819273641 120041069 218672722 365942432 870536005 381625152 550499744 290689456 923747243 316217251 926339095 244467118 845402085 825979168 46084441 177190237 727744909 147396151 193798071 784740069 106269967 138260173 261349641 308262655 929696408 720052302 389287663 947200113 535257567 357284804 217158377 762959997 846727208 168721378 67567847 343356079 471109542 343491285 407763734 855020296 551404650 163530022 546131476 262445798 918728052 621306062 845277032 879268198 344785 901659685 719872396 172678772 455553794 143644256 299169382 699701563 572832740 563923719 151638438 753600535 905553235 383071728 924210802 380247092 598970707 914703985 804999607 349523633 122565888 388983341 443314016 380402073 95221474 604844669 234915095 52768480 399515925 998246147 517015180 706616119 980233434 726321738 937875224 371312539 789872278 9660550 276021635 885228371 944265041 601398836 91340077 116313688 258659101 813162001 190639897 694139526 123090878 190948965 900867828 73195736 751923760 467248583 143464794 879690924 370782851 127523233 317748374 128774224 336881615 983096318 947013067 836654147 58687294 44518251 7131183 429965076 829349556 268468195 822149906 704694372 836053840 562762789 122488231 480566960 859761803 277693441 968751337 58169575 860617679 508756318 733394840 995577470 487248166 132189775 815529140 110891153 603619191 459502685 201519418 735358705 544134312 468362927 377283805 388080585 744159543 939913507 209469174 14701433 666925002 403539833 219876691 476020710 392566238 159546444 141572901 202333138 10213507 695590923 426765159 702431340 334961001 71832608 123347943 604289035 999405599 435528000 77837615 10206752 981114948 596152891 318288288 718049653 801625660 965866974 703897409 544931646 896855650 567766596 685025932 735291105 259412808 968135703 746220615 866921741 914736476 614295633 798150775 898364420 3137849 961495140 302871759 330111380 417549111 752506044 302363602 152384042 628577438 30042704 863949199 702708414 533630918 769814444 461488918 155511170 366192397 896193481 323972330 141274653 823015311 697542711 495387118 685550299 171089624 465316910 502685927 165073657 350851228 430145504 372570945 263681524 69933280 481527864 425662416 403244007 39690910 483664290 818808397 163753461 607601867 550996574 422340836 476467213 520985306 728138667 318213007 310601390 972053669 982953256 444733589 595412494 116882052 707218595 922263551 559849781 9873314 900894505 197661685 954833883 248048572 129986890 666707253 689700309 253093801 135034329 942164923 62025908 249824939 166994601 854330044 371512750 390783579 730678543 390117790 985035430 191892230 347801060 24666937 240887698 329984899 521013688 938234224 579565597 10482765 92239753 375933185 457339736 409370119 38345032 524711528 130374489 427609246 845454293 776834738 176686755 628017828 424210858 295557206 923550297 763507473 491628121 522808421 44234794 153789726 524880733 1244949 102258145 293086927 223687590 256309430 799135076 809334972 23774792 676399070 582109249 623294538 268676325 680217017 17824008 86557469 505675860 964133932 905862929 230913940 910848127 926437698 479872982 44819932 296611933 317563716 795825779 626582226 652963597 472840028 347795339 465859 812524323 774961811 579043531 192460312 763563075 453320638 801729905 460134953 47052423 96933868 599031650 493047252 44293554 120715111 948075729 104675179 351528692 774352084 21087994 450707955 938878632 234824601 131091512 979275046 807693150 390437730 398825585 958913296 76711665 489116949 303251356 992568704 795980897 952692903 571573362 784309880 958640606 753880505 67613744 189920453 7599791 581515730 843532792 248296620 597607692 682420522 691129770 118010635 101091577 696620402 108238189 769140384 794229725 294624935 531241815 257975555 125557723 284274440 484606715 689364349 509914133 537447715 562231387 217759835 749016825 730986910 958283585 183952030 536073159 836643912 379575536 327533732 796181705 624140305 383162305 148020295 674575984 257231604 711611838 972388976 7479833 334337468 607323093 820820855 442185397 344111299 351229800 936195885 225117656 725740090 242673517 500003943 675421608 78072128 437043575 594000552 918484911 848356865 104008077 865988917 190467090 860982022 584419994 53736812 414753614 220765771 590228737 782648632 625602459 51547523 33916497 768762696 948682181 562645845 567890439 550858807 924859661 277349072 630983399 519222588 574710704 6998456 905837493 607134657 189796298 898887628 647013325 318234698 461731199 118814045 185152384 239163317 545432295 605283783 904797645 910366877 404919481 387282795 474506923 818521644 831652985 356408883 412027414 942693106 785718459 496681966 426110919 78860414 837611912 755252922 409938327 724704876 636591825 4933217 871737678 949130291 515534834 249953755 969693818 206506441 460272221 927515866 252614913 839623043 369384213 441032621 862699397 268214320 209012856 51138568 516641659 923931257 986016183 342553128 438081426 353516367 56434086 502946420 125771744 391725872 368499587 812121602 289100240 619207880 991108101 410187861 257353019 160726907 389128667 276767131 74923402 970498361 507994692 410723344 587700894 950195693 73372419 528475099 906505151 550509432 917510043 69608820 711816807 983648419 36606675 286815598 545693798 80169006 733718329 615754988 626139573 263631400 378384343 695658591 641218452 341348529 731530050 682939729 863863465 770177358 710066796 919369355 183494694 218282636 778886328 272128633 389929570 523562921 660842094 575168372 83518423 245120183 257570611 162028442 999844325 983637691 890088131 763384905 268770005 887491534 131764210 347432878 967398639 346035337 496581806 599088585 207186741 579330207 583460034 154967062 428815030 716631103 969290183 433119373 166782923 985164662 885349638 980575383 940094903 337305898 564296153 165334176 144883769 301374779 267771067 362658554 281044070 358816561 967765522 43822241 443968337 464129434 554476674 848489959 924821073 931240041 293485827 845441339 408606251 68069015 511866340 884325538 535171871 873844074 733007697 824528756 667551298 358098626 971466541 755903868 881030428 968728749 369481286 681937530 494209359 229097452 60543870 276119949 397874940 122686700 142437733 415940566 91412692 553223389 370169829 366923551 632486783 437653173 493502515 593413051 793936131 613087282 953601345 234433401 616206462 756908975 319805348 74920273 924832470 250343833 536782285 797495445 595093640 746445718 454787064 662037016 713890959 788092649 702599788 469598568 481536029 109670876 746044741 970510692 654288497 368461479 66583051 100821575 375282542 658502491 670757496 166137094 151704094 140276951 971079145 976264904 374976786 211781058 270435364 838615099 158260787 443744547 656872937 497594406 879366806 300934348 685900440 939540188 748730486 381200339 808516273 155702626 320992991 958626373 758042171 749515970 383010201 253155318 702090675 101904313 949888551 839613453 17963261 780294809 632705365 67412577 978928538 958019383 99287725 401139366 676038194 264464771 539996009 886547270 231555309 803019578 477637251 99283107 15295830 450996389 688833590 919513152 912058892 527881084 815965473 274758543 65046474 591178275 125045586 834408878 421820065 711357275 335076867 70598265 216127492 831758037 727070591 616305923 781022670 412185955 778493984 996684968 591787991 619363578 233879822 693623994 137536679 148421478 441664239 754763998 153943169 581245453 655909599 89157738 857512480 676790159 215755574 755352650 894724821 490447073 386789654 761956399 892666141 327290147 44556157 610747970 291275053 249051607 438562575 273160330 729936061 757480779 538725076 915946333 143892952 213947991 184077122 84179389 487087793 638073067 264132031 540049905 59595893 822124628 207639274 310119999 623188962 920298650 557008677 276569066 240797308 955619080 370840138 13404837 59346033 260618914 854847276 684022515 138596828 410846482 377986789 447230794 384416998 847579632 205177331 291478807 162262302 210858522 336332417 12143306 901790736 845125699 606794595 751597194 999402540 982364640 543529410 844800380 157314039 465042908 7026776 383549952 114479804 510988533 77661037 639596973 755312744 327078467 408299941 109885238 390610179 639053600 165758414 219012068 106776649 37480656 910104524 741261070 749403262 452721054 231000811 879288619 320360296 499936451 202356487 224967703 27666905 389660188 576622295 805029147 284867691 439539517 151589600 320268404 964946034 483978306 352951795 162771399 671809367 293506810 249573610 582413288 601508488 935642902 385916157 54149492 487059644 645282017 867579838 670064754 362735410 100165589 204038465 563414284 329785355 209911922 158855816 9382968 307837741 574538145 93606599 159914545 157846429 135015565 251409819 630750697 405738653 124748915 907186107 315019682 989335055 929273146 405746191 282872480 617128008 790014878 767998535 504248787 367981700 555960237 697658553 746771928 514293890 368299961 152227742 164761448 652647791 971588945 325335790 259848871 16102362 275322046 88116147 860810830 584258364 488447375 539593725 51875857 797953928 397263775 301995235 800633157 917313104 198073831 361200381 919835603 575030266 64243977 161378670 827600150 556044485 294015919 492038354 515770672 914873411 343941679 583585706 719888554 64441536 535959274 838590596 438943690 244308955 756085609 720605616 246437213 916120543 624000008 480636494 458719103 109232569 880825120 201972996 970084112 33684843 338617108 984981536 527957497 292188269 148373940 168254415 706520736 128334765 74061805 58539429 359624073 381018512 62137761 41361942 727445267 586674588 97427154 861239764 821017466 887216729 360356019 791337016 540491683 587373204 289549441 366154465 229627387 17771767 397951081 970919675 656302266 594607092 398164599 172508132 486925498 734468830 598563422 40780923 418157336 284464070 860227220 734956769 610343174 52949521 992911115 887065780 324600023 572193189 484320768 675265115 942598125 928557657 727253241 242589899 641140455 260208951 574665320 685960400 812032507 602500916 302200479 155223727 677401740 155927563 644808250 952272509 544186267 568649672 607481417 807787517 802643682 510028161 999447660 822933145 495771546 210423057 147601754 388906120 963947587 851085941 30203292 762277683 675696337 407591141 568649409 639207245 696294434 459059451 493497836 640962839 837723279 625086686 483461402 740619409 692271546 898063719 260267038 115775670 722124432 724913857 714936029 993969515 321734761 648860577 454104949 979173437 368343386 41360466 942006333 857509076 159483262 776561708 831295120 207835763 926089656 311945828 7672779 849451141 837220147 174900249 896085587 593434657 966895676 768078697 720425889 275993885 692575499 238895693 263160475 288895981 113263878 99803506 970757639 105619261 65907262 749354224 465425815 227539113 517199718 591924083 819456633 998208220 392389689 257876971 680544764 580027381 374607224 25636334 558582466 105158940 570538752 241256944 699100235 727759939 902512851 981949182 329204440 829733497 273022199 788953499 269480844 484480131 548992084 591732290 219561026 664901377 733303552 135537991 313282221 595551240 632839400 185907017 536529172 970518945 512300692 754988251 770631045 509769823 193429532 861410701 922330043 716333814 508203506 859832032 621543508 767875062 743696004 589026443 331505916 566661886 156818426 249047620 936928004 94930848 166164670 879789136 187806243 996141021 752279515 634620675 374432830 258100252 651097243 876802846 464963918 105911473 87673103 980111250 955073492 783401997 468869097 839598441 270109971 408231005 166175960 633974117 154889734 556892517 67258991 818060866 866537434 580264735 657878483 631364201 459815491 798928359 625160313 389840576 214263670 301394139 458318595 415755639 872645908 240945613 399810227 104275296 644199187 310256842 51941867 852657382 927907272 8566536 364562850 151405990 538283389 903114534 764010092 770643246 205283798 110371505 352635950 957443803 255091285 651038448 175295737 609777639 873911368 222705656 534098195 929120721 686345065 42999849 334929678 519530550 994241811 832595845 861253196 439392017 624446660 737230837 800660673 735077935 631583758 6420018 521505302 52889432 450237735 498904635 682597187 658134680 766112541 667188953 708793608 406494468 381573749 53467166 203246291 1761124 623839285 670273752 748178805 457972162 796908606 618761911 899051753 460252274 854799817 683189929 491525568 905063258 481660367 285601710 635181740 856552624 901528097 677587229 987182546 361947177 466529632 386172279 884184454 550424783 993525762 748765557 710758789 852771048 494287925 339194541 855439824 366583874 707849586 644324606 793157140 924318285 945455133 348070461 521719711 426486018 727994481 402306747 942958007 109185177 274059466 853923513 40290337 966414098 676607120 490713385 252453907 417586742 963486163 860829961 185915585 649599664 235248400 729749095 133917502 663688346 792093699 594016602 844553272 412331451 465935816 317371594 601984073 639330242 376764521 20470306 857654379 360923641 191045471 702168762 212900341 80593695 871061990 800813572 876070157 141041006 590975027 688489127 209162790 29843948 238445261 253160884 322024763 121492821 278072488 209544624 635108335 798228810 983459708 782326725 923881112 812180576 979230968 191525115 409273993 419173121 50508883 793741787 58071647 300017790 98906220 916728202 465691412 586613759 495697675 727788576 816089838 936792304 695075292 575839163 543456637 788556264 375217477 268450993 686579156 164860729 66724160 255020864 965797629 652969556 825903151 174721529 200346967 143850381 845527871 414855523 900743161 161255310 30733196 820539152 761390104 93548642 885475280 967447658 896590403 453704243 865415525 413623615 66836593 888292560 551700842 896844827 914959922 600228712 358362112 82257175 773401982 245904883 62064736 883859692 287430145 739954258 479393067 926788724 235995745 438846960 714171392 440938599 605835742 326686359 517961046 929685006 754584961 213033492 199701177 130760704 349050371 903634642 558956775 475102290 302612472 974599630 172978695 179803654 300851558 742637739 942503974 33882898 142449557 552469762 627069708 915434708 994735003 169734126 585200884 775180840 246349377 235194809 19595642 649730791 384210528 3178877 927299967 328064171 553541200 281200865 70512262 320778551 580968351 448215456 131789989 855723663 118703547 388239284 113888356 936487501 207010503 509194471 966180538 697121679 937770519 422345849 975906282 434503065 582876416 530768990 898350451 924933118 737173105 384366266 326935764 611446303 554922086 714294838 45248328 937822532 45758673 749244242 686111624 353629381 5661062 915477916 597196901 486907543 623713857 746219072 705517483 939238679 476623096 849304236 554127190 876092273 941328156 437702891 706098795 748916850 498784345 102021982 330979133 436621555 728740305 620100644 651779824 605503730 548257772 771808693 357997755 463393037 962500106 150263265 190724362 222479636 198956896 665140072 384272357 213401469 592534509 764341040 45369363 99116470 883719143 952208391 474930372 567392998 100199397 726447260 544109039 121444811 51768542 665828109 920461863 138572662 288254873 698337244 915539951 140779972 767663419 429099471 304599653 732681559 937586223 304757188 902250674 47322240 304454564 821175036 509361002 705454955 97767211 297451792 154669886 216159330 927425739 797730693 330591079 820822461 817753742 467102363 715941923 742585543 21740217 116370817 959966061 989012777 16862147 890523895 185601661 311558372 228731394 887851053 604792822 575400897 14588803 982228579 929305859 399347338 672873137 496436578 745750801 162019538 204045583 470060553 66370674 523551847 981937815 991513455 896429482 301563130 69221508 723001511 686234044 509560167 709004068 821097768 66275870 619253199 146637502 871816014 654001720 182306366 569462847 134286547 891065231 327349477 914400309 256500542 82894483 34565941 595589444 30634195 606693076 539092035 745626792 692775271 156383769 398229001 144067474 915371000 472543253 284384767 197994505 410412750 613223106 752194690 530613146 533221253 858952697 393860430 995965666 300681628 213705465 435103531 903347386 482841643 337751391 978496968 816164665 640984582 549462195 170611986 777075018 978815332 289929589 403229673 29737205 553016750 208350307 293049988 732632796 82512017 38545404 948513196 173676649 349572021 578099497 702291067 441442873 96053322 590209868 11904857 670534035 410201099 585513353 221334649 239579902 310644827 448712102 605814161 847356814 488527598 651078748 539943304 534463528 884040929 887371196 852379874 860781230 678198690 69640346 234885035 557872581 231234439 250536986 560154905 639885291 776445796 396841403 505992315 200337338 714558724 365136436 50232124 915636085 823335412 416311443 668544496 769047292 848567195 403907093 346661864 190813135 21169489 957565070 168602215 677192920 552827223 748927562 37259891 901972983 505925073 744921678 789637609 720009654 657137995 288866421 383256340 144130606 373514283 834971806 848211584 259333571 315999131 322567684 557286590 456538036 764637253 412779271 924524665 182719394 321388301 491758324 668906587 95470299 805610944 643980477 978089739 471537855 159968826 938182452 791704402 360747973 524323192 792848905 953677046 856626992 419797773 562844588 851600535 445985907 257748451 344276141 695445430 820285812 261674143 904274006 242998679 301465857 631895557 706100748 423412342 74189355 475102827 271564192 650843116 157233919 309400795 645395732 715449610 146736538 82554145 89411375 652566865 498715533 613631692 591369344 858460286 173393709 357189331 832075959 339501251 737703597 418456273 911892131 713059984 804221048 545341164 3342448 533508273 150884030 756076290 54488831 444129198 943891247 973364962 580410358 125023580 914586551 871534223 894768398 200698347 82948029 711303388 785879332 212245475 119970985 21591627 11806701 901082608 994193847 300198205 55000332 416435724 755361565 720404297 78887546 320409457 709178711 963849118 842220042 499951655 884908555 516807901 552066628 91764272 441106439 204514225 354074899 859983022 354460402 347243627 761645413 381006779 659329441 807857305 627152137 1090319 548392200 301166142 701580978 683279375 967421415 468268091 317322678 354904015 926762010 772408421 676918309 610750623 557313714 892044264 14485211 456615774 433805897 231701789 840607681 389859189 490093628 297841397 758751982 16962287 688065712 724114447 888497133 611821108 678490566 16971860 725748098 16345151 140576814 492344796 779196177 163495138 262418256 269488776 383583671 449115007 173696558 346912471 247134628 382046 148732022 953306594 812306830 695814546 944043530 118973579 968139185 904587832 663796041 741379753 537433169 937713194 301913889 539693368 758372627 374446060 293625673 597450284 125421207 231279609 244009817 815146742 103495287 662167162 393429771 712842999 95752440 127017945 107827100 194805042 463908949 808660635 579037355 768427810 743751913 726539542 594278997 98896629 527740041 6132993 904868220 202951605 263271950 9788834 863594223 177985061 522983114 256242293 243958862 867041049 676737844 484861757 428360134 491426829 152842826 430300203 286533525 716691510 495686816 147692757 272635991 502504393 462830066 560888164 512078771 85473684 861019681 878504043 552003383 345012906 617716773 769959872 501819463 561213111 577646505 348085081 326318245 222729032 69256862 20317983 582015788 496165602 153243252 955927713 572037726 353729802 538939194 85296419 496888182 818769041 846271008 83471873 202395199 456723281 155428903 752201037 293498767 434482958 202398004 21516452 733432184 367662112 473063810 654911010 50182845 84870599 144762980 838321170 666293180 856865687 270867388 976990470 286003791 1457568 215720376 337932687 195719559 453948904 835832053 545093808 606150594 877345920 166094687 308366151 125664812 916953780 511034125 562706299 94804263 272136950 420314685 383836043 53619334 170417333 852218174 818263688 154006352 69767833 21343243 76373861 190343682 959256836 265517079 794021938 792837425 321676533 251405372 19848354 911908147 370250769 180184510 78088013 617461553 307637211 765743532 214738248 948028085 528458821 104604774 490462999 607376256 842193187 588173111 395285704 878178538 456721791 511427043 832926301 991757072 380569127 4690589 996237321 122949206 127188852 945169993 226739345 253841951 917551615 678220740 341252725 363933486 730693742 317492211 879802294 31574435 461480817 812054046 331335355 979358440 909664701 379950434 880458064 374291906 985705413 714244488 388742658 100411537 992168953 840719150 380789215 329695276 477604514 66338847 821240229 256239915 767291106 194606567 917195489 335221497 949524390 885418083 464395163 309866618 141767197 639632453 511350425 656244505 286061141 642035894 737112212 67368893 488444629 962816708 663402129 27976479 641358619 46530075 241871555 636548707 719585543 920971367 541991481 827232456 664831444 475902881 209631413 800079031 191863908 195494534 389371073 72838583 439330025 955485799 647817200 512294733 858074353 436041942 752588650 456546339 668131155 274347583 146445855 2623531 991478741 329319802 797261933 378376649 812126552 71836128 370213036 962834802 870038989 923579384 305233208 433265814 714534073 634903640 464869899 355763447 168451858 977522863 573110171 353386248 317341359 833343173 609989312 216652273 788176741 309360448 50280714 273429004 553656783 130156707 296127439 185132308 600695665 38885602 496467473 306286329 985338840 9877685 910031352 293327240 789206053 322224010 993368606 272295857 757741040 688233500 663828121 359268061 570222214 495321521 933653544 603575699 851225001 157846999 190903915 462580635 866845741 22226754 422145756 396628744 806969657 237865146 106479684 720165145 613632072 583170844 718410190 289304547 810885810 692253756 482700646 240294535 952983635 147726183 229600363 862438437 447004728 80999444 979832131 181710436 622432366 973822332 942489350 582833067 735805829 508704621 158783381 676618415 584594520 66903263 605546266 314868675 251046889 586858539 226618720 391417538 967235439 766109284 885009191 127279144 402967804 319536880 998835147 159037783 933001743 550107741 103081625 331885701 152593709 290578640 317889769 302056146 704132083 421934649 35875537 100668070 631966084 778531712 451474936 559262610 301475796 990714615 348307366 450149186 689749024 544015893 379135135 537417090 193499755 501414530 596207684 179655597 348244517 385281884 607965203 975405474 996188770 905343443 179104690 850502802 523649721 511017270 278742034 917057841 11206064 16292131 353466728 888176280 366825061 624855234 546004799 474288437 481818397 14441302 750022087 713948452 54756217 364145360 49884686 12998947 448240203 423616187 410480898 265914687 765401917 177471057 867460906 637245998 15679924 398174993 392443485 382558134 749694684 166745720 79917277 338130775 558724858 533580114 434999530 54880502 381645698 403008739 180362095 925877151 432339007 296757056 521971019 986875112 208733417 288953274 792943518 965476237 509352836 910583357 858823434 605146789 291452830 67448082 558747847 125603458 554579076 685247386 137035330 549887944 758974278 153929974 754062200 985576743 451446174 196857305 878361350 601485313 918316040 142360475 13334660 364383454 370951021 742305003 534941956 788388061 201492847 507744974 362992864 621307789 649929142 801125738 164347163 170138080 674937377 432505427 725417705 469523570 910828464 808814363 301006656 775553813 594733660 529669171 526651763 790589457 980667729 140445494 930712400 321895768 348343664 462197636 976945830 248711741 910094279 995771065 860746721 237568446 228007709 58684676 761221438 805111284 705470871 181305792 57577589 389328993 446946124 700896080 176893842 146008863 227880676 112730137 508423198 532305387 175292438 574885656 547652654 641429873 943471899 904257121 307252332 616186084 567872786 700520283 176932454 734125583 911402067 454696830 473640041 575367687 212904029 530047755 981877328 872251242 507238049 959299490 842117179 937600154 822912772 835443744 834309663 845086277 164964515 455809770 365952507 412162936 63340262 780860133 737064273 176643033 795850315 31448685 674077953 945887382 287825021 48699598 198766468 324902956 268808088 13232684 896179155 78873653 390474333 539444125 185332426 657501905 498614873 22578444 774433 775543410 808492246 319044205 924966432 970004585 144599304 750105219 873126673 581014192 874998998 415007446 31530945 980882229 241676729 558942972 761008425 368465842 553166076 86763554 86956081 38962805 565817680 556896251 69672335 993613706 436323401 667312791 354170880 502528873 551436868 290680983 248426824 786294206 350669460 248233743 18716588 702630844 156125966 960909471 407536724 370119030 678436885 645410855 537769828 85359374 835809757 799957979 36583071 107573777 959004769 769666833 208403682 905864591 319629945 441529428 809625262 551483819 46615885 982224492 293528357 17599086 564430015 584165088 322696356 220754680 35835868 637405078 735408155 850097264 17715630 777441264 460855532 540563852 988244542 870882470 538310161 970210600 293111900 270123403 778702031 78838544 212776939 330527837 104186594 341381294 778114243 204041183 200134885 750469031 995565462 2280217 931197636 445070965 595029532 926304515 721367292 414067719 690169232 417013006 449825189 64693569 693992935 404860628 566881699 902636231 206200761 716717849 300076226 910598477 473023283 606827380 524091220 176071234 422736786 731377048 307990241 182393478 166082911 147579633 550697917 243831607 485226045 197004823 982369416 324160857 351677157 786457466 571976925 105643387 402760366 341990876 502103106 401307441 749277288 715500398 818886791 627994200 533311550 891146514 29998840 467503270 794818613 198555223 875045868 977400735 266390167 94625724 655484906 963506378 925096952 956570370 199055278 611082084 772818809 881325399 726137162 927330793 901327833 552299747 291267257 548975257 485753321 23423867 347290000 818236272 484012630 108482736 816831679 459006665 492913460 376611867 364142231 537514665 650493317 856097273 245225910 567313925 361216319 972250149 425694911 352111341 998995184 722340709 342101817 151272518 227494246 129600058 916026576 522436542 432843687 583587970 30994939 494634785 65531274 244813582 577999263 874306872 925375024 905932546 346745191 157345681 269519111 166948577 495460734 540552675 207563752 604463286 501762965 622621729 38576151 978302157 496578412 986781932 225807489 432162350 145426985 313259357 646984353 685961626 139750347 575434298 63287299 922844930 529922301 608400079 553022305 463285750 476721182 703127116 771887628 813669356 875529705 498700519 201863691 238847732 124822933 726980974 982165924 239340192 653181331 718749606 135722010 944680363 543594565 749393292 22684480 614746345 937735223 157545812 810478051 883437819 412015436 495796723 833523140 490450209 399839280 472578408 232992338 760519192 738561458 436192573 131482428 149729478 725851358 436223080 537597188 491551836 526166844 301443040 590982888 776359713 203206252 141215434 280470035 2650979 935808579 217054383 817753699 511322891 17808163 753974149 122807519 283038211 193167349 284890116 638631283 631829859 725245400 759395831 895848223 959850998 878991 22793558 872289541 110941773 339292602 156754270 853893731 184810508 266377739 336420245 249035722 181258532 230189012 628970689 673446704 382624867 6052847 674577210 212813068 437242008 897531734 678660355 12711607 834961982 363485452 964498464 973638083 428168566 565021989 165580268 239218669 552473782 500289490 788102841 918960286 890921433 834131630 766427907 434025710 677967457 122581977 462160030 248039934 845287182 884630023 949940255 603419126 54321835 173182601 839444003 621340937 295257794 933426565 600345550 998994764 797292698 196594193 453401215 728619506 926031989 186646718 452226823 305440955 518101696 26142513 794659638 799064478 881875591 559619938 865903103 138543412 599499483 965862118 279097254 203412730 417597884 852880072 810932391 287835536 243954771 685782535 683400874 578049798 51575470 664565203 548723490 673028053 349752089 75607216 959055715 688146739 716411451 90937194 618276855 561210298 919144329 443741642 815821613 754506787 689423350 276422918 103450967 660110949 738893582 275473473 64366766 339512934 278394454 271593829 871998477 798645126 88708039 379776258 338291173 641355042 289389535 63806104 405941724 839951010 765538527 251903932 503880766 532666896 582506832 892980191 616904255 369919430 635250065 288513523 713216022 676323767 822607289 660103011 195321947 506557595 158507739 435718993 682385796 10826482 58750862 851092739 464681608 302983091 746830080 67962118 893793416 939080928 387970847 519074818 723670053 618356235 115898365 930449644 202095310 656882764 799511933 121376362 671291043 589552384 329579982 602540108 178713999 987600978 417001580 925788681 236366198 566836853 842513862 681911367 214041409 282612597 559080196 584120922 712945186 942778996 504358571 338303898 248787353 456700163 438512077 13775364 804770841 912613258 184363671 407452632 590181218 61832080 972970906 999945634 273007941 389924043 242184785 779458273 772704816 825463580 758290992 35896324 555356032 497151585 637667135 983044004 775500639 127567767 510315521 91690540 24700528 496881088 258959164 221487808 152693609 645563190 649837017 715809001 117824049 10050028 325059438 190059339 891046796 616215845 517260026 19680817 542562876 62966247 877967405 182005986 978057465 325955672 409551896 510983324 715126852 36024012 706095067 179831921 888239106 794631791 564455374 971650464 310663863 859504956 551455226 484723901 969028248 646003508 79035777 919269025 161451522 231803497 374295606 491225051 838640788 400535829 607842156 333339483 210700015 381128907 718898267 207121748 605593396 7640191 975170696 93913947 271641995 31797558 247721186 604151589 300362209 384917400 466849725 333797424 142564832 188368334 654932683 844791472 322949862 27532325 355561154 378344925 827363001 837468490 300140309 214465501 66391066 972662203 359507410 618286763 25489353 393939870 45456222 240020312 25912828 139921514 428382715 429518222 629963422 422045580 757722061 33316951 291411684 761130803 501769479 192065898 646780554 367332117 663094466 149258568 556997011 765179527 76331354 731511572 541428038 692862342 944562714 172006130 788433378 560893101 676881110 512536574 249202523 590092940 63313477 581071201 803197162 567687300 385426300 434870218 703299768 965127911 157861011 831920757 977844177 727351288 544694138 498752988 312767663 318076299 432409591 156478494 668059709 786009443 708858946 610640132 397331762 736319663 17116885 733701751 314671766 349249325 525383201 489591281 529082643 274455154 172938836 448473858 926959191 727472608 599792190 242675235 631664205 904969308 45128703 565476433 785890875 229714890 77035241 184715172 504701176 742312169 790695393 43007418 770687291 198103980 783281446 385442132 840891642 161034295 918584906 833473395 906304241 168361533 640847369 888335338 762441389 812173483 181985639 47892919 663542724 47202905 794676254 306946149 212932282 475730474 344637116 665506972 384436262 603587846 644907014 904623126 965101224 773083048 100111982 799281709 503759062 625603048 828232972 237105377 498059601 101624020 254691131 301689028 750077938 955553508 502151210 758456757 583055670 367085119 821230921 839503914 615933881 696824671 85024310 255654154 480689244 107662225 923273029 531295667 892154544 87226149 218836063 379742552 469459098 58124909 367810456 973605972 903897858 197478861 984743217 701493181 588336875 731788954 64422297 668319531 157872230 733576305 787657136 74499092 946028410 831811605 651315751 363393923 124020518 416038220 748776946 371898838 223159531 406208821 20349666 875404591 323296171 971636739 319763929 555306271 957046356 899822445 480343476 113797754 667062908 884374473 898603975 803777233 741800620 524265404 730240842 487039050 504065857 146837613 922802574 710111747 780823079 420235434 45506467 624584476 103180315 355450144 681696458 161689590 806007536 715755368 733403184 913774842 36067273 32108453 77042581 999588517 970704141 57938317 156877711 13416025 262447607 482977781 153480083 311215997 195018145 250136503 349191385 412723884 375467591 777609694 820825100 946501997 743904228 156161023 103039216 867535414 736968522 218569821 477203111 768579446 951185835 268789179 708784723 231885427 386197372 693639739 801342195 173578990 706068861 920201342 984869589 649688151 642265387 230181168 785991593 459294966 694950429 383769170 167290479 770406715 300307120 410037575 528651976 560093517 79406228 185162913 202818475 321896777 527260041 344594891 518931210 585474160 471399395 585988043 918652456 978043621 385975358 940248963 318186243 565365504 26780518 837208321 905432709 455395184 100285743 213635333 518348980 506307184 443780311 942011166 93075486 795587638 618053553 3334138 818531630 309726568 578912411 27824060 778819941 248296825 61593191 348432701 869642157 587318147 853807956 371236435 964036192 600701961 365207674 370230683 25292325 230518857 724898713 117625452 238700071 204077124 77066594 350420468 972377171 528481039 837492977 507213931 28851215 278403518 358670017 603010899 772564846 392737635 156482956 840670348 250027515 263647820 79002642 929110792 604270646 618556480 155302943 249209968 465299131 529167900 822731455 483285548 247790694 449640802 385391271 916234390 221878334 528530067 423842485 165864925 498775397 918128599 451012278 712327107 225975495 265956684 581513341 176187821 679373415 822686431 552630539 115564279 469339178 805304766 376140891 560121944 434810828 64289004 152864947 203426411 921167490 134438783 284755434 122236913 260845917 171911855 213266812 444245017 534804709 87999606 437172560 912183441 535132142 992957743 660310627 496542508 800693678 606178123 455727080 389307441 554702533 165471081 605058744 83198457 680510233 44571165 338375926 967335918 353534092 473907377 663402616 94202398 411962822 94321759 132282962 692200098 820340608 335767118 346029994 815379813 948775468 583546796 237681203 651864623 602150231 197018981 400059557 664120669 505314768 394393511 766891190 407548453 272137353 189206393 65150368 611666166 934217020 531723128 585229947 985152830 104322788 576993420 62564220 279502268 875175984 580046161 859580092 311969048 119509729 501739293 723330556 907015845 669729362 402416080 431297774 203947215 622930049 825994859 296700962 418443289 462311795 96466567 953948348 472415113 235771281 839653923 474938991 255066341 803858470 618346165 916452252 352615548 484165055 516952761 842998233 698987641 707433958 846066051 130624416 187679152 787490078 864537742 367890845 583349970 305970005 912524885 927312156 725259129 108990462 767096646 82710693 237651835 9424655 823618990 56844280 68330810 846419915 429114898 63850862 408047386 598846120 188723278 734573659 596076292 804633302 518773334 670568977 148437896 225588498 981085066 24582491 307697869 436074925 594847296 240041122 724481965 414220619 5705468 695054990 242017198 565148780 618353981 330031182 150159975 532998662 662000962 715750062 228038659 678793023 520623164 967622831 415961834 976456847 874642763 992877010 755042966 919576827 76992681 659249344 100945829 605759969 307384156 526338275 5782673 963335799 67399830 687751137 190303042 186215104 750144796 686413924 959891019 604116195 42601041 36636031 869432751 106091040 31288634 813014044 9962384 24854823 314873291 964097736 406147247 746747083 427284403 156385576 98201441 554321128 37100520 947805005 361707794 76647996 898698160 285528483 583795092 425505181 924722734 735684947 540108933 400669582 672574010 278742973 600532630 88081086 151928216 369215319 529735684 344445239 702778317 618806712 811495575 546580545 462972117 596602869 913238059 762688617 455774041 587108980 846962479 229569115 578470848 802311346 948492509 41919118 174025386 403364498 146810500 630350253 228908115 204088368 891113395 458436886 212847881 994174406 646324278 533459553 426707259 933015216 169491156 217110064 147690115 165938454 255059343 538304273 667134615 218703667 259173919 958516395 796714523 76672949 262749976 238111890 426287868 945244538 382548106 266333338 756036743 29977355 237074365 331070823 952347563 119866690 738712951 441535975 680241043 363020540 566640961 111376067 967948925 660180060 960934717 773883325 161655182 576968822 317137187 824612155 38328335 276891193 403363307 288868257 892065868 201420778 694977730 304425824 424352 365325941 494857733 396664443 786214060 711753501 878087649 885552713 859281302 293282682 281469322 9203695 326408977 475847786 572554770 377246170 103269433 421964101 751566799 766001430 796588477 120307259 321665149 577522064 17995738 116086025 782479023 869107320 324654937 464555544 933022160 529551990 518857355 62816469 148491046 756804897 811253818 465430846 558045177 301203701 846881941 750654899 349994113 94584683 872559226 469485596 947287850 722395740 337776272 882909307 297226255 752922638 1397961 387258746 675103427 181669569 220680056 635359585 170271692 30855312 251707233 128831130 554811918 226043074 491722855 64052135 803348692 135698638 277072975 363073646 948596764 34557108 406720432 885587564 68932819 776528053 867261924 775504152 958069661 42128696 343359857 582505164 776071430 726807841 526028629 383687201 985740087 845558753 454117963 618117374 813769968 886186713 499961099 971763779 154023312 30005554 804411030 15775552 407741835 174027261 983619539 196391797 201506541 850535705 683779777 976530146 295667163 297000582 21177030 868195339 222669741 339707359 712687209 66287636 938013865 531901352 230531138 832513970 743952926 739493522 737057814 18670258 704989469 990413696 64994148 787590293 420698325 499922495 668330472 805699794 843481026 499849745 643400779 232172897 641075203 500567830 985228438 32550776 906000338 438585887 373223478 835509866 525517712 585883367 695098517 811744055 984241524 931545167 980516527 838879323 225563178 335287567 763904537 313588845 619261496 543842557 76284221 285947930 851159169 236132668 638865667 667653160 122185704 963768034 33303765 337422030 447564582 753946994 676944231 415582929 65496516 773344259 212258801 258274248 653874284 669316646 629258351 929214754 88011264 755723708 888991790 444681049 577299426 555733279 616310178 525346415 890763790 614691147 599535574 318180082 427631435 753424255 319084935 557598527 678724082 538778931 545121342 765117489 644131585 565221048 709177914 648014920 141162585 546377820 426045644 936590564 387057721 320863180 930003611 99263408 657015692 472528521 537267341 289994823 197829379 943492908 450811573 271112497 849782215 953207318 911125674 287479994 81607903 793856663 197595698 355777816 903682144 273660372 489722492 600960338 285212181 700656348 608958848 976174203 438538413 187519138 524815783 703625338 489406356 177752582 516055652 387253626 431732281 895788438 576275088 410799035 878843607 866739369 700941168 861544351 46919769 361575341 344626553 67727578 656228126 177356098 486357440 619800728 752261488 600470865 405226621 841883279 966020374 781811712 141384266 747044260 719862685 595356496 124668317 696581906 838004730 499615660 339767827 46129169 891350812 435729775 699878016 172580112 950846209 464407825 897606085 217482753 749207789 652057453 388818393 138552514 300509890 894014934 652553984 903033252 325033409 500777102 324974207 217663792 578483402 126996024 763788159 60500099 101546 722478699 853676538 533145025 485818279 37455584 745015261 172423173 261597636 616271647 469025393 109591962 215249449 417734982 594828187 350070755 876391087 162118373 652858239 328826094 553806304 917240411 250823616 488992372 411243126 498997147 798824926 714742452 890349956 883336753 993344237 748637878 681279961 401932378 607326103 214502440 911046455 972840263 166086694 100758473 483030875 775670689 848067679 837905643 555303065 990396344 189293532 359099558 755321756 843847394 541742723 661367185 729180743 364269131 669142711 2841131 708412151 149874921 454795724 327727360 798934294 493442627 599191273 371845422 201875901 331063938 534990561 228949622 241610917 893469162 460298313 762831665 709168686 338669332 196296409 186257761 878436794 825364148 209450775 791560 576229727 476078771 843527401 201176465 360668456 528026686 666973783 274803321 795865924 151875889 387915532 855889505 195127425 178901134 873439725 330455935 282623915 527406180 562926190 519348019 3057469 282053523 711666023 122322015 917888751 941375381 178216343 467847464 412281126 796717240 982255234 115851001 841376174 494848435 819987618 827123347 511743079 296906715 246352900 719313842 398289376 394162409 977990080 950740902 368702040 404434565 378573852 12546026 159396196 864521574 909968138 556246701 179922524 134526165 460998479 419875334 875624983 665134608 363158057 290795203 527321032 135673576 498444087 154722761 799271157 904257207 277346220 102755774 561666965 379931581 7491113 5648048 163409952 27534164 426876410 185951060 786515948 233569974 398423895 198977530 710682782 272830341 860345371 161890896 124962150 870747603 985447518 661401360 918825324 392404843 706072062 47213202 408102881 393514418 894802457 405018265 6823119 786940036 390648139 701325519 734934111 107210389 729426797 975498582 991444777 578093842 21475766 858238441 606214283 423231155 823046821 356061166 219576482 407497400 40927389 655470377 189506034 109866903 785457647 44968284 658380251 991268253 294610643 627469819 210689486 577915653 471372686 37678598 441677185 582845400 615642776 902090948 296553629 904281948 187086899 862776626 14782058 279369933 286197805 263101240 263674150 30079691 953927031 592673581 724160457 818987841 943545173 56571145 123711805 734994698 782290322 839444759 766447511 805788107 516565215 87603697 342338372 489949924 701804172 312344973 350394462 846767136 712744177 655504639 55379770 520862478 665421798 766676937 483811820 76267265 8079992 803645160 154415545 628699494 780738390 674607751 410230882 700060183 71041831 41798402 186518418 640058026 437925842 89729726 991695926 285100327 835810996 129638587 183737168 623944430 988255525 139284797 361014568 68869330 231220964 460824271 781518947 300057715 591858494 576039023 793564594 588547110 411920676 658432237 697218089 515414330 321103554 27384813 537566406 869378360 451701345 709054692 457119948 226716333 131379573 360970242 308607130 549758984 520187983 261828339 788762087 805920310 174278208 782102429 593668842 821327929 666894272 93279234 939977510 29329322 732823376 817408788 406591234 71949080 402442398 342790986 737681783 98368387 746883223 871686861 979781691 83142123 711879342 755177786 389486907 382172133 323690051 457690188 261836421 835258375 158122802 71944777 341078741 482703358 454841592 3030284 625920902 872529380 980462836 416234112 351055142 908641111 574585663 789300688 371935252 69242968 151937744 569967534 468942668 395885493 82356514 625996211 218720054 537282399 252005740 866615145 834692825 646392696 156119167 182100146 17650031 998929727 820292811 767731307 725462622 786446788 185633732 89670298 952028766 435813152 508395719 677016793 47193728 156555784 859695957 211094921 885571549 650962152 435999180 473742310 859560945 456616261 606360307 245071009 99182176 758223160 3462571 766330337 238741784 964403045 982940684 115244271 168033778 887735077 136552899 153446692 82593001 608869745 36590025 661204782 616383513 427214857 232900966 181493100 118784125 560334217 110684662 41183659 32627616 618377046 954418289 771193930 921719265 73630136 523589962 152759551 144646417 491612429 700870306 36196317 801205353 782610853 666081341 423484150 818535292 736101432 866752258 782430494 228314780 639947268 35727135 548701186 445542203 694630929 299149164 34464281 687113933 426625766 274461546 547553108 775549806 720919484 271575221 421073179 122765451 280202727 430734985 659038932 729524940 673480388 971064111 62995313 82120492 550570048 519565076 370858983 17492452 907712221 444818443 691980567 386411268 912714705 498333898 266209933 933288460 645221826 483726220 751482950 755868266 55093643 942083633 91397753 879827516 361545361 321685569 854635591 746851578 517505678 680150506 951214306 54791291 738414936 73601531 966570142 949929661 363160802 630558597 571901216 333059134 83802020 748030178 395639002 113536347 612494509 524527698 302462090 495417462 135011706 612280105 810431248 480361714 202963380 275523141 294657487 722656152 966167866 34647456 164415677 234241853 698674490 794569962 292910838 418052550 26454231 743627404 556301792 211600573 690276672 362105072 62488898 225576093 655780220 831369693 333844343 322548517 608132311 108451013 286085769 960072410 645946125 469932971 290792190 967883169 693744348 74334637 514704328 424837759 138424644 793932785 337854660 983273266 290345384 337296209 949637937 117648427 174864238 975977280 232601715 575544338 979032441 712826988 450395904 100179708 584123043 587233611 52751300 592937877 234192368 936452968 768614087 383035370 371486680 655585412 556826471 75100870 81988107 793340269 418093841 486893493 907845518 490049740 312256305 909950851 255742932 478751287 649296507 404287536 673436957 96563966 291958683 565939519 973853252 510694894 927598643 376765440 394070066 926982010 171849438 291335822 915495506 304321362 611593104 258593403 805237811 673961053 598246200 817543942 809248993 51421577 691685181 993167980 773424583 775038880 353131932 276818907 20717463 336736527 499798874 304555575 928835070 291269404 420621943 646007713 207272891 981552773 227124493 758532426 543029136 231891854 795458722 483926421 801243358 607582114 202901052 889122447 574676138 269618432 785609865 471804316 497952583 573475256 78492335 581668076 217907270 156834066 104826669 357014781 41235799 410222064 879559966 631065923 946227786 557136262 929516241 460031956 716527177 275137423 441293448 426547978 905946949 119094728 297496757 743295127 896075449 243415101 340266536 178237173 658213343 997146112 492746338 729564281 445503264 534083335 218326567 91276475 838804687 711961508 351781752 350580584 386118872 459567621 94154530 991004103 159879380 133239775 381239675 715649537 649533910 739600968 56507279 463531534 279439215 837053827 524044532 779590869 906131507 428868923 320812697 235401820 786209590 718079147 162780721 547105809 993793479 564506618 826751562 46235850 851298037 370232235 397359642 828101315 985986203 392334330 548765815 2433276 645315704 360647245 403426429 138837028 483750610 311342032 655450808 407574714 711799224 195646571 580511858 755291467 459028390 241030811 912787771 882101806 38131249 141079470 381336985 791156828 315223310 823298039 433802480 687725700 207426436 524992468 715070036 456618566 750565613 668156516 441280134 898460696 376676044 704418236 898565992 100962626 762738428 998020076 444100442 614298607 111848669 979153482 815308457 409981057 83756900 770755663 369020813 970510862 651729411 214166448 778539921 891315937 420148730 357251862 717419154 386128062 31793796 827844224 610849886 145132573 879646328 947079014 520501185 19589245 265167485 867585848 555881621 284992954 695340690 686483473 109377865 949316037 588546551 563074456 168227189 520575274 567648627 13214198 422279738 594664135 900089881 210790650 345345046 906337482 118376365 544895250 93136627 346789444 130931326 576550379 971584946 782126582 640579100 554896287 375392109 34926486 366030370 228631814 198261337 411485375 883793864 819284579 414867316 445755260 161747129 751315343 642359220 400065605 655750604 506910829 664017928 341933317 68133723 285434754 541258941 567958046 710920099 470901735 120650939 873183867 3380312 973140482 872221401 721224686 289486865 357750909 737922748 449068088 718154122 116133233 994432052 101240690 243440192 471299046 988961557 856951549 612133869 685790430 410405535 957872601 653516876 608227917 840263558 36140004 72731640 985584310 557986666 970194208 409151945 969853361 251638663 658919862 944538481 281480868 53469613 680203905 373501121 253737476 407762795 839842139 613768627 561511363 178275882 472458867 943433734 575735151 720528845 539248709 776757596 939543253 286454269 3589299 920152494 232056553 428613057 232233485 298698164 329687097 635328399 74628345 309073491 25124593 92983329 573013407 384532383 803365896 360956575 839681412 581173003 738979214 909752539 808057550 44681113 487422548 554888844 138232692 210849411 493437095 101511530 235667604 924968536 15605998 86057890 330406199 967694211 133403307 181824078 922224931 905349680 595063816 757731318 943148057 820625392 955715644 345012572 350294327 858814423 82172558 782628103 786502565 49417502 802473891 267147438 460476873 961778759 302966305 183135950 597732803 171525524 433008530 73034138 353895319 131575709 790170362 395508701 22647446 203372902 160892743 817699726 128519556 189523054 348125691 295765899 528906815 109363902 114877146 477084806 471846447 615712531 704034417 393694616 32910995 176470198 321654004 441977512 446392541 266196379 829933127 796477393 510057863 59526792 772898271 726091748 938250373 328046989 860813596 238558383 734195471 602265884 228966245 355609122 814749005 129080833 385285977 86792405 104465939 28199389 418209832 734890342 496811467 289301586 257842987 734952967 526295127 248112259 440637221 867768051 355491850 979691343 929672071 751110877 274744921 710429717 742583900 111470498 393172735 662764217 180481608 638222549 72164156 259771236 360874070 16412725 185071239 415250183 674161232 873965770 442189995 315179882 646990708 778079680 508156958 685563156 428434926 713080018 63521849 264619038 680494176 248249654 247790737 478840888 853566528 847280405 382680792 23862627 351765959 933659783 334613881 501959737 676291614 380335758 398875548 64691214 130267074 465796629 200141941 871023209 281385734 687197794 318044680 382394929 931698668 56350975 810417736 870365542 91614013 598833071 403083889 642889355 706180284 446036985 405254403 95505627 202056024 380084468 371807140 189709424 597147297 454741881 469785174 358930520 151367462 11624226 959723109 750103438 558878299 279854186 724740041 876447469 855666534 200292611 338147195 461342618 116298949 285477457 639006812 284772888 432705642 331488402 562426874 829821196 729471172 827640798 455828706 45632235 582383707 924564786 101275871 31112784 447667765 683967335 522099918 618937783 106159958 731352979 606078209 971461886 53381492 761213173 365165105 763887867 170045735 433670708 895015334 62930657 80759882 181068658 921649026 515628144 459284644 728673864 571137344 6904584 857334863 895260699 769218043 364570389 880899376 149287549 559573530 809225271 245850421 679280782 612935274 863479198 548428763 457201466 295510839 603529200 520042192 83600394 941458530 472610186 793049190 521481462 371363829 480075390 478415604 401811096 677880955 546080114 281318776 495611487 561573839 558598675 937984580 58202064 889252262 226545603 930274357 450808624 215454788 469225193 50884095 730396426 278242915 797837161 158564328 45803981 482322162 317033259 117871666 989651716 283989316 286466077 121321274 149988125 588819559 112624163 502735265 646805463 153615564 8809132 276530768 133318431 362553250 775478448 356588221 629667348 202612212 465718421 450813461 786658467 518731511 984919430 713653289 31895730 659418451 907511557 979266654 454280684 681173187 218148570 161841942 897407444 670523400 231159679 964044566 317993187 723612527 237430466 826647206 808098985 664259306 943081262 769850965 831675273 801920282 877473482 727987284 45053458 500977063 107678758 102377060 539360348 197083526 466689043 41210651 771390100 498428937 214416268 608855500 25815971 622942384 670425977 515921224 283482335 772599058 613570387 743319213 227801729 559177106 338713263 670691347 450301617 686818046 307241485 784607838 480810932 692608944 327700860 781377752 467874360 890315774 346937921 949966124 164807060 240995142 93087447 504350694 47257613 816801857 252186006 705172271 884002428 972520476 43849591 206467470 829658510 550597748 439082069 314738501 988573534 693154958 190083651 821799251 593188804 172356654 294432028 625102699 815641514 990742175 418277739 242846397 748306435 191449640 428647468 863729447 858295269 805270643 308374889 432934879 216876816 88443755 904368014 129133145 284045396 203510783 447551306 574027806 615460188 24700185 313359906 5691302 731483643 269748920 896244762 162918585 646001581 972558576 455291503 164696057 596048999 659698678 297903705 797595573 594518428 167469016 678151532 747373602 738928841 752093316 282438677 189011771 86226267 457406356 179591154 902981478 247018318 738917678 850396564 902474282 406597521 129183131 931102057 951275053 121243112 692904963 625410429 209092595 459435446 785250508 49520052 915075279 252139513 904058906 230642805 704964663 337576573 6002136 28403918 524337998 258990352 570464965 914273046 130620608 681563550 984014298 21774488 734782258 152266519 289832536 679012619 733955364 852349013 957567352 775515413 809986192 909340599 180155020 867268365 280948818 529121246 564071353 408668644 570195310 142657505 555007192 505919933 423191586 851634075 107990606 810683511 236544317 563606485 620687740 489324309 560092336 130846759 283283985 156266373 833019244 362899981 382241145 135177191 718620452 910590382 29029388 146776755 592633650 872695270 455897789 666924929 617249930 103724868 597624797 25780467 706000597 715574365 309410147 670882308 538086264 492276486 278635443 732903862 225247334 527831325 60403729 118319288 555655338 215469910 225947295 258383938 585417910 617503063 266986084 185765694 842052315 828455451 998670288 844034729 341585169 567922318 737480035 518805220 649535962 940697094 566937813 347338155 392132072 981615643 326119381 151443208 540478501 426326094 564933590 760910600 1080338 321458938 177559334 695371558 380257443 49020650 366732163 894655719 776790946 785184338 982096414 209507901 559703802 560000548 609523212 106207383 941560098 451493802 889858981 752860550 797904421 584974536 622106828 974831892 448017510 15670357 898760069 544014158 492530206 381741117 746681009 913006083 771872726 269655031 66313657 666913239 28336683 258025289 972651336 247740885 456185451 294648336 802799406 341237942 961963775 565520757 125830188 565692294 361373923 850693836 521897280 650688811 66303975 499011595 347190238 555181407 769057475 966743907 412099204 429448393 262275304 8626734 82766276 499225363 562378065 706210207 679887758 69323294 965285137 332392918 235971948 22103567 669957402 777214385 829002362 693691711 979359857 824054722 66101385 867137329 636242661 502632890 28433376 47149285 701458331 987251760 835324710 670281241 406927163 869790174 797925825 876853655 38509009 403038774 691119524 904123762 223604685 474202709 737242615 426182014 560209672 429260036 783751992 509165139 81994226 718239532 892475374 104690490 856381430 729886174 819142013 645085130 764685855 886111967 365018330 226722853 324352044 102569608 873242889 370100690 862993274 161539367 893500261 102288889 516646619 230563123 703473071 653403465 941735000 952272635 674213879 463993524 966321761 259781553 26519098 271883063 345411296 888251869 347629363 111650874 199381093 794309613 72417378 350515237 829914699 699885864 548157307 514770820 481253387 63467814 531620536 481532762 358997159 750141496 5573394 533168247 427447245 423120284 794535797 836270416 832106919 288330887 49691372 120365616 301231862 544801730 564775914 124417799 898475654 213196551 591965839 940409226 666047755 810713334 364890767 283464920 433881047 934568883 190771955 692586206 934563747 544256299 339716190 546255232 358487028 779139320 565182508 183260858 432027921 961147873 781197830 850142235 282419589 783378408 90706906 329701649 667777023 232097251 260246513 928930878 488814486 238950375 871002949 201764021 299594309 480773246 381050139 437346901 791005908 907388334 605250750 662256187 643786363 590476290 111795537 618424701 311834522 323334056 498041726 550955620 117180704 985876479 762923138 594404428 588949358 525618211 725472427 257369311 917803523 908756868 288636216 915663975 892503824 903069188 661256428 353734312 458063502 840509425 757234657 319409855 891306503 852005783 447025728 678099301 63766326 967147718 551746211 481407350 861812507 502039529 465539982 881306612 310000094 59570477 680310759 127654477 660566802 953623080 342115459 116715564 360219315 613912223 483021247 510555886 166892940 307108064 292622791 728558988 957352785 934602733 883778327 239903413 319537512 164124766 885664846 445451388 686680451 762507392 483778283 334428206 103440931 133557759 156261759 162889299 259578204 378206433 651378078 215934789 731134707 605440986 976460876 553204302 481689676 68197035 141134667 999969469 447938512 280409654 50034376 911363651 904021704 701596573 116945126 263798156 890132604 984357268 47991533 444086758 706012994 985205036 900895595 495180607 216915738 781420907 318394522 182918223 569446617 357615889 72734046 330027093 504782241 554060590 996804136 533548046 903778185 134172466 290291848 645594549 967819749 374575237 630746637 38498322 267212283 766783112 585624833 973827971 339815642 638450922 276073495 398885064 818087700 532814516 425461169 113018167 810680989 324187895 276255834 916940770 280819666 458890199 847257039 673547041 166280012 968491220 802266062 499665371 557577775 55941570 67290758 567271524 439408279 456862886 690994386 59799751 516362189 706400839 359712518 600123987 348465893 805407033 820557723 889155486 517330909 492995154 306533817 876003069 49649491 878481052 136683750 366481702 74822741 967982916 810262332 446807658 613332429 686818825 907997534 642582647 764478130 479594227 766363977 930703808 774805924 623671472 383255574 976817668 875613487 319300683 431295968 289013879 918388301 288445411 699267765 170691787 278130131 834422552 501155895 13360872 831351221 909394910 930632118 980351767 386902354 406782467 175768862 118430487 521727801 290002838 982295602 899535097 116802451 829522286 738541314 874742433 906180665 112058718 624108861 189650620 411348812 698832636 842521317 455657790 101868344 218548939 907650381 608434941 248927633 93527368 666265561 625654620 882241885 855622983 797817792 16544769 336020121 353912688 867987501 650470875 24130821 576094466 711522956 456626899 310988863 73444758 907235231 585331762 147267343 562524899 504925478 428235964 942141894 453797100 942349732 199612393 780076032 60920039 306561809 534903076 442757400 407666303 378984914 3484652 118029529 930253726 673548404 440453908 851289413 389908471 651765686 709193923 333253261 579329612 760945170 254929945 230445078 612427551 595199423 740883168 28413978 122713574 341940690 795987792 956572775 818709037 411063981 19932934 132973952 705856374 502796854 84174322 463372170 185581112 785414701 417378071 887843895 714733957 547237407 557906172 382383164 112663051 551390551 471857635 70257318 858292454 418675309 435384418 908685112 741120730 205296503 385175322 692369628 754696986 419706894 574928397 363666130 884564055 167619627 133630664 373729869 263007671 140940095 233413125 250287474 831358480 89390847 387194287 331445283 627655211 570505556 744202970 684249844 163292256 868433355 860897211 720046632 732902924 68277145 330217057 961087937 789120723 416309696 72022082 472275326 281790757 210822467 64039706 109672385 168384584 986725410 792235834 791827868 500656882 28473465 232752611 294903855 671426620 204278307 269125004 420173358 455178951 625664022 632345907 535927702 431367704 533964562 234007739 653408516 846078361 770770434 730560009 267602108 720811524 3637309 908454503 235418034 398378271 202002340 131898279 186749039 649842204 879724671 996433248 748130671 190294891 131216630 369733700 54480790 779457265 606091151 326952771 870931771 23773785 470194106 584355768 509296650 51601697 479307678 634295016 215511657 842461244 338422838 974561793 574332571 3422655 129665370 770547823 100935051 898079042 204268271 963546152 408537732 334720926 553271800 708234778 89782351 444080383 21231681 364726705 722101406 622036575 319007612 270962885 57823242 386533693 767015469 54981187 177446974 606560680 372750716 995777821 431802734 275708071 379377451 693345463 86771928 135013876 269199779 770405728 28834940 275100867 926820283 654430032 917125478 521385404 940460342 288749857 532328493 768150610 491670684 83766722 859447309 613735012 211371833 599256309 736329656 87064948 570838353 589268600 221746833 156574590 358078480 935702952 991417420 204780306 711893289 327589713 516913641 189782575 580183455 101902870 674500349 819512302 840584250 323790723 250490039 437090041 66845334 737565227 724734990 348710656 675916243 605059779 531005230 856352040 124589834 2204905 149832841 138376947 296115389 169482324 635526419 628465547 357235924 576407232 474585964 759512341 18922402 440853557 658613477 19117257 132429766 711453253 671696800 522661776 561973396 727099638 907082752 369815037 66221209 643078624 630618151 586338931 135260033 781067086 136879986 65035388 582627189 883971435 883332180 546800764 467128910 122748130 648797598 601132122 495822653 289960991 400243935 465732397 383769446 541234118 579709282 168699843 469399668 740031401 230034649 172849424 464683056 585916877 777621480 538989194 698212869 743944291 762796689 858185951 290062129 610746128 221426169 960568087 242826682 176080815 624635710 772485328 51228565 982838213 500446018 670761785 253993540 115291784 735931612 773067509 762604443 377355609 569168773 967464923 781764794 749212165 191428314 509366737 16884836 111810710 374311392 895253123 77201984 819558856 447806344 757561659 377305900 911794612 986479540 440918916 172100468 822813837 296263126 899284523 737632563 931565256 184640068 832150302 25660302 340476689 29381004 447489831 845148116 431074222 764529598 446966824 552001445 899754447 721187774 230335908 627509483 857932090 376940507 873264243 922885581 115876331 583496247 475754719 986439548 464527614 995952044 365232420 858852522 9432073 246994106 429176118 18047595 767635736 214168532 59430301 135966415 204989067 449396714 928886487 857565599 992893145 792657788 775077239 534318610 971086411 859333644 709612400 710430802 206027385 562564656 277124686 119784382 352498438 212399351 498126606 36446000 661146064 371282450 183783938 368109582 645249683 707464410 757890714 606215541 174776775 776462233 468745525 733646688 77696606 33624436 824970670 329696220 210310673 816620359 34404002 78910188 313724580 99509302 241720450 259833812 547072794 762391773 147880257 736799987 286945493 312088044 314239463 997212382 542058009 842940743 933857294 132868222 761017028 884566045 934542837 387488055 952086583 320536625 711053368 584132725 193493518 130260434 367303168 481260909 957569283 867233848 640445854 414761621 673495425 132843683 557931450 518903594 137367556 82543558 677340129 642524118 688115947 603168229 738072329 399491443 171711830 66478791 609512782 324068141 388471657 290262222 683544869 126639366 21474162 852568648 296506761 133335418 322483702 21361129 727435168 261661102 431335650 602875737 437103920 524685914 515333135 396987097 429342462 378779580 602658213 531576705 343731219 861792215 780116411 871047719 74443057 243293831 304255206 200374494 499964521 739723906 168427217 863550205 354161363 531540316 737972856 480587333 702953278 824269595 175245304 311458762 874072556 390770854 266359919 25856567 451209072 418405426 744303914 9130642 205433921 39355277 483410035 85560420 150514307 142452153 839672758 940699392 266820378 458955934 751595600 751256827 484477837 405566688 120511359 545290853 927750635 540893309 654616424 107305460 95916413 246440790 840167325 756348327 440826741 32413853 585638851 151150784 293542620 312551078 991673729 869839720 376096652 407699201 124586202 552062030 938270578 66598094 901151649 70053719 361886985 355676757 252488826 165659522 706153797 135481288 699175616 115868721 220740243 895251400 978858013 63583359 889573421 818018079 387504839 616775770 474637215 960004145 472066873 205671556 201048924 366644033 682990425 841528506 149715167 82928825 386931395 441552325 285316209 943419590 380843132 779837519 503840074 995851935 38166686 503003411 229806738 264463487 258629446 675290285 879398828 934596806 226650874 253981217 361816852 592157711 390986043 375405319 413972999 831281465 45715601 96183451 742236519 240874773 977293090 428549374 78793393 321518934 450611992 780353805 993622580 512097264 529156626 263084544 424516881 665155916 686670785 626153477 806066356 839811413 827225481 658552360 643729823 669679085 529565121 554572690 360402305 442741783 833853073 810370044 385153228 717425212 706265468 839028619 894646769 302677535 598801728 56207114 133081362 824051885 942380675 471675944 11626836 678492601 34516683 823184580 538705818 917279156 964730448 504682893 162865308 534887744 106454735 419669095 214029252 375478988 745690274 502327870 874395329 843589374 320301616 155512605 160540139 526446535 130225384 978993991 758780195 555753492 872672115 77944595 17460664 538886601 652617154 699022717 152516136 426549857 363232572 291900058 475761015 923607784 606220935 95178870 841609656 392695933 606741625 182442078 924406012 535501362 852241397 869591498 132792999 549848204 934374325 883081253 861109560 140957798 286033680 193371172 739432255 398515796 622135480 285566229 831414464 314261515 844407095 326290735 756174873 670814802 372266160 642795650 966217562 821918735 33217586 112102771 218556068 869637021 646030890 745471723 75780267 155578633 830103793 266447211 905120513 186743561 66804062 256476964 55257752 790413263 790756174 241660552 27348572 290670686 24616838 494126370 648074614 568672546 495076934 166145244 874876106 862373524 845166503 800520717 311180664 197189859 766755879 486376848 381552870 161183111 556322546 859754494 924557947 860772306 297704938 753838843 981554441 637047311 474639875 279178986 160971509 88245566 553910413 549022822 97623141 755428499 172231303 309988732 44925726 967592504 883787838 743146501 775633520 87034165 567128264 825156077 282483416 981128892 860502688 503076164 700627120 643510367 846826059 42668931 482115944 144658236 39114326 206806771 442027793 890254387 656424600 16412862 584044793 977929713 354979248 2482962 744347524 540399136 748273220 955564704 595703503 612947070 883046385 618324341 38015448 432242897 239255014 434267774 625787793 932415838 109749300 898656341 279407512 507374929 140191470 238200715 309814499 283284618 701899839 282408639 522292691 827890738 832420979 50477769 314310389 749153406 773815449 91988450 650767734 188442506 26568853 636913656 933290075 343605546 928325198 325329137 974150287 289189349 575062873 778083644 157118099 712829409 184556664 682810569 925210605 91542443 385398933 497536685 801189644 30589705 434520713 175499926 258072231 24197993 818232647 53775884 814863191 37592988 124116067 586291096 976745242 912169637 952887731 702027513 229136759 458161182 973303576 185681967 281451405 661995321 49375967 259447844 873246084 201429971 711728026 980603848 541027742 957827334 682168391 248116449 715406415 940438076 332262391 822630283 564083 640654537 387640876 126449866 459178476 335579353 271677428 413948991 30070339 768917689 645725892 753489351 404236912 386848998 946986162 598955682 236988607 828934486 269884959 158549927 51384857 273718942 189031158 371667860 338841055 650745702 702627753 455028630 857579818 223323417 592417691 334136264 12146937 597659547 293482403 621120834 253132037 889984621 926052438 877569664 925772353 116506092 933843522 624815980 169337127 452041122 683789876 11622805 483644054 221596507 674617108 386670012 993368185 796619784 595528 453566979 600447470 432081746 404341491 399858281 950260986 522210631 993330751 404068246 922814068 508766910 460698590 57621910 224588336 521288687 832705738 154535513 693540984 655542971 561679936 100959812 369959874 116943770 519704757 36697453 470980446 135337612 376227051 350081239 211372356 332501284 508186930 81655552 771756247 293445316 586476972 492479798 632900098 558072085 308727014 299607494 352216241 646900617 552997073 63805128 238287422 24992414 943099139 107741019 77756404 342574535 935922567 409232747 906357724 377767682 327298173 673786011 112392908 736254889 179075164 833425918 919257220 95939945 245328719 386457240 104462109 425083826 608394310 37181976 789965708 387637674 912510417 54068963 751226322 830744347 825922193 860785967 834116335 444201476 378585006 420409792 35332712 153744566 811375443 794560311 855424062 304852289 271865309 278725684 550193417 171466838 980027238 715873529 946446953 583344593 675349367 237120318 862041067 758061605 308372644 43315764 663890206 95331837 772948977 198603255 870580447 625768617 109532171 503637184 598054037 49610422 637150903 918400874 147122566 534982896 224534877 894824526 494316264 355847011 213127165 715612689 167122089 263113803 258331086 826584559 971410982 142958848 905713769 460760305 331715383 506048031 665245413 215749299 846496403 50891436 976268646 655271992 830680614 746291283 408254959 725151335 195541577 51488080 469897301 496728421 908144719 298274809 845725438 84378959 167516379 81693483 459375319 779435755 42123692 723461866 609637701 325601094 829565614 649985434 987080290 777645652 640427035 478175226 565750889 932313717 343397738 788935810 715571348 611000583 978163144 541126667 479198571 29976997 746989386 169523266 347341491 227172673 101512102 101554799 660168108 779889741 937526006 25654355 264201694 934408084 145020480 720738200 468364204 629124014 382549782 761133053 535870940 70808601 405198983 169264122 4338082 628563275 726400598 735394644 741847834 318945966 671157410 643002378 118077177 111274409 771949331 227305876 311302545 354475770 24439697 799679678 178306164 824630240 939487739 472667025 763791029 568624435 80895528 801143851 599018724 506680368 508916655 66302735 200470866 644989116 159585071 528639704 42034460 395070873 743888732 277016921 693976246 9211135 809770626 855363481 192269895 807030823 722520059 883674924 839015592 523928862 10144648 447668634 27904770 826095280 844676623 180919391 63751360 217269314 620606392 314842983 597627496 502710718 361392668 52721134 370729944 842485984 684169610 689203184 389863278 572619926 688358710 904104138 872662657 620893759 776649724 622372929 677166028 107777443 575265087 511797839 765803402 898068383 434850574 183646976 663980845 150336126 736720956 32745393 446864711 556817526 964925598 399626184 873382422 434343105 599886589 25976718 258395540 169716582 997444292 986719732 276310590 831667658 76492315 899644232 767041775 382189381 204503372 505918211 34414108 407983635 164776951 202440317 401110619 831289439 76410888 637536922 464116826 29089609 316624861 417961913 520306673 671651808 753659132 90558700 279632572 503999210 662919727 740063478 358533506 902401571 444554165 941663246 859195982 716933688 368020926 353809159 618272235 699615143 769985771 110094229 901872885 937901613 87279945 164989029 247809698 342420178 426006841 306002108 492241176 790497821 838653060 53135844 227822203 832356604 885955213 198006563 667611856 389558102 687981364 917887025 260614102 387678418 258640309 403137629 416660187 973026449 773110456 303831602 703921194 308778064 736453331 671947905 177743391 978225053 38445163 24765389 976141224 196028316 738030236 797489938 738070769 927858984 65472155 225573791 583395698 158346822 133074521 270856569 516745615 539340369 520273038 332807205 630999903 906984364 920451855 213366786 78391708 731907055 135161029 227488024 489462285 477516942 291834199 354125692 492804343 518166106 71393971 936202793 913227366 610733524 71818383 666945136 43363624 342992986 110698983 66202424 707446463 827601251 849551819 473948897 318536464 870496915 608585407 70239736 34954331 681710809 936259689 293933126 303527501 367821025 874785801 868449431 748567549 816424470 483899906 996759771 886347579 795069661 633129574 391095700 152843156 680055430 815052524 754430225 590052325 814580584 613279933 113193150 71810762 836036915 483273103 643776945 564164995 130993509 83682088 189305781 400588662 534173565 240382352 222744536 678402631 464428095 950633295 660557067 801555668 134236718 170296712 888098691 609181101 78550203 426405401 706964868 6918885 891142629 62665005 544899078 510241065 594453122 581234935 459796742 22625205 203352208 403629611 90179390 812371168 132278572 669671276 891110141 324233121 867111522 157378799 662788369 159656142 362705302 159423701 726052370 777177066 537129669 48711220 402670222 84378320 48988148 513655938 344815254 81127170 431709010 833288342 804449473 321621294 749814094 929149045 917444561 643826217 138080156 686201964 498346495 678461040 611792060 66739290 276726615 329217253 342433358 664047449 228923264 306142223 983012023 114965207 890505923 315493152 142118791 99913147 405274359 988404532 633884625 989623671 6687747 600323509 729399788 790206134 758675114 17660992 708453383 919692857 854819945 373067219 707910394 17589556 645874727 310488020 51060514 19625837 642764181 816185444 971263608 260206299 719620001 183470974 22932286 485015309 268946707 678605194 869900285 929809727 504489937 794673909 744590083 34807342 821490269 755199461 809045328 112621665 732520273 442998223 563848751 965769259 743096027 905125546 589230926 323451399 755228530 936941887 291514796 44857951 273359158 5600863 591135123 804772575 784112914 289738131 446871717 435546129 805857055 977052005 493706204 245366192 682264842 631658384 767488761 972951014 302047877 905676409 253567270 514738557 31086961 658449476 702919056 402285696 889453481 307528981 279773517 167799676 169769841 655474917 586108613 555615587 979273654 339361715 783815995 225629548 301614419 425932724 927925941 386700369 641752423 152469299 580408207 805103620 884860875 239992930 607607963 433775928 142984821 491668267 170963600 604482747 917621794 29273160 841597695 328720975 987160775 890929138 818901833 794176329 289716798 93319034 333366209 517585015 193479358 898496314 100973230 454147709 954922910 573035764 219868167 391056331 797979374 869509979 311040914 749334197 725387647 190340581 390883306 523331631 45412798 870117500 266955217 887712543 567464809 151754153 251440317 250803441 638108864 786719083 321195670 354439958 861969385 963720963 954635037 877111706 11826113 661172814 874431958 347200064 923317819 241169540 290008641 685209007 838264168 478551621 792832916 58547302 344565056 307032522 810916772 105377149 472782174 282149565 208626284 97760813 805258532 365291749 453121193 845772873 997455994 338879542 194650734 401418060 131336903 656299731 64428577 682326636 492517142 564221223 461858790 75809613 702152135 381216317 530880804 461670590 743512360 921795342 47247251 544610591 953983271 482216648 58280501 429014376 500543136 390293820 20250635 178572626 590132835 461557353 711684258 83146391 940663941 241005413 868529033 236036246 702689940 865073599 913025332 502628018 139331038 945784246 321411595 229709064 874685024 731797337 3147747 445722815 184395021 49314946 7182854 437996021 807615087 937011819 484311702 616144073 867678547 579173721 990045418 311002028 268241360 758815391 775892100 798018142 324285622 982975841 647264266 779037837 249384123 637969731 228226125 106570675 282910619 492077957 935122339 110491825 525543946 171287363 835638753 741263451 124407908 454372076 794300884 752619448 586734252 124798341 702761909 806269632 25505300 223755138 534733493 528566412 140850832 793944192 326297848 505787640 740248612 819641986 388381600 99816716 27145301 770079213 798865422 201420186 879934155 926445014 642849228 394516608 431572800 686037767 894900012 94611053 410793429 226746194 193903925 127356007 944208788 562591489 346812280 255642610 475369835 610374950 344892588 199046589 285210482 180890508 275521523 697510184 442076321 762568819 662571837 106107058 178094866 187726878 115464514 112631286 133694417 601334072 569769824 687540515 601163216 913618928 890979662 877304757 696251103 933672966 207965363 334146245 601202168 849692792 693303834 648660433 19335235 206506395 460422276 204898156 789074308 720338852 792339082 120064367 468430237 715187402 78141663 453704428 559654392 875248658 77700801 337661511 433814661 490122752 136877863 624857626 259149465 497448818 453475732 936111735 708724402 353468760 915162719 276466452 378412353 34985807 549605933 288126770 672407625 996879284 610928109 242190316 364083826 472613264 425691393 462728022 989254684 937175365 769649571 546832158 530790037 175327958 548009615 306499481 191361619 555475462 563188385 650166776 210607747 926571437 616869438 804200657 232186500 80465367 647624910 262293250 893686679 932653054 301364683 749917486 598616516 55123686 430283643 264954615 282492569 80490123 537965927 976633703 755811816 82804302 673221777 652530938 524217240 804139553 231619148 959397926 590133137 695689087 363748660 29513500 679343900 993406482 471654800 101925801 936162366 138051409 10836899 832099039 422633042 943076752 175527615 102506444 87855119 399466939 956170568 952167728 592782862 434941147 160289291 107938328 890842267 9011714 274954744 204908160 335259199 653410561 438347962 327407124 4627052 853218088 919186388 171562684 536109070 126214724 480541836 61173545 144382217 856032683 324068754 640287147 20323885 974594415 20732923 337522319 822628688 411414165 520735523 153151982 339542348 841207218 401509406 849234709 694519247 140361959 134995681 989127653 849534847 657575104 483387945 328266060 649948103 6286296 502334256 951147887 985824678 918679327 130477672 327418246 210979658 561780034 78765313 230480152 423355852 343615756 4205359 572253793 963039442 800451187 186455668 148762010 181465691 938354516 960273305 373232940 29389210 781399263 939486820 629522390 412801691 217122711 521298343 593531674 132227231 367138406 559984738 793539922 460055018 745771729 949053190 730516313 530229516 320572884 77185598 464988695 284346692 238895702 470376077 857007543 609661899 381685534 501239417 112519923 18664500 673458478 377534360 932559044 724693706 894578906 603242931 81289846 424633288 221533560 661395975 266825115 629455954 95813196 364545319 325877192 461483422 625147542 185478617 899204886 981320254 115072255 570419744 796495756 814303213 360704487 745988174 176718564 37504171 924708134 516179806 422357055 641194350 800811208 852116253 648712406 296672812 9738157 83974362 553269134 695857490 657858211 664496677 943185935 637006903 415172 51791499 941145336 218233435 824985764 339565890 148404870 308857671 487338025 652601863 645541520 846206544 535495728 307133754 805462113 712847975 928902481 525199433 338074538 351241820 146264964 450999432 803804335 185510349 342383790 342291979 829061166 157329362 499214503 272855606 503472907 773629703 639326014 485890881 488128722 542896216 427138168 4321423 227525678 123963187 732505511 749887748 287521598 196896981 396020763 180475023 220590070 545596561 357523613 531611204 726662997 278890609 992365696 333771134 339461208 21799970 57368748 750821814 989225942 890524965 136150244 886458025 178701273 705484770 673693370 650091466 542302998 364028766 751174421 513054995 785563910 292751455 878627225 794729244 141899084 296823279 160173306 736684103 241673627 920516968 769662737 265891489 125964193 547842178 205573747 800411218 343283401 527712364 670518752 990513304 441033102 880286778 400445258 865060052 557901476 105970458 366866611 119902327 885770674 668582512 754133102 89140324 997414097 334725846 443278363 248355024 847297231 499309026 563894889 393649556 694105139 902108963 472653234 919456038 993300116 786555758 495404705 602606249 220987278 633186270 99625414 365087308 484336415 409542153 780911991 937963814 989583295 296298488 74828934 653704323 651000337 148890356 933076904 61753706 235638477 589141005 37553849 653890993 21044529 829034306 258742958 231992342 215050057 640349641 79926446 727946372 997433301 296893254 430378414 481642817 646301797 411485626 99903935 32246188 975926941 692126874 627796514 192503715 36760467 619150606 453913323 186087093 387092078 776911284 722993722 173270315 63876969 645890270 248978319 227869576 83682461 726427195 873303550 332495833 347572887 494155315 547263598 767800239 261656010 152458560 411761420 853400970 311193754 718094333 682335297 372028865 613514983 933366463 388049081 139408558 976756721 11410075 364347197 319283236 525923931 372142428 336732406 485189519 906023757 303519946 563212584 971008759 942147525 879802552 987950613 169330105 587185845 54043622 975929559 611372840 169269707 354640817 199843891 320389944 667070491 687925974 454845044 430451571 314521942 68626083 435369093 328975487 28393300 561909301 890799071 880051740 271256580 427440709 946850884 456180994 482356988 314513787 518436855 734310 254369484 972573852 706419074 882938091 555963521 147287985 787670417 420665146 899136007 991138505 249370054 343905164 53356541 58909521 166427696 398729541 396273578 63072732 826827485 233705741 140616587 389734327 734888628 231250139 138941281 674858260 614149146 141836462 864867979 358016277 368323629 123212001 664100673 545459344 112262408 200769492 151943091 938648367 288110413 835819438 188822053 455678508 452118998 104230479 351658171 236803608 5889052 515531541 239654134 394070222 254875575 423205169 391872386 551690861 947931177 160174016 63256239 444449907 916712985 950663790 987153089 823698002 308723768 261360136 304419661 36262052 260530061 921946134 153377162 489217269 835852149 462921438 873194308 654102966 564937103 218246390 648303567 152588233 22836151 106751493 623063741 298217898 994223795 41842121 336266339 91384282 527114637 871290887 986314935 369191163 653207510 629105594 277715423 740612589 240687695 884220490 701704580 22250552 732722586 525329918 491261973 381973031 225307081 145659274 233693829 753257232 760874504 609056354 585571870 334482751 503723966 522632118 351609479 178389035 445352486 21292007 519082223 177082032 754445193 383358319 846304631 844897209 475994692 721156941 175768870 905137455 460012865 447541785 940051043 129770359 842785003 988616816 383543070 588414984 831425795 874823736 906437459 665177569 618892025 210624450 563138868 10184855 651974346 302304466 794108836 150147987 715868347 67368590 739832206 75005150 796952168 325979968 930724915 495292152 262777459 530479449 255814346 693793182 404442869 204485381 703459415 599577337 180682566 751071867 98433739 8856613 145685028 524984317 556397662 55041294 27351516 295701074 959785709 22526527 178122510 714533513 293040969 77139941 264387760 162856678 961231554 419289709 619562078 766107867 847327819 936418329 371625090 403898329 237137639 553472860 810717738 363875542 139786459 791354474 818550279 257429768 228510446 916503186 73509504 696572350 775139076 171672314 872223728 386415624 563123579 954147103 178191321 578589211 230637709 106857711 849852177 684258201 774736853 784206131 157882842 749885205 679519769 835226260 639359527 704407646 157289150 553821494 8623501 758168361 588508905 850790371 395407022 101598813 462933456 980090442 484287320 481700484 783472407 24327708 431067801 267701761 92733565 643537189 351366486 880699180 255180626 704313706 938038961 868910548 762107099 177251432 92410052 533225521 54257604 25883697 584985329 288875160 286504483 925138356 682285428 251117071 993709791 378293560 933059918 9043584 634190218 841013976 87207938 376412281 877506942 908923736 791188406 352245387 999920129 620235747 781566673 52739424 953305263 11122693 721481599 910373162 884930986 840594459 988229255 746490541 790567572 269935494 913344814 370252894 766774727 807336030 208167259 876162229 600198890 486767164 8172439 805372231 204056759 885811840 368536709 4546458 213210703 834617617 705422154 259216638 147524078 326911076 457825520 135239566 712454348 510008501 714114147 921492198 237343981 105506877 691416515 458015687 401632387 152164118 195582605 340060761 750968687 223381986 592635769 290906777 278788829 327434548 190873576 531885310 428841287 920933524 837547653 554181903 484554157 993246378 193799618 280801769 367060646 740533659 39738090 448867168 706931342 237216476 33944737 896179577 355583320 252620143 185298275 718829976 125501332 410122737 645697800 699448543 258963946 88007122 993693033 793583545 541644829 804857972 413158854 667044932 875528064 562265128 615016608 589630007 587564997 193958825 261621995 281948053 741434398 314387901 362094419 849374609 11257274 734912469 912557898 762944562 193311994 95909782 825718329 237884104 740983355 149313767 952186072 890742257 508703096 432785061 279777269 2598886 181723138 461914041 944293389 961221965 624212395 499884458 709981985 409403729 635912159 116444244 373735470 100554355 320630903 864459438 380918139 183350151 373305862 460542352 298573707 116283803 348153368 818140583 513405048 901696549 889955288 490791814 954354649 42483533 198317717 757204562 772699580 277293972 691537557 816824619 568810747 540872675 356638945 154722123 65543748 763937904 648566404 720370210 236114823 659834129 499530575 173257831 450334799 514438228 912732934 410317355 77050687 47106327 793029804 460589291 448230231 957381399 549740896 92184761 2869849 26129054 158496057 983260705 760819225 181894844 928249525 394280820 717982190 794062788 371479885 104214949 385801910 251592670 904977461 989508731 622335097 665538267 703598925 295712038 839512074 551722898 163093165 972167252 426020576 981142007 552028652 128125139 631248753 243866161 737827759 842917297 75892117 869010797 701123585 798408245 152894451 239751089 382375458 598642864 727203173 462964721 198859213 957552575 30583786 629283072 97877252 121414437 479258225 65920445 662745808 44281916 50435482 851682727 840509900 200068211 489938844 58828492 788608124 768448327 947319460 397140474 891852178 542345386 802473923 954138671 672039064 755856088 2146841 590713259 406044060 349040609 188948181 753691366 807708298 204652061 251204990 880727108 521153478 320805845 579331223 99231916 656776 333491488 306522585 672307685 638360458 449836065 524807170 544123061 30543207 488462085 18179770 15920186 873077173 181871930 436999910 448045174 672012586 107619455 790819130 52088981 720589945 364919779 769783914 422366313 618022994 21730880 395436385 952133664 571879016 370741748 470579043 410287346 60314984 310591526 366417350 204550725 189597233 936909628 239113717 194918212 780009211 927012088 682856405 307617105 174345856 21641515 536252785 816277916 458235814 573345306 265442753 381316149 716057848 724295338 390562130 977415964 798951866 947188251 942320927 965776550 477361689 269877651 255576941 303379082 731321753 13465661 866200942 963563329 96446453 160139692 746759890 268995091 118263743 529255922 15456644 893070354 649638441 441209065 801567542 247979621 381724072 178971464 449013029 430766316 503556985 747930634 765883975 425830059 758569341 156788968 525529227 691347186 945322689 145970133 508902475 618502117 182155523 563103074 289038594 897966803 118363140 296053596 203961832 632387978 2908979 907944820 623965202 623575303 180671573 523099343 705162860 96925143 347494954 67276062 575546093 825507014 909134204 196109285 992995988 300125624 976272486 925310288 903455231 237717202 828918588 1593091 187930344 842882087 384106005 456858684 700452469 377236059 293507987 728942923 780948006 388648025 762551177 843870912 87467786 666093535 853556540 840990978 770123996 990918487 424718615 124651638 837417975 47383734 406079665 168789242 222548556 465657018 430131896 948751309 8362271 546149770 673915430 916902176 879824144 828260094 296281454 982365542 4781134 130105357 3599444 195004373 652058631 900295146 272060725 245170425 264545680 925663086 641873083 663907425 592507877 96770218 395322587 299635096 850411315 222181655 677824800 256930958 880504801 127740467 749597297 634231597 751061167 665355931 727128286 422151156 981899183 41841289 680884358 44990942 327317749 8255252 761572586 536006932 738487366 800319629 357057119 80146294 345207688 942971739 600449596 574636871 191589365 48226903 494159023 77884494 455607867 466681914 344088158 131630974 723104580 170868451 8160684 207423929 60117614 446172637 237508357 25822653 992805121 588867000 433363935 958942935 902910484 210508108 317711030 598517048 872589185 871406414 506177361 379386318 257510688 504057909 639922550 323606517 688941285 786622968 401236665 112592126 441938519 674849725 263800547 767665664 891177489 592061785 387342564 132422516 428917624 427931898 152202267 439334962 95731729 537817653 810355949 889207516 249402596 777550727 73400171 948558610 997273125 13068261 507065001 303698689 80850906 450666869 220792007 716543703 402265811 927169084 907664306 420796177 892783052 410920275 408201088 371841052 18197178 545996563 265384878 203430931 818350906 592748113 861599093 765337915 732486421 178966604 785675484 456598631 55911668 367507404 545168067 557750933 964779571 833432711 142739675 938338443 761413304 283881154 479000990 820907607 329055447 924349014 572633941 223233769 237465727 268772969 92237774 963497554 220543734 170069936 53269565 906299926 397546578 159345437 315593909 193518623 172587771 739413721 545556523 698679084 639724061 640318945 983923469 284832452 90974655 72473219 834906145 286784769 690103036 313234411 203535500 556763828 215450787 823847990 57784593 655228318 753999485 507219480 372238901 44287175 353636735 548965956 278258514 155442009 40806023 723915972 347082030 373109807 98836097 108909578 6515246 674544375 175288969 619050770 998670842 875663808 390509869 950988647 296339670 41073669 988139067 79551298 134728724 549785872 818117677 19862792 10820843 396996928 993861954 93489453 653211798 467481953 682560836 384334695 982100399 768796450 584156524 835391849 293380499 116497894 540880445 634481629 686938910 680230226 656255220 929355462 462756715 829173660 768535901 193008290 499191706 873649532 798936374 814949530 907058881 532339577 294648426 796337896 882706458 395743769 671719599 262006114 278566550 780022847 715400970 765076098 289806889 176511987 366220540 679989117 49538246 612893707 316639622 337244378 806215018 270851938 715222980 620396291 971304575 811318475 98442982 262741900 103208446 531111929 978542191 913162196 825908781 863548922 108785415 81207506 755092696 898235779 463999750 251590185 459390469 239856680 438950590 586523773 788235522 314905005 227268003 885202389 402065934 989747677 740904654 259000279 772930828 733528297 837605475 230361400 453823913 65361655 84999724 78938596 45966081 476483824 354092230 496909130 844626647 169590055 594231288 5579941 191777861 611994365 174565717 700315486 749023656 856408363 109062540 778703718 584944260 759678476 35925143 949361904 850458972 628815168 985528756 685183963 466755848 431708196 117307103 755790726 170751152 740531363 459182697 590830778 157547744 421293935 31435901 8030845 587586935 141078160 125230828 878211781 79606421 335959998 141327782 636668386 670447921 399799178 344331368 5958802 917087762 3915531 369457099 836706556 631758541 695355506 669593344 365483244 134790387 659004985 940524825 918470101 210061213 805222876 1624861 49879625 265567410 926128341 531628604 904338274 522468448 119847941 237807174 190076306 325224206 415794309 92437479 502198277 180365277 430374554 612099993 763361405 970800382 376111524 182111004 525854750 951186437 408469242 914137627 790063970 939215149 525088571 323262385 834757637 528536469 850768058 884574628 77135175 773649455 902445381 396989310 387852730 183792302 284044058 468649961 431019806 12948692 717543627 219334350 34064335 161913442 831402580 410705778 127086765 944380869 280950928 828747357 686230903 338724225 556762671 582080031 761584285 591710349 80274586 800425559 829774834 853382385 776873625 682376949 744640364 763498863 144220695 852010488 844576945 756358233 671650735 161147793 149724497 698671246 828523567 215694156 308258728 831302974 643275573 112891815 949660443 99602380 793223405 392564422 634180314 408324718 761686362 760137019 815227595 908057752 668996969 261957583 356664126 596452830 169379391 939820411 167557883 833065396 820748604 165892827 156153493 852735778 511358485 619042954 720546046 86033542 101574104 498442877 636705448 722784170 787848610 47469766 981960071 893975728 403493918 211831253 525310563 497218954 528123367 568944474 355060075 522360228 510190635 588596088 38421018 755135168 174334189 742635956 316768439 369532175 706029975 886917762 178945323 164949084 146471560 85588588 202669610 706724166 95816950 156096025 708115117 482436697 922371077 476351671 507545483 1365511 283213751 312640299 788874604 623631591 4064351 338859125 356142171 47007903 373462169 825184337 501311093 794402017 451947467 653242121 802273005 53261105 684294989 238845432 985583202 570162024 921091450 799738952 67003665 477932640 342006487 482292594 74113853 459242376 989714733 195644041 595078683 94966338 339620666 829336302 975025007 248682937 513232423 286287976 649186914 226270143 857052628 617380251 661718133 560955664 631492767 212241861 889098444 102712176 22096538 561374671 625440154 633239552 712061982 612717949 405272064 693683248 211941505 733776325 219358764 711662000 323164377 740493236 988909168 686474391 590158502 889333317 314569174 323350977 60827545 773816240 926605125 470593582 98577298 303414822 804444261 420378466 722466999 455442636 990452075 548005657 416950679 984621921 328738040 550821517 46366841 102325350 745941338 894659055 316935810 431874630 271241276 660516823 54001110 986432013 994560593 633668523 745946118 115616495 690903975 519216667 355388628 713665571 171885060 325813848 998053974 605121856 29410445 856986160 269998903 647241146 632999678 804079705 217317620 681708954 847891409 953598184 167252727 496502533 113356318 831023970 289253880 681082073 546775409 631880142 385118216 702253117 864561202 787329297 530894962 123932884 349077593 148785039 887285536 820110796 233678125 600099518 109176393 560442112 59559137 283839866 821508808 536160388 431948213 817071142 67972723 505261393 261527397 899482941 679452041 882540300 411123540 396445080 855763860 338380762 640142243 280723090 995477849 452936919 179209426 274381537 293912746 554192499 390820958 39056377 868795818 349515649 314781543 842257908 81270463 669538366 692243167 35118425 355758264 950176366 461911229 639185870 663540549 650705427 284162602 283563555 900372261 560704902 777333156 916469233 731609082 399956994 331729072 920140411 697939323 79231627 305351540 501905283 606877484 575053163 591728277 836842390 691186861 500328624 215026419 207478632 703977956 971843106 899958109 889964923 211192796 99038112 430113803 614923591 930811220 533906232 669903518 749580306 505961003 935221295 190357730 46148347 611643892 159212556 893062241 44331176 99088842 193750864 438658477 914297276 795539751 4569057 429805249 494895038 668376750 436003424 957709332 813199651 253378163 970310372 832490403 765300653 775723665 319341493 897118401 673508695 75727293 979243136 416130889 158161822 303368661 158936524 130391131 793925179 686293474 722325758 874231875 126161817 27821144 488965613 281185821 207766368 782680901 272358912 443851973 49822126 164326082 801602626 713528287 294595451 755217780 950817692 125744326 970899846 180997662 42819958 227563134 344495333 416793991 22332706 157041584 331939808 843261420 267877374 185227128 419203036 114520191 127678190 53405102 816112666 784405127 354068073 984083840 755220065 936378557 750858226 873465592 766038959 401795548 119841128 445247618 535042528 835746562 740280020 566414810 734050131 786256802 366570777 114595686 478385490 907881155 443676060 753094984 967685560 494067199 507726926 341470070 448772762 887934834 340591 790673599 138724760 392303393 306526543 393257207 984862771 214712815 115406297 397559799 322225641 359867201 773336818 723189790 807873801 181138864 223586425 650452524 395574415 980372275 514495748 608286168 884324945 547091457 516109944 88148752 468662777 541600767 419505084 222770586 584295795 903534546 671551592 271744767 281107203 762440183 447783565 382156479 428782648 407988483 971115465 340615567 55942656 394244619 997283422 425757356 499190725 114768013 774410862 163632830 976784218 50106631 371794953 643003907 972357103 16756542 499040665 720998805 259593550 298570709 148357096 19684167 840278676 538279155 254877366 314147409 234653703 598379114 221757145 557136323 423686971 682538268 733762584 396718186 538997022 429863317 447120910 659777196 31682170 740823791 524804750 490941761 885644241 815839451 384304835 803973177 408750644 911545549 423058907 561167231 539064178 727882461 77192894 733744971 908271727 206041614 368069582 680095541 874529723 955609081 250621960 812856261 822250814 751965578 421188788 264349096 196055407 17875459 840735993 560267811 216027529 180300300 401046281 63261415 130874356 797957139 453575272 247581275 866965271 386842533 954241159 377935751 962067355 414118165 399631816 315077636 304864746 74117367 671475657 25500803 326774856 99794382 649202991 568841846 458715771 325970377 503395310 6755092 767020476 953616713 749141029 743349524 395630109 518299385 754483821 572168706 68908432 894101653 138621194 639294105 31581473 699860252 611528932 160924198 165609194 338679735 286810107 669013416 442102064 692732679 85748586 296216171 577489356 517795961 152949351 689744964 304112972 919196844 618449079 536978430 808506326 69273277 754668635 960891393 295944013 491794692 21794007 146991544 471146669 159882150 239085347 625384815 906153181 61163228 616982980 20588813 844259867 894733803 984050535 262689555 315234495 556753570 897105995 965479458 306984288 821515004 981351129 501855583 232165273 86262225 33736482 113909705 599871723 522067786 12427475 815334359 404493692 881034236 50752429 425288675 612502771 27126246 858926682 810541979 98075349 543101326 25034729 976348477 596161291 616631961 491052988 790739117 60430975 304379846 85934335 14146894 183056089 697166090 226382324 587641209 154813464 552717588 824064008 897926198 422426399 766479209 146967707 566850106 727594832 254415811 737984230 634887017 180572077 102797597 702307758 705895144 778498209 860228652 379807019 554650792 751336741 3570649 404608754 153273899 643616132 263908168 878166930 18729910 959898826 75588895 169317848 633915354 922999842 451716870 310505445 788383764 958733590 943826694 592297862 810175071 130984885 156859289 452691921 147200865 336051889 522275463 222223337 537305333 373592954 867624452 396841923 282897208 129610813 403574203 381648552 792887631 538192569 510657914 880040352 627540819 468710573 320530595 686447920 372095353 546949991 744661802 311834342 628522784 412236879 722713269 560003485 293668018 896475912 563029782 196268644 989179774 12501242 76246211 965635172 712902736 554173625 88361887 552753686 757176148 189357538 354725033 373412103 962320474 878096479 474523384 917997656 694306805 357625364 9548835 860809818 541489364 735144780 499434583 392523077 56943947 489763111 937652850 202186216 50430323 784379644 74918790 615429527 689587410 604314663 743698078 180109461 431410486 6891854 301915124 305759272 863483846 834207488 394891773 459637767 302159798 820744271 436901070 619009730 746619761 564015584 496601853 703295141 926786458 482478379 815193701 599710633 717111528 809019295 792877235 704595487 537791774 133498381 613435990 517740078 518120750 51127365 662110270 126081958 245882482 559845638 347400714 207997423 143846964 260744490 816551567 896530143 922044530 720119578 991651399 235911690 689003331 266715665 856512573 176520536 44120314 122330865 861732400 547377160 919558891 916961867 155600516 316843811 467630877 369656692 26398653 670981523 422080503 958729749 69939675 723688221 605373823 338195404 2132511 775998824 830219545 241376212 762968238 694947091 529769777 510506767 24368868 295457377 752728559 942677915 31945821 485112399 130197072 638637876 531920630 178692674 815742987 836558471 218371765 211230930 409246025 551890414 153298173 542868916 324473215 410737155 306403501 763113 184077544 362755348 358909123 771627690 761629475 600543425 103467070 170175550 540480121 452096439 178024675 923572857 225195457 386075423 786039264 512370124 12102334 788206539 776809480 50011067 869645519 301452294 315784409 453444554 603632199 711385635 941099136 65902709 803984891 228323095 699156428 797744018 29964134 236377829 585649449 508032567 408483582 125895697 275211172 9099669 461352958 402458842 679203948 290600206 67162672 584423073 555523894 392292919 883481576 576218892 712930759 790038581 95022760 94740264 470831955 354722147 714250975 855241428 459075104 673944234 399644478 558961660 339849968 187962252 320383686 585081993 209255867 291077278 783736044 969300169 569384175 64581849 431028452 601705594 370342406 509339213 278856045 672352150 48482161 453569920 192258373 650281367 684572604 607126535 401976261 941716886 513040918 446860544 994279211 691220635 571328585 453524207 809675330 881639401 432101962 661941538 593056769 770799647 503808134 6250812 255859815 693734077 563390622 920213687 852072753 788361967 670896934 30699882 324303340 669384777 338820695 819061606 156302635 85110043 591138457 548187142 752507477 942948237 405768506 978826534 160032317 176154043 126477869 255881983 443153705 571783033 611064159 660178339 693966441 301229976 997140513 196575699 947970910 22841195 668223703 465529535 178026652 347722954 666515977 560099251 821751167 115883608 959009784 849158637 744268250 616341376 225679475 435910158 387897656 188586466 479177160 627690612 412680683 120273824 519540311 501562443 323175797 451039807 582630151 427094595 281653235 52805064 431838826 788709848 598389321 974425043 425003324 482944365 952420046 655731187 504510727 89069053 3268647 187417230 921584851 129808051 199949472 989429842 942200309 364544177 120477411 833017265 111353458 911779550 429024789 226292567 143674229 176647535 378448033 904324227 383627607 288031438 466096992 129353079 247927241 260478579 60325171 246751123 62911420 853670474 611341374 427532496 900344305 556134170 163524336 24821181 54942202 4554064 803427119 123927198 701744884 599570475 189784683 706547398 870085527 874726304 679680161 346659408 946224396 803839206 599661938 476679248 521578863 346140067 848013202 15029015 739646074 498949812 904017843 541468187 49817768 566773371 253336343 173780558 338796990 444795593 774055327 854395399 702457880 258433559 156938252 809519934 293509817 807057614 486471234 423600230 93160614 632353236 840489829 517825424 105126131 546853436 447102628 987441046 798444523 496869817 156738383 342300580 487928826 247001728 448712764 946737253 919862862 341947919 846507125 857385616 792198142 514062368 567200546 435193690 53309698 993460766 117017573 498025587 67495184 988707728 996392008 669286138 958484494 63302141 665376531 705205089 339342962 266876998 590743715 773699292 587228641 498642791 490272167 894624981 222552241 990407738 919006131 611495 992277273 308661720 367242423 856482069 154231899 106234186 709275800 129911816 319959645 440189069 43727383 944613231 456301896 290496033 275433261 386559622 695025426 337635259 854941907 720387414 522150876 952538212 639081740 578850360 850059150 38054049 285014486 346768851 107570957 291305043 487856937 429260811 689659702 105280254 211327454 464850125 665524658 219895423 762359862 357803441 375802215 301807821 991712229 661198809 381956693 112105146 912985286 744809844 772513004 644043558 409312309 261129317 784358804 14629790 196507164 367546509 523765436 687302285 359327061 367984117 484017354 470200116 229622605 180430127 376168865 227910222 660270648 574855589 833663881 454086115 598624375 103431318 158991978 745687627 885682171 916577526 683102447 219682906 829720191 481371697 497818182 805846911 116529955 46046949 874957151 181375597 918949489 645959707 33307170 492671136 483453399 133232814 801641574 285047483 394404787 852223801 674068927 653457139 353310718 639980730 566673642 540717182 786075108 256721476 322229404 943505878 778669810 177844257 76999382 172488367 321727781 217639303 979399142 288424800 68968311 224807320 238428501 208466707 352362548 279146165 852484683 270662062 208516211 640569762 659881028 736591677 867961396 321114634 994227452 986403623 269947845 442198129 549243922 673020274 290374169 988075222 838309957 307359056 802535777 686626616 357667311 236985996 414660804 671139765 825239617 245641664 63929519 307382556 789551217 373289926 379105705 521722551 517887495 648497439 702389474 545708007 609788761 330878468 782132240 455602143 227857715 480368422 515323248 796413356 332038614 56733985 451139744 904133468 865716790 12931980 8199890 339918797 49569087 53348536 160280362 96047545 799849293 9577202 327409164 425674025 127258350 865950252 540628371 160845207 507692274 847749553 188381855 918550493 16541792 507966674 160265977 543864372 689858393 176216776 56873819 154699038 986546527 81270881 99374759 33682465 809112347 551963403 776319864 144702670 450581792 847001153 251737095 86363567 492993041 278725887 113408996 872707767 667806297 199549778 442257488 662378204 702785118 264894243 788615977 509941127 368177089 554213466 4420079 564412541 940249045 604208633 470952779 333390125 35330581 531584770 190587642 30876540 116160084 403718797 67389231 124588167 417662790 979577885 909678736 148880493 972067824 897662167 492072908 65738982 152227281 693915779 122346965 975560727 241208111 648822918 342479414 895827431 599319868 300454343 886356408 959481102 811271888 715627386 535902348 104770099 114790559 215810206 367845459 550631390 279130474 919372948 355079771 651783721 797429337 793510261 861934317 237130118 956623010 302047359 741471448 65556164 411947594 878597658 213732617 100639761 988958177 235685914 474079176 437607110 467009265 525062732 247567023 249229912 27926220 69857991 452493085 270443566 480545966 347449652 508121657 652618686 395785320 42128297 192960584 901039725 283017026 741011993 674420336 640311473 618946457 26190151 290499444 136282509 474688883 63318251 441267487 93659772 190420229 319562483 505902336 927676793 246114033 152883231 755970078 25672343 958739546 689521523 289120203 37652452 604134424 43096452 476357412 822503520 954309807 579347917 46495006 684285606 235370547 731349084 590208762 154407461 876578350 139615423 779647481 221338332 301112144 673878517 566797066 325206180 699738951 263000312 363479355 102804724 412614679 135514645 772936216 838690085 765301549 703028340 783284479 950905617 566131406 910183842 981291084 929707219 251081947 150988233 402295563 843484872 9013643 54862995 801897761 988835449 640221125 129799930 531581957 11046532 168283044 671817007 515462637 428853590 418973407 882589693 624402171 468612714 644443739 701003282 388067685 944533534 223622080 914640588 439169566 801375498 230764518 62683495 773389833 977497084 529769716 772272823 279698441 69736829 34094294 137475607 754703394 112389830 982084494 2546374 941882343 511115333 587877232 74935445 814927985 798801046 404881535 12989565 393567181 624598766 160229208 324070201 230904292 524795275 450480708 449801135 527991536 138190178 287312666 278932205 167953486 890118439 504592304 421444978 416342189 435176486 473892867 423677802 74186918 648146375 507796069 262193912 495274847 999926661 972824982 138755058 520060204 760417000 821071358 727637049 46113730 340710761 130597756 656486017 796308739 518152705 432866966 337634778 477541337 746764536 664584834 715692726 759978310 196021417 996627549 360906093 71636051 40080096 188538718 794779227 196842722 398678939 743494061 639776118 700085439 362129020 216496922 829384228 406824397 556521028 904450807 610337584 494997988 672929081 885916804 873936203 402414821 14220037 64460414 124041171 129536759 148728444 619631998 697544570 578745809 932387504 108851060 3318892 673747114 929222601 628761794 908863994 526554158 228339591 950267969 95229985 817486835 557513101 531590439 580152012 257356723 338469779 1867951 573944181 506159709 845356209 36527662 255654808 347634087 968787153 449081795 214832344 889544620 601770040 451714905 855259696 929854332 695680380 511150290 422881136 707299926 170468687 823461310 965299468 274298812 296537871 796529677 260636469 144983113 177538201 610440572 155922034 946849076 357944839 773010374 52213187 656148778 489150332 996570279 11740249 127683020 800536518 919672539 286318542 84163600 459115135 440519680 374162324 385599365 778959164 803682289 688772563 503222264 296546430 717349320 52182404 764895929 885707256 529421323 382315235 269363194 454931721 96136647 130915288 83053730 85518993 834433027 626955844 54666815 982352457 306887464 259992953 985969724 992579532 856790053 17499529 384521539 218479780 801832937 846203033 195475890 172868480 808315394 416727997 296980428 389187887 703995125 849764362 610913491 370205952 2407317 605579318 920081174 398881945 456876515 703180510 671605197 543528389 257608544 84878172 850109535 976271904 882342108 608370882 507394200 235305386 560960406 740912953 539378364 986217289 585121630 171352493 264553235 652013942 714165209 944338526 103166085 952612981 16254905 217624031 927071656 393448452 336391435 852764867 624942115 315860493 856161727 524724691 744396316 340127751 299333800 779429738 939696541 171373889 105631819 111022922 828693576 167276560 105284524 378337937 75212342 569920710 873428278 581964834 541305953 329488039 98396846 609782371 47630424 328316317 421610978 430024346 24595569 649164612 220240600 375096547 559872746 492935806 837594857 149376622 917505738 476126602 964649993 482869696 218836924 104732365 131415846 129621667 657177589 734961737 170685706 403442143 75453913 440462085 960549191 476241608 32468601 165078957 584638515 844009747 820387150 20978954 149275816 704915711 535513441 862174771 647617281 930051820 746041398 194528068 54612817 716263599 699519915 472037941 696604326 821650706 404614153 210450717 258064751 84503188 619326745 697492412 773217601 738374339 207839340 130638016 87020567 782503681 375938590 333477741 441190408 476539095 932807579 616640950 453964135 900434166 542558654 98021915 900336177 267644985 3968545 970977002 743231325 884031151 407769752 499199019 216684062 882771252 361081193 525755881 867576914 191289447 737044518 597225818 647836332 717378316 450235192 382001904 631123808 514932264 928828012 855427798 667462323 600458801 120076342 719822944 570219562 620054308 504141542 500844320 270440498 227872243 150728319 722476202 518957690 710246592 797737069 764231965 818419791 938827261 977434103 519055763 945691902 76944300 276827524 576830811 756993682 876610480 819814667 229312998 620062450 924076307 570472545 925375618 800567745 305672574 436854515 193523431 761276939 244199997 438696041 619618173 346682145 377168526 527413769 52951513 864756353 406875255 475570985 260371747 744468977 262023721 55493146 811108375 735292534 15644859 542861299 756598928 349522689 429738413 461394643 341394700 242251222 81712687 20567413 165453970 672255044 366789597 715756024 179683948 141879402 696985917 856845281 961203332 753850843 56762653 158438722 285084664 131120412 726535001 331185223 493374747 990245808 99430748 228119268 191194568 297628810 4559428 994307569 525722195 404042597 153550790 705577275 373527845 489333440 840317734 142786587 28531775 682439953 528054931 880223333 854687433 496671814 804045412 913444579 380260777 60326625 571036157 362015203 709556474 356812547 383427340 929403118 679411996 110917822 605608783 605638158 120764244 271796497 3195887 222240336 298706642 946122202 442532020 341475908 62575533 158346005 388569931 564934600 166438748 704872746 69537417 640450931 596721475 80907202 335470459 869987576 510295996 155166876 488480114 519952815 679345610 469105838 371118059 247205201 236093926 872200570 780536984 478629941 202985185 764779324 8308273 79686525 561536356 105554931 319082279 596967660 411225713 94480699 85340130 95883855 818797978 390851385 17524853 117510124 568877216 141949988 523305282 940613730 245847919 936019653 823381422 352903674 757191906 45404057 982487614 764753718 577126133 463175189 332802709 381465048 324616110 387745585 123740233 608824568 405447451 504366237 327799566 443879160 627357440 938656529 455955363 83458781 528921542 904340379 303395829 45840125 262211814 182277827 610483443 351771636 694631282 882861069 895911764 42223184 676767724 162172683 951949852 725914827 679446861 783001703 81625208 49984593 608520030 679964200 156561513 543214872 885082010 406717220 951099527 41935921 734318684 686285902 386841752 340632411 46338792 177899201 639353388 528112115 456565331 614902026 745100887 453340909 297121305 780445829 975337134 155407994 428564651 440565971 882780290 233577937 225046418 242111020 692168040 118695820 313689244 343192170 816774121 883908793 342158395 501790621 469705883 965741876 91383623 564853447 435939855 308262970 988958142 678935580 700478037 531309196 502045235 605869327 632371908 131184017 759765377 21118184 460294720 460788839 604026926 876052711 811357845 240925267 439632712 383486417 181761163 462484264 988781518 155793703 762021691 723768285 6489394 617180976 18050703 957775105 184907010 960736649 257940301 801197118 477047481 81278996 238672999 213020607 141728696 189665463 752364957 899836720 409072499 764806253 232966745 318074383 357102185 548928655 782170105 96451836 432354208 957564112 395198636 340220609 529295920 761236837 989873397 276152076 747693614 325942238 838743434 217985675 363070545 767471096 167311933 588208083 586584881 575596609 206485437 731312852 533505756 385463344 515029250 80448260 944137149 450565697 346553202 973573395 74657798 430982114 103167329 822996814 193300240 785978734 839317509 773728247 930563128 146889597 17319411 435877823 458718418 195715747 765504693 829739769 827335334 59544457 470908813 835355916 198656752 467871286 377877850 233294624 690582682 66491315 355281241 447354860 75085237 68800093 310989996 282475986 402776049 611897900 649570256 735941294 25233964 530245147 79002714 815008217 231689789 170231163 421348003 523805536 611425917 624977325 544006236 665877095 794322042 650442824 176457599 362625570 543158489 310118310 932640681 233762134 428895989 572123725 117497396 728071991 365202527 409959923 588915376 595073610 830057195 911475694 847764504 581588050 903933640 12577748 968151276 385764137 234513180 314640077 107700393 370219139 740768998 72018088 64521255 735029493 599256655 115696800 517284530 737906117 636899509 904042208 303344025 212460019 391576486 681818592 53803434 151985459 269494970 161432698 799878198 790078774 853705967 130276860 348370655 365463432 551886427 521226662 799126306 995635057 258130952 574075516 534797407 22855542 865554722 5098480 585252169 797538544 935079313 29995444 327469167 178856054 827279517 457032922 398492388 982807583 899222280 296125508 54775934 774852459 152215777 178533565 425843881 902778930 434622855 373845964 954313602 865130837 292711739 157881587 492459695 192091873 352231153 403081468 233525115 972982250 484270524 628516407 9182213 739048824 568082382 923427603 405829346 391389061 444752859 700062869 839483097 251902224 15623093 579249412 577163295 810566538 661050759 145878367 416581561 86974522 137929782 932531587 621608078 816870453 568609723 508100284 496103717 890961895 633510816 685791575 989849125 869740131 894848590 440858420 732292815 347875954 542896608 601844374 31498575 488752075 469011326 546227576 151280350 446147655 637029863 60533135 751375011 482896123 64142138 159636651 809460067 513878147 125719166 783294505 970466628 492479117 966777344 264905673 371968829 807968809 808210375 131715430 818764621 574782395 163557656 627686377 454698486 895110917 427841196 785225351 189139158 647529340 51615057 696457939 974874692 961795158 295072514 383779037 877734322 461757673 298443138 625915775 13761280 671817470 679711794 308943686 697339604 533621440 369020379 251018214 197979871 957812059 925263370 952997470 718622495 310916178 962614050 112195456 794724676 205450473 316613328 863370417 482817752 29558700 194356614 959748004 350193498 602298766 831877177 719166851 663282980 362936744 476450970 298562365 156212129 365276319 983413838 706261114 257964745 742916043 193073509 426804440 52903911 532563308 5184589 645862818 582690211 81580638 322751652 446670130 308354803 983325682 915142302 779564169 704238396 747042239 231391584 865811942 352329883 974763416 613332149 640804015 58694516 822179252 286400751 510327995 929447855 51054168 964685933 306400936 244847650 159113494 762364456 909285352 288179088 857286239 454468654 75126995 182253204 690154177 83862584 423615514 206543462 58781594 263863830 794439100 642154970 714183579 626091522 954221029 571262691 370921036 238894639 643080188 43297890 142417098 185302526 794136297 84491059 918060965 959700834 643227731 394721416 879367959 701665726 973714891 874740041 573600488 339627962 300919005 745844529 189550574 379634674 851227226 590081078 470873506 334767615 716449854 364515925 655607910 521065009 56391873 620076744 90492017 26608515 283676265 477195287 295836885 172840186 491828947 726599163 133121412 956893938 837554342 138880315 36914350 837640278 270835362 154252463 87615082 516428468 336137370 275446208 684996650 976985022 44985625 823629504 619089197 285374492 158315092 636067089 965915625 129350008 404534166 109331648 56195528 621465369 252416995 97668511 620407543 505983279 828313123 895542574 970529536 157395718 226533236 350367458 341229759 14124540 638943152 788760651 717047122 334348479 752434916 984518546 234784815 804392655 217849603 219543637 406095 829824834 832076666 248536067 22293206 172255550 870258106 874687866 908268860 909092873 698802977 310966567 720916969 435979296 254832564 198472776 273753923 501682612 515305248 626132164 440334361 945423156 655558335 305916738 923997631 434434344 112059639 258338176 7087046 380097018 188748238 718970259 415108948 671973307 508464796 541739854 1237155 587799828 996038365 214939785 633336399 675968126 819182477 179822743 862142187 37287986 162290348 430613460 703070232 701641373 45863201 987685564 814845152 833543484 618968505 479476701 716363149 790202530 686909686 397595353 865434364 819943452 59514358 540269014 199255903 741400245 297120642 913749037 41957767 412962029 776482143 954378250 695890349 169830109 428446680 934550398 489541930 917371848 504967672 346796454 719072954 561772212 902825822 846046248 657263067 552910635 594743832 917498346 967530737 427928902 732194372 12837020 275791071 469700504 369488801 831859757 234956335 924688687 711294835 766125967 407155298 178156918 626018895 365293461 608338578 609736240 206862423 739952248 550512539 737313220 235125291 303898632 160986566 928206011 190856873 710841795 134587972 900317478 474893116 826070201 592424628 829725199 428199890 944217369 379034598 69153405 505430426 674758229 557422726 46105294 495183766 842772984 663362238 190737454 766641280 607788659 151359106 843209051 327385118 508531653 573025503 706102803 899947662 286415456 954179381 12591943 654310418 189682875 460559470 305548621 688148482 335519865 736955560 305258396 260405182 192226686 601615517 162658914 927600210 152838635 705792334 500105605 726815271 411607574 628446921 588429015 625254686 537443966 458457708 229702635 963059475 339796808 303424406 395331975 850942147 207432927 845853401 898910618 776786428 152445912 786330035 14203039 380550739 991020841 15690473 385736303 771143361 840415564 790399364 305407924 955142710 272956207 347092013 827235490 20592760 560900374 664085674 180083976 623206462 195528889 234261609 80259457 328855483 755333308 888866176 403334151 633926908 442230598 746356023 175434069 66214754 945023535 787617548 199266001 863618595 334913750 122574687 725956615 415412238 112583143 513773860 828406283 536197529 576405436 936883918 365956256 818788691 555093195 222247522 559496537 450991783 779110885 146711324 17829966 717838041 188503284 510574768 113262601 102691966 324412928 146938695 641683589 379687913 858386800 587060084 433340878 122933622 166557521 19958044 80020897 997354651 308975275 708658212 198324046 766136245 213943765 870389858 905095541 953197867 917431372 565306365 711524218 583749115 810081114 920827454 762337549 382382936 204659501 914655400 676851126 192380289 780309412 105443727 949233192 10101048 319609622 361512076 79501883 840121569 291809424 23670731 719486548 968111826 53982613 841771622 993535192 862751826 909567269 456655885 548294575 459704640 929336592 369026143 577233737 863717719 260374566 177423445 78484822 489828421 4231711 865425258 405293631 90730308 467980935 259087600 179192855 637116702 604599210 636090578 338392484 457918290 955552096 60671999 730278187 965435154 446168368 19243342 869795499 622538116 635911422 925180499 993634025 177912063 149135162 885180884 357934781 331950703 44649280 814379186 775070112 77114225 438901164 387055354 339163335 982656470 883190213 201777875 41820609 915704949 275930542 726647894 675540348 637985872 416216757 878722472 373637205 553268076 598393274 72889182 299848600 371135737 198583929 368203331 337009822 255567090 181435415 570263618 288340626 699630138 165943807 422995429 886144461 924627634 428185635 492782836 515420509 582295054 572021844 905667671 455764886 77242199 617540626 795697134 33107101 598685902 590159474 826846940 780640449 39191955 177762283 481643611 119129442 344248200 218475947 423411804 463795920 216507294 387886588 297381344 89898262 128164908 228276631 204810470 177132180 72449677 139924432 1118344 512971663 230873470 690258827 677015533 340566495 883002649 238384861 565650031 959979732 611249260 462503543 664370335 882608818 894131295 829284275 452809493 430511165 204496010 58307082 346411841 658574276 844665681 600915713 134169207 820416238 783599324 84717425 885487030 692514848 56740337 442919617 581300300 476701993 832123825 804793045 244549803 769794111 440702329 982775344 235439243 673425165 279957099 897097784 946404001 501891540 913842657 985497930 317460273 608631410 689094667 424660644 693917953 942436234 59556838 59940045 837273232 784351688 55467735 180464785 813316249 468124856 686904781 895314440 846623540 347121949 555391302 766880081 397275428 293631580 191823994 988218527 129070809 167779732 333300097 355475027 991362660 9433865 407666414 225729852 735738669 507097848 640833679 359426179 728486505 526373529 599503194 555596615 333602291 981963967 147903270 93906725 826635928 917236372 730915996 98452849 378113879 336767 872044595 53590234 899014474 903739550 838148775 39204370 595505659 557721477 589662770 234381681 720674446 182484816 887892666 636800763 669540462 412343560 911012864 988023641 61056398 167377872 492248248 35105182 223905596 69580682 479493657 356089106 876065291 726361679 309786059 606343791 614401458 822277860 437149455 56321992 506189827 123996792 81436043 655484866 711796791 202294567 402637557 84651617 809947722 191574916 616839213 321877571 400042536 748303368 312077227 60912108 208642330 543676772 31894601 768693254 192142273 22955589 185868691 28253936 342552521 25285564 50755568 113344764 748324007 532859180 44643988 560269824 593017970 557478966 429202297 357739643 346306529 642576409 703971275 725897046 92264294 743454088 421917526 134791406 665059867 378637360 891520936 42078578 904471956 337533162 515510023 862243989 114524800 797427623 880667471 278325841 862820639 403411885 582770679 653531883 413198213 942385928 45982527 690084000 812480072 688324827 821332999 520809221 41829609 134996511 123147860 309480421 294201018 588173024 426217920 333687007 405262692 155029431 246859090 180645265 297004274 671275245 564209339 404611345 209866754 219294393 595054802 13630572 600669762 649801319 915053916 217063034 691057728 923529817 289935234 373254795 641293283 234377973 855611240 754460161 965533243 371055844 934445084 371320783 750229742 663988898 142477959 996567987 511846318 24639675 743528936 696999514 183873813 177917289 423019229 929418202 159972636 723809698 752451653 802656114 359777846 52681529 158598165 873795274 444182962 965559152 482064511 678446861 947432576 892230512 947056755 986557736 193434957 74449900 940861479 215630060 818283578 195655530 997484585 798715953 883122503 217030218 316543841 614464043 410549707 884749094 580708105 117494120 414595637 259910581 534936399 457476177 577907295 213422844 983900166 933070594 375015686 52659355 382837715 623841742 287543589 521305425 320611914 102189166 541130388 489671920 149928196 154254567 787971274 10439044 544861635 372085469 865791749 841208190 142494886 316730212 236881411 862278213 420653016 967056326 686294100 440620751 494708579 601860412 709744610 283289452 121504535 29360413 518722390 713298732 690972213 749431794 521312036 163824664 799591508 205345233 866699113 196599106 861185786 362105079 612560093 929471743 250837556 115043897 638818190 367884591 325821177 272533733 872129499 411556508 979443644 673536839 305185891 842704510 122765623 619987858 52467926 952736893 58262532 408310477 860292262 297043970 469145038 783271668 282714023 149566872 682526613 978526609 990491495 253863656 393064812 200329207 114153442 324486383 693017953 834161986 35874835 191341973 733435380 986422333 744285184 960472992 106494744 962924392 589631413 20917522 339839628 919528757 396956071 695088375 244173444 146354059 930901705 113211569 486071979 832478764 252557500 415113041 698456422 881793366 577054220 246025118 90552408 942806893 857866643 681343985 544951488 302068705 717432759 322348311 587637305 512584364 41806843 953490260 449347557 305260541 695122663 137971445 389896223 189310376 265705795 386209893 692062326 106037856 845939322 782655404 743916642 276889126 109729793 154839536 520371924 449848335 955732772 948852241 668529679 404249129 888358060 412574507 682165039 693820046 6959086 723879475 280184577 932810222 675170766 87929844 462911687 958842176 415962652 339927195 461464155 695446687 715159188 591767259 405672485 674776418 120050970 364510108 685195223 465133275 61980415 407111596 678883342 441842395 867535400 211565079 921043475 925228323 731053812 717643395 154300561 899160987 849030011 750897103 395334177 767544606 74401712 506764209 77841734 52447576 362039565 655444736 482708304 522435773 385478229 353275579 34928867 498122973 548257508 601355619 288037948 318204708 558279336 156173101 130386019 481716167 811328939 986908543 514324715 445295933 965410813 866407116 752565628 303126107 858349173 148075638 214550458 871891475 17023118 858648180 163201693 183191980 162610552 716573706 236027565 409734072 328037795 983854574 459503513 8087385 657714555 684574271 729775734 428583574 367175748 299991476 722212601 779934623 637118410 618002730 891963338 238839675 323718666 390303764 129435920 78392315 38721816 789516202 2597267 143686996 880055918 9696180 731202257 107428077 278706985 168753071 445139336 422519007 794749675 709445784 869442515 681847554 244632530 291395 394300816 221538664 227675766 851428875 387024561 820520295 732985944 706182331 626502777 129671950 633946967 538637767 136586059 69125281 689382424 856008951 735113434 310086794 208048134 397068577 184327416 791653259 913851452 291178149 728135751 798269806 738694358 541344613 358616760 414356391 643705497 112382647 379372837 5771898 11197037 626858148 544180793 828634592 27180374 72647163 348318813 301159697 639086522 887612275 811654141 81822919 777903481 275163698 528640041 422573464 155796190 243537988 452032854 218411852 627802695 563748183 512558239 318749615 847467299 609375904 667119928 613641893 362968650 481254212 544743388 763405097 828010553 370705672 644188048 263804750 339502722 80446252 290468503 276517865 625948942 186128358 378133901 181975649 196487470 589402461 765131700 35297957 301394210 557666110 122288241 733922760 419898902 580300250 406680683 873343220 325288910 955442542 953771239 441412275 396006208 781205567 846125916 475618078 763436106 629010916 152905376 631599308 114984190 923477602 592004734 346947672 240048363 183131659 92703409 4910041 577965366 48386588 120908903 439290790 533496946 694086660 978369042 386879039 671561673 15089746 755634002 907841604 797440256 581680832 989516817 828394960 63687584 559792724 979403107 109374570 904579882 408121123 639114967 676044499 582463086 292422914 555710063 479888441 896762780 545930078 63661506 591866190 229973676 135866212 464099627 863852685 653637764 220986941 296850240 944557983 41954284 420938284 739645111 142613535 767158757 544694781 903827694 121187412 728729842 226960980 509492542 443727843 994820492 785932038 324833657 412562277 486083988 254502553 125892342 260985714 446781006 189714001 812616511 244460166 599946686 574735350 271986028 122991921 551231489 684870566 216031585 271842860 803834793 996867357 398501977 512650491 618240802 23141401 342422043 443653625 95433632 963023801 486771410 896719739 259099979 187817882 96506584 54319015 768978146 530060991 655782800 966831368 724840412 842321794 408734015 282295320 384124727 745988591 612533966 867124989 503271689 856388874 465679550 149396845 23778177 958285156 81530256 608786073 645201273 909299888 118125589 16128774 467112551 47811188 191369311 894016710 489031067 587899737 797916099 448754586 717527173 882752391 139946178 796350696 239378071 47409802 161827508 999312264 765392537 892670113 2500674 932954609 660318665 150142303 781064802 731504041 90584537 209034699 326866095 226426054 380018859 748971948 632220020 321358231 903503807 713929230 363196294 837342657 218204881 443880621 659773486 329635121 152581551 910397511 454286916 937967328 119781797 441704783 583973433 143985367 869399901 902027522 824534209 814429778 898133620 234777921 385125207 120709340 665101736 981545082 533984767 630850994 227146819 859584688 706945819 206864358 875596354 349846249 801688111 555384628 450176463 898694423 262989226 366708755 402445743 696674729 156021537 407760473 166872648 636921805 891184354 282453845 485788943 895037316 94636242 269064313 893449930 53394784 378383205 248612182 47399713 409555430 755852944 707158029 41628596 576337625 922852480 184751972 345871773 633326130 351519589 393089248 218853197 406001262 876838802 903418907 689007885 482241008 736493533 880067248 115898452 722799470 752492452 422355758 107710555 833541330 129621167 658517118 95456742 210021623 530134511 939830974 540206608 295907434 849890816 490733475 168544938 582870343 265080933 71536812 576116585 52187918 799288585 6369018 13106322 109134751 463837006 557845382 14396171 444393624 188878790 820792697 637296368 170821215 734485320 178445479 772256292 241058964 126479444 721766085 442635629 647886356 685352088 118403761 528075338 14255358 877514822 201467593 294610763 272242133 215933667 850588947 149759549 844725171 538620949 779084753 918910348 841097673 616655710 149051849 778289106 961068384 963760842 500079223 826241601 654829797 131482373 833490350 559896025 265986581 456261481 118028359 991183269 976478551 441386275 849851750 294024970 38622370 196440974 780265716 87805647 217041335 605238622 99123707 425200815 425150462 663627737 978141844 115587786 673712322 351479305 448486210 85030967 548601452 9926173 938601618 983174252 101236410 714503348 674142440 165010870 109996011 559370713 458050827 474294923 394783500 278333809 246896015 592049028 263973719 344313195 710335345 531768294 43030765 596336675 670956033 957846600 629856391 823601457 26552657 365263774 310023294 95791879 390306771 84386687 329734593 338475439 29358972 913536318 938254760 472712975 238275614 647569488 344161670 966241110 690800813 277282916 920052051 996886896 462548924 931613780 195237349 219739849 546022556 152793119 43783932 153186689 217912544 669858353 456424811 578688626 701089079 99234373 317233647 34676190 572768108 619689246 74759391 412580756 927623666 38826995 94117660 767285562 538601019 929051936 756061311 539174389 305473706 754315706 105391567 593727123 346026178 451820617 983526860 50138305 532816022 815690260 686508951 203447086 901304908 28889133 240512027 997496447 558353401 328421280 978328612 177037370 419981217 461186978 711233932 383071010 759224184 796674141 921731888 207461695 68095950 19644334 748665428 865007438 123873783 221332705 601132404 155052001 434538897 750442881 191500978 442376177 147912598 678504827 593504017 81767679 267145153 100329099 399482537 141227970 171905007 471932359 994675694 124446893 632450695 500911930 558829231 585540410 864350576 464001824 181959494 457117101 226475801 802097571 792358685 30605783 258352648 670532173 155075444 862921312 414310925 217139545 977720921 341891615 59522307 68574145 763318403 944450523 370880449 774448708 28432511 827526908 344340544 352776183 610410490 605903705 527068081 215886547 221300323 423434938 510594582 238468539 373728581 439585636 918739580 684177112 253725031 266775694 512822264 808660117 812526610 761467740 376321319 197144531 357223336 193821279 566382306 603117470 418412452 52279272 320976956 432550847 670374956 865406850 257080794 509987404 615587573 847690523 445335704 427801090 222665286 934232606 226983453 881941531 36449367 216525428 328866278 601513562 778843113 658903145 796208070 421227231 964379735 270650276 360878510 432497085 688847194 363250590 650629876 204991569 932055919 240975165 966435751 204416492 765172570 350482056 527172473 583890972 25151796 157763433 265892374 576258620 314425749 118922702 333256573 959289598 209497627 95788908 566406078 723530420 423785956 580085283 253782525 598104993 466152954 874827003 917530739 484669850 842257793 399867828 618834310 911338080 365500659 271681465 206039770 455402804 365035195 866415910 606077574 155824016 703282625 767224230 754903698 524790091 753833197 608323255 887928551 589006289 234464015 811393380 329000889 339078325 653258232 648020853 456384277 975636924 954692286 115703274 587506416 922006999 687426659 974968147 578972312 203748584 618352379 920439529 31699731 730495674 813941155 668327670 792743288 677994810 153831258 469185679 15682821 345765270 666559272 236839772 581956463 381219220 44356534 242810240 511900693 360834121 386862661 652777670 763778350 949531512 697259656 972505020 869394299 956771739 212768739 503104291 401348552 590601428 280885618 275348788 900580409 466408180 701216171 830020061 220270793 504617301 335838142 558946297 352146459 717494661 689022697 985501853 151784285 588888413 183604247 506374693 261622731 695902286 832521133 965649054 256874533 450300208 172833375 691547774 345949415 345115967 227442613 635839955 486010452 706926381 839011002 531517940 80922458 681690950 430747707 24487757 827558634 253901826 393874608 499373340 199640497 229284878 782387018 230652798 375151348 121691489 469190125 291841083 85646321 16888705 539787760 401157426 167865526 289733962 430717796 118645207 716042320 277463066 447574524 374937954 736223059 331675755 249638372 464486647 201755857 776307929 802888408 565576714 320913801 176755066 121719520 630184481 81378617 20932929 26171774 21422298 759031468 677809988 410407006 768720503 218415079 891375459 156639015 38336542 597395005 88852369 582100171 136929458 705896796 193950769 180993552 915809632 459301810 811211436 340033931 877359911 659677448 448982932 199125733 936162847 695246140 316958042 803136042 619703207 407288108 749619589 533764626 935412436 822438117 879025192 507120251 225184776 414798983 907923440 788041245 325486383 561624800 522246146 70128786 658845109 553256397 51933553 932545879 244049703 420351283 987221455 725218837 493152460 129543230 495406205 281128385 691933628 799662911 219803561 623556458 317807428 298884592 626085333 205338674 320488800 584834404 652020887 383115270 445460295 168383402 346165341 37728534 219556566 826123976 50957212 939639394 918158108 677178806 452240829 510472556 853958834 372463278 617086110 764007732 338836661 115595317 846928768 979594454 536676512 595385753 266808518 14462830 650365144 630801167 210614142 729803811 58346995 400109304 458494226 103265351 974480866 406740111 771279552 942807521 219849147 613748243 334026112 519389943 29294575 242323906 315195440 155165652 912707782 125767798 493485612 14333034 202615597 420073451 879943870 483424956 482459044 133664303 444227577 834520586 907172158 38312715 259278674 658661041 462527828 649575436 24375247 444516850 413829688 985226571 481934172 251583487 301662778 548897206 598317273 168636972 963723771 848433465 276034289 822461332 898951353 893413312 335049808 621117571 449939858 678363993 413407026 329163941 143153946 786153278 915866264 552440611 28640857 612579283 838337298 262592576 245956114 563704942 694893964 86500252 827491231 500720307 163680122 645502425 26933386 188848278 991959042 788803954 504020627 918863922 183765685 554492064 260388918 39333021 581581151 521615664 938621187 653839207 35466805 483648085 234221943 543225114 910145675 466976755 711604149 593935302 639113672 937054451 881499446 40607893 809784776 275499711 735688714 228222873 260473226 494086117 697616654 679835050 669941800 251951543 648221265 196914527 275603 167981951 370183839 443787456 339424246 618396491 775341192 716520091 108730940 545632125 598475725 424090365 504555408 633748662 401337693 979887003 553785610 444656104 609823969 303135761 39330521 304670723 556978921 31928234 567493256 877666491 826181326 319871214 727797311 403107105 889679175 588819067 397091854 93830072 569490362 167567178 667924960 537425477 772599018 256316490 963320869 801834352 356363489 293331672 157743441 635376759 593696651 17751132 773956338 914622593 9096769 214915353 869572493 942839500 966284627 681352725 636976342 872003316 181199612 135110131 272279505 815825398 444046374 250026786 546182114 378286670 262380990 360496874 14055575 455181817 458186240 879065945 600346244 578598980 386612755 105950165 891222964 116432134 795548897 632950956 822006399 685360441 321740351 829673036 211391629 597633465 515461592 621783702 138620074 323179062 916734649 664572351 902426075 325803744 750962698 711638645 355510705 96704729 900527477 259088240 818367720 162942951 667144122 199762780 193494697 808104151 194817293 919637538 102093974 531790803 477044736 505976033 120268529 182875465 381939237 630613867 511833612 604317653 399314717 192445333 414382744 973493435 167006624 745542518 320285992 25137918 315488727 275246408 818198154 235100526 25631944 502499630 796652648 732502264 249632664 362541090 480569337 625809664 683874464 990066791 331591922 797783820 777373319 848529944 884140170 169786850 490343186 307311870 623021236 99189367 399880713 386561644 664484966 840163115 332282774 66309335 993413669 846154510 536170554 337627535 221532351 528350795 656512247 404233798 47108944 837793818 9202359 263741111 823728732 917957045 129067518 116651949 992439854 569341584 137952838 167174835 459395589 287949319 635484677 684906493 935937716 839764809 429389138 154169122 588268601 955355135 955736358 286496285 790216722 976698902 742158206 59559918 770284679 853333838 13439740 41079209 915600856 590555118 986310176 932877871 995382277 61137879 319915267 255563539 980826090 688587605 242961141 758724153 401334199 721256285 861737424 631360019 700241397 121947359 352660026 990447878 452388707 551308090 7155932 414157610 634586584 878130317 841402721 469909097 744728956 10372599 436082725 459969063 787656326 718984512 294604439 239436537 832784653 876760621 294801203 123263601 8435534 367987997 105653448 358065677 25407842 445018708 258300216 813507051 801263783 247574893 151368461 503650809 565131597 493435108 377818895 240258060 652210559 190046755 465129046 595378334 897797180 515105016 177543936 959177289 809207894 139109910 199338665 9550392 219206826 370762321 815896349 307458445 872234572 425239934 262598101 971821956 293191780 481580217 885924162 130576177 34864252 127748473 373402605 741219362 35462605 434404246 715179073 987503042 228948474 79701925 364481037 382334198 938686314 500338919 731761299 512649606 613959289 407658902 521558489 260371701 541505241 818311135 649601442 802695011 160006709 317938615 293464180 297997094 506105584 488599296 329009384 993902899 845508113 767638277 307180888 208916924 275382155 316945386 425153352 699551427 268856046 831037392 144078463 81482416 941546858 39611972 997720261 460668894 123868929 663067077 509453934 222364130 563726524 675140641 730499371 252439891 288001286 217642831 395928998 559280482 939634503 95375409 382818069 868085308 680422406 816951513 501771091 413767623 109112689 757590188 360380491 941330217 593283997 542320058 420767412 492585581 986243280 589558860 277635054 806505421 205724907 517848006 514441163 301480448 547104614 601760211 697046022 42864852 695211958 315940766 991380232 575614528 849183390 479465718 909120720 554290240 708902758 606992227 400572886 106966262 404023979 376337902 634283303 709666942 804564494 472975750 816378524 59449243 792857713 808393720 532822100 549371237 530649718 258478153 788501559 150944429 183173062 14483835 995290209 358464441 871865760 885855416 345475872 946199947 942805869 440536576 324400972 949188355 99621861 595014947 184945251 212443533 897311921 913835904 388827374 800365118 9682061 357062521 756125399 144128327 263072163 529838276 767822363 841337132 879893181 265200485 598649467 315058473 733342529 598903534 83655754 668751964 367245411 27231588 783959641 643038705 601517872 855917893 84837447 383725847 500799372 324368695 651153002 69524057 559395173 993333900 210527746 141306848 537703090 957846989 90504249 141806639 102796609 790945700 691587293 496450176 538873944 895151237 932481416 855059791 691314664 671852479 137966422 588713056 590958541 373034547 427817483 196550529 986395976 936547641 602952289 96190225 177863891 858906131 130895017 41302966 29921516 104086623 235531024 762353887 806752593 895039942 391559971 298217984 531461136 386068882 579469482 507820384 255848696 602815715 81863167 215635391 174006440 741773624 343053513 124629783 760218676 893765702 939675634 11955396 361498243 669691116 589960755 280521124 351797628 162664461 818097771 692103389 882197088 17063666 912189886 586066696 291293332 360904336 83864787 645052256 661464483 983999404 32414865 492606633 692777607 784231423 480288563 633277467 905245656 5511545 175178703 237770576 764677998 707429923 390274077 537195989 568248700 154183043 62516395 690507033 98495159 427957209 301917270 759009299 126240158 310158794 217246315 311668689 304963130 104874011 867981491 592121525 306094952 978616610 550455862 814136601 122449249 468896809 499937262 545206447 768708305 762233871 260100898 997897166 497120015 547438394 829955309 463396819 982478046 899715118 722083897 434374268 971352661 603842322 674367059 638989673 969705467 940850990 29100429 432661492 653304125 735262338 196234266 636246548 752118899 96426343 751109072 704425600 354126951 625322852 113191493 402437392 619198593 209141466 681884638 327473738 776030574 763410372 265524458 848003525 790317084 951181691 281392416 45766483 737038130 201303741 154377548 262204484 241875824 617922506 895031618 966437421 728402769 55913351 743863306 988013071 572268994 229025755 340344944 793951711 867088007 313213206 905208298 196324906 20834674 662892122 588532097 318307873 102055150 774656910 337037397 670297126 719699128 546920820 956652445 860130537 51265821 980263260 469637004 536532781 1874443 974809530 284305573 614091743 804532623 177563719 22490012 718324832 614880549 688600093 520568502 130797069 712220317 489924593 284486850 576856020 811228792 155714395 741903467 859293022 94280143 136954417 226246102 922843424 949811578 390382138 921768212 955304070 906220615 956984017 859776907 619014294 48770432 822523181 438356208 832187396 590774164 394565143 103291948 121467428 716581322 908430393 205231778 255661576 152845657 62188163 309778901 41696733 893301872 290010695 787802309 657371732 836484336 300063925 704868033 879503432 847061838 726501614 249579748 91933861 845402351 688026423 331343811 371365896 420254436 878933829 127168502 782081439 318858515 258840660 600089674 842294584 890892169 11038511 476975854 436703587 657006099 488273964 533261225 851333661 515996590 45804000 709714970 907940299 323756171 981144268 356658371 845816779 944603062 724716586 440236228 644447902 212685542 532840119 170535590 191880103 923725355 239568935 913238528 100571686 677946341 576515032 433802899 729250978 574825089 333972259 80148457 381473214 895442505 436609434 365145719 334213009 964042620 851666262 93352778 525070876 602743758 743297178 909651577 561763249 562491859 744136032 850880886 735217873 649737758 734075953 970532612 600900834 108877147 766010731 323174564 740212102 316531549 836013486 224372677 907394763 261584517 859677718 29220503 564140799 621854557 942782413 610556040 453593906 644832762 604460873 268599 774168895 880727767 217250455 18233477 927546071 49565110 29608620 536613329 271293929 473851168 928564940 164466785 805440014 538295221 383411516 860344054 79548487 549805542 605192316 597057154 553826612 618615917 2717101 780101933 767295688 807288777 62946651 120805607 349240033 916756689 370715932 837541898 108699750 734755923 641814838 365644758 791861984 859863583 566331259 262915654 411863543 250758056 610016679 993376403 235286178 909049677 910028911 140862054 842141489 654954548 542534386 224531481 887928611 436549528 783211166 804047453 711186199 895294360 421278122 104811499 915010885 507784661 572885061 98493564 706641278 63629521 554883435 502512732 879653536 305475005 915061372 458154822 330803524 841728644 300306923 933457566 771366127 360657598 725708282 793808554 789576438 394506071 363528277 840057812 288510840 336361338 442233779 797050845 910200365 999512460 973375685 124327979 410316854 835378696 840183883 616948267 313470903 744985828 58990710 99510029 287560336 217035062 594086474 366751110 997344658 124757564 883454815 585347728 390015712 572289788 971136668 448921766 129534201 986909542 852655086 439520395 120813203 252346065 951769059 599031289 244376334 549366031 366781271 863605283 629833311 813092385 218969278 82883778 880848327 790102597 953782334 837116956 569509288 316540076 880777884 806367799 341939501 59460157 452994396 685219331 399781050 385779204 732844200 553378645 942026435 965016409 395540268 11881644 230307760 133819198 382308887 669986447 804733977 645198397 346904595 121722213 316831987 803174183 140943984 565362911 997362223 954422588 362806204 167256613 968324580 653620752 401950363 496543252 828072079 101349161 153642850 983435282 246142873 169097288 718948075 357780868 54932352 723968781 489559034 454288610 176564487 517252451 178659591 16526577 136742970 214486098 280377472 780662920 41271853 804108676 97791855 866358556 949317384 993866629 509268011 862722490 166928442 25435307 713354915 508491249 882067400 650553817 311628144 582575748 911851470 176202610 355912370 716216591 118404688 421295623 84412577 88101921 970852159 306073113 178546800 514066133 617723667 726641853 344446946 759482079 856007344 259876395 964829735 159775270 650002809 994026556 398840584 640976746 211094705 625163064 7316417 921056408 612187908 779012589 959077947 249065871 639009936 31664847 124663929 242142403 770577919 481395073 937037554 451309915 487666857 240987411 282807471 955524492 41836176 764891655 135423791 176469869 794867573 643530926 701022690 221839600 141001578 623410284 353404089 692155845 835302807 369024562 296796693 289721784 695537618 712564502 516220756 996378577 48149919 409596859 614909610 220234968 894856439 42836361 762029024 738910945 624552469 875126188 15302512 928566870 40389225 660030131 620315688 514823056 13270888 430976444 332716560 229585422 328725683 504750858 129963116 685480073 874649841 872116003 544271123 861969775 556773023 122912084 943763800 76592197 499030810 551368164 887638286 464958435 374165407 998046654 664135631 98312177 603935643 298772391 210251201 946884841 73398025 854224638 17659646 386478698 258738129 957101818 126048800 771881515 425478196 85429366 5038529 822759922 28510966 549050959 562253423 395455822 840480004 119673350 889410731 360895889 323833570 429805253 102309760 975914748 309929236 102000958 76153037 12698203 268935947 97588340 849366386 352451879 390982850 853008386 921490661 647671461 318838563 270067893 578834443 605269668 803565328 120543955 234720986 264233571 194950799 440538839 266679108 164372009 256935527 639413288 958453413 826769220 849926828 863062825 786536403 836497053 830517024 83216639 488278588 628842801 962130117 281464572 904179836 800278406 548589856 215238762 785210260 474761254 192598010 493933469 421909852 570117965 759882697 32113529 726328491 871056885 673255691 916871187 371876812 246981579 8851334 772979120 144541483 40460544 741708653 997711095 961757811 844539677 355625557 700457059 187641478 939726663 753377618 299875271 991292330 36698342 550711609 279435211 51656259 374288786 283404984 187087475 810630710 398438398 33484961 84194772 612986275 993531417 491234261 641405394 122694529 9939072 172083521 42643510 650839623 923761985 670962970 34240898 953395532 228727502 222479023 998669329 816626986 562024878 41067357 451589171 476316120 249927900 606872426 260524776 570447304 406289731 202054863 218482961 711237544 397956076 309923763 446271370 693195229 187651789 603336339 713916635 231625953 539646108 577987532 303092160 185687844 795974992 513974985 48697072 371553677 929182523 953097507 940465035 91323321 458943662 715671742 756965267 429267392 63309662 560656226 207920697 253807909 223319842 9932701 658941994 663608494 663978443 99899294 303069728 577892299 3295990 55923357 832548020 917656436 560935117 218757247 337697511 841272923 741944503 847414715 75771053 231571226 274930498 496828331 541385524 314970398 874401021 157888805 893843572 180693901 653977137 481128261 570244963 186680884 904649627 322777495 105995918 700644125 867725533 259828848 722871001 538603535 554130019 483284644 626611762 985076444 751981317 636588673 517967799 602306696 793324236 4674663 652587022 864530324 33969101 558712416 736772515 524304920 62554338 849026562 669253762 150563486 152958768 403572099 613138261 547399252 863236340 486314155 281520103 39644557 927073618 873373603 317120920 676617257 186549891 707299802 414569913 898050601 46829178 776635918 219388972 386639685 530262334 608150745 387705205 81828481 701137059 312360393 571453886 526826857 737928739 685103202 729746329 754740925 501184292 873954668 949336616 593069382 789331128 494360754 615638229 454186802 585310586 845839866 888182023 299321614 682388676 870033857 721355001 235594730 536533009 499952765 618249014 834511752 387295644 625730215 15493705 774082988 443532361 497340769 517989582 979174414 934630891 33290494 268837459 688749229 655385922 571277102 239775227 598446732 192032186 701554948 75203381 164573318 255755797 682884033 844643280 638244184 805398825 848376443 496730135 342605010 869357782 41725459 116381893 989513454 959831940 858653478 449679833 839799834 336796084 422674273 456141022 377749699 517634234 669168746 470575905 27054459 649301722 718000967 226748085 76253539 61939671 312359829 368368831 625413793 9256899 685561678 288211432 684632634 986780311 389454238 437236581 862223507 568158983 954058622 922558520 997843016 331485254 116449566 153263231 835180115 385712421 355614455 929873029 335823004 407096914 878963759 354209872 902405522 110231032 534030439 96661383 870820690 521376929 562865818 212595520 212387566 710399146 884011304 516679755 694190247 907235974 926090301 323902132 128525503 30533025 210259564 347655369 599272782 385897905 779160127 730572270 624506476 628650398 488652100 31130651 882761190 352005411 6748250 466606889 322762318 691412475 543646554 11690570 86083952 612340981 895445278 868286135 257577713 158600306 499660574 454663715 34963172 604635172 42118705 51177343 397560423 899954704 174393259 697109156 78895684 73705022 448229346 955609244 34513302 165143017 877955324 706736169 854867868 335592233 616780645 980893723 152736863 372616236 947024967 577009090 309595669 870526315 882562221 2581446 995553597 420285938 159365171 23431287 596489095 401783089 413385077 277026270 567392313 970339695 522951385 772456508 536393214 515186040 757123343 526905874 422590407 618135873 743826243 686413151 221742587 878893950 829886815 959754511 301756810 489849995 542482721 537685149 564080213 141196590 178522333 799795066 885201885 977557475 314301671 403976283 122726199 387660200 403038736 892096009 24295528 707053742 957219781 428828211 481067231 470012270 1866343 529823267 546253486 545351668 375242885 337497982 461469265 531865551 363070976 908761714 257958490 310020015 442446325 346125244 989728060 843292678 70400895 832647921 50654411 600487015 116159713 112719036 312976121 195212693 373457504 410987452 817455601 213560123 362871071 452784333 254937606 720129031 721428824 642095601 999984363 684737825 620679798 93144906 215801713 993081386 597180677 28037874 728351864 28754256 614459809 124367440 346822345 510142002 216060990 906259431 112152608 313082765 722049418 186840679 456824346 209703502 237882639 251114758 854381021 32287457 387540659 233195805 990614584 131453238 97943557 929751117 660669015 587454163 754651955 860322027 547362140 162643655 385474692 276124079 600173550 244187012 59981675 962414294 784950645 99296782 781387595 475487904 357344407 754197106 123787758 216507246 769455532 793330660 577343106 169978029 106303798 708024508 457446581 924868803 951961554 820250471 371243227 774994631 57750151 197781888 49382391 770379646 744617397 870034323 541541364 699979716 666141818 686871667 700077775 810100331 43829572 40158955 444484564 370764591 274262276 520556663 937690713 405545950 936332027 774117248 999544098 682308427 320390313 604746164 97361668 670099915 167947794 45883296 457319855 591513177 362576777 259278063 772613516 697374857 202275873 452053233 43585505 553598063 129435999 620591298 552203225 456012653 382897849 74987814 302741035 110504086 771295548 846157743 570130606 411803676 921675275 479074978 574025817 300362988 408892645 197494662 443672477 966898871 239117365 330294856 935739575 801037339 635545667 617427791 359493969 707078336 983504379 335108768 853069710 806235139 224034594 672106139 658787600 730578789 347119778 975671878 872994393 209439694 701173645 985289785 23439763 421767499 999824576 23601956 45318354 988806897 12042613 6396111 807214805 296113324 247795067 824106400 177855922 401299019 407397754 250888860 646351335 661322531 531222187 965368784 368574149 710360956 901653414 852372039 279773601 245417921 356123943 841390384 959408029 544110288 283453038 340598132 469960948 47957993 282106593 215431505 616294739 438921318 588372073 982060 81543128 672603221 248732371 636533127 687985490 64904948 432065330 292134297 235722624 326627965 917295993 220677446 427579976 184617959 963746476 380804717 550437275 826080544 725483061 783969675 183665310 701125791 347189998 323957462 247419604 97352323 436547016 721719182 896053137 241761922 998250412 234252363 376642792 486956079 851766502 580423291 832215375 26255726 272333948 403337787 407836983 842866483 175220860 784985355 968237457 244665639 337888707 661958134 842780318 698299600 539776637 372433160 141439267 903481391 713255888 229059907 823125781 572019071 986213194 444535570 923851588 446249364 914897852 281100720 77338994 176723638 13290820 872974621 297236314 89422866 819784978 283318910 891443585 604096800 295068467 10585707 139184386 552482650 370520303 279560856 171022097 16739564 303392589 522056780 427670437 632409509 633717028 154471591 581488045 901843711 305302382 610180585 232170650 835629363 24609514 66558120 828212069 312026744 878197434 502690330 102429494 893903038 641060172 824286425 346013300 639719364 661360065 414831310 292265503 494296895 311321690 670471870 885869733 640145446 274360740 351876157 35718222 796013168 613588353 219632846 565715517 622452269 837415259 406047067 882233288 413824838 726866153 634399097 518771862 601595273 485217733 520249178 350749724 31412668 344286631 205158214 559293374 540136805 541883350 663164523 418464549 239347291 216666866 816074978 387790233 600818698 196498215 299625962 525750774 427276795 252970685 518676241 206751877 132589954 995133007 33248847 411119507 948070306 98498175 244773710 874904194 597601860 973677965 82264992 644243918 765139128 154470249 391147236 676531160 288148401 290380795 474982774 222830170 364620200 540142571 152513460 43077299 751628592 355926527 705677777 62281140 756138798 748466834 734042148 375341921 415055906 996958585 255384875 49849123 736748202 773277038 186540809 623769815 552796531 223173469 634735485 189617239 288173881 3820939 457692496 784480383 525742173 892506717 743859246 521600116 614308292 42320976 689919014 540076483 101633073 766081054 613141262 473712518 485662328 241229483 741225938 870389738 506873428 892957654 729399485 65370388 912324025 474904576 614479168 676509321 798595663 428626087 473858491 603170862 226878930 882784171 31466469 468039702 919326214 706246330 331693114 695284530 571661516 643580037 603925448 251663302 132880748 487844361 569824928 736771530 977810148 128302009 412497307 862969183 561384037 740303646 532533838 697106944 222978828 898921096 636329614 835015839 206988331 839756565 255428708 265282585 179554920 431071216 413617463 100206529 879441392 343573500 60469190 161144035 995358457 539070227 192140590 988251650 275298766 747114500 973436397 714608391 440190372 736382958 581211411 357267872 938752680 658700892 361788626 844841718 208205776 326829810 699080899 597141265 10083872 346397243 709895023 646581111 325281537 328793351 963992693 284710872 99617334 180022734 94133942 986753836 160313235 104906452 17326 696704205 32902489 771769240 706791656 861641643 252973084 753426910 828592353 5690069 241914495 510287966 344221174 40640347 910692431 54581841 990372375 373380660 714521695 921127979 347617243 794983303 30223306 534054981 29234887 993994703 193645461 709141709 300785490 400670466 694617425 649385167 855821420 356054599 908372130 101086885 127429518 82322147 524530164 239585927 688530484 778251124 900453185 315410964 143771959 926940650 591812705 489219212 757021797 94945301 833320632 820987432 222066323 949233508 758783155 393656167 254334743 237198460 690576064 338668587 257291053 570868979 256602819 902342225 915614626 131827013 85371995 36229588 64692453 908330835 539663845 171714794 52902755 541029548 874920033 644424704 564818843 43287681 541576266 62133341 168923170 459486681 93821352 294582968 729583440 516604098 143975180 665771190 976124705 281615955 850608152 965753616 219453699 816876037 876434051 823182455 930657365 860078174 976729029 938587312 173660065 518210356 486634650 543582120 122243643 194327455 125553063 462576131 354332646 695000512 129777789 765728600 405194994 847036539 614522973 399406979 75526114 509522771 315736852 671397978 317386799 168109231 790190842 765548268 274341779 761431481 47650931 252513681 562614323 841233249 825583633 675267571 255174516 941322759 588825600 250798575 753823984 633218251 801380688 196828801 478591529 907086295 456157040 399514366 221326536 411232589 805619474 176561050 382848292 48937171 109641071 85139837 530948533 566407515 366361800 789818293 861130363 219903047 150958913 64760501 804106690 166696227 246441545 616730130 867354127 985472764 411846489 889525991 981265859 531018064 454061745 291167592 787613815 168907723 239454494 867922006 771983384 328442313 429543171 951159044 477448915 655952127 24204517 731358418 744404144 82924241 97806241 222951178 46849441 137863178 799334737 75498002 540860979 108901298 450093495 303782733 548593203 228699965 386945083 465329893 229547603 288715242 796922602 933646601 195422114 409419857 441331487 122044459 307528073 958904784 26457078 345501869 869470925 30906489 953573963 893398805 553213333 453847406 287238339 263058333 205547160 276095358 642492093 711788585 689510296 703770532 275736716 130985564 631185628 325340595 481975446 40542064 811597486 772163321 265398513 753879502 112871659 59606827 278876675 95466120 890938101 483144636 424264929 457264767 714700592 751857952 955149912 950508285 142588141 581459621 462665424 53544229 485366014 168446180 215398534 480091990 758440941 964038638 978106123 102399782 187821402 527697603 940868738 915030040 815224412 199059629 737183433 458625913 882234740 961034942 155733003 959792816 942872085 273536234 25876202 4539887 365376632 535637503 282120859 738225959 283445777 563288338 396029302 156787306 142988091 17172593 237660866 936368090 372957918 802511058 863719047 340845309 40240938 423471959 691907075 494785214 342941777 166151117 331889518 581027050 319913582 72241987 740275077 899124882 540721178 149385965 801863078 664571424 186362538 478198227 692010002 173686324 413060278 649593067 986102941 681904448 501221220 397405336 125149384 372053994 650665637 474515996 52683107 53960848 931710347 852243419 800148740 99800373 307688971 178894443 225379770 799943004 380359385 49458690 52073683 16208917 667890193 415762250 450476443 868639335 748455448 871166022 935830873 318397462 957238289 366275947 733504744 730743976 915517161 406212140 4746840 770297220 340623817 549123876 885160317 556072053 629517290 252846157 871573134 811693419 140560408 724012913 310730667 985009301 797797231 593399598 138922163 872205547 599640746 276521126 493561303 842154986 160747544 63551444 494295470 889042188 573472565 495540949 369248276 620362125 863024689 884608751 780402536 789087775 743308195 318993395 251695835 428854091 380014003 496710706 547167564 880880998 471265571 165229127 623036361 975983148 694752824 288765193 530512521 862063864 164658319 481007422 103577377 854679996 936408901 444981362 870904516 594737010 529009039 436910168 469027032 129540559 592977672 582811524 519977195 126159245 263808576 741652833 67937039 536275121 618097417 468493618 938682629 122466275 984942053 423151677 847541090 738349447 422111508 549111881 748430462 526370060 168486648 47941467 296133641 482770829 73448322 580838008 847037785 112394863 522613574 709692193 657406232 692564345 216379272 512532577 795970089 216108072 26475635 870535490 706738009 229576166 589500229 329715798 992123243 20696314 250001774 278028394 745850333 729974785 243993463 355795196 445122653 484096415 301308408 19147309 800542139 443354727 635255094 543578978 835541138 143429769 89477813 602206323 520957370 452085545 756304163 266583148 39383523 373656985 803695912 973711210 307250083 699404498 411061997 573966330 3191321 683447155 359890451 728413020 542427756 597141957 731129636 799703044 95965546 128455616 342707428 832514581 676641685 313987586 684057054 900390788 638314206 832249837 612687191 108036691 99180002 604141469 939798667 304312438 854147400 444811523 250478105 409610346 262593443 47217923 278860637 80331534 858457185 964192569 831996012 769000215 320488930 869303850 890681584 80516222 961192769 461478597 207018450 152289449 48620019 799019951 447524037 204456440 817447383 951561077 987392964 319375110 416175615 1223341 600869665 156991737 166432071 393057493 6928652 872797022 643841890 10023238 68167363 703307374 767675825 851952185 819713506 121171008 422466913 397405803 444982473 241065589 336645198 425113460 310780385 685541000 697104239 655434397 670909003 421345197 548431900 581351251 71305786 869145116 541006813 855876188 376759924 409824964 28346176 408189508 211838996 975948886 628541234 147964111 827608193 239368971 71930936 448355343 298930436 624621707 299785389 847640592 738740301 38840711 772315745 300818038 721331073 980558301 878810368 34919332 330060129 952438122 678214585 76262816 78554719 284393414 309936265 567453479 865231240 704979871 175780910 842878974 89459937 896664886 238030268 46180 288611294 342801252 242792115 612875744 442229825 51218753 379093456 869918630 106099428 483642465 742411625 845210342 400425773 184544304 138121531 230672442 738571667 217155550 22411032 763259130 935913139 128360786 68443498 981264654 467443560 992212 316301211 83391377 832119616 602821849 231092706 575621172 839453058 695634694 568530651 314137297 870375175 11394616 504172307 533914406 314121646 56156380 659190291 584320976 67524234 855166311 671351153 955966911 681452586 527109912 759911442 804375798 6239092 559139422 61226032 334680050 226138312 370351596 979112435 577151521 410969373 226216213 49972419 206816264 27751977 810324186 816513580 687162824 707583821 722396286 445440826 580465412 24141131 684226060 424765029 888015057 520567509 785338706 481023925 661791948 388615274 591142711 982657619 481912751 927496757 870521784 501694899 409549048 995567418 822114628 949703503 642564258 460705127 323532628 407449248 284146447 160280642 198329848 320760564 957103570 728152351 789314298 457258638 226866971 412232189 32758847 288237154 829918876 20107308 771684423 925292771 782511843 612241494 4061187 15799782 859516122 503189361 499014086 995207410 374135146 490822757 605413914 125080209 339977734 161042649 992438793 507635609 86115029 817272781 122934674 437913624 606994473 69147132 933048981 674406821 323803095 83415765 616456064 271364620 861597092 431764752 715327981 463091887 116772405 965651699 932794604 272615483 384347587 787447933 768131257 549923231 376509686 218374376 492755133 56910062 384850394 386925161 574426595 105738128 946358167 77193514 59530155 36570345 125885145 801740133 75809624 816210620 57377120 924539723 148557999 571362459 731766755 944887351 356149916 980496132 577385156 295188046 596854111 391568257 198772507 986421819 60312940 450271285 785363335 667749594 787685790 385541170 407212909 753412120 139091338 497519894 55604804 47111417 816908419 550437295 192388272 600219718 475045377 892560288 434870752 997737864 436420269 842736461 617726190 677704775 182714793 657663094 811443686 438833887 672887987 420935497 791103864 679188041 916582892 542268546 627746062 143633829 877752793 532121718 467114175 628768456 167655510 61235052 525753283 538289288 318055479 819237055 369380087 549287353 123085895 981626461 691439061 373689960 524735532 207232083 367370748 549695329 388440068 917886812 87737325 978691838 574867174 237762479 272021695 578992241 48880503 135785383 288464853 732141291 78962454 481416282 146685163 471819817 373096973 343742013 735612829 167577906 444003775 838131601 1777809 467311211 105766341 852253511 447726569 772798188 472708092 429921186 943914140 780389276 923148757 921998128 872123131 25530989 190814593 332255779 935765345 317230327 509179121 696434345 961490504 857139479 476694913 414610432 8401838 578964802 784113000 155262937 501535750 428296873 726725144 572891827 655535724 511503079 400891461 805293454 683357549 342528410 792990081 526269019 96106148 728303982 272326700 717897820 214169893 227087982 466191168 194294068 53857959 221262292 571658414 643388616 529075428 952136512 522127706 251216528 589344238 702805318 850344610 845746495 721074471 379296302 416087391 484648547 43669759 42138402 138228010 381827605 8647751 567070927 516440271 664976630 899863940 935627524 683671480 903047501 145380172 748544775 582805845 478025871 724609708 232062044 788641067 904396747 104360551 970470340 294577058 790137568 746992993 349730675 692942590 993061029 462475996 88305813 35497460 59545946 245124362 670727127 304602096 306398127 838635786 252622504 562249605 557431895 938970300 142542912 684608912 865293254 612508283 544661113 133471983 750405350 892931690 814102932 545493482 471911754 228747316 194076795 369510275 772303478 403242412 826682812 538631848 576244262 665196580 23126535 62226811 313807999 475679764 931675411 595713683 675773310 108148547 812280529 725380937 209370732 682039476 167769915 940470027 552913566 391503636 662910338 606067779 584826914 948336276 573042228 938950432 841195123 28949893 792009481 556646566 649303814 794202261 920092715 101512233 310037343 657542452 887849636 96607926 946922560 632889505 173334829 228743292 816855738 995599154 676378229 615363132 859855648 233033967 642540462 534365559 652219424 89954114 949831187 876721139 954339946 198374479 468171582 891859725 307866608 135006526 240943388 368659925 400294320 165803795 892457482 872592464 381231968 762500806 267378868 312324493 449819346 200355337 462307952 708868434 57670997 72434087 187863149 168951661 978091186 802872909 979022014 24370633 490331063 455298753 501361922 242393281 74251907 822981118 423955232 680892133 873810146 673028649 419384828 804405496 893143921 248937943 664854995 250640937 845400926 28365161 183612989 120675278 231905995 418535025 75641842 588816148 24605381 345261358 961077081 87483534 310288653 12066974 753279194 661924904 345208850 934680755 849775543 928874403 68696114 677592453 878358355 735037704 146739164 166594378 683941227 580928942 562779009 376012060 597019104 704614213 809910101 285971711 469284052 475482441 581249890 914364022 389580668 549955264 777581590 266632055 167739284 503573842 620561289 152916365 473184253 974542413 124600013 487088863 428040920 188386133 248626989 87337489 116363266 827882534 524186313 642575154 444577165 855610376 443222284 809047730 680148722 141123296 461414677 119741274 785010874 826240432 801923004 721050581 102692377 887636795 580428133 171074321 378753578 691134461 554568404 954658986 758399301 570224461 474113067 6045734 4666086 35329577 250194116 642891129 198983179 560021337 8413622 75185024 604919098 227609705 357719687 321448795 287963185 736338855 550047704 192899485 164528661 273616515 446795215 841249420 852908233 137995852 489033529 813769964 263404263 379328378 36646093 153440732 30857362 663549289 991247755 376070672 402102900 1690878 142952870 470904687 842531442 261785952 575638817 184251681 296350327 37664017 940644584 690579527 843170853 917746903 103439828 687809639 141775721 311939821 334739128 68849645 818105212 438792132 556823342 759812557 47605631 658285415 948567995 859041256 547651783 292699272 350611699 494118488 750277124 46363040 402803886 41933194 512297575 827095626 451557226 892378940 849091635 383650015 992838820 4848835 316048564 779207720 180010579 490099885 397855811 351501073 648946735 407961413 917789860 671912872 260028847 135701636 458744346 403431964 347176881 642942551 962909816 52664785 654449135 259010209 409573749 747968812 801409056 447306725 605423910 493061313 723637427 807772861 963933979 761520270 185133740 758757431 802560015 472828582 394201696 207161905 364821839 824232594 529109131 740698485 512830680 866498690 187478112 213832204 436808663 243321361 389198804 118350273 911048047 667102748 375345068 430348474 479466837 134244033 651691555 541674648 123667137 879478269 343190310 919714464 252851671 387278583 762471183 250985209 516252325 459178610 803127108 185280580 52032662 848864189 79856463 497196356 811592414 774507767 729267254 654332066 309992874 758652269 713335891 717652764 104286082 893037248 773358696 899078831 630603627 305380739 252845670 138295049 285157818 578684998 153110635 609340291 396170543 482555401 490127811 707761495 496204143 766568630 247183604 853437074 982370551 231998547 378932769 601436011 895700665 884041375 851990550 665842889 510997643 735153124 437924713 751158371 76549817 704362554 81661726 169461741 348454490 831669520 844607648 486024395 150515523 181981882 543869905 626836664 941407106 232948 10671668 386496042 797401807 3256880 167242233 334664114 151674771 865899777 711592707 969490073 861579004 484467789 980609819 368426697 66238729 237957735 927226230 355706010 670331583 354135116 455297736 511304625 835363968 726868915 433369683 8231849 506801702 586539950 560140650 969809530 172527119 141301122 701701373 574703474 54928574 432989412 851880178 544606171 599705720 193713629 625357917 851639188 358466524 420873167 674674114 103353337 510130044 517718246 499451269 796805773 75399739 460425442 261149257 63216502 159162445 472396669 394501486 111401010 864170166 724675394 309785447 811785153 307581540 438628536 9195035 94931400 404412817 340233426 785940908 379931976 665500583 276973816 877191938 78491174 823774899 392804340 338022437 485691300 514164279 913214052 411989319 11624852 990314557 778629418 354902242 787751169 338947060 261101615 36062770 650917350 622726986 356195362 609937462 479807656 754940918 834591938 822006073 180846298 191722942 460269775 731922324 920663417 473412470 272004512 438674193 86214096 99839883 457003957 687040265 12585182 838416342 47517348 879967460 521607318 990719104 503751442 243876138 93570420 207625617 38974055 438871098 274722708 990070247 692184156 837517170 704616524 953054714 866049154 894931378 739164384 89846600 259901371 837032362 426234629 510785218 52663268 581033869 739821658 844864738 748548604 530530955 678867691 441793536 810760387 413678326 487556130 959983098 505517964 608479713 131338680 741447023 937470898 178422686 75021533 462630607 969054511 985885082 168081518 192650461 899371567 213570709 749856214 370936544 759127801 167800274 453713650 333467917 457812377 955989536 645024298 864789020 31066887 111876877 398815996 328740387 777551875 507823492 759907376 471143867 128173845 194169540 983425454 457917757 718799672 743442343 45500559 693647566 789654396 676624812 210635777 311536315 957018255 205085584 128187708 343568365 72499873 64062921 651759930 479130405 896343845 272725687 689632490 562663627 458208606 427039127 798594158 901971359 895258227 973720710 441388145 117614994 786696937 994725846 294356497 132569277 768934849 881179582 315589759 773291023 339618135 679699488 851050650 187041600 194987670 77020691 610290400 187020860 762489048 769569556 533014744 947348865 709010450 323862573 595666457 163170420 15580950 115814190 405523513 924130363 379872936 667626613 162271939 418777789 912604773 806982980 875666810 930820078 841696719 603259572 403132987 864883307 731911161 318150981 79866975 107625908 293881530 105974868 427860461 315436176 34771267 830276891 115229843 505733 738078889 541436550 197121706 665288062 113529099 370403865 249876159 993299422 967779509 271085673 280093377 457632710 578407835 887773606 257306046 286368244 420452562 453948031 236220712 517436296 161555878 801213930 113089079 258461331 759722335 145703732 475634312 945094161 648606854 659990049 875822724 912694467 800513116 120023037 671680093 765221344 252392179 864474404 213528544 557835197 184233506 460996939 369293560 449804750 451003529 778463375 256579052 131743848 468149251 724843924 323208732 388602186 816100490 957184231 124461032 239145653 384847080 513006125 412452544 327105914 422592381 299276281 934118248 890819668 310907677 866049752 361740910 932897472 669591243 327612666 512159570 241387190 827960388 257108594 292334569 537752116 94873759 108495726 461904316 78905816 850914312 40939894 609637864 948883906 694250298 268033386 764144544 890240606 873145414 593407909 208157231 344373004 391525678 633065107 706966363 823917823 299555833 564642491 643581656 502754903 335866263 426877371 50491014 190493604 934586170 527349108 964039210 105426664 593566154 574850413 559868998 832176542 37336856 673319170 561599605 419686128 826993030 143740494 520963371 917631106 944033978 37228944 715080923 200139000 494048285 34550394 679724911 827693935 805552301 199572038 624569124 569763292 148386352 154362755 959643030 447827539 857460020 866392697 347437660 98754186 866866774 380886887 945674208 59273459 847672687 523779050 378679585 298848962 562512211 695744150 3663975 620627301 365344027 918819717 227939260 519041566 620790732 727149686 103130538 16698422 939215605 880953112 696098180 611051228 203959404 822236629 932441546 383911190 907350188 354553040 803686588 321060128 275957462 214753749 358224312 283668670 203727516 658559748 701436549 887874888 275317804 47795665 233442011 288109285 218254348 74806344 82868586 941592201 121935699 441160543 956945801 610480801 334612490 429507127 457508910 730681641 196753762 924513902 872308949 730819697 185410673 781942153 147407338 943639837 801738069 605854330 275389759 581253660 33018246 871112567 933625361 408415740 209100280 138570612 173261470 906199539 779804919 314784064 248168739 903953720 175369604 310441347 149016410 730583746 862172324 320230489 378367208 593604298 672155328 716816935 451404678 856662723 701503386 748848376 406545351 23439753 121206808 660150795 618703365 805261603 502302121 505526974 288565604 143982589 74712865 598869913 341397543 417896828 479774857 221293887 95099429 573536610 97775117 266836550 292606628 284580525 283859276 859568982 984807553 583719710 451014796 385182837 537555460 959785625 637335888 224929158 606583195 121861794 814887850 951970669 27101392 219554356 731332961 607651472 867310010 794040403 68154772 239059191 301150118 150657110 865831285 120072234 435360950 434351347 258106374 834735900 41695498 94735056 14176507 12498140 569517843 859898953 586739725 731201949 974855265 336710356 849728247 630608486 565690595 416719153 109285579 869738952 202174511 166475668 281178106 489062347 705872688 818805862 678004165 299840133 387040450 835279646 17622614 333357085 65243933 2908383 273255314 247718560 978541893 416045489 83854656 321974284 315320491 691446205 533072871 46914776 125723172 113203620 716113651 759349887 893745949 967180803 641542794 167056405 810686006 365429924 407195198 701984872 750434766 12668356 176267047 166958193 872710597 89781306 383731271 219904939 722225371 757123419 338507839 428928152 695225811 774660159 870618358 99641234 941921927 203459642 490530914 948051743 272503893 449835233 665210635 135651978 963178181 627668197 70194554 237193724 752577607 270733461 493465935 940812293 366418971 766384534 816500626 698705978 865020177 957296322 994954072 741219692 972433478 238620200 491931186 670091507 230837728 182162466 651252305 639483503 319081655 614207710 752347107 181889201 253349630 129125073 867362009 184375736 319358534 158655044 530225941 301093251 321916478 345418026 653102334 752624381 187667944 690734044 203001215 857159683 672223428 905434162 887496897 40901386 879497664 635555698 504372499 239966818 919290011 71664325 49488654 871449239 738183475 197416354 258488718 966989165 665527917 911744461 694830212 382378095 252390631 928558927 50301905 174667498 35265440 109695780 12609050 781000689 150943860 358312793 667815998 451181051 991067872 896073093 668895213 370617834 416094322 26731768 496672034 875067797 718734238 299598 721274704 893989398 858808136 441452226 59238712 73471679 2069647 343794376 579898874 54108695 460666447 383078276 65315647 952390856 513584443 599936118 583505569 274021146 543908508 800805838 547390403 224873736 265710932 15803001 360765048 532329965 426964793 417909687 434544383 25044293 764261949 338781481 507296096 552003929 481913634 477496093 258517759 550733573 855335915 299428949 790623215 659333704 423305585 427271553 432673287 832812375 918673169 989387116 428824769 759202717 153402452 303143790 951163975 239108174 712205004 681129827 89232691 385970898 919034451 228080190 736008562 490557601 548399944 615605655 695091116 907991160 520941150 729680126 568375804 588795777 261603316 972920921 528851503 528023389 673347658 938811288 345658512 408256227 776644179 555332089 61127129 172048065 255537117 699920200 325575634 328354637 966095485 252695992 775192 412227388 947340584 794520384 576664957 319003094 489513983 515256630 124656984 320558963 861277398 825292857 693295051 812490082 950015499 443158706 564961952 16020091 88982862 847887403 720540186 315988548 382515148 590657594 84777817 818539455 424394091 536889653 447219950 106958738 309807500 610987106 180002644 125430450 853530643 525665648 838087107 890481346 258488425 965001727 379959492 491408609 366577244 554722182 182577534 310575695 664569153 976423285 764551235 369747115 814379385 152647927 618426099 292101936 262368666 290537015 628156050 180799641 808013579 287185383 566813450 525513694 343347585 640990109 572276456 956814204 245528412 659927142 41485149 697924897 891930755 741211303 814502677 452798264 333676434 840165481 36221433 501446898 789639573 927376247 728133776 464670471 789082443 113970687 290874723 466473665 336633787 348246101 227487941 342678128 929438653 982799651 642060852 547853066 568711905 801941169 511720338 624017360 3597615 122918317 180390713 209780886 344471552 706873235 490304493 869390954 277913269 400282912 910214177 140267540 582728978 365936843 519269944 459304590 628703592 587470019 808434618 716855294 951847238 573086789 597808944 601637459 392477081 90079940 438104417 303191464 891383581 958352560 344522289 819441393 859570371 168859116 262359931 699446587 688732372 426917898 843508260 467402358 118337619 711669610 622826233 223391013 473215410 204989791 939568158 945420100 32762161 327634231 347044719 956171763 976960468 106038433 410739480 566990586 530575253 600554647 817064844 533875394 854789737 453549431 748754246 25806620 585063390 291567042 940939529 170102078 852194429 159184117 170525223 934707988 833975697 150433294 9924136 354105784 710089099 511501863 866997650 885265975 893541554 302587829 148267132 210681117 240311347 929771586 659205892 189090757 635047683 880717804 855682808 867239834 315887753 770639307 644106447 766482285 37405529 797728577 802568883 564651944 803764167 150609317 979266525 523269880 661370559 172671206 139011549 436983071 121871367 13797851 932819210 485977620 149669174 741937084 797620970 76534621 680430236 226146830 915223256 594334061 657620900 688017870 715696799 618217499 658953643 428357984 569502704 20908208 180628775 938128684 265989892 899486332 913799128 524768736 997651336 613726716 666794095 490168172 596373558 618804996 804287765 268955628 904464739 789895226 935999824 145383419 299478886 26515550 218028855 380543002 61270741 666525366 901786088 103274501 824569155 163606722 51541927 286870883 400762585 499443576 378145490 870017453 613028666 107225263 109197693 618123343 314063242 437356808 828916198 40103006 838379467 913780151 879540986 401338238 291671578 965530907 741992138 55198043 978442519 613821736 741044613 774394725 685713670 575263906 64588147 119178438 578293215 565593877 193042758 651322441 604897380 416547112 836302042 715049797 25375815 91928008 512139262 160069653 367184570 594580895 583069912 35271324 576515749 301251493 834735986 528823868 834849553 396752093 281417225 330657807 671987422 412768867 516941419 818530290 789021369 288045733 808713779 525718923 462322261 945078774 877630783 480464829 498933291 45338248 444649654 904248884 419356378 922649952 537237514 568220069 418273617 613608995 413226157 59877249 285890421 309176552 275867935 691832965 734417961 419442066 97587508 577122985 441462984 990139077 935559719 129743734 154970569 317930482 736527924 920190679 571116145 684313037 803881416 489013011 308787587 803944373 872562190 77076280 467179586 952633609 20534296 425505668 486710921 730622253 717777936 460395585 728923103 928957341 147459622 64996593 815169134 441995685 915764542 880385592 414919778 839091542 236528174 616362227 674322790 974313072 36136114 580587402 450835410 519597681 156510711 603075828 360123832 954069538 525665994 276620732 888333375 814219461 383626373 443068234 568525472 818715771 875833000 183909936 614136643 442386103 732143380 555832287 878388586 433728080 784106912 805002482 171929771 390746514 220429494 33414853 109839925 631752402 400212025 643092131 911515073 69408273 48977348 281850387 432331172 534775868 246541157 382831484 879185446 139622285 239811223 895304840 461920014 992882204 445834824 294198985 806576120 387802860 969779205 32811448 648632995 500693422 639146432 474432363 770646127 953766259 24124598 583111486 231930510 508942071 610978063 634130013 477880502 610643094 321287414 64350827 3792522 621832343 738902363 920123893 627124243 631889084 680907763 358062037 674279260 124336232 152503333 217793053 346756943 898378837 103253719 761363806 234347050 867033381 820044058 414727882 426661015 889484129 924364945 814669917 435700704 362578912 548142247 615683608 701687069 121087161 412383222 813374614 774131069 973071766 208536177 414698691 254663384 854780395 534702731 580003852 177634783 900289692 930821352 914487267 733244271 756410947 748733176 592292728 577154309 288469370 713095229 491898560 583860720 358535927 604968640 96499279 529395602 217884467 949866560 437016276 594940804 644548338 828015436 550368511 28241190 280370056 221364027 665126764 941663365 694716394 274291512 932323556 307614433 436185075 719768393 503356186 8011033 96833956 116996759 783953892 372711364 663261902 419177919 880338819 365529081 357176068 744104681 763508561 114645180 142953114 815323420 10718054 286913300 461841972 679687828 293104096 322135082 490449313 726143537 885803612 148146270 905913330 872591273 558561861 25689824 346778272 738703604 223681901 705867427 468801192 499530973 24071131 519280688 372173497 797076259 317996658 71955190 584396796 371678752 766960008 567215277 565213143 572634447 917260638 272966659 479187241 98122931 133218531 361890577 778693507 210157979 512894935 685490349 412368551 141410273 430396850 277134142 947742111 400219205 214048347 897759550 444718004 788864795 123364885 772650655 280788637 2774076 269266270 206333290 751784577 288814694 779910245 145010208 378129070 602437164 851264192 633239103 679632282 411372051 159779115 767968683 736966893 1233980 203710875 831195533 574117457 77349082 841417715 610779992 355451990 113073850 390943487 115758535 576231319 922211002 190707486 986313474 137706688 791285550 827257206 9981093 927456409 370888972 477406431 916497277 770386938 148986257 589417915 496874274 605548345 568588019 510124524 986851730 238127651 171088322 530230705 611142517 986569296 253920287 737788442 579118319 466948335 707701896 151386098 668724822 185815486 327206954 565599305 185550601 224840704 784416605 90293738 757393773 85863428 674952216 760741720 553000210 159172802 901900445 478117676 824371097 754319307 678459145 350385551 691877089 786069601 890523180 822106733 834995736 949971629 730607889 493191871 153505447 688847036 489357849 287542684 353853669 479990043 381543167 127695193 302866803 971388525 36283058 568024685 135733828 875008958 668476294 165146778 43114304 400067425 270620628 115981321 21885836 425026762 311327593 999130530 476488244 288550442 55627525 974332497 240977784 867896685 86317401 439292579 907586991 869699897 647834275 587639801 685846900 660302251 85697889 647810614 169510662 428555989 412828146 706778626 780351730 78708272 304551688 163856477 845118826 201455487 18328024 558830156 766611432 920159351 382422709 591353496 147657377 700611088 977966177 631405329 919032494 136024959 176553671 418732237 766797929 97201958 435968849 396948277 313082044 339226046 101157303 686453836 488351436 592570068 496525326 13118062 646239457 490341534 360974667 546348989 966606525 566937202 623996147 578514669 359956070 467682823 590689887 217696130 772190754 430133517 123478502 279892067 175491551 206846057 619805535 103608143 918847149 990784766 433785946 469403007 6883368 488269069 14829251 386518143 16054414 718091640 818045651 750324379 135679718 63604583 247743095 77317097 970657398 67300964 142818758 443253916 9893190 704818250 983869356 795786268 465985741 85994868 37223829 696778294 562349512 85058013 557370737 698743786 874962136 378303557 626026703 721221984 186852526 13299418 346053409 440502937 313082612 659054525 589633986 975488921 697865370 444804519 668659762 263609840 300724590 29014957 361712343 210623790 298527369 261598805 236723344 554595534 7637439 319146870 461985721 856993723 433911740 674338160 170809678 390822891 182101724 389702346 693808225 321630362 61478843 281281887 614171809 414917694 724685665 509441328 691767447 160089234 975139988 815675830 431058851 21826801 672350373 91879672 991818453 758456572 807358022 980661228 50389526 884704535 449461000 373364153 652018176 264092982 700495411 744632959 183207392 463266718 237038236 271707890 495396431 790069292 567218735 939030663 772134110 893644823 928924206 23972636 82048467 506357376 720962464 126713830 299952866 824192020 294912273 316512981 181974142 186868690 550114205 815669584 539842778 284643015 470778841 753510076 298565736 85675012 326358972 491742832 724560075 15602857 389501036 592728057 946672912 270076758 413046250 480614559 699992719 893090014 451513744 127969168 426622225 11255023 554655990 126272114 111006308 119604067 913293213 876444101 256077817 669827739 465563989 910863335 66298748 148107880 704772734 395663560 801243970 18869588 608797331 626713777 430113330 7983005 656101438 18987423 759929193 14311070 480676082 285810323 666739761 446533931 639468900 321687072 741365370 578338220 57540480 498169971 171453884 392589734 156660163 525559054 511745975 589817813 217654373 656124204 414568034 579478307 848343509 610571547 917328781 823008947 90037706 617633517 872343344 254440683 971648021 99297437 461169425 5658171 944327945 805137939 826382192 949109643 845433414 271916941 666582861 866963464 183433032 266944062 552241851 972548908 700193125 169219162 644196074 913558977 769323589 811353756 991939153 960647526 242992611 884098547 77534539 141858774 959154191 736137723 309040453 898250469 536122869 538365240 441476648 555575585 764530518 493834358 998395424 312441972 754825207 197821556 372379679 440557381 655958167 7241814 327962102 796911378 402634388 182711892 949645452 306091985 742734344 875755927 987569864 140861505 544690484 412486758 287516686 695789589 528428312 525751708 199904231 689953193 678871460 717265109 831417892 63785677 739560945 494903626 910777984 130227734 792411434 907838081 852454994 326344118 818464471 72942421 846339508 792703062 181706290 253376780 600024692 874851136 840094374 518941446 848552050 450158174 920021058 38269440 777349789 770635122 720804211 643625013 177940630 284382736 189817491 446487446 851804363 406295521 357246397 580426292 709637798 960105423 358571139 383389802 856343789 690211085 77428615 521075248 213638264 455479417 849493074 694103365 921455766 603103081 342425592 755982428 308486667 945919527 233731178 491836529 303141881 873639961 69516240 5504777 720847179 132099607 579077609 406223612 932383532 979337003 700046401 138339124 291593996 276350850 887677890 773939341 660615072 56112642 132753257 351098650 468910081 705003211 323255908 720833168 801799165 747700242 3260068 364678319 674381108 61469967 461200884 759500695 197340001 756185273 694303557 976886912 265167906 914477390 545127612 521595379 347274847 886683164 510694727 382280131 359507375 895873379 986216565 960624855 889757085 322182227 64788301 24974926 137014825 296380292 325095995 520081192 441236395 361049315 395189809 605917089 834247488 547573049 414097856 400570751 317606898 139724316 483468800 849569734 681119899 189070449 705434792 82263892 21381682 496778999 646687633 867095287 562937441 271798318 473929551 757421497 423411361 183887314 583284074 260921006 590086138 284338644 430121414 557040421 286360501 849184255 734936495 377452124 91475094 300421482 873411735 541159751 416188877 277073144 468158020 999661729 275650917 776772165 23786106 289499953 521494646 807428787 77536170 936609586 661962697 510495500 581791298 646006485 973625032 901701270 31499449 725616732 844090800 90780455 587598877 679338169 965935648 191471996 52989381 74000391 873186446 467977153 469143296 636312805 612070220 102107921 831929981 565595989 927268581 56193664 659405448 291026365 681018560 951384896 191991148 962360398 361840346 946825761 310687881 477163216 668187243 528933505 493880190 738908631 283724366 785213739 585465749 346867746 138165388 947041403 438046376 27478371 48393380 924796424 183790750 247303621 42229161 94078232 696953397 421229782 725164701 783588220 320311773 960995 781150772 928413112 443812988 147678945 930999628 953448489 333976108 17875803 354030495 911658723 801478837 35063390 511988187 2478501 899542827 765321352 822549138 424364131 751411735 199543036 749611758 36181197 570275589 688381981 656201505 839442648 502415910 969191488 148404173 879214390 686573949 880225605 17499566 511440410 13917567 513931312 614705093 238043735 25518659 193499142 602867954 102760519 899358089 398400844 418586087 480622780 400593710 556640446 743748288 391332440 55719689 555517359 126410175 481932729 908998161 717034727 403797823 937670173 674081283 657308985 448434853 658719469 23952939 426989950 512402352 361615943 154856514 923365953 116119299 221254627 937336687 333370782 366578629 735017289 641162908 733512347 796664708 459637055 217439627 900553737 948601246 226820711 95356807 262463402 5138693 717464716 339328691 551819645 523070861 877948387 659185231 524948043 159280960 964411175 861081453 748079506 519223471 573579422 394375199 254423097 37960712 123247719 923977475 935466621 626250046 77833759 607974601 266029836 593623525 52088028 441879558 470638154 10523301 671344464 11437819 634702985 44431291 439774699 333853253 623034523 70653043 614298891 40194967 591535989 471844076 648186479 750879312 373353766 876977233 455215237 183781899 507522766 73957171 573182379 159198485 647889762 408095363 237161067 608680611 995957987 162534138 227547977 62569350 537327575 875499868 830548440 504869328 898096781 110081472 42258631 290059186 607319017 220420102 284007487 462123642 773615960 612117082 273276443 342240710 919291659 201945219 309829771 100518795 676973098 319415875 512830385 375152850 931693385 666452324 246170578 804939853 17748303 6387792 313961382 882531437 628265118 746093440 91616586 299815436 988198851 347175376 774680430 273614753 397819950 813979014 154000545 265622267 432927058 516908519 61193390 950047202 399895461 759030606 827174815 613228580 716660662 786458475 132202154 884992999 474771503 787835805 628633393 845733429 977402931 12946428 174292454 42756638 12749490 942605704 472666810 679443263 307119549 93347395 675568667 109480853 476766147 900012603 826658123 738274395 55455014 965202237 137425942 886652391 519320705 368986037 913940868 76219481 501470191 333639462 685106498 74159655 101820180 744192368 82334129 144987117 678423049 210103234 586059563 781464939 775687374 930160518 925779851 659302777 976385709 384053562 530289517 301667012 803453437 19252304 136244 26456429 393000200 751373787 338895492 390482848 906324359 56631046 777174283 188753112 500514297 241068701 772540402 557984911 904679018 829923095 153698623 253988361 373613703 289735551 366603208 158297222 532572141 922566172 961230319 226061131 637928245 593566030 63779153 289737113 818836614 672363453 22448648 321399989 239294995 342604378 328919358 630528566 432238817 368887458 420535628 101532949 732651921 61922770 977431142 48957669 144734966 803681332 126149733 365423767 635301906 899771926 912440456 688803201 423380970 781842888 20081698 591346330 34121572 229863270 257231651 282518171 665169786 623509264 544328228 376645498 497444450 809299403 91862163 728347550 920274820 826085889 151941799 637517807 464576107 514012398 82300971 41758016 719326099 977367062 330864326 362007234 69420793 607599713 733241420 104186970 30059231 128858001 33904830 501854780 657615687 793637075 749235893 508573366 442871536 19485864 369537143 406274656 368398866 327561462 833437841 461929316 328802697 394971826 6860922 688055292 652922166 700004613 717114362 951720801 768551778 762900991 399123591 946946824 715845078 136022344 146629468 56960175 577347764 103446279 365233820 841781259 420598652 799725319 466350299 218526521 648801733 884658943 691326192 633628254 451031568 613844700 815031668 358628930 245085963 765497203 444865961 232835370 45489055 811996011 203961702 317994261 597801632 113791407 550697142 5843936 973050362 24971646 92108162 764516359 387216828 769156943 559063994 964562705 598268017 791899495 803778597 225881575 298454640 855501603 167589815 536365556 640846066 4282860 81096907 86071641 768416848 661769108 344495303 444963272 712644568 902264488 94224729 918541097 709190109 854569059 218342528 741425205 532136463 52033056 804006042 929909744 363756688 255494613 826346096 139637952 427111914 477357552 311555182 642027846 720472267 142640667 637622169 164070151 826297317 837728551 778380849 668020282 180249009 372499867 404446452 499544810 113798103 329669645 587171304 220951072 279217157 109827858 93521470 663867407 363025664 927938551 725823081 919655533 850129643 715805018 104354002 714752893 756870189 722941551 321189226 153869686 471183572 268665261 232578968 488631806 252728300 644219664 392018738 829083370 58323788 822910179 258130967 806754915 928632717 481930694 877828760 23752864 172893266 408239377 524633063 283762334 762915248 824343229 231616124 485635844 766604913 39434337 48495997 525770268 678868491 23819676 253297908 798900042 382411051 525484215 183742517 454213287 618228933 56342880 654148738 487598726 908229240 660101326 697784515 95936903 314689383 948220739 278516086 343290673 420781361 493650901 738531650 320300327 287991164 465855237 775710466 443778666 278452610 123464137 261635918 996904927 985594373 850840835 426188847 405465513 175219126 61385950 544781365 200616453 294942904 429654705 464045999 319518945 773374272 863095458 551788192 141111467 251161514 393489258 797998589 61764985 299260516 325364560 321138445 177756352 749535586 525740152 120927846 241130852 509740628 602660648 506435484 662438580 535660277 761114455 605811528 362038870 278529651 266916738 70984519 644019903 22268644 301013776 239766468 724360398 831196522 115165640 436740596 681768534 627152430 483551106 680962786 229896181 201730222 482491865 707829455 287270020 311269779 67906294 693227125 632824340 257775092 624650475 299777715 182839671 310861213 819157248 944303526 85716517 185699374 998209533 453004514 522869050 248026079 795636702 826026331 711697636 297702592 369035682 977363756 872732086 149978730 893663449 101457604 841862113 785553957 160110414 560308000 190935280 197128146 824711842 270749565 998144452 95202565 31759329 529933724 237710810 56400146 826307149 820361289 179201925 441744598 344201403 334162864 837106625 480019121 235095337 748629665 257697395 159580795 889830172 130870491 180503790 59773921 683630190 872929730 842317464 599776425 354566075 19764502 593419553 344448705 577389953 475509242 202858037 527479127 519885440 858545551 335897332 162497044 907606449 994618150 808689184 176682681 671119411 87267979 59882552 209660491 223451866 314637843 845623756 841215278 917458544 429696034 130767800 172769224 325995934 90060897 246078523 804826904 193137817 495152255 557152522 304187986 157859950 987463326 820110925 78885995 841275985 954420609 435832422 527275229 351321511 63703391 746067485 619503117 760944161 568407681 893814536 838778592 479588842 587553128 450204773 648803473 267078367 984158208 673669056 328550785 350262285 740460422 665040355 513828808 461350656 962726629 826880233 71461225 901009291 677286398 599554967 107744478 984646555 429859777 696440522 781747279 334189277 66902113 388798665 136118294 876680588 146134753 715009247 414039955 374307267 423976250 151059172 988206895 210022337 724817814 634750606 511202963 351773343 845320723 153125227 226774649 978234863 524975696 978771303 13573973 765379324 90927393 136892759 156368247 369439364 3874845 706076828 108178254 720937852 514192445 412070776 477871214 146214510 812658143 9138876 737093698 837649330 616004662 316965296 660286806 341514285 929094636 805649348 770869506 281920727 14464011 51080641 723003152 867674398 65976443 539779176 565102679 326571881 997710866 502029783 545363230 795026811 159523916 302483405 410803201 897009004 573799582 751516459 491349327 5192147 349231605 811755888 783457872 465384898 318612948 570032246 397683877 95537528 104048981 294560607 801098465 484497654 391486992 257152625 286056380 51223659 694208635 466823458 903293555 897115911 828406835 93664796 760171323 368876552 776686626 102459759 294101805 981125531 195538829 933118678 218982845 412131296 129454053 157105200 690296528 926782422 604340633 23596376 430355827 830261231 138898026 525770209 683239508 424628002 112929946 582357359 775106383 18187797 248837839 796361089 130688401 920635632 498680963 105514104 632090210 201500982 91137954 835200121 13477316 816035557 156751925 249437883 405119543 471615841 59941958 10828666 96827653 259162321 35239776 630788025 124136544 47507058 903958852 212093299 779942753 11419929 844387101 495076773 845593020 291490569 335941031 508116492 143845778 516290042 807653790 752977975 801446027 33456277 461395379 294722986 538112636 275881899 76151577 999040928 632935542 540639567 504182051 281633239 152383518 976228831 890180823 265488721 233976625 26349576 703467380 937296752 835662286 762841090 52201859 500896556 251795316 899756637 697598682 511221550 772400521 932557519 739718216 329484626 881475373 940070908 239870813 750471493 467137744 777197168 339007357 703023551 33027832 741195521 694971809 401038381 825780948 977431790 287070668 784005457 871498751 397300399 771643781 392137112 996522639 294224328 416628693 519428951 501991051 859502845 857998427 110197577 207515600 604092682 850432860 558705493 646874398 413565585 817861414 281436083 318902765 325233856 658248422 754234963 115113955 282472733 865921159 510554372 892113675 795353278 490834615 731879736 23995532 226884955 252557665 487833250 386000710 603702486 374525511 821724719 311949843 89248599 193639293 551712699 524968533 80755531 757329959 353557611 701216079 321228606 800379703 738004138 197571537 401383286 513589658 841500516 348809336 824977366 15647774 28423072 369876282 191541031 638780123 54765624 119316369 580168594 683651331 116764804 655058315 209584317 406727888 837228779 869769890 975235200 24541646 711602744 716573198 313763061 984531978 64046025 554929817 679795543 77543223 958985692 300057593 464209326 613553343 125200634 283556515 576076368 342571714 220279127 529559844 418639168 119279157 44128314 814769918 269630233 622323961 799567975 742620781 545430078 440412386 332157136 919900303 653972016 835303654 228624835 73844187 370063159 813313325 364126674 107378392 811749074 898956718 486814068 88406513 624416306 55964868 711854053 806461676 340555973 36056104 882190361 32070937 618328078 265147887 653129546 573162080 651807570 969868272 426165151 442870505 468615381 333734317 583843 248239424 745248980 333415220 29652360 214882129 867012972 831381533 847837811 349104768 946823350 340359429 824721850 360818688 734778072 659765625 108187077 174932855 277856559 38488207 849340161 446951199 630111669 86003505 291163434 264463116 562894449 998990919 616188251 714342214 206467793 200124602 399841292 884578016 418074904 679214441 170775626 66196149 443289363 449677352 93715169 878363200 456558941 892468974 842506301 128184004 28283592 644120834 681170851 925417288 974045460 756007126 16756369 689226634 465985046 781465669 315583322 277558815 721462040 282560436 532384368 807502241 176452042 402647548 227271954 618506472 76727907 957200714 681308600 15421647 58266187 69694152 494153787 207395556 148311352 833637634 939967764 263314884 53333445 403050561 477320720 817402153 438656040 995876033 229474465 347438518 262647521 204099848 121727946 619906473 143508716 126090698 718731300 403848346 289222069 242664501 718732924 757527162 919319753 610481874 856454282 494158220 269054991 991221667 603489530 466911043 656007015 907397609 317041738 957374355 286839082 60422454 673134025 850246039 282943696 553098698 960157885 379307321 558818373 906049251 491689602 595809301 533930497 20224177 325330697 708484007 532828630 851112884 784523851 141957264 822990308 174719339 374183596 574941450 391518414 401734332 844431428 643532624 923722554 569871108 57075514 149706998 59035433 315514164 211460409 432323597 593264021 557419944 410529233 464707691 853593422 550178350 25967310 196148677 616024244 684481692 601457463 722474394 76089013 566092794 827817595 971022505 12711221 594141012 316986862 99428428 755568533 859481483 89968362 311715359 400247673 501182621 823090115 151400408 877941536 331934527 481934746 84453250 304689220 170617589 706252498 574958806 693017400 950254849 784489610 331603017 313978759 696292439 734148503 584955473 637150184 600099949 239424852 50270265 5519326 619900295 365904708 679153687 950524630 837430916 994872043 164810242 637222360 368081433 199116947 813886842 618828292 709693682 756164980 38396507 648609178 522221628 686513771 146362613 439808135 84794687 967823032 424064490 90919125 648744964 763502167 35837334 889493485 95248930 224522020 397392895 218344930 527834849 630349678 695365466 437131011 672532140 160941811 984689431 710112641 417025203 398117380 442323514 175978448 899064031 267913108 675418108 559851746 102292636 537492730 601919607 385556129 571108375 903192924 223914614 691585174 367493367 2990223 110991045 677040729 264176099 823087590 737066236 34121470 646129614 808859429 617499474 845481507 750677059 988032553 523943391 382162107 1941872 970981508 388410554 174823304 597906057 428893600 569495017 883154634 59946086 189772912 97878391 905810091 31769482 980580847 39852517 137809609 787533198 719850403 247448928 114506996 380961567 447623477 435167232 648217184 165267238 103058997 88523038 435070517 929547744 906714272 312008010 239210179 760206026 508703679 189020157 106207751 817707709 874671537 147835604 880827874 576963363 816430566 811822180 653088637 390272155 633996848 608757908 553972500 489566232 509656295 515243599 461954840 454024428 229432665 936595840 907278800 843171400 996913745 912643698 287043830 507701397 931085188 739336184 579850230 465706087 118843435 248451084 942876620 883671797 66401901 856646906 182134894 91304823 168934517 646689200 54835037 952088660 216474452 624545347 12134784 817285824 386908540 750606423 143050799 54688280 83766698 328302908 948780669 3717899 715466508 671652751 857115095 924498480 241504259 715168703 846196069 438913607 626741631 449008290 545951148 584692014 679653672 264424615 932526050 416844957 730969908 296946859 564878831 844844577 144977267 693571085 848822193 675710037 100808562 186659779 546736242 421001811 955730174 214761464 728728887 945409914 299364883 95407511 220106168 23529920 768015511 232472756 854295991 259338415 705828379 436957770 591622114 144032671 565197113 55613486 197176309 854121453 623479875 180966869 854394994 384015914 449249988 362547381 847477174 999913750 117543153 795476089 753675362 996034347 208845895 332752088 716409449 618734646 224287801 487385218 525257900 370178335 883654943 892173853 890663935 317859549 854530795 472228178 577328950 760086504 396683743 185172997 66480415 318716132 506526811 7676307 831501500 526175854 907628379 931472678 913051340 419237292 680086806 15371775 77671603 700617206 914618378 136304143 537462111 116149661 799120644 813247535 899876758 826789227 957303900 990725915 681393396 569851625 504153697 895966587 937280006 629213417 298028595 877542809 641068253 250721652 408469290 420137333 12227967 453411049 203813862 191873446 199688833 801429156 440930262 117127123 760863318 157973372 782932996 279456549 477905890 397168896 5021168 140880693 599687004 69341757 239910664 53942411 100815108 688258720 744087369 566934589 537222994 988451029 21161391 724732488 656120374 5924351 430953540 602448932 319976239 579289763 250858027 953224665 173680780 750281123 830296813 296388350 119060149 363243487 658132832 549242818 241909677 153322263 215738531 544511786 550524708 956855368 488812786 790736831 959183409 750560263 812389348 25584524 161406626 343661941 25067588 299556449 242310161 132495582 61297692 387302096 614786730 465400972 280182964 568476730 822222179 923611095 377412300 68546954 866906090 996244558 719018656 306999840 483356661 660786676 666262497 206508132 888374569 682332632 157689142 322638241 85398556 48103301 494271671 991566492 12792720 283190761 502631758 862844887 564802181 69919972 584170689 395942274 413779148 616774312 3003682 623156186 886635355 195590626 81289430 643108768 713574396 750595601 483525461 983558275 441270202 461244857 476063737 955536294 643051929 171806954 431458639 107836564 571215033 108909203 618210541 27804931 543836138 796021211 42590821 21101439 512395783 485473814 348310994 487518754 692561062 169418939 654737973 345586622 622960630 187556922 365565085 320495056 769249249 848402760 69484741 2224770 381424380 771003747 410082150 486837665 836893564 705088928 135258224 849924775 813202810 330199244 669049657 710960326 692430432 324072156 763754342 257324861 575640727 528411875 157005983 22986533 503228976 972105136 436190940 950905056 594009982 387987027 391481953 541934132 831259780 568594515 983055890 446978415 330281369 375000270 219076706 351327729 981503896 637282489 738525878 779509494 78039383 862112228 48247959 716550238 475306712 308482026 727455835 270329030 377802141 372306008 920299208 53662519 815831303 154427904 774912983 352987692 919355019 926328354 228197411 957317870 955958504 376475136 310927119 75488192 263049372 653514083 404179405 163333482 896340156 668302236 272152716 620841754 191477854 684731669 669145164 984429277 207612746 890244765 596693477 297496641 280119290 130898983 835622317 284729175 95030921 202878155 409781611 439287290 742650570 91248568 300833034 440002018 574396305 363242198 263674474 243267327 51078912 905066316 231493105 220347675 464764573 508636678 584720853 696378979 591794330 377066884 480011665 799187225 664273314 159284886 881047140 386831002 525284546 811473132 309557753 329617607 931106131 954222532 82866463 821021914 208264363 636483831 55994282 533790797 556607326 562241486 743231426 510881777 73569791 992488359 211999651 797920797 945442436 628796476 107130533 453108267 399383305 196846076 916311009 144420567 991553424 528982505 497698749 323322861 206700461 963651619 432221696 108709952 760506350 31592308 980794221 538343942 722591036 485363144 459358945 539593432 222436089 166827922 220223588 214106947 624518679 545745895 288055810 504121362 661920971 301231176 691045029 591679536 704695752 756536109 139620676 784685604 288004099 682492759 122828039 59036515 534899192 870431566 402948990 858146096 618623889 961677631 464806534 139018076 532024551 721788457 108383131 362936026 422530242 294659208 264495453 287787602 938844017 987948383 420579186 714966383 355188447 503604757 949251595 654937255 636026684 485916329 526392802 683312390 247290712 636273158 758886407 493485567 426628707 958730146 752364278 874017870 380524925 56464096 216971300 617768271 476638701 263332369 881335190 181032036 326643859 493803917 560586749 910132991 674158525 647862461 856510320 839805144 216106629 581170762 796320979 79016089 255990788 864466406 405883370 943317354 765975835 519227788 341066760 973353462 54197163 654421661 324889868 993618987 527649579 718310069 886560695 661789190 630167893 119444052 768831868 672825729 715438283 592479846 407827240 895500933 321370483 102369460 452687008 229176144 722867388 24838332 851654497 207951362 593003523 629852558 266378280 426409722 472212580 766657607 556219303 70358880 69139366 264588654 140808011 535161730 939295972 896866963 553869327 22010055 649225640 890184370 297107254 749942475 363898459 860597372 697204096 981423608 350282235 50766492 195095234 249137847 942843296 581161702 832166466 208386439 115839149 901518076 202418912 167755034 917886873 63857949 402392249 536570540 752070599 684394736 938495245 412494668 106084000 105461455 394037307 96395960 643552082 13788386 282555675 809754527 884144976 863146610 767964113 960692123 798433823 724039951 952358100 891112860 796668776 956450948 596865660 355694221 773423950 599022119 2368321 281642260 915506294 533482106 394890230 838099380 163559185 265519571 793108140 918860081 869384375 858116167 830571801 907732453 755292406 443859238 248486448 609619360 176194545 33842887 981862382 850745758 210972882 100423428 399222205 328213615 214909280 165034725 853602316 799161098 95036728 239375169 513613052 125471979 205305821 735196251 858275909 10966844 104276893 521667620 332236119 611701347 63621509 155670530 540126145 825214915 57206654 129344578 232069709 951590444 364657340 959266802 814898582 268523000 75941249 833614439 341847460 583388040 789219497 883499139 623175272 275591842 977373473 458719360 706404454 589882999 197019696 160729484 155633863 179170651 596140559 500618422 451044150 709061879 565226357 80509691 171159952 993260687 502066266 34010058 437438595 57783032 532791569 792147982 657718952 791792256 792385297 834706166 473551505 215671529 621803853 432343793 110408360 525282995 315519671 239317328 281845867 736751175 515887306 565271353 920344474 591391968 731692625 438945357 971408646 22695967 274549691 596872443 727523734 462115547 873067764 308904280 908949264 204023682 872208497 631322618 595718685 138292399 582382611 493549786 954280330 61921935 12915151 595816147 487291082 170713489 194638963 296156174 799755353 253111983 629618617 697256996 279156742 873699860 489295552 614113470 307240510 238365858 620520736 919974234 410855689 786576306 245750693 301569556 761062522 544668066 541704057 848520333 835872822 731379025 689509315 150480100 270719930 761450446 692403521 416028871 428924002 336914305 283342628 750702654 417035624 479504771 604025740 740489488 376926391 674475344 715168671 980312057 606733047 161668672 747490313 586436400 87479585 566268967 967499149 82756655 169980231 134242439 278983596 18692907 510928088 80720706 662707490 607410193 487705759 842192636 210627606 509783201 449043472 164672856 138760591 762265204 936528207 174390659 771303934 692785687 304721581 28055775 29738297 934070247 971122871 86231623 623441866 818231220 950547158 411522793 168288129 362417908 79782726 48167577 362062644 434360954 756406609 188662251 706056862 832894785 437041464 893254969 683322133 720515202 270620875 158548354 82116025 559438314 694879309 832606727 44537023 483342671 411147182 902186291 925506431 63263560 123369597 830414838 109847380 66356215 604544922 617468760 788409192 207572966 988816778 139969966 867663569 296242240 634325828 161625664 101489257 911840732 452357001 517800667 473237929 179883976 412486038 364839384 345441373 694673559 790012753 297996936 1075312 919208941 372519372 683426585 530769099 245150751 983572615 312344648 49397882 272647519 609101539 470883800 321439775 831225901 125901474 436672821 318880234 723691584 550140884 706588257 637678845 700163641 742731197 344258968 240753667 120724859 938774312 824611899 939762951 476609473 981267732 406107057 835320258 873660052 818207705 173036353 572487073 992696321 63237010 922600055 890230356 63893038 364580035 268963016 798511722 786898089 483173379 303104015 369216991 889538460 588658559 675826092 223809204 390866441 393753308 171058162 85256401 195999496 44211689 772856688 13895068 699465583 158952419 31690642 830657994 919872153 230222416 104332452 10562078 311930029 444974139 55454836 935461782 246746801 946717182 175681994 691823175 688246898 468346558 983108583 180395028 328067205 220959466 969356504 698704462 996715200 349271083 725118285 789742840 737394487 936318472 131681099 630061625 401170019 504458565 500719814 621002390 240460667 773651563 931822769 684525894 845832413 986584545 18215514 239179291 998375547 693439170 123522319 207661233 507636736 252887756 41961212 427716880 765196772 126875775 267808088 597215706 938050816 637810271 462081362 851314097 630764317 253049495 596349630 872263840 29520975 606489433 406577495 237274096 804342448 927289463 879275916 484908531 418037321 65521927 20208875 124040119 884189754 377437740 338986914 504393846 204247154 207063113 396595458 736895000 340675511 763993948 526116412 711270670 647624573 590896014 227864768 124880661 824337478 800019015 196282695 141461200 630617811 10826121 236268917 123063362 684788158 223260966 78454013 902477717 191707857 248993835 635468240 445521369 105382074 100525845 585842695 537041467 928432978 970018594 791099467 307227220 243650198 322472274 796809652 87633224 279494769 380230668 75576479 31161272 563086429 242546890 525489334 882399751 307155835 421601243 941479177 101251741 971269960 813902432 363130646 22693129 292777288 898873743 555862700 322795972 618307901 21233453 381778933 321627707 709276280 873543368 900358128 420704290 878530532 990707261 51434902 42535917 517407821 108238804 506097327 89636578 770248978 970890997 989253810 944553048 461454744 381550319 31210629 221898110 301579480 845205194 557341445 245193294 319419744 191124933 949194475 714190451 323121194 347670393 876644089 332463465 387495453 379594431 455424034 132585708 711744224 164981852 49930857 966889539 425698592 99029219 46228694 164395748 299924545 301320425 949183394 83389208 772859163 801774839 696067251 48180519 787103421 39791892 406427317 174267020 801230861 804540053 478114034 566262000 521510624 758450327 367841617 956753509 790375146 969892183 265920392 910564716 694192814 125757077 265536410 538497551 488171370 45748938 320502131 194269023 906076050 694399963 466736411 525102641 749072984 300004003 900990562 72887633 366577172 368984541 174079292 157762005 404117315 682294574 671423838 276277873 400486696 432054587 467373263 491691252 881705235 410474213 60982170 307420275 286049997 705151858 1201963 319262934 378621794 392823185 333826707 442621992 195533380 746398502 597988788 686307434 386758084 632342009 265845524 672793148 752513535 854331251 462448197 185029411 274989887 21954102 461051921 717282084 802244877 143334001 281063317 62069766 8867874 877898540 945769747 184622151 667200368 764265138 122282112 298229819 515020752 735697238 135106198 222577012 932758646 591498804 838187377 551087369 53604413 683661157 864649156 743668969 290575645 167963411 556715954 867877954 328112284 936831510 716029429 592217579 708444909 561897476 818667250 43458057 133173032 362656897 757436707 181451487 734072809 580580751 930501204 997638604 215061000 413093504 946960159 652882369 929117667 336680546 578522872 148449255 657674570 898770873 274669432 175557368 670063556 123396330 687243055 865277271 465733719 913399045 88737317 18144921 945042163 300976605 908491050 16869055 736238036 664809842 991541201 983735715 715710364 284931395 3828957 200880473 641167683 745550144 433782489 439018701 639230938 356162699 412343887 691364916 503624061 434967228 432430870 454652498 700642255 739223232 901570230 751789663 596115034 572240722 591490188 637803337 221717784 670250373 124934884 729996910 928160695 353202312 836520933 99494239 7636376 261403278 358485234 858543174 428287870 623408197 635794820 282072808 932733285 782903153 363236893 80121145 839784206 873506905 459870556 291006705 9237237 832249825 511423870 429008974 409825246 137601368 827497207 323873524 177317290 980048718 830151678 34160065 749820187 439544891 940073962 243573888 925871356 565150009 493594031 343972226 82597351 230159536 518832739 6313780 652138525 707670927 107762275 249637318 570570711 819178129 900666488 281938549 648162043 842828974 999603156 58133746 501238867 489546553 504383067 447452200 25453565 628098667 804070137 127097931 757534870 556839855 171220145 203247783 996091118 101353360 993263514 976809267 923311767 564768182 15175537 829908264 901198489 462722783 366378525 742705591 537390385 807731452 502511001 189157780 785864730 752278031 638752253 223996120 671140463 471156335 176750054 332668979 787577571 303754132 912104577 995767915 643465680 521804936 126176861 42479005 750402662 291873207 517097364 764077765 730294405 125303890 940290780 152519649 663517475 74690973 837363775 733026024 642988640 597292542 696897422 871976675 961809449 42442643 644057612 654553941 486985462 940849729 975195283 852292998 309507705 923304854 399410103 448621827 32195109 933774544 632758605 124525189 763581098 525285906 32548153 625979553 411754447 347182199 937872538 568124786 701576666 289865892 242820744 908937069 646017634 595837634 596470614 914997534 930309845 362961270 717852123 223604662 408146608 623478720 386769584 147554036 22207371 962452953 2910371 872894140 256816871 945693027 169009905 280163692 927498671 326530435 833081450 935562941 272293934 592477660 947915002 630285745 348563072 216603292 520104701 880556927 980761114 847500784 18558578 490045771 630705905 376697221 723542135 775203584 450761509 123171919 601550345 239298805 544715972 748161190 481837390 722920767 684752897 444346300 80589255 809160642 824837329 524087518 123534438 356366712 694830268 316750147 738012300 543549312 341825240 607830664 108268576 272695437 276578123 651668134 138118054 260378667 760013608 416977431 40097999 614383781 444683200 839219118 867358663 969111180 154981358 381800934 512337839 743210002 735388696 4363618 539630864 513444192 837524140 836090419 497064394 304104384 602953773 980199662 137898082 100672138 914523843 108227518 195509436 476299831 185844846 745240902 772676275 289870188 150526023 611331029 654963848 967611775 605523975 490588738 412793719 952830329 182133929 154454399 479871021 783601662 507324803 655522403 726251690 480326142 179177129 879811686 604228686 822705304 891119939 867461184 429413155 964848159 10952270 818670218 982809999 837226924 528497139 121196835 775607142 615707983 744947769 573395804 472544275 702084525 324549978 573219978 849871519 235722082 710205895 713582557 164362486 509488721 294183875 340185202 310270810 160988556 500154051 347684345 943294351 489861656 438479332 93226188 758949475 299027511 115247767 651280908 533592260 554902425 727493258 969049470 119950462 697088856 508473046 520943291 601704142 667917950 268227612 275449985 550106905 204743604 957706864 439271506 339160748 387713277 964377705 117600434 695175430 269700512 322583111 930795760 885245539 728528906 688236824 507710994 936902428 579037660 881884547 974346813 856753189 451181781 694413963 631191835 27069353 72588490 639558055 132237439 138646442 530866624 296625651 98289762 618902024 483237439 861031977 58760323 703841563 299493269 716664636 782948414 297707794 403768139 759510798 672510251 870342870 918512619 983242961 282448418 633112624 850774204 982461578 289046009 880794562 782503753 407925812 718113644 652858562 299442508 908943520 685183060 783426959 503659279 812999507 64347608 476324461 421074414 504380322 11619741 531337477 445493104 820228789 707581815 437480006 773429953 254080957 198586848 213594946 645291520 801827266 89259326 397005926 526511797 256191487 19352082 992194393 726086182 284041270 786405878 199612826 831760709 876112061 816997867 967183702 706014298 455708330 229856612 979878656 166497754 773251577 805578097 365000181 908260259 252250604 13348997 500782754 711866890 76325882 274302719 91892885 230533658 586505806 239171402 408922257 473302745 732457856 545081525 628289702 363868867 337213508 761329023 390712943 667527495 808382007 618383617 622998919 790536254 462873764 850609380 540938782 843011245 522329127 983599110 259660929 269627451 986933962 263312734 323309237 20516805 834654996 102863087 74487355 802578090 199809358 284238634 443054338 546892158 496488041 282488604 291841891 529017792 762214378 787991012 817694976 479423627 899549489 531558051 995714087 383422748 939567222 661492353 999708441 508093213 819495027 457127790 909064933 12469490 59256258 594825353 307723037 943669914 207493776 130680268 260668884 964359407 811286652 818377592 327769159 5419953 224650715 72721596 82318434 504523577 66279347 257088706 501359067 218628050 279509393 279405177 610524720 707748468 421410548 378642019 235149712 27754819 35009738 603185657 103810205 460892084 796611031 547439323 874015977 876999763 672274519 319843599 521968655 291379050 640582252 17581077 798880524 686558831 963375100 604366485 378017664 699356403 634963335 839873579 772257210 215784233 187896895 495671318 16382450 977387387 322111906 704226790 832639352 253044357 406025172 672628615 843161977 448104556 160472242 134749322 311324233 697774661 727745004 41740346 914205368 252030414 862112563 131767962 39584613 226179735 831719491 514969284 421102693 920267432 379430327 219310072 623700171 412451674 81779035 109765298 19108114 411700953 975322874 880245128 905130933 104347116 383649221 740992597 251532788 570533366 970545389 739754409 569846593 645161119 24304947 614338322 776194368 90107790 145819835 723758967 44661197 625569855 867196126 774474315 113882694 138261625 212296281 696132131 335858107 945176919 625008812 27314289 790515985 84677021 637821055 609939665 955546360 178281732 272547682 387223881 577251432 852044810 685964690 136519013 541421653 57514206 859005523 371638922 943873614 644656805 111821634 885270282 960357679 148462283 283873641 183750767 507680163 358731980 983972436 158323296 554840089 331134759 170074599 922239650 388563704 760227092 267074687 589899342 964212801 368663770 183125232 542589302 475968971 44515317 322483952 866788742 384184338 170663379 554322474 550877708 269183958 187837317 279058533 250635916 732297738 211236108 878309195 175567172 367659636 488842078 761261253 444283293 520805679 936764779 819134463 198356318 336746710 55970459 375506703 825968248 849814338 685822234 240311829 556294524 29307434 961877143 488219398 653466388 509921245 184013722 430465903 35581716 715914079 703214189 42763240 714127361 770439888 928701898 80259473 791447360 908155522 617142294 824913859 329074212 419027553 154824055 133656104 507705246 523318849 480962109 445707335 242908076 269998253 979927252 427020773 874282988 669077087 540985249 129390367 652432872 898543331 379084305 293053895 990063819 269166985 656131716 826143248 784211741 946973570 35380888 235315016 296947137 766796416 981125309 841196228 435037132 733934371 444804373 354360465 924921405 367576777 449416528 735355191 962581188 791508137 894507013 233662338 452076089 662101172 286905730 236446535 978713632 483724243 912806605 500127250 563189428 614479469 477965953 904617570 688688972 656995446 659865973 517460739 464705463 713944001 607812683 256159904 854642248 532411716 638890449 70411511 984019077 217288823 804556628 203790213 54132120 285131499 172662071 416304731 412845006 486736772 624706435 867439612 774846808 673725652 582317790 247058252 727847706 159620962 280153873 911591766 572091388 837434515 287031799 587449114 656438667 556011155 918578139 596602383 349482285 479991835 645307384 561906966 360460760 233534457 47551588 528467172 515001814 298843971 846279101 539213378 912043007 582848240 1381438 623974718 770112367 54709829 475563012 614655266 330320327 443513889 753913264 561452717 373597164 334024431 396974638 33744421 882173384 223772489 641868968 696278666 546875108 404523721 717196919 615050399 996745791 221327991 802196212 858866316 775482459 658084407 853706764 209054774 519786812 314278318 802373073 309162007 841244859 951951628 638022990 596007770 781660910 443859385 668349329 864983065 919617714 570184698 546031031 403352232 684700714 78410787 851932605 886455167 953592265 74732025 650783233 354544689 280311306 644227210 953603594 187119692 991512045 985788423 436452255 936588474 719058143 533026182 213384191 15830439 945357584 115709432 766568089 396010250 376695484 233189470 400436343 527377186 550978729 607056253 584301568 382499583 944959644 496442367 189982578 77427960 724819096 889607652 226078978 399115397 728899195 365559545 858270944 649837269 846937047 751322862 308881654 986309077 39245163 32032373 915541752 589093205 98067484 361462510 609099259 35114178 431180638 396911079 912974864 394984200 710862464 657415536 772262359 104200661 798664174 95794019 663306960 203399576 520144818 991419638 797802965 723390153 134293636 733368171 644221664 143226109 112433061 578849955 527211617 899991556 432594908 56130411 421221474 630588670 416842869 587053592 923297595 169894722 714922270 979568398 883868164 633273881 923462284 101041806 731987399 508934266 968620843 108980267 877308208 157332480 877561806 807446956 939096620 746219301 770842968 232731551 497175167 973216675 785646282 805910153 691421708 973056418 207103515 862004741 785079925 959905404 588284171 874321549 490371535 683430703 57944209 379984502 862467079 994912881 132587340 146569391 541444169 523305256 456055349 996297530 456553958 588006247 277828809 463641175 866313162 82701329 459498164 21407274 93126294 343594825 517156724 888807693 650723668 5482820 922115450 709598804 492104614 428994004 248539362 445188115 517923683 319907400 434972923 71281478 39131615 999816393 875771733 786462631 712839538 811082059 530809129 213693610 318459143 20329580 30537523 668476584 807077351 327601012 423430423 495692586 498508186 355880918 388234928 887381277 642492241 824447461 906233511 294092337 350302557 960811577 841173837 740860049 305024157 108426742 764053791 694643916 129258988 994320948 46417979 300808984 351190005 94545660 184514081 89146587 412930468 916364755 313973820 763858176 39874501 464168287 822817884 981820439 368624799 756768855 170948767 870459187 11929322 199058976 373749005 424495762 745394982 375519206 330041157 390920932 680495044 174147223 977245587 37231414 607343397 882892191 814627088 851126703 973078851 807220044 3850982 480149015 864570237 144835330 781822558 259255797 714850419 617166771 850205060 193654282 391779819 85759093 278153282 858244538 837318678 827187228 740425961 503174933 587984633 925700100 701535481 884199358 400369290 212949695 17720717 182849954 915408943 483431493 929849413 109089180 411383784 932683445 446603801 968006772 488367556 401700392 428074133 697592447 280300496 529682926 781512670 444441869 816832441 652576472 392983915 806223692 63751861 512172499 29146897 788069693 44687028 495147169 408048354 490725037 4244940 274263000 113241251 384023596 928920998 846224609 692751144 793939461 923541815 143144099 184568109 376051207 165647543 615543715 27884690 184285908 400496353 367956459 745437164 773437536 998043785 966872824 296949705 685601633 860446210 959974926 672198064 924051748 69048679 77411296 152483794 702460470 907221859 352042245 163530906 609584285 423940831 114079111 288043425 753592268 280069115 641065562 481230710 579174078 959748980 562143251 506560590 876031393 37505681 705314059 860946258 29345032 291615411 426492350 53428907 17855963 383139064 518808884 422935132 303701527 192177014 438568787 425501306 917509413 731611628 671633514 587632011 590036652 822951454 316388921 775671048 29528184 750301434 900837382 723440468 917707215 997393270 970535886 241790316 973928909 959549820 787263587 118503005 426470324 935468143 278071101 517316875 139052809 865812745 186001137 571422659 631711824 871161072 573130578 380572823 993175802 208938898 312578326 258546084 344516145 457647873 393229947 80171953 557795791 308497199 199831393 699871183 155788914 897319219 652831895 700639434 994922925 239110296 934146534 488207917 858529010 87311041 411334890 434899658 206483093 309978893 557820385 248754960 73986314 640497359 220266196 883005643 165367266 867588018 834374986 800739035 857865319 834747376 996125137 460466283 169145798 35704358 661117326 71207608 614977045 89299422 888929754 338434680 982524648 698903443 801864452 313716789 655189175 555041944 519745108 945008217 605380296 116650974 675059602 752877722 705912927 413160893 502745254 447149375 415308755 835461206 469795540 495047860 616162955 613516015 915777022 514366045 241171297 153502761 346193184 548408974 889985355 420897713 958582754 392666768 388578712 830686814 117696526 954924625 371638750 540063728 979671455 725267520 452776996 540434550 48918159 225755226 368863370 488705599 536041565 978888356 803488741 73806198 66299971 180598353 608536117 367769826 363791301 520564487 932241381 703175602 347859696 629786615 72758574 966990056 317039273 683770570 469520236 753590217 917228075 571976315 824893252 641210454 353562023 189022451 316027793 553473061 64041282 450990643 477245473 270577030 166094212 428116900 978851430 781067259 496941792 832870758 536538697 695194764 890939754 229206082 437429204 235445915 998244029 991087176 187156498 669162695 876852177 718538193 630932467 89787402 316458158 921871192 21875657 470864265 15978070 706945514 321286673 879718328 982767920 315971733 571308938 510503474 584169654 367471871 452978699 144019746 568566984 836032259 912599344 930976036 561021798 347416267 489641493 793525585 112391563 326888580 403617333 109006071 896008992 882589314 113474419 250842680 827129892 85320362 793687595 752376872 630787646 398337822 776307035 259850106 211301179 654405224 834963089 747070337 720708766 674409972 684843377 210024507 141646794 752865696 13541479 148402885 328376717 911788554 766165731 840437048 77757781 15237790 250856975 638107825 796208738 910628639 799881538 513262719 361121840 162297516 776848286 765902879 898384728 183766416 220142099 239602479 806678516 813366103 617060257 711814112 605283423 393637893 978222072 551096169 133585315 102563341 980558687 750923971 238161683 869605630 662958482 806710253 416375762 789563388 906029323 386081515 535849532 175150767 696157760 60992700 448581585 166947721 495630489 584523477 225682759 827584623 341165745 876995907 518868529 761281598 921922821 799582562 591430989 997976380 667643138 121582684 708978364 96419111 333029027 964889855 424275734 512417571 948447338 579335035 603529466 88244271 630037976 286111368 156192610 903323087 243556344 559682538 496020938 617036990 108596530 230183760 938633748 497418681 431836847 498620542 913421256 32707776 356045041 168758520 719029963 160359921 872559355 90815314 219044756 612932367 931870705 474797041 939161126 949520399 360309651 560517171 512390698 275524262 811499088 209344172 429198201 865520402 6886022 17723283 388332501 540546220 256637751 363734913 169394988 399969944 386985934 438639915 557760277 28361938 400970069 215462381 732007211 702264407 484535801 19094271 803847573 129070247 532212511 133616344 607262602 702636069 10300728 465135067 45672526 880400593 312532074 72092453 489535470 280375659 402817992 869781271 302169558 414703893 340172877 55110502 619965781 227897302 57341706 903323904 46428821 378181130 698437421 153511675 655841668 502230688 15183022 299538981 983392195 178697786 9463909 139187748 367278024 569204038 794900517 950384182 214076571 16036151 835814577 699537069 821734267 899915467 475568654 48503067 722427421 971792030 350998014 534797500 163047409 698491013 281345887 123228447 848870919 625142814 965751616 535250096 686469524 759511224 687320036 446049532 942807077 352976518 248521882 903367416 390474127 332779434 374822546 920215664 957231 309445963 58559128 578554248 353642538 697556875 416466888 331965272 886258901 961891569 393023855 692226287 247484925 78651782 797000849 286921584 421297989 530930163 183226423 724174335 118293821 355925986 724808136 3643424 931383633 726816327 70250713 819475736 112528440 459112568 738984197 718410148 882296737 182019926 644362321 148662915 903292443 344489745 928000355 249347924 520878882 951907868 743683173 366243176 359505238 390299742 8273805 916703073 777215167 398311427 923384345 781426878 214027266 781203386 769339904 597215877 919344380 535809955 442026796 807051271 198924239 187080988 767989633 591849216 15260066 648827344 11471128 243291944 656971508 365469492 773671952 482138480 971920044 411210511 252965759 642571485 901665 138395229 974431849 686184751 434213665 611874893 167965124 682549535 955654216 984599509 304947029 137892275 771054923 481723948 679388989 801753760 992125291 314987777 720991280 104602947 240768189 837512827 34967051 763337358 63494686 179548029 496235845 747621231 899566546 37831506 273560615 497315788 312312032 537187057 806614286 580203540 977574603 695357791 947673772 726690695 599318345 836313760 477403747 862067708 34237377 574061843 19773631 335987399 390612745 639082737 836861519 496940128 941205964 689869097 417468722 251240120 574432378 832478156 316223429 389150611 836156508 450589195 771410990 367922481 285263081 841292857 352432452 233710451 897158262 291734310 867200175 19530110 465245089 991190409 920142065 573569440 361925204 886391510 195891944 61510548 41081195 340030965 20220376 742831786 373373676 303939600 776093886 830218863 612955227 972616513 357511156 265242333 587576679 176321175 538435059 987367495 583144149 234839820 874472741 632666023 326072972 439534472 422510326 39006023 513220463 559070718 165971822 305758061 866624396 843061373 860239609 132733655 331352728 738509101 781871881 922055365 330347082 400773805 534504636 586185149 564515849 809150829 632094901 157777207 854076998 311140727 811092120 310299096 611810392 484118814 235176744 886993317 820324176 453884732 186591755 953467423 627061697 993091540 755346266 711697248 777549607 275868846 290291598 773613700 569999925 177743471 196421455 531537067 757786098 679449420 855314251 870144008 942582317 775536840 21794986 827777452 548321467 737622845 928125201 509301195 672932483 109384036 646479320 973436795 427219557 518023062 18054975 11136205 913352104 560656936 8682909 919050044 260681564 638348960 897686730 283009420 73330802 751785730 273928694 335873309 23336198 777809355 678538389 938415179 280270265 504144366
